Skip to content

chore(release): all four lanes — mobile/hub/host 2026.817.322-alpha, desktop 2026.817.322 - #576

Merged
physercoe merged 2 commits into
mainfrom
release-2026.817.322
Aug 17, 2026
Merged

chore(release): all four lanes — mobile/hub/host 2026.817.322-alpha, desktop 2026.817.322#576
physercoe merged 2 commits into
mainfrom
release-2026.817.322

Conversation

@physercoe

Copy link
Copy Markdown
Owner

Four tags go on the squash commit once this merges — one push each, since
Actions silently creates no runs when a single push carries more than three tags:

mobile-v2026.817.322-alpha    APK + IPA, non-prerelease, owns releases/latest
hub-v2026.817.322-alpha       hub-server tarballs, prerelease
host-v2026.817.322-alpha      host-runner tarballs, prerelease
electron-v2026.817.322-alpha  desktop unsigned alpha, prerelease

Stamp minted with date -u (2026-08-17 03:22 UTC). 46 commits since
2026.805.1022 — the largest gap between cuts so far.

Hub / host — 18 commits

Pane-state detection lands as a whole lane: a pure Go evaluator over herdr's
screen-manifest schema and its 19 vendored TOMLs (P1), wired into the poll tick
(P2), raising and retracting attention on a blocked pane (P3 — the first
self-retracting host-runner row), and explaining its own verdict rule by rule
through pane_explain (P4). Independents: native-resume recipes as shared YAML
pinned across Go and TypeScript (N1), and generic pane-input hardening so
multi-line input arrives as one block (Q1).

Four engine-vocabulary corrections, each found by measuring a real binary
rather than reading a spec:

What was wrong Measured against
claude's parent_tool_use_id / subagent_type discarded, so a delegated agent's work read as the main agent's and its tokens inflated the session claude-code 2.1.220, live sidechain probe (R5)
codex's streaming command output swallowed by the delta filter — a build showed nothing until it exited codex M2 wire (E3)
input_image / input_file rejected outright; a PDF took the whole message down with it codex-cli 0.147.0 (L4c)
runtime mode/model switch resolved the engine from agents.kind, the persona template — dead for every steward (#570) + the runtime_switch_fields mask (R6)

Security: an engine-supplied engine_session_id was spliced unquoted into
the respawn backend.cmd, which tmux runs through a shell.

Read gains attachments_json (0075) and rating (0076).

Desktop — 32 commits

The Companion runs a claude (L3a) or codex (L4c) session locally with no hub
and survives quitting the app (L3b) — transcript from our own append-only log,
memory from the vendor's native resume, because those two fail separately. The
transcript gained streamed output and inline media (R4), a sub-agent panel
(R5), and model/permission pills that appear only where the switch is real
(R6). Read went from a library to a discovery workspace. Plus rich Inspect
previews, a bundled terminal font, an SFTP transfer queue, and a monochrome
theme pass.

⚠ Operators must redeploy the hub and host-runner

The 2026.730.1231 and 2026.805.1022 sections said the same about their own
51 and 17 commits. If neither redeploy happened, this cut compounds both — and
every pane-state feature above is host-runner code by construction.

Changelog gaps closed in the same pass

Neither Unreleased section was a complete record. Fixed here rather than
shipped partial:

The second commit reconciles roadmap.md, which was two releases behind, and
corrects plans/pane-state-manifests.md from "Proposed — for review" to in
flight with P1–P4 shipped.

Verification

Leg Result
go build ./... + full go test ./... exit 0, no FAIL
desktop tsc + vite build exit 0, 4m43s
frontend unit tests 900 pass / 0 fail
electron shell tests 726 total — 720 pass, 6 skipped, 0 fail
lints 12/12 clean (incl. openapi, both token ratchets)
NUL / CJK scans clean

Flutter is absent on this host, so the mobile analyze / test / APK legs are
CI-only.

🤖 Generated with Claude Code

Ubuntu and others added 2 commits August 17, 2026 03:39
…desktop 2026.817.322

Four tags go on this commit once merged:

  mobile-v2026.817.322-alpha    APK + IPA, non-prerelease, owns releases/latest
  hub-v2026.817.322-alpha       hub-server tarballs, prerelease
  host-v2026.817.322-alpha      host-runner tarballs, prerelease
  electron-v2026.817.322-alpha  desktop unsigned alpha, prerelease

Stamp minted with `date -u` (2026-08-17 03:22 UTC). 46 commits since
2026.805.1022 — the largest gap between cuts so far.

**Hub/host, 18 commits.** Pane-state detection lands as a lane: a declarative
evaluator over vendored screen manifests (P1), wired to the poll tick (P2),
raising and retracting attention on a blocked pane (P3), and explaining its own
verdict rule by rule through `pane_explain` (P4). Plus native-resume recipes as
shared data (N1), generic pane-input hardening (Q1), and four engine-vocabulary
corrections found by measuring real binaries: claude's discarded sub-agent
provenance (R5), codex's swallowed command output (E3), the attachment shapes
codex rejects (L4c), and a runtime mode/model switch that resolved the engine
from the wrong column so it had never worked for a steward (#570) — plus the
field mask that makes the three impossible switches say so (R6). Security: an
engine-supplied session id could inject shell into the next respawn.

**Desktop, 32 commits.** The Companion runs a claude (L3a) or codex (L4c)
session locally with no hub, surviving app restart with transcript and memory
restored separately (L3b); the transcript grew streamed output and inline media
(R4), a sub-agent panel (R5), and model/permission pills (R6). Read became a
discovery workspace — six literature sources plus Scholar, cadence monitors,
social subscriptions, ratings, citation details. Plus rich Inspect previews, a
bundled terminal font, an SFTP transfer queue, and a monochrome theme pass.

⚠ Operators must redeploy the hub and host-runner. Both the 2026.730.1231 and
2026.805.1022 sections said the same about their own 51 and 17 commits; if
neither happened this cut compounds both, and every pane-state feature above is
host-runner code by construction.

**Changelog gaps closed in the same pass.** Neither changelog's Unreleased
section covered the ~18 Fleet desktop PRs or four hub-side changes (the Read
library's attachments + rating columns, and the hub halves of R5 and R6), and
the desktop section had seven feature entries misfiled under `### Fixed` plus a
duplicate heading in each file. Written up and restructured rather than shipped
as a partial record.

Verified: hub `go build ./...` + full `go test ./...` (exit 0, no FAIL),
desktop tsc + vite build (4m43s), 900 frontend tests, 726 electron tests
(720 pass / 6 skipped / 0 fail), 12 lints, NUL/CJK scans clean. Flutter is
absent on this host, so the mobile analyze/test/APK legs are CI-only.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…e plan is in flight, not proposed

The roadmap was two releases behind: its Done-this-quarter tables stopped at
2026.730.1231 / 2026.730.1242, and its Now table had no row for either lane
that dominated the 2026-08 cycle.

- Status block re-stamped to the current cut.
- Both Done tables gain their two missing releases, mobile/hub/host and
  desktop, described from the changelog sections rather than commit subjects.
- Now gains two rows: the **hub + host-runner redeploy**, which three
  consecutive cuts have now deferred (51 + 17 + 18 server-side commits are
  not live), and the **vision-parity + pane-state** lanes with what actually
  remains in each — L3c, P5, S1/S2, all deferrable or unstarted.
- `plans/pane-state-manifests.md` said "Proposed — for review" while P1–P4,
  N1 and Q1 had all shipped. Status corrected; `Last verified vs code` left
  alone, because re-stamping it would claim an anchor-by-anchor re-verification
  this commit did not do.

Release commits do not touch the roadmap in this repo (neither 1f8fc77 nor
e60c83f did) — it is maintained by dedicated docs: commits, which is why this
is separate from the version bump it accompanies.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@physercoe
physercoe merged commit 7a7e4fc into main Aug 17, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant