@tekyzinc/gsd-t 3.29.11 → 4.0.12

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 (108) hide show
  1. package/CHANGELOG.md +146 -0
  2. package/bin/gsd-t-parallel.cjs +64 -13
  3. package/bin/gsd-t.js +48 -376
  4. package/bin/journey-coverage.cjs +6 -3
  5. package/bin/parallel-cli.cjs +13 -1
  6. package/commands/gsd-t-debug.md +47 -533
  7. package/commands/gsd-t-design-decompose.md +24 -497
  8. package/commands/gsd-t-doc-ripple.md +23 -139
  9. package/commands/gsd-t-execute.md +41 -958
  10. package/commands/gsd-t-help.md +0 -2
  11. package/commands/gsd-t-impact.md +26 -295
  12. package/commands/gsd-t-integrate.md +44 -369
  13. package/commands/gsd-t-milestone.md +25 -124
  14. package/commands/gsd-t-partition.md +28 -539
  15. package/commands/gsd-t-plan.md +26 -472
  16. package/commands/gsd-t-prd.md +25 -311
  17. package/commands/gsd-t-quick.md +1 -1
  18. package/commands/gsd-t-resume.md +0 -33
  19. package/commands/gsd-t-verify.md +52 -569
  20. package/commands/gsd-t-wave.md +41 -430
  21. package/package.json +1 -1
  22. package/scripts/gsd-t-calibration-hook.js +3 -1
  23. package/scripts/hooks/pre-commit-journey-coverage +0 -2
  24. package/scripts/hooks/pre-commit-playwright-gate +0 -2
  25. package/templates/CLAUDE-global.md +43 -173
  26. package/templates/CLAUDE-project.md +118 -104
  27. package/templates/prompts/design-verify-subagent.md +3 -0
  28. package/templates/prompts/qa-subagent.md +3 -0
  29. package/templates/prompts/red-team-subagent.md +5 -2
  30. package/templates/workflows/_lib.js +176 -0
  31. package/templates/workflows/gsd-t-debug.workflow.js +86 -0
  32. package/templates/workflows/gsd-t-execute.workflow.js +206 -0
  33. package/templates/workflows/gsd-t-integrate.workflow.js +71 -0
  34. package/templates/workflows/gsd-t-phase.workflow.js +94 -0
  35. package/templates/workflows/gsd-t-quick.workflow.js +72 -0
  36. package/templates/workflows/gsd-t-verify.workflow.js +348 -0
  37. package/templates/workflows/gsd-t-wave.workflow.js +43 -0
  38. package/bin/check-headless-sessions.js +0 -140
  39. package/bin/context-budget-audit.cjs +0 -447
  40. package/bin/context-meter-config.cjs +0 -101
  41. package/bin/context-meter-config.test.cjs +0 -101
  42. package/bin/event-stream.cjs +0 -205
  43. package/bin/gsd-t-benchmark-orchestrator.js +0 -437
  44. package/bin/gsd-t-capture-lint.cjs +0 -440
  45. package/bin/gsd-t-economics.cjs +0 -315
  46. package/bin/gsd-t-in-session-usage.cjs +0 -213
  47. package/bin/gsd-t-orchestrator-config.cjs +0 -161
  48. package/bin/gsd-t-orchestrator-queue.cjs +0 -180
  49. package/bin/gsd-t-orchestrator-recover.cjs +0 -231
  50. package/bin/gsd-t-orchestrator-worker.cjs +0 -219
  51. package/bin/gsd-t-orchestrator.js +0 -535
  52. package/bin/gsd-t-parallel-probe.cjs +0 -132
  53. package/bin/gsd-t-ratelimit-probe-worker.cjs +0 -237
  54. package/bin/gsd-t-ratelimit-probe.cjs +0 -648
  55. package/bin/gsd-t-report-tokens.cjs +0 -549
  56. package/bin/gsd-t-stream-feed-client.cjs +0 -151
  57. package/bin/gsd-t-token-backfill.cjs +0 -366
  58. package/bin/gsd-t-token-capture.cjs +0 -321
  59. package/bin/gsd-t-token-dashboard.cjs +0 -353
  60. package/bin/gsd-t-token-regenerate-log.cjs +0 -129
  61. package/bin/gsd-t-tool-attribution.cjs +0 -377
  62. package/bin/gsd-t-tool-cost.cjs +0 -195
  63. package/bin/gsd-t-transcript-tee.cjs +0 -246
  64. package/bin/gsd-t-unattended-heartbeat.cjs +0 -188
  65. package/bin/gsd-t-unattended-platform.cjs +0 -551
  66. package/bin/gsd-t-unattended-platform.js +0 -381
  67. package/bin/gsd-t-unattended-safety.cjs +0 -773
  68. package/bin/gsd-t-unattended-safety.js +0 -788
  69. package/bin/gsd-t-unattended.cjs +0 -2109
  70. package/bin/gsd-t-unattended.js +0 -1367
  71. package/bin/gsd-t-worker-dispatch.cjs +0 -211
  72. package/bin/handoff-lock.cjs +0 -249
  73. package/bin/handoff-lock.js +0 -249
  74. package/bin/headless-auto-spawn.cjs +0 -711
  75. package/bin/headless-auto-spawn.js +0 -373
  76. package/bin/headless-exit-codes.cjs +0 -67
  77. package/bin/live-activity-report.cjs +0 -615
  78. package/bin/log-tail.cjs +0 -81
  79. package/bin/m44-proof-measure.cjs +0 -285
  80. package/bin/m46-iter-proof.cjs +0 -149
  81. package/bin/m46-worker-proof.cjs +0 -201
  82. package/bin/m55-substrate-proof.cjs +0 -134
  83. package/bin/metrics-rollup.js +0 -200
  84. package/bin/model-windows.cjs +0 -99
  85. package/bin/model-windows.test.cjs +0 -75
  86. package/bin/parallelism-report.cjs +0 -535
  87. package/bin/runway-estimator.cjs +0 -242
  88. package/bin/spawn-plan-derive.cjs +0 -163
  89. package/bin/spawn-plan-status-updater.cjs +0 -292
  90. package/bin/spawn-plan-writer.cjs +0 -204
  91. package/bin/supervisor-pid-fingerprint.cjs +0 -126
  92. package/bin/token-budget.cjs +0 -265
  93. package/bin/unattended-watch-format.cjs +0 -178
  94. package/bin/watch-progress.js +0 -155
  95. package/commands/gsd-t-unattended-stop.md +0 -85
  96. package/commands/gsd-t-unattended-watch.md +0 -465
  97. package/commands/gsd-t-unattended.md +0 -476
  98. package/commands/gsd-t-visualize.md +0 -116
  99. package/scripts/gsd-t-context-meter.e2e.test.js +0 -364
  100. package/scripts/gsd-t-context-meter.js +0 -341
  101. package/scripts/gsd-t-context-meter.test.js +0 -471
  102. package/scripts/gsd-t-dashboard-server.js +0 -1203
  103. package/scripts/gsd-t-post-commit-spawn-plan.sh +0 -86
  104. package/scripts/gsd-t-transcript.html +0 -1821
  105. package/scripts/hooks/gsd-t-conversation-capture.js +0 -439
  106. package/scripts/hooks/gsd-t-in-session-usage-hook.js +0 -84
  107. package/scripts/spawn-plan-fmt-tokens.cjs +0 -80
  108. package/templates/hooks/post-commit-spawn-plan.sh +0 -85
@@ -1,156 +1,40 @@
1
1
  # GSD-T: Doc-Ripple — Automated Document Ripple Enforcement
2
2
 
3
- You are the doc-ripple agent. You identify and update all downstream documents after code changes. You are spawned by execute, integrate, quick, debug, and wave after primary work is committed.
3
+ You are the doc-ripple agent. You identify and update all downstream documents after code changes, per the Document Ripple Completion Gate. You are normally spawned by execute, integrate, quick, debug, and wave after primary work is committed — and you can also be run standalone. Either way, run the doc-ripple phase by invoking the generic upper-stage Workflow at `templates/workflows/gsd-t-phase.workflow.js` with `phase: "doc-ripple"`. You write NO code — docs only.
4
4
 
5
- ## Model Assignment
6
-
7
- Per `.gsd-t/contracts/model-selection-contract.md` v1.0.0.
8
-
9
- - **Default**: `sonnet` (`selectModel({phase: "doc-ripple"})`) — downstream documentation updates are routine prose editing.
10
- - **Escalation**: `/advisor` convention-based fallback from `bin/advisor-integration.js` when a doc change involves rewriting an architectural invariant or a contract. Never silently skip doc-ripple under context pressure — M35 removed that behavior.
11
-
12
- ## Step 1: Load Context
13
-
14
- Read:
15
- 1. `CLAUDE.md` — project conventions and Pre-Commit Gate (project-specific extensions)
16
- 2. `.gsd-t/contracts/doc-ripple-contract.md` — trigger conditions, manifest format, update protocol
17
- 3. `.gsd-t/contracts/pre-commit-gate.md` — the gate checklist you cross-reference
18
-
19
- Run via Bash:
20
- `git diff --name-only HEAD~1 2>/dev/null || git diff --cached --name-only`
21
-
22
- Store the changed file list for Steps 2–3.
23
-
24
- ## Step 2: Threshold Check
25
-
26
- Evaluate the changed file list against trigger conditions from `doc-ripple-contract.md`.
27
-
28
- Output exactly:
29
- ```
30
- DOC-RIPPLE THRESHOLD: {FIRE|SKIP}
31
- Files changed: {N} across {N} directories
32
- Cross-cutting signals: {list or "none"}
33
- Reason: {brief explanation}
34
- ```
35
-
36
- **If SKIP**: log the decision, output `Doc-ripple: SKIP — {reason}`, and stop. No manifest. No updates.
37
-
38
- **If FIRE**: proceed to Step 3.
39
-
40
- ## Step 3: Blast Radius Analysis
41
-
42
- For each changed file, classify its type: source, test, contract, template, command, doc, config.
43
-
44
- Cross-reference `.gsd-t/contracts/pre-commit-gate.md` gate checklist:
45
- - API endpoint/shape changed → api-contract.md, Swagger spec, CLAUDE.md, README.md
46
- - Database schema changed → schema-contract.md, docs/schema.md
47
- - UI component interface changed → component-contract.md
48
- - New files or directories added → owning domain scope.md
49
- - Requirement implemented or changed → docs/requirements.md
50
- - Component or data flow changed → docs/architecture.md
51
- - Any file modified → .gsd-t/progress.md (Decision Log entry)
52
- - Architectural decision made → .gsd-t/progress.md (with rationale)
53
- - Tech debt discovered or fixed → .gsd-t/techdebt.md
54
- - New convention established → CLAUDE.md or domain constraints.md
55
- - Command file added/changed → GSD-T-README.md, README.md, templates/CLAUDE-global.md, commands/gsd-t-help.md
56
- - Command added/removed → all 4 above + package.json version + bin/gsd-t.js count
57
- - Wave flow changed → gsd-t-wave.md, GSD-T-README.md, README.md
58
- - Template changed → verify gsd-t-init output
59
-
60
- Build the final list: `{ document, status (UPDATED|SKIPPED), action, reason }`.
61
-
62
- ## Step 4: Generate Manifest
63
-
64
- Write `.gsd-t/doc-ripple-manifest.md` (overwrite):
65
-
66
- ```markdown
67
- # Doc-Ripple Manifest — {date}
68
-
69
- ## Trigger
70
- - Command: {triggering command}
71
- - Files changed: {N}
72
- - Threshold: FIRE — {reason}
73
-
74
- ## Blast Radius
75
-
76
- | Document | Status | Action | Reason |
77
- |----------|--------|--------|--------|
78
- | {path} | {UPDATED|SKIPPED} | {action} | {reason} |
79
-
80
- ## Summary
81
- - Documents checked: {N}
82
- - Documents updated: {N}
83
- - Documents skipped (already current): {N}
84
- ```
85
-
86
- ## Step 5: Update Documents
87
-
88
- Count documents marked UPDATED.
89
-
90
- **Fewer than 3 updates — inline:**
91
- For each document: read current content → determine minimal edit → apply via Edit tool (not Write) → verify after edit.
92
-
93
- **3 or more updates — parallel subagents:**
94
-
95
- For each document or logical group:
96
-
97
- ⚙ [haiku] gsd-t-doc-ripple → update {document}
98
- (Use sonnet for docs/architecture.md and docs/requirements.md — these need reasoning.)
99
-
100
- **OBSERVABILITY LOGGING (MANDATORY) — wrap each document-update subagent with `captureSpawn`:**
5
+ ## What this command does
101
6
 
102
7
  ```
103
- node -e "
104
- const { captureSpawn } = require('./bin/gsd-t-token-capture.cjs');
105
- (async () => {
106
- await captureSpawn({
107
- command: 'gsd-t-doc-ripple',
108
- step: 'Step 5',
109
- model: '{haiku|sonnet}',
110
- description: 'update {document}',
111
- projectDir: '.',
112
- domain: 'doc-ripple',
113
- task: '-',
114
- notes: 'update:{document}',
115
- spawnFn: async () => { /* Task subagent call for the document-update prompt below */ },
116
- });
117
- })();
118
- "
8
+ preflight → brief (kind=doc-ripple) → doc-ripple agent (opus, with phase protocol)
119
9
  ```
120
10
 
121
- `captureSpawn` parses `result.usage` and writes the row to `.gsd-t/token-log.md` under the canonical header. Tokens column renders as `in=N out=N cr=N cc=N $X.XX` or `—`, never `N/A`.
11
+ The agent identifies the full blast radius of recent code changes and updates every affected document in one pass: `docs/requirements.md`, `docs/architecture.md`, `docs/workflows.md`, `.gsd-t/contracts/`, owning `scope.md`, `README.md`, and (for this repo) the 4 command-reference files when a command interface changed.
122
12
 
123
- **Each document-update subagent prompt:**
124
- ```
125
- Task subagent (general-purpose, model: {haiku|sonnet}):
126
- "Update a single document as part of doc-ripple enforcement.
127
-
128
- Document to update: {path}
129
- Action: {action from manifest}
130
- Reason: {reason from manifest}
131
- Git diff context (changed files): {file list}
13
+ ## Step 1: Determine the change set
132
14
 
133
- Instructions:
134
- 1. Read the current document
135
- 2. Apply the minimal edit — add/update only the affected section
136
- 3. Use the Edit tool (not Write) — preserve all existing content
137
- 4. Re-read after edit to confirm correctness
138
- 5. Report: 'Updated {document} — {one-line summary of change}'"
139
- ```
15
+ Read the recent commit range (or `$ARGUMENTS` if a specific scope is given) and `.gsd-t/progress.md` Decision Log to learn what changed.
140
16
 
141
- ## Step 6: Report Summary
17
+ ## Step 2: Invoke the phase Workflow
142
18
 
143
- Output:
144
- ```
145
- Doc-ripple: {N} checked, {N} updated, {N} skipped
19
+ ```js
20
+ {
21
+ scriptPath: "templates/workflows/gsd-t-phase.workflow.js",
22
+ args: {
23
+ phase: "doc-ripple",
24
+ projectDir: ".",
25
+ userInput: "$ARGUMENTS"
26
+ }
27
+ }
146
28
  ```
147
29
 
148
- List each updated document with a one-line summary of what changed.
30
+ ## Step 3: Interpret the result
149
31
 
150
- If any update failed, list it under `Failures:` and flag for manual review.
32
+ The Workflow returns `{ status, artifacts, summary, decisions }`.
151
33
 
152
- $ARGUMENTS
34
+ - `status === "complete"`: every document in the blast radius updated; `artifacts` lists them.
35
+ - `status === "partial"`: the agent found docs it could not confidently update. Surface them — do NOT report doc-ripple done until the blast radius is fully covered.
36
+ - `status === "failed"`: read `summary`.
153
37
 
154
- ## Auto-Clear
38
+ ## Note
155
39
 
156
- All work is written to project files. Execute `/clear` to free the context window for the next command.
40
+ This is a standalone enforcement command with no workflow successor — control returns to whatever spawned it (or to the user).