Summary
The rc.3 run reported telemetry stack traces printing to stdout, including after stash manifest --json. Filing to track, but flagging clearly: I could not reproduce it, and the code paths I checked look correct.
Source
rc.3 skilltester run (2026-07-19/20), finding M5 (major — "smaller sharp edges that each cost real time").
Could not reproduce — what I actually checked
Against the built rc.3 CLI (packages/cli/dist/bin/stash.js, reports 1.0.0-rc.3 — the same version the run tested):
$ node packages/cli/dist/bin/stash.js manifest --json 2>/dev/null | python3 -c "import json,sys; json.load(sys.stdin)"
VALID JSON
stdout was clean, parsed as JSON, exit 0. And the telemetry code looks right:
packages/cli/src/telemetry/index.ts:315 writes its notice to stderr (process.stderr.write), which is correct.
- Every telemetry error path swallows:
.catch(() => {}) at :278 and :354, bare catch {} at :312.
So the traces are not coming from telemetry's own error handling, and the default manifest --json path is clean.
Why it still matters
AGENTS.md makes stash manifest --json the mechanical check that the shipped skills/stash-cli/SKILL.md matches the real command surface:
pnpm --filter stash build && node packages/cli/dist/bin/stash.js manifest --json
Every command and flag named in skills/stash-cli/SKILL.md must resolve against that manifest
Anything polluting that stdout breaks the one automated guard against skills drifting from the CLI — so it's worth pinning down rather than leaving as an anecdote.
What would close this
Repro conditions from the run: exact command, whether telemetry was enabled/first-run, network state, and whether it was the published npm stash@1.0.0-rc.3 rather than a local build. If it turns out to be first-run-notice or network-failure specific, that path is what needs the stderr fix.
Summary
The rc.3 run reported telemetry stack traces printing to stdout, including after
stash manifest --json. Filing to track, but flagging clearly: I could not reproduce it, and the code paths I checked look correct.Source
rc.3 skilltester run (2026-07-19/20), finding M5 (major — "smaller sharp edges that each cost real time").
Could not reproduce — what I actually checked
Against the built rc.3 CLI (
packages/cli/dist/bin/stash.js, reports1.0.0-rc.3— the same version the run tested):stdout was clean, parsed as JSON, exit 0. And the telemetry code looks right:
packages/cli/src/telemetry/index.ts:315writes its notice to stderr (process.stderr.write), which is correct..catch(() => {})at:278and:354, barecatch {}at:312.So the traces are not coming from telemetry's own error handling, and the default
manifest --jsonpath is clean.Why it still matters
AGENTS.mdmakesstash manifest --jsonthe mechanical check that the shippedskills/stash-cli/SKILL.mdmatches the real command surface:Anything polluting that stdout breaks the one automated guard against skills drifting from the CLI — so it's worth pinning down rather than leaving as an anecdote.
What would close this
Repro conditions from the run: exact command, whether telemetry was enabled/first-run, network state, and whether it was the published npm
stash@1.0.0-rc.3rather than a local build. If it turns out to be first-run-notice or network-failure specific, that path is what needs the stderr fix.