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.
- package/.claude/settings.local.example.json +20 -0
- package/.claude-plugin/marketplace.json +16 -0
- package/.claude-plugin/plugin.json +18 -0
- package/.env.shapeup.example +14 -0
- package/AGENTS.md +133 -0
- package/LICENSE +21 -0
- package/README.md +362 -0
- package/SECURITY.md +72 -0
- package/bin/init.mjs +329 -0
- package/commands/build.md +14 -0
- package/commands/eval.md +15 -0
- package/commands/hammer.md +12 -0
- package/commands/orient.md +11 -0
- package/commands/qa.md +12 -0
- package/commands/retro.md +13 -0
- package/commands/scopes.md +14 -0
- package/commands/shape.md +12 -0
- package/commands/ship.md +53 -0
- package/commands/wire.md +11 -0
- package/hooks/anti-rationalization.mjs +244 -0
- package/hooks/compact-snapshot.mjs +47 -0
- package/hooks/gate-deadline.mjs +151 -0
- package/hooks/gate-intake.mjs +110 -0
- package/hooks/gate-l2.mjs +161 -0
- package/hooks/gate-zerowork.mjs +264 -0
- package/hooks/hooks.json +118 -0
- package/hooks/lib/decision.mjs +183 -0
- package/hooks/safety-spine.mjs +296 -0
- package/hooks/sandbox-guard.mjs +172 -0
- package/hooks/session-rehydrate.mjs +109 -0
- package/hooks/slop-cleaner.mjs +176 -0
- package/oracles/_shared.mjs +46 -0
- package/oracles/http-oracle.mjs +155 -0
- package/oracles/index.mjs +36 -0
- package/oracles/process-oracle.mjs +146 -0
- package/oracles/snapshot-oracle.mjs +119 -0
- package/oracles/test-oracle.mjs +138 -0
- package/package.json +49 -0
- package/skills/advisor-protocol/SKILL.md +171 -0
- package/skills/ba-pitch-analyzer/SKILL.md +175 -0
- package/skills/ba-pitch-analyzer/assets/templates/_index.tmpl.md +84 -0
- package/skills/ba-pitch-analyzer/assets/templates/api-feasibility.tmpl.md +65 -0
- package/skills/ba-pitch-analyzer/assets/templates/assess-report.tmpl.md +127 -0
- package/skills/ba-pitch-analyzer/assets/templates/contracts/be-service.contract.tmpl.md +62 -0
- package/skills/ba-pitch-analyzer/assets/templates/contracts/offline-storage.contract.tmpl.md +92 -0
- package/skills/ba-pitch-analyzer/assets/templates/contracts/third-party-api.contract.tmpl.md +66 -0
- package/skills/ba-pitch-analyzer/assets/templates/cross-context/context-map.tmpl.md +64 -0
- package/skills/ba-pitch-analyzer/assets/templates/cross-context/event-choreography.tmpl.md +77 -0
- package/skills/ba-pitch-analyzer/assets/templates/cross-context/migration-plan.tmpl.md +104 -0
- package/skills/ba-pitch-analyzer/assets/templates/cross-context/team-handoff.tmpl.md +79 -0
- package/skills/ba-pitch-analyzer/assets/templates/domain-model.tmpl.md +79 -0
- package/skills/ba-pitch-analyzer/assets/templates/feedback.tmpl.md +87 -0
- package/skills/ba-pitch-analyzer/assets/templates/integration.tmpl.md +64 -0
- package/skills/ba-pitch-analyzer/assets/templates/run-state.tmpl.md +77 -0
- package/skills/ba-pitch-analyzer/assets/templates/scope-summary.tmpl.md +105 -0
- package/skills/ba-pitch-analyzer/assets/templates/synthesis.tmpl.md +215 -0
- package/skills/ba-pitch-analyzer/assets/templates/task-board.tmpl.md +35 -0
- package/skills/ba-pitch-analyzer/assets/templates/task-spike.tmpl.md +86 -0
- package/skills/ba-pitch-analyzer/assets/templates/task.tmpl.md +84 -0
- package/skills/ba-pitch-analyzer/assets/templates/usecase.tmpl.md +105 -0
- package/skills/ba-pitch-analyzer/assets/templates/ux-behavior.tmpl.md +65 -0
- package/skills/ba-pitch-analyzer/references/contract-patterns.md +152 -0
- package/skills/ba-pitch-analyzer/references/ddd-patterns.md +173 -0
- package/skills/ba-pitch-analyzer/references/doc-schemas.md +275 -0
- package/skills/ba-pitch-analyzer/references/integration-analysis.md +152 -0
- package/skills/ba-pitch-analyzer/references/task-generation.md +623 -0
- package/skills/ba-pitch-analyzer/references/test-surface.md +102 -0
- package/skills/ba-pitch-analyzer/references/ux-behavior-patterns.md +269 -0
- package/skills/ba-pitch-analyzer/scripts/board-derive.mjs +241 -0
- package/skills/ba-pitch-analyzer/scripts/spec-lint.mjs +239 -0
- package/skills/coach/SKILL.md +202 -0
- package/skills/orient/SKILL.md +262 -0
- package/skills/qa-edge-hunter/SKILL.md +369 -0
- package/skills/scope-architect/SKILL.md +111 -0
- package/skills/scope-hammer/SKILL.md +186 -0
- package/skills/shapeup/SKILL.md +403 -0
- package/skills/shapeup/resources/breadboard-reflection.md +88 -0
- package/skills/shapeup/resources/breadboarding.md +334 -0
- package/skills/shapeup/resources/context-compaction.md +240 -0
- package/skills/shapeup/resources/framing-doc.md +92 -0
- package/skills/shapeup/resources/kickoff-doc.md +95 -0
- package/skills/shapeup/resources/shaping.md +194 -0
- package/skills/shapeup/resources/spike.md +86 -0
- package/skills/solution-architect/SKILL.md +129 -0
- package/skills/spec-evaluator/README.md +93 -0
- package/skills/spec-evaluator/SKILL.md +213 -0
- package/skills/spec-evaluator/references/anti-leniency.md +50 -0
- package/skills/spec-evaluator/references/dimension-contract.md +126 -0
- package/skills/spec-evaluator/references/dimensions/_registry.md +40 -0
- package/skills/spec-evaluator/references/dimensions/completeness.md +102 -0
- package/skills/spec-evaluator/references/dimensions/integration.md +129 -0
- package/skills/spec-evaluator/references/dimensions/performance.md +48 -0
- package/skills/spec-evaluator/references/dimensions/security.md +60 -0
- package/skills/spec-evaluator/references/dimensions/spec-conformance.md +134 -0
- package/skills/spec-evaluator/references/dimensions/tdd-surface.md +110 -0
- package/skills/spec-evaluator/references/dimensions/test-surface-conformance.md +100 -0
- package/skills/spec-evaluator/references/probing.md +177 -0
- package/skills/spec-evaluator/references/report-schema.md +101 -0
- package/skills/spec-evaluator/references/verdict-ledger.md +92 -0
- package/skills/spec-evaluator/scripts/verdict-ledger.mjs +166 -0
- package/skills/task-executor/SKILL.md +194 -0
- package/skills/tech-lead/README.md +71 -0
- package/skills/tech-lead/SKILL.md +459 -0
- package/skills/tech-lead/references/delegation.md +254 -0
- package/skills/tech-lead/references/gates.md +379 -0
- package/skills/tech-lead/references/invocation.md +45 -0
- package/skills/tech-lead/references/ledger-schema.md +214 -0
- package/skills/tech-lead/references/round-protocol.md +184 -0
- package/skills/tech-lead/references/state-model.md +66 -0
- package/skills/tech-lead/references/tiny-lane.md +52 -0
- package/skills/tech-lead/schemas/domain.schema.json +2294 -0
- package/skills/tech-lead/schemas/gate-answers.schema.json +92 -0
- package/skills/tech-lead/schemas/work-order.schema.json +21 -0
- package/skills/tech-lead/schemas/work-result.schema.json +40 -0
- package/skills/tech-lead/scripts/aegis-digest.mjs +124 -0
- package/skills/tech-lead/scripts/budget-check.mjs +156 -0
- package/skills/tech-lead/scripts/compile-order.mjs +518 -0
- package/skills/tech-lead/scripts/fit-check.mjs +196 -0
- package/skills/tech-lead/scripts/gate-answers.mjs +338 -0
- package/skills/tech-lead/scripts/ingest-result.mjs +270 -0
- package/skills/tech-lead/scripts/init-run.mjs +326 -0
- package/skills/tech-lead/scripts/lib/argv.mjs +224 -0
- package/skills/tech-lead/scripts/lib/contract-md.mjs +481 -0
- package/skills/tech-lead/scripts/lib/is-main.mjs +82 -0
- package/skills/tech-lead/scripts/lib/paths.mjs +278 -0
- package/skills/tech-lead/scripts/lib/ratchet-tree.mjs +112 -0
- package/skills/tech-lead/scripts/run-snapshot.mjs +269 -0
- package/skills/tech-lead/scripts/ship-report.mjs +275 -0
- package/skills/tech-lead/scripts/stats.mjs +423 -0
- package/skills/tech-lead/scripts/t0-verify.mjs +470 -0
- package/skills/tech-lead/scripts/trace-lint.mjs +367 -0
- package/skills/tech-lead/scripts/validate-envelope.mjs +283 -0
- package/skills/translator/README.md +66 -0
- package/skills/translator/SKILL.md +258 -0
- package/skills/translator/references/preservation-rules.md +102 -0
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
# Integration Analysis — System Impact Reference
|
|
2
|
+
|
|
3
|
+
Reference for Phase 5. Read before writing `integration.md`.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## What to Analyze
|
|
8
|
+
|
|
9
|
+
For every pitch, systematically check these impact categories:
|
|
10
|
+
|
|
11
|
+
### 1. Internal Services (same monorepo)
|
|
12
|
+
- Which packages change their exported interface?
|
|
13
|
+
- Which packages add a new dependency?
|
|
14
|
+
- Which consumers break if package API changes?
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
# Find consumers of a package
|
|
18
|
+
grep -r "from '@yourapp/shared'" apps/ --include="*.ts" | cut -d: -f1
|
|
19
|
+
grep -r "from '@yourapp/api-client'" apps/ --include="*.ts" | cut -d: -f1
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
### 2. Domain Events (cross-context)
|
|
23
|
+
- What events does this feature **emit**? Who currently listens?
|
|
24
|
+
- What events does this feature **consume**? What emits them?
|
|
25
|
+
- Are there new event subscriptions needed in existing services?
|
|
26
|
+
|
|
27
|
+
### 3. External APIs
|
|
28
|
+
- New third-party integrations (VNPay, Goong, Zalo, etc.)
|
|
29
|
+
- Existing integrations that change payload shape
|
|
30
|
+
- Webhook endpoints that need to be registered
|
|
31
|
+
|
|
32
|
+
### 4. Database
|
|
33
|
+
- New tables or columns (migration required)
|
|
34
|
+
- Existing queries that may be affected by schema change
|
|
35
|
+
- Index changes that affect performance
|
|
36
|
+
- RLS policies (Supabase) that need updating
|
|
37
|
+
|
|
38
|
+
### 5. Authentication / Authorization
|
|
39
|
+
- New roles or permissions
|
|
40
|
+
- New protected routes
|
|
41
|
+
- Changes to existing permission checks
|
|
42
|
+
|
|
43
|
+
### 6. Background Jobs / Queues (Inngest, BullMQ, etc.)
|
|
44
|
+
- New jobs triggered by this feature
|
|
45
|
+
- Existing jobs whose payload or trigger changes
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## Impact Severity Scale
|
|
50
|
+
|
|
51
|
+
Use in integration.md to prioritize:
|
|
52
|
+
|
|
53
|
+
| Severity | Meaning | Example |
|
|
54
|
+
|---|---|---|
|
|
55
|
+
| 🔴 Breaking | Existing functionality breaks without coordination | Removing a field from shared DTO |
|
|
56
|
+
| 🟡 Additive | New functionality, no breakage but consumers should know | New domain event emitted |
|
|
57
|
+
| 🟢 Isolated | Change is fully contained, no downstream effect | New table, no existing code touched |
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## Integration Section Format
|
|
62
|
+
|
|
63
|
+
```markdown
|
|
64
|
+
## [ServiceName / PackageName]
|
|
65
|
+
|
|
66
|
+
**Severity:** 🔴 Breaking | 🟡 Additive | 🟢 Isolated
|
|
67
|
+
**Direction:** produces → / consumes ← / bidirectional ↔
|
|
68
|
+
|
|
69
|
+
### What Changes
|
|
70
|
+
[1-3 sentences describing the change]
|
|
71
|
+
|
|
72
|
+
### Data Flow
|
|
73
|
+
\`\`\`
|
|
74
|
+
[FeatureName] ──[event/call]──► [ServiceName]
|
|
75
|
+
payload: { field1, field2 }
|
|
76
|
+
\`\`\`
|
|
77
|
+
|
|
78
|
+
### Risk
|
|
79
|
+
[What could go wrong silently]
|
|
80
|
+
|
|
81
|
+
### Mitigation
|
|
82
|
+
[How to prevent or detect the issue]
|
|
83
|
+
|
|
84
|
+
### Related Use Cases
|
|
85
|
+
- [[usecases/UC-Name]] — the UC whose tasks implement this integration point
|
|
86
|
+
(tasks are found via `use_case_refs` on the LOCAL board — a committed doc never
|
|
87
|
+
links `[[tasks/...]]`; ids are machine-local and the board is gitignored)
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## Cross-Context Event Coordination Pattern
|
|
93
|
+
|
|
94
|
+
When a feature emits events consumed by other bounded contexts:
|
|
95
|
+
|
|
96
|
+
```markdown
|
|
97
|
+
## Event Coordination: OrderPlaced
|
|
98
|
+
|
|
99
|
+
**Producer:** ordering context (this feature)
|
|
100
|
+
**Consumers:**
|
|
101
|
+
|
|
102
|
+
| Consumer | Reacts To | Action | Owner |
|
|
103
|
+
|---|---|---|---|
|
|
104
|
+
| inventory ctx | OrderPlaced | Reserve stock | Backend team |
|
|
105
|
+
| notification ctx | OrderPlaced | Send order confirmation | Backend team |
|
|
106
|
+
| analytics ctx | OrderPlaced | Record conversion event | Data team |
|
|
107
|
+
|
|
108
|
+
**Coordination needed:** inventory context must deploy event handler BEFORE
|
|
109
|
+
this feature goes live, otherwise stock is not reserved on order creation.
|
|
110
|
+
Dependency: TASK-008 (this feature) blocks until inventory handler is deployed.
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## Database Migration Impact Checklist
|
|
116
|
+
|
|
117
|
+
For every schema change, check:
|
|
118
|
+
|
|
119
|
+
- [ ] Are there existing queries using `SELECT *` that might break on new columns?
|
|
120
|
+
- [ ] Are there Drizzle relations that need updating in `schema/relations.ts`?
|
|
121
|
+
- [ ] Does the migration need to be run in a specific order with other pending migrations?
|
|
122
|
+
- [ ] Are there read replicas that need time to sync?
|
|
123
|
+
- [ ] Does existing seed data need to be updated?
|
|
124
|
+
- [ ] Are there Supabase RLS policies that reference the table?
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## Third-Party Integration Entry Checklist
|
|
129
|
+
|
|
130
|
+
When a pitch introduces a new external service, document:
|
|
131
|
+
|
|
132
|
+
```markdown
|
|
133
|
+
## External: [ServiceName]
|
|
134
|
+
|
|
135
|
+
**Purpose:** [what we use it for]
|
|
136
|
+
**Auth method:** API key | OAuth | Webhook signature
|
|
137
|
+
**Sandbox available:** yes | no
|
|
138
|
+
|
|
139
|
+
### Environment Variables Required
|
|
140
|
+
- `[SERVICE]_API_KEY` — [description]
|
|
141
|
+
- `[SERVICE]_WEBHOOK_SECRET` — [description]
|
|
142
|
+
|
|
143
|
+
### Failure Mode
|
|
144
|
+
[What happens to the user if this service is down?]
|
|
145
|
+
[Is there a graceful degradation path?]
|
|
146
|
+
|
|
147
|
+
### Rate Limits
|
|
148
|
+
[Requests per second/minute/day if known]
|
|
149
|
+
|
|
150
|
+
### Related Rabbit Hole (from pitch)
|
|
151
|
+
[[_index#Rabbit-Holes]]
|
|
152
|
+
```
|