pub(super) fn append_transcript(
broker: Option<&Broker>,
block_id: &str,
data: &[u8],
filestore: Option<&Arc<FileStore>>,
global: Option<(&Arc<FileStore>, &str)>,
stamp_tsidx: bool,
echo: Option<&str>,
)Expand description
The agent-transcript half of handle_append_block_file (Phase 5a-3,
SPEC_AGENT_PANE_BOUNDED_LIVE_WINDOW_MIGRATION_2026_09_23.md §6.3.7 item 5).
The block’s output and the agent’s global zone are written FIRST, and
the event goes out after, carrying where the records landed in each stream
(pos) and the exact byte offset in the block’s file. The block’s order
lock is held from the first write to the publish, so one block’s events
leave in line order. Only transcripts come here: publishing after a
database write would add that write to every terminal keystroke echo.
stamp_tsidx is whether this is an agent stream (it has a global zone,
even if no global store is installed) — as before, only those get the
receive-time sidecar.