gsdd-cli 0.18.5 → 0.19.0
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/LICENSE +21 -21
- package/README.md +609 -608
- package/agents/DISTILLATION.md +421 -421
- package/agents/README.md +62 -62
- package/agents/approach-explorer.md +361 -361
- package/agents/debugger.md +82 -82
- package/agents/executor.md +394 -394
- package/agents/integration-checker.md +318 -318
- package/agents/mapper.md +103 -103
- package/agents/planner.md +313 -313
- package/agents/researcher.md +84 -84
- package/agents/roadmapper.md +296 -296
- package/agents/synthesizer.md +236 -236
- package/agents/verifier.md +337 -337
- package/bin/adapters/agents.mjs +34 -34
- package/bin/adapters/claude.mjs +191 -191
- package/bin/adapters/codex.mjs +85 -85
- package/bin/adapters/index.mjs +20 -20
- package/bin/adapters/opencode.mjs +278 -278
- package/bin/gsdd.mjs +123 -116
- package/bin/lib/cli-utils.mjs +28 -28
- package/bin/lib/evidence-contract.mjs +112 -112
- package/bin/lib/file-ops.mjs +186 -144
- package/bin/lib/health-truth.mjs +181 -178
- package/bin/lib/health.mjs +246 -226
- package/bin/lib/init-flow.mjs +247 -231
- package/bin/lib/init-prompts.mjs +248 -247
- package/bin/lib/init-runtime.mjs +191 -190
- package/bin/lib/init.mjs +17 -17
- package/bin/lib/lifecycle-preflight.mjs +347 -325
- package/bin/lib/lifecycle-state.mjs +351 -267
- package/bin/lib/manifest.mjs +116 -114
- package/bin/lib/models.mjs +411 -411
- package/bin/lib/phase.mjs +360 -358
- package/bin/lib/plan-constants.mjs +30 -30
- package/bin/lib/provenance.mjs +109 -106
- package/bin/lib/rendering.mjs +115 -83
- package/bin/lib/runtime-freshness.mjs +214 -214
- package/bin/lib/templates.mjs +225 -224
- package/bin/lib/workspace-root.mjs +2 -1
- package/distilled/DESIGN.md +2333 -2323
- package/distilled/EVIDENCE-INDEX.md +394 -392
- package/distilled/README.md +196 -193
- package/distilled/SKILL.md +86 -85
- package/distilled/templates/agents.block.md +21 -21
- package/distilled/templates/agents.md +6 -6
- package/distilled/templates/approach.md +232 -232
- package/distilled/templates/auth-matrix.md +78 -78
- package/distilled/templates/brownfield-change/CHANGE.md +99 -0
- package/distilled/templates/brownfield-change/HANDOFF.md +38 -0
- package/distilled/templates/brownfield-change/VERIFICATION.md +56 -0
- package/distilled/templates/codebase/architecture.md +110 -110
- package/distilled/templates/codebase/concerns.md +95 -95
- package/distilled/templates/codebase/conventions.md +193 -193
- package/distilled/templates/codebase/stack.md +96 -96
- package/distilled/templates/delegates/approach-explorer.md +25 -25
- package/distilled/templates/delegates/mapper-arch.md +26 -26
- package/distilled/templates/delegates/mapper-concerns.md +27 -27
- package/distilled/templates/delegates/mapper-quality.md +28 -28
- package/distilled/templates/delegates/mapper-tech.md +25 -25
- package/distilled/templates/delegates/plan-checker.md +68 -68
- package/distilled/templates/delegates/researcher-architecture.md +30 -30
- package/distilled/templates/delegates/researcher-features.md +30 -30
- package/distilled/templates/delegates/researcher-pitfalls.md +30 -30
- package/distilled/templates/delegates/researcher-stack.md +30 -30
- package/distilled/templates/delegates/researcher-synthesizer.md +31 -31
- package/distilled/templates/research/architecture.md +57 -57
- package/distilled/templates/research/features.md +23 -23
- package/distilled/templates/research/pitfalls.md +46 -46
- package/distilled/templates/research/stack.md +45 -45
- package/distilled/templates/research/summary.md +67 -67
- package/distilled/templates/roadmap.md +74 -62
- package/distilled/templates/spec.md +110 -110
- package/distilled/workflows/audit-milestone.md +275 -271
- package/distilled/workflows/complete-milestone.md +336 -332
- package/distilled/workflows/execute.md +454 -449
- package/distilled/workflows/map-codebase.md +253 -253
- package/distilled/workflows/new-milestone.md +242 -238
- package/distilled/workflows/new-project.md +398 -398
- package/distilled/workflows/pause.md +160 -156
- package/distilled/workflows/plan-milestone-gaps.md +183 -183
- package/distilled/workflows/plan.md +451 -447
- package/distilled/workflows/progress.md +227 -223
- package/distilled/workflows/quick.md +351 -347
- package/distilled/workflows/resume.md +220 -212
- package/distilled/workflows/verify-work.md +260 -260
- package/distilled/workflows/verify.md +431 -429
- package/docs/BROWNFIELD-PROOF.md +95 -95
- package/docs/RUNTIME-SUPPORT.md +80 -69
- package/docs/USER-GUIDE.md +394 -386
- package/docs/VERIFICATION-DISCIPLINE.md +59 -59
- package/docs/claude/context-monitor.md +98 -98
- package/docs/proof/consumer-node-cli/README.md +37 -37
- package/docs/proof/consumer-node-cli/ROADMAP.md +14 -14
- package/docs/proof/consumer-node-cli/SPEC.md +17 -17
- package/docs/proof/consumer-node-cli/brief.md +9 -9
- package/docs/proof/consumer-node-cli/phases/01-foundation/01-01-PLAN.md +34 -34
- package/docs/proof/consumer-node-cli/phases/01-foundation/01-01-SUMMARY.md +10 -10
- package/docs/proof/consumer-node-cli/phases/01-foundation/01-VERIFICATION.md +30 -30
- package/package.json +62 -61
|
@@ -1,387 +1,389 @@
|
|
|
1
|
-
# GSDD Evidence Index
|
|
2
|
-
|
|
3
|
-
> One-line-per-source mapping of every design decision to its primary evidence.
|
|
4
|
-
> Extracted from inline **Evidence** sections in `distilled/DESIGN.md`.
|
|
5
|
-
> Updated when a decision is added or revised.
|
|
6
|
-
> Guarded by G31 in `tests/gsdd.guards.test.cjs`.
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## D1 — 4-File Codebase Standard
|
|
11
|
-
- `agents/_archive/gsd-codebase-mapper.md` lines 72-79 (GSD 7-file model)
|
|
12
|
-
- `agents/mapper.md` (GSDD 4-file standard)
|
|
13
|
-
- `.planning/SPEC.md` "Lean Context Decision" section
|
|
14
|
-
- Liu et al. "Lost in the Middle: How Language Models Use Long Contexts" (NeurIPS 2023) — position-dependent recall supports minimal stable context footprint
|
|
15
|
-
- Levy et al. "Same Task, More Tokens: Impact of Input Length on the Reasoning Performance of LLMs" (EMNLP 2024) — longer inputs degrade reasoning performance
|
|
16
|
-
- Aider tree-sitter dynamic repo maps (aider.chat) — on-demand structural mapping as an alternative to static context files
|
|
17
|
-
|
|
18
|
-
## D2 — Agent Consolidation: 11 to 10
|
|
19
|
-
- `agents/_archive/` (11 original GSD files, git history via `git mv`)
|
|
20
|
-
- `agents/` + `agents/README.md` (10 canonicals, lifecycle table)
|
|
21
|
-
- `agents/README.md` lifecycle table (canonical-to-GSD source mapping)
|
|
22
|
-
- CrewAI role-based team patterns, Microsoft AutoGen hierarchical agents, LangGraph multi-agent subgraphs (validate role specialization; specific count of 10 is engineering judgment)
|
|
23
|
-
|
|
24
|
-
## D3 — Two-Layer Architecture: Roles and Delegates
|
|
25
|
-
- `agents/README.md` (Two-Layer Architecture and Runtime Distribution sections)
|
|
26
|
-
- `bin/gsdd.mjs` lines 84-102 (role copy step with existsSync guard)
|
|
27
|
-
- `tests/gsdd.init.test.cjs` (role file existence and delegate-role reference validation)
|
|
28
|
-
-
|
|
29
|
-
- Jensen & Meckling "Theory of the Firm" (Journal of Financial Economics 1976) — principal-agent delegation contracts
|
|
30
|
-
- Gamma et al. GoF Strategy Pattern ("Design Patterns" 1994) — separating algorithm definition from usage context
|
|
31
|
-
- LangGraph multi-agent subgraphs + Microsoft AutoGen hierarchical agents (production validation of two-layer separation)
|
|
32
|
-
|
|
33
|
-
## D4 — Zero-Hop Security Propagation
|
|
34
|
-
- `agents/mapper.md` lines 66-90 (Forbidden Files section + Hard stop)
|
|
35
|
-
- `agents/_archive/gsd-codebase-mapper.md` lines 66-97 (original narrower rules)
|
|
36
|
-
- PR 2 intermediate state (one-hop via SKILL.md cross-reference)
|
|
37
|
-
- PR 4 final state (zero-hop, role contains all rules)
|
|
38
|
-
- OWASP Top 10 for LLM Applications v2.0 (2025) — LLM01 (Prompt Injection) + LLM07 (System Prompt Leakage) support embedding security rules at the role-contract level
|
|
39
|
-
- Greshake et al. "Not What You've Signed Up For" (IEEE S&P 2023) — indirect prompt injection validates defense-in-depth at the agent-contract layer
|
|
40
|
-
- Saltzer & Schroeder "Protection of Information in Computer Systems" (1975) — complete mediation principle
|
|
41
|
-
|
|
42
|
-
## D5 — Conditional Synthesizer
|
|
43
|
-
- `get-shit-done/workflows/new-project.md` lines 708-729 (GSD always-spawn synthesizer)
|
|
44
|
-
- `distilled/templates/delegates/researcher-synthesizer.md`
|
|
45
|
-
- `agents/synthesizer.md` (cross-reference algorithm)
|
|
46
|
-
- `.planning/config.json` `researchDepth` field contract
|
|
47
|
-
- LangGraph conditional edges — adaptive agent invocation based on workflow state
|
|
48
|
-
- Asai et al. "Self-RAG: Learning to Retrieve, Generate, and Critique through Self-Reflection" (ICLR 2024) — conditional retrieval/synthesis based on need
|
|
49
|
-
- Anthropic "Building effective agents" (Dec 2024) — routing workflows match task complexity to agent selection
|
|
50
|
-
|
|
51
|
-
## D6 — Mapper Staleness: Standalone Workflow
|
|
52
|
-
- `get-shit-done/workflows/map-codebase.md` lines 35-62 (GSD staleness check with 3 options)
|
|
53
|
-
- `get-shit-done/workflows/new-project.md` lines 61-80 (brownfield offer delegates to map-codebase)
|
|
54
|
-
- `distilled/workflows/map-codebase.md` (standalone, re-runnable)
|
|
55
|
-
- `distilled/workflows/new-project.md` (auto-invoke for brownfield via skill reference)
|
|
56
|
-
- Aider (aider.chat) — dynamic tree-sitter-based repo maps generated on-demand (validates freshness-over-cache approach)
|
|
57
|
-
- Cursor — continuous background indexing (cached approach; shows both are production-valid tradeoffs)
|
|
58
|
-
|
|
59
|
-
## D7 — Milestone Hierarchy and Phase Continuation
|
|
60
|
-
- `get-shit-done/workflows/new-milestone.md` lines 101-173 (milestone-aware researchers)
|
|
61
|
-
- `get-shit-done/workflows/new-milestone.md` line 269 (phase numbering continuation)
|
|
62
|
-
- `distilled/README.md` lifecycle diagram
|
|
63
|
-
- `.planning/SPEC.md` "Long-Term Lifecycle" section
|
|
64
|
-
- Erol, Hendler & Nau / Nau et al. Hierarchical Task Networks (JAIR 2003) — foundational milestone→phase→task decomposition in AI planning
|
|
65
|
-
- PMI PMBOK Work Breakdown Structure (WBS) standard — industry-standard phase/task hierarchy
|
|
66
|
-
- Khot et al. "Decomposed Prompting" (ICLR 2023) — task decomposition improves LLM performance on multi-step work
|
|
67
|
-
|
|
68
|
-
## D8 — Advisory Git Protocol
|
|
69
|
-
- `agents/_archive/gsd-executor.md` (mandatory commit in algorithm, TDD flow)
|
|
70
|
-
- `agents/executor.md` lines 57-64 (Git Guidance — repo-native, advisory)
|
|
71
|
-
- Industry consensus: Aider, GitHub Copilot, Cursor, Codex CLI, OpenCode — all treat git as advisory/user-configured; no major AI coding tool enforces a specific commit or branch convention
|
|
72
|
-
|
|
73
|
-
## D9 — Adapter Generation Over Conversion
|
|
74
|
-
- `get-shit-done/install.js` (GSD converter with per-runtime conversion logic)
|
|
75
|
-
- `get-shit-done/workflows/new-project.md` (851 lines, 10+ AskUserQuestion calls, 7 Task() calls)
|
|
76
|
-
- `bin/gsdd.mjs` (thin CLI entrypoint and adapter dispatcher)
|
|
77
|
-
- `bin/adapters/` (vendor-specific adapter generation)
|
|
78
|
-
- `distilled/templates/delegates/plan-checker.md` (single payload source for native checker generation)
|
|
79
|
-
- `.planning/SPEC.md` "Agent Integration Strategy" section
|
|
80
|
-
- AGENTS.md Linux Foundation standard: agents.md
|
|
81
|
-
|
|
82
|
-
## D10 — Context Isolation: Summaries Up, Documents to Disk
|
|
83
|
-
- `get-shit-done/workflows/new-project.md` lines 544-706 (4 researchers write to files, return summaries)
|
|
84
|
-
-
|
|
85
|
-
- `agents/synthesizer.md` (reads full research files from disk)
|
|
86
|
-
- Anthropic Agent Teams (Feb 2026): "Shared State, Not Shared Context"
|
|
87
|
-
- AI21 Modular Intelligence (Feb 2026): orchestrator-based designs prevent context drift
|
|
88
|
-
|
|
89
|
-
## D11 — Quick-Work Lane
|
|
90
|
-
- `get-shit-done/workflows/quick.md` (454 lines, two modes, STATE.md tracking)
|
|
91
|
-
- `distilled/workflows/quick.md` (~120 lines, single mode, LOG.md tracking)
|
|
92
|
-
- Crystal Clear (Cockburn 2004) — ceremony scales with team size and criticality; lightweight methods prescribed for small/low-criticality work
|
|
93
|
-
- Kanban class-of-service (Anderson 2010) — routing tasks by size/urgency to appropriate workflow lanes
|
|
94
|
-
- Anthropic "Building effective agents" (Dec 2024) — match workflow complexity to task complexity
|
|
95
|
-
|
|
96
|
-
## D12 — Session Persistence Without State File
|
|
97
|
-
- `get-shit-done/workflows/pause-work.md` (123 lines, phase-scoped checkpoint)
|
|
98
|
-
- `get-shit-done/workflows/resume-project.md` (307 lines, STATE.md-dependent)
|
|
99
|
-
- `get-shit-done/workflows/progress.md` (382 lines, gsd-tools.cjs-dependent)
|
|
100
|
-
- `distilled/workflows/pause.md`, `distilled/workflows/resume.md`, `distilled/workflows/progress.md`
|
|
101
|
-
- `.internal-research/gsd-distilled-audit-13th-march-2026.md` — Highest-ROI recommendation #3
|
|
102
|
-
|
|
103
|
-
## D13 — Mechanical Invariant Enforcement
|
|
104
|
-
- `tests/gsdd.invariants.test.cjs` lines 1015+ (6 suites, ~106 assertions)
|
|
105
|
-
- OpenAI Harness Engineering blog (Feb 2026): "error messages as enforcement mechanism"
|
|
106
|
-
- External audit (2026-03-13): recommendation #4 "Mechanize the framework's invariants"
|
|
107
|
-
- PRs #20-23: orphan `</output>` tags survived 4 manual review cycles before G4 caught them
|
|
108
|
-
|
|
109
|
-
## D14 — Headless Mode
|
|
110
|
-
- `get-shit-done/workflows/new-project.md` lines 9-40 (GSD headless predecessor)
|
|
111
|
-
- Claude Code: `-p` flag for headless execution (docs.anthropic.com)
|
|
112
|
-
- Codex CLI: `--quiet` and `--auto-edit` flags (developers.openai.com/codex/cli/reference)
|
|
113
|
-
- Cline CLI 2.0: explicit headless CI/CD mode (devops.com, 2025)
|
|
114
|
-
|
|
115
|
-
## D15 — Model Profile Propagation
|
|
116
|
-
- `get-shit-done/references/model-profiles.md` + `model-profile-resolution.md` (GSD reference)
|
|
117
|
-
- OpenSpec: portable spec core is tool-agnostic (openspec.dev)
|
|
118
|
-
- Claude Code: `model:` field with aliases (docs.anthropic.com/en/docs/claude-code/sub-agents)
|
|
119
|
-
- OpenCode: `model:` in agent frontmatter (opencode.ai/docs/agents)
|
|
120
|
-
- Agent Skills standard: no `model:` field in spec (agentskills.io/specification)
|
|
121
|
-
|
|
122
|
-
## D16 — Template Versioning via Generation Manifest
|
|
123
|
-
- `get-shit-done/install.js` lines 1227-1327 (SHA-256 manifest + backup directory)
|
|
124
|
-
- OpenSpec: managed blocks with bounded upsert (openspec.dev)
|
|
125
|
-
- Angular/Turborepo/Next.js: ordered migrations with dry-run preview
|
|
126
|
-
- Langfuse: generation/prompt versioning with hash-based change detection (langfuse.com/docs/prompts)
|
|
127
|
-
|
|
128
|
-
## D17 — CLI Composition Root Boundary
|
|
129
|
-
- `get-shit-done/install.js` (GSD monolithic install/conversion surface)
|
|
130
|
-
- `bin/gsdd.mjs`, `bin/lib/init.mjs`, `bin/lib/templates.mjs`, `bin/lib/models.mjs`
|
|
131
|
-
- `tests/gsdd.init.test.cjs`, `tests/gsdd.models.test.cjs`, `tests/gsdd.manifest.test.cjs`
|
|
132
|
-
- Seemann "Dependency Injection in .NET" (Manning 2011) — named "Composition Root" pattern
|
|
133
|
-
- Martin "Clean Architecture" (2017) — main component as the outermost wiring layer
|
|
134
|
-
- Standard pattern in oclif, Commander.js, yargs, Cobra CLIs
|
|
135
|
-
|
|
136
|
-
## D18 — Codex CLI Native Adapter
|
|
137
|
-
- OpenAI Codex CLI docs: developers.openai.com/codex/subagents
|
|
138
|
-
- Codex CLI v0.115.0 release notes: github.com/openai/codex/releases/tag/rust-v0.115.0
|
|
139
|
-
- Agent Skills standard: developers.openai.com/codex/skills
|
|
140
|
-
- `
|
|
141
|
-
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
-
|
|
146
|
-
-
|
|
147
|
-
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
-
|
|
152
|
-
-
|
|
153
|
-
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
- OWASP
|
|
158
|
-
-
|
|
159
|
-
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
-
|
|
164
|
-
-
|
|
165
|
-
-
|
|
166
|
-
- `distilled/
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
-
|
|
171
|
-
-
|
|
172
|
-
-
|
|
173
|
-
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
-
|
|
178
|
-
-
|
|
179
|
-
-
|
|
180
|
-
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
-
|
|
185
|
-
-
|
|
186
|
-
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
-
|
|
191
|
-
-
|
|
192
|
-
-
|
|
193
|
-
-
|
|
194
|
-
- `
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
- External audit (2026-03-
|
|
199
|
-
- External audit (2026-03-
|
|
200
|
-
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
-
|
|
205
|
-
-
|
|
206
|
-
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
-
|
|
211
|
-
-
|
|
212
|
-
- `get-shit-done/workflows/
|
|
213
|
-
- `get-shit-done/workflows/
|
|
214
|
-
- `
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
-
|
|
219
|
-
-
|
|
220
|
-
-
|
|
221
|
-
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
-
|
|
226
|
-
-
|
|
227
|
-
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
-
|
|
232
|
-
-
|
|
233
|
-
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
-
|
|
238
|
-
-
|
|
239
|
-
-
|
|
240
|
-
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
-
|
|
245
|
-
-
|
|
246
|
-
- `
|
|
247
|
-
- `distilled/
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
-
|
|
252
|
-
-
|
|
253
|
-
- `
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
-
|
|
258
|
-
-
|
|
259
|
-
-
|
|
260
|
-
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
- `distilled/workflows/
|
|
265
|
-
-
|
|
266
|
-
-
|
|
267
|
-
-
|
|
268
|
-
-
|
|
269
|
-
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
-
|
|
274
|
-
- `distilled/workflows/
|
|
275
|
-
- `distilled/workflows/
|
|
276
|
-
-
|
|
277
|
-
-
|
|
278
|
-
-
|
|
279
|
-
-
|
|
280
|
-
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
-
|
|
285
|
-
-
|
|
286
|
-
- `distilled/workflows/
|
|
287
|
-
- `
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
-
|
|
292
|
-
-
|
|
293
|
-
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
- `
|
|
298
|
-
- `distilled/workflows/
|
|
299
|
-
- `distilled/workflows/
|
|
300
|
-
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
- `distilled/workflows/
|
|
305
|
-
- `distilled/workflows/
|
|
306
|
-
- `
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
- `.internal-research/
|
|
311
|
-
- `.internal-research/
|
|
312
|
-
-
|
|
313
|
-
- `
|
|
314
|
-
- `
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
-
|
|
318
|
-
- `.planning/
|
|
319
|
-
-
|
|
320
|
-
- `distilled/workflows/
|
|
321
|
-
- `
|
|
322
|
-
- `
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
-
|
|
326
|
-
- `.planning/
|
|
327
|
-
- `.
|
|
328
|
-
- `.internal-research/
|
|
329
|
-
- `.internal-research/release-jury-
|
|
330
|
-
- `.internal-research/
|
|
331
|
-
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
- `.
|
|
336
|
-
- `.planning/
|
|
337
|
-
-
|
|
338
|
-
- `
|
|
339
|
-
- `
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
-
|
|
344
|
-
- `distilled/workflows/
|
|
345
|
-
- `
|
|
346
|
-
- `
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
- `.planning/
|
|
351
|
-
- `.
|
|
352
|
-
-
|
|
353
|
-
- `
|
|
354
|
-
- `
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
- `.planning/
|
|
359
|
-
-
|
|
360
|
-
- `bin/
|
|
361
|
-
- `
|
|
362
|
-
- `distilled/workflows/
|
|
363
|
-
- `distilled/workflows/
|
|
364
|
-
- `
|
|
365
|
-
- `
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
- `.planning/
|
|
370
|
-
-
|
|
371
|
-
- `
|
|
372
|
-
- `
|
|
373
|
-
- `
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
- `.planning/
|
|
378
|
-
- `.
|
|
379
|
-
-
|
|
380
|
-
- `bin/
|
|
381
|
-
- `
|
|
382
|
-
- `
|
|
383
|
-
- `
|
|
384
|
-
|
|
1
|
+
# GSDD Evidence Index
|
|
2
|
+
|
|
3
|
+
> One-line-per-source mapping of every design decision to its primary evidence.
|
|
4
|
+
> Extracted from inline **Evidence** sections in `distilled/DESIGN.md`.
|
|
5
|
+
> Updated when a decision is added or revised.
|
|
6
|
+
> Guarded by G31 in `tests/gsdd.guards.test.cjs`.
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## D1 — 4-File Codebase Standard
|
|
11
|
+
- `agents/_archive/gsd-codebase-mapper.md` lines 72-79 (GSD 7-file model)
|
|
12
|
+
- `agents/mapper.md` (GSDD 4-file standard)
|
|
13
|
+
- `.planning/SPEC.md` "Lean Context Decision" section
|
|
14
|
+
- Liu et al. "Lost in the Middle: How Language Models Use Long Contexts" (NeurIPS 2023) — position-dependent recall supports minimal stable context footprint
|
|
15
|
+
- Levy et al. "Same Task, More Tokens: Impact of Input Length on the Reasoning Performance of LLMs" (EMNLP 2024) — longer inputs degrade reasoning performance
|
|
16
|
+
- Aider tree-sitter dynamic repo maps (aider.chat) — on-demand structural mapping as an alternative to static context files
|
|
17
|
+
|
|
18
|
+
## D2 — Agent Consolidation: 11 to 10
|
|
19
|
+
- `agents/_archive/` (11 original GSD files, git history via `git mv`)
|
|
20
|
+
- `agents/` + `agents/README.md` (10 canonicals, lifecycle table)
|
|
21
|
+
- `agents/README.md` lifecycle table (canonical-to-GSD source mapping)
|
|
22
|
+
- CrewAI role-based team patterns, Microsoft AutoGen hierarchical agents, LangGraph multi-agent subgraphs (validate role specialization; specific count of 10 is engineering judgment)
|
|
23
|
+
|
|
24
|
+
## D3 — Two-Layer Architecture: Roles and Delegates
|
|
25
|
+
- `agents/README.md` (Two-Layer Architecture and Runtime Distribution sections)
|
|
26
|
+
- `bin/gsdd.mjs` lines 84-102 (role copy step with existsSync guard)
|
|
27
|
+
- `tests/gsdd.init.test.cjs` (role file existence and delegate-role reference validation)
|
|
28
|
+
- Delegate files in `distilled/templates/delegates/`
|
|
29
|
+
- Jensen & Meckling "Theory of the Firm" (Journal of Financial Economics 1976) — principal-agent delegation contracts
|
|
30
|
+
- Gamma et al. GoF Strategy Pattern ("Design Patterns" 1994) — separating algorithm definition from usage context
|
|
31
|
+
- LangGraph multi-agent subgraphs + Microsoft AutoGen hierarchical agents (production validation of two-layer separation)
|
|
32
|
+
|
|
33
|
+
## D4 — Zero-Hop Security Propagation
|
|
34
|
+
- `agents/mapper.md` lines 66-90 (Forbidden Files section + Hard stop)
|
|
35
|
+
- `agents/_archive/gsd-codebase-mapper.md` lines 66-97 (original narrower rules)
|
|
36
|
+
- PR 2 intermediate state (one-hop via SKILL.md cross-reference)
|
|
37
|
+
- PR 4 final state (zero-hop, role contains all rules)
|
|
38
|
+
- OWASP Top 10 for LLM Applications v2.0 (2025) — LLM01 (Prompt Injection) + LLM07 (System Prompt Leakage) support embedding security rules at the role-contract level
|
|
39
|
+
- Greshake et al. "Not What You've Signed Up For" (IEEE S&P 2023) — indirect prompt injection validates defense-in-depth at the agent-contract layer
|
|
40
|
+
- Saltzer & Schroeder "Protection of Information in Computer Systems" (1975) — complete mediation principle
|
|
41
|
+
|
|
42
|
+
## D5 — Conditional Synthesizer
|
|
43
|
+
- `get-shit-done/workflows/new-project.md` lines 708-729 (GSD always-spawn synthesizer)
|
|
44
|
+
- `distilled/templates/delegates/researcher-synthesizer.md`
|
|
45
|
+
- `agents/synthesizer.md` (cross-reference algorithm)
|
|
46
|
+
- `.planning/config.json` `researchDepth` field contract
|
|
47
|
+
- LangGraph conditional edges — adaptive agent invocation based on workflow state
|
|
48
|
+
- Asai et al. "Self-RAG: Learning to Retrieve, Generate, and Critique through Self-Reflection" (ICLR 2024) — conditional retrieval/synthesis based on need
|
|
49
|
+
- Anthropic "Building effective agents" (Dec 2024) — routing workflows match task complexity to agent selection
|
|
50
|
+
|
|
51
|
+
## D6 — Mapper Staleness: Standalone Workflow
|
|
52
|
+
- `get-shit-done/workflows/map-codebase.md` lines 35-62 (GSD staleness check with 3 options)
|
|
53
|
+
- `get-shit-done/workflows/new-project.md` lines 61-80 (brownfield offer delegates to map-codebase)
|
|
54
|
+
- `distilled/workflows/map-codebase.md` (standalone, re-runnable)
|
|
55
|
+
- `distilled/workflows/new-project.md` (auto-invoke for brownfield via skill reference)
|
|
56
|
+
- Aider (aider.chat) — dynamic tree-sitter-based repo maps generated on-demand (validates freshness-over-cache approach)
|
|
57
|
+
- Cursor — continuous background indexing (cached approach; shows both are production-valid tradeoffs)
|
|
58
|
+
|
|
59
|
+
## D7 — Milestone Hierarchy and Phase Continuation
|
|
60
|
+
- `get-shit-done/workflows/new-milestone.md` lines 101-173 (milestone-aware researchers)
|
|
61
|
+
- `get-shit-done/workflows/new-milestone.md` line 269 (phase numbering continuation)
|
|
62
|
+
- `distilled/README.md` lifecycle diagram
|
|
63
|
+
- `.planning/SPEC.md` "Long-Term Lifecycle" section
|
|
64
|
+
- Erol, Hendler & Nau / Nau et al. Hierarchical Task Networks (JAIR 2003) — foundational milestone→phase→task decomposition in AI planning
|
|
65
|
+
- PMI PMBOK Work Breakdown Structure (WBS) standard — industry-standard phase/task hierarchy
|
|
66
|
+
- Khot et al. "Decomposed Prompting" (ICLR 2023) — task decomposition improves LLM performance on multi-step work
|
|
67
|
+
|
|
68
|
+
## D8 — Advisory Git Protocol
|
|
69
|
+
- `agents/_archive/gsd-executor.md` (mandatory commit in algorithm, TDD flow)
|
|
70
|
+
- `agents/executor.md` lines 57-64 (Git Guidance — repo-native, advisory)
|
|
71
|
+
- Industry consensus: Aider, GitHub Copilot, Cursor, Codex CLI, OpenCode — all treat git as advisory/user-configured; no major AI coding tool enforces a specific commit or branch convention
|
|
72
|
+
|
|
73
|
+
## D9 — Adapter Generation Over Conversion
|
|
74
|
+
- `get-shit-done/install.js` (GSD converter with per-runtime conversion logic)
|
|
75
|
+
- `get-shit-done/workflows/new-project.md` (851 lines, 10+ AskUserQuestion calls, 7 Task() calls)
|
|
76
|
+
- `bin/gsdd.mjs` (thin CLI entrypoint and adapter dispatcher)
|
|
77
|
+
- `bin/adapters/` (vendor-specific adapter generation)
|
|
78
|
+
- `distilled/templates/delegates/plan-checker.md` (single payload source for native checker generation)
|
|
79
|
+
- `.planning/SPEC.md` "Agent Integration Strategy" section
|
|
80
|
+
- AGENTS.md Linux Foundation standard: agents.md
|
|
81
|
+
|
|
82
|
+
## D10 — Context Isolation: Summaries Up, Documents to Disk
|
|
83
|
+
- `get-shit-done/workflows/new-project.md` lines 544-706 (4 researchers write to files, return summaries)
|
|
84
|
+
- Delegate files in `distilled/templates/delegates/` (return format instructions)
|
|
85
|
+
- `agents/synthesizer.md` (reads full research files from disk)
|
|
86
|
+
- Anthropic Agent Teams (Feb 2026): "Shared State, Not Shared Context"
|
|
87
|
+
- AI21 Modular Intelligence (Feb 2026): orchestrator-based designs prevent context drift
|
|
88
|
+
|
|
89
|
+
## D11 — Quick-Work Lane
|
|
90
|
+
- `get-shit-done/workflows/quick.md` (454 lines, two modes, STATE.md tracking)
|
|
91
|
+
- `distilled/workflows/quick.md` (~120 lines, single mode, LOG.md tracking)
|
|
92
|
+
- Crystal Clear (Cockburn 2004) — ceremony scales with team size and criticality; lightweight methods prescribed for small/low-criticality work
|
|
93
|
+
- Kanban class-of-service (Anderson 2010) — routing tasks by size/urgency to appropriate workflow lanes
|
|
94
|
+
- Anthropic "Building effective agents" (Dec 2024) — match workflow complexity to task complexity
|
|
95
|
+
|
|
96
|
+
## D12 — Session Persistence Without State File
|
|
97
|
+
- `get-shit-done/workflows/pause-work.md` (123 lines, phase-scoped checkpoint)
|
|
98
|
+
- `get-shit-done/workflows/resume-project.md` (307 lines, STATE.md-dependent)
|
|
99
|
+
- `get-shit-done/workflows/progress.md` (382 lines, gsd-tools.cjs-dependent)
|
|
100
|
+
- `distilled/workflows/pause.md`, `distilled/workflows/resume.md`, `distilled/workflows/progress.md`
|
|
101
|
+
- `.internal-research/gsd-distilled-audit-13th-march-2026.md` — Highest-ROI recommendation #3
|
|
102
|
+
|
|
103
|
+
## D13 — Mechanical Invariant Enforcement
|
|
104
|
+
- `tests/gsdd.invariants.test.cjs` lines 1015+ (6 suites, ~106 assertions)
|
|
105
|
+
- OpenAI Harness Engineering blog (Feb 2026): "error messages as enforcement mechanism"
|
|
106
|
+
- External audit (2026-03-13): recommendation #4 "Mechanize the framework's invariants"
|
|
107
|
+
- PRs #20-23: orphan `</output>` tags survived 4 manual review cycles before G4 caught them
|
|
108
|
+
|
|
109
|
+
## D14 — Headless Mode
|
|
110
|
+
- `get-shit-done/workflows/new-project.md` lines 9-40 (GSD headless predecessor)
|
|
111
|
+
- Claude Code: `-p` flag for headless execution (docs.anthropic.com)
|
|
112
|
+
- Codex CLI: `--quiet` and `--auto-edit` flags (developers.openai.com/codex/cli/reference)
|
|
113
|
+
- Cline CLI 2.0: explicit headless CI/CD mode (devops.com, 2025)
|
|
114
|
+
|
|
115
|
+
## D15 — Model Profile Propagation
|
|
116
|
+
- `get-shit-done/references/model-profiles.md` + `model-profile-resolution.md` (GSD reference)
|
|
117
|
+
- OpenSpec: portable spec core is tool-agnostic (openspec.dev)
|
|
118
|
+
- Claude Code: `model:` field with aliases (docs.anthropic.com/en/docs/claude-code/sub-agents)
|
|
119
|
+
- OpenCode: `model:` in agent frontmatter (opencode.ai/docs/agents)
|
|
120
|
+
- Agent Skills standard: no `model:` field in spec (agentskills.io/specification)
|
|
121
|
+
|
|
122
|
+
## D16 — Template Versioning via Generation Manifest
|
|
123
|
+
- `get-shit-done/install.js` lines 1227-1327 (SHA-256 manifest + backup directory)
|
|
124
|
+
- OpenSpec: managed blocks with bounded upsert (openspec.dev)
|
|
125
|
+
- Angular/Turborepo/Next.js: ordered migrations with dry-run preview
|
|
126
|
+
- Langfuse: generation/prompt versioning with hash-based change detection (langfuse.com/docs/prompts)
|
|
127
|
+
|
|
128
|
+
## D17 — CLI Composition Root Boundary
|
|
129
|
+
- `get-shit-done/install.js` (GSD monolithic install/conversion surface)
|
|
130
|
+
- `bin/gsdd.mjs`, `bin/lib/init.mjs`, `bin/lib/templates.mjs`, `bin/lib/models.mjs`
|
|
131
|
+
- `tests/gsdd.init.test.cjs`, `tests/gsdd.models.test.cjs`, `tests/gsdd.manifest.test.cjs`
|
|
132
|
+
- Seemann "Dependency Injection in .NET" (Manning 2011) — named "Composition Root" pattern
|
|
133
|
+
- Martin "Clean Architecture" (2017) — main component as the outermost wiring layer
|
|
134
|
+
- Standard pattern in oclif, Commander.js, yargs, Cobra CLIs
|
|
135
|
+
|
|
136
|
+
## D18 — Codex CLI Native Adapter
|
|
137
|
+
- OpenAI Codex CLI docs: developers.openai.com/codex/subagents
|
|
138
|
+
- Codex CLI v0.115.0 release notes: github.com/openai/codex/releases/tag/rust-v0.115.0
|
|
139
|
+
- Agent Skills standard: developers.openai.com/codex/skills
|
|
140
|
+
- `README.md` and `docs/RUNTIME-SUPPORT.md` distinguish Codex CLI from Codex VS Code/app fallback behavior
|
|
141
|
+
- `bin/adapters/codex.mjs` (implementation)
|
|
142
|
+
- Live validation fixtures (2026-03-17): 3 Codex test runs confirming happy path, revision, max-3 escalation
|
|
143
|
+
|
|
144
|
+
## D19 — Scenario-Based Eval Coverage
|
|
145
|
+
- OpenAI: "Testing Agent Skills Systematically with Evals" (developers.openai.com/blog/eval-skills)
|
|
146
|
+
- Anthropic: "Demystifying Evals for AI Agents" (anthropic.com/engineering/demystifying-evals-for-ai-agents)
|
|
147
|
+
- Block: "Testing Pyramid for AI Agents" (engineering.block.xyz/blog/testing-pyramid-for-ai-agents)
|
|
148
|
+
- `tests/gsdd.scenarios.test.cjs` (S1–S5, ~37 assertions)
|
|
149
|
+
|
|
150
|
+
## D20 — Workspace Health Diagnostics
|
|
151
|
+
- `get-shit-done/workflows/health.md` (157 lines, GSD predecessor)
|
|
152
|
+
- OpenAI Harness Engineering (Feb 2026): error messages as enforcement mechanism
|
|
153
|
+
- External audit (2026-03-13): recommendation #3 "Add just enough: status/resume/progress/health"
|
|
154
|
+
- `bin/lib/health.mjs`, `tests/gsdd.health.test.cjs`, `tests/gsdd.guards.test.cjs` (G14)
|
|
155
|
+
|
|
156
|
+
## D21 — OWASP Authorization Matrix
|
|
157
|
+
- OWASP Authorization Testing Automation Cheat Sheet: pivot-format matrix standard
|
|
158
|
+
- OWASP Top 10 for Agentic Applications 2026: A1 Agent Overreach, A4 Insufficient Authorization
|
|
159
|
+
- External audits (2026-03-13, 2026-03-17): independently flagged auth verification gap
|
|
160
|
+
- `distilled/templates/auth-matrix.md`, `agents/integration-checker.md` (Step 4a)
|
|
161
|
+
|
|
162
|
+
## D22 — Delegate Layer Architecture
|
|
163
|
+
- Anthropic multi-agent guidance: orchestration patterns with isolated sub-agents
|
|
164
|
+
- OpenAI Harness Engineering (2026): delegate pattern for reusable sub-agent behavior
|
|
165
|
+
- OpenDev "Terminal Agents" (arXiv 2603.05344): multi-agent coordination with explicit role contracts
|
|
166
|
+
- `distilled/templates/delegates/` (delegate files)
|
|
167
|
+
- `distilled/workflows/*.md` (`<delegate>` blocks)
|
|
168
|
+
|
|
169
|
+
## D23 — Mapper Output Quantification
|
|
170
|
+
- `ideas.md` (internal, Feb 2026): direct per-tool comparison — "84% declining > uses constructor injection"
|
|
171
|
+
- ArXiv 2602.20478 (Codified Context): structured quantifiable facts enable JIT context loading
|
|
172
|
+
- GetDX measurement framework (2026): adoption % as primary signal for convention strength
|
|
173
|
+
- Anthropic 2026 Agentic Coding Trends: context quality as primary competitive advantage
|
|
174
|
+
- `distilled/templates/codebase/conventions.md`, `distilled/templates/delegates/mapper-quality.md`
|
|
175
|
+
|
|
176
|
+
## D24 — Consumer Governance Completeness
|
|
177
|
+
- Anthropic "Effective harnesses for long-running agents" (2026): incomplete maps cause agent failure
|
|
178
|
+
- Agent Skills specification (agentskills.io): progressive disclosure requires complete top-level map
|
|
179
|
+
- HumanLayer "Skill Issue" (2026): AGENTS.md should be a complete capability map
|
|
180
|
+
- External audits (2026-03-13, 2026-03-17): documentation accuracy as top adoption blocker
|
|
181
|
+
- `distilled/templates/agents.block.md`, `tests/gsdd.guards.test.cjs` (G18)
|
|
182
|
+
|
|
183
|
+
## D25 — Consumer First-Run Experience
|
|
184
|
+
- Anthropic harness engineering (2025-2026): "honest constraints over vague prompting"
|
|
185
|
+
- OpenAI Codex skills documentation: clear per-platform invocation patterns
|
|
186
|
+
- Both GSDD external audits (2026-03-13, 2026-03-17): "architecture solid, presentation lags"
|
|
187
|
+
- `README.md`, `distilled/templates/agents.block.md`, `bin/lib/init.mjs`, `tests/gsdd.guards.test.cjs` (G19)
|
|
188
|
+
|
|
189
|
+
## D26 — Session Continuity Contract Hardening
|
|
190
|
+
- Anthropic "Effective harnesses for long-running agents" (2026): artifact-based session handoff
|
|
191
|
+
- GitHub "How to build reliable AI workflows with agentic primitives" (2026): session splitting
|
|
192
|
+
- OpenAI harness engineering (2026): incremental progress tracking is the key multi-session mechanism
|
|
193
|
+
- OpenDev terminal agents (arXiv 2603.05344): runtime state must be derivable from artifacts
|
|
194
|
+
- `distilled/workflows/pause.md`, `distilled/workflows/resume.md`, `distilled/workflows/progress.md`
|
|
195
|
+
- `tests/gsdd.guards.test.cjs` (G20)
|
|
196
|
+
|
|
197
|
+
## D27 — Consumer-Ready Surface Completion
|
|
198
|
+
- External audit (2026-03-13): "architecture solid, presentation lags implementation"
|
|
199
|
+
- External audit (2026-03-17): "consumer surface identified as #1 bottleneck"
|
|
200
|
+
- External audit (2026-03-18): "docs should close the consumer journey"
|
|
201
|
+
- `README.md` (6 new subsections), `tests/gsdd.guards.test.cjs` (G21)
|
|
202
|
+
|
|
203
|
+
## D28 — Workflow Completion Routing
|
|
204
|
+
- Consumer audit (2026-03-21): "agent never proactively suggested the next GSDD command"
|
|
205
|
+
- `get-shit-done/workflows/progress.md` (GSD "Next Up" block pattern)
|
|
206
|
+
- Anthropic "Building effective agents" (2025): explicit handoff points with clear next actions
|
|
207
|
+
- `distilled/workflows/*.md` (9 `<completion>` sections), `tests/gsdd.guards.test.cjs` (G22)
|
|
208
|
+
|
|
209
|
+
## D29 — Approach Exploration
|
|
210
|
+
- Anthropic "Building effective agents" (2025): sub-agents return condensed summaries
|
|
211
|
+
- LangChain "Context Engineering for Agents" (2025): Write/Select/Compress/Isolate patterns
|
|
212
|
+
- `get-shit-done/workflows/discuss-phase.md` (gray area identification, GSD source)
|
|
213
|
+
- `get-shit-done/workflows/list-phase-assumptions.md` (5-dimension assumption surfacing)
|
|
214
|
+
- `get-shit-done/workflows/discovery-phase.md` (3-level research workflow)
|
|
215
|
+
- `agents/approach-explorer.md`, `distilled/templates/delegates/approach-explorer.md`
|
|
216
|
+
|
|
217
|
+
## D30 — Hardening Propagation
|
|
218
|
+
- D28 consumer audit (2026-03-21): persistence failures at every workflow boundary
|
|
219
|
+
- Huang et al. "LLMs Cannot Self-Correct Reasoning Yet" (ICLR 2024): LLMs need external feedback
|
|
220
|
+
- Kamoi et al. "When Can LLMs Actually Correct Their Own Mistakes?" (TACL 2024): self-correction requires reliable external feedback
|
|
221
|
+
- Anthropic long-context research (2024): instructions at decision points followed more reliably
|
|
222
|
+
- `distilled/workflows/quick.md`, `distilled/workflows/map-codebase.md`, `tests/gsdd.guards.test.cjs` (G24)
|
|
223
|
+
|
|
224
|
+
## D31 — Outcome Dimension for Plan-Checker
|
|
225
|
+
- Yu et al. "Outcome-Refining Process Supervision for Code Generation" (ICML 2025): +26.9% correctness with hybrid process+outcome supervision
|
|
226
|
+
- Rajan "Multi-Agent Code Verification via Information Theory" (2025): diminishing returns plateau at 4-7 dimensions
|
|
227
|
+
- Lightman et al. "Let's Verify Step by Step" (ICLR 2024): process supervision significantly outperforms outcome-only
|
|
228
|
+
- `distilled/templates/delegates/plan-checker.md` (`goal_achievement` dimension)
|
|
229
|
+
|
|
230
|
+
## D32 — Quick Workflow Alignment Hardening
|
|
231
|
+
- Risk-adaptive autonomy pattern (AWS, Azure, Anthropic 2025-2026): confirmation gates scale with consequence
|
|
232
|
+
- Anthropic agent autonomy research (2026): human-on-the-loop > human-in-the-loop
|
|
233
|
+
- Madaan et al. "Self-Refine" (NeurIPS 2023): 1 revision cycle captures most improvement
|
|
234
|
+
- `distilled/workflows/quick.md` (Steps 3.5-3.7), `tests/gsdd.guards.test.cjs` (G24)
|
|
235
|
+
|
|
236
|
+
## D33 — Quick Approach Clarification
|
|
237
|
+
- Anthropic "Measuring AI agent autonomy in practice" (2025): Claude asks 2x+ on complex tasks
|
|
238
|
+
- Knight First Amendment Institute "Levels of Autonomy for AI Agents" (2025): 5-level autonomy spectrum
|
|
239
|
+
- Anthropic "Framework for safe and trustworthy agents" (2025): recommendation-first framing
|
|
240
|
+
- Martin Fowler "Humans and Agents in SE Loops" (2025): HOTL > HITL
|
|
241
|
+
- `distilled/workflows/quick.md` (Step 2.5), `tests/gsdd.guards.test.cjs` (G24)
|
|
242
|
+
|
|
243
|
+
## D34 — Context Engineering Applied to Quick Workflow
|
|
244
|
+
- Anthropic Claude Prompting Best Practices: XML tags for semantic structure and attention
|
|
245
|
+
- Selective Prompt Anchoring (arXiv 2408.09121, 2024): up to 12.9% Pass@1 improvement from strategic anchoring
|
|
246
|
+
- `agentskit-architect SKILL.md` (prompty): identical hybrid XML-outer/markdown-inner structure
|
|
247
|
+
- `distilled/DESIGN.md` (DISTILLATION.md authority language resolution)
|
|
248
|
+
- `distilled/workflows/quick.md` (`<anti_patterns>` section, STOP normalization)
|
|
249
|
+
|
|
250
|
+
## D35 — Skills-Native Runtimes vs Governance Adapters
|
|
251
|
+
- Live consumer testing (2026-03-20): Cursor and Copilot auto-discover `.agents/skills/`
|
|
252
|
+
- User-performed live validation (2026-03-25): Gemini confirms same behavior
|
|
253
|
+
- `bin/lib/init.mjs` (adapter registry and root-governance generator)
|
|
254
|
+
- `README.md`, `docs/RUNTIME-SUPPORT.md`, `docs/USER-GUIDE.md`, `distilled/templates/agents.block.md`, `tests/gsdd.guards.test.cjs`
|
|
255
|
+
|
|
256
|
+
## D36 — Interactive Init Wizard
|
|
257
|
+
- `bin/lib/init.mjs` existing adapter-selection seam
|
|
258
|
+
- Local research on adjacent `prompty` repo: portable skills as primary install surface
|
|
259
|
+
- Repo lesson LL-INSTALL-DX-BEFORE-ALIAS-CLEANUP (lessons-learned.md)
|
|
260
|
+
- `bin/lib/init.mjs`, `bin/gsdd.mjs`, `tests/gsdd.init.test.cjs`
|
|
261
|
+
- npm init, Vite `create-vite`, Next.js `create-next-app`, Angular CLI `ng new`, Astro `create astro` — all use TTY-interactive wizard with headless flags (industry standard for project scaffolding)
|
|
262
|
+
|
|
263
|
+
## D37 — Mutability-Driven Workflow Classification
|
|
264
|
+
- `distilled/workflows/verify.md`, `new-project.md`, `audit-milestone.md`, `pause.md`, `resume.md` (all require artifact writes)
|
|
265
|
+
- `distilled/workflows/progress.md` (only read-only workflow)
|
|
266
|
+
- Consumer audit: verification reports lost when persistence skipped
|
|
267
|
+
- `bin/gsdd.mjs`, `bin/lib/rendering.mjs`, `tests/gsdd.guards.test.cjs` (G27)
|
|
268
|
+
- Meyer's Command-Query Separation (CQS, "Object-Oriented Software Construction" 1988) — classify operations by mutation behavior, not semantic category
|
|
269
|
+
- Greg Young's CQRS (2010) — CQS applied at the architectural level
|
|
270
|
+
- Unix rwx model + AWS IAM / Kubernetes RBAC — classify by mutation semantics as industry norm
|
|
271
|
+
|
|
272
|
+
## D38 — Retroactive Artifact Enforcement
|
|
273
|
+
- `.internal-research/gaps.md` I27 entry (two occurrences, root-cause analysis, close conditions)
|
|
274
|
+
- `distilled/workflows/execute.md` (D28 SUMMARY.md persistence gate)
|
|
275
|
+
- `distilled/workflows/verify.md` (D28 VERIFICATION.md persistence gate + D28/G30 ROADMAP closure)
|
|
276
|
+
- `distilled/workflows/audit-milestone.md` (retroactive artifact completeness check)
|
|
277
|
+
- `.internal-research/strategy.md` (kernel simplicity vs policy depth trade-off)
|
|
278
|
+
- `tests/gsdd.guards.test.cjs` (G30 guard for ROADMAP closure on pass)
|
|
279
|
+
- NIST SP 800-53 Rev. 5 (2020) — detective vs preventive controls as equally valid risk-management strategies
|
|
280
|
+
- ISO 27001 risk treatment — choice of detective vs preventive depends on cost/complexity tradeoff
|
|
281
|
+
- Reason's Swiss Cheese model (1990) — layered defense where retroactive audit catches what preventive layers miss
|
|
282
|
+
|
|
283
|
+
## D39 — Brownfield Entry Wiring
|
|
284
|
+
- User brownfield audit finding (2026-03-20): map-codebase was useful but not presented as the start of a lightweight feature-work lane
|
|
285
|
+
- Existing quick-workflow hardening decisions D32-D34: quick already had alignment and scope controls, so the open gap was routing/context, not quick quality
|
|
286
|
+
- `distilled/workflows/quick.md` (Step 2 codebase-context read, planner delegate context)
|
|
287
|
+
- `distilled/workflows/map-codebase.md` (completion offers `/gsdd-quick` as the brownfield lane)
|
|
288
|
+
- `tests/gsdd.guards.test.cjs`, `tests/gsdd.scenarios.test.cjs`
|
|
289
|
+
|
|
290
|
+
## D40 — Three-Layer Continuity Boundary
|
|
291
|
+
- Phase 7 continuity review across all 14 workflow files: durable artifacts and live-state artifacts were present, but compressed judgment was not explicitly modeled
|
|
292
|
+
- D12 and D26: artifact/state continuity existed already, but without a named three-layer boundary
|
|
293
|
+
- `.planning/SPEC.md` (Continuity Layers constraint, Key Decisions row)
|
|
294
|
+
- `distilled/workflows/resume.md` (first workflow adopting the boundary directly)
|
|
295
|
+
|
|
296
|
+
## D41 — Compressed Judgment Persistence Surface
|
|
297
|
+
- Phase 8 review of `plan.md`, `execute.md`, `verify.md`, and `resume.md` as the four judgment-recovery entry points
|
|
298
|
+
- `distilled/workflows/pause.md` (checkpoint `<judgment>` write)
|
|
299
|
+
- `distilled/workflows/execute.md` (`SUMMARY.md` `<judgment>` write and prior-summary read)
|
|
300
|
+
- `distilled/workflows/plan.md`, `distilled/workflows/verify.md`, `distilled/workflows/resume.md` (judgment reads)
|
|
301
|
+
- `.planning/SPEC.md` (Key Decisions row)
|
|
302
|
+
|
|
303
|
+
## D42 — Session-Boundary Safety
|
|
304
|
+
- `distilled/workflows/resume.md` (`.continue-here.bak` retained across dispatch)
|
|
305
|
+
- `distilled/workflows/plan.md`, `distilled/workflows/execute.md`, `distilled/workflows/verify.md`, `distilled/workflows/quick.md` (fallback `.bak` judgment reads)
|
|
306
|
+
- `distilled/workflows/pause.md` (stale `.bak` crash-cleanup path)
|
|
307
|
+
- `tests/gsdd.guards.test.cjs`, `tests/gsdd.invariants.test.cjs`
|
|
308
|
+
|
|
309
|
+
## D43 — Resume Provenance Truth Split
|
|
310
|
+
- `.internal-research/gaps.md` (`I29`, `I30`)
|
|
311
|
+
- `.internal-research/TODO.md` (stale checkpoint/worktree drift notes)
|
|
312
|
+
- `.internal-research/consumer-audits/worktree-provenance-and-checkpoint-drift-2026-04-12.md`
|
|
313
|
+
- `distilled/workflows/pause.md`, `distilled/workflows/resume.md`
|
|
314
|
+
- `bin/lib/provenance.mjs`
|
|
315
|
+
- `tests/phase.test.cjs`, `tests/gsdd.guards.test.cjs`, `tests/gsdd.invariants.test.cjs`
|
|
316
|
+
|
|
317
|
+
## D44 — Warning-First Transition Safety And Fail-Closed Terminal Writes
|
|
318
|
+
- `.planning/SPEC.md` (`LAUNCH-12`, `LAUNCH-13`)
|
|
319
|
+
- `.planning/ROADMAP.md` (Phase 20 and Phase 22 scope notes)
|
|
320
|
+
- `distilled/workflows/plan.md`, `execute.md`, `quick.md`, `new-milestone.md`, `complete-milestone.md`
|
|
321
|
+
- `distilled/workflows/verify.md`, `distilled/workflows/audit-milestone.md`
|
|
322
|
+
- `bin/lib/provenance.mjs`
|
|
323
|
+
- `tests/gsdd.guards.test.cjs`, `tests/gsdd.invariants.test.cjs`, `tests/gsdd.scenarios.test.cjs`
|
|
324
|
+
|
|
325
|
+
## D45 — Fork-Honest Launch Posture Before Identity Migration
|
|
326
|
+
- `.planning/SPEC.md` (v1.2.0 active requirements and posture)
|
|
327
|
+
- `.planning/ROADMAP.md` (Phase 23-27 ownership)
|
|
328
|
+
- `.internal-research/TODO.md`, `.internal-research/gaps.md` (`I39`), `.internal-research/lessons-learned.md`
|
|
329
|
+
- `.internal-research/release-jury-verdict-2026-04-15.md`
|
|
330
|
+
- `.internal-research/release-jury-public-truth-drift-2026-04-15.md`
|
|
331
|
+
- `.internal-research/public-release-two-layer-brief-2026-04-15.md`
|
|
332
|
+
- `get-shit-done/workflows/progress.md`
|
|
333
|
+
|
|
334
|
+
## D46 — Archived Milestone Routing With Retained ROADMAP
|
|
335
|
+
- `.internal-research/gaps.md` (`I39`)
|
|
336
|
+
- `.planning/MILESTONES.md`
|
|
337
|
+
- `.planning/v1.1-MILESTONE-AUDIT.md`
|
|
338
|
+
- `distilled/workflows/progress.md`
|
|
339
|
+
- `tests/gsdd.guards.test.cjs`, `tests/gsdd.scenarios.test.cjs`, `tests/gsdd.health.test.cjs`
|
|
340
|
+
- `get-shit-done/workflows/progress.md`
|
|
341
|
+
|
|
342
|
+
## D47 — Brownfield Quick-Win Repair
|
|
343
|
+
- `.planning/SPEC.md` (`DX-03`, `BROWNFIELD-01`)
|
|
344
|
+
- `distilled/workflows/quick.md`, `distilled/workflows/progress.md`
|
|
345
|
+
- `distilled/workflows/new-project.md`, `distilled/workflows/map-codebase.md`
|
|
346
|
+
- `README.md`, `docs/USER-GUIDE.md`, `distilled/README.md`
|
|
347
|
+
- `tests/gsdd.guards.test.cjs`, `tests/gsdd.scenarios.test.cjs`, `tests/gsdd.invariants.test.cjs`
|
|
348
|
+
|
|
349
|
+
## D48 — Shared Lifecycle Evaluator And Dual-Canonical Runtime Boundary
|
|
350
|
+
- `.planning/SPEC.md` (`ENGINE-01`, `ENGINE-02`, `ENGINE-05`)
|
|
351
|
+
- `.planning/ROADMAP.md` (Phases 29 and 32)
|
|
352
|
+
- `.internal-research/TODO.md`, `.internal-research/gaps.md` (`I42`)
|
|
353
|
+
- `bin/lib/lifecycle-state.mjs`, `bin/lib/health.mjs`, `bin/lib/health-truth.mjs`
|
|
354
|
+
- `tests/phase.test.cjs`, `tests/gsdd.health.test.cjs`, `tests/gsdd.guards.test.cjs`
|
|
355
|
+
- `get-shit-done/workflows/progress.md`
|
|
356
|
+
|
|
357
|
+
## D49 — Deterministic Lifecycle Preflight Gates
|
|
358
|
+
- `.planning/SPEC.md` (`ENGINE-01`, `ENGINE-02`, `ENGINE-03`)
|
|
359
|
+
- `.planning/ROADMAP.md` (Phase 30)
|
|
360
|
+
- `bin/lib/lifecycle-preflight.mjs`, `bin/lib/lifecycle-state.mjs`
|
|
361
|
+
- `bin/gsdd.mjs`, `bin/lib/init.mjs`
|
|
362
|
+
- `distilled/workflows/execute.md`, `distilled/workflows/verify.md`
|
|
363
|
+
- `distilled/workflows/audit-milestone.md`, `distilled/workflows/complete-milestone.md`
|
|
364
|
+
- `distilled/workflows/new-milestone.md`, `distilled/workflows/resume.md`, `distilled/workflows/progress.md`
|
|
365
|
+
- `tests/phase.test.cjs`, `tests/gsdd.guards.test.cjs`, `tests/gsdd.scenarios.test.cjs`
|
|
366
|
+
- `get-shit-done/workflows/progress.md`
|
|
367
|
+
|
|
368
|
+
## D50 — Evidence-Gated Closure Matrix
|
|
369
|
+
- `.planning/SPEC.md` (`ENGINE-04`, `VERIFY-01`)
|
|
370
|
+
- `.planning/ROADMAP.md` (Phase 31)
|
|
371
|
+
- `bin/lib/evidence-contract.mjs`, `bin/lib/lifecycle-preflight.mjs`
|
|
372
|
+
- `distilled/workflows/verify.md`, `distilled/workflows/audit-milestone.md`, `distilled/workflows/complete-milestone.md`
|
|
373
|
+
- `tests/phase.test.cjs`, `tests/gsdd.guards.test.cjs`, `tests/gsdd.scenarios.test.cjs`
|
|
374
|
+
- `agents/_archive/gsd-verifier.md`, `agents/_archive/gsd-integration-checker.md`
|
|
375
|
+
|
|
376
|
+
## D51 — Deterministic Runtime Surface Freshness
|
|
377
|
+
- `.planning/SPEC.md` (`ENGINE-05`)
|
|
378
|
+
- `.planning/ROADMAP.md` runtime-freshness milestone entry
|
|
379
|
+
- `.internal-research/gaps.md` (`I42`)
|
|
380
|
+
- `bin/lib/runtime-freshness.mjs`, `bin/lib/health.mjs`, `bin/lib/health-truth.mjs`, `bin/lib/rendering.mjs`
|
|
381
|
+
- `bin/adapters/claude.mjs`, `bin/adapters/opencode.mjs`, `bin/adapters/codex.mjs`
|
|
382
|
+
- `README.md`, `docs/USER-GUIDE.md`, `docs/RUNTIME-SUPPORT.md`, `distilled/README.md`, `distilled/DESIGN.md`
|
|
383
|
+
- Workflow docs use `node .planning/bin/gsdd.mjs ...` for internal helper commands and human docs prefer `npx -y gsdd-cli init/update/health`
|
|
384
|
+
- `tests/phase.test.cjs`, `tests/gsdd.health.test.cjs`, `tests/gsdd.plan.adapters.test.cjs`, `tests/gsdd.guards.test.cjs`, `tests/gsdd.scenarios.test.cjs`
|
|
385
|
+
- `get-shit-done/workflows/progress.md`
|
|
386
|
+
|
|
385
387
|
## D52 — Generic Checkpoint Routing Ownership
|
|
386
388
|
- `.planning/SPEC.md` (`ENGINE-01`, `ENGINE-03`)
|
|
387
389
|
- `.internal-research/gaps.md` (`I45`)
|
|
@@ -453,11 +455,11 @@
|
|
|
453
455
|
- `tests/gsdd.init.test.cjs`, `tests/gsdd.health.test.cjs`, `tests/gsdd.manifest.test.cjs`, `tests/phase.test.cjs`, `tests/gsdd.scenarios.test.cjs`
|
|
454
456
|
|
|
455
457
|
---
|
|
456
|
-
|
|
457
|
-
## Maintenance
|
|
458
|
-
|
|
459
|
-
Update this file when:
|
|
460
|
-
- A new design decision is added to `distilled/DESIGN.md` (add entry here before or alongside the DESIGN.md commit)
|
|
461
|
-
- An existing decision's evidence changes (update the relevant entry)
|
|
462
|
-
|
|
463
|
-
Guard: G31 in `tests/gsdd.guards.test.cjs` asserts every decision in DESIGN.md ToC has an entry here with at least one source.
|
|
458
|
+
|
|
459
|
+
## Maintenance
|
|
460
|
+
|
|
461
|
+
Update this file when:
|
|
462
|
+
- A new design decision is added to `distilled/DESIGN.md` (add entry here before or alongside the DESIGN.md commit)
|
|
463
|
+
- An existing decision's evidence changes (update the relevant entry)
|
|
464
|
+
|
|
465
|
+
Guard: G31 in `tests/gsdd.guards.test.cjs` asserts every decision in DESIGN.md ToC has an entry here with at least one source.
|