f48a065c21
- The pump's delivered/degraded writes (stream flag, live flag, PublishHealthy / Degrade) now happen in TryMarkStreamDelivered / TryDegradeStream: one critical section under _subscriptionLock that re-checks the session generation. A pump wedged in a subscriber past its last check can no longer report a replaced session's (down) stream Healthy and make the read path trust it. - m3: the index and condition tracker are installed in the same lock as the session + generation and captured under it (TryCaptureSessionState), so a stale chunk cannot fold into the new session's index. - Teardown also bumps the generation, so an abandoned pump cannot write over the shutdown's health either. - m2: an Agent restart clears the live flag before clearing the index, so reads go to /current until the re-baseline lands. Red test: the wedged-pump harness with the new stream failing, plus a positive control (the current pump's chunk restores Healthy). Refs #743 Claude-Session: https://claude.ai/code/session_01Ub9hGmYLQvn9XETzw7CMsT