@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.
- package/CHANGELOG.md +146 -0
- package/bin/gsd-t-parallel.cjs +64 -13
- package/bin/gsd-t.js +48 -376
- package/bin/journey-coverage.cjs +6 -3
- package/bin/parallel-cli.cjs +13 -1
- package/commands/gsd-t-debug.md +47 -533
- package/commands/gsd-t-design-decompose.md +24 -497
- package/commands/gsd-t-doc-ripple.md +23 -139
- package/commands/gsd-t-execute.md +41 -958
- package/commands/gsd-t-help.md +0 -2
- package/commands/gsd-t-impact.md +26 -295
- package/commands/gsd-t-integrate.md +44 -369
- package/commands/gsd-t-milestone.md +25 -124
- package/commands/gsd-t-partition.md +28 -539
- package/commands/gsd-t-plan.md +26 -472
- package/commands/gsd-t-prd.md +25 -311
- package/commands/gsd-t-quick.md +1 -1
- package/commands/gsd-t-resume.md +0 -33
- package/commands/gsd-t-verify.md +52 -569
- package/commands/gsd-t-wave.md +41 -430
- package/package.json +1 -1
- package/scripts/gsd-t-calibration-hook.js +3 -1
- package/scripts/hooks/pre-commit-journey-coverage +0 -2
- package/scripts/hooks/pre-commit-playwright-gate +0 -2
- package/templates/CLAUDE-global.md +43 -173
- package/templates/CLAUDE-project.md +118 -104
- package/templates/prompts/design-verify-subagent.md +3 -0
- package/templates/prompts/qa-subagent.md +3 -0
- package/templates/prompts/red-team-subagent.md +5 -2
- package/templates/workflows/_lib.js +176 -0
- package/templates/workflows/gsd-t-debug.workflow.js +86 -0
- package/templates/workflows/gsd-t-execute.workflow.js +206 -0
- package/templates/workflows/gsd-t-integrate.workflow.js +71 -0
- package/templates/workflows/gsd-t-phase.workflow.js +94 -0
- package/templates/workflows/gsd-t-quick.workflow.js +72 -0
- package/templates/workflows/gsd-t-verify.workflow.js +348 -0
- package/templates/workflows/gsd-t-wave.workflow.js +43 -0
- package/bin/check-headless-sessions.js +0 -140
- package/bin/context-budget-audit.cjs +0 -447
- package/bin/context-meter-config.cjs +0 -101
- package/bin/context-meter-config.test.cjs +0 -101
- package/bin/event-stream.cjs +0 -205
- package/bin/gsd-t-benchmark-orchestrator.js +0 -437
- package/bin/gsd-t-capture-lint.cjs +0 -440
- package/bin/gsd-t-economics.cjs +0 -315
- package/bin/gsd-t-in-session-usage.cjs +0 -213
- package/bin/gsd-t-orchestrator-config.cjs +0 -161
- package/bin/gsd-t-orchestrator-queue.cjs +0 -180
- package/bin/gsd-t-orchestrator-recover.cjs +0 -231
- package/bin/gsd-t-orchestrator-worker.cjs +0 -219
- package/bin/gsd-t-orchestrator.js +0 -535
- package/bin/gsd-t-parallel-probe.cjs +0 -132
- package/bin/gsd-t-ratelimit-probe-worker.cjs +0 -237
- package/bin/gsd-t-ratelimit-probe.cjs +0 -648
- package/bin/gsd-t-report-tokens.cjs +0 -549
- package/bin/gsd-t-stream-feed-client.cjs +0 -151
- package/bin/gsd-t-token-backfill.cjs +0 -366
- package/bin/gsd-t-token-capture.cjs +0 -321
- package/bin/gsd-t-token-dashboard.cjs +0 -353
- package/bin/gsd-t-token-regenerate-log.cjs +0 -129
- package/bin/gsd-t-tool-attribution.cjs +0 -377
- package/bin/gsd-t-tool-cost.cjs +0 -195
- package/bin/gsd-t-transcript-tee.cjs +0 -246
- package/bin/gsd-t-unattended-heartbeat.cjs +0 -188
- package/bin/gsd-t-unattended-platform.cjs +0 -551
- package/bin/gsd-t-unattended-platform.js +0 -381
- package/bin/gsd-t-unattended-safety.cjs +0 -773
- package/bin/gsd-t-unattended-safety.js +0 -788
- package/bin/gsd-t-unattended.cjs +0 -2109
- package/bin/gsd-t-unattended.js +0 -1367
- package/bin/gsd-t-worker-dispatch.cjs +0 -211
- package/bin/handoff-lock.cjs +0 -249
- package/bin/handoff-lock.js +0 -249
- package/bin/headless-auto-spawn.cjs +0 -711
- package/bin/headless-auto-spawn.js +0 -373
- package/bin/headless-exit-codes.cjs +0 -67
- package/bin/live-activity-report.cjs +0 -615
- package/bin/log-tail.cjs +0 -81
- package/bin/m44-proof-measure.cjs +0 -285
- package/bin/m46-iter-proof.cjs +0 -149
- package/bin/m46-worker-proof.cjs +0 -201
- package/bin/m55-substrate-proof.cjs +0 -134
- package/bin/metrics-rollup.js +0 -200
- package/bin/model-windows.cjs +0 -99
- package/bin/model-windows.test.cjs +0 -75
- package/bin/parallelism-report.cjs +0 -535
- package/bin/runway-estimator.cjs +0 -242
- package/bin/spawn-plan-derive.cjs +0 -163
- package/bin/spawn-plan-status-updater.cjs +0 -292
- package/bin/spawn-plan-writer.cjs +0 -204
- package/bin/supervisor-pid-fingerprint.cjs +0 -126
- package/bin/token-budget.cjs +0 -265
- package/bin/unattended-watch-format.cjs +0 -178
- package/bin/watch-progress.js +0 -155
- package/commands/gsd-t-unattended-stop.md +0 -85
- package/commands/gsd-t-unattended-watch.md +0 -465
- package/commands/gsd-t-unattended.md +0 -476
- package/commands/gsd-t-visualize.md +0 -116
- package/scripts/gsd-t-context-meter.e2e.test.js +0 -364
- package/scripts/gsd-t-context-meter.js +0 -341
- package/scripts/gsd-t-context-meter.test.js +0 -471
- package/scripts/gsd-t-dashboard-server.js +0 -1203
- package/scripts/gsd-t-post-commit-spawn-plan.sh +0 -86
- package/scripts/gsd-t-transcript.html +0 -1821
- package/scripts/hooks/gsd-t-conversation-capture.js +0 -439
- package/scripts/hooks/gsd-t-in-session-usage-hook.js +0 -84
- package/scripts/spawn-plan-fmt-tokens.cjs +0 -80
- 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
|
-
##
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
|
17
|
+
## Step 2: Invoke the phase Workflow
|
|
142
18
|
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
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
|
-
|
|
30
|
+
## Step 3: Interpret the result
|
|
149
31
|
|
|
150
|
-
|
|
32
|
+
The Workflow returns `{ status, artifacts, summary, decisions }`.
|
|
151
33
|
|
|
152
|
-
|
|
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
|
-
##
|
|
38
|
+
## Note
|
|
155
39
|
|
|
156
|
-
|
|
40
|
+
This is a standalone enforcement command with no workflow successor — control returns to whatever spawned it (or to the user).
|