Files
Lucas Berger 25dd3ab2d2 docs(10.1): create phase plan
Phase 10.1: Aggressive Workflow Modularization
- 5 plan(s) in 3 wave(s)
- Wave 1: Foundation (rename files, analyze boundaries, user approval)
- Wave 2: 3 parallel extractions (batch-ui, status, confirmation)
- Wave 3: Integration verification and UAT
- Ready for execution

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 20:20:29 -05:00

174 lines
6.3 KiB
Markdown

---
phase: 10.1-aggressive-workflow-modularization
plan: 01
type: execute
wave: 1
depends_on: []
files_modified:
- n8n-container-update.json
- n8n-container-actions.json
- n8n-container-logs.json
- n8n-update.json
- n8n-actions.json
- n8n-logs.json
autonomous: false
must_haves:
truths:
- "Existing sub-workflows renamed to shorter pattern"
- "Domain boundaries analyzed and documented"
- "User has approved extraction boundaries before work begins"
artifacts:
- path: "n8n-update.json"
provides: "Renamed container update sub-workflow"
contains: "Container Update"
- path: "n8n-actions.json"
provides: "Renamed container actions sub-workflow"
contains: "Container Actions"
- path: "n8n-logs.json"
provides: "Renamed container logs sub-workflow"
contains: "Container Logs"
key_links:
- from: "n8n-workflow.json"
to: "sub-workflows"
via: "Execute Workflow nodes unchanged (IDs stable)"
pattern: "executeWorkflow"
---
<objective>
Rename existing sub-workflows to shorter naming pattern and analyze main workflow for optimal domain boundaries.
Purpose: Establish consistent naming convention and get user approval on extraction plan before modifying main workflow.
Output: Renamed sub-workflow files, documented domain analysis, user-approved extraction boundaries.
</objective>
<execution_context>
@/home/luc/.claude/get-shit-done/workflows/execute-plan.md
@/home/luc/.claude/get-shit-done/templates/summary.md
</execution_context>
<context>
@.planning/PROJECT.md
@.planning/ROADMAP.md
@.planning/STATE.md
@.planning/phases/10.1-aggressive-workflow-modularization/10.1-CONTEXT.md
@.planning/phases/10.1-aggressive-workflow-modularization/10.1-RESEARCH.md
@n8n-workflow.json
@n8n-container-update.json
@n8n-container-actions.json
@n8n-container-logs.json
</context>
<tasks>
<task type="auto">
<name>Task 1: Rename existing sub-workflows to shorter pattern</name>
<files>
n8n-container-update.json -> n8n-update.json
n8n-container-actions.json -> n8n-actions.json
n8n-container-logs.json -> n8n-logs.json
</files>
<action>
Rename the three existing sub-workflow files to match the locked decision for shorter naming:
- `git mv n8n-container-update.json n8n-update.json`
- `git mv n8n-container-actions.json n8n-actions.json`
- `git mv n8n-container-logs.json n8n-logs.json`
NOTE: The workflow IDs in n8n remain the same (assigned by n8n on import). Only the file names change.
The main workflow's Execute Workflow nodes reference by ID, not filename, so no main workflow changes needed.
</action>
<verify>
- `ls n8n-*.json` shows: n8n-workflow.json, n8n-update.json, n8n-actions.json, n8n-logs.json
- `git status` shows renamed files
- Old filenames no longer exist
</verify>
<done>Three sub-workflow files renamed to shorter pattern. Git tracks the renames.</done>
</task>
<task type="auto">
<name>Task 2: Analyze main workflow and document domain boundaries</name>
<files>n8n-workflow.json (read only)</files>
<action>
Analyze the main workflow (192 nodes) to identify optimal extraction boundaries. For each candidate domain:
1. Count nodes in the domain
2. Identify entry/exit points (which nodes connect to main workflow)
3. Check for internal dependencies (does domain reference nodes outside itself?)
4. Assess cohesion (does domain represent single user-facing outcome?)
Expected domains to analyze:
- **Batch UI**: ~50 nodes (batch selection keyboard, navigation, toggle, execution dispatch)
- **Container Status**: ~10-15 nodes (container list, pagination, status display)
- **Confirmation**: ~15-20 nodes (stop confirmation, update confirmation, expiry handling)
- **Telegram responses**: ~21 nodes (evaluate: does centralization add value?)
For each domain, document:
- Node count
- Entry nodes (where main workflow calls into domain)
- Exit nodes (where domain returns to main workflow)
- External dependencies (what data/nodes does domain need from outside?)
- Extraction feasibility (yes/no with reasoning)
Create analysis output showing:
1. Proposed extractions with node counts
2. Expected main workflow node count after extraction
3. Domains NOT recommended for extraction (with reasoning)
4. Potential issues or complications
</action>
<verify>
Analysis output includes:
- At least 3 candidate domains evaluated
- Node counts for each domain
- Clear recommendation (extract vs keep)
- Expected final main workflow size (target: 50-80 nodes)
</verify>
<done>Domain boundary analysis complete with extraction recommendations documented.</done>
</task>
<task type="checkpoint:decision" gate="blocking">
<decision>Approve domain boundaries for extraction</decision>
<context>
Before extracting domains to sub-workflows, user approval is needed on which domains to extract and how they should be structured. This is per CONTEXT.md: "Claude analyzes workflow and proposes optimal domain boundaries (user approves)".
The analysis from Task 2 will be presented with recommendations.
</context>
<options>
<option id="approve">
<name>Approve proposed boundaries</name>
<pros>Proceed with extraction as analyzed</pros>
<cons>None</cons>
</option>
<option id="modify">
<name>Modify boundaries</name>
<pros>User can adjust domain boundaries before extraction work</pros>
<cons>May require re-analysis</cons>
</option>
<option id="skip-domain">
<name>Skip specific domain(s)</name>
<pros>Focus on highest-value extractions first</pros>
<cons>Main workflow may not reach target node count</cons>
</option>
</options>
<resume-signal>Review the domain analysis and respond: "approved", "modify: [changes]", or "skip: [domains]"</resume-signal>
</task>
</tasks>
<verification>
- [ ] Old filenames (n8n-container-*.json) no longer exist
- [ ] New filenames (n8n-update.json, n8n-actions.json, n8n-logs.json) exist
- [ ] Domain analysis documented with clear recommendations
- [ ] User has approved extraction boundaries
</verification>
<success_criteria>
1. Sub-workflow files renamed to shorter pattern
2. Domain boundary analysis complete
3. User approval received for extraction plan
4. Ready to proceed with domain extractions in Wave 2
</success_criteria>
<output>
After completion, create `.planning/phases/10.1-aggressive-workflow-modularization/10.1-01-SUMMARY.md`
</output>