fix(dispatch): reconcile durable Hub task admission outcomes - #2351
Merged
Conversation
Make pending Hub identity durable before executor admission, retain immutable accepted/rejected outcomes, authorize stored replay scopes and distinguish live contention from uncertain recovery. Retry only proven pre-execution rejections and preserve accepted work without another start. Refs #2349. Co-authored-by: Codex <codex@vectorcontrol.tech>
Treat explicit capacity/persistence failures as recheckable, preserve uncertain outcomes without ACK/FAIL and clear their note only after first acceptance. Extend real-renderer fixtures and keep typed error clearing without a cast. Refs #2349. Co-authored-by: Codex <codex@vectorcontrol.tech>
Describe persistent admission evidence, cached and cold replay authorization, retryable pre-execution rejection and explicit uncertain outcomes. Expose admission metadata without claiming process recovery. Refs #2349. Co-authored-by: Codex <codex@vectorcontrol.tech>
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Team 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 |
…writes Keep replay/target decisions distinct from the pending identity write so the state machine remains within the existing complexity gate. Serialize persistence failure injection with the background writer. Co-authored-by: Codex <codex@vectorcontrol.tech>
Do not leave the manual-review reason in a hidden bridge store. Show it through the existing warning UI and deduplicate unchanged reasons across transport trace IDs; keep acceptance and execution unchanged. Co-authored-by: Codex <codex@vectorcontrol.tech>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Closes #2349.
pendingadmission together before executor startup, using the existing File snapshot / SQLite durable-row machinery. Final accepted/rejected outcomes are immutable and retried synchronously after persistence errors.Validation
a66dc2e2e2f3b22fcdd351699b4be8b805bb14f1passed all seven required checks in run 34062978527, including native Windows and the backend PostgreSQL/Redis/fixture matrix. Existing unrelated report-only frontend lint findings were not presented as a clean full-lint result.Scope and evidence boundaries
No new SQL migration, credential path, standalone recovery database or verifier. Source and fixture evidence only: no live deployment, actual model/login request or packaged Desktop claim. Admission evidence does not prove process liveness; orphan/pending results still need external reconciliation and are never blindly restarted. Explicit deletion/retention of identity limits long-term dedup guarantees. Cross-transport execution intent and callback route ownership are the separately tracked #2350.