codex-workflows 0.4.3 → 0.4.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agents/skills/documentation-criteria/SKILL.md +1 -1
- package/.agents/skills/documentation-criteria/references/design-template.md +22 -3
- package/.agents/skills/documentation-criteria/references/plan-template.md +41 -11
- package/.agents/skills/subagents-orchestration-guide/SKILL.md +6 -1
- package/.codex/agents/codebase-analyzer.toml +53 -6
- package/.codex/agents/document-reviewer.toml +3 -0
- package/.codex/agents/task-decomposer.toml +13 -0
- package/.codex/agents/technical-designer.toml +6 -2
- package/.codex/agents/work-planner.toml +36 -4
- package/README.md +8 -0
- package/package.json +1 -1
|
@@ -81,7 +81,7 @@ description: "Documentation creation criteria for PRD, ADR, Design Doc, UI Spec,
|
|
|
81
81
|
|
|
82
82
|
### Work Plan
|
|
83
83
|
**Purpose**: Implementation task management and progress tracking
|
|
84
|
-
**Scope**: Task breakdown, dependencies, schedule estimates, test skeleton file paths, Verification Strategy summaries from each Design Doc, final Quality Assurance phase, and progress tracking only. Technical rationale belongs in ADR and design details belong in Design Doc.
|
|
84
|
+
**Scope**: Task breakdown, dependencies, schedule estimates, test skeleton file paths, Verification Strategy summaries from each Design Doc, Design-to-Plan Traceability mapping for implementation-relevant technical requirements, final Quality Assurance phase, and progress tracking only. Technical rationale belongs in ADR and design details belong in Design Doc.
|
|
85
85
|
|
|
86
86
|
**Phase Division Criteria**:
|
|
87
87
|
|
|
@@ -137,6 +137,14 @@ No Ripple Effect:
|
|
|
137
137
|
- [Explicitly specify unaffected features]
|
|
138
138
|
```
|
|
139
139
|
|
|
140
|
+
### Interface Change Impact Analysis
|
|
141
|
+
|
|
142
|
+
Use this table for interface or contract compatibility decisions. Record what changes at the boundary and how compatibility is preserved.
|
|
143
|
+
|
|
144
|
+
| Existing Interface | New Interface | Conversion Required | Adapter / Wrapper Required | Compatibility Method |
|
|
145
|
+
|-------------------|---------------|---------------------|----------------------------|----------------------|
|
|
146
|
+
| [Function / method / props / contract] | [Function / method / props / contract] | [Yes / No] | [Required / Not Required] | [Adapter, wrapper, migration path, deprecation policy, or `-`] |
|
|
147
|
+
|
|
140
148
|
### Architecture Overview
|
|
141
149
|
|
|
142
150
|
[How this feature is positioned within the overall system]
|
|
@@ -149,9 +157,11 @@ No Ripple Effect:
|
|
|
149
157
|
|
|
150
158
|
### Integration Points List
|
|
151
159
|
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
| Integration Point
|
|
160
|
+
Use this table for runtime wiring, switching, or registration points. Record how the integration is connected and how the switching behavior is verified.
|
|
161
|
+
|
|
162
|
+
| Integration Point | Location | Old Implementation | New Implementation | Switching Method | Verification Method |
|
|
163
|
+
|-------------------|----------|-------------------|-------------------|------------------|---------------------|
|
|
164
|
+
| Integration Point 1 | [Class/Function] | [Existing Process] | [New Process] | [DI/Factory etc.] | [How this switching or integration will be verified] |
|
|
155
165
|
|
|
156
166
|
### Main Components
|
|
157
167
|
|
|
@@ -241,6 +251,15 @@ Self-evident: internal-only refactoring with identical observable inputs and out
|
|
|
241
251
|
- **Success criteria**: [Observable outcome that proves correctness]
|
|
242
252
|
- **Failure response**: [What to do if early verification fails]
|
|
243
253
|
|
|
254
|
+
### Output Comparison (When Changing Existing Observable Behavior, an External Contract, or a Persisted Data Shape)
|
|
255
|
+
|
|
256
|
+
- **Comparison input**: [Identical input used for both the current and new implementation]
|
|
257
|
+
- **Expected output fields**: [Specific fields, columns, or output format to compare]
|
|
258
|
+
- **Diff method**: [How the outputs are compared, such as field-by-field diff, file diff, or snapshot comparison]
|
|
259
|
+
- **Transformation pipeline coverage**: [Map each listed step from codebase analysis `dataTransformationPipelines` to the comparison that verifies its output. If a step passes data through unchanged, mark it excluded with rationale]
|
|
260
|
+
|
|
261
|
+
Mark as `N/A` with a brief rationale only when the change does not alter existing observable behavior, an external contract, or a persisted data shape.
|
|
262
|
+
|
|
244
263
|
### State Transitions and Invariants (When Applicable)
|
|
245
264
|
|
|
246
265
|
```yaml
|
|
@@ -32,6 +32,31 @@ Repeat this block for each Design Doc when multiple Design Docs exist. Preserve
|
|
|
32
32
|
- **Success criteria**: [extracted from Design Doc]
|
|
33
33
|
- **Failure response**: [extracted from Design Doc]
|
|
34
34
|
|
|
35
|
+
## Design-to-Plan Traceability
|
|
36
|
+
|
|
37
|
+
Map each Design Doc technical requirement to the task or phase that covers it. Use one row per extracted requirement item. Every row must have at least one covering task, or an explicit justified gap.
|
|
38
|
+
|
|
39
|
+
| Source Design Doc | DD Section | DD Item | Category | Covered By Task(s) | Gap Status | Notes |
|
|
40
|
+
|-------------------|------------|---------|----------|--------------------|------------|-------|
|
|
41
|
+
| [docs/design/xxx-design.md] | [Section name] | [Specific implementation-relevant item] | impl-target / connection-switching / contract-change / verification / prerequisite / scope-boundary | [P1-T1, P1-T2] | covered | |
|
|
42
|
+
|
|
43
|
+
**Category values**: `impl-target` (implementation target), `connection-switching` (connection, switching, registration, dependency wiring), `contract-change` (interface change and propagation across boundaries), `verification` (verification method, test boundary, comparison point), `prerequisite` (migration, setup, security, environment preparation), `scope-boundary` (explicit non-target or no-ripple boundary that must remain unchanged)
|
|
44
|
+
|
|
45
|
+
**Gap Status values**: `covered` (mapped to one or more tasks), `gap` (no task exists yet; include justification in Notes and require user confirmation before plan approval)
|
|
46
|
+
|
|
47
|
+
**Task ID format**:
|
|
48
|
+
- Implementation tasks: `P<phase-number>-T<task-number>` such as `P1-T1`, `P2-T3`
|
|
49
|
+
- Phase completion tasks: `P<phase-number>-COMPLETE` such as `P1-COMPLETE`
|
|
50
|
+
- Final quality task: `FINAL-QA`
|
|
51
|
+
- Multiple covering tasks: comma-separated IDs in display order, for example `P1-T1, P1-T2`
|
|
52
|
+
|
|
53
|
+
**DD Item normalization rules**:
|
|
54
|
+
- One row = one independently plannable obligation that can be covered, deferred, or verified without relying on a hidden sub-obligation
|
|
55
|
+
- Split compound obligations joined by `and`, `or`, or separate boundary crossings when they can be implemented or verified independently
|
|
56
|
+
- Normalize same-boundary field propagation into one row when the fields must move together through the same boundary for the same reason
|
|
57
|
+
- Merge duplicate restatements of the same obligation from multiple DD sections into one row and cite the primary section in `DD Section`
|
|
58
|
+
- Keep `scope-boundary` rows concrete: name the protected file group, component boundary, contract, or workflow that must remain unchanged
|
|
59
|
+
|
|
35
60
|
## Objective
|
|
36
61
|
[Why this change is necessary, what problem it solves]
|
|
37
62
|
|
|
@@ -64,27 +89,29 @@ Use when implementation approach is Vertical Slice. Each phase represents one va
|
|
|
64
89
|
**Verification**: [Use the early verification point when applicable]
|
|
65
90
|
|
|
66
91
|
#### Tasks
|
|
67
|
-
- [ ]
|
|
68
|
-
- [ ]
|
|
92
|
+
- [ ] [P1-T1] Specific work content
|
|
93
|
+
- [ ] [P1-T2] Verification for this value unit
|
|
69
94
|
- [ ] Quality check: Implement staged quality checks (refer to ai-development-guide skill)
|
|
70
95
|
|
|
71
96
|
#### Phase Completion Criteria
|
|
72
97
|
- [ ] Early verification point passed
|
|
73
98
|
- [ ] [Functional completion criteria]
|
|
74
99
|
- [ ] [Quality completion criteria]
|
|
100
|
+
- [ ] [P1-COMPLETE] Phase completion verification recorded
|
|
75
101
|
|
|
76
102
|
### Phase 2: [Value Unit 2] (Estimated commits: X)
|
|
77
103
|
**Purpose**: [Subsequent slice]
|
|
78
104
|
**Verification**: [Verification for this value unit]
|
|
79
105
|
|
|
80
106
|
#### Tasks
|
|
81
|
-
- [ ]
|
|
82
|
-
- [ ]
|
|
107
|
+
- [ ] [P2-T1] Specific work content
|
|
108
|
+
- [ ] [P2-T2] Verification for this value unit
|
|
83
109
|
- [ ] Quality check
|
|
84
110
|
|
|
85
111
|
#### Phase Completion Criteria
|
|
86
112
|
- [ ] [Functional completion criteria]
|
|
87
113
|
- [ ] [Quality completion criteria]
|
|
114
|
+
- [ ] [P2-COMPLETE] Phase completion verification recorded
|
|
88
115
|
|
|
89
116
|
### Option B: Horizontal Slice Phase Structure
|
|
90
117
|
|
|
@@ -94,40 +121,43 @@ Use when implementation approach is Horizontal Slice. Phases follow Foundation -
|
|
|
94
121
|
**Purpose**: Contract definitions, interfaces, test preparation
|
|
95
122
|
|
|
96
123
|
#### Tasks
|
|
97
|
-
- [ ]
|
|
98
|
-
- [ ]
|
|
124
|
+
- [ ] [P1-T1] Specific work content
|
|
125
|
+
- [ ] [P1-T2] Specific work content
|
|
99
126
|
- [ ] Quality check: Implement staged quality checks (refer to ai-development-guide skill)
|
|
100
127
|
- [ ] Unit tests: All related tests pass
|
|
101
128
|
|
|
102
129
|
#### Phase Completion Criteria
|
|
103
130
|
- [ ] [Functional completion criteria]
|
|
104
131
|
- [ ] [Quality completion criteria]
|
|
132
|
+
- [ ] [P1-COMPLETE] Phase completion verification recorded
|
|
105
133
|
|
|
106
134
|
### Phase 2: [Core Feature] (Estimated commits: X)
|
|
107
135
|
**Purpose**: Business logic, unit tests
|
|
108
136
|
|
|
109
137
|
#### Tasks
|
|
110
|
-
- [ ]
|
|
111
|
-
- [ ]
|
|
138
|
+
- [ ] [P2-T1] Specific work content
|
|
139
|
+
- [ ] [P2-T2] Specific work content
|
|
112
140
|
- [ ] Quality check
|
|
113
141
|
- [ ] Integration tests: Verify overall feature functionality
|
|
114
142
|
|
|
115
143
|
#### Phase Completion Criteria
|
|
116
144
|
- [ ] [Functional completion criteria]
|
|
117
145
|
- [ ] [Quality completion criteria]
|
|
146
|
+
- [ ] [P2-COMPLETE] Phase completion verification recorded
|
|
118
147
|
|
|
119
148
|
### Phase 3: [Integration] (Estimated commits: X)
|
|
120
149
|
**Purpose**: External connections, presentation layer
|
|
121
150
|
|
|
122
151
|
#### Tasks
|
|
123
|
-
- [ ]
|
|
124
|
-
- [ ]
|
|
152
|
+
- [ ] [P3-T1] Specific work content
|
|
153
|
+
- [ ] [P3-T2] Specific work content
|
|
125
154
|
- [ ] Quality check
|
|
126
155
|
- [ ] Integration tests: Verify component coordination
|
|
127
156
|
|
|
128
157
|
#### Phase Completion Criteria
|
|
129
158
|
- [ ] [Functional completion criteria]
|
|
130
159
|
- [ ] [Quality completion criteria]
|
|
160
|
+
- [ ] [P3-COMPLETE] Phase completion verification recorded
|
|
131
161
|
|
|
132
162
|
### Final Phase: Quality Assurance (Required) (Estimated commits: 1)
|
|
133
163
|
This phase is required for all implementation approaches.
|
|
@@ -135,7 +165,7 @@ This phase is required for all implementation approaches.
|
|
|
135
165
|
**Purpose**: Cross-cutting quality assurance and Design Doc consistency verification
|
|
136
166
|
|
|
137
167
|
#### Tasks
|
|
138
|
-
- [ ] Verify all Design Doc acceptance criteria achieved
|
|
168
|
+
- [ ] [FINAL-QA] Verify all Design Doc acceptance criteria achieved
|
|
139
169
|
- [ ] Security review: Verify security considerations from Design Doc are implemented
|
|
140
170
|
- [ ] Quality checks (types, lint, format)
|
|
141
171
|
- [ ] Execute all tests (including integration/E2E from test skeletons, when provided)
|
|
@@ -252,7 +252,7 @@ When receiving new features or change requests, start with requirement-analyzer.
|
|
|
252
252
|
### Design Flow Data Passing
|
|
253
253
|
|
|
254
254
|
- Pass requirement-analyzer output and original requirements to codebase-analyzer
|
|
255
|
-
- Pass codebase-analyzer JSON to technical-designer or technical-designer-frontend as `Codebase Analysis`
|
|
255
|
+
- Pass codebase-analyzer JSON to technical-designer or technical-designer-frontend as `Codebase Analysis`, including `dataTransformationPipelines` when present
|
|
256
256
|
- Pass Design Doc path to code-verifier
|
|
257
257
|
- Pass code-verifier JSON to document-reviewer as `code_verification`
|
|
258
258
|
|
|
@@ -373,6 +373,11 @@ When a Design Doc contains a Verification Strategy section, the orchestrator mus
|
|
|
373
373
|
- Early verification point (first target, success criteria, failure response)
|
|
374
374
|
|
|
375
375
|
The resulting work plan must include this summary in its header so the plan remains self-sufficient for downstream task generation and execution planning.
|
|
376
|
+
When the Design Doc includes an `Output Comparison` section, carry forward the comparison input, expected output fields or format, diff method, and transformation pipeline coverage as part of that summary.
|
|
377
|
+
|
|
378
|
+
In addition, the orchestrator must preserve implementation-relevant technical requirements from each Design Doc so work-planner can create a Design-to-Plan Traceability table. Use the category values and normalization rules defined in the plan template, including protected no-change boundaries from sections such as `No Ripple Effect`.
|
|
379
|
+
|
|
380
|
+
Work-planner maps each extracted item to a covering task or phase. If no covering task exists, the row is marked `gap` with justification. Justified gaps require user confirmation before plan approval.
|
|
376
381
|
|
|
377
382
|
## Important Constraints [MANDATORY]
|
|
378
383
|
|
|
@@ -70,14 +70,29 @@ Identify what exists, what appears missing, and what deserves close attention in
|
|
|
70
70
|
### Step 2: Existing Code Element Discovery
|
|
71
71
|
|
|
72
72
|
For each affected file or inferred target file in the selected scope:
|
|
73
|
-
1. Read the file
|
|
74
|
-
|
|
75
|
-
|
|
73
|
+
1. Read the file in full and record:
|
|
74
|
+
- public and private/internal interfaces, key functions, methods, classes, types, constants, and configuration use
|
|
75
|
+
- exact names, visibility, and signatures where directly observable
|
|
76
|
+
2. Trace call chains with these scope rules:
|
|
77
|
+
- same module or file: follow internal function and method calls recursively until the chain terminates, delegates externally, or reaches a leaf
|
|
78
|
+
- external dependencies through imports or equivalent declarations: record them as integration points with public interface or contract details only
|
|
79
|
+
3. Enumerate all entry points discovered in the traced scope that receive input from outside the module or file
|
|
80
|
+
4. Mark each entry point as `change-relevant` or `non-relevant` based on requirement scope, affected files, and user-visible behavior
|
|
81
|
+
5. For each `change-relevant` entry point, trace the data transformation pipeline step by step:
|
|
82
|
+
- record how the input changes at each step
|
|
83
|
+
- record intermediate representations or formats when they differ from the final output
|
|
84
|
+
- record external lookups that modify values, including configuration, constants, mapping tables, and reference data
|
|
85
|
+
6. For each `non-relevant` entry point, record at minimum:
|
|
86
|
+
- entry point name and file:line
|
|
87
|
+
- input shape
|
|
88
|
+
- output shape
|
|
89
|
+
7. If additional entry points share the same output path or transformation logic as a `change-relevant` entry point, reclassify them as `change-relevant` and trace them step by step
|
|
90
|
+
8. Search for patterns related to:
|
|
76
91
|
- data access: repository usage, ORM calls, query builders, raw SQL, migration references
|
|
77
92
|
- external service calls: HTTP clients, SDK clients, queue producers or consumers, webhook handlers
|
|
78
93
|
- validation logic: validator functions, schema parsers, assertions, guard clauses, constraint checks
|
|
79
94
|
- user-visible state handling: state stores, reducers, hooks, loading or error states, view-model shaping
|
|
80
|
-
|
|
95
|
+
9. Record each discovered element with exact file path and line number
|
|
81
96
|
|
|
82
97
|
### Step 3: Data Model Discovery
|
|
83
98
|
|
|
@@ -149,6 +164,31 @@ Return the JSON result as the final response.
|
|
|
149
164
|
],
|
|
150
165
|
"migrationFiles": ["path/to/migration"]
|
|
151
166
|
},
|
|
167
|
+
"dataTransformationPipelines": [
|
|
168
|
+
{
|
|
169
|
+
"entryPoint": "functionOrMethodName (path/to/file:line)",
|
|
170
|
+
"steps": [
|
|
171
|
+
{
|
|
172
|
+
"order": 1,
|
|
173
|
+
"method": "functionOrMethodName (path/to/file:line)",
|
|
174
|
+
"input": "Input data or format at this step",
|
|
175
|
+
"output": "Output data or format at this step",
|
|
176
|
+
"externalLookups": ["Config.KEY lookup", "Reference table mapping"],
|
|
177
|
+
"transformation": "What changed and why it matters"
|
|
178
|
+
}
|
|
179
|
+
],
|
|
180
|
+
"intermediateFormats": ["Intermediate representation if applicable"],
|
|
181
|
+
"finalOutput": "Final output shape or observable value"
|
|
182
|
+
}
|
|
183
|
+
],
|
|
184
|
+
"entryPointInventory": [
|
|
185
|
+
{
|
|
186
|
+
"entryPoint": "functionOrMethodName (path/to/file:line)",
|
|
187
|
+
"classification": "change-relevant|non-relevant",
|
|
188
|
+
"inputShape": "Input type or shape",
|
|
189
|
+
"outputShape": "Output type or shape"
|
|
190
|
+
}
|
|
191
|
+
],
|
|
152
192
|
"constraints": [
|
|
153
193
|
{
|
|
154
194
|
"type": "validation|business_rule|configuration|assumption",
|
|
@@ -176,11 +216,18 @@ Return the JSON result as the final response.
|
|
|
176
216
|
## Completion Criteria
|
|
177
217
|
|
|
178
218
|
- [ ] Parsed requirement context and identified analysis categories
|
|
179
|
-
- [ ] Read affected files and
|
|
180
|
-
- [ ]
|
|
219
|
+
- [ ] Read affected files in full and recorded public and private implementation elements with file:line evidence, or documented scope limits in `limitations`
|
|
220
|
+
- [ ] Traced call chains according to the scope rules, or documented incomplete traces in `limitations`
|
|
221
|
+
- [ ] Enumerated all entry points in the traced scope and marked each as `change-relevant` or `non-relevant`
|
|
222
|
+
- [ ] Traced data transformation pipelines step by step for all `change-relevant` entry points that transform incoming data
|
|
223
|
+
- [ ] Recorded at minimum entry point name, input shape, and output shape for all `non-relevant` entry points
|
|
224
|
+
- [ ] Reclassified and traced entry points that share the same output path or transformation logic as a `change-relevant` entry point
|
|
225
|
+
- [ ] Recorded external lookups that modify output values, including configuration, constants, and mapping data
|
|
181
226
|
- [ ] Performed data model discovery when data access patterns were present
|
|
182
227
|
- [ ] Extracted constraints and focus areas with concrete risks
|
|
183
228
|
- [ ] Checked existing tests for coverage signals
|
|
229
|
+
- [ ] Populated `dataTransformationPipelines` for all traced pipelines
|
|
230
|
+
- [ ] Populated `entryPointInventory` for all discovered entry points in the traced scope
|
|
184
231
|
- [ ] Returned valid JSON
|
|
185
232
|
"""
|
|
186
233
|
|
|
@@ -98,6 +98,7 @@ For DesignDoc, additionally verify:
|
|
|
98
98
|
- [ ] Field propagation map present (when fields cross boundaries)
|
|
99
99
|
- [ ] Data-oriented designs contain concrete data design or Test Boundaries content, or an explicit N/A rationale
|
|
100
100
|
- [ ] Verification Strategy section present with correctness definition, target comparison, verification method, observable success indicator, normalized verification timing, and early verification point
|
|
101
|
+
- [ ] Output Comparison section present when the design changes existing observable behavior, an external contract, or a persisted data shape
|
|
101
102
|
|
|
102
103
|
#### Gate 1: Quality Assessment (only after Gate 0 passes)
|
|
103
104
|
|
|
@@ -116,6 +117,7 @@ For DesignDoc, additionally verify:
|
|
|
116
117
|
- **Data design completeness check**: When the document references persistence, storage, database, repository, query, ORM, migration, table, schema, or column concepts, verify that the Design Doc includes concrete data design content or an explicit N/A rationale. Useful evidence includes schema references, data model notes, or Test Boundaries with data layer strategy
|
|
117
118
|
- **Code-verifier evidence integration**: When `code_verification` is provided, reconcile major or critical discrepancies and undocumented data operations as part of Gate 1 completeness and consistency review
|
|
118
119
|
- **Verification Strategy quality check**: When the Verification Strategy section exists, verify that: (1) correctness definition is specific and measurable, (2) target comparison and observable success indicator are concrete when the change modifies observable behavior, external contracts, integrations, or data flow, (3) internal-only refactoring with identical observable inputs and outputs may use the minimal form, (4) verification method can detect the change's primary risk, (5) verification timing uses the normalized vocabulary or an explicit `N/A` rationale for minimal form, and (6) vertical-slice designs do not defer all verification to the final phase
|
|
120
|
+
- **Output comparison check**: When the Design Doc changes existing observable behavior, an external contract, or a persisted data shape, verify that a concrete output comparison method is defined with identical input, expected output fields or format, and diff method. When upstream analysis includes `dataTransformationPipelines`, each listed step must be mapped to the comparison that verifies it; steps excluded because data passes through unchanged must include rationale. Missing mappings or rationale → `important` issue (category: `completeness`)
|
|
119
121
|
- **Undetermined items review** [MANDATORY]: Every TBD, unknown, or open item MUST include: (1) **owner** — who resolves it, (2) **due** — when it gets resolved (which phase or milestone), (3) **next-phase handling** — how the next phase treats this gap. Missing any of these three → `important` issue
|
|
120
122
|
|
|
121
123
|
**Perspective-specific Mode**:
|
|
@@ -258,6 +260,7 @@ Include in output when `prior_context_count > 0`:
|
|
|
258
260
|
- [ ] Match of requirements, terminology, numbers between documents
|
|
259
261
|
- [ ] Completeness of required elements in each document
|
|
260
262
|
- [ ] Verification Strategy present with a concrete correctness definition and early verification point
|
|
263
|
+
- [ ] Output Comparison defined when the design changes existing observable behavior, an external contract, or a persisted data shape
|
|
261
264
|
- [ ] Verification Strategy aligns with design type and implementation approach
|
|
262
265
|
- [ ] Compliance with project rules
|
|
263
266
|
- [ ] Technical feasibility and reasonableness of estimates
|
|
@@ -52,6 +52,7 @@ Decompose tasks based on implementation strategy patterns determined in implemen
|
|
|
52
52
|
- Grasp completion criteria and quality standards
|
|
53
53
|
- **Interface change detection and response**
|
|
54
54
|
- **Extract Verification Strategy from the work plan header**
|
|
55
|
+
- **Read Design-to-Plan Traceability and preserve its coverage in generated tasks**
|
|
55
56
|
|
|
56
57
|
2. **Task Decomposition**
|
|
57
58
|
- Decompose at 1 commit = 1 task granularity (logical change unit)
|
|
@@ -89,6 +90,7 @@ Decompose tasks based on implementation strategy patterns determined in implemen
|
|
|
89
90
|
- Confirm phase structure
|
|
90
91
|
- Extract task list
|
|
91
92
|
- Identify dependencies
|
|
93
|
+
- Read Design-to-Plan Traceability rows and verify every `covered` item has a corresponding generated task or phase completion task
|
|
92
94
|
- **Overall Optimization Considerations**
|
|
93
95
|
- Identify common processing (prevent redundant implementation)
|
|
94
96
|
- Pre-map impact scope
|
|
@@ -159,6 +161,17 @@ When the work plan includes one or more Verification Strategy blocks:
|
|
|
159
161
|
4. **Failure handling**: Copy or adapt the relevant plan-level failure response so the executor knows whether to reassess, stop, or escalate.
|
|
160
162
|
5. **Investigation coverage**: Include every resource required for verification, such as existing implementations for comparison, schema definitions, fixtures, contracts, or seed data.
|
|
161
163
|
|
|
164
|
+
## Design-to-Plan Traceability Propagation
|
|
165
|
+
|
|
166
|
+
When the work plan includes a `Design-to-Plan Traceability` section:
|
|
167
|
+
|
|
168
|
+
1. **Coverage preservation**: Ensure every row marked `covered` is represented by at least one generated task file or phase completion task.
|
|
169
|
+
2. **Gap handling**: Preserve each `gap` row as a planning issue and surface it to the caller when task generation would otherwise assume missing design details.
|
|
170
|
+
3. **Boundary integrity**: For `contract-change` and `connection-switching` rows, include every affected boundary, adapter, wrapper, or wiring point in the generated task scope.
|
|
171
|
+
4. **Scope-boundary integrity**: For `scope-boundary` rows, include explicit no-change notes, protected file groups, or verification steps that keep the protected boundary out of scope.
|
|
172
|
+
5. **Verification integrity**: For `verification` rows, ensure the corresponding task file includes the required comparison or verification method in Operation Verification Methods.
|
|
173
|
+
6. **Prerequisite integrity**: For `prerequisite` rows, place setup, migration, seed, auth, or environment work before dependent implementation tasks.
|
|
174
|
+
|
|
162
175
|
## Task File Template
|
|
163
176
|
|
|
164
177
|
See task template in documentation-criteria skill for details.
|
|
@@ -90,7 +90,7 @@ Must be performed before Design Doc creation:
|
|
|
90
90
|
- Record and distinguish between existing implementation locations and planned new locations
|
|
91
91
|
|
|
92
92
|
2. **Existing Interface Investigation** (Only when changing existing features)
|
|
93
|
-
- List
|
|
93
|
+
- List every public method of the target service with full signatures
|
|
94
94
|
- Identify call sites using content search with appropriate search patterns
|
|
95
95
|
|
|
96
96
|
3. **Similar Functionality Search and Decision** (Pattern 5 prevention from ai-development-guide skill)
|
|
@@ -189,7 +189,9 @@ Must be performed when creating Design Doc:
|
|
|
189
189
|
- For new features, specify acceptance-criteria verification beyond unit tests
|
|
190
190
|
- For extensions, specify regression verification that proves existing behavior is preserved
|
|
191
191
|
- For refactors or rewrites, specify behavioral equivalence verification against the current implementation when applicable
|
|
192
|
-
-
|
|
192
|
+
- When the design changes existing observable behavior, an external contract, or a persisted data shape, define a concrete `Output Comparison` method: identical input, expected output fields or format, diff method, and a mapping from each listed pipeline step to the comparison that verifies it
|
|
193
|
+
- When `Codebase Analysis` provides `dataTransformationPipelines`, use them to populate the `Output Comparison` section. Steps that pass data through unchanged may be excluded only with explicit rationale
|
|
194
|
+
- Define an early verification point: the first target to validate before scaling the approach. For changes to existing observable behavior, external contracts, or persisted data shapes, this must be an output comparison of at least one representative case
|
|
193
195
|
|
|
194
196
|
### Change Impact Map【Required】
|
|
195
197
|
Must be included when creating Design Doc:
|
|
@@ -252,6 +254,7 @@ Confirm and document conflicts with existing systems at each integration point t
|
|
|
252
254
|
- `dataModel` informs schema references, data contracts, and persistence design
|
|
253
255
|
- `focusAreas` indicate areas requiring deeper design attention
|
|
254
256
|
- `constraints` inform design constraints, assumptions, and risk handling
|
|
257
|
+
- `dataTransformationPipelines` informs the `Output Comparison` section in Verification Strategy
|
|
255
258
|
- Additional investigation should focus on gaps or limitations that the analysis calls out
|
|
256
259
|
- **PRD**: PRD document (if exists)
|
|
257
260
|
- **Documents to Create**: ADR, Design Doc, or both
|
|
@@ -352,6 +355,7 @@ Implementation sample creation checklist:
|
|
|
352
355
|
- [ ] **Data representation decision documented** (when new structures introduced)
|
|
353
356
|
- [ ] **Field propagation map included** (when fields cross boundaries)
|
|
354
357
|
- [ ] **Verification Strategy defined** (correctness definition, target comparison, verification method, observable success indicator, timing, early verification point)
|
|
358
|
+
- [ ] **Output Comparison defined** when changing existing observable behavior, an external contract, or a persisted data shape (comparison input, expected output fields, diff method, and transformation pipeline coverage)
|
|
355
359
|
|
|
356
360
|
**Reverse-engineer mode only**:
|
|
357
361
|
- [ ] Every architectural claim cites file:line evidence
|
|
@@ -42,7 +42,8 @@ Skill Status:
|
|
|
42
42
|
4. Define completion criteria for each task (derived from Design Doc acceptance criteria)
|
|
43
43
|
5. Place test implementation and execution appropriately for each phase
|
|
44
44
|
6. Concretize risks and countermeasures
|
|
45
|
-
7.
|
|
45
|
+
7. Create explicit Design-to-Plan Traceability so Design Doc technical requirements are covered without silent omission
|
|
46
|
+
8. Document in progress-trackable format
|
|
46
47
|
|
|
47
48
|
## Input Parameters
|
|
48
49
|
|
|
@@ -62,6 +63,10 @@ Read the Design Doc(s), UI Spec, PRD, and ADR (if provided). Extract:
|
|
|
62
63
|
- Technical dependencies and implementation order
|
|
63
64
|
- Integration points and their contracts
|
|
64
65
|
- Verification Strategy from each Design Doc: correctness definition, target comparison, verification method, observable success indicator, normalized verification timing, and early verification point
|
|
66
|
+
- Implementation-relevant technical requirements from each Design Doc section using the category values defined in the plan template's `Design-to-Plan Traceability` section
|
|
67
|
+
|
|
68
|
+
Focus on implementation-relevant items only: items that directly inform task creation, dependency ordering, verification design, or protected no-change boundaries.
|
|
69
|
+
Extract `scope-boundary` rows from explicit non-target statements such as `No Ripple Effect`, compatibility constraints, or protected boundaries that must remain unchanged.
|
|
65
70
|
|
|
66
71
|
### 2. Process Test Design Information (when provided)
|
|
67
72
|
Read test skeleton files and extract meta information (see Test Design Information Processing section).
|
|
@@ -86,10 +91,30 @@ Choose Strategy A (TDD) if test skeletons are provided, Strategy B (implementati
|
|
|
86
91
|
- Use the plan template's vertical or horizontal option accordingly
|
|
87
92
|
- Remove every unused phase-structure option from the final work plan output
|
|
88
93
|
|
|
89
|
-
### 5.
|
|
94
|
+
### 5. Build Design-to-Plan Traceability
|
|
95
|
+
Create a Design-to-Plan Traceability table before finalizing tasks.
|
|
96
|
+
|
|
97
|
+
For each extracted technical requirement item:
|
|
98
|
+
- Record source Design Doc path and section name
|
|
99
|
+
- Normalize the item according to the plan template's DD Item normalization rules
|
|
100
|
+
- Map the item to one or more covering task IDs or phase completion task IDs using the plan template's Task ID format
|
|
101
|
+
- Mark `covered` when a concrete task covers the item
|
|
102
|
+
- Mark `gap` only when no concrete task covers the item yet
|
|
103
|
+
- Add justification in Notes for every `gap`
|
|
104
|
+
|
|
105
|
+
Traceability rules:
|
|
106
|
+
- A broader implementation task may cover multiple DD items when the mapping remains explicit
|
|
107
|
+
- Acceptance criteria alone are insufficient coverage when the DD also specifies interface changes, dependency wiring, verification boundaries, or prerequisite work
|
|
108
|
+
- Verification Strategy items may map to dedicated verification tasks or phase completion tasks, but the mapping must be explicit
|
|
109
|
+
- Interface change and field propagation items must map to the task that updates every affected boundary or compatibility layer
|
|
110
|
+
- Scope boundaries must map to the task IDs or phase completion task IDs that verify the protected boundary remains unchanged
|
|
111
|
+
- Any `gap` without justification is an error
|
|
112
|
+
- Any justified `gap` must be flagged for user confirmation before plan approval
|
|
113
|
+
|
|
114
|
+
### 6. Define Tasks with Completion Criteria
|
|
90
115
|
For each task, derive completion criteria from Design Doc acceptance criteria. Apply the 3-element completion definition (Implementation Complete, Quality Complete, Integration Complete).
|
|
91
116
|
|
|
92
|
-
###
|
|
117
|
+
### 7. Produce Work Plan Document
|
|
93
118
|
Write the work plan following the plan template from documentation-criteria skill. Include Phase Structure Diagram and Task Dependency Diagram (mermaid).
|
|
94
119
|
|
|
95
120
|
## Work Plan Output Format
|
|
@@ -248,10 +273,17 @@ When creating work plans, **Phase Structure Diagrams** and **Task Dependency Dia
|
|
|
248
273
|
|
|
249
274
|
- [ ] Design Doc(s) consistency verification
|
|
250
275
|
- [ ] Verification Strategies extracted from each Design Doc and included in the plan header without unintended merging
|
|
276
|
+
- [ ] Design-to-Plan Traceability table completed for all extracted implementation-relevant DD items
|
|
277
|
+
- [ ] Every row mapped to covering task(s) or justified `gap`
|
|
278
|
+
- [ ] Interface change and propagation items mapped explicitly
|
|
279
|
+
- [ ] Connection, switching, and prerequisite items mapped explicitly
|
|
280
|
+
- [ ] Scope-boundary items mapped explicitly when the Design Doc defines protected no-change areas
|
|
281
|
+
- [ ] Covered By Task(s) uses only normalized task IDs
|
|
282
|
+
- [ ] No unjustified `gap` entries remain
|
|
251
283
|
- [ ] Phase structure matches the implementation approach
|
|
252
284
|
- [ ] Early verification point placed in the earliest applicable phase
|
|
253
285
|
- [ ] Normalized verification timing mapped consistently to phases
|
|
254
|
-
- [ ]
|
|
286
|
+
- [ ] Acceptance criteria and extracted technical requirements converted to tasks or justified gaps
|
|
255
287
|
- [ ] Quality assurance exists in final phase
|
|
256
288
|
- [ ] Test skeleton file paths listed in corresponding phases (when provided)
|
|
257
289
|
- [ ] E2E environment prerequisites addressed when E2E skeletons are provided
|
package/README.md
CHANGED
|
@@ -337,6 +337,14 @@ your-project/
|
|
|
337
337
|
|
|
338
338
|
---
|
|
339
339
|
|
|
340
|
+
## Works With
|
|
341
|
+
|
|
342
|
+
If your requirements already live in Linear or an existing PRD, [linear-prism](https://github.com/shinpr/linear-prism) can decompose them into implementation-ready tasks by reading the codebase, making dependencies explicit, and preserving Design Doc boundaries.
|
|
343
|
+
|
|
344
|
+
Those tasks can then be passed into `$recipe-design` to enter the design phase with clearer scope and better task visibility.
|
|
345
|
+
|
|
346
|
+
---
|
|
347
|
+
|
|
340
348
|
## FAQ
|
|
341
349
|
|
|
342
350
|
**Q: What models does this work with?**
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codex-workflows",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.5",
|
|
4
4
|
"description": "Task-oriented agentic coding framework for OpenAI Codex CLI — skills, recipes, and subagents for structured development workflows",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Shinsuke Kagawa",
|