Keep explicit board loads authoritative over realtime refresh - #2433
Conversation
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: e8186ca9c3
ℹ️ 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 independent review disposition] HIGH, fix required: a matching mutation that reaches the debounce callback while a background refresh is already in flight is discarded. The active read may have started before that mutation, so the newer state can remain stale indefinitely. The fix round will retain one pending current-board refresh and drain it only after the active refresh settles, while preserving route and stop cancellation. MEDIUM, non-blocking: a failed explicit Retry followed by a successful queued background refresh can leave the prior BoardView load error visible over fresh data. This is outside the merge-blocking fix and will be reconciled against existing issues before tracking. Hosted Required CI run 33757901420 also found a deterministic fixture failure: the board capability parity guard classifies cancelBackgroundBoardFetch as a mutation because it is exported from boardCrud. It is a read-lifecycle action with no server write and will be explicitly accounted as such in the guard. No merge decision applies to this head. One bounded fix and affected reproof follow. |
|
MEDIUM review disposition: tracked as #2434. It remains outside this merge-blocking fix round. |
|
[Codex independent review disposition] Final fresh-context review found no CRITICAL/HIGH direct blocker. The prior HIGH is fixed: one current-board mutation refresh is retained during F1 and drained after settlement; route switch and stop clear it; current-board checks prevent wrong-board drain; store generation and mutation epochs preserve explicit/background ordering and stale suppression. Exact-head local proof: 172/172 affected tests, scoped ESLint, typecheck, production build, and diff check passed. Hosted exact-head CI and automatic review remain in progress. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: e96ba77b66
ℹ️ 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 final fix review disposition] Fresh-context review of the bounded HTTP 403 fix found no CRITICAL/HIGH direct blocker. Generation and mutation-epoch checks run before the new permission branch, so stale, superseded, cancelled, and mutation-invalidated failures remain suppressed; non-403 background failures remain silent. Current 403 preserves cached detail and reports explicit access-loss truth. Reviewer proof: targeted store/realtime/view/resilience tests 128/128, boardCrudStore 39/39, typecheck, and diff check passed. Hosted exact-head CI and automatic review remain in progress. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: a3e5925867
ℹ️ 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".
Summary
Closes #1736
Evidence
Red first at 2647c3a:
Green at a3e5925 on current base d3a3f7a:
Hosted attempt 1, run 33757901420, failed on both frontend platforms only because the parity guard classified the new read-lifecycle cancellation action as a mutation. That guard was corrected before the final head.
Exact-head Smart CI, Smart CI Self-Test, CI Extended, and Required CI run 33762281670 are green, including both Windows matrices and E2E Smoke.
Review disposition
Boundaries