This is the measured starting point, not a completion claim. The audit was run
from detached base worktree /tmp/gstack2-baseline.e2qk7F at commit
bb57306d98c97011b0919c6132705a15b1579781 on 2026-07-16.
| Measure | Baseline |
|---|---|
Source SKILL.md.tmpl templates |
55 |
| Primary generated skill outputs | 54 |
| Generated section files | 16 |
| Primary surface | 61,093 lines / 3,301,287 bytes |
| Audited union | 67,996 lines / 3,695,876 bytes |
| Repeated preambles | 49 |
| Repeated-preamble footprint | 35,802 lines / 2,132,374 bytes |
| Generated hosts | 10 |
The 10 generated hosts observed in the generator/check logs are Claude Code, OpenAI Codex CLI, Factory Droid, Kiro, OpenCode, Slate, Cursor, OpenClaw, Hermes, and GBrain.
The catalog-token audit has two materially different numbers:
- Correct YAML parsing of the names and descriptions for 54 skills is about 1,100 token-equivalents.
- The official buggy capture reported
captureBaseline().estTotalCatalogTokens = 4,214. It applied the same four-characters-per-token estimate to 16,857 incorrectly parsed description bytes. The 4,214 figure is therefore an instrument bug, not the real catalog cost.
These counts establish the consolidation problem: they do not by themselves set a target or prove that any repeated instruction is safe to remove.
The old standard-container path has a concrete root-shadow failure. From the detached base worktree, this command:
DISABLE_TELEMETRY=1 npx --yes skills add . --listreported Found 1 skill and listed only the root gstack skill. Under the
skills CLI discovery rule, the shallower root SKILL.md is discovered first
and shadows discovery of the nested standard-container skills. Separately,
legacy ./setup installs 54 host-specific skills. Thus “the legacy installer
works” is not evidence that the standard installer exposes the same surface;
both install roots and collision behavior need migration tests.
The baseline runner recorded these commands:
bun install
bun run gen:skill-docs --host all
bun run skill:check
bun run build
bun test
bun run test:windows
bun test design/test
bun test ios-qa/daemon/testResults are intentionally not summarized as “green”:
- dependency installation completed with 297 packages;
- all-host generation reached its final
llms.txtsummary; - the build reached its final Node server bundle step;
skill:checkexited 1 becauseclaude/SKILL.mdwas missing;- the broad
bun testcapture contains seven explicit failed tests and one unhandled between-tests error, then ends without Bun's terminal summary or exit record; - the Windows-safe run exited 1 on shard 5 of 20;
- the targeted design suite contains one failed timing assertion and no terminal summary;
- the targeted iOS daemon suite completed with 91 pass / 0 fail.
The precise assertions and log paths are in
TEST-EVIDENCE.md. An empty
/tmp/gstack2-baseline-logs/git-status-after.txt records no tracked/untracked
status output after the baseline runner, but it is not a substitute for test
success.
The frozen API inputs contain 755 unique open GitHub items after reconciling the issues endpoint (which also contains PRs) with the PR endpoint:
garrytan/gstack: 748 items;time-attack/gstack: 7 items;- 326 issues and 429 pull requests in total;
- 1,184 raw open-endpoint records, including 429 reconciled duplicates;
- 16 required upstream PRs with separate detail and changed-file snapshots.
See BACKLOG-MAP.json for the complete mapping and
scripts/gstack2/generate-backlog-map.ts for the deterministic, offline
generator.