shapeup-sdlc 1.6.2

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.
Files changed (135) hide show
  1. package/.claude/settings.local.example.json +20 -0
  2. package/.claude-plugin/marketplace.json +16 -0
  3. package/.claude-plugin/plugin.json +18 -0
  4. package/.env.shapeup.example +14 -0
  5. package/AGENTS.md +133 -0
  6. package/LICENSE +21 -0
  7. package/README.md +362 -0
  8. package/SECURITY.md +72 -0
  9. package/bin/init.mjs +329 -0
  10. package/commands/build.md +14 -0
  11. package/commands/eval.md +15 -0
  12. package/commands/hammer.md +12 -0
  13. package/commands/orient.md +11 -0
  14. package/commands/qa.md +12 -0
  15. package/commands/retro.md +13 -0
  16. package/commands/scopes.md +14 -0
  17. package/commands/shape.md +12 -0
  18. package/commands/ship.md +53 -0
  19. package/commands/wire.md +11 -0
  20. package/hooks/anti-rationalization.mjs +244 -0
  21. package/hooks/compact-snapshot.mjs +47 -0
  22. package/hooks/gate-deadline.mjs +151 -0
  23. package/hooks/gate-intake.mjs +110 -0
  24. package/hooks/gate-l2.mjs +161 -0
  25. package/hooks/gate-zerowork.mjs +264 -0
  26. package/hooks/hooks.json +118 -0
  27. package/hooks/lib/decision.mjs +183 -0
  28. package/hooks/safety-spine.mjs +296 -0
  29. package/hooks/sandbox-guard.mjs +172 -0
  30. package/hooks/session-rehydrate.mjs +109 -0
  31. package/hooks/slop-cleaner.mjs +176 -0
  32. package/oracles/_shared.mjs +46 -0
  33. package/oracles/http-oracle.mjs +155 -0
  34. package/oracles/index.mjs +36 -0
  35. package/oracles/process-oracle.mjs +146 -0
  36. package/oracles/snapshot-oracle.mjs +119 -0
  37. package/oracles/test-oracle.mjs +138 -0
  38. package/package.json +49 -0
  39. package/skills/advisor-protocol/SKILL.md +171 -0
  40. package/skills/ba-pitch-analyzer/SKILL.md +175 -0
  41. package/skills/ba-pitch-analyzer/assets/templates/_index.tmpl.md +84 -0
  42. package/skills/ba-pitch-analyzer/assets/templates/api-feasibility.tmpl.md +65 -0
  43. package/skills/ba-pitch-analyzer/assets/templates/assess-report.tmpl.md +127 -0
  44. package/skills/ba-pitch-analyzer/assets/templates/contracts/be-service.contract.tmpl.md +62 -0
  45. package/skills/ba-pitch-analyzer/assets/templates/contracts/offline-storage.contract.tmpl.md +92 -0
  46. package/skills/ba-pitch-analyzer/assets/templates/contracts/third-party-api.contract.tmpl.md +66 -0
  47. package/skills/ba-pitch-analyzer/assets/templates/cross-context/context-map.tmpl.md +64 -0
  48. package/skills/ba-pitch-analyzer/assets/templates/cross-context/event-choreography.tmpl.md +77 -0
  49. package/skills/ba-pitch-analyzer/assets/templates/cross-context/migration-plan.tmpl.md +104 -0
  50. package/skills/ba-pitch-analyzer/assets/templates/cross-context/team-handoff.tmpl.md +79 -0
  51. package/skills/ba-pitch-analyzer/assets/templates/domain-model.tmpl.md +79 -0
  52. package/skills/ba-pitch-analyzer/assets/templates/feedback.tmpl.md +87 -0
  53. package/skills/ba-pitch-analyzer/assets/templates/integration.tmpl.md +64 -0
  54. package/skills/ba-pitch-analyzer/assets/templates/run-state.tmpl.md +77 -0
  55. package/skills/ba-pitch-analyzer/assets/templates/scope-summary.tmpl.md +105 -0
  56. package/skills/ba-pitch-analyzer/assets/templates/synthesis.tmpl.md +215 -0
  57. package/skills/ba-pitch-analyzer/assets/templates/task-board.tmpl.md +35 -0
  58. package/skills/ba-pitch-analyzer/assets/templates/task-spike.tmpl.md +86 -0
  59. package/skills/ba-pitch-analyzer/assets/templates/task.tmpl.md +84 -0
  60. package/skills/ba-pitch-analyzer/assets/templates/usecase.tmpl.md +105 -0
  61. package/skills/ba-pitch-analyzer/assets/templates/ux-behavior.tmpl.md +65 -0
  62. package/skills/ba-pitch-analyzer/references/contract-patterns.md +152 -0
  63. package/skills/ba-pitch-analyzer/references/ddd-patterns.md +173 -0
  64. package/skills/ba-pitch-analyzer/references/doc-schemas.md +275 -0
  65. package/skills/ba-pitch-analyzer/references/integration-analysis.md +152 -0
  66. package/skills/ba-pitch-analyzer/references/task-generation.md +623 -0
  67. package/skills/ba-pitch-analyzer/references/test-surface.md +102 -0
  68. package/skills/ba-pitch-analyzer/references/ux-behavior-patterns.md +269 -0
  69. package/skills/ba-pitch-analyzer/scripts/board-derive.mjs +241 -0
  70. package/skills/ba-pitch-analyzer/scripts/spec-lint.mjs +239 -0
  71. package/skills/coach/SKILL.md +202 -0
  72. package/skills/orient/SKILL.md +262 -0
  73. package/skills/qa-edge-hunter/SKILL.md +369 -0
  74. package/skills/scope-architect/SKILL.md +111 -0
  75. package/skills/scope-hammer/SKILL.md +186 -0
  76. package/skills/shapeup/SKILL.md +403 -0
  77. package/skills/shapeup/resources/breadboard-reflection.md +88 -0
  78. package/skills/shapeup/resources/breadboarding.md +334 -0
  79. package/skills/shapeup/resources/context-compaction.md +240 -0
  80. package/skills/shapeup/resources/framing-doc.md +92 -0
  81. package/skills/shapeup/resources/kickoff-doc.md +95 -0
  82. package/skills/shapeup/resources/shaping.md +194 -0
  83. package/skills/shapeup/resources/spike.md +86 -0
  84. package/skills/solution-architect/SKILL.md +129 -0
  85. package/skills/spec-evaluator/README.md +93 -0
  86. package/skills/spec-evaluator/SKILL.md +213 -0
  87. package/skills/spec-evaluator/references/anti-leniency.md +50 -0
  88. package/skills/spec-evaluator/references/dimension-contract.md +126 -0
  89. package/skills/spec-evaluator/references/dimensions/_registry.md +40 -0
  90. package/skills/spec-evaluator/references/dimensions/completeness.md +102 -0
  91. package/skills/spec-evaluator/references/dimensions/integration.md +129 -0
  92. package/skills/spec-evaluator/references/dimensions/performance.md +48 -0
  93. package/skills/spec-evaluator/references/dimensions/security.md +60 -0
  94. package/skills/spec-evaluator/references/dimensions/spec-conformance.md +134 -0
  95. package/skills/spec-evaluator/references/dimensions/tdd-surface.md +110 -0
  96. package/skills/spec-evaluator/references/dimensions/test-surface-conformance.md +100 -0
  97. package/skills/spec-evaluator/references/probing.md +177 -0
  98. package/skills/spec-evaluator/references/report-schema.md +101 -0
  99. package/skills/spec-evaluator/references/verdict-ledger.md +92 -0
  100. package/skills/spec-evaluator/scripts/verdict-ledger.mjs +166 -0
  101. package/skills/task-executor/SKILL.md +194 -0
  102. package/skills/tech-lead/README.md +71 -0
  103. package/skills/tech-lead/SKILL.md +459 -0
  104. package/skills/tech-lead/references/delegation.md +254 -0
  105. package/skills/tech-lead/references/gates.md +379 -0
  106. package/skills/tech-lead/references/invocation.md +45 -0
  107. package/skills/tech-lead/references/ledger-schema.md +214 -0
  108. package/skills/tech-lead/references/round-protocol.md +184 -0
  109. package/skills/tech-lead/references/state-model.md +66 -0
  110. package/skills/tech-lead/references/tiny-lane.md +52 -0
  111. package/skills/tech-lead/schemas/domain.schema.json +2294 -0
  112. package/skills/tech-lead/schemas/gate-answers.schema.json +92 -0
  113. package/skills/tech-lead/schemas/work-order.schema.json +21 -0
  114. package/skills/tech-lead/schemas/work-result.schema.json +40 -0
  115. package/skills/tech-lead/scripts/aegis-digest.mjs +124 -0
  116. package/skills/tech-lead/scripts/budget-check.mjs +156 -0
  117. package/skills/tech-lead/scripts/compile-order.mjs +518 -0
  118. package/skills/tech-lead/scripts/fit-check.mjs +196 -0
  119. package/skills/tech-lead/scripts/gate-answers.mjs +338 -0
  120. package/skills/tech-lead/scripts/ingest-result.mjs +270 -0
  121. package/skills/tech-lead/scripts/init-run.mjs +326 -0
  122. package/skills/tech-lead/scripts/lib/argv.mjs +224 -0
  123. package/skills/tech-lead/scripts/lib/contract-md.mjs +481 -0
  124. package/skills/tech-lead/scripts/lib/is-main.mjs +82 -0
  125. package/skills/tech-lead/scripts/lib/paths.mjs +278 -0
  126. package/skills/tech-lead/scripts/lib/ratchet-tree.mjs +112 -0
  127. package/skills/tech-lead/scripts/run-snapshot.mjs +269 -0
  128. package/skills/tech-lead/scripts/ship-report.mjs +275 -0
  129. package/skills/tech-lead/scripts/stats.mjs +423 -0
  130. package/skills/tech-lead/scripts/t0-verify.mjs +470 -0
  131. package/skills/tech-lead/scripts/trace-lint.mjs +367 -0
  132. package/skills/tech-lead/scripts/validate-envelope.mjs +283 -0
  133. package/skills/translator/README.md +66 -0
  134. package/skills/translator/SKILL.md +258 -0
  135. package/skills/translator/references/preservation-rules.md +102 -0
@@ -0,0 +1,104 @@
1
+ ---
2
+ type: migration-plan
3
+ feature: FEATURE_SLUG
4
+ skill_version: "2.5"
5
+ affected_tables: []
6
+ change_type: additive | breaking | destructive
7
+ backward_compatible: true | false
8
+ tags: [cross-context, migration]
9
+ depends_on: ["[[_cross-context/context-map]]"]
10
+ status: draft
11
+ ---
12
+
13
+ # Migration Plan: FEATURE TITLE
14
+
15
+ > Generated only when feature modifies existing production schema.
16
+ > Each migration task maps to a TASK-M0N in tasks/_index.md.
17
+
18
+ ---
19
+
20
+ ## Change Summary
21
+
22
+ | Table | Change Type | Breaking | Rollback Window |
23
+ |-------|------------|---------|----------------|
24
+ | `table_name` | add column / rename / drop | ✅ yes / ❌ no | 48h |
25
+
26
+ **Backward compatible:** YES / NO
27
+ **Estimated rows affected:** ~N rows
28
+ **Estimated migration time:** < Ns (no lock) / ~Ns (with lock)
29
+
30
+ ---
31
+
32
+ ## Migration Tasks
33
+
34
+ ### TASK-M01 — [description, e.g. Add nullable columns]
35
+
36
+ ```sql
37
+ -- UP
38
+ ALTER TABLE table_name ADD COLUMN col_name TYPE DEFAULT NULL;
39
+
40
+ -- ROLLBACK
41
+ ALTER TABLE table_name DROP COLUMN col_name;
42
+ ```
43
+
44
+ Lock type: **none** (nullable add) / **table lock** (not null without default)
45
+ Safe to run: during deploy / after deploy / off-hours only
46
+
47
+ ---
48
+
49
+ ### TASK-M02 — [description, e.g. Backfill existing rows]
50
+
51
+ ```sql
52
+ -- UP (run in batches of 1000 to avoid lock escalation)
53
+ UPDATE table_name
54
+ SET col_name = [derived value]
55
+ WHERE col_name IS NULL
56
+ LIMIT 1000;
57
+
58
+ -- Verify
59
+ SELECT COUNT(*) FROM table_name WHERE col_name IS NULL;
60
+ -- Expected: 0
61
+
62
+ -- ROLLBACK: not needed (nullable — old code ignores new column)
63
+ ```
64
+
65
+ Estimated rows: ~N | Estimated time: ~Ns | Lock: none
66
+
67
+ ---
68
+
69
+ ### TASK-M03 — [description, e.g. Enforce NOT NULL constraint]
70
+
71
+ ```sql
72
+ -- UP — only run after M02 verified
73
+ ALTER TABLE table_name ALTER COLUMN col_name SET NOT NULL;
74
+
75
+ -- ROLLBACK
76
+ ALTER TABLE table_name ALTER COLUMN col_name DROP NOT NULL;
77
+ ```
78
+
79
+ **Prerequisite:** M02 complete AND verified (0 null rows)
80
+
81
+ ---
82
+
83
+ ## Deploy Sequence
84
+
85
+ ```
86
+ M01 ──► deploy app v[N] ──► verify (smoke test) ──► M02 ──► verify ──► M03
87
+ │ │
88
+ └─ rollback window: run ROLLBACK scripts in reverse order ◄────────────┘
89
+ M03-rollback → M02 (no-op) → M01-rollback
90
+ ```
91
+
92
+ **Rollback window:** 48h after M03
93
+ **Rollback owner:** [team]
94
+ **Runbook location:** [link or path]
95
+
96
+ ---
97
+
98
+ ## Risk Assessment
99
+
100
+ | Risk | Likelihood | Impact | Mitigation |
101
+ |------|-----------|--------|-----------|
102
+ | Lock escalation on M03 | low | high — table unavailable | Run during low-traffic window |
103
+ | Backfill timeout on M02 | medium | medium — partial migration | Batch size 1000, resumable |
104
+ | App v[N-1] reads new column | low | low — nullable, ignored | Backward compatible by design |
@@ -0,0 +1,79 @@
1
+ ---
2
+ type: team-handoff
3
+ feature: FEATURE_SLUG
4
+ skill_version: "2.5"
5
+ teams: []
6
+ tags: [cross-context, coordination]
7
+ depends_on:
8
+ - "[[_cross-context/context-map]]"
9
+ - "[[_cross-context/event-choreography]]"
10
+ status: draft
11
+ ---
12
+
13
+ # Team Handoff: FEATURE TITLE
14
+
15
+ > Explicit interface contracts between teams.
16
+ > Each row is a commitment: From Team delivers Artifact by Ready-When condition.
17
+
18
+ ---
19
+
20
+ ## Handoff Register
21
+
22
+ | From Team | To Team | Artifact | Ready When | Blocker Risk |
23
+ |-----------|---------|----------|-----------|-------------|
24
+ | [Team A] (API) | [Team B] (Mobile) | [[contracts/[repo].contract.md]] | TASK-00N done | 🔴 blocks Mobile TASK-00N |
25
+ | [Team B] (API) | [Team A] (API) | `EventName` schema | TASK-00N done | 🟡 blocks integration test |
26
+ | [Team B] (Mobile) | QA | E2E test cases | TASK-00N done | 🟡 blocks QA sprint entry |
27
+
28
+ ---
29
+
30
+ ## Blocking Dependencies
31
+
32
+ ```
33
+ [Team B] CANNOT start TASK-00N ([description])
34
+ until [Team A] completes TASK-00N ([description])
35
+ Mitigation: use contract stub from [[contracts/[repo].contract.md]]
36
+ Stub ready: TASK-00N (unblocked — no dependency)
37
+
38
+ [Team C] CANNOT start integration tests
39
+ until [Team A] EventName schema is stable
40
+ Mitigation: use ⚠️ SPECULATIVE contract — mark tests as xfail until confirmed
41
+ ```
42
+
43
+ ---
44
+
45
+ ## Parallel Work Windows
46
+
47
+ ```
48
+ Wave 1 — No cross-team dependencies (start immediately):
49
+ [Team A]: TASK-001, TASK-002, TASK-003
50
+ [Team B]: TASK-004, TASK-005 (using contract stub)
51
+
52
+ Wave 2 — After Team A TASK-003 done:
53
+ [Team B]: TASK-006 (replace stub with real contract)
54
+ [Team C]: TASK-007 (integration tests — real contract available)
55
+
56
+ Wave 3 — After Wave 2 complete:
57
+ QA: E2E test suite
58
+ ```
59
+
60
+ ---
61
+
62
+ ## Communication Protocol
63
+
64
+ | Trigger | Owner | Notify | Channel |
65
+ |---------|-------|--------|---------|
66
+ | Contract changes after stub distributed | [Team A] | [Team B], QA | [channel] |
67
+ | TASK-00N delayed > 1 day | [Team A] | [Team B] | [channel] |
68
+ | Schema breaking change detected | Any | All teams | [channel] |
69
+
70
+ ---
71
+
72
+ ## Definition of Done (Cross-Context)
73
+
74
+ Feature is complete when ALL of the following are true:
75
+ - [ ] All TASK-MNN migrations run and verified in staging
76
+ - [ ] All contracts have no remaining ⏳ TBD fields
77
+ - [ ] Event choreography happy path verified end-to-end
78
+ - [ ] All dead-letter scenarios have runbooks
79
+ - [ ] `synthesis.md` Health Dashboard — Coverage 🟢, Risk 🟢
@@ -0,0 +1,79 @@
1
+ ---
2
+ type: domain-model
3
+ feature: FEATURE_SLUG
4
+ bounded_context: CONTEXT
5
+ entities: []
6
+ value_objects: []
7
+ domain_events: []
8
+ repositories: []
9
+ tags: [ddd]
10
+ depends_on: ["[[_index]]"]
11
+ status: draft
12
+ ---
13
+
14
+ # Domain Model: FEATURE TITLE
15
+
16
+ ## Bounded Context
17
+ `CONTEXT` context — owns [describe what this context is responsible for].
18
+ [Note any context boundaries: what this context does NOT own]
19
+
20
+ ---
21
+
22
+ ## Aggregate: [Name]
23
+
24
+ **Aggregate Root:** `[EntityName]`
25
+
26
+ **Invariants:**
27
+ - [invariant 1 — must be enforced by the aggregate root]
28
+ - [invariant 2]
29
+
30
+ ```
31
+ [EntityName] (Aggregate Root)
32
+ ├── id: [EntityName]Id (VO)
33
+ ├── status: [EntityName]Status ([value1] | [value2] | [value3])
34
+ ├── [field]: [Type]
35
+ └── [childEntity]: [ChildEntity][] (Entity, owned by root)
36
+ ├── id: [ChildEntity]Id (VO)
37
+ └── [field]: [Type]
38
+ ```
39
+
40
+ **State Transitions:**
41
+ ```
42
+ [state1] ──[method()]──► [state2] ──[method()]──► [state3]
43
+ └───[method()]────► [state4]
44
+ ```
45
+
46
+ ---
47
+
48
+ ## Value Objects
49
+
50
+ | Value Object | Fields | Invariants |
51
+ |---|---|---|
52
+ | `[Name]Id` | value: string | UUID v4 format |
53
+ | `[Name]` | [fields] | [rule] |
54
+
55
+ ---
56
+
57
+ ## Domain Events
58
+
59
+ | Event | Emitted When | Payload Fields | Consumers |
60
+ |---|---|---|---|
61
+ | `[EntityName][PastTense]` | [trigger] | id, [fields] | [other contexts] |
62
+
63
+ ---
64
+
65
+ ## Repository Interfaces
66
+
67
+ ```typescript
68
+ interface [EntityName]Repository {
69
+ findById(id: [EntityName]Id): Promise<[EntityName] | null>
70
+ save(entity: [EntityName]): Promise<void>
71
+ // [named business queries]
72
+ }
73
+ ```
74
+
75
+ ---
76
+
77
+ ## Related
78
+ - [[ux-behavior]] — screen states map to aggregate status values
79
+ - [[usecases/_index]] — use cases that operate on this aggregate
@@ -0,0 +1,87 @@
1
+ ---
2
+ type: feedback
3
+ feature: FEATURE_SLUG
4
+ sprint_date: YYYY-MM-DD
5
+ po_spec_accuracy: ~ # Fill after sprint: 1-5
6
+ dev_execution_accuracy: ~ # Fill after sprint: 1-5
7
+ ---
8
+
9
+ # Post-Sprint Feedback: FEATURE TITLE
10
+
11
+ > Fill this document during sprint retro.
12
+ > Scores feed into `.claude/metrics.md` and drive SKILL improvements.
13
+
14
+ ---
15
+
16
+ ## Scores
17
+
18
+ | Dimension | Score (1–5) | Meaning |
19
+ |-----------|-------------|---------|
20
+ | PO Spec Accuracy | ~ | Did generated docs reflect what PO intended? |
21
+ | Dev Execution Accuracy | ~ | Did tasks lead to correct implementation? |
22
+
23
+ **Score guide:**
24
+ - 5 — Perfect, no corrections needed
25
+ - 4 — Minor gaps, handled without blocking
26
+ - 3 — Moderate gaps, caused 1–2 clarification rounds
27
+ - 2 — Significant misalignment, rework required
28
+ - 1 — Spec was wrong, had to re-generate from scratch
29
+
30
+ ---
31
+
32
+ ## PO Notes
33
+
34
+ *Fill after reviewing delivered implementation against original pitch intent.*
35
+
36
+ **What the spec got right:**
37
+ - ...
38
+
39
+ **What was missing or wrong:**
40
+ - ...
41
+
42
+ **Did the appetite hold?**
43
+ Estimated: N weeks/days | Actual: N weeks/days
44
+
45
+ ---
46
+
47
+ ## Dev Notes
48
+
49
+ *Fill during retro — be specific about which parts of the spec caused friction.*
50
+
51
+ **Specs that needed clarification mid-sprint:**
52
+
53
+ | Spec | What was unclear | What was needed |
54
+ |------|-----------------|-----------------|
55
+ | [[usecases/UC-Name]] | [description] | [what would have helped] |
56
+ | [[domain-model#Section]] | [description] | [what would have helped] |
57
+
58
+ **Specs that were well-written:**
59
+ - [[usecases/UC-Name]] — [why it worked well]
60
+
61
+ **Domain model accuracy:**
62
+ - [ ] Aggregate design matched reality
63
+ - [ ] Invariants were correct
64
+ - [ ] Repository interfaces were usable as-is
65
+
66
+ ---
67
+
68
+ ## Improvement Signals
69
+
70
+ *The most important section — drives SKILL v.next.*
71
+ *Flag which reference file or template needs updating.*
72
+
73
+ | Signal | Affects | Action |
74
+ |--------|---------|--------|
75
+ | [what was missing] | `references/[file].md` | [what to add/change] |
76
+ | [what was wrong] | `assets/templates/[file].tmpl.md` | [what to fix] |
77
+
78
+ ---
79
+
80
+ ## Update metrics.md
81
+
82
+ After filling this doc, update `.claude/metrics.md` with PO and Dev scores:
83
+
84
+ ```bash
85
+ # The row for this feature should already exist from SKILL generation
86
+ # Just fill in the PO* and Dev* columns
87
+ ```
@@ -0,0 +1,64 @@
1
+ ---
2
+ type: integration
3
+ feature: FEATURE_SLUG
4
+ affected_services: []
5
+ domain_events_consumed: []
6
+ domain_events_produced: []
7
+ tags: [integration]
8
+ depends_on: ["[[domain-model]]", "[[usecases/_index]]"]
9
+ status: draft
10
+ ---
11
+
12
+ # Integration Map: FEATURE TITLE
13
+
14
+ ## Impact Summary
15
+
16
+ | System | Severity | Direction | Summary |
17
+ |--------|----------|-----------|---------|
18
+ | [package/service] | 🔴/🟡/🟢 | →/←/↔ | [one line] |
19
+
20
+ ---
21
+
22
+ ## [Package / Service Name]
23
+
24
+ **Severity:** 🟢 Isolated
25
+ **Direction:** → produces
26
+
27
+ ### What Changes
28
+ [1-3 sentences]
29
+
30
+ ### Data Flow
31
+ ```
32
+ [Feature] ──[event / call]──► [Service]
33
+ payload: { field1, field2 }
34
+ ```
35
+
36
+ ### Risk
37
+ [What breaks silently if coordination is missed]
38
+
39
+ ### Mitigation
40
+ [How to prevent]
41
+
42
+ ### Related Use Cases
43
+ - [[usecases/UC-Name]] — the UC whose tasks implement this integration point
44
+ (find the tasks via their `use_case_refs` on the LOCAL board — never link them here)
45
+
46
+ ---
47
+
48
+ <!-- Repeat section for each affected system -->
49
+
50
+ ---
51
+
52
+ ## Event Coordination
53
+
54
+ | Event | Producer | Consumers | Deploy Order |
55
+ |-------|----------|-----------|-------------|
56
+ | `[EventName]` | this feature | [service A, service B] | consumers first |
57
+
58
+ ---
59
+
60
+ ## Environment Variables Required
61
+
62
+ | Variable | Service | Purpose |
63
+ |----------|---------|---------|
64
+ | `[VAR_NAME]` | [service] | [what it's for] |
@@ -0,0 +1,77 @@
1
+ ---
2
+ type: run-state
3
+ feature: FEATURE_SLUG
4
+ last_run: YYYY-MM-DD
5
+ skill_version: "2.8"
6
+ lens: lite | standard
7
+ pitch_hash: HASH
8
+ assess_done: false
9
+ assess_l0_score: 0
10
+ assess_confidence: 0
11
+ phases_completed: []
12
+ phases_skipped: []
13
+ files_generated: []
14
+ human_edited_files: []
15
+ discovered_rounds: 0
16
+ upgrade_available: standard | cross-context | none
17
+ upgrade_adds: []
18
+ ---
19
+
20
+ # Run State: FEATURE TITLE
21
+
22
+ > Internal file — do not edit manually.
23
+ > Used by skill to enable incremental upgrades and Phase 0 cache reuse.
24
+
25
+ ## Phases
26
+
27
+ | Phase | Status | Skipped Reason |
28
+ |-------|--------|---------------|
29
+ | 0 Assess | ✅ done / ⬜ skipped | — |
30
+ | 1 Ingest | ✅ done / ♻️ cached | cached from Phase 0 |
31
+ | 1b API Feasibility | ✅ done / ⬜ skipped | no third-party detected |
32
+ | 2 DDD Analysis | ✅ done | — |
33
+ | 2b Contracts | ✅ done / ⬜ skipped | lite mode |
34
+ | 3 UX Behavior | ✅ done | — |
35
+ | 4 Use Cases | ✅ done | — |
36
+ | 5 Integration | ✅ done / ⬜ skipped | lite mode |
37
+ | 6 Tasks | ✅ done | — |
38
+ | 7a Audit | ✅ done | — |
39
+ | 7b Scope Summary | ✅ done | — |
40
+ | 7c Synthesis | ✅ done | — |
41
+ | 8 Index | ✅ done | — |
42
+
43
+ ## Files Generated
44
+
45
+ <!-- Auto-populated after run — one entry per file -->
46
+ - path/to/file.md
47
+
48
+ ## Human-Edited Files
49
+
50
+ <!-- Populated when upgrade detects mtime > generation timestamp -->
51
+ <!-- These files will NOT be overwritten on upgrade -->
52
+ - path/to/file.md — edited YYYY-MM-DD
53
+
54
+ ## Upgrade Available
55
+
56
+ ```bash
57
+ # Check current upgrade options
58
+ /ba-pitch-analyzer --status shapeup/FEATURE_SLUG/spec/
59
+
60
+ # Upgrade to standard lens (adds contracts + integration + full synthesis)
61
+ /ba-pitch-analyzer --upgrade standard shapeup/FEATURE_SLUG/spec/
62
+
63
+ # Upgrade specific module only
64
+ /ba-pitch-analyzer --upgrade contracts shapeup/FEATURE_SLUG/spec/
65
+ /ba-pitch-analyzer --upgrade synthesis shapeup/FEATURE_SLUG/spec/
66
+ ```
67
+
68
+ ## Metrics
69
+
70
+ ```
71
+ assess_tokens_est : N–N
72
+ actual_tokens : N (filled post-run)
73
+ assess_ucs_est : N
74
+ actual_ucs : N (filled post-run)
75
+ assess_tasks_est : N–N
76
+ actual_tasks : N (filled post-run)
77
+ ```
@@ -0,0 +1,105 @@
1
+ ---
2
+ type: scope-summary
3
+ feature: FEATURE_SLUG
4
+ generated_at: YYYY-MM-DD
5
+ total_tasks: 0
6
+ total_estimated_hours: 0
7
+ packages_touched: []
8
+ critical_path_length: 0
9
+ critical_path_tasks: []
10
+ external_blockers: []
11
+ audit_score: 0
12
+ ---
13
+
14
+ # Feature Scope Summary: FEATURE TITLE
15
+
16
+ > Generated from task graph. Use this document in sprint planning.
17
+ > Audit score below 90 means spec needs human review before execution.
18
+
19
+ ---
20
+
21
+ ## At a Glance
22
+
23
+ | | |
24
+ |---|---|
25
+ | Total tasks | N |
26
+ | Estimated effort | Nh (~N days) |
27
+ | Packages touched | N |
28
+ | Critical path depth | N tasks |
29
+ | External blockers | N items before sprint can start |
30
+ | Spec audit score | N/100 [✅/⚠️/🚫] |
31
+
32
+ ---
33
+
34
+ ## Critical Path
35
+
36
+ The longest sequential chain — minimum time to complete if parallelized optimally.
37
+
38
+ ```
39
+ TASK-NNN → TASK-NNN → TASK-NNN → TASK-NNN
40
+ Nh Nh Nh Nh
41
+ ```
42
+
43
+ **Critical path estimate:** Nh total
44
+ *(All other work can happen in parallel alongside this chain)*
45
+
46
+ ---
47
+
48
+ ## Package Distribution
49
+
50
+ | Package | Tasks | Est. Hours | % of effort |
51
+ |---------|-------|------------|-------------|
52
+ | packages/shared | N | Nh | N% |
53
+ | apps/api | N | Nh | N% |
54
+ | apps/web | N | Nh | N% |
55
+ | **Total** | **N** | **Nh** | 100% |
56
+
57
+ ---
58
+
59
+ ## Parallel Opportunities
60
+
61
+ Tasks with no interdependency that can run simultaneously:
62
+
63
+ | Group | Tasks | Can start after |
64
+ |-------|-------|----------------|
65
+ | Group A | TASK-NNN, TASK-NNN | TASK-NNN completes |
66
+ | Group B | TASK-NNN | TASK-NNN completes |
67
+
68
+ ---
69
+
70
+ ## External Blockers
71
+
72
+ Items that must be resolved BEFORE sprint starts:
73
+
74
+ **Environment Variables**
75
+ - [ ] `VAR_NAME` — [what it's for, where to get it]
76
+
77
+ **Third-party Setup**
78
+ - [ ] [Service] sandbox account — [how to obtain]
79
+
80
+ **Internal Dependencies**
81
+ - [ ] [Other team/service] must deploy [X] first — see [[integration#section]]
82
+
83
+ ---
84
+
85
+ ## Risks (from Pitch)
86
+
87
+ Carried from [[_index#Rabbit-Holes]]:
88
+
89
+ | Risk | Impact | Mitigation | Related UC |
90
+ |------|--------|------------|-----------|
91
+ | [risk] | high/med/low | [mitigation] | [[usecases/UC-Name]] |
92
+
93
+ ---
94
+
95
+ ## Execution Recommendation
96
+
97
+ <!-- Filled from spec-lint.mjs output -->
98
+
99
+ **Audit Score: N/100**
100
+
101
+ ```
102
+ [✅ Ready for autonomous execution — run /execute-plan tasks/_index.md]
103
+ [⚠️ Review recommended — PO + Dev 15-min walkthrough before /execute-plan]
104
+ [🚫 Blocked — fix critical issues in Audit Report first]
105
+ ```