Repository navigation
[1/6] Add safe Codex recovery and in-place fork updates - #1
Conversation
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configuration
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 |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7defe49d34
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c815922ae9
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4687364906
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Preserve the saved checkpoint and the preceding reviewed stack layer. Include independently reviewed corrections and opposing regression coverage.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 9da3e75c04
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Preserve published history and the ordered feature stack.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6250142f54
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b102591ba9
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review Please review the full current PR diff against its stacked base, including the latest fixes. Current head: |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b102591ba9
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Preserve published history and inherit the preceding reviewed stack layer. Includes opposing regressions for the public review findings.
|
@codex review Please review the complete current PR diff, including production code, documentation and regression coverage, at head Final local validation passed 2,581 tests across 83 changed or related CI files (one skipped), 13 browser tests, and the appropriate static/build checks. Recheck the full feature contract and sibling paths, including exact identity/home/configuration, fresh complete evidence, owner cancellation, durable action ownership and uncertain-delivery vetoes. No installation or live-worker effects were performed. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: bbe2ec751c
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review Please perform a fresh full-diff review of current head |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c234927cfc
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b2111f2980
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 969a9fbbbc
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 2ad7d8af29
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 55711b7d15
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 29fd911b59
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 16a1ec6734
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 3388b9fcee
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c74f996bb9
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d327039283
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 40e7d8f0fd
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: cf7b582595
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 5fa443522f
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 28b229f5d6
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 9a74d3b61f
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Adds opt-in recovery for owned local Codex sessions using the exact conversation UUID, launch settings, working directory and effective Codex home. Durable retry budgets, circuit breakers and uncertain-delivery reservations retain owner intent, task ownership, pending child work, clean-exit and permission/approval/authentication vetoes. Incomplete, malformed, stale or uncertain evidence cannot authorize restart or a fresh conversation.
Browser input separates FIFO admission from committed delivery. Partial and uncertain sends remain sealed against replay. Pasting preserves multiline Unicode and whitespace, uses bracketed paste for Codex, checks the target and leaves submission to the owner's Enter. Each document has a fresh identity; immutable durable records retain original delivery identities and causal ordering across reloads and concurrent windows. Rejected frames remain queued, retired identities cannot replay, and malformed or incomplete storage evidence requires attention.
Local broker input and probes use private stdin and invocation-specific tmux buffers with final authority, native-pane and composer checks. Cleanup removes only positively identified artifacts; uncertainty preserves them. The fork update helper is preview-first and includes guarded rollback of invocation-owned changes.
Initial broker launches retain a PID-zero/incarnation registration through lost or malformed native/startup receipts. Reconciliation and owner input cannot turn that uncertainty into a replay, replacement launch or trusted numeric PID. Existing uncertain panes remain available for inspection.
Reset refuses to discard an unresolved recovery flight. Verified acceptance or certified non-delivery must settle the reservation first; a timeout or unknown result cannot authorize replay.
Expired sparse browser-input clients retire as entire rejection-sealed identities, retaining active and uncertain delivery protections while releasing idle capacity. Local brokers rejected before native dispatch roll back only their exact provably unlaunched artifacts. Startup preserves exited panes only for eligible isolated-broker no-daemon launches; ordinary launches retain their existing dead-pane behavior.
CLI management refreshes retain the recovery capability served by the launch catalog. Management-list rows cannot add recovery authority, and unknown, missing or explicitly disabled capabilities keep recovery controls hidden.
Restoring an oversized or invalid input frame now preserves its causal barrier and refuses dependent suffix replay. Per-frame and restored-queue limits use UTF-8 bytes. Every tagged HTTP input request has a bounded deadline; ordinary text retains its original queued identity and FIFO order for safe retry, while uncertain named-key delivery retains its existing veto.
Tagged HTTP wake input is acknowledged only after bounded complete wake and guarded dispatch. Legacy wake buffering refuses capacity without evicting accepted bytes. Durable browser backlog writes and reloads use the same UTF-8 byte budget; overflow stays pending with attention.
Failed startup-authority writes clean up only staging files proven to belong to that invocation. A verified completed configuration replacement updates its rollback receipt before later durability checks, preserving cleanup safety after write, sync, close or rename failures.
Rollback cleanup keeps the exact provisioning receipt until the trusted janitor acknowledges deletion or verified absence. Busy, failed, timed-out and uncertain attempts retain proof for bounded retry; exhaustion does not erase the receipt.
Recovery journal publication seals uncertainty before rename. Failed or lost publication acknowledgments block subsequent queued and later snapshot mutations until a fresh validated load incorporates disk state, preserving visible reservations across sibling writes and restart.
A durable private publication fence now survives rejected enable/reset journal writes across restart. Readable reservations remain preserved while automation and mutations stay blocked pending manual inspection. Healthy publication removes only the exact owned fence as its final commit step.
Tagged browser input uses cached local-worker exit evidence before dispatch and acknowledgment on HTTP and WebSocket. Known-dead frames retain their FIFO identity without recording owner input. Late exit observations preserve actual attempted-delivery seals; browser input does not add synchronous tmux probes.
Retained rollback receipts now receive a bounded, fair background sweep with exponential backoff. Missing janitor acknowledgments preserve exact cleanup proof; repeated failures cannot leave exhausted receipts permanently inert or discard uncertain artifacts.
Mobile shell paste keeps text on the durable browser-input path, preserving CR/LF, Unicode and trailing whitespace when WebSocket delivery is unavailable. Enter remains a separate ordered mux record. A real Chromium regression exercises failed HTTP delivery and later exact retry.
Tagged browser input now refuses delivery while pane lifecycle work is already active. Both input/lifecycle orderings preserve reservations, FIFO retry identities and uncertain-delivery seals; later layers retain their explicit owner-cancellation vetoes.
Named keys now refuse cached-dead local panes before tmux effects, retaining the browser ordering barrier with certified non-delivery. Death observed after a native send remains uncertain and cannot be certified as not sent.
Rollback receipts persist as private restart-discoverable markers before janitor dispatch. Bounded rotating scans validate exact marker, directory and file identity, current durable references and native inactivity. Unknown, replaced, referenced or running material remains protected. Confirmed session deletion also retires its durable key barriers and dependent text across browser partitions; optimistic, failed and uncertain close requests preserve the queue.
Rollback markers now publish atomically from verified private staging files, with exclusive final-name publication and bounded interrupted-write retry. Post-creation Codex startup failures retain exact mux ownership before environment setup can fail.
Cleanup bounds now apply to recovery-reference provenance rather than unrelated application state. A full-domain freshness digest still detects owner/configuration changes. Large current and backup application-state files use a finite 32 MiB native cleanup bound with exact whole-file hash/inode rechecks; other journal and receipt bounds remain unchanged.
Cleanup dispatch now requires its exact durable rollback marker. Publication failures retain bounded retry ownership without invoking the janitor.
Validation: Before the final review fixes, the complete 263-file changed/related integration suite passed 8,811 tests, with 21 skipped, including 25 targeted Claude compatibility files. The final combined tree then passed 864 targeted regression tests, all six layer typechecks, all 10 static/build checks and all 66 browser tests.
All six branches include their current stack parent and preserve published history. PR 5 received only the upstream parent merges required for GitHub's native-stack ancestry requirement. All published trees exactly match the validated combined development layers. PRs remain open and unmerged. No installation, migration or deployment was performed.