docs: snapshot for context reset -- in-flight rewritten, Booth is next

The in-flight section had gone self-contradictory: its header said lv-mccarthy
SHIPPED while the body still carried the pre-ship draft (It is NOT shipped for
one reason...) and an unpushed-commit count that was no longer true. That section
is decay-prone by design and rewrites freely; this is the rewrite.

Now leads with the Booth (services/booth) as the next work, carrying the context a
fresh session needs before its first question -- what the board is, and the warning
that its last two sessions each shipped a control that did nothing, both found by
the operator rather than by me, because I read templates instead of rendering them.

lv-mccarthy is compressed to the ship facts plus its two carried-forward items: the
length defect (open follow-up is a retrain folded into Faulkner's pair build per the
operator's steer, not a checkpoint change) and the Skaldsong think-tag check. Every
number lives in the detail file.

Push state is now recorded as VERIFIED rather than asserted -- rev-list
origin/main..HEAD = 0 -- and the wall-clock stamps are corrected to ~21:05 PT after
the handoff generator's UTC stamp showed the session had run three hours past what
I had written.

NO ARCHIVAL this run despite the index sitting at 514 lines against a ~300 soft cap.
Only 5 of 181 dated entries predate the 14-day guard, and all five carry an open
deferred-work pointer (parked ospool/naspool-evac; run 3c staged and deliberately
not launched; fused-MoE at park 47; nconnect=8 tracked at an althing thread; the
AI-tab regrouping belayed, untracked by operator choice). The guard holds every one,
which is the intended outcome -- an over-cap file that keeps live decisions beats a
scannable one that lost a decision.
This commit is contained in:
Vuong Hoang
2026-09-21 21:07:20 -07:00
parent 3847d8b9fb
commit ddc7926cb9
+40 -40
View File
@@ -1,6 +1,6 @@
# Persistent memory — eshpfi-management
_Last updated: 2026-09-21 ~16:45 PT (⭐ **the ops log is BUILT** and then failed four ways in its first hours — every one recording something unfindable; the day's subject was instruments that report without looking. ⭐ Draupnir engine COMPLETE and acceptance-tested on irv-ml1. ⭐ Booth gained blur + a closed keep round trip after shipping two dead controls. ⭐ claude-bot is an org Owner; cicada+draupnir moved to `pfi`; vh-token use standing-authorized from the vault. ⭐ nh3-dev 84%→72%, and a LoRA adapter rescued from a 3-day-swept /tmp. ⭐⭐⭐ lv-mccarthy SHIPPED (ckpt300, fourth voice on the seat) — memorisation identical to the author, voice best-of-five, at a cost of 35% out-of-band generations; the two-epoch recipe is 0 for 3 with the loss curve CONFIDENTLY wrong; I held the ship three times and only the first hold was right; and every voice on the seat has been emitting empty <think> tags since 2026-09-16.)_
_Last updated: 2026-09-21 ~21:05 PT (⭐ **the ops log is BUILT** and then failed four ways in its first hours — every one recording something unfindable; the day's subject was instruments that report without looking. ⭐ Draupnir engine COMPLETE and acceptance-tested on irv-ml1. ⭐ Booth gained blur + a closed keep round trip after shipping two dead controls. ⭐ claude-bot is an org Owner; cicada+draupnir moved to `pfi`; vh-token use standing-authorized from the vault. ⭐ nh3-dev 84%→72%, and a LoRA adapter rescued from a 3-day-swept /tmp. ⭐⭐⭐ lv-mccarthy SHIPPED (ckpt300, fourth voice on the seat) — memorisation identical to the author, voice best-of-five, at a cost of 35% out-of-band generations; the two-epoch recipe is 0 for 3 with the loss curve CONFIDENTLY wrong; I held the ship three times and only the first hold was right; and every voice on the seat has been emitting empty <think> tags since 2026-09-16.)_
> **Always check for `/tmp/infra-ops-handoff.md`** — if it exists and its
> `Written:` stamp is under **8 hours** old, read it (it carries the in-flight
@@ -115,51 +115,49 @@ no longer deployed sidecars here. See Recent decisions.)
## Current state / in-flight
_As of 2026-09-21 ~16:40 PT._
_As of 2026-09-21 ~21:05 PT._
### ✅ lv-mccarthy SHIPPED 2026-09-21 — ckpt300 live on voices-seat as the fourth voice
### NEXT UP — the Booth (`services/booth`)
The run was complete all along (2026-09-18 00:49 PT) — three days of "unverified"
was a reporting gap, not a failure. The v2 gate has now RUN, 720 generations, and
both candidates are **disqualified by axis C**. Full record:
`persistent-memory.d/2026-09-21-lv-mccarthy-gate.md`. ⚠ `pfi-gx10` does not
resolve from nh3-dev by name — it is **10.100.50.60**.
The operator is moving to Booth work this session. Nothing is specified yet; ask
what they want rather than assuming from the backlog below. Context worth having
before the first question:
**The shape of it:** voice PASSES on both candidates and both reads (ckpt450 at
2.9× its floor, and ~3/4 of the gain survives having every punctuation mark
stripped, so it is not the cheap win). Memorisation on **ckpt450 is the cleanest
result in the line** — 0.12 against the author's own held-out 0.12, longest match
11 words against the author's coincidental 12, all 96 matches read and every one
stock grammar. **Damage is the blocker**: 20% (ckpt450) / 28% (ckpt900) of
generations overshoot the 90–140 band against base's 1%, worst case a degenerate
`he looked at X and he looked at Y` loop at 279 words.
- **What it is:** ephemeral media board on nh3-dev, `http://10.100.10.50:8090`,
drop a folder in `~/booth-data`, 24 h TTL, A/B renders. `booth link <url> "<desc>"`
is the fleet link-board every session is told to post operator-facing links to.
- ⚠ **Its last two sessions each shipped a control that did nothing** — a reveal
handler Jinja discarded for sitting after `{% endblock %}`, and a `×` a sibling
form covered by 30×22 px. **Both were found by the operator, not by me, because
I read templates instead of rendering them.** `scripts/layout-probe.py` exists
now and took four iterations to become trustworthy — use it.
→ `persistent-memory.d/2026-09-21-booth-two-dead-controls.md`
- The ASKS primitive (`booth ask|asks|answer --wait`) and inline asks-in-a-custom-
report are both live; see the 2026-09-09 decisions.
**SUPERSEDED by the five-arm round — read the record, not this summary's first
draft.** Two more arms were gated after the frozen axis C was proven
**arithmetically unsatisfiable** (a perfect adapter fails it by 0.09), and the
governing rule reverted to the operator's own ratified v2 (ran-on only, 2026-09-15).
### ✅ lv-mccarthy SHIPPED — ckpt300 is the fourth voice on `voices-seat`
**⭐ ckpt300 (epoch 0.652) is the best arm on every axis**: voice +0.177 at **3.2×**
its floor (and +0.128 at 2.8× with all punctuation stripped) — best point estimate
AND best margin; memorisation **0.12 against real unseen McCarthy's own 0.12**, max
10 against the author's coincidental 12, all 31 matches read and all stock; and the
**least overshoot of any checkpoint**.
Live on fv-ml1 GPU0 `:8027` as `lv-mccarthy`, verified by read-back: seat healthy,
five models, GPU0 96,012 MiB (a LoRA costs nothing beside the existing seat), live
smoke 96 words / 0 quote marks / `wasnt`, other three voices unregressed. Full
record and every number: `persistent-memory.d/2026-09-21-lv-mccarthy-gate.md`.
⚠ `pfi-gx10` does not resolve from nh3-dev by name — it is **10.100.50.60**.
**It is NOT shipped for one reason: `ran-on` +0.12 against a bar of 0.100 that I set
myself.** It clears the operator's ratified 0.200 floor with 40% headroom. The bar's
*number* excludes it; the bar's *stated rationale* — written against ckpt450's pass
by 0.01 — does not. **That is an operator call and the only thing standing between
this adapter and the voices seat.**
**Two things carried forward, neither blocking:**
⚠ **Three claims from this session's earlier turns are REFUTED by the five-arm data**
and a next session should not carry them: the damage is NOT flat across epochs
(ran-on is non-monotonic, 0.38 → 0.13 → 0.20 → 0.28, minimum near epoch 0.65);
ckpt225 runs **long**, not short (48% out-of-band, worst arm in the run); and the
"gate an earlier checkpoint" recommendation was RIGHT — retracting it on a three-arm
read was the error. The retraction rested on **six generations of one arm**.
⚠ **ckpt325/350/375 were deliberately NOT gated.** One may sit under 0.100.
Searching the checkpoint space until something clears the bar is candidate-shopping.
1. **The length cost is real and shipped documented, not fixed.** In-band 0.65
against base's 0.89; **35% of generations miss the requested 90–140 band against
base's 11%.** No checkpoint choice fixes it — every adapted arm is 33–48% out.
**The open follow-up is a retrain targeting length (pair construction or the
length target), and the operator's steer was to fold it into Faulkner's pair
build rather than run it standalone**, since Faulkner is the measured next voice
and would otherwise inherit the same defect.
2. ⚠ **Check Skaldsong for the think-tag defect.** Every voice on the seat prefixes
an empty `<think></think>` unless the caller sends
`chat_template_kwargs: {"enable_thinking": false}`. It is the Qwen3 chat
template, so it has affected lv-yarros/bronte/hemingway since 2026-09-16. No
gate number is affected; a caller that omits it gets 17 junk characters at the
head of every passage, and any word-count over that string counts tags as prose.
### Draupnir engine — COMPLETE on irv-ml1, acceptance passing
@@ -180,7 +178,9 @@ the althing thread.
its mechanism is still unexplained.
- **Disk:** nh3-dev at 72%, 66 GB free after the 2026-09-21 triage.
- **ops-log:** clean audit across 6 hosts; commit attribution working.
- **19 commits unpushed on main**, plus the memory changes from this snapshot.
- **main is PUSHED and clean** — operator confirmed 2026-09-22 ~04:00Z; `git rev-list
--count origin/main..HEAD` = 0, verified rather than assumed.
only the hook-generated `graphify-out/GRAPH_REPORT.md` is dirty.
### Open, low-urgency