fix(10.1): revise plans based on checker feedback
This commit is contained in:
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user