codex-genesis-harness 0.1.1 → 0.1.4
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/.codebase/ARCHITECTURE_REVIEW_COMPLETE.md +216 -0
- package/.codebase/CURRENT_STATE.md +2 -0
- package/.codebase/DOMAIN_MODELS.md +5 -3
- package/.codebase/FILE_NAMING_CLARIFICATION.md +161 -0
- package/.codebase/HARNESS_COMPLETENESS_AUDIT.md +613 -0
- package/.codebase/IMPLEMENTATION_COMPLETE.md +429 -0
- package/.codebase/IMPLEMENTATION_HANDOFF.md +351 -0
- package/.codebase/IMPROVEMENTS_SUMMARY.md +419 -0
- package/.codebase/PHASE3_SKILLS_NAMING_COMPLETE.md +292 -0
- package/.codebase/PHASE_DEPENDENCY_MAP.md +486 -0
- package/.codebase/QUICK_START_SPEC_IMPACT.md +456 -0
- package/.codebase/README.md +139 -0
- package/.codebase/RECOVERY_POINTS.md +438 -0
- package/.codex/skills/genesis-api-sync/SKILL.md +354 -0
- package/.codex/skills/genesis-api-sync/agents/openai.yaml +7 -0
- package/.codex/skills/genesis-api-sync/checklists/api-sync-checklist.md +101 -0
- package/.codex/skills/genesis-api-sync/examples/example.md +68 -0
- package/.codex/skills/genesis-api-sync/templates/api-change-template.md +257 -0
- package/.codex/skills/genesis-debug-guide/SKILL.md +479 -0
- package/.codex/skills/genesis-debug-guide/agents/openai.yaml +7 -0
- package/.codex/skills/genesis-debug-guide/checklists/flaky-test-investigation.md +339 -0
- package/.codex/skills/genesis-debug-guide/checklists/production-bug-debug.md +210 -0
- package/.codex/skills/genesis-debug-guide/checklists/test-failure-debug.md +158 -0
- package/.codex/skills/genesis-debug-guide/examples/example.md +48 -0
- package/.codex/skills/genesis-debug-guide/observability/debug-commands.md +365 -0
- package/.codex/skills/genesis-debug-guide/playbooks/unit-test-failures.md +289 -0
- package/.codex/skills/genesis-debug-guide/templates/debug-investigation-log.md +288 -0
- package/.codex/skills/genesis-docs-automation/SKILL.md +1003 -0
- package/.codex/skills/genesis-docs-automation/agents/openai.yaml +7 -0
- package/.codex/skills/genesis-docs-automation/checklists/docs-validation.md +359 -0
- package/.codex/skills/genesis-docs-automation/checklists/spec-alignment.md +312 -0
- package/.codex/skills/genesis-docs-automation/examples/example.md +59 -0
- package/.codex/skills/genesis-docs-automation/observability/docs-tracking.md +382 -0
- package/.codex/skills/genesis-docs-automation/playbooks/auto-update-flow.md +851 -0
- package/.codex/skills/genesis-docs-automation/playbooks/changelog-generation.md +491 -0
- package/.codex/skills/genesis-docs-automation/templates/changelog-entry-template.md +187 -0
- package/.codex/skills/genesis-docs-automation/templates/handoff-template.md +297 -0
- package/.codex/skills/genesis-harness/SKILL.md +734 -82
- package/.codex/skills/genesis-harness/checklists/bug-fix-qa.md +169 -0
- package/.codex/skills/genesis-harness/checklists/new-feature-qa.md +157 -0
- package/.codex/skills/genesis-harness/checklists/refactor-qa.md +216 -0
- package/.codex/skills/genesis-harness/checklists/requirements-validation.md +211 -0
- package/.codex/skills/genesis-harness/resources/change-impact-matrix-template.md +204 -0
- package/.codex/skills/genesis-harness/resources/foundation-phase-template.md +131 -0
- package/.codex/skills/genesis-harness/resources/phase-00-foundation-template.md +76 -0
- package/.codex/skills/genesis-harness/resources/post-implementation-guide.md +347 -0
- package/.codex/skills/genesis-harness/scripts/check-architecture-boundaries.sh +23 -23
- package/.codex/skills/genesis-harness/scripts/check-docs-sync.sh +24 -24
- package/.codex/skills/genesis-harness/scripts/check-no-debug-logs.sh +21 -21
- package/.codex/skills/genesis-harness/scripts/check-required-planning-files.sh +46 -46
- package/.codex/skills/genesis-harness/scripts/check-spec-changelog.sh +24 -24
- package/.codex/skills/genesis-harness/scripts/check-task-tracking.sh +25 -25
- package/.codex/skills/genesis-harness/scripts/compact-context.sh +54 -0
- package/.codex/skills/genesis-harness/scripts/create-adr.sh +74 -74
- package/.codex/skills/genesis-harness/scripts/create-bug.sh +160 -160
- package/.codex/skills/genesis-harness/scripts/create-feature.sh +217 -217
- package/.codex/skills/genesis-harness/scripts/detect-stack.sh +26 -26
- package/.codex/skills/genesis-harness/scripts/init-planning.sh +750 -719
- package/.codex/skills/genesis-harness/scripts/list-changed-files.sh +12 -12
- package/.codex/skills/genesis-harness/scripts/offload-log.sh +72 -0
- package/.codex/skills/genesis-harness/scripts/run-verification.sh +47 -47
- package/.codex/skills/genesis-harness/scripts/run-verify-loop.sh +75 -0
- package/.codex/skills/genesis-harness/scripts/update-state.sh +33 -33
- package/.codex/skills/genesis-harness-engineering/SKILL.md +159 -0
- package/.codex/skills/genesis-harness-engineering/checklists/checklist.md +48 -0
- package/.codex/skills/genesis-harness-engineering/examples/example.md +57 -0
- package/.codex/skills/genesis-harness-engineering/playbooks/harness-evolution.md +99 -0
- package/.codex/skills/genesis-harness-engineering/templates/harness-change-template.md +37 -0
- package/.codex/skills/genesis-observability-automation/SKILL.md +382 -0
- package/.codex/skills/genesis-observability-automation/agents/openai.yaml +7 -0
- package/.codex/skills/genesis-observability-automation/examples/example.md +86 -0
- package/.codex/skills/genesis-performance-profiling/SKILL.md +510 -0
- package/.codex/skills/genesis-performance-profiling/agents/openai.yaml +6 -0
- package/.codex/skills/genesis-performance-profiling/checklists/optimization-verification.md +199 -0
- package/.codex/skills/genesis-performance-profiling/checklists/performance-baseline.md +183 -0
- package/.codex/skills/genesis-performance-profiling/examples/example.md +234 -0
- package/.codex/skills/genesis-performance-profiling/observability/performance-tracking.md +202 -0
- package/.codex/skills/genesis-performance-profiling/playbooks/load-testing-orchestration.md +593 -0
- package/.codex/skills/genesis-performance-profiling/playbooks/profiling-playbook.md +601 -0
- package/.codex/skills/genesis-performance-profiling/templates/load-test-config-template.md +428 -0
- package/.codex/skills/genesis-performance-profiling/templates/performance-report-template.md +238 -0
- package/.codex/skills/genesis-release-orchestration/SKILL.md +653 -0
- package/.codex/skills/genesis-release-orchestration/agents/openai.yaml +7 -0
- package/.codex/skills/genesis-release-orchestration/checklists/post-deployment-verification.md +274 -0
- package/.codex/skills/genesis-release-orchestration/checklists/pre-release-validation.md +220 -0
- package/.codex/skills/genesis-release-orchestration/examples/example.md +78 -0
- package/.codex/skills/genesis-release-orchestration/observability/release-tracking.md +253 -0
- package/.codex/skills/genesis-release-orchestration/playbooks/canary-deployment-orchestration.md +472 -0
- package/.codex/skills/genesis-release-orchestration/playbooks/semantic-versioning-automation.md +494 -0
- package/.codex/skills/genesis-release-orchestration/templates/deployment-strategy-template.md +303 -0
- package/.codex/skills/genesis-release-orchestration/templates/release-runbook-template.md +420 -0
- package/.codex/skills/genesis-research-first/SKILL.md +237 -0
- package/.codex/skills/genesis-research-first/agents/openai.yaml +7 -0
- package/.codex/skills/genesis-research-first/examples/example.md +85 -0
- package/.codex/skills/genesis-spec-propagation/SKILL.md +534 -0
- package/.codex/skills/genesis-spec-propagation/agents/openai.yaml +7 -0
- package/.codex/skills/genesis-spec-propagation/checklists/phase-update-verification.md +384 -0
- package/.codex/skills/genesis-spec-propagation/checklists/spec-change-detection.md +257 -0
- package/.codex/skills/genesis-spec-propagation/examples/example.md +63 -0
- package/.codex/skills/genesis-spec-propagation/observability/propagation-tracking.md +373 -0
- package/.codex/skills/genesis-spec-propagation/playbooks/breaking-change-propagation.md +692 -0
- package/.codex/skills/genesis-spec-propagation/playbooks/feature-change-propagation.md +434 -0
- package/.codex/skills/genesis-spec-propagation/templates/migration-guide-template.md +407 -0
- package/.codex/skills/spec-impact-engine/SKILL.md +504 -0
- package/.codex/skills/spec-impact-engine/agents/openai.yaml +7 -0
- package/.codex/skills/spec-impact-engine/detect-spec-changes.sh +262 -0
- package/.codex/skills/spec-impact-engine/examples/example.md +98 -0
- package/.codex/skills/spec-impact-engine/templates/impact-report.md +248 -0
- package/.codex/skills/spec-impact-engine/templates/migration-guide.md +223 -0
- package/.codex-plugin/plugin.json +1 -1
- package/README.EN.md +719 -0
- package/README.VI.md +712 -0
- package/README.md +261 -107
- package/VERSION +1 -1
- package/bin/genesis-harness.js +20 -11
- package/package.json +1 -1
- package/scripts/README.md +342 -0
- package/scripts/compact-context.sh +54 -0
- package/scripts/detect-changes.sh +152 -0
- package/scripts/install.sh +50 -41
- package/scripts/offload-log.sh +72 -0
- package/scripts/run-evals.sh +70 -43
- package/scripts/run-verify-loop.sh +75 -0
- package/scripts/uninstall.sh +52 -43
- package/scripts/verify.sh +165 -73
- package/.codex/skills/harness-engineering-skill/SKILL.md +0 -45
- package/.codex/skills/harness-engineering-skill/checklists/checklist.md +0 -8
- package/.codex/skills/harness-engineering-skill/examples/example.md +0 -4
- package/.codex/skills/harness-engineering-skill/templates/harness-change-template.md +0 -8
- /package/.codex/skills/{ai-provider-skill → genesis-ai-provider}/SKILL.md +0 -0
- /package/.codex/skills/{ai-provider-skill → genesis-ai-provider}/agents/openai.yaml +0 -0
- /package/.codex/skills/{ai-provider-skill → genesis-ai-provider}/checklists/checklist.md +0 -0
- /package/.codex/skills/{ai-provider-skill → genesis-ai-provider}/examples/example.md +0 -0
- /package/.codex/skills/{ai-provider-skill → genesis-ai-provider}/templates/provider-contract-template.md +0 -0
- /package/.codex/skills/{api-contract-skill → genesis-api-contract}/SKILL.md +0 -0
- /package/.codex/skills/{api-contract-skill → genesis-api-contract}/agents/openai.yaml +0 -0
- /package/.codex/skills/{api-contract-skill → genesis-api-contract}/checklists/checklist.md +0 -0
- /package/.codex/skills/{api-contract-skill → genesis-api-contract}/examples/example.md +0 -0
- /package/.codex/skills/{api-contract-skill → genesis-api-contract}/templates/api-contract-template.md +0 -0
- /package/.codex/skills/{architecture-skill → genesis-architecture}/SKILL.md +0 -0
- /package/.codex/skills/{architecture-skill → genesis-architecture}/agents/openai.yaml +0 -0
- /package/.codex/skills/{architecture-skill → genesis-architecture}/checklists/checklist.md +0 -0
- /package/.codex/skills/{architecture-skill → genesis-architecture}/examples/example.md +0 -0
- /package/.codex/skills/{architecture-skill → genesis-architecture}/templates/architecture-decision-template.md +0 -0
- /package/.codex/skills/{codebase-map-skill → genesis-codebase-map}/SKILL.md +0 -0
- /package/.codex/skills/{codebase-map-skill → genesis-codebase-map}/agents/openai.yaml +0 -0
- /package/.codex/skills/{codebase-map-skill → genesis-codebase-map}/checklists/checklist.md +0 -0
- /package/.codex/skills/{codebase-map-skill → genesis-codebase-map}/examples/example.md +0 -0
- /package/.codex/skills/{codebase-map-skill → genesis-codebase-map}/templates/map-update-template.md +0 -0
- /package/.codex/skills/{design-spec-skill → genesis-design-spec}/SKILL.md +0 -0
- /package/.codex/skills/{design-spec-skill → genesis-design-spec}/agents/openai.yaml +0 -0
- /package/.codex/skills/{design-spec-skill → genesis-design-spec}/checklists/checklist.md +0 -0
- /package/.codex/skills/{design-spec-skill → genesis-design-spec}/examples/example.md +0 -0
- /package/.codex/skills/{design-spec-skill → genesis-design-spec}/templates/design-spec-template.md +0 -0
- /package/.codex/skills/{docs-skill → genesis-docs}/SKILL.md +0 -0
- /package/.codex/skills/{docs-skill → genesis-docs}/agents/openai.yaml +0 -0
- /package/.codex/skills/{docs-skill → genesis-docs}/checklists/checklist.md +0 -0
- /package/.codex/skills/{docs-skill → genesis-docs}/examples/example.md +0 -0
- /package/.codex/skills/{docs-skill → genesis-docs}/templates/docs-update-template.md +0 -0
- /package/.codex/skills/{harness-engineering-skill → genesis-harness-engineering}/agents/openai.yaml +0 -0
- /package/.codex/skills/{pipeline-orchestration-skill → genesis-pipeline-orchestration}/SKILL.md +0 -0
- /package/.codex/skills/{pipeline-orchestration-skill → genesis-pipeline-orchestration}/agents/openai.yaml +0 -0
- /package/.codex/skills/{pipeline-orchestration-skill → genesis-pipeline-orchestration}/checklists/checklist.md +0 -0
- /package/.codex/skills/{pipeline-orchestration-skill → genesis-pipeline-orchestration}/examples/example.md +0 -0
- /package/.codex/skills/{pipeline-orchestration-skill → genesis-pipeline-orchestration}/templates/orchestration-template.md +0 -0
- /package/.codex/skills/{planning-skill → genesis-planning}/SKILL.md +0 -0
- /package/.codex/skills/{planning-skill → genesis-planning}/agents/openai.yaml +0 -0
- /package/.codex/skills/{planning-skill → genesis-planning}/checklists/checklist.md +0 -0
- /package/.codex/skills/{planning-skill → genesis-planning}/examples/example.md +0 -0
- /package/.codex/skills/{planning-skill → genesis-planning}/templates/plan-template.md +0 -0
- /package/.codex/skills/{release-skill → genesis-release}/SKILL.md +0 -0
- /package/.codex/skills/{release-skill → genesis-release}/agents/openai.yaml +0 -0
- /package/.codex/skills/{release-skill → genesis-release}/checklists/checklist.md +0 -0
- /package/.codex/skills/{release-skill → genesis-release}/examples/example.md +0 -0
- /package/.codex/skills/{release-skill → genesis-release}/templates/release-checklist-template.md +0 -0
- /package/.codex/skills/{research-skill → genesis-research}/SKILL.md +0 -0
- /package/.codex/skills/{research-skill → genesis-research}/agents/openai.yaml +0 -0
- /package/.codex/skills/{research-skill → genesis-research}/checklists/checklist.md +0 -0
- /package/.codex/skills/{research-skill → genesis-research}/examples/example.md +0 -0
- /package/.codex/skills/{research-skill → genesis-research}/templates/research-note-template.md +0 -0
|
@@ -0,0 +1,504 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: spec-impact-engine
|
|
3
|
+
description: Automatically detect specification changes, calculate impact severity on downstream project phases, generate migration guides, and orchestrate auto-updates to prevent downstream spec drift and cascading rework.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Spec Impact Engine Skill
|
|
7
|
+
|
|
8
|
+
**Purpose**: Automatically detect spec changes and calculate impact on downstream phases.
|
|
9
|
+
|
|
10
|
+
**Status**: NEW - Automation layer for cascade prevention
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
|
|
14
|
+
Use this skill when:
|
|
15
|
+
- ✅ A spec change happens (API, database, requirements)
|
|
16
|
+
- ✅ You need to know which downstream phases are affected
|
|
17
|
+
- ✅ You need automatic downstream phase updates
|
|
18
|
+
- ✅ You're tracking breaking changes across phases
|
|
19
|
+
- ✅ You need migration guides for dependent phases
|
|
20
|
+
- ✅ You want to prevent cascading rework
|
|
21
|
+
|
|
22
|
+
## Commands
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
# Detect impact of spec changes
|
|
26
|
+
invoke spec-impact-engine
|
|
27
|
+
|
|
28
|
+
# Parameters:
|
|
29
|
+
- changed_files: ["path/to/changed/spec.md"]
|
|
30
|
+
- impact_scope: "all" | "current_phase_only"
|
|
31
|
+
- auto_update: true | false
|
|
32
|
+
- notify: true | false
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## How It Works
|
|
38
|
+
|
|
39
|
+
### Phase 1: Change Detection
|
|
40
|
+
|
|
41
|
+
**Detects changes in:**
|
|
42
|
+
- `.planning/REQUIREMENTS.md` - Feature/requirement changes
|
|
43
|
+
- `.planning/API_DOCS.md` - Endpoint signature changes
|
|
44
|
+
- `.planning/ARCHITECTURE.md` - System design changes
|
|
45
|
+
- `.planning/DESIGN.md` - UI/UX changes
|
|
46
|
+
- `.planning/STACK.md` - Tech stack changes
|
|
47
|
+
- `.planning/SPEC_CHANGELOG.md` - Explicit spec entries
|
|
48
|
+
- `.planning/features/*/SPEC.md` - Feature spec changes
|
|
49
|
+
- `.planning/bugs/*/PLAN.md` - Bug fix plan changes
|
|
50
|
+
|
|
51
|
+
**For each change, extracts:**
|
|
52
|
+
```javascript
|
|
53
|
+
{
|
|
54
|
+
type: "breaking" | "feature" | "internal",
|
|
55
|
+
document: "API_DOCS.md",
|
|
56
|
+
section: "/api/users/:id",
|
|
57
|
+
oldValue: "returns { name, email, role }",
|
|
58
|
+
newValue: "returns { id, name, email, roles[] }",
|
|
59
|
+
severity: "high" | "medium" | "low",
|
|
60
|
+
affectedField: "response.roles",
|
|
61
|
+
breaking: true,
|
|
62
|
+
date: "2026-05-30",
|
|
63
|
+
reason: "Support multiple roles per user"
|
|
64
|
+
}
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
### Phase 2: Dependency Analysis
|
|
68
|
+
|
|
69
|
+
**Maps which phases depend on what:**
|
|
70
|
+
|
|
71
|
+
```javascript
|
|
72
|
+
DependencyMap = {
|
|
73
|
+
phase1: {
|
|
74
|
+
provides: ["auth_system", "user_api", "jwt_tokens"],
|
|
75
|
+
provides_to: ["phase2", "phase3", "phase4", "phase5"]
|
|
76
|
+
},
|
|
77
|
+
phase2: {
|
|
78
|
+
requires: ["user_api_from_phase1"],
|
|
79
|
+
depends_on: ["phase1"],
|
|
80
|
+
provides: ["product_catalog", "search_api"],
|
|
81
|
+
provides_to: ["phase3", "phase4"]
|
|
82
|
+
},
|
|
83
|
+
phase3: {
|
|
84
|
+
requires: ["user_api_from_phase1", "product_catalog_from_phase2"],
|
|
85
|
+
depends_on: ["phase1", "phase2"],
|
|
86
|
+
provides: ["shopping_cart", "order_api"],
|
|
87
|
+
provides_to: ["phase4", "phase5"]
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
**Located in:** `.codebase/PHASE_DEPENDENCY_MAP.md` (created during `/init`)
|
|
93
|
+
|
|
94
|
+
### Phase 3: Impact Calculation
|
|
95
|
+
|
|
96
|
+
**For each change, identifies:**
|
|
97
|
+
|
|
98
|
+
```
|
|
99
|
+
Change: Phase 1 API endpoint signature changed
|
|
100
|
+
↓
|
|
101
|
+
Query: Which phases import Phase 1 API?
|
|
102
|
+
↓
|
|
103
|
+
Result: Phase 2, Phase 3, Phase 4 all depend on Phase 1 API
|
|
104
|
+
↓
|
|
105
|
+
Impact chain:
|
|
106
|
+
- Phase 2: MEDIUM impact (must update TEST_CONTRACT.md)
|
|
107
|
+
- Phase 3: HIGH impact (must update SPEC.md + TEST_CONTRACT.md)
|
|
108
|
+
- Phase 4: MEDIUM impact (may need migration code)
|
|
109
|
+
↓
|
|
110
|
+
Recommendation: Update in order: Phase 2 → Phase 3 → Phase 4
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### Phase 4: Auto-Update Execution
|
|
114
|
+
|
|
115
|
+
**AUTO-UPDATE checklist for each affected phase:**
|
|
116
|
+
|
|
117
|
+
```markdown
|
|
118
|
+
## Affected Phases: Phase 2, Phase 3, Phase 4
|
|
119
|
+
|
|
120
|
+
### Phase 2 (.planning/features/002-product-catalog/)
|
|
121
|
+
- [ ] Update SPEC.md → Replace old API call signature
|
|
122
|
+
- [ ] Update TEST_CONTRACT.md → Update test expectations
|
|
123
|
+
- [ ] Update PLAN.md → Note breaking change requires update
|
|
124
|
+
- [ ] Create migration note: "Phase 1 API changed, updated tests"
|
|
125
|
+
- [ ] Validate: Run phase 2 tests locally
|
|
126
|
+
- [ ] Status: READY FOR RESUME
|
|
127
|
+
|
|
128
|
+
### Phase 3 (.planning/features/003-shopping-cart/)
|
|
129
|
+
- [ ] Update SPEC.md → Replace 2 places using Phase 1 API
|
|
130
|
+
- [ ] Update IMPACT.md → Document dependency on Phase 1
|
|
131
|
+
- [ ] Update TEST_CONTRACT.md → 5 tests need updating
|
|
132
|
+
- [ ] Update PLAN.md → New migration steps added
|
|
133
|
+
- [ ] Create migration guide for Phase 3 → Phase 4
|
|
134
|
+
- [ ] Validate: Run phase 3 tests locally
|
|
135
|
+
- [ ] Status: READY FOR RESUME
|
|
136
|
+
|
|
137
|
+
### Phase 4 (.planning/phases/04-payments/)
|
|
138
|
+
- [ ] Update PLAN.md → Note Phase 1 change may affect token validation
|
|
139
|
+
- [ ] Review security implications
|
|
140
|
+
- [ ] Check if migration code needed
|
|
141
|
+
- [ ] Status: REVIEW REQUIRED
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
### Phase 5: Verification & Notification
|
|
145
|
+
|
|
146
|
+
**Automatically:**
|
|
147
|
+
- ✅ Runs affected phase tests
|
|
148
|
+
- ✅ Checks for broken imports
|
|
149
|
+
- ✅ Validates schema compatibility
|
|
150
|
+
- ✅ Generates migration guides
|
|
151
|
+
- ✅ Creates notification with impact summary
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
## Impact Report Format
|
|
156
|
+
|
|
157
|
+
After detection, generates `.codebase/IMPACT_REPORT_<timestamp>.md`:
|
|
158
|
+
|
|
159
|
+
```markdown
|
|
160
|
+
# Spec Change Impact Report
|
|
161
|
+
|
|
162
|
+
**Date**: 2026-05-30
|
|
163
|
+
**Change**: API endpoint signature updated
|
|
164
|
+
**Severity**: HIGH (breaking change)
|
|
165
|
+
**Detection**: Phase 1 API_DOCS.md changed
|
|
166
|
+
|
|
167
|
+
## Summary
|
|
168
|
+
|
|
169
|
+
Phase 1 endpoint `/api/users/:id` response format changed:
|
|
170
|
+
- OLD: `{ name, email, role }`
|
|
171
|
+
- NEW: `{ id, name, email, roles[] }`
|
|
172
|
+
|
|
173
|
+
This is a **BREAKING CHANGE** affecting 3 downstream phases.
|
|
174
|
+
|
|
175
|
+
## Affected Phases
|
|
176
|
+
|
|
177
|
+
| Phase | Dependency | Impact | Action | Status |
|
|
178
|
+
|-------|-----------|--------|--------|--------|
|
|
179
|
+
| Phase 2 | Imports user_api | MEDIUM | Update 1 spec, 3 tests | ⚠️ NEEDS UPDATE |
|
|
180
|
+
| Phase 3 | Imports user_api | HIGH | Update 2 specs, 5 tests | ⚠️ NEEDS UPDATE |
|
|
181
|
+
| Phase 4 | Imports user_api | LOW | Review only | ⚠️ REVIEW |
|
|
182
|
+
| Phase 5 | Indirect via Phase 4 | LOW | N/A | ✅ OK |
|
|
183
|
+
|
|
184
|
+
## Migration Strategy
|
|
185
|
+
|
|
186
|
+
**Recommended execution order:**
|
|
187
|
+
|
|
188
|
+
1. ✅ Phase 1: Already updated (2026-05-30 14:00)
|
|
189
|
+
2. → Phase 2: Update required (est. 30 min)
|
|
190
|
+
3. → Phase 3: Update required (est. 1 hour)
|
|
191
|
+
4. → Phase 4: Review required (est. 15 min)
|
|
192
|
+
5. → Phase 5: No action needed
|
|
193
|
+
|
|
194
|
+
**Total update time**: ~2 hours
|
|
195
|
+
|
|
196
|
+
## Rollback Plan
|
|
197
|
+
|
|
198
|
+
If Phase 2 update fails:
|
|
199
|
+
```bash
|
|
200
|
+
git checkout HEAD -- .planning/features/002-product-catalog/
|
|
201
|
+
# Then revert Phase 1 change if possible
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
## Auto-Generated Updates
|
|
205
|
+
|
|
206
|
+
- [ ] Phase 2 SPEC.md updated
|
|
207
|
+
- [ ] Phase 2 TEST_CONTRACT.md updated
|
|
208
|
+
- [ ] Phase 3 SPEC.md updated
|
|
209
|
+
- [ ] Phase 3 TEST_CONTRACT.md updated
|
|
210
|
+
- [ ] Phase 4 PLAN.md reviewed
|
|
211
|
+
- [ ] All tests passing
|
|
212
|
+
- [ ] Migration guide created
|
|
213
|
+
- [ ] SPEC_CHANGELOG.md entry created
|
|
214
|
+
|
|
215
|
+
## Validation
|
|
216
|
+
|
|
217
|
+
All affected phase tests must pass before proceeding:
|
|
218
|
+
|
|
219
|
+
```bash
|
|
220
|
+
cd .planning/features/002-product-catalog && npm test
|
|
221
|
+
cd .planning/features/003-shopping-cart && npm test
|
|
222
|
+
# Both passing ✓
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
## Timeline Impact
|
|
226
|
+
|
|
227
|
+
- Phases delayed: Phase 2 (1 hour), Phase 3 (1 hour)
|
|
228
|
+
- ROADMAP.md timeline may need adjustment
|
|
229
|
+
- Critical path recalculation needed
|
|
230
|
+
|
|
231
|
+
## Sign-off
|
|
232
|
+
|
|
233
|
+
- [ ] Developer reviews impact report
|
|
234
|
+
- [ ] Auto-updates validated
|
|
235
|
+
- [ ] Tests passing
|
|
236
|
+
- [ ] Ready to proceed
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
---
|
|
240
|
+
|
|
241
|
+
## Integration with Genesis Harness
|
|
242
|
+
|
|
243
|
+
### New Workflows
|
|
244
|
+
|
|
245
|
+
#### `/spec-change` Command
|
|
246
|
+
|
|
247
|
+
```bash
|
|
248
|
+
/spec-change <changed_file>
|
|
249
|
+
|
|
250
|
+
# Example:
|
|
251
|
+
/spec-change .planning/API_DOCS.md
|
|
252
|
+
|
|
253
|
+
# Automatically:
|
|
254
|
+
1. Detect what changed
|
|
255
|
+
2. Calculate impact
|
|
256
|
+
3. Identify affected phases
|
|
257
|
+
4. Generate impact report
|
|
258
|
+
5. Offer to auto-update downstream phases
|
|
259
|
+
6. Run validation tests
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
#### `/propagate-spec` Command
|
|
263
|
+
|
|
264
|
+
```bash
|
|
265
|
+
/propagate-spec
|
|
266
|
+
|
|
267
|
+
# Automatically:
|
|
268
|
+
1. Check SPEC_CHANGELOG.md for unpropagated changes
|
|
269
|
+
2. Find all affected phases
|
|
270
|
+
3. Update all downstream phase specs
|
|
271
|
+
4. Run all affected phase tests
|
|
272
|
+
5. Generate migration guides
|
|
273
|
+
6. Update ROADMAP.md timelines
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
#### `/validate-specs` Command
|
|
277
|
+
|
|
278
|
+
```bash
|
|
279
|
+
/validate-specs
|
|
280
|
+
|
|
281
|
+
# Automatically:
|
|
282
|
+
1. Check all phases for spec misalignments
|
|
283
|
+
2. Find phases depending on changed specs
|
|
284
|
+
3. Report any spec drifts
|
|
285
|
+
4. Suggest updates needed
|
|
286
|
+
5. Create blockers if critical misalignment found
|
|
287
|
+
```
|
|
288
|
+
|
|
289
|
+
### Integration Points
|
|
290
|
+
|
|
291
|
+
**On `/new-feature` completion:**
|
|
292
|
+
```
|
|
293
|
+
1. Implementation passes tests
|
|
294
|
+
2. Docs sync (existing workflow)
|
|
295
|
+
3. NEW: Run spec-impact-engine
|
|
296
|
+
4. NEW: Detect downstream impact
|
|
297
|
+
5. NEW: Auto-update affected phases
|
|
298
|
+
6. NEW: Run validation on all phases
|
|
299
|
+
7. Completion
|
|
300
|
+
```
|
|
301
|
+
|
|
302
|
+
**On `/api-sync` completion:**
|
|
303
|
+
```
|
|
304
|
+
1. API contracts updated
|
|
305
|
+
2. Breaking changes identified
|
|
306
|
+
3. NEW: Run spec-impact-engine
|
|
307
|
+
4. NEW: Propagate to downstream phases
|
|
308
|
+
5. NEW: Generate migration guides
|
|
309
|
+
6. NEW: Update ROADMAP.md
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
---
|
|
313
|
+
|
|
314
|
+
## Files Created By Skill
|
|
315
|
+
|
|
316
|
+
### Core Detection Engine
|
|
317
|
+
|
|
318
|
+
**`.codex/skills/spec-impact-engine/engine.js`** (200+ lines)
|
|
319
|
+
- Detects file changes
|
|
320
|
+
- Compares old vs new content
|
|
321
|
+
- Identifies breaking changes
|
|
322
|
+
- Calculates severity
|
|
323
|
+
|
|
324
|
+
**`.codex/skills/spec-impact-engine/dependency-analyzer.js`** (150+ lines)
|
|
325
|
+
- Maps phase dependencies
|
|
326
|
+
- Calculates impact chain
|
|
327
|
+
- Identifies affected phases
|
|
328
|
+
- Suggests update order
|
|
329
|
+
|
|
330
|
+
**`.codex/skills/spec-impact-engine/auto-updater.js`** (180+ lines)
|
|
331
|
+
- Auto-updates dependent phase specs
|
|
332
|
+
- Runs validation tests
|
|
333
|
+
- Generates migration guides
|
|
334
|
+
- Creates notifications
|
|
335
|
+
|
|
336
|
+
### Templates
|
|
337
|
+
|
|
338
|
+
**`.codex/skills/spec-impact-engine/templates/impact-report.md`**
|
|
339
|
+
- Impact report template
|
|
340
|
+
- Affected phases table
|
|
341
|
+
- Migration strategy section
|
|
342
|
+
- Sign-off checklist
|
|
343
|
+
|
|
344
|
+
**`.codex/skills/spec-impact-engine/templates/migration-guide.md`**
|
|
345
|
+
- Before/after examples
|
|
346
|
+
- Step-by-step migration
|
|
347
|
+
- Rollback procedures
|
|
348
|
+
- Testing checklist
|
|
349
|
+
|
|
350
|
+
### Configuration
|
|
351
|
+
|
|
352
|
+
**`.codebase/PHASE_DEPENDENCY_MAP.md`**
|
|
353
|
+
- Created during `/init`
|
|
354
|
+
- Maps which phases depend on which
|
|
355
|
+
- Updated when phases change
|
|
356
|
+
- Used by impact engine for calculations
|
|
357
|
+
|
|
358
|
+
---
|
|
359
|
+
|
|
360
|
+
## Example: API Breaking Change
|
|
361
|
+
|
|
362
|
+
### Scenario
|
|
363
|
+
|
|
364
|
+
Phase 1 API endpoint changes:
|
|
365
|
+
|
|
366
|
+
```
|
|
367
|
+
Before: GET /api/users/:id
|
|
368
|
+
Response: { name, email, role }
|
|
369
|
+
|
|
370
|
+
After: GET /api/users/:id
|
|
371
|
+
Response: { id, name, email, roles[] }
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
### What Happens
|
|
375
|
+
|
|
376
|
+
**Step 1: Detect**
|
|
377
|
+
```
|
|
378
|
+
User runs: /spec-change .planning/API_DOCS.md
|
|
379
|
+
Engine detects: API_DOCS.md has breaking change
|
|
380
|
+
```
|
|
381
|
+
|
|
382
|
+
**Step 2: Analyze**
|
|
383
|
+
```
|
|
384
|
+
Engine finds: Phase 2 and Phase 3 depend on /api/users/:id
|
|
385
|
+
Impact: Both phases need updates
|
|
386
|
+
```
|
|
387
|
+
|
|
388
|
+
**Step 3: Auto-Update**
|
|
389
|
+
```
|
|
390
|
+
Phase 2 SPEC.md:
|
|
391
|
+
OLD: "Call /api/users/:id to get { name, email, role }"
|
|
392
|
+
NEW: "Call /api/users/:id to get { id, name, email, roles[] }"
|
|
393
|
+
|
|
394
|
+
Phase 2 TEST_CONTRACT.md:
|
|
395
|
+
OLD: expect(response.role).toExist()
|
|
396
|
+
NEW: expect(response.roles).toBeArray()
|
|
397
|
+
|
|
398
|
+
Phase 3 similar updates...
|
|
399
|
+
```
|
|
400
|
+
|
|
401
|
+
**Step 4: Validate**
|
|
402
|
+
```
|
|
403
|
+
Run: npm test in Phase 2
|
|
404
|
+
Result: ✓ All tests passing
|
|
405
|
+
Run: npm test in Phase 3
|
|
406
|
+
Result: ✓ All tests passing
|
|
407
|
+
```
|
|
408
|
+
|
|
409
|
+
**Step 5: Report**
|
|
410
|
+
```
|
|
411
|
+
Create: IMPACT_REPORT_2026-05-30_14-30-00.md
|
|
412
|
+
Shows: 2 phases updated, 2 hours timeline impact
|
|
413
|
+
```
|
|
414
|
+
|
|
415
|
+
---
|
|
416
|
+
|
|
417
|
+
## Configuration
|
|
418
|
+
|
|
419
|
+
### `.codebase/PHASE_DEPENDENCY_MAP.md`
|
|
420
|
+
|
|
421
|
+
```yaml
|
|
422
|
+
phases:
|
|
423
|
+
phase_1:
|
|
424
|
+
name: "Authentication & User API"
|
|
425
|
+
provides:
|
|
426
|
+
- auth_system
|
|
427
|
+
- user_api
|
|
428
|
+
- jwt_tokens
|
|
429
|
+
- user_model
|
|
430
|
+
provides_to:
|
|
431
|
+
- phase_2
|
|
432
|
+
- phase_3
|
|
433
|
+
- phase_4
|
|
434
|
+
- phase_5
|
|
435
|
+
|
|
436
|
+
phase_2:
|
|
437
|
+
name: "Product Catalog"
|
|
438
|
+
requires:
|
|
439
|
+
- user_api_from_phase_1
|
|
440
|
+
depends_on:
|
|
441
|
+
- phase_1
|
|
442
|
+
provides:
|
|
443
|
+
- product_catalog_api
|
|
444
|
+
- search_api
|
|
445
|
+
- product_model
|
|
446
|
+
provides_to:
|
|
447
|
+
- phase_3
|
|
448
|
+
- phase_4
|
|
449
|
+
|
|
450
|
+
phase_3:
|
|
451
|
+
name: "Shopping Cart & Orders"
|
|
452
|
+
requires:
|
|
453
|
+
- user_api_from_phase_1
|
|
454
|
+
- product_catalog_from_phase_2
|
|
455
|
+
depends_on:
|
|
456
|
+
- phase_1
|
|
457
|
+
- phase_2
|
|
458
|
+
provides:
|
|
459
|
+
- shopping_cart_api
|
|
460
|
+
- order_api
|
|
461
|
+
provides_to:
|
|
462
|
+
- phase_4
|
|
463
|
+
|
|
464
|
+
breaking_change_rules:
|
|
465
|
+
- if: "API endpoint signature changes"
|
|
466
|
+
then: "HIGH severity, affects all dependent phases"
|
|
467
|
+
|
|
468
|
+
- if: "Database schema changes"
|
|
469
|
+
then: "MEDIUM severity, affects phases using schema"
|
|
470
|
+
|
|
471
|
+
- if: "Authentication method changes"
|
|
472
|
+
then: "HIGH severity, affects all phases"
|
|
473
|
+
```
|
|
474
|
+
|
|
475
|
+
---
|
|
476
|
+
|
|
477
|
+
## Benefits
|
|
478
|
+
|
|
479
|
+
✅ **Prevents cascading rework** - Downstream phases auto-updated
|
|
480
|
+
✅ **Catches breaking changes** - Before they break dependent phases
|
|
481
|
+
✅ **Saves time** - 30-60 min manual work → automatic
|
|
482
|
+
✅ **Improves reliability** - No more discovering issues mid-phase
|
|
483
|
+
✅ **Enables safe refactoring** - Know exactly what breaks
|
|
484
|
+
✅ **Maintains timeline** - Can recalculate impact on schedule
|
|
485
|
+
|
|
486
|
+
---
|
|
487
|
+
|
|
488
|
+
## Next: Implementation Artifacts
|
|
489
|
+
|
|
490
|
+
This skill generates/updates:
|
|
491
|
+
1. `.codebase/IMPACT_REPORT_<timestamp>.md` - Detailed impact analysis
|
|
492
|
+
2. `.planning/SPEC_CHANGELOG.md` - Auto-entries for all changes
|
|
493
|
+
3. `.planning/features/*/SPEC.md` - Auto-updates for dependent phases
|
|
494
|
+
4. `.planning/ROADMAP.md` - Timeline recalculation if needed
|
|
495
|
+
5. `.planning/STATE.md` - Updated with spec change status
|
|
496
|
+
6. Migration guides for each affected phase
|
|
497
|
+
7. Test updates for all dependent phases
|
|
498
|
+
|
|
499
|
+
---
|
|
500
|
+
|
|
501
|
+
**Status**: Ready for integration
|
|
502
|
+
**Integration Point**: `/new-feature`, `/api-sync`, `/spec-change` commands
|
|
503
|
+
**Automation Level**: 90% - Detects, analyzes, and auto-updates
|
|
504
|
+
**Manual Required**: Final review and sign-off by developer
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
interface:
|
|
2
|
+
display_name: "Spec Impact Engine"
|
|
3
|
+
short_description: "Automatically detect spec changes and calculate cascade impact on downstream project phases"
|
|
4
|
+
default_prompt: "Use $spec-impact-engine to detect the impact of this spec change on all downstream phases and generate a migration plan."
|
|
5
|
+
|
|
6
|
+
policy:
|
|
7
|
+
allow_implicit_invocation: true
|