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>
This commit is contained in:
@@ -0,0 +1,239 @@
|
||||
---
|
||||
phase: 10.1-aggressive-workflow-modularization
|
||||
plan: 05
|
||||
type: execute
|
||||
wave: 3
|
||||
depends_on: ["10.1-02", "10.1-03", "10.1-04"]
|
||||
files_modified:
|
||||
- n8n-workflow.json
|
||||
autonomous: false
|
||||
|
||||
must_haves:
|
||||
truths:
|
||||
- "Main workflow contains only trigger, auth, routing, and sub-workflow dispatch"
|
||||
- "All container operations work via sub-workflows"
|
||||
- "Main workflow is under 100 nodes (target: 50-80)"
|
||||
- "All sub-workflows have consistent input/output contracts"
|
||||
- "User has verified all functionality works correctly"
|
||||
artifacts:
|
||||
- path: "n8n-workflow.json"
|
||||
provides: "Minimal orchestrator workflow"
|
||||
- path: "n8n-batch-ui.json"
|
||||
provides: "Batch UI sub-workflow"
|
||||
- path: "n8n-status.json"
|
||||
provides: "Container status sub-workflow"
|
||||
- path: "n8n-confirmation.json"
|
||||
provides: "Confirmation dialog sub-workflow"
|
||||
key_links:
|
||||
- from: "n8n-workflow.json"
|
||||
to: "all sub-workflows"
|
||||
via: "Execute Workflow nodes with TODO placeholders"
|
||||
pattern: "TODO_DEPLOY.*WORKFLOW"
|
||||
---
|
||||
|
||||
<objective>
|
||||
Verify all extractions work together, clean up main workflow, and perform user acceptance testing.
|
||||
|
||||
Purpose: Ensure the modularized architecture is complete and all functionality works correctly.
|
||||
Output: Verified working system, documentation of final state, UAT sign-off.
|
||||
</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-02-SUMMARY.md
|
||||
@.planning/phases/10.1-aggressive-workflow-modularization/10.1-03-SUMMARY.md
|
||||
@.planning/phases/10.1-aggressive-workflow-modularization/10.1-04-SUMMARY.md
|
||||
@n8n-workflow.json
|
||||
@n8n-batch-ui.json
|
||||
@n8n-status.json
|
||||
@n8n-confirmation.json
|
||||
</context>
|
||||
|
||||
<tasks>
|
||||
|
||||
<task type="auto">
|
||||
<name>Task 1: Verify main workflow structure and node count</name>
|
||||
<files>n8n-workflow.json (read only)</files>
|
||||
<action>
|
||||
Analyze final main workflow state:
|
||||
|
||||
1. Count total nodes (target: 50-80)
|
||||
2. Verify main workflow contains only:
|
||||
- Telegram Trigger (1 node)
|
||||
- Authentication checks (2 nodes)
|
||||
- Keyword routing (5-10 nodes)
|
||||
- Execute Workflow calls to sub-workflows (6-8 nodes)
|
||||
- Result handlers after sub-workflow calls (10-15 nodes)
|
||||
- Error handling (2-3 nodes)
|
||||
|
||||
3. List all Execute Workflow nodes and their targets:
|
||||
- Execute Text Update -> n8n-update.json
|
||||
- Execute Callback Update -> n8n-update.json
|
||||
- Execute Action -> n8n-actions.json
|
||||
- Execute Text Logs -> n8n-logs.json
|
||||
- Execute Batch UI -> n8n-batch-ui.json
|
||||
- Execute Container Status -> n8n-status.json
|
||||
- Execute Confirmation -> n8n-confirmation.json
|
||||
|
||||
4. Check for orphan nodes (nodes with no connections)
|
||||
|
||||
5. Verify all TODO_DEPLOY_*_WORKFLOW placeholders are documented
|
||||
|
||||
Output a summary:
|
||||
- Final node count
|
||||
- Node breakdown by category
|
||||
- List of Execute Workflow nodes
|
||||
- Any issues found
|
||||
</action>
|
||||
<verify>
|
||||
- Node count verified and documented
|
||||
- No orphan nodes
|
||||
- All sub-workflow calls identified
|
||||
</verify>
|
||||
<done>Main workflow structure verified and documented.</done>
|
||||
</task>
|
||||
|
||||
<task type="auto">
|
||||
<name>Task 2: Create deployment documentation</name>
|
||||
<files>DEPLOY-SUBWORKFLOWS.md (new)</files>
|
||||
<action>
|
||||
Create deployment documentation for the new sub-workflow architecture.
|
||||
|
||||
Content:
|
||||
```markdown
|
||||
# Sub-workflow Deployment Guide
|
||||
|
||||
## Overview
|
||||
|
||||
Phase 10.1 extracted main workflow from 192 nodes to ~XX nodes by creating domain sub-workflows.
|
||||
|
||||
## Sub-workflows
|
||||
|
||||
| File | Purpose | Deploy Order |
|
||||
|------|---------|--------------|
|
||||
| n8n-update.json | Container update operations | 1 (already deployed) |
|
||||
| n8n-actions.json | Container start/stop/restart | 2 (already deployed) |
|
||||
| n8n-logs.json | Container log retrieval | 3 (already deployed) |
|
||||
| n8n-batch-ui.json | Batch selection UI | 4 |
|
||||
| n8n-status.json | Container list/status | 5 |
|
||||
| n8n-confirmation.json | Confirmation dialogs | 6 |
|
||||
|
||||
## Deployment Steps
|
||||
|
||||
### For each new sub-workflow (batch-ui, status, confirmation):
|
||||
|
||||
1. Import the JSON file into n8n
|
||||
2. Note the workflow ID assigned by n8n
|
||||
3. Search main workflow for the TODO placeholder:
|
||||
- `TODO_DEPLOY_BATCH_UI_WORKFLOW`
|
||||
- `TODO_DEPLOY_STATUS_WORKFLOW`
|
||||
- `TODO_DEPLOY_CONFIRMATION_WORKFLOW`
|
||||
4. Replace placeholder with actual workflow ID
|
||||
5. Re-import main workflow
|
||||
|
||||
### Existing Sub-workflows (already deployed)
|
||||
|
||||
- Container Update: ID `7AvTzLtKXM2hZTio92_mC`
|
||||
- Container Actions: ID `fYSZS5PkH0VSEaT5`
|
||||
- Container Logs: ID `oE7aO2GhbksXDEIw`
|
||||
|
||||
## Rollback
|
||||
|
||||
Backup files created during extraction:
|
||||
- `n8n-workflow.json.backup-batch` - Before batch extraction
|
||||
- `n8n-workflow.json.backup-status` - Before status extraction
|
||||
- `n8n-workflow.json.backup-confirm` - Before confirmation extraction
|
||||
|
||||
To rollback, copy the appropriate backup file to n8n-workflow.json and re-import.
|
||||
|
||||
## Architecture
|
||||
|
||||
\`\`\`
|
||||
n8n-workflow.json (orchestrator)
|
||||
├── Trigger + Auth + Routing
|
||||
├── Execute Update -> n8n-update.json
|
||||
├── Execute Actions -> n8n-actions.json
|
||||
├── Execute Logs -> n8n-logs.json
|
||||
├── Execute Batch UI -> n8n-batch-ui.json
|
||||
│ ├── (calls n8n-update.json for batch updates)
|
||||
│ └── (calls n8n-actions.json for batch actions)
|
||||
├── Execute Status -> n8n-status.json
|
||||
└── Execute Confirmation -> n8n-confirmation.json
|
||||
└── (calls n8n-actions.json for confirmed actions)
|
||||
\`\`\`
|
||||
```
|
||||
</action>
|
||||
<verify>
|
||||
- DEPLOY-SUBWORKFLOWS.md exists
|
||||
- Contains all sub-workflow files and placeholders
|
||||
- Contains deployment steps and rollback instructions
|
||||
</verify>
|
||||
<done>Deployment documentation created.</done>
|
||||
</task>
|
||||
|
||||
<task type="checkpoint:human-verify" gate="blocking">
|
||||
<what-built>
|
||||
Complete workflow modularization:
|
||||
- Main workflow reduced from 192 to ~XX nodes
|
||||
- 3 new sub-workflows extracted (batch-ui, status, confirmation)
|
||||
- Total of 6 sub-workflows in the system
|
||||
- Deployment documentation created
|
||||
</what-built>
|
||||
<how-to-verify>
|
||||
**NOTE:** Full UAT requires deploying sub-workflows to n8n. For now, verify:
|
||||
|
||||
1. **File structure check:**
|
||||
- `ls n8n-*.json` should show 7 files (workflow + 6 sub-workflows)
|
||||
- Main workflow has expected reduced node count
|
||||
|
||||
2. **JSON validity:**
|
||||
- All JSON files parse correctly
|
||||
- All sub-workflows have Execute Workflow Trigger
|
||||
|
||||
3. **Deployment placeholders:**
|
||||
- Search n8n-workflow.json for "TODO_DEPLOY" - should find 3 new placeholders
|
||||
- Existing workflow IDs still referenced correctly
|
||||
|
||||
4. **After n8n deployment (when ready):**
|
||||
- Test `/list` command - should show container list
|
||||
- Test `/stop <container>` - should show confirmation
|
||||
- Test batch mode: `/stop` then select multiple containers
|
||||
- Test update flow
|
||||
- Test logs command
|
||||
|
||||
Respond with:
|
||||
- "approved" if structure looks correct
|
||||
- "issues: [description]" if problems found
|
||||
</how-to-verify>
|
||||
<resume-signal>Type "approved" or describe issues found</resume-signal>
|
||||
</task>
|
||||
|
||||
</tasks>
|
||||
|
||||
<verification>
|
||||
- [ ] Main workflow node count documented
|
||||
- [ ] All sub-workflow files exist
|
||||
- [ ] Deployment documentation created
|
||||
- [ ] No orphan nodes in main workflow
|
||||
- [ ] User has verified structure (deployment verification deferred to n8n import)
|
||||
</verification>
|
||||
|
||||
<success_criteria>
|
||||
1. Main workflow reduced to target size (50-80 nodes)
|
||||
2. 6 sub-workflows total (3 existing + 3 new)
|
||||
3. All TODO placeholders documented
|
||||
4. Deployment guide created
|
||||
5. User sign-off on structure
|
||||
</success_criteria>
|
||||
|
||||
<output>
|
||||
After completion, create `.planning/phases/10.1-aggressive-workflow-modularization/10.1-05-SUMMARY.md`
|
||||
</output>
|
||||
Reference in New Issue
Block a user