Skip to main content

HIDDEN_REINJECTION_BLOCKS

Static HIDDEN_REINJECTION_BLOCKS 

Source
static HIDDEN_REINJECTION_BLOCKS: LazyLock<RwLock<HashSet<String>>>
Expand description

Global registry of blocks currently inside a hidden-memory-reinjection window — authoritative and set at RPC-dispatch time (COMMAND_AGENT_INPUT’s handler, agent_handlers/input.rs), NOT reconstructed by scanning transcript bytes. reagentx P0, SEVENTH review round, PR #3502: extract_digest_text’s marker-text suppression can only see what’s inside read_recent_activity_digest’s own 96 KB tail window. Personal memory content is expected to grow (§3.4) — the PR’s own measurements record real bodies of 61,725 and 76,164 bytes on this machine, both already past that window on their own, before the model’s reply is even appended. Once the reinjection marker line scrolls out of the window (which large memory content does routinely, not as an edge case), a LATER call — next_prompt_suggestion after the turn ends, or activity_watcher.rs’s independent periodic sweep during it — starts its own fresh extract_digest_text scan with hiding = false and no marker line in view, and forwards the model’s suppressed-turn reply anyway. This registry closes that: it isn’t reconstructed from a byte window at all, so it can’t be scrolled past. extract_digest_text’s own marker-based suppression stays in place as defense-in-depth (e.g. a server restart mid-hidden-turn drops this in-memory registry, but a marker line still inside the window at that point is still caught).

SPEC_HIDDEN_MEMORY_REINJECTION_AFTER_COMPACTION_2026_09_22.md finding #8.