From e014f756fb0e25d56daa80f17bd928f2951127c5 Mon Sep 17 00:00:00 2001 From: Vuong Hoang Date: Tue, 1 Sep 2026 22:20:10 -0700 Subject: [PATCH] =?UTF-8?q?memory:=20snapshot=20=E2=80=94=20infra-ops=20mo?= =?UTF-8?q?ved=20to=20a=20pane=20route;=20waiters=20get=20reaped?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The waiter died a second time, within minutes of being armed, so this seat stopped re-arming and declared a pane route instead. That is exactly what 3.2.0 shipped for. - althing-route declare --discover-pid walks the ancestry to the long-lived claude process rather than the ephemeral bash that invoked it. Passing --pid $$ would bind the route to a shell that dies with the tool call. - Recorded the sharper form of the failure: the waiter does not just die, it dies after confirming it is up. Both waiters reported push and reachable immediately after arming. So a green postbox status is not durable evidence of monitoring, and the reap is not confined to the pane seats that were migrated -- this seat is a fifo waiter and was hit twice. Both consequences raised with forseti on the deploy thread, along with a note that reachable is a report rather than a delivered poke. --- .../2026-09-01-althing-320-deploy.md | 31 +++++++++++++++++++ persistent-memory.md | 5 +++ 2 files changed, 36 insertions(+) diff --git a/persistent-memory.d/2026-09-01-althing-320-deploy.md b/persistent-memory.d/2026-09-01-althing-320-deploy.md index ec0d75d..50465d1 100644 --- a/persistent-memory.d/2026-09-01-althing-320-deploy.md +++ b/persistent-memory.d/2026-09-01-althing-320-deploy.md @@ -75,6 +75,37 @@ tick (~26 s), so the four stale routes emit ~140 lines/hour, ~3,300/day until re enough to bury real signal in the log you reach for when a seat misbehaves. Suggested a back-off after N consecutive exclusions. Their call. +## ✅ infra-ops MIGRATED TO A PANE ROUTE — stop arming waiters on this seat + + althing-route declare --discover-pid + -> infra-ops -> Claude:terminal_2 (claude --allow-dangerously-skip-permissions --resume) + + pid=2175612 started_at=38608652 channel=pane target=Claude:terminal_2 + command=claude --allow-dangerously-skip-permissions --resume + postbox status -> mode: push reachable: true + +`--discover-pid` correctly walks the ancestry to the **long-lived `claude` process**, not the +ephemeral bash that invoked it. Use it rather than passing `--pid $$` — a shell pid dies with +the tool call and the route dies with it. + +⚠ **`reachable: true` is a report, not a delivered poke.** Proof is the next message arriving. + +## ⚠ THE REAP HITS FIFO WAITERS TOO, AND `postbox status` CANNOT WARN YOU + +infra-ops' seat is a **fifo waiter**, not a pane — and `althing-listen` was killed **twice in +one session** (2026-09-01), the second time **within minutes of being armed**. Both times: +`unread: 0`, no mail, seat silently back to `mode: pull`. + +**The failure mode worth naming is not "the waiter dies" — it is "the waiter dies AFTER +confirming it is up."** Both waiters reported `push`/`reachable` immediately after arming. So: + +- **A green `postbox status` is not durable evidence of monitoring.** True when read, false + minutes later, nothing in between to say so. → [[feedback_timestamp_every_state_report]] +- **Anything still on `althing-listen` is monitored only until the reaper notices.** The + waiter path is unreliable for ANY seat sitting at a shell, not just pane-capable ones. +- **Do not loop on re-arming.** Two kills is the pattern; declare a pane route instead. Raised + both consequences with forseti on the deploy thread. + ## Rollback (unused) `uv tool install althing-core==3.1.2` restores the six binaries; the SessionStart hook returns diff --git a/persistent-memory.md b/persistent-memory.md index ed1ccb1..253351a 100644 --- a/persistent-memory.md +++ b/persistent-memory.md @@ -145,6 +145,11 @@ _As of 2026-09-01 — **the GX10 is on the operator's desk, NOT racked. Standing ⚠ 4 pane routes revoked by the new guards (bil-/dvalin-/eitri-/regin-smithy-dev); they re-declare with `althing-route declare --pid `. **Deliberately not notified** (no unsolicited fleet broadcast) — operator's call. + ⚠ **infra-ops now runs on a PANE ROUTE, not a waiter** (`althing-route declare + --discover-pid` — walks to the long-lived `claude` pid, never `$$`). The reap killed our + `althing-listen` **twice in one session, the second within minutes of arming**, each time + after it had reported `push`/`reachable`. **A green `postbox status` is not durable evidence + of monitoring, and re-arming in a loop is not a fix.** → `persistent-memory.d/2026-09-01-althing-320-deploy.md` - **✅ A6000 window CLOSED 2026-09-01 — operator freed ComfyUI's VRAM instead of anyone stopping it.** ⚠ It was a **model unload, not a stop**: `comfyui` still up 8 days, same pid,