Repository navigation
cmux-tui: add journal session persistence state machines - #9815
lawrencecchen wants to merge 5 commits into
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Found 4 test failures on Blacksmith runners: Failures
|
…te' into task-journal-session-state-machines
|
Obsolete stacked draft; see the closing note above. |
![Fix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/fix-with-codesmith-light.png)
Stacked after #9813, which is stacked after #9806 and #9726. Keep this draft blocked until #9726, #9806, and #9813 are reliable, gated, and landed.
Successor:
Scope for this slice:
Out of scope for this slice:
Why the public hibernate operation is deferred:
The operation needs catalog and generated binding updates across public resource surfaces. This PR first lands the durable source boundary and pure reducers so that the later command has one state contract to call into.
Red and green commits:
Verification:
Blocked broader verification:
A broader registry regression run could not start because another local xcodebuild process took the artifact guard after the focused tests passed. I stopped the waiting cargo process and did not bypass the Xcode guard. The AWS M4 Pro builder path did not answer through tsadmin or direct SSH.
Owner closeout:
Fixed = no durable session persistence state machines -> versioned journal-derived lifecycle/runtime/policy tables with default-off hibernation.
How = pure reducers from trusted local journal records plus SQLite JSON constraints. This is principled because the projection stays rebuildable and cannot be changed by untrusted producer rows.
Risk = public commands, effect dispatch, and host-loss proof are intentionally not implemented here. They belong in successor PRs after this source boundary is reviewed.