Phase 10: Workflow Modularization - 4 plan(s) in 3 wave(s) - Wave 1: Orphan cleanup (1 plan) - Wave 2: Sub-workflow extraction (2 plans parallel) - Wave 3: Integration verification (1 plan) - Ready for execution Plans: - 10-01: Remove 8 orphan nodes - 10-02: Extract container-update sub-workflow (DEBT-03) - 10-03: Extract container-actions sub-workflow - 10-04: Integration verification with user checkpoint Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
7.1 KiB
phase, plan, type, wave, depends_on, files_modified, autonomous, must_haves
| phase | plan | type | wave | depends_on | files_modified | autonomous | must_haves | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 10-workflow-modularization | 04 | execute | 3 |
|
|
false |
|
Purpose: After extracting update and actions to sub-workflows, verify the entire bot still works correctly. This includes edge cases and flows that may not have been explicitly tested in prior plans.
Output: Verified working modularized workflow, user confirmation, and updated ROADMAP showing phase complete.
<execution_context> @/home/luc/.claude/get-shit-done/workflows/execute-plan.md @/home/luc/.claude/get-shit-done/templates/summary.md </execution_context>
@.planning/PROJECT.md @.planning/ROADMAP.md @.planning/phases/10-workflow-modularization/10-RESEARCH.md @.planning/phases/10-workflow-modularization/10-01-SUMMARY.md @.planning/phases/10-workflow-modularization/10-02-SUMMARY.md @.planning/phases/10-workflow-modularization/10-03-SUMMARY.md @n8n-workflow.json @n8n-container-update.json @n8n-container-actions.json Task 1: Comprehensive functionality audit n8n-workflow.json, n8n-container-update.json, n8n-container-actions.json Run through all bot functionality systematically to verify nothing was broken by modularization.Text command tests:
/startor/status- Should show help or statusstatus- Should list all containers with inline keyboardstatus <container>- Should show specific container statusstart <container>- Should start and confirmstop <container>- Should prompt confirmation, then stoprestart <container>- Should restart and confirmupdate <container>- Should prompt confirmation, show progress, completelogs <container>- Should show logslogs <container> 100- Should show 100 lines of logsbatch start <names>- Should batch startbatch stop <names>- Should batch stop with confirmationbatch update <names>- Should batch update with confirmation
Inline keyboard tests:
- Container list navigation (pagination if >10 containers)
- Container submenu display
- Start button (on stopped container)
- Stop button with confirmation dialog
- Restart button
- Update button with confirmation dialog
- Update progress messages
- Logs button with refresh
- Back navigation
- Batch selection mode
- Batch execution with progress
Edge cases:
- Container not found (fuzzy match suggestions)
- Ambiguous container name (disambiguation)
- Update when already up to date
- Action on already running/stopped container
- Confirmation timeout (30 seconds)
Document any issues found.
- All text commands execute without errors
- All inline keyboard flows work
- Batch operations complete successfully
- Edge cases handled gracefully Full functionality audit completed, issues documented
-
Line count comparison:
- Original main workflow: ~8,485 lines
- New main workflow: Count lines
- Update sub-workflow: Count lines
- Actions sub-workflow: Count lines
- Calculate total and reduction percentage
-
Node count comparison:
- Original: ~248 nodes (after orphan cleanup: ~240)
- New main workflow: Count nodes
- Update sub-workflow: Count nodes
- Actions sub-workflow: Count nodes
-
Code duplication analysis:
- Before: Update flow duplicated (text + callback paths)
- After: Single update flow in sub-workflow
- Document specific duplication eliminated
-
Document the modular structure:
Main Workflow (n8n-workflow.json) ├── Telegram Trigger ├── Authentication ├── Command Routing ├── Confirmation Dialogs └── Sub-workflow Calls ├── container-update (for all update operations) └── container-actions (for start/stop/restart)
Create a summary table of before/after metrics.
- Line counts documented for all workflow files
- Node counts documented
- Reduction percentage calculated
- Modular structure documented Modularization impact measured and documented
-
Basic commands:
- Send
status- Should show container list keyboard - Send
update <container>- Should prompt confirmation, then update
- Send
-
Inline keyboard flow:
- Tap a container from the list
- Try Start/Stop/Restart buttons
- Try Update button (with confirmation)
- Try Logs button
-
Batch operation:
- Start batch mode and select 2 containers
- Execute a batch action
Report any issues or confirm all functionality works as expected. Type "approved" to complete Phase 10, or describe any issues found
1. All text commands work correctly 2. All inline keyboard flows work correctly 3. All batch operations work correctly 4. Edge cases handled (not found, disambiguation, timeouts) 5. Main workflow line count reduced significantly 6. Update flow exists in single location (sub-workflow) 7. Actions flow exists in single location (sub-workflow) 8. User has verified bot works from their phone<success_criteria>
- MOD-01: Main workflow broken into logical sub-workflows (update, actions)
- MOD-02: Sub-workflows callable from main without duplication
- DEBT-03: Update flow consolidated (no longer duplicated)
- All v1.1 functionality preserved
- User verification passed </success_criteria>