e2f44387e1
S1: ApprovalCoordinator marked a request resolved before submitApprovalDecision, so a throwing submit left it permanently unanswerable; now resolve only on success and clear the flag on failure so the client can retry. Recorded decision also used a hardcoded Tier.T2 regardless of the real tier — now tracked per request. S2: streamGlobal numbered live frames from a per-connection counter starting at 1, colliding with the snapshot's lastSessionSequence (MAX(session_sequence)) after reconnect and causing the TUI dedup filter to drop/misorder frames; now uses each event's own persisted sessionSequence. Approval broadcast no longer sends 0.