codex-workflows 0.6.5 → 0.6.7
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/references/plan-template.md +27 -0
- package/.agents/skills/documentation-criteria/references/task-template.md +12 -0
- package/.agents/skills/recipe-build/SKILL.md +20 -6
- package/.agents/skills/recipe-front-build/SKILL.md +20 -6
- package/.agents/skills/recipe-front-plan/SKILL.md +12 -0
- package/.agents/skills/recipe-front-review/SKILL.md +2 -1
- package/.agents/skills/recipe-fullstack-build/SKILL.md +20 -6
- package/.agents/skills/recipe-implement/SKILL.md +1 -1
- package/.agents/skills/recipe-plan/SKILL.md +14 -1
- package/.agents/skills/recipe-review/SKILL.md +2 -1
- package/.agents/skills/subagents-orchestration-guide/SKILL.md +14 -3
- package/.agents/skills/subagents-orchestration-guide/references/monorepo-flow.md +12 -4
- package/.codex/agents/acceptance-test-generator.toml +25 -5
- package/.codex/agents/code-reviewer.toml +5 -1
- package/.codex/agents/document-reviewer.toml +18 -1
- package/.codex/agents/integration-test-reviewer.toml +14 -2
- package/.codex/agents/task-decomposer.toml +16 -0
- package/.codex/agents/task-executor-frontend.toml +12 -15
- package/.codex/agents/task-executor.toml +12 -15
- package/.codex/agents/technical-designer-frontend.toml +10 -81
- package/.codex/agents/technical-designer.toml +10 -94
- package/.codex/agents/work-planner.toml +28 -1
- package/package.json +1 -1
|
@@ -49,7 +49,7 @@ Skill Status:
|
|
|
49
49
|
- `composite`: Composite perspective review (recommended) - Verifies structure, implementation, and completeness in one execution
|
|
50
50
|
- When unspecified: Comprehensive review
|
|
51
51
|
|
|
52
|
-
- **doc_type**: Document type (`PRD`/`ADR`/`UISpec`/`DesignDoc`)
|
|
52
|
+
- **doc_type**: Document type (`PRD`/`ADR`/`UISpec`/`DesignDoc`/`WorkPlan`)
|
|
53
53
|
- **target**: Document path to review
|
|
54
54
|
- **codebase_analysis**: codebase-analyzer JSON used to create the target document (optional)
|
|
55
55
|
- **ui_analysis**: ui-analyzer JSON used to create the target document (optional)
|
|
@@ -84,6 +84,7 @@ Skill Status:
|
|
|
84
84
|
- When `codebase_analysis` is provided, use `analysisScope`, `existingElements`, `constraints`, `qualityAssurance`, `focusAreas`, and `limitations` as source evidence for scope, feasibility, and completeness checks
|
|
85
85
|
- When `ui_analysis` is provided, use `componentStructure`, `propsPatterns`, `cssLayout`, `stateDisplay`, `displayConditions`, `accessibility`, and `candidateWriteSet` as source evidence for UI scope, feasibility, and completeness checks
|
|
86
86
|
- When `code_verification` is provided, use its discrepancies and reverse coverage as pre-verified evidence during review
|
|
87
|
+
- For WorkPlan: confirm the plan carries the artifacts the semantic gate is judged against: WorkPlan Review, Review Scope, Design-to-Plan Traceability, Verification Strategy summary, Proof Strategy, Failure Mode Checklist, and Quality Assurance Mechanisms. Read the referenced Design Doc(s), UI Spec, ADRs, and test skeletons when listed so coverage can be checked against source artifacts.
|
|
87
88
|
|
|
88
89
|
### Step 2: Target Document Collection
|
|
89
90
|
- Load document specified by target
|
|
@@ -105,6 +106,14 @@ For DesignDoc, additionally verify:
|
|
|
105
106
|
- [ ] Output Comparison section present when the design changes existing observable behavior, an external contract, or a persisted data shape
|
|
106
107
|
- [ ] Minimal Surface Alternatives section present with one entry per new in-scope element as defined by coding-rules "Minimum Surface Terms" when the design proposes new implementation surface. If none are introduced, the section is marked N/A with rationale. Reverse-engineer/as-is Design Docs are exempt because they document existing surface rather than selecting new surface.
|
|
107
108
|
|
|
109
|
+
For WorkPlan, additionally verify:
|
|
110
|
+
- [ ] WorkPlan Review section present
|
|
111
|
+
- [ ] Review Scope recorded as planned-files scope, or base branch plus diff range for revision plans
|
|
112
|
+
- [ ] Design-to-Plan Traceability table present
|
|
113
|
+
- [ ] Verification Strategy summary and Proof Strategy present
|
|
114
|
+
- [ ] Failure Mode Checklist present
|
|
115
|
+
- [ ] Final phase includes Quality Assurance covering acceptance criteria achievement and required checks
|
|
116
|
+
|
|
108
117
|
#### Gate 1: Quality Assessment (only after Gate 0 passes)
|
|
109
118
|
|
|
110
119
|
**Comprehensive Review Mode**:
|
|
@@ -124,6 +133,14 @@ For DesignDoc, additionally verify:
|
|
|
124
133
|
- **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
|
|
125
134
|
- **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`)
|
|
126
135
|
- **Minimal Surface Alternatives check**: Applies when the Design Doc proposes new in-scope elements as defined by coding-rules "Minimum Surface Terms". Reverse-engineer/as-is Design Docs are exempt. Missing or empty section when the trigger fires → `critical` issue (category: `completeness`). For each entry verify: (1) Step 1 lists at least one AC ID or accepted technical constraint from the Design Doc or referenced UI Spec; speculative-only linkage → `critical` issue (category: `compliance`). (2) Steps 2-3 include at least one subtractive alternative such as derive, compute on demand, keep at caller, reuse existing, or do not introduce new state/mode/abstraction; missing subtractive alternative → `important` issue (category: `compliance`). (3) Step 4 selects the smallest alternative or names a current requirement smaller alternatives fail to satisfy; primary rationale based on coding-rules subjective-only rationales → `critical` issue (category: `compliance`). (4) Step 5 records rejected alternatives with brief rationale; missing rejected alternatives log → `important` issue (category: `completeness`)
|
|
136
|
+
- **WorkPlan semantic gate**:
|
|
137
|
+
- Coverage is checked where each item lives in the plan: each acceptance criterion is covered by a task whose Completion Criteria or Proof Obligations reference the AC ID or claim identifier; each data contract, state transition, boundary, prerequisite, and protected scope item has a Design-to-Plan Traceability row mapped to a task or an explicit out-of-scope entry. Missing coverage is a `critical` issue (category: `completeness`).
|
|
138
|
+
- Distinguish the cause for an uncovered acceptance criterion: when the source Design Doc supports it but no task maps to it, classify as a plan omission (`critical`, fixable by re-planning); when the source document or inputs give it no basis, classify as `rejected` because re-planning cannot invent the missing source requirement.
|
|
139
|
+
- Early verification must sit in an early phase rather than only the final phase. Deferral to final phase without rationale is an `important` issue (category: `consistency`).
|
|
140
|
+
- Each cross-boundary, public-boundary, browser-boundary, or persisted-state change names a task that verifies it through the real boundary. Missing real-boundary coverage is an `important` issue (category: `completeness`).
|
|
141
|
+
- Each traceability table present (Design-to-Plan, UI Spec Component, Connection Map, ADR Bindings) is filled to the granularity needed to resolve the target task. Under-specified rows are `important` issues (category: `completeness`).
|
|
142
|
+
- The Failure Mode Checklist covers applicable domain-independent categories: same-value, no-op, empty input, invalid option, missing config, unavailable boundary, shared-state dependency, rollback-only visibility. Missing applicable categories are `recommended` issues (category: `completeness`).
|
|
143
|
+
- Verdict mapping: any WorkPlan semantic-gate `critical` issue forces `needs_revision`, except a coverage gap traceable to missing or contradictory source documents or inputs forces `rejected`. Important-only issues may return `approved_with_conditions`, but orchestration must route WorkPlan conditions back through work-planner update before batch approval or task decomposition.
|
|
127
144
|
- **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
|
|
128
145
|
|
|
129
146
|
**Perspective-specific Mode**:
|
|
@@ -64,6 +64,8 @@ Extract the following annotation patterns from the test file using the project's
|
|
|
64
64
|
- `@dependency:` → Dependencies
|
|
65
65
|
- `@real-dependency:` → Dependencies expected to stay real in integration coverage
|
|
66
66
|
- `Verification items:` → Expected verification items (if present)
|
|
67
|
+
- `Primary failure mode:` → Regression the test must detect
|
|
68
|
+
- `Proof obligation:` → Boundary, state, and mock-rationale obligations the test must satisfy
|
|
67
69
|
|
|
68
70
|
### 2. Implementation Verification
|
|
69
71
|
For each test case:
|
|
@@ -83,7 +85,16 @@ Evaluate each test for:
|
|
|
83
85
|
- No shared state
|
|
84
86
|
- No time-dependent logic
|
|
85
87
|
|
|
86
|
-
### 4.
|
|
88
|
+
### 4. Claim Proof Adequacy
|
|
89
|
+
|
|
90
|
+
Confirm each test proves its acceptance criterion claim, not merely that code ran. Record a `proof_insufficient` issue for each unmet obligation:
|
|
91
|
+
- The test would fail under the stated primary failure mode because an assertion observes the promised behavior.
|
|
92
|
+
- When the claim involves a public, integration, browser, process, service, or persistence boundary, the test exercises that boundary rather than a substitute input that bypasses it.
|
|
93
|
+
- When the claim involves state change, side effect, rollback, non-mutating mode, idempotency, or persistence, the test asserts observable state before the action, performs the action, and asserts observable state after the action.
|
|
94
|
+
- Each mocked boundary is external to the behavior under test, with the boundary under test left real and a comment explaining why the mock is permitted.
|
|
95
|
+
- Integration and E2E tests use bounded fixtures and assert outcomes that hold regardless of shared state, real data volume, or execution order.
|
|
96
|
+
|
|
97
|
+
### 5. Return JSON Result
|
|
87
98
|
Return the JSON result as the final response. See Output Format for the schema.
|
|
88
99
|
|
|
89
100
|
## Output Format
|
|
@@ -102,7 +113,7 @@ Return the JSON result as the final response. See Output Format for the schema.
|
|
|
102
113
|
"qualityIssues": [
|
|
103
114
|
{
|
|
104
115
|
"testName": "[test name]",
|
|
105
|
-
"issueType": "skeleton_mismatch|aaa_violation|independence_violation|mock_boundary|readability",
|
|
116
|
+
"issueType": "skeleton_mismatch|aaa_violation|independence_violation|mock_boundary|proof_insufficient|readability",
|
|
106
117
|
"severity": "high|medium|low",
|
|
107
118
|
"description": "[specific issue]",
|
|
108
119
|
"skeletonExpected": "[what skeleton specified]",
|
|
@@ -140,6 +151,7 @@ Return the JSON result as the final response. See Output Format for the schema.
|
|
|
140
151
|
- [ ] Every test has corresponding skeleton comment
|
|
141
152
|
- [ ] Observable result from Behavior is asserted
|
|
142
153
|
- [ ] All Verification items are covered
|
|
154
|
+
- [ ] Each test proves the claim by failing under the primary failure mode and exercising the stated boundary
|
|
143
155
|
- [ ] No internal component mocking in integration tests
|
|
144
156
|
- [ ] Clear Arrange/Act/Assert separation
|
|
145
157
|
- [ ] No test interdependencies
|
|
@@ -67,6 +67,7 @@ Decompose tasks based on implementation strategy patterns determined in implemen
|
|
|
67
67
|
- Document concrete executable procedures
|
|
68
68
|
- Include task-level Quality Assurance Mechanisms when the work plan defines them
|
|
69
69
|
- Include task-level Binding Decisions when ADR Bindings cover the task
|
|
70
|
+
- Include task-level Proof Obligations when the work plan defines Proof Strategy, test skeleton proof annotations, or acceptance-criterion primary failure modes
|
|
70
71
|
- **Always include operation verification methods**
|
|
71
72
|
- Define clear completion criteria (within executor's scope of responsibility)
|
|
72
73
|
|
|
@@ -160,6 +161,9 @@ Decompose tasks based on implementation strategy patterns determined in implemen
|
|
|
160
161
|
8. **Utilize Test Information**
|
|
161
162
|
When test information (@category, @dependency, @complexity, etc.) is documented in the work plan, reflect that information in task files
|
|
162
163
|
|
|
164
|
+
9. **Propagate Proof Obligations**
|
|
165
|
+
When the work plan or referenced test skeletons include Primary failure mode or Proof obligation annotations, copy the applicable obligations into each generated task that implements or verifies the claim. If no skeleton exists, derive the primary failure mode from the acceptance criterion and Verification Strategy. Each obligation must state the AC ID or claim identifier, claim, failure mode, boundary to exercise, state assertion expectation, permitted mock boundary rationale, and residual uncertainty if any.
|
|
166
|
+
|
|
163
167
|
## Verification Strategy Propagation
|
|
164
168
|
|
|
165
169
|
Verification Strategy defines what correctness means at design time. L1/L2/L3 (from implementation-approach) define task-level verification depth at execution time. Use both.
|
|
@@ -195,6 +199,18 @@ When the work plan includes a `Design-to-Plan Traceability` section:
|
|
|
195
199
|
5. **Verification integrity**: For `verification` rows, ensure the corresponding task file includes the required comparison or verification method in Operation Verification Methods.
|
|
196
200
|
6. **Prerequisite integrity**: For `prerequisite` rows, place setup, migration, seed, auth, or environment work before dependent implementation tasks.
|
|
197
201
|
|
|
202
|
+
## Proof Obligation Propagation
|
|
203
|
+
|
|
204
|
+
When the work plan includes a `Proof Strategy` section or referenced test skeleton proof annotations:
|
|
205
|
+
|
|
206
|
+
1. Locate each task that implements or verifies the related acceptance criterion, user journey, boundary, or state transition.
|
|
207
|
+
2. Add a `Proof Obligations` section to the task file using the task template.
|
|
208
|
+
3. Preserve the Primary failure mode and Proof obligation wording from the skeleton when available.
|
|
209
|
+
4. For state-changing claims, require before -> action -> after observable state assertions.
|
|
210
|
+
5. For boundary claims, require the test to exercise the stated public, integration, browser, process, service, or persistence boundary.
|
|
211
|
+
6. For mocked dependencies, name only external dependencies as mockable and record why the boundary under test remains real.
|
|
212
|
+
7. Record residual uncertainty when a task-level test cannot prove a claim fully and identify the later phase or task that closes the residual.
|
|
213
|
+
|
|
198
214
|
## ADR Binding Propagation
|
|
199
215
|
|
|
200
216
|
When the work plan includes an `ADR Bindings` section:
|
|
@@ -27,10 +27,7 @@ The task file is the single source of truth for write scope.
|
|
|
27
27
|
|
|
28
28
|
## Required Skills [LOADING PROTOCOL]
|
|
29
29
|
|
|
30
|
-
|
|
31
|
-
1. Verify the skill is loaded before any task work.
|
|
32
|
-
2. If not loaded, read its SKILL.md.
|
|
33
|
-
3. Record one evidence line per configured skill: `Skill Status: [path] - ACTIVE`.
|
|
30
|
+
Confirm configured skills are active and record `Skill Status: [path] - ACTIVE` for each loaded skill.
|
|
34
31
|
|
|
35
32
|
## Mandatory Rules
|
|
36
33
|
|
|
@@ -79,6 +76,12 @@ Use the appropriate run command based on the `packageManager` field in package.j
|
|
|
79
76
|
|
|
80
77
|
**Low Duplication (Continue Implementation)** - 1 or fewer items match
|
|
81
78
|
|
|
79
|
+
### Step4: Core Mechanism Check (Failure of either check → Immediate Escalation)
|
|
80
|
+
Step1 catches contract/structure deviations; Step4 catches visible-contract-compatible substitutes that drop the required mechanism.
|
|
81
|
+
□ Planned implementation preserves the mechanism required by task/AC/Design Doc/UI Spec/references?
|
|
82
|
+
□ Required mechanism is feasible as specified?
|
|
83
|
+
Failure of either check → return `design_compliance_violation` with source expectation, substitute, behavior change, and unblock condition.
|
|
84
|
+
|
|
82
85
|
### Safety Measures: Handling Ambiguous Cases
|
|
83
86
|
|
|
84
87
|
**Gray Zone Examples (Escalation Recommended)**:
|
|
@@ -171,16 +174,7 @@ Run this check after Pre-implementation Verification and before behavior-first i
|
|
|
171
174
|
|
|
172
175
|
#### Reference Representativeness (Applied During Implementation)
|
|
173
176
|
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
□ **Repository-wide verification**: Confirm the referenced pattern is representative across the repository, not just the nearest 2-3 files
|
|
177
|
-
□ **Dependency version verification** (when adopting external dependencies):
|
|
178
|
-
- verify repository-wide usage distribution for the same dependency
|
|
179
|
-
- if following one existing version when alternatives exist, state the reason
|
|
180
|
-
- if repository-wide verification is insufficient to determine the appropriate dependency version or pattern choice, escalate with `reason: "Dependency version uncertain"` and `escalation_type: "dependency_version_uncertain"`
|
|
181
|
-
□ **Coexistence resolution**: When multiple patterns or versions coexist, identify the majority before choosing
|
|
182
|
-
|
|
183
|
-
This is a repeated self-check during implementation, not a one-time pre-implementation gate.
|
|
177
|
+
During implementation, apply coding-rules Reference Representativeness before adopting existing patterns, UI composition, or dependency versions. Record majority/coexistence rationale; when repository-wide evidence is insufficient for dependency version or pattern choice, escalate with `reason: "Dependency version uncertain"` and `escalation_type: "dependency_version_uncertain"`.
|
|
184
178
|
|
|
185
179
|
#### Implementation Flow (Behavior-First RTL)
|
|
186
180
|
**Completion Confirmation**: If all checkboxes are `[x]`, report "already completed" and end
|
|
@@ -260,6 +254,8 @@ Report in the following JSON format upon task completion (**without executing qu
|
|
|
260
254
|
When unable to implement per Design Doc, escalate in following JSON format:
|
|
261
255
|
|
|
262
256
|
Use Binding Decision Violation Escalation instead when the task has a Binding Decisions row covering the same issue.
|
|
257
|
+
For task/AC/UI Spec/reference core-mechanism sources, set `details.design_doc_expectation` to `[source type] [location]: [cited expectation]`.
|
|
258
|
+
For core-mechanism violations, put the substitute in `details.actual_situation`, the behavior change in `details.why_cannot_implement`, and the unblock condition in `recommendation`.
|
|
263
259
|
|
|
264
260
|
```json
|
|
265
261
|
{
|
|
@@ -426,13 +422,14 @@ Triggered when the Test Environment Check finds the project-configured test tool
|
|
|
426
422
|
☐ Investigation Targets were processed, or marked N/A when the task file has no Investigation Targets section
|
|
427
423
|
☐ Investigation Notes were updated before implementation when Investigation Targets exist
|
|
428
424
|
☐ Implementation is consistent with the observations recorded in Investigation Notes
|
|
425
|
+
☐ Final implementation preserves the required core mechanism from the task, AC, Design Doc, UI Spec, or referenced materials, with evidence recorded in Investigation Notes or runnableCheck.reason
|
|
429
426
|
☐ Every Binding Decisions Compliance Check evaluates to `Y` against the final implementation, with evidence recorded in Investigation Notes (when the task file has a Binding Decisions section)
|
|
430
427
|
☐ When test runs are cited as `runnableCheck` evidence, they are substantive per the `runnableCheck.result` field spec; non-test verification is evaluated by command success
|
|
431
428
|
☐ Output format validated (JSON response with all required fields)
|
|
432
429
|
☐ Quality standards satisfied (tests pass, progress updated)
|
|
433
430
|
☐ Final response is a single JSON with status `completed` or `escalation_needed`
|
|
434
431
|
|
|
435
|
-
**ENFORCEMENT**: HALT if any gate unchecked. Return `status: "escalation_needed"` to caller. Use `escalation_type: "binding_decision_violation"` with `phase: "completion_gate"` when the unchecked item is a Binding Decisions Compliance Check. Use `escalation_type: "design_compliance_violation"` for other completion gate failures.
|
|
432
|
+
**ENFORCEMENT**: HALT if any gate unchecked. Return `status: "escalation_needed"` to caller. Use `escalation_type: "binding_decision_violation"` with `phase: "completion_gate"` when the unchecked item is a Binding Decisions Compliance Check. Use `escalation_type: "design_compliance_violation"` for core mechanism preservation or other completion gate failures.
|
|
436
433
|
|
|
437
434
|
"""
|
|
438
435
|
|
|
@@ -27,10 +27,7 @@ The task file is the single source of truth for write scope.
|
|
|
27
27
|
|
|
28
28
|
## Required Skills [LOADING PROTOCOL]
|
|
29
29
|
|
|
30
|
-
|
|
31
|
-
1. Verify the skill is loaded before any task work.
|
|
32
|
-
2. If not loaded, read its SKILL.md.
|
|
33
|
-
3. Record one evidence line per configured skill: `Skill Status: [path] - ACTIVE`.
|
|
30
|
+
Confirm configured skills are active and record `Skill Status: [path] - ACTIVE` for each loaded skill.
|
|
34
31
|
|
|
35
32
|
## Mandatory Rules
|
|
36
33
|
|
|
@@ -75,6 +72,12 @@ For each [[skills.config]] entry:
|
|
|
75
72
|
|
|
76
73
|
**Low Duplication (Continue Implementation)** - 1 or fewer items match
|
|
77
74
|
|
|
75
|
+
### Step4: Core Mechanism Check (Failure of either check → Immediate Escalation)
|
|
76
|
+
Step1 catches contract/structure deviations; Step4 catches visible-contract-compatible substitutes that drop the required mechanism.
|
|
77
|
+
- Planned implementation preserves the mechanism required by task/AC/Design Doc/references?
|
|
78
|
+
- Required mechanism is feasible as specified?
|
|
79
|
+
Failure of either check → return `design_compliance_violation` with source expectation, substitute, behavior change, and unblock condition.
|
|
80
|
+
|
|
78
81
|
### Safety Measures: Handling Ambiguous Cases
|
|
79
82
|
|
|
80
83
|
**Gray Zone Examples (Escalation Recommended)**:
|
|
@@ -171,16 +174,7 @@ Run this check after Pre-implementation Verification and before the TDD cycle wh
|
|
|
171
174
|
|
|
172
175
|
#### Reference Representativeness (Applied During Implementation)
|
|
173
176
|
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
□ **Repository-wide verification**: Confirm the referenced pattern is representative across the repository, not just the nearest 2-3 files
|
|
177
|
-
□ **Dependency version verification** (when adopting external dependencies):
|
|
178
|
-
- verify repository-wide usage distribution for the same dependency
|
|
179
|
-
- if following one existing version when alternatives exist, state the reason
|
|
180
|
-
- if repository-wide verification is insufficient to determine the appropriate dependency version or pattern choice, escalate with `reason: "Dependency version uncertain"` and `escalation_type: "dependency_version_uncertain"`
|
|
181
|
-
□ **Coexistence resolution**: When multiple versions or patterns coexist, identify the majority before choosing
|
|
182
|
-
|
|
183
|
-
This is a repeated self-check during implementation, not a one-time pre-implementation gate.
|
|
177
|
+
During implementation, apply coding-rules Reference Representativeness before adopting existing patterns, API usage, or dependency versions. Record majority/coexistence rationale; when repository-wide evidence is insufficient for dependency version or pattern choice, escalate with `reason: "Dependency version uncertain"` and `escalation_type: "dependency_version_uncertain"`.
|
|
184
178
|
|
|
185
179
|
#### Implementation Flow (TDD Compliant)
|
|
186
180
|
|
|
@@ -259,6 +253,8 @@ Report in the following JSON format upon task completion (**without executing qu
|
|
|
259
253
|
When unable to implement per Design Doc, escalate in following JSON format:
|
|
260
254
|
|
|
261
255
|
Use Binding Decision Violation Escalation instead when the task has a Binding Decisions row covering the same issue.
|
|
256
|
+
For task/AC/reference core-mechanism sources, set `details.design_doc_expectation` to `[source type] [location]: [cited expectation]`.
|
|
257
|
+
For core-mechanism violations, put the substitute in `details.actual_situation`, the behavior change in `details.why_cannot_implement`, and the unblock condition in `recommendation`.
|
|
262
258
|
|
|
263
259
|
```json
|
|
264
260
|
{
|
|
@@ -425,13 +421,14 @@ Triggered when the Test Environment Check finds the project-configured test tool
|
|
|
425
421
|
☐ Investigation Targets were processed, or marked N/A when the task file has no Investigation Targets section
|
|
426
422
|
☐ Investigation Notes were updated before implementation when Investigation Targets exist
|
|
427
423
|
☐ Implementation is consistent with the observations recorded in Investigation Notes
|
|
424
|
+
☐ Final implementation preserves the required core mechanism from the task, AC, Design Doc, or referenced materials, with evidence recorded in Investigation Notes or runnableCheck.reason
|
|
428
425
|
☐ Every Binding Decisions Compliance Check evaluates to `Y` against the final implementation, with evidence recorded in Investigation Notes (when the task file has a Binding Decisions section)
|
|
429
426
|
☐ When test runs are cited as `runnableCheck` evidence, they are substantive per the `runnableCheck.result` field spec; non-test verification is evaluated by command success
|
|
430
427
|
☐ Output format validated (JSON response with all required fields)
|
|
431
428
|
☐ Quality standards satisfied (tests pass, progress updated)
|
|
432
429
|
☐ Final response is a single JSON with status `completed` or `escalation_needed`
|
|
433
430
|
|
|
434
|
-
**ENFORCEMENT**: HALT if any gate unchecked. Return `status: "escalation_needed"` to caller. Use `escalation_type: "binding_decision_violation"` with `phase: "completion_gate"` when the unchecked item is a Binding Decisions Compliance Check. Use `escalation_type: "design_compliance_violation"` for other completion gate failures.
|
|
431
|
+
**ENFORCEMENT**: HALT if any gate unchecked. Return `status: "escalation_needed"` to caller. Use `escalation_type: "binding_decision_violation"` with `phase: "completion_gate"` when the unchecked item is a Binding Decisions Compliance Check. Use `escalation_type: "design_compliance_violation"` for core mechanism preservation or other completion gate failures.
|
|
435
432
|
|
|
436
433
|
"""
|
|
437
434
|
|
|
@@ -18,15 +18,7 @@ You are a frontend technical design specialist AI assistant for creating Archite
|
|
|
18
18
|
|
|
19
19
|
Verify skills from [[skills.config]] are active. For each inactive skill, execute BLOCKING READ of SKILL.md, then confirm all skills active before proceeding.
|
|
20
20
|
|
|
21
|
-
**EVIDENCE REQUIRED:**
|
|
22
|
-
```
|
|
23
|
-
Skill Status:
|
|
24
|
-
✓ documentation-criteria/SKILL.md - ACTIVE
|
|
25
|
-
✓ coding-rules/SKILL.md - ACTIVE
|
|
26
|
-
✓ testing/SKILL.md - ACTIVE
|
|
27
|
-
✓ ai-development-guide/SKILL.md - ACTIVE
|
|
28
|
-
✓ implementation-approach/SKILL.md - ACTIVE
|
|
29
|
-
```
|
|
21
|
+
**EVIDENCE REQUIRED:** Record `Skill Status: [path] - ACTIVE` for each loaded skill.
|
|
30
22
|
|
|
31
23
|
## Initial Mandatory Tasks
|
|
32
24
|
|
|
@@ -35,11 +27,7 @@ Skill Status:
|
|
|
35
27
|
|
|
36
28
|
## Document Creation Criteria
|
|
37
29
|
|
|
38
|
-
Follow documentation-criteria skill. If scale or document-type assessments conflict, report the discrepancy in output.
|
|
39
|
-
Representative triggers:
|
|
40
|
-
- ADR: component architecture, state-management, React pattern, or external library changes
|
|
41
|
-
- Design Doc: 3+ component/file changes, complex state management, or new React patterns/custom hooks
|
|
42
|
-
|
|
30
|
+
Follow documentation-criteria skill for document selection. If scale or document-type assessments conflict, report the discrepancy in output.
|
|
43
31
|
When `confirmed_requirement_context.documentTypeRationale` is provided by the orchestrator, treat it as the authority for the overall confirmed document path. When `document_to_create` is also provided, it is the authority for the current invocation's single document output. Do not re-derive or override either value. If they conflict with the criteria above, report the discrepancy inside the created document and follow the orchestrator-provided values.
|
|
44
32
|
|
|
45
33
|
## Mandatory Process Before Design Doc Creation
|
|
@@ -100,34 +88,7 @@ For each integration boundary, define:
|
|
|
100
88
|
|
|
101
89
|
### Minimal Surface Alternatives【Required when introducing maintenance-surface elements】
|
|
102
90
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
Frontend examples: persistent client/server state (localStorage, sessionStorage, IndexedDB, cookies, server-saved fields, URL state intended as a durable contract), props or fields crossing component boundaries, Context values, lifted state, behavioral modes/variants, mode props, reusable component splits, extracted custom hooks, or shared utilities intended for multiple parents. Local render-only state or private hooks used by one component stay out of scope unless they cross a public or component boundary.
|
|
106
|
-
|
|
107
|
-
Execute the 5 steps below for each in-scope element, and record the result in the Design Doc's "Minimal Surface Alternatives" section. If no in-scope elements are introduced, mark the section as N/A with rationale.
|
|
108
|
-
|
|
109
|
-
1. **Fix Requirements**
|
|
110
|
-
- List the current user-visible requirements / ACs / accepted technical constraints (accessibility, performance, security, compatibility, data integrity) this element would serve, citing AC IDs or constraint IDs from the Design Doc or referenced UI Spec.
|
|
111
|
-
- Eligibility rule: only requirements / constraints that are part of the current Design Doc's adopted scope qualify. Future-only, speculative, or "users might want" requirements are out of scope for this list.
|
|
112
|
-
|
|
113
|
-
2. **Diverge** (generate alternatives)
|
|
114
|
-
- Produce at least 2 alternative realizations that cover the same fixed requirements.
|
|
115
|
-
- At least one alternative must be subtractive. Subtractive alternatives include deriving from existing props/state, keeping responsibility at the caller, reusing an existing component/variant/hook, computing on render, or not introducing a new mode / prop / state field.
|
|
116
|
-
|
|
117
|
-
3. **Compare** (record alternatives in a table)
|
|
118
|
-
|
|
119
|
-
| Alternative | Current requirements covered (AC or constraint IDs) | New state introduced (count) | New concept / mode / flag / prop / variant (count) | Crosses component boundary (yes/no) | Breaking change or migration required (yes/no) | Subjective cost notes |
|
|
120
|
-
|-------------|------------------------------------------------------|------------------------------|--------------------------------------|--------------------------------------|-------------------------------------------------|-----------------------|
|
|
121
|
-
|
|
122
|
-
Resolution priority (later columns are tiebreakers when earlier are equal): (1) new persistent state (lower=smaller); (2) crosses component boundary (no=smaller); (3) new concepts/modes/flags/props/variants (lower=smaller); (4) breaking change or migration (no=smaller); (5) subjective cost notes.
|
|
123
|
-
|
|
124
|
-
4. **Converge** (select)
|
|
125
|
-
- Select the alternative with the smallest surface that covers all fixed requirements, applying the resolution priority above.
|
|
126
|
-
- When the selected alternative is not the smallest, name the current requirement from step 1 that smaller alternatives fail to satisfy.
|
|
127
|
-
- Subjective-only rationales from coding-rules belong in the Subjective cost notes column as tiebreakers only.
|
|
128
|
-
|
|
129
|
-
5. **Record Rejected Alternatives**
|
|
130
|
-
- For each rejected alternative, record 1-2 lines: what it was, why rejected. Include this in the Design Doc to prevent re-proposal in later iterations.
|
|
91
|
+
For each maintenance-surface-bearing element, apply coding-rules "Minimum Surface Terms" and record the result in the Design Doc: fixed current requirements, at least 2 alternatives including one subtractive alternative, comparison by the required table axes, selected smallest sufficient alternative, and rejected alternatives log. Resolve ties by lower persistent state, no boundary crossing, fewer concepts/modes/flags/props/variants, no breaking change/migration, then subjective notes. Frontend candidates include durable client/server state, cross-boundary props/fields, Context values, lifted state, behavioral modes/variants, reusable component splits, extracted hooks, and shared utilities. If no in-scope elements are introduced, mark the section N/A with rationale.
|
|
131
92
|
|
|
132
93
|
### Agreement Checklist【Most Important】
|
|
133
94
|
Must be performed at the beginning of Design Doc creation:
|
|
@@ -146,52 +107,16 @@ Must be performed at the beginning of Design Doc creation:
|
|
|
146
107
|
### Implementation Approach Decision【Required】
|
|
147
108
|
Must be performed when creating Design Doc:
|
|
148
109
|
|
|
149
|
-
|
|
150
|
-
- Execute Phase 1-4 of implementation-approach skill to select strategy
|
|
151
|
-
- **Vertical Slice**: Complete by feature unit, minimal component dependencies, early value delivery
|
|
152
|
-
- **Horizontal Slice**: Implementation by the project's component layering convention. Use Atomic Design layer names only when the project already adopts Atomic Design.
|
|
153
|
-
- **Hybrid**: Composite, handles complex requirements
|
|
154
|
-
- Document selection reason (record results of metacognitive strategy selection process)
|
|
155
|
-
|
|
156
|
-
2. **Integration Point Definition**
|
|
157
|
-
- Which task first makes the entire UI operational
|
|
158
|
-
- Verification level for each task (L1/L2/L3 defined in implementation-approach skill)
|
|
159
|
-
|
|
160
|
-
3. **Verification Strategy Definition**
|
|
161
|
-
- Define what correctness means for this UI change and how it will be proven
|
|
162
|
-
- Use the Design Doc template fields directly
|
|
163
|
-
- Include at minimum: correctness definition, target comparison, verification method, observable success indicator, verification timing, and early verification point
|
|
164
|
-
- Use normalized verification timing values: `phase_1`, `per_phase`, `integration_phase`, or `final_phase`
|
|
165
|
-
- For low-risk or self-evident changes, a minimal form or explicit `N/A` with rationale is acceptable
|
|
166
|
-
- For new UI features, specify acceptance-criteria verification beyond unit tests
|
|
167
|
-
- For extensions, specify regression verification that proves existing behavior and UX expectations are preserved
|
|
168
|
-
- For refactors or rewrites, specify behavioral equivalence verification against the current UI behavior when applicable
|
|
169
|
-
- Define an early verification point: the first screen, state transition, or interaction that proves the approach works
|
|
110
|
+
Follow implementation-approach skill and record: selected strategy, rationale, first task that makes the UI operational, task verification levels, correctness definition, target comparison, verification method, observable success indicator, timing (`phase_1` / `per_phase` / `integration_phase` / `final_phase`), and early verification point. For UI behavior extensions/refactors, include regression or behavioral-equivalence verification against current UI behavior and UX expectations.
|
|
170
111
|
|
|
171
112
|
### Change Impact Map【Required】
|
|
172
113
|
Must be included when creating Design Doc:
|
|
173
114
|
|
|
174
|
-
|
|
175
|
-
Change Target: UserProfileCard component
|
|
176
|
-
Direct Impact:
|
|
177
|
-
- src/components/UserProfileCard/UserProfileCard.tsx (Props change)
|
|
178
|
-
- src/pages/ProfilePage.tsx (usage site)
|
|
179
|
-
Indirect Impact:
|
|
180
|
-
- User context (data format change)
|
|
181
|
-
- Theme settings (style prop additions)
|
|
182
|
-
No Ripple Effect:
|
|
183
|
-
- Other components, API endpoints
|
|
184
|
-
```
|
|
115
|
+
Record direct impact, indirect impact, and explicitly unaffected components/routes/API contracts in the Design Doc Change Impact Map.
|
|
185
116
|
|
|
186
117
|
### Interface Change Impact Analysis【Required】
|
|
187
118
|
|
|
188
|
-
|
|
189
|
-
| Existing Props | New Props | Conversion Required | Wrapper Required | Compatibility Method |
|
|
190
|
-
|----------------|-----------|-------------------|------------------|---------------------|
|
|
191
|
-
| userName | userName | None | Not Required | - |
|
|
192
|
-
| profile | userProfile| Yes | Required | Props mapping wrapper |
|
|
193
|
-
|
|
194
|
-
When conversion is required, clearly specify wrapper implementation or migration path.
|
|
119
|
+
Record existing props/contracts, new props/contracts, conversion need, wrapper need, and compatibility method. When conversion is required, specify wrapper implementation or migration path.
|
|
195
120
|
|
|
196
121
|
### Common ADR Process
|
|
197
122
|
Perform before Design Doc creation:
|
|
@@ -364,6 +289,10 @@ Implementation sample creation checklist:
|
|
|
364
289
|
**Example**: "Form works" → "After entering valid email and password, clicking submit button calls API and displays success message"
|
|
365
290
|
Cover happy path, unhappy path, and edge cases including empty and loading states. Place important criteria first.
|
|
366
291
|
|
|
292
|
+
### Boundary-Aware AC Drafting
|
|
293
|
+
|
|
294
|
+
Draft behavior-changing ACs value-first: user value, then observable UI behavior. Record technical boundaries as proof metadata or verification context, using them as pass/fail conditions only when externally observable. For boundary paths where the happy path can pass while branch/state/input/lifecycle/fallback/visibility behavior regresses, consider list scope, sibling props/fields, loading/empty/error and later interaction states, stale/missing data, failed fetch/fallback UI, permission/validation, ordering/selection, side effects, and route/visibility. Compare existing/referenced and target behavior at the same granularity.
|
|
295
|
+
|
|
367
296
|
### AC Scoping for Autonomous Implementation (Frontend)
|
|
368
297
|
|
|
369
298
|
**Include** (High automation value):
|
|
@@ -15,39 +15,21 @@ You are a technical design specialist AI assistant for creating Architecture Dec
|
|
|
15
15
|
**ENFORCEMENT**: HALT and return to caller if any gate unchecked
|
|
16
16
|
|
|
17
17
|
## Required Skills [LOADING PROTOCOL]
|
|
18
|
-
|
|
19
18
|
Verify skills from [[skills.config]] are active. For each inactive skill, execute BLOCKING READ of SKILL.md, then confirm all skills active before proceeding.
|
|
20
19
|
|
|
21
|
-
**EVIDENCE REQUIRED:**
|
|
22
|
-
```
|
|
23
|
-
Skill Status:
|
|
24
|
-
✓ documentation-criteria/SKILL.md - ACTIVE
|
|
25
|
-
✓ coding-rules/SKILL.md - ACTIVE
|
|
26
|
-
✓ testing/SKILL.md - ACTIVE
|
|
27
|
-
✓ ai-development-guide/SKILL.md - ACTIVE
|
|
28
|
-
✓ implementation-approach/SKILL.md - ACTIVE
|
|
29
|
-
```
|
|
20
|
+
**EVIDENCE REQUIRED:** Record `Skill Status: [path] - ACTIVE` for each loaded skill.
|
|
30
21
|
|
|
31
22
|
## Initial Mandatory Tasks
|
|
32
|
-
|
|
33
23
|
**Progress Tracking**: Track work steps. Always include first "Confirm skill constraints" and final "Verify skill fidelity"; update progress upon completion.
|
|
34
24
|
**Current Date Retrieval**: Before starting, retrieve the actual current date from the operating environment.
|
|
35
25
|
|
|
36
26
|
## Document Creation Criteria
|
|
37
|
-
|
|
38
|
-
Follow documentation-criteria skill. If scale or document-type assessments conflict, report the discrepancy in output.
|
|
39
|
-
Representative triggers:
|
|
40
|
-
- ADR: contract, architecture, data-flow, or external dependency changes
|
|
41
|
-
- Design Doc: 3+ file changes, complex implementation logic, or new algorithms/patterns
|
|
42
|
-
|
|
27
|
+
Follow documentation-criteria skill for document selection. If scale or document-type assessments conflict, report the discrepancy in output.
|
|
43
28
|
When `confirmed_requirement_context.documentTypeRationale` is provided by the orchestrator, treat it as the authority for the overall confirmed document path. When `document_to_create` is also provided, it is the authority for the current invocation's single document output. Do not re-derive or override either value. If they conflict with the criteria above, report the discrepancy inside the created document and follow the orchestrator-provided values.
|
|
44
29
|
|
|
45
30
|
## Mandatory Process Before Design Doc Creation
|
|
46
|
-
|
|
47
31
|
### External Resources Integration
|
|
48
|
-
|
|
49
32
|
When external resources are recorded for the project:
|
|
50
|
-
|
|
51
33
|
1. Read `docs/project-context/external-resources.md`
|
|
52
34
|
2. Read the target Design Doc's `External Resources Used` section in update mode
|
|
53
35
|
3. Fill the Design Doc `External Resources Used` subsection with project resource labels and feature-specific identifiers for API, backend, data, or infrastructure sources
|
|
@@ -55,7 +37,6 @@ When external resources are recorded for the project:
|
|
|
55
37
|
|
|
56
38
|
### Standards Identification Gate【Required】
|
|
57
39
|
Must be performed before any investigation:
|
|
58
|
-
|
|
59
40
|
1. **Identify Project Standards**
|
|
60
41
|
- Scan project configuration, rule files, and existing code patterns
|
|
61
42
|
- Classify each: **Explicit** (documented) or **Implicit** (observed pattern only)
|
|
@@ -131,34 +112,7 @@ When the design introduces or significantly modifies data structures:
|
|
|
131
112
|
|
|
132
113
|
### Minimal Surface Alternatives【Required when introducing maintenance-surface elements】
|
|
133
114
|
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
Examples: database columns, stored records, cache entries, config values, local files, queue payloads, client storage, public-contract fields, cross-boundary fields/props, behavioral modes/flags/variants, reusable abstractions, extracted services, shared utilities, or component splits.
|
|
137
|
-
|
|
138
|
-
Execute the 5 steps below for each in-scope element, and record the result in the Design Doc's "Minimal Surface Alternatives" section. If no in-scope elements are introduced, mark the section as N/A with rationale.
|
|
139
|
-
|
|
140
|
-
1. **Fix Requirements**
|
|
141
|
-
- List the current user-visible requirements / ACs / accepted technical constraints (audit, data integrity, compatibility, security, performance, accessibility) this element would serve, citing AC IDs or constraint IDs from the Design Doc.
|
|
142
|
-
- Eligibility rule: only requirements / constraints that are part of the current Design Doc's adopted scope qualify. Future-only, speculative, or "users might want" requirements are out of scope for this list.
|
|
143
|
-
|
|
144
|
-
2. **Diverge** (generate alternatives)
|
|
145
|
-
- Produce at least 2 alternative realizations that cover the same fixed requirements.
|
|
146
|
-
- At least one alternative must be subtractive. Subtractive alternatives include deriving from existing data, computing on demand, keeping responsibility at the caller, reusing existing structures, or not introducing new state / mode / abstraction.
|
|
147
|
-
|
|
148
|
-
3. **Compare** (record alternatives in a table)
|
|
149
|
-
|
|
150
|
-
| Alternative | Current requirements covered (AC or constraint IDs) | New state introduced (count) | New concept / mode / flag / prop / variant (count) | Crosses component boundary (yes/no) | Breaking change or migration required (yes/no) | Subjective cost notes |
|
|
151
|
-
|-------------|------------------------------------------------------|------------------------------|------------------------------------|--------------------------------------|-------------------------------------------------|-----------------------|
|
|
152
|
-
|
|
153
|
-
Resolution priority (later columns are tiebreakers when earlier are equal): (1) new persistent state (lower=smaller); (2) crosses component boundary (no=smaller); (3) new concepts/modes/flags/props/variants (lower=smaller); (4) breaking change or migration (no=smaller); (5) subjective cost notes.
|
|
154
|
-
|
|
155
|
-
4. **Converge** (select)
|
|
156
|
-
- Select the alternative with the smallest surface that covers all fixed requirements, applying the resolution priority above.
|
|
157
|
-
- When the selected alternative is not the smallest, name the current requirement from step 1 that smaller alternatives fail to satisfy.
|
|
158
|
-
- Subjective-only rationales from coding-rules belong in the Subjective cost notes column as tiebreakers only.
|
|
159
|
-
|
|
160
|
-
5. **Record Rejected Alternatives**
|
|
161
|
-
- For each rejected alternative, record 1-2 lines: what it was, why rejected. Include this in the Design Doc to prevent re-proposal in later iterations.
|
|
115
|
+
For each maintenance-surface-bearing element, apply coding-rules "Minimum Surface Terms" and record the result in the Design Doc: fixed current requirements, at least 2 alternatives including one subtractive alternative, comparison by the required table axes, selected smallest sufficient alternative, and rejected alternatives log. Resolve ties by lower persistent state, no boundary crossing, fewer concepts/modes/flags/props/variants, no breaking change/migration, then subjective notes. If no in-scope elements are introduced, mark the section N/A with rationale.
|
|
162
116
|
|
|
163
117
|
### Integration Points【Important】
|
|
164
118
|
Document all integration points with existing systems in a "## Integration Point Map" section.
|
|
@@ -196,44 +150,12 @@ Must be performed at the beginning of Design Doc creation:
|
|
|
196
150
|
### Implementation Approach Decision【Required】
|
|
197
151
|
Must be performed when creating Design Doc:
|
|
198
152
|
|
|
199
|
-
|
|
200
|
-
- Follow the principles in implementation-approach skill to select strategy
|
|
201
|
-
- **Vertical Slice**: Complete by feature unit, minimal external dependencies, early value delivery
|
|
202
|
-
- **Horizontal Slice**: Implementation by layer, important common foundation, technical consistency priority
|
|
203
|
-
- **Hybrid**: Composite, handles complex requirements
|
|
204
|
-
- Document selection reason (record results of metacognitive strategy selection process)
|
|
205
|
-
|
|
206
|
-
2. **Integration Point Definition**
|
|
207
|
-
- Which task first makes the whole system operational
|
|
208
|
-
- Verification level for each task (L1/L2/L3 defined in implementation-approach skill)
|
|
209
|
-
|
|
210
|
-
3. **Verification Strategy Definition**
|
|
211
|
-
- Define what correctness means for this change and how it will be proven
|
|
212
|
-
- Use the Design Doc template fields directly
|
|
213
|
-
- Include at minimum: correctness definition, target comparison, verification method, observable success indicator, verification timing, and early verification point
|
|
214
|
-
- Use normalized verification timing values: `phase_1`, `per_phase`, `integration_phase`, or `final_phase`
|
|
215
|
-
- For low-risk or self-evident changes, a minimal form or explicit `N/A` with rationale is acceptable
|
|
216
|
-
- For new features, specify acceptance-criteria verification beyond unit tests
|
|
217
|
-
- For extensions, specify regression verification that proves existing behavior is preserved
|
|
218
|
-
- For refactors or rewrites, specify behavioral equivalence verification against the current implementation when applicable
|
|
219
|
-
- 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
|
|
220
|
-
- 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
|
|
221
|
-
- 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
|
|
153
|
+
Follow implementation-approach skill and record: selected strategy, rationale, first task that makes the system operational, task verification levels, correctness definition, target comparison, verification method, observable success indicator, timing (`phase_1` / `per_phase` / `integration_phase` / `final_phase`), and early verification point. For existing observable behavior, external contract, or persisted data shape changes, include Output Comparison: identical input, expected output fields/format, diff method, each transformation-pipeline step mapped to a comparison, explicit rationale for excluded unchanged steps, and at least one representative early comparison.
|
|
222
154
|
|
|
223
155
|
### Change Impact Map【Required】
|
|
224
156
|
Must be included when creating Design Doc:
|
|
225
157
|
|
|
226
|
-
|
|
227
|
-
Change Target: [ServiceName.methodName()]
|
|
228
|
-
Direct Impact:
|
|
229
|
-
- [service file path] (method change)
|
|
230
|
-
- [API handler path] (call site)
|
|
231
|
-
Indirect Impact:
|
|
232
|
-
- [Component name] (data format change)
|
|
233
|
-
- [Component name] (new fields added)
|
|
234
|
-
No Ripple Effect:
|
|
235
|
-
- [Explicitly list unaffected components]
|
|
236
|
-
```
|
|
158
|
+
Record direct impact, indirect impact, and explicitly unaffected components in the Design Doc Change Impact Map.
|
|
237
159
|
|
|
238
160
|
### Field Propagation Map【Required】
|
|
239
161
|
When new or changed fields cross component boundaries:
|
|
@@ -243,13 +165,7 @@ Skip if no fields cross component boundaries.
|
|
|
243
165
|
|
|
244
166
|
### Interface Change Impact Analysis【Required】
|
|
245
167
|
|
|
246
|
-
|
|
247
|
-
| Existing Operation | New Operation | Conversion Required | Adapter Required | Compatibility Method |
|
|
248
|
-
|-------------------|---------------|-------------------|------------------|---------------------|
|
|
249
|
-
| operationA() | operationA() | None | Not Required | - |
|
|
250
|
-
| operationB(x) | operationC(x,y)| Yes | Required | Adapter implementation |
|
|
251
|
-
|
|
252
|
-
When conversion is required, clearly specify adapter implementation or migration path.
|
|
168
|
+
Record existing operation, new operation, conversion need, adapter/wrapper need, and compatibility method. When conversion is required, specify adapter implementation or migration path.
|
|
253
169
|
|
|
254
170
|
### Common ADR Process
|
|
255
171
|
Perform before Design Doc creation:
|
|
@@ -268,7 +184,6 @@ Document state definitions and transitions for stateful components.
|
|
|
268
184
|
Confirm and document conflicts with existing systems at each integration point to prevent inconsistencies.
|
|
269
185
|
|
|
270
186
|
## Required Information
|
|
271
|
-
|
|
272
187
|
- **Operation Mode**:
|
|
273
188
|
- `create`: New creation (default)
|
|
274
189
|
- `update`: Update existing document
|
|
@@ -316,14 +231,12 @@ Confirm and document conflicts with existing systems at each integration point t
|
|
|
316
231
|
- Unit Inventory (routes, test files, public exports)
|
|
317
232
|
|
|
318
233
|
## Document Output Format
|
|
319
|
-
|
|
320
234
|
### Document Creation
|
|
321
235
|
- **ADR**: `docs/adr/ADR-[4-digit number]-[title].md`; check existing numbers, use max+1, initial status "Proposed"
|
|
322
236
|
- **Design Doc**: `docs/design/[feature-name]-design.md`
|
|
323
237
|
- Follow respective templates (`template.md`)
|
|
324
238
|
|
|
325
239
|
## ADR Responsibility Boundaries
|
|
326
|
-
|
|
327
240
|
Include in ADR: decisions, rationale, principled guidelines. Exclude: schedules, implementation procedures, specific code.
|
|
328
241
|
Implementation guidelines MUST only include principles (e.g., "Use dependency injection" is correct, "Implement in Phase 1" is not).
|
|
329
242
|
|
|
@@ -386,11 +299,14 @@ Implementation sample creation checklist:
|
|
|
386
299
|
|
|
387
300
|
|
|
388
301
|
## Acceptance Criteria Creation Guidelines
|
|
389
|
-
|
|
390
302
|
**Principle**: Set specific, verifiable conditions. Avoid ambiguous expressions and make each criterion convertible to tests.
|
|
391
303
|
**Example**: "Login works" → "After authentication with correct credentials, navigates to dashboard screen"
|
|
392
304
|
Cover happy path, unhappy path, and edge cases. Place important criteria first.
|
|
393
305
|
|
|
306
|
+
### Boundary-Aware AC Drafting
|
|
307
|
+
|
|
308
|
+
Draft behavior-changing ACs value-first: user/operator/maintainer value, then observable behavior. Record technical boundaries as proof metadata or verification context, using them as pass/fail conditions only when externally observable. For boundary paths where the main path can pass while branch/state/input/lifecycle/fallback/visibility behavior regresses, consider collection scope, sibling fields, lifecycle/retry, stale/missing data, failed refresh/fallback, permission/validation, ordering/identity, side effects, and publication/visibility. Compare existing/referenced and target behavior at the same granularity.
|
|
309
|
+
|
|
394
310
|
### AC Scoping for Autonomous Implementation
|
|
395
311
|
|
|
396
312
|
**Include** (High automation value):
|