---
name: v080-published
description: v0.8.0 PUBLIC 2026-06-16 (counter 16); M11 shell-substrate + adapter dist/install feature set; minor bump; CHANGELOG-vet RETAG mid-flight
metadata: 
  node_type: memory
  type: project
  originSessionId: 1fb9fc52-b258-4b44-9c4c-7cae9345098f
---

v0.8.0 SIGNED + PUBLISHED 2026-06-16 (release counter 16; v0.7.3=15, v0.8.0=16). MINOR bump (milestone + additive, no breaking). deployah full self-drive incl bump authoring. Base = c3bdccf (M11 PR#16 merged into v0.7.4 feature main, unified). Release/vet commit 70294ef.

Hashes (FRESH rebuild post-retag): linux `e61ddcf375bf25f0ca28f387140896d971398a9eaa53bd46b89779a93a865391`, win `10ff816679b702a68f83bfeeeb41109d6bc9d389bef4b6d8f75f25c628ea3af5`. signed `54188f12…05e3ec9`. update-set v16. https://github.com/SaberMage/spt-releases/releases/tag/v0.8.0

**Content:** M11 shell-substrate milestone (per-capability consent, hosted-shell drive + read-only watchers, same-node tunnel, gateway-owner capstone, two new `spt how-to` topics subnet+live) + feature set: gh_release adapter `[update]` avenue w/ fail-closed signing (REQ-UPD-9); adapter-binary install-dir resolution before PATH (REQ-INSTALL-11 — fixes perri's PATH interim); `spt api --adapter` manifest+install-dir resolution (REQ-API-4); Windows at-logon background daemon (REQ-INSTALL-10). Cross-node tunnel DEFERRED; update-apply UX (C) not included. Unblocks perri v0.8.0 dogfood (drop F-006 interim, re-point /sptc:live at how-to-live, psyche-marker int).

**KEY LESSON — CHANGELOG audit + RETAG mid-flight.** I cut fast on GO (bump+tag) BEFORE doyle's CHANGELOG vet landed. Vet found 2 real errors in my draft: (1) cited `spt how-to live` for the SHELL bring-up — WRONG, `how-to live` is the LIVE-AGENT topic (cli.rs:4857); (2) missed that v0.8.0 ADDS two new how-to topics (subnet+live) = user-facing. User flagged "audit incoming" → I HELD the publish (paused at publish step even after draft-ready). Fix path = RETAG, not body-edit: amend CHANGELOG.md on main (commit 70294ef) → push → CI green → DELETE stale draft on spt-releases (`gh release delete v0.8.0 --repo SaberMage/spt-releases --yes`; `--cleanup-tag` 422s on a draft = harmless, draft has no tag yet) → move tag v0.8.0 off old bump commit to vet commit (`git push origin :refs/tags/v0.8.0`, re-tag, push) → release.yml rebuilds FRESH → sign new bytes → publish. RETAG forces a CI rebuild → new binary hashes (Rust not bit-reproducible); NO re-sign waste IF you paused pre-sign (nothing signed yet). Retag is correct when you want tagged-source CHANGELOG == release body (doyle's intent); body-only `gh release edit --notes` leaves the tag's CHANGELOG.md lagging.

**TRUNCATION GOTCHA:** owl EVENT delivery caps ~9 parts → a long vetted-CHANGELOG relay arrives TRUNCATED at the tail (lost the same ~30 chars twice). Don't guess the public body — verify by reading CHANGELOG.md at the commit directly (doyle independently read origin/main 70294ef to CONFIRM-BODY), not from the relayed message.

**How to apply:** publisher leg proven 10× (counter 7-16). Cargo.lock targeted-bump (spki@0.7.3 third-party collision again → excluded; 11 first-party only). push→CI-green-both-runners→tag (ci.yml fires on push:[main]). Throwaway-worktree mechanic. Seed `SPT_RELEASE_SEED` resident; Monitor=bash. PAUSE the public flip when a CHANGELOG audit is flagged — the body is the public contract; ship it right rather than edit after.
