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.
Files changed (100) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +609 -608
  3. package/agents/DISTILLATION.md +421 -421
  4. package/agents/README.md +62 -62
  5. package/agents/approach-explorer.md +361 -361
  6. package/agents/debugger.md +82 -82
  7. package/agents/executor.md +394 -394
  8. package/agents/integration-checker.md +318 -318
  9. package/agents/mapper.md +103 -103
  10. package/agents/planner.md +313 -313
  11. package/agents/researcher.md +84 -84
  12. package/agents/roadmapper.md +296 -296
  13. package/agents/synthesizer.md +236 -236
  14. package/agents/verifier.md +337 -337
  15. package/bin/adapters/agents.mjs +34 -34
  16. package/bin/adapters/claude.mjs +191 -191
  17. package/bin/adapters/codex.mjs +85 -85
  18. package/bin/adapters/index.mjs +20 -20
  19. package/bin/adapters/opencode.mjs +278 -278
  20. package/bin/gsdd.mjs +123 -116
  21. package/bin/lib/cli-utils.mjs +28 -28
  22. package/bin/lib/evidence-contract.mjs +112 -112
  23. package/bin/lib/file-ops.mjs +186 -144
  24. package/bin/lib/health-truth.mjs +181 -178
  25. package/bin/lib/health.mjs +246 -226
  26. package/bin/lib/init-flow.mjs +247 -231
  27. package/bin/lib/init-prompts.mjs +248 -247
  28. package/bin/lib/init-runtime.mjs +191 -190
  29. package/bin/lib/init.mjs +17 -17
  30. package/bin/lib/lifecycle-preflight.mjs +347 -325
  31. package/bin/lib/lifecycle-state.mjs +351 -267
  32. package/bin/lib/manifest.mjs +116 -114
  33. package/bin/lib/models.mjs +411 -411
  34. package/bin/lib/phase.mjs +360 -358
  35. package/bin/lib/plan-constants.mjs +30 -30
  36. package/bin/lib/provenance.mjs +109 -106
  37. package/bin/lib/rendering.mjs +115 -83
  38. package/bin/lib/runtime-freshness.mjs +214 -214
  39. package/bin/lib/templates.mjs +225 -224
  40. package/bin/lib/workspace-root.mjs +2 -1
  41. package/distilled/DESIGN.md +2333 -2323
  42. package/distilled/EVIDENCE-INDEX.md +394 -392
  43. package/distilled/README.md +196 -193
  44. package/distilled/SKILL.md +86 -85
  45. package/distilled/templates/agents.block.md +21 -21
  46. package/distilled/templates/agents.md +6 -6
  47. package/distilled/templates/approach.md +232 -232
  48. package/distilled/templates/auth-matrix.md +78 -78
  49. package/distilled/templates/brownfield-change/CHANGE.md +99 -0
  50. package/distilled/templates/brownfield-change/HANDOFF.md +38 -0
  51. package/distilled/templates/brownfield-change/VERIFICATION.md +56 -0
  52. package/distilled/templates/codebase/architecture.md +110 -110
  53. package/distilled/templates/codebase/concerns.md +95 -95
  54. package/distilled/templates/codebase/conventions.md +193 -193
  55. package/distilled/templates/codebase/stack.md +96 -96
  56. package/distilled/templates/delegates/approach-explorer.md +25 -25
  57. package/distilled/templates/delegates/mapper-arch.md +26 -26
  58. package/distilled/templates/delegates/mapper-concerns.md +27 -27
  59. package/distilled/templates/delegates/mapper-quality.md +28 -28
  60. package/distilled/templates/delegates/mapper-tech.md +25 -25
  61. package/distilled/templates/delegates/plan-checker.md +68 -68
  62. package/distilled/templates/delegates/researcher-architecture.md +30 -30
  63. package/distilled/templates/delegates/researcher-features.md +30 -30
  64. package/distilled/templates/delegates/researcher-pitfalls.md +30 -30
  65. package/distilled/templates/delegates/researcher-stack.md +30 -30
  66. package/distilled/templates/delegates/researcher-synthesizer.md +31 -31
  67. package/distilled/templates/research/architecture.md +57 -57
  68. package/distilled/templates/research/features.md +23 -23
  69. package/distilled/templates/research/pitfalls.md +46 -46
  70. package/distilled/templates/research/stack.md +45 -45
  71. package/distilled/templates/research/summary.md +67 -67
  72. package/distilled/templates/roadmap.md +74 -62
  73. package/distilled/templates/spec.md +110 -110
  74. package/distilled/workflows/audit-milestone.md +275 -271
  75. package/distilled/workflows/complete-milestone.md +336 -332
  76. package/distilled/workflows/execute.md +454 -449
  77. package/distilled/workflows/map-codebase.md +253 -253
  78. package/distilled/workflows/new-milestone.md +242 -238
  79. package/distilled/workflows/new-project.md +398 -398
  80. package/distilled/workflows/pause.md +160 -156
  81. package/distilled/workflows/plan-milestone-gaps.md +183 -183
  82. package/distilled/workflows/plan.md +451 -447
  83. package/distilled/workflows/progress.md +227 -223
  84. package/distilled/workflows/quick.md +351 -347
  85. package/distilled/workflows/resume.md +220 -212
  86. package/distilled/workflows/verify-work.md +260 -260
  87. package/distilled/workflows/verify.md +431 -429
  88. package/docs/BROWNFIELD-PROOF.md +95 -95
  89. package/docs/RUNTIME-SUPPORT.md +80 -69
  90. package/docs/USER-GUIDE.md +394 -386
  91. package/docs/VERIFICATION-DISCIPLINE.md +59 -59
  92. package/docs/claude/context-monitor.md +98 -98
  93. package/docs/proof/consumer-node-cli/README.md +37 -37
  94. package/docs/proof/consumer-node-cli/ROADMAP.md +14 -14
  95. package/docs/proof/consumer-node-cli/SPEC.md +17 -17
  96. package/docs/proof/consumer-node-cli/brief.md +9 -9
  97. package/docs/proof/consumer-node-cli/phases/01-foundation/01-01-PLAN.md +34 -34
  98. package/docs/proof/consumer-node-cli/phases/01-foundation/01-01-SUMMARY.md +10 -10
  99. package/docs/proof/consumer-node-cli/phases/01-foundation/01-VERIFICATION.md +30 -30
  100. package/package.json +62 -61
@@ -1,95 +1,95 @@
1
- # Brownfield Proof
2
-
3
- This is the strongest tracked public proof for Workspine's release-floor claim: a real brownfield-style consumer repo that used the shipped workflow contract, hit a real failure, and recovered through the same `plan -> execute -> verify` loop.
4
-
5
- ## What this proves
6
-
7
- In a fresh consumer repo, Workspine produced:
8
-
9
- - durable planning artifacts
10
- - runnable workflow entry surfaces
11
- - a concrete phase plan
12
- - a real execution summary
13
- - a failed verification
14
- - a real fix
15
- - a successful re-verification
16
-
17
- That proves the repo-native delivery contract is not just conceptual.
18
-
19
- ## Public proof pack
20
-
21
- Open the tracked proof pack:
22
-
23
- - [Consumer proof pack index](proof/consumer-node-cli/README.md)
24
-
25
- Key exported artifacts:
26
-
27
- - [brief.md](proof/consumer-node-cli/brief.md)
28
- - [SPEC.md](proof/consumer-node-cli/SPEC.md)
29
- - [ROADMAP.md](proof/consumer-node-cli/ROADMAP.md)
30
- - [01-01-PLAN.md](proof/consumer-node-cli/phases/01-foundation/01-01-PLAN.md)
31
- - [01-01-SUMMARY.md](proof/consumer-node-cli/phases/01-foundation/01-01-SUMMARY.md)
32
- - [01-VERIFICATION.md](proof/consumer-node-cli/phases/01-foundation/01-VERIFICATION.md)
33
-
34
- ## The worked flow
35
-
36
- ### 1. Initialize a fresh consumer repo
37
-
38
- The exported proof pack comes from a new non-framework project that used the shipped `gsdd init` flow.
39
-
40
- The generated surface included:
41
-
42
- - portable `.agents/skills/gsdd-*`
43
- - consumer `.planning/` state
44
- - a Codex-native checker adapter
45
- - a compact consumer `AGENTS.md`
46
-
47
- ### 2. Plan real work
48
-
49
- The consumer brief required a named greeting:
50
-
51
- - `node index.js --name Ada` should print `Hello, Ada!`
52
-
53
- That requirement is preserved in the exported [brief](proof/consumer-node-cli/brief.md), [spec](proof/consumer-node-cli/SPEC.md), and [phase plan](proof/consumer-node-cli/phases/01-foundation/01-01-PLAN.md).
54
-
55
- ### 3. Execute and hit a real miss
56
-
57
- The first implementation missed the named-greeting requirement:
58
-
59
- - `node index.js --name Ada` returned `Hello, world!`
60
-
61
- That miss is preserved in the exported [verification report](proof/consumer-node-cli/phases/01-foundation/01-VERIFICATION.md).
62
-
63
- ### 4. Verify, fix, and re-verify
64
-
65
- The consumer repo then followed the same framework contract to:
66
-
67
- - identify the failed requirement
68
- - update the implementation and test path
69
- - re-run verification
70
- - close with a passing result
71
-
72
- The final passing behavior is:
73
-
74
- - `node index.js --name Ada` returns `Hello, Ada!`
75
-
76
- ## Why this matters
77
-
78
- This proof is stronger than a polished README claim because it shows the exact behavior Workspine is trying to preserve:
79
-
80
- - plan from durable artifacts
81
- - execute against real repo state
82
- - let verification catch a real miss
83
- - recover without losing the thread
84
-
85
- That is the release-floor claim in practice.
86
-
87
- ## What this does not prove
88
-
89
- This proof does not claim:
90
-
91
- - equal runtime ergonomics across every supported runtime
92
- - parity validation on Cursor, Copilot, or Gemini CLI
93
- - enterprise-hardening or orchestration-platform behavior
94
-
95
- Those are outside the current proof floor.
1
+ # Brownfield Proof
2
+
3
+ This is the strongest tracked public proof for Workspine's release-floor claim: a real brownfield-style consumer repo that used the shipped workflow contract, hit a real failure, and recovered through the same `plan -> execute -> verify` loop.
4
+
5
+ ## What this proves
6
+
7
+ In a fresh consumer repo, Workspine produced:
8
+
9
+ - durable planning artifacts
10
+ - runnable workflow entry surfaces
11
+ - a concrete phase plan
12
+ - a real execution summary
13
+ - a failed verification
14
+ - a real fix
15
+ - a successful re-verification
16
+
17
+ That proves the repo-native delivery contract is not just conceptual.
18
+
19
+ ## Public proof pack
20
+
21
+ Open the tracked proof pack:
22
+
23
+ - [Consumer proof pack index](proof/consumer-node-cli/README.md)
24
+
25
+ Key exported artifacts:
26
+
27
+ - [brief.md](proof/consumer-node-cli/brief.md)
28
+ - [SPEC.md](proof/consumer-node-cli/SPEC.md)
29
+ - [ROADMAP.md](proof/consumer-node-cli/ROADMAP.md)
30
+ - [01-01-PLAN.md](proof/consumer-node-cli/phases/01-foundation/01-01-PLAN.md)
31
+ - [01-01-SUMMARY.md](proof/consumer-node-cli/phases/01-foundation/01-01-SUMMARY.md)
32
+ - [01-VERIFICATION.md](proof/consumer-node-cli/phases/01-foundation/01-VERIFICATION.md)
33
+
34
+ ## The worked flow
35
+
36
+ ### 1. Initialize a fresh consumer repo
37
+
38
+ The exported proof pack comes from a new non-framework project that used the shipped `gsdd init` flow.
39
+
40
+ The generated surface included:
41
+
42
+ - portable `.agents/skills/gsdd-*`
43
+ - consumer `.planning/` state
44
+ - a Codex-native checker adapter
45
+ - a compact consumer `AGENTS.md`
46
+
47
+ ### 2. Plan real work
48
+
49
+ The consumer brief required a named greeting:
50
+
51
+ - `node index.js --name Ada` should print `Hello, Ada!`
52
+
53
+ That requirement is preserved in the exported [brief](proof/consumer-node-cli/brief.md), [spec](proof/consumer-node-cli/SPEC.md), and [phase plan](proof/consumer-node-cli/phases/01-foundation/01-01-PLAN.md).
54
+
55
+ ### 3. Execute and hit a real miss
56
+
57
+ The first implementation missed the named-greeting requirement:
58
+
59
+ - `node index.js --name Ada` returned `Hello, world!`
60
+
61
+ That miss is preserved in the exported [verification report](proof/consumer-node-cli/phases/01-foundation/01-VERIFICATION.md).
62
+
63
+ ### 4. Verify, fix, and re-verify
64
+
65
+ The consumer repo then followed the same framework contract to:
66
+
67
+ - identify the failed requirement
68
+ - update the implementation and test path
69
+ - re-run verification
70
+ - close with a passing result
71
+
72
+ The final passing behavior is:
73
+
74
+ - `node index.js --name Ada` returns `Hello, Ada!`
75
+
76
+ ## Why this matters
77
+
78
+ This proof is stronger than a polished README claim because it shows the exact behavior Workspine is trying to preserve:
79
+
80
+ - plan from durable artifacts
81
+ - execute against real repo state
82
+ - let verification catch a real miss
83
+ - recover without losing the thread
84
+
85
+ That is the release-floor claim in practice.
86
+
87
+ ## What this does not prove
88
+
89
+ This proof does not claim:
90
+
91
+ - equal runtime ergonomics across every supported runtime
92
+ - parity validation on Cursor, Copilot, or Gemini CLI
93
+ - enterprise-hardening or orchestration-platform behavior
94
+
95
+ Those are outside the current proof floor.
@@ -1,84 +1,95 @@
1
- # Runtime Support Matrix
2
-
1
+ # Runtime Support Matrix
2
+
3
3
  Workspine is a repo-native delivery spine with portable multi-runtime workflow surfaces, but the proof bar is not the same for every runtime today.
4
-
5
- This matrix is the release-floor truth surface.
6
-
7
- ## Support tiers
8
-
9
- ### Directly validated
10
-
11
- The workflow contract has direct repo proof for these runtimes:
12
-
13
- - **Claude Code**
14
- - **Codex CLI**
15
- - **OpenCode**
16
-
17
- These are the strongest public runtime claims.
18
-
19
- ### Same core workflow
20
-
4
+
5
+ This matrix is the release-floor truth surface.
6
+
7
+ Human setup and repair commands in this document use `npx -y gsdd-cli ...` because that works without a global install. If you installed `gsdd-cli` globally, the equivalent bare `gsdd ...` command is fine.
8
+
9
+ ## Support tiers
10
+
11
+ ### Directly validated
12
+
13
+ The workflow contract has direct repo proof for these runtimes:
14
+
15
+ - **Claude Code**
16
+ - **Codex CLI**
17
+ - **OpenCode**
18
+
19
+ These are the strongest public runtime claims.
20
+
21
+ ### Qualified support
22
+
21
23
  These runtimes use the same portable workflow surfaces, but they do not carry equal runtime proof or equal ergonomics today:
22
-
23
- - **Cursor**
24
- - **GitHub Copilot**
25
- - **Gemini CLI**
26
-
27
- ### Fallback / manual use
28
-
29
- Any tool that can read the generated markdown workflows can still use the framework manually, but that is outside the current native-proof story.
30
-
24
+
25
+ - **Cursor**
26
+ - **GitHub Copilot**
27
+ - **Gemini CLI**
28
+
29
+ Codex CLI support means the terminal Codex CLI runtime. It does not automatically prove equal behavior in the Codex VS Code extension or Codex app; for those surfaces, use native discovery when available or open/paste the generated skill file manually.
30
+
31
+ ### Fallback / manual use
32
+
33
+ Any tool that can read the generated markdown workflows can still use the framework manually, but that is outside the current native-proof story.
34
+
31
35
  ## Current runtime surfaces
32
36
 
33
37
  Two surfaces matter for users:
34
38
 
35
39
  - `.agents/skills/gsdd-*` is the shared workflow entry surface. Depending on the runtime, users invoke those workflows as `/gsdd-*`, `$gsdd-*`, or by opening the skill markdown directly.
36
40
  - `.planning/bin/gsdd*` is an internal local helper surface used by workflow-embedded lifecycle mechanics after init. It is not the primary user entry surface.
37
-
41
+
38
42
  | Runtime | Current claim | Entry surface | Notes |
39
43
  | --- | --- | --- | --- |
40
- | Claude Code | Directly validated | `.claude/skills/`, `.claude/commands/`, `.claude/agents/` | Native surface was a mandatory Phase 32 validation target; installed generated files are freshness-checked locally |
44
+ | Claude Code | Directly validated | `.claude/skills/`, `.claude/commands/`, `.claude/agents/` | Native surface has direct lifecycle evidence; installed generated files are freshness-checked locally |
41
45
  | OpenCode | Directly validated | `.opencode/commands/`, `.opencode/agents/` | Native command and checker path; installed generated files are freshness-checked locally |
42
- | Codex CLI | Directly validated | `.agents/skills/gsdd-*` plus `.codex/agents/gsdd-plan-checker.toml` | Portable skill entry remains the user workflow surface; the native checker adapter supports plan checking |
43
- | Cursor | Same core workflow | `.agents/skills/gsdd-*` | Skills-native path; generated skill files are freshness-checked locally, but the runtime is not claimed as parity-validated |
44
- | GitHub Copilot | Same core workflow | `.agents/skills/gsdd-*` | Skills-native path; generated skill files are freshness-checked locally, but the runtime is not claimed as parity-validated |
45
- | Gemini CLI | Same core workflow | `.agents/skills/gsdd-*` | Skills-native path; governance is optional, generated skill files are freshness-checked locally, and parity is not claimed |
46
-
47
- ## Generated-surface freshness
48
-
46
+ | Codex CLI | Directly validated | `.agents/skills/gsdd-*` plus `.codex/agents/gsdd-plan-checker.toml` | Portable skill entry, native checker adapter, direct lifecycle evidence, and generated-surface freshness checks |
47
+ | Codex VS Code / app | Fallback only | `.agents/skills/gsdd-*` opened or pasted manually unless discovery is available | Separate product surface from Codex CLI; no equal runtime-proof claim |
48
+ | Cursor | Qualified support | `.agents/skills/gsdd-*` | Skill/slash path when discovery is available; generated skill files are freshness-checked locally, but the runtime is not claimed as parity-validated |
49
+ | GitHub Copilot | Qualified support | `.agents/skills/gsdd-*` | Skill/slash path when discovery is available; generated skill files are freshness-checked locally, but the runtime is not claimed as parity-validated |
50
+ | Gemini CLI | Qualified support | `.agents/skills/gsdd-*` | Skill/slash path when discovery is available; governance is optional, generated skill files are freshness-checked locally, and parity is not claimed |
51
+
52
+ ## Generated-surface freshness
53
+
49
54
  The authored source contract stays in `distilled/workflows/*`. Generated runtime-facing files are trusted only through deterministic rendering:
50
55
 
51
- - `gsdd health` compares any installed generated surfaces under `.planning/bin/`, `.agents/skills/`, `.claude/`, `.opencode/`, and `.codex/` against current render output.
52
- - `npx gsdd-cli update` regenerates drifted generated surfaces from the authored workflow and delegate sources.
56
+ - `npx -y gsdd-cli health` compares any installed generated surfaces under `.agents/skills/`, `.planning/bin/`, `.claude/`, `.opencode/`, and `.codex/` against current render output.
57
+ - Workflow-internal deterministic helper commands run through `node .planning/bin/gsdd.mjs ...`.
58
+ - `npx -y gsdd-cli update` regenerates drifted generated surfaces from the authored workflow and delegate sources.
59
+ - Bare `gsdd health` and `gsdd update` are equivalent only when `gsdd-cli` is globally installed.
53
60
  - Missing generated surfaces are not treated as drift unless the corresponding runtime surface is actually installed locally.
54
61
 
55
- This is a generated-surface repair story, not a blanket runtime-parity claim. `health` and `update` can tell you whether installed files are current and can deterministically regenerate them. They cannot make an unsupported runtime become directly validated.
56
-
57
- ## What stays portable
58
-
59
- The portable invariant for this release is the workflow contract:
60
-
61
- - planning
62
- - checking and revision loops
63
- - execution discipline
64
- - verification
65
- - handoff and durable repo artifacts
66
-
67
- ## What does not stay equal yet
68
-
69
- This release does **not** claim that every runtime has:
70
-
71
- - the same native adapter richness
72
- - the same invocation ergonomics
73
- - the same validation depth
74
- - the same checker/orchestration mechanics
75
-
76
- Portable contract does not mean equal UX everywhere.
77
-
78
- ## Proof references
79
-
80
- - `README.md`
81
- - `docs/BROWNFIELD-PROOF.md`
82
- - `docs/proof/consumer-node-cli/README.md`
83
- - `docs/VERIFICATION-DISCIPLINE.md`
84
- - `gsdd health` / `npx gsdd-cli update`
62
+ ## Entry and helper surfaces
63
+
64
+ - `.agents/skills/gsdd-*/SKILL.md` is the compact open-standard workflow entry surface. Agents read these files to know what workflow to run.
65
+ - `.planning/bin/gsdd.mjs` is the internal repo-local helper runtime. Generated workflows use `node .planning/bin/gsdd.mjs ...` for deterministic file, lifecycle, and status helpers instead of depending on an ambient global binary.
66
+ - Native adapter and governance surfaces are optional ergonomics. They can improve discovery or routing in a specific runtime, but they are not required for the portable workflow contract.
67
+
68
+ ## What stays portable
69
+
70
+ The portable invariant for this release is the workflow contract:
71
+
72
+ - planning
73
+ - checking and revision loops
74
+ - execution discipline
75
+ - verification
76
+ - handoff and durable repo artifacts
77
+
78
+ ## What does not stay equal yet
79
+
80
+ This release does **not** claim that every runtime has:
81
+
82
+ - the same native adapter richness
83
+ - the same invocation ergonomics
84
+ - the same validation depth
85
+ - the same checker/orchestration mechanics
86
+
87
+ Portable contract does not mean equal UX everywhere.
88
+
89
+ ## Proof references
90
+
91
+ - `README.md`
92
+ - `docs/BROWNFIELD-PROOF.md`
93
+ - `docs/proof/consumer-node-cli/README.md`
94
+ - `docs/VERIFICATION-DISCIPLINE.md`
95
+ - `npx -y gsdd-cli health` / `npx -y gsdd-cli update` (or bare `gsdd ...` when globally installed)