Implemented persisted alert-context hydration so alert drawers resolve evidence from ClickHouse context instead of only live cache state.
GET /flow/alerts/:trace_id/context.Alert rows remain delivered by existing list feeds and websocket channels; this change only affects detail-time hydration for investigative context.
The storage bundle resolves evidence refs by type: flowpacket:* refs map to flow packet IDs, remaining refs map to option print trace IDs, and unresolved refs are returned as missing_refs.
Selecting alerts now resolves more complete persisted evidence context, reducing empty evidence states caused by live-cache eviction windows.
bun test packages/storage/tests passed.bun test services/api/tests passed.bun test apps/web/app/terminal.test.ts passed.bun --cwd=apps/web run build passed.Front-end loading indicator and explicit missing-ref surfacing in drawer UI are partially addressed; the endpoint and hydration path are in place for further UX polish.
None required for baseline endpoint + hydration path. If needed, create a follow-up Beads item for richer drawer loading skeleton and explicit missing-ref diagnostics display.