@tekyzinc/gsd-t 2.50.12 → 2.53.10
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 +24 -0
- package/README.md +379 -372
- package/bin/component-registry.js +250 -0
- package/bin/graph-cgc.js +510 -510
- package/bin/graph-indexer.js +147 -147
- package/bin/graph-overlay.js +195 -195
- package/bin/graph-parsers.js +327 -327
- package/bin/graph-query.js +453 -452
- package/bin/graph-store.js +154 -154
- package/bin/qa-calibrator.js +194 -0
- package/bin/scan-data-collector.js +153 -153
- package/bin/scan-diagrams-generators.js +187 -187
- package/bin/scan-diagrams.js +79 -79
- package/bin/scan-renderer.js +92 -92
- package/bin/scan-report-sections.js +121 -121
- package/bin/scan-report.js +184 -184
- package/bin/scan-schema-parsers.js +199 -199
- package/bin/scan-schema.js +103 -103
- package/bin/token-budget.js +246 -0
- package/commands/Claude-md.md +10 -10
- package/commands/branch.md +15 -15
- package/commands/checkin.md +45 -45
- package/commands/global-change.md +209 -209
- package/commands/gsd-t-audit.md +199 -0
- package/commands/gsd-t-backlog-add.md +94 -94
- package/commands/gsd-t-backlog-edit.md +111 -111
- package/commands/gsd-t-backlog-list.md +63 -63
- package/commands/gsd-t-backlog-move.md +94 -94
- package/commands/gsd-t-backlog-promote.md +123 -123
- package/commands/gsd-t-backlog-remove.md +86 -86
- package/commands/gsd-t-backlog-settings.md +158 -158
- package/commands/gsd-t-complete-milestone.md +528 -515
- package/commands/gsd-t-debug.md +506 -399
- package/commands/gsd-t-discuss.md +174 -174
- package/commands/gsd-t-execute.md +758 -634
- package/commands/gsd-t-feature.md +276 -276
- package/commands/gsd-t-health.md +142 -142
- package/commands/gsd-t-help.md +465 -457
- package/commands/gsd-t-impact.md +302 -302
- package/commands/gsd-t-init.md +320 -280
- package/commands/gsd-t-integrate.md +365 -249
- package/commands/gsd-t-milestone.md +87 -87
- package/commands/gsd-t-partition.md +442 -361
- package/commands/gsd-t-pause.md +82 -82
- package/commands/gsd-t-plan.md +345 -344
- package/commands/gsd-t-populate.md +111 -111
- package/commands/gsd-t-prd.md +326 -326
- package/commands/gsd-t-project.md +211 -211
- package/commands/gsd-t-promote-debt.md +123 -123
- package/commands/gsd-t-prompt.md +137 -137
- package/commands/gsd-t-qa.md +266 -266
- package/commands/gsd-t-quick.md +357 -234
- package/commands/gsd-t-reflect.md +134 -134
- package/commands/gsd-t-resume.md +72 -72
- package/commands/gsd-t-scan.md +615 -615
- package/commands/gsd-t-setup.md +76 -0
- package/commands/gsd-t-status.md +192 -166
- package/commands/gsd-t-test-sync.md +381 -381
- package/commands/gsd-t-triage-and-merge.md +171 -171
- package/commands/gsd-t-verify.md +382 -382
- package/commands/gsd-t-visualize.md +118 -118
- package/commands/gsd-t-wave.md +401 -378
- package/docs/GSD-T-README.md +425 -422
- package/docs/architecture.md +385 -369
- package/docs/harness-design-analysis.md +371 -0
- package/docs/infrastructure.md +205 -205
- package/docs/prd-graph-engine.md +398 -398
- package/docs/prd-gsd2-hybrid.md +559 -559
- package/docs/prd-harness-evolution.md +583 -0
- package/docs/requirements.md +14 -0
- package/docs/workflows.md +226 -226
- package/examples/.gsd-t/domains/example-domain/scope.md +13 -13
- package/package.json +40 -40
- package/scripts/gsd-t-auto-route.js +39 -39
- package/scripts/gsd-t-dashboard-mockup.html +1143 -1143
- package/scripts/gsd-t-dashboard-server.js +171 -171
- package/scripts/gsd-t-dashboard.html +262 -262
- package/scripts/gsd-t-event-writer.js +128 -128
- package/scripts/gsd-t-statusline.js +94 -94
- package/scripts/gsd-t-tools.js +175 -175
- package/templates/CLAUDE-global.md +639 -614
- package/templates/CLAUDE-project.md +24 -0
- package/templates/backlog-settings.md +18 -18
- package/templates/backlog.md +1 -1
- package/templates/progress.md +40 -40
- package/templates/shared-services-contract.md +60 -60
- package/templates/stacks/desktop.ini +2 -2
- package/bin/desktop.ini +0 -2
- package/commands/desktop.ini +0 -2
- package/docs/ci-examples/desktop.ini +0 -2
- package/docs/desktop.ini +0 -2
- package/examples/.gsd-t/contracts/desktop.ini +0 -2
- package/examples/.gsd-t/desktop.ini +0 -2
- package/examples/.gsd-t/domains/desktop.ini +0 -2
- package/examples/.gsd-t/domains/example-domain/desktop.ini +0 -2
- package/examples/desktop.ini +0 -2
- package/examples/rules/desktop.ini +0 -2
- package/scripts/desktop.ini +0 -2
- package/templates/desktop.ini +0 -2
package/commands/gsd-t-setup.md
CHANGED
|
@@ -175,6 +175,82 @@ See `.gsd-t/progress.md` for current milestone/phase state.
|
|
|
175
175
|
- **Include if relevant**: Where Things Live, Testing, Code Patterns, Environment Variables
|
|
176
176
|
- **Omit if empty**: Deployed URLs (if not deployed), Architecture (if trivial), Workflow Preferences (if no overrides)
|
|
177
177
|
|
|
178
|
+
## Step 5.5: Quality North Star Configuration
|
|
179
|
+
|
|
180
|
+
After generating the CLAUDE.md content (Step 5) and before presenting it to the user, offer a Quality North Star section if one is not already present.
|
|
181
|
+
|
|
182
|
+
**Skip this step if the existing or generated CLAUDE.md already contains `## Quality North Star`.**
|
|
183
|
+
|
|
184
|
+
Ask the user:
|
|
185
|
+
```
|
|
186
|
+
Would you like to define a Quality North Star for this project?
|
|
187
|
+
This is a 1–3 sentence quality identity that subagents read at execute time to calibrate
|
|
188
|
+
their judgment. It does not add procedural rules — it shapes what "excellent" means here.
|
|
189
|
+
|
|
190
|
+
Options:
|
|
191
|
+
[1] library — "Published npm library: intuitive API, well-documented, backward-compatible, type-safe, zero-dep."
|
|
192
|
+
[2] web-app — "User-facing app: accessible, performant, visually consistent. UX is the product."
|
|
193
|
+
[3] cli — "Developer CLI: fast, predictable, clear output. Error messages explain what went wrong and how to fix it."
|
|
194
|
+
[4] custom — Write your own 1–3 sentences
|
|
195
|
+
[5] skip — No Quality North Star (can add later via /user:gsd-t-setup)
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
If the user picks 1–3, use the corresponding preset text from the table below.
|
|
199
|
+
If the user picks 4, ask: "Describe what 'excellent' means for this project in 1–3 sentences."
|
|
200
|
+
If the user picks 5, skip the section entirely.
|
|
201
|
+
|
|
202
|
+
| Preset ID | Text |
|
|
203
|
+
|-----------|------|
|
|
204
|
+
| `library` | `This is a published npm library. Every public API must be intuitive, well-documented, and backward-compatible. Type safety and zero-dependency design are non-negotiable.` |
|
|
205
|
+
| `web-app` | `This is a user-facing web application. Every feature must be accessible, performant, and visually consistent. The user experience is the product.` |
|
|
206
|
+
| `cli` | `This is a developer CLI tool. Every command must be fast, predictable, and produce clear output. Error messages must explain what went wrong and how to fix it.` |
|
|
207
|
+
|
|
208
|
+
Insert the chosen section into the generated CLAUDE.md content before `## GSD-T Workflow`:
|
|
209
|
+
|
|
210
|
+
```markdown
|
|
211
|
+
## Quality North Star
|
|
212
|
+
|
|
213
|
+
{selected preset text or custom text}
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
If the project already has a `CLAUDE.md` with `## Quality North Star`, the generated file preserves the existing section. Do not overwrite user-customized personas.
|
|
217
|
+
|
|
218
|
+
## Step 5.6: Design Brief Generation (UI Projects)
|
|
219
|
+
|
|
220
|
+
After the Quality North Star step, check for UI/frontend signals in this project. If detected, offer to generate a design brief.
|
|
221
|
+
|
|
222
|
+
**Skip this step if `.gsd-t/contracts/design-brief.md` already exists** — user-customized briefs are authoritative. Log: "Design brief: skipped — existing brief preserved."
|
|
223
|
+
|
|
224
|
+
### Detection — check for ANY of the following
|
|
225
|
+
|
|
226
|
+
| Signal | How to check |
|
|
227
|
+
|--------|-------------|
|
|
228
|
+
| React, Vue, Svelte, Next.js | in `package.json` dependencies |
|
|
229
|
+
| Flutter | `pubspec.yaml` exists |
|
|
230
|
+
| CSS/SCSS files | `.css`, `.scss`, `.sass` files in project |
|
|
231
|
+
| Component files | `.jsx`, `.tsx`, `.svelte`, `.vue` files in project |
|
|
232
|
+
| Tailwind config | `tailwind.config.js` or `tailwind.config.ts` exists |
|
|
233
|
+
|
|
234
|
+
If NO signals detected → skip this step entirely. Do not mention it to the user.
|
|
235
|
+
|
|
236
|
+
If signals detected, ask the user:
|
|
237
|
+
```
|
|
238
|
+
UI/frontend signals detected ({list signals found}).
|
|
239
|
+
Would you like to generate a design brief at .gsd-t/contracts/design-brief.md?
|
|
240
|
+
This gives subagents a consistent visual language reference (colors, typography, spacing, patterns).
|
|
241
|
+
|
|
242
|
+
[1] Yes — generate now (sources: Tailwind config if exists, then project defaults)
|
|
243
|
+
[2] No — skip for now (can generate later by re-running /user:gsd-t-setup)
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
If user picks 1: generate `.gsd-t/contracts/design-brief.md` using the format defined in `.gsd-t/contracts/design-brief-contract.md` (or the standard format):
|
|
247
|
+
- Extract color palette from `tailwind.config.js/ts` → `theme.colors` if available; else use web defaults
|
|
248
|
+
- Extract fonts from `theme.fontFamily` if available; else use system fonts
|
|
249
|
+
- Read `## Quality North Star` from `CLAUDE.md` for Tone & Voice (skip if absent)
|
|
250
|
+
- Fill remaining fields with sensible defaults and `{placeholder}` markers for user to complete
|
|
251
|
+
|
|
252
|
+
Log in `.gsd-t/progress.md` Decision Log (if `.gsd-t/` exists): `- {date}: Design brief generated at .gsd-t/contracts/design-brief.md`
|
|
253
|
+
|
|
178
254
|
## Step 6: Present and Confirm
|
|
179
255
|
|
|
180
256
|
Show the generated CLAUDE.md content to the user with a summary:
|
package/commands/gsd-t-status.md
CHANGED
|
@@ -1,166 +1,192 @@
|
|
|
1
|
-
# GSD-T: Status — Cross-Domain Progress View
|
|
2
|
-
|
|
3
|
-
You are checking the current state of the project across all domains.
|
|
4
|
-
|
|
5
|
-
## Launch via Subagent
|
|
6
|
-
|
|
7
|
-
To keep the main conversation context lean, run status via a Task subagent.
|
|
8
|
-
|
|
9
|
-
**If you are the orchestrating agent** (you received the slash command directly):
|
|
10
|
-
Spawn a fresh subagent using the Task tool:
|
|
11
|
-
```
|
|
12
|
-
subagent_type: general-purpose
|
|
13
|
-
model: haiku
|
|
14
|
-
prompt: "You are running gsd-t-status. Working directory: {current project root}
|
|
15
|
-
Read .gsd-t/progress.md and execute the full status report workflow."
|
|
16
|
-
```
|
|
17
|
-
Wait for the subagent to complete. Relay its output to the user. **Do not read files yourself.**
|
|
18
|
-
|
|
19
|
-
**If you are the spawned subagent** (your prompt says "running gsd-t-status"):
|
|
20
|
-
Continue below.
|
|
21
|
-
|
|
22
|
-
## Read These Files
|
|
23
|
-
|
|
24
|
-
1. `.gsd-t/progress.md`
|
|
25
|
-
2. `.gsd-t/domains/*/tasks.md` — all domain task lists
|
|
26
|
-
3. `.gsd-t/contracts/integration-points.md` — dependency graph
|
|
27
|
-
|
|
28
|
-
## Report Format
|
|
29
|
-
|
|
30
|
-
Present a concise status to the user:
|
|
31
|
-
|
|
32
|
-
```
|
|
33
|
-
📊 GSD-T Status: {milestone name}
|
|
34
|
-
Phase: {PARTITIONED | DISCUSSED | PLANNED | EXECUTING | INTEGRATED | VERIFIED}
|
|
35
|
-
|
|
36
|
-
Domains:
|
|
37
|
-
{domain-1}: {completed}/{total} tasks {✅ done | 🔄 in progress | ⏳ blocked}
|
|
38
|
-
{domain-2}: {completed}/{total} tasks {✅ done | 🔄 in progress | ⏳ blocked}
|
|
39
|
-
{domain-3}: {completed}/{total} tasks {✅ done | 🔄 in progress | ⏳ blocked}
|
|
40
|
-
|
|
41
|
-
Backlog: {N} items
|
|
42
|
-
1. {title} ({type})
|
|
43
|
-
2. {title} ({type})
|
|
44
|
-
3. {title} ({type})
|
|
45
|
-
|
|
46
|
-
Next checkpoint: {description} — waiting on {domain} Task {N}
|
|
47
|
-
Next action: {what should happen next}
|
|
48
|
-
|
|
49
|
-
Recent decisions:
|
|
50
|
-
- {latest decision from Decision Log}
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
### Backlog Section
|
|
54
|
-
|
|
55
|
-
If `.gsd-t/backlog.md` exists, read and parse it. Show total count and top 3 items (position, title, type). If no backlog file exists, skip the Backlog section entirely. If the backlog file exists but is empty (no entries), show `Backlog: No items`.
|
|
56
|
-
|
|
57
|
-
If there are blockers or issues, highlight them.
|
|
58
|
-
If the user provides $ARGUMENTS, focus the status on that specific domain or aspect.
|
|
59
|
-
|
|
60
|
-
## Token Usage Breakdown
|
|
61
|
-
|
|
62
|
-
If `.gsd-t/token-log.md` exists, read it and append a token breakdown to the status report.
|
|
63
|
-
|
|
64
|
-
Parse each row in the table. Handle both old format (9 columns) and extended format (12 columns with Domain, Task, Ctx%). Rows with missing or empty Domain column are assigned domain "(untagged)".
|
|
65
|
-
|
|
66
|
-
### Token Usage by Domain
|
|
67
|
-
Group rows by Domain. For each domain, sum Tokens and collect all Ctx% values (ignoring "N/A" and empty). Display:
|
|
68
|
-
|
|
69
|
-
```
|
|
70
|
-
## Token Usage by Domain
|
|
71
|
-
| Domain | Tokens | Subagents | Peak Ctx% |
|
|
72
|
-
|----------------|--------|-----------|-----------|
|
|
73
|
-
| auth | 12,400 | 4 | 14% |
|
|
74
|
-
| notifications | 45,200 | 3 | 52% ⚠️ |
|
|
75
|
-
| (untagged) | 8,100 | 6 | N/A |
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
Flag any domain where Peak Ctx% >= 70 with `⚠️` suffix.
|
|
79
|
-
|
|
80
|
-
### Token Usage by Phase/Command
|
|
81
|
-
Group rows by Command. For each command, sum Tokens and count subagent rows. Display:
|
|
82
|
-
|
|
83
|
-
```
|
|
84
|
-
## Token Usage by Command
|
|
85
|
-
| Command | Tokens | Subagents |
|
|
86
|
-
|---------------|--------|-----------|
|
|
87
|
-
| gsd-t-execute | 86,200 | 14 |
|
|
88
|
-
| gsd-t-wave | 12,400 | 9 |
|
|
89
|
-
| gsd-t-plan | 3,400 | 1 |
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
If token-log.md does not exist or is empty, skip this section entirely (no error).
|
|
93
|
-
|
|
94
|
-
## Process Health
|
|
95
|
-
|
|
96
|
-
If `.gsd-t/metrics/rollup.jsonl` exists, read the latest entry and append to the status report:
|
|
97
|
-
|
|
98
|
-
```
|
|
99
|
-
Process Health:
|
|
100
|
-
ELO: {elo_after} ({elo_delta > 0 ? '↑' : '↓'} {elo_delta})
|
|
101
|
-
Quality: {first_pass_rate * 100}% first-pass rate | {total_fix_cycles} fix cycles
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
If `.gsd-t/metrics/task-metrics.jsonl` exists but no rollup.jsonl, compute first_pass_rate directly from task-metrics for the current milestone and display:
|
|
105
|
-
|
|
106
|
-
```
|
|
107
|
-
Process Health:
|
|
108
|
-
Quality: {rate}% first-pass rate (current milestone, no rollup yet)
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
If neither file exists, skip this section entirely.
|
|
112
|
-
|
|
113
|
-
## Graph Status
|
|
114
|
-
|
|
115
|
-
If `.gsd-t/graph/meta.json` exists, read it and append to the status report:
|
|
116
|
-
```
|
|
117
|
-
Graph: {entityCount} entities indexed — last indexed {lastIndexed timestamp}
|
|
118
|
-
```
|
|
119
|
-
If the graph does not exist, skip this section.
|
|
120
|
-
|
|
121
|
-
##
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
4. If
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
1
|
+
# GSD-T: Status — Cross-Domain Progress View
|
|
2
|
+
|
|
3
|
+
You are checking the current state of the project across all domains.
|
|
4
|
+
|
|
5
|
+
## Launch via Subagent
|
|
6
|
+
|
|
7
|
+
To keep the main conversation context lean, run status via a Task subagent.
|
|
8
|
+
|
|
9
|
+
**If you are the orchestrating agent** (you received the slash command directly):
|
|
10
|
+
Spawn a fresh subagent using the Task tool:
|
|
11
|
+
```
|
|
12
|
+
subagent_type: general-purpose
|
|
13
|
+
model: haiku
|
|
14
|
+
prompt: "You are running gsd-t-status. Working directory: {current project root}
|
|
15
|
+
Read .gsd-t/progress.md and execute the full status report workflow."
|
|
16
|
+
```
|
|
17
|
+
Wait for the subagent to complete. Relay its output to the user. **Do not read files yourself.**
|
|
18
|
+
|
|
19
|
+
**If you are the spawned subagent** (your prompt says "running gsd-t-status"):
|
|
20
|
+
Continue below.
|
|
21
|
+
|
|
22
|
+
## Read These Files
|
|
23
|
+
|
|
24
|
+
1. `.gsd-t/progress.md`
|
|
25
|
+
2. `.gsd-t/domains/*/tasks.md` — all domain task lists
|
|
26
|
+
3. `.gsd-t/contracts/integration-points.md` — dependency graph
|
|
27
|
+
|
|
28
|
+
## Report Format
|
|
29
|
+
|
|
30
|
+
Present a concise status to the user:
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
📊 GSD-T Status: {milestone name}
|
|
34
|
+
Phase: {PARTITIONED | DISCUSSED | PLANNED | EXECUTING | INTEGRATED | VERIFIED}
|
|
35
|
+
|
|
36
|
+
Domains:
|
|
37
|
+
{domain-1}: {completed}/{total} tasks {✅ done | 🔄 in progress | ⏳ blocked}
|
|
38
|
+
{domain-2}: {completed}/{total} tasks {✅ done | 🔄 in progress | ⏳ blocked}
|
|
39
|
+
{domain-3}: {completed}/{total} tasks {✅ done | 🔄 in progress | ⏳ blocked}
|
|
40
|
+
|
|
41
|
+
Backlog: {N} items
|
|
42
|
+
1. {title} ({type})
|
|
43
|
+
2. {title} ({type})
|
|
44
|
+
3. {title} ({type})
|
|
45
|
+
|
|
46
|
+
Next checkpoint: {description} — waiting on {domain} Task {N}
|
|
47
|
+
Next action: {what should happen next}
|
|
48
|
+
|
|
49
|
+
Recent decisions:
|
|
50
|
+
- {latest decision from Decision Log}
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Backlog Section
|
|
54
|
+
|
|
55
|
+
If `.gsd-t/backlog.md` exists, read and parse it. Show total count and top 3 items (position, title, type). If no backlog file exists, skip the Backlog section entirely. If the backlog file exists but is empty (no entries), show `Backlog: No items`.
|
|
56
|
+
|
|
57
|
+
If there are blockers or issues, highlight them.
|
|
58
|
+
If the user provides $ARGUMENTS, focus the status on that specific domain or aspect.
|
|
59
|
+
|
|
60
|
+
## Token Usage Breakdown
|
|
61
|
+
|
|
62
|
+
If `.gsd-t/token-log.md` exists, read it and append a token breakdown to the status report.
|
|
63
|
+
|
|
64
|
+
Parse each row in the table. Handle both old format (9 columns) and extended format (12 columns with Domain, Task, Ctx%). Rows with missing or empty Domain column are assigned domain "(untagged)".
|
|
65
|
+
|
|
66
|
+
### Token Usage by Domain
|
|
67
|
+
Group rows by Domain. For each domain, sum Tokens and collect all Ctx% values (ignoring "N/A" and empty). Display:
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
## Token Usage by Domain
|
|
71
|
+
| Domain | Tokens | Subagents | Peak Ctx% |
|
|
72
|
+
|----------------|--------|-----------|-----------|
|
|
73
|
+
| auth | 12,400 | 4 | 14% |
|
|
74
|
+
| notifications | 45,200 | 3 | 52% ⚠️ |
|
|
75
|
+
| (untagged) | 8,100 | 6 | N/A |
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
Flag any domain where Peak Ctx% >= 70 with `⚠️` suffix.
|
|
79
|
+
|
|
80
|
+
### Token Usage by Phase/Command
|
|
81
|
+
Group rows by Command. For each command, sum Tokens and count subagent rows. Display:
|
|
82
|
+
|
|
83
|
+
```
|
|
84
|
+
## Token Usage by Command
|
|
85
|
+
| Command | Tokens | Subagents |
|
|
86
|
+
|---------------|--------|-----------|
|
|
87
|
+
| gsd-t-execute | 86,200 | 14 |
|
|
88
|
+
| gsd-t-wave | 12,400 | 9 |
|
|
89
|
+
| gsd-t-plan | 3,400 | 1 |
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
If token-log.md does not exist or is empty, skip this section entirely (no error).
|
|
93
|
+
|
|
94
|
+
## Process Health
|
|
95
|
+
|
|
96
|
+
If `.gsd-t/metrics/rollup.jsonl` exists, read the latest entry and append to the status report:
|
|
97
|
+
|
|
98
|
+
```
|
|
99
|
+
Process Health:
|
|
100
|
+
ELO: {elo_after} ({elo_delta > 0 ? '↑' : '↓'} {elo_delta})
|
|
101
|
+
Quality: {first_pass_rate * 100}% first-pass rate | {total_fix_cycles} fix cycles
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
If `.gsd-t/metrics/task-metrics.jsonl` exists but no rollup.jsonl, compute first_pass_rate directly from task-metrics for the current milestone and display:
|
|
105
|
+
|
|
106
|
+
```
|
|
107
|
+
Process Health:
|
|
108
|
+
Quality: {rate}% first-pass rate (current milestone, no rollup yet)
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
If neither file exists, skip this section entirely.
|
|
112
|
+
|
|
113
|
+
## Graph Status
|
|
114
|
+
|
|
115
|
+
If `.gsd-t/graph/meta.json` exists, read it and append to the status report:
|
|
116
|
+
```
|
|
117
|
+
Graph: {entityCount} entities indexed — last indexed {lastIndexed timestamp}
|
|
118
|
+
```
|
|
119
|
+
If the graph does not exist, skip this section.
|
|
120
|
+
|
|
121
|
+
## Harness Health (M31 — if available)
|
|
122
|
+
|
|
123
|
+
If `bin/component-registry.js` exists, check for flagged components:
|
|
124
|
+
|
|
125
|
+
Run via Bash:
|
|
126
|
+
`node -e "const cr = require('./bin/component-registry.js'); const flagged = cr.getFlaggedComponents('.'); if(flagged.length) { flagged.forEach(c => console.log('⚠️ FLAGGED: ' + c.name + ' — ' + c.reason)); } else { console.log('No flagged components'); }" 2>/dev/null`
|
|
127
|
+
|
|
128
|
+
If flagged components exist, display them in the report:
|
|
129
|
+
```
|
|
130
|
+
Flagged Components:
|
|
131
|
+
⚠️ {component-name} — {reason}
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
If `bin/qa-calibrator.js` exists and `.gsd-t/metrics/qa-miss-log.jsonl` exists, display QA miss-rate summary:
|
|
135
|
+
|
|
136
|
+
Run via Bash:
|
|
137
|
+
`node -e "const qc = require('./bin/qa-calibrator.js'); const s = qc.getMissRateSummary('.'); if(s) process.stdout.write(JSON.stringify(s));" 2>/dev/null`
|
|
138
|
+
|
|
139
|
+
If data returned, display:
|
|
140
|
+
```
|
|
141
|
+
QA Calibration:
|
|
142
|
+
Miss rate: {miss_rate}% | Weak spots: {weak_spot_count} | Top category: {top_category}
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
If neither file exists, skip this section entirely.
|
|
146
|
+
|
|
147
|
+
## Version Check
|
|
148
|
+
|
|
149
|
+
After displaying the project status, check for GSD-T updates:
|
|
150
|
+
|
|
151
|
+
1. Read `~/.claude/.gsd-t-version` to get the installed version
|
|
152
|
+
2. Read `~/.claude/.gsd-t-update-check` (JSON with `latest` and `timestamp` fields) to get the latest known version
|
|
153
|
+
3. If the file doesn't exist or is unreadable, run `gsd-t status` (CLI) in the background to trigger a cache refresh, and skip the notice
|
|
154
|
+
4. If `latest` is newer than the installed version, append to the report:
|
|
155
|
+
|
|
156
|
+
```
|
|
157
|
+
⬆️ GSD-T update available: {installed} → {latest}
|
|
158
|
+
Run: npm update -g @tekyzinc/gsd-t && gsd-t update-all
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
5. If versions match, skip — don't show anything
|
|
162
|
+
|
|
163
|
+
## Global ELO & Cross-Project Rankings
|
|
164
|
+
|
|
165
|
+
After the Process Health section, check for global metrics:
|
|
166
|
+
|
|
167
|
+
1. Run via Bash:
|
|
168
|
+
```bash
|
|
169
|
+
node -e "const g = require('./bin/global-sync-manager.js'); const name = (() => { try { return require('./package.json').name; } catch { return require('path').basename(process.cwd()); } })(); const elo = g.getGlobalELO(name); const ranks = g.getProjectRankings(); console.log(JSON.stringify({ elo, ranks, name }));" 2>/dev/null
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
2. If the result returns `elo: null` or the command fails: display "No global metrics yet" and skip.
|
|
173
|
+
|
|
174
|
+
3. If global ELO data exists, display:
|
|
175
|
+
```
|
|
176
|
+
Global ELO: {elo} (rank #{position} of {total} projects)
|
|
177
|
+
```
|
|
178
|
+
Where position is the 1-based index of the current project in the rankings array.
|
|
179
|
+
|
|
180
|
+
4. If 2+ projects have global rollup data, display the top 5 rankings:
|
|
181
|
+
```
|
|
182
|
+
## Cross-Project Rankings (Top 5)
|
|
183
|
+
| Rank | Project | ELO | Latest Milestone |
|
|
184
|
+
|------|------------------|--------|------------------|
|
|
185
|
+
| 1 | {project} | {elo} | {milestone} |
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
$ARGUMENTS
|
|
189
|
+
|
|
190
|
+
## Auto-Clear
|
|
191
|
+
|
|
192
|
+
All work is committed to project files. Execute `/clear` to free the context window for the next command.
|