{"id":"ship:c97f75f7-8b05-41a7-9004-908d79b0177c","withdrawn":false,"project":{"slug":"keyneszeng-bagbot","name":"bagbot","url":"https://heyresearch.xyz/project/keyneszeng-bagbot"},"domain":"build","claimType":"GITHUB_RELEASE","summary":"v0.1.3 — 🔒 Dashboard auth + portable tests","sourceType":"github","sourceUrl":"https://github.com/keyneszeng/bagbot/releases/tag/v0.1.3","publishedAt":"2026-09-07T02:28:15.000Z","detectedAt":"2026-09-07T09:33:05.457Z","precision":"EXACT","verification":"PUBLICLY_VERIFIED","countsAsBuilding":true,"countedAs":"counted","countedAsSentence":"Yes. It is one of the records HEY’s activity status is built from.","recordedAt":"2026-09-07T09:33:05.457Z","metadata":{"summary":"## v0.1.3 — 2026-09-07 · 🔒 Security patch ### What's in this release **Security**: dashboard mutation endpoints (`/api/claim`, `/api/rotate`, `/api/topup`) now require `DASHBOARD_TOKEN`. Without it, mutations return 403 (read-only dashboard). With it, the token is sent via `Authorization: Bearer` or `X-Dashboard-Token`. **Portability**: CLI error tests no longer hard-code `/Users/mac/...`. **Quality**: 13 new mutation-resistant auth tests — `dashboard.py` mutation score is now **100%**. ### Stats - 97 tests passing (was 84) - dashboard.py: 100% mutation score - ruff + mypy + shellcheck: all c","releaseVersion":"v0.1.3","prerelease":false},"sources":[{"evidenceRowId":"382e03bc-c7a2-4ca1-ad05-454f4d24833c","sourceType":"GITHUB_REPO","sourceUrl":"https://github.com/keyneszeng/bagbot/releases/tag/v0.1.3","observedAt":"2026-09-07T09:33:05.457Z","metadata":{"tag":"v0.1.3","prerelease":false}}],"disclaimer":"Public, source-backed activity HEY recorded. Still Building means verified activity through a tracked market drawdown — it is not a prediction, not a ranking by price, and not investment advice. Few projects meet Still Building or Under the Radar at any time; both are strict by design, and list responses carry the counts."}