pub(crate) fn persist_session_id(
block_id: &str,
sid: &str,
wstore: &Option<Arc<Store>>,
event_bus: &Option<Arc<EventBus>>,
)Expand description
Persist a newly captured session ID to block metadata and broadcast the
waveobj:update event so the frontend reflects the change immediately.
This is the “careful” path from persistent.rs and subprocess.rs. ACP was
missing this step (it only set inner.session_id in memory) — A5 fixes it
by routing ACP through this same function.
No-ops silently when wstore is None (e.g. in unit tests that don’t wire
up a store).