fix(10.1): revise plans based on checker feedback

This commit is contained in:
Lucas Berger
2026-02-08 08:19:12 -05:00
parent c437aa534f
commit 18f8976a7f
2 changed files with 165 additions and 85 deletions
@@ -2,17 +2,17 @@
phase: 10.1-aggressive-workflow-modularization
plan: 07
type: execute
wave: 1
depends_on: []
wave: 2
depends_on: ["10.1-06"]
files_modified: [DEPLOY-SUBWORKFLOWS.md]
autonomous: true
gap_closure: true
must_haves:
truths:
- "All 62+ Code nodes in main workflow are classified as orchestration or domain logic"
- "All Code nodes in main workflow are classified as orchestration or domain logic with evidence"
- "All 7 sub-workflow input/output contracts are formally documented"
- "Node count target is updated with evidence-based rationale"
- "Node count target is updated with evidence-based rationale showing current count is near-minimal"
- "Each Execute Workflow node's input mapping is verified against sub-workflow expectations"
artifacts:
- path: "DEPLOY-SUBWORKFLOWS.md"
@@ -31,6 +31,8 @@ Close Gaps 2 and 3 from VERIFICATION.md: (1) Classify all Code nodes in main wor
Purpose: The verification found that 62 Code nodes were unanalyzed (Gap 2) and sub-workflow contracts were undocumented (Gap 3). This plan provides the evidence needed to close both gaps and formally documents the architecture.
Output: Updated DEPLOY-SUBWORKFLOWS.md with Code node classification, I/O contracts, and revised node count rationale
Note: This plan depends on 10.1-06 because it documents the n8n-matching.json sub-workflow contract. If 10.1-06 is not yet complete, document the matching sub-workflow contract as "pending extraction" and fill in after 10.1-06 finishes.
</objective>
<execution_context>
@@ -44,6 +46,7 @@ Output: Updated DEPLOY-SUBWORKFLOWS.md with Code node classification, I/O contra
@.planning/STATE.md
@.planning/phases/10.1-aggressive-workflow-modularization/10.1-VERIFICATION.md
@.planning/phases/10.1-aggressive-workflow-modularization/10.1-01-domain-analysis.md
@.planning/phases/10.1-aggressive-workflow-modularization/10.1-06-SUMMARY.md
@DEPLOY-SUBWORKFLOWS.md
@n8n-workflow.json
@n8n-batch-ui.json
@@ -52,19 +55,18 @@ Output: Updated DEPLOY-SUBWORKFLOWS.md with Code node classification, I/O contra
@n8n-update.json
@n8n-actions.json
@n8n-logs.json
@n8n-matching.json
</context>
<tasks>
<task type="auto">
<name>Task 1: Classify all Code nodes and document contracts</name>
<name>Task 1: Classify all Code nodes in main workflow</name>
<files>DEPLOY-SUBWORKFLOWS.md</files>
<action>
Read the existing DEPLOY-SUBWORKFLOWS.md and significantly expand it with two new sections.
Read the existing DEPLOY-SUBWORKFLOWS.md and add a new "Code Node Classification" section.
**Section 1: Code Node Classification**
Analyze every Code node in n8n-workflow.json (62 nodes currently, may be ~50 after plan 06 extraction). For each Code node, read its `jsCode` parameter content and classify it into one of these categories:
Analyze every Code node in n8n-workflow.json (should be ~50 after plan 06 extraction removes some). For each Code node, read its `jsCode` parameter content and classify it into one of these categories:
| Category | Definition | Should Stay in Main? |
|----------|-----------|---------------------|
@@ -95,11 +97,26 @@ Extraction overhead per domain: ~3 nodes (Prepare + Execute + Route)
Net reduction potential: NN nodes
```
This proves whether any further extraction is viable beyond matching domain.
This proves whether any further extraction is viable beyond the matching domain.
</action>
<verify>
1. DEPLOY-SUBWORKFLOWS.md contains "Code Node Classification" section with table
2. Table row count matches actual Code node count in n8n-workflow.json (verify with: `python3 -c "import json; wf=json.load(open('n8n-workflow.json')); print(sum(1 for n in wf['nodes'] if n['type']=='n8n-nodes-base.code'))"`)
3. All 6 categories are represented in the summary
4. Category counts sum to total Code node count
</verify>
<done>Every Code node in main workflow classified with category, line count, and rationale. Summary shows breakdown by category and quantifies remaining extraction potential.</done>
</task>
**Section 2: Sub-workflow Input/Output Contracts**
<task type="auto">
<name>Task 2: Document sub-workflow contracts and node count analysis</name>
<files>DEPLOY-SUBWORKFLOWS.md</files>
<action>
Add two more sections to DEPLOY-SUBWORKFLOWS.md (after the Code Node Classification from Task 1).
For each of the 6 (or 7 after plan 06) sub-workflows, document:
**Section: Sub-workflow Input/Output Contracts**
For each of the 7 sub-workflows, document:
1. **Input contract** - Read the Execute Workflow Trigger node and the Prepare *Input Code nodes that feed it. Document every field:
```
@@ -125,15 +142,17 @@ For each of the 6 (or 7 after plan 06) sub-workflows, document:
3. **Verification** - For each Execute Workflow node in main workflow, verify that the preceding Prepare *Input node produces all required fields. Document any mismatches.
Sub-workflows to document:
- n8n-update.json (Container Update) called by 3 Execute nodes
- n8n-actions.json (Container Actions) called by 3 Execute nodes
- n8n-logs.json (Container Logs) called by 2 Execute nodes
- n8n-batch-ui.json (Batch UI) called by 1 Execute node
- n8n-status.json (Container Status) called by 4 Execute nodes
- n8n-confirmation.json (Confirmation Dialogs) called by 1 Execute node
- n8n-matching.json (Container Matching) called by 3 Execute nodes (if plan 06 complete, otherwise note as pending)
- n8n-update.json (Container Update) -- called by 3 Execute nodes
- n8n-actions.json (Container Actions) -- called by 3 Execute nodes
- n8n-logs.json (Container Logs) -- called by 2 Execute nodes
- n8n-batch-ui.json (Batch UI) -- called by 1 Execute node
- n8n-status.json (Container Status) -- called by 4 Execute nodes
- n8n-confirmation.json (Confirmation Dialogs) -- called by 1 Execute node
- n8n-matching.json (Container Matching) -- called by 3 Execute nodes (use 10.1-06-SUMMARY.md for reference)
**Section 3: Revised Node Count Rationale**
Also verify the total Execute Workflow node count: should be 17 (14 original + 3 from matching extraction).
**Section: Node Count Analysis**
Add a section that explains the final node count with evidence:
@@ -167,22 +186,22 @@ Gap: NN nodes of domain logic where extraction overhead (~3 nodes per domain) ma
- Add the new sections after the existing content
</action>
<verify>
1. DEPLOY-SUBWORKFLOWS.md contains "Code Node Classification" section with table covering all Code nodes
2. DEPLOY-SUBWORKFLOWS.md contains "Input/Output Contract" section for each sub-workflow
3. Each sub-workflow contract lists all input fields with types
4. Each sub-workflow contract lists all output actions with fields
5. DEPLOY-SUBWORKFLOWS.md contains "Node Count Analysis" section with revised rationale
6. All Code node categories sum to total Code node count in main workflow
1. DEPLOY-SUBWORKFLOWS.md contains "Input/Output Contract" section for each of the 7 sub-workflows
2. Each sub-workflow contract lists all input fields with types
3. Each sub-workflow contract lists all output actions with fields
4. DEPLOY-SUBWORKFLOWS.md contains "Node Count Analysis" section with revised rationale
5. Execute Workflow node count documented (should be 17 total)
6. Spot-check: For n8n-status.json, verify the input contract fields match what `Prepare Status Input` Code nodes actually produce (read the jsCode)
</verify>
<done>All Code nodes classified with evidence, all sub-workflow contracts documented with field-level detail, node count rationale updated with structural analysis proving current count is near-minimal</done>
<done>All 7 sub-workflow contracts documented with field-level input/output detail. Execute Workflow node mappings verified. Node count analysis provides structural evidence that current count is near-minimal.</done>
</task>
</tasks>
<verification>
1. DEPLOY-SUBWORKFLOWS.md exists and contains all three new sections
1. DEPLOY-SUBWORKFLOWS.md exists and contains all three new sections (Code Classification, Contracts, Node Count)
2. Code node classification covers every Code node in main workflow (verify count matches)
3. Sub-workflow contracts cover all 6-7 sub-workflows
3. Sub-workflow contracts cover all 7 sub-workflows
4. Each contract has input fields table and output actions table
5. Node count analysis shows evidence-based rationale
6. No factual errors in classification (spot-check 5 random Code nodes)