Study W · Sessions & memory
Who writes the memo?
Studies T and V validated the memo with oracle extraction: the harness knew what to record. What ships in production delegates that judgment to the agent via an update_session_notes tool and a prompt rule, with a 32-message history window also present; and within the window, callbacks succeed via history whether or not the agent records, so a lazy agent's empty memo is invisible until truncation.
Study W tested the shipped mechanism verbatim (character-identity ports) on 36-step sessions that cross the window, with a mid-session retraction, on three models including claude-opus-4.8; the series' first data on the tier the production system runs.
Both gates passed. Pure agent extraction ties the oracle exactly (recall 36/36 per model, retractions 12/12, zero noise notes, one drop event in 72 sessions), the tool gets called ~4 times per session at exactly the declarative moments, and the laziness hypothesis is refuted: with history present the recording cadence is unchanged and post-truncation callbacks hold; opus a perfect 36/36, gemini 35/36, sonnet 31/36 (not significant, and not memo-explained: its memo was complete in every failing cell).
The over-32-message protection is real protection, not theater. Filled dots: post-truncation callbacks; hollow: within-window.