pub(crate) fn schedule_agent_zoom_mirror(
store: Arc<Store>,
agent_id: String,
zoom: Option<f64>,
)Expand description
Mirror an agent block’s term:zoom into the per-agent ui:zoom content
blob immediately (no debounce) so the zoom survives pane close even if the
user closes the pane right after zooming. zoom = Some(z) upserts;
zoom = None (term:zoom reset to null / 1.0) deletes the row so a
default agent stores nothing. Writes are off-thread so the WebSocket
handler stays non-blocking; SQLite serializes concurrent writes via the
store mutex. See SPEC_AGENT_ZOOM_PERSISTENCE §4.3.