Bind Paper Review Apply rate to weekly decisions - #2295
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: 7cef9eef14
ℹ️ 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: 67a4e82d08
ℹ️ 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: 9fdd34c3fb
ℹ️ 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: fbd648eaa0
ℹ️ 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".
|
Parked at the bounded review ceiling. Current checkpoint:
Even a green CI run does not make this head merge-eligible. Exact resume: bind retained metric history to an authoritative current readable-board set when the unscoped queue returns 200, or move the history projection server-side behind authorization. Pin file-away -> revoke board -> successful filtered 200 -> no inaccessible-board cadence/rate. Then run the current-base focused/full frontend gate and one review only for that defect. The worktree and ready PR are preserved; no third fix round was attempted. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 07a7b5d8c4
ℹ️ 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".
Resumed defect-only review checkpointHead: Changed:
Verified:
Review disposition:
NOT verified: live API, browser, or screen-reader behavior. CLAUDE_SYNC_PACKET
|
Review checkpoint supersededThe prior checkpoint recorded the independent review available at that time. A later exact-head Codex connector review found one confirmed HIGH: explicit accepted queue reloads do not run retained-board reauthorization. PR #2295 is not merge-eligible at CLAUDE_SYNC_PACKET
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ee84f1bb2e
ℹ️ 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".
| }) | ||
| if (requestId !== latestProposalLoadRequestId) return | ||
| proposals.value = loadedProposals | ||
| onAuthoritativeQueueReplaced?.() |
There was a problem hiding this comment.
Invalidate retained metrics on explicit 403 loads
When a mounted reviewer retains a decision from board A, navigates to another board, loses access to A, and then returns to ?boardId=A, the route-triggered loadProposals() receives 403, but this hook runs only on success; the catch leaves A in readableFiledAwayBoardIds and leaves queueAccessRevoked false, so the rail exposes A's cadence and Apply rate until a later background poll detects the revocation. Fresh evidence beyond the earlier background-poll finding is this explicit-load 403 path, which should synchronously clear or suppress retained authorization as the poll path does.
AGENTS.md reference: AGENTS.md:L97-L100
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Confirmed HIGH at ee84f1b. An explicit scoped load that returns 403 can leave retained cadence history readable until a later poll. This is a direct authorization-state defect. This is the second reopen at the bounded review ceiling, so I am parking this head rather than starting a third fix round. Exact resume point: add an authoritative rejection path for explicit 403 loads that synchronously clears or suppresses retained metrics, with a route-away, revoke-access, route-back regression.
|
Parked at exact head The final connector review confirmed a HIGH authorization-state defect: after a reviewer loses access, an explicit scoped load returning 403 can leave retained cadence history visible until a later poll. This is the second reopen in the bounded review pipeline, so no third fix round is starting. Exact resume point: add an authoritative rejection path for explicit 403 loads that synchronously clears or suppresses retained metrics. Prove route away from board A, revoke A access, route back with CLAUDE_SYNC_PACKET
|
Summary
ReviewQueueRail, preservingundefinedfor no attributable history and numeric0for a measured zeroImplementation notes
The numerator is proposals in the qualifying decided cohort with a non-null
appliedAt; current status is deliberately not used.appliedAtis the lifecycle authority because an applied proposal can later be Dismissed and must remain part of Apply history.The projection remains bounded by the existing 200-proposal review page. This PR adds no endpoint, paging path, or backend expansion.
Tests added / updated
appliedAtVerification
npx vitest --run --maxWorkers=2 src/tests/composables/useReviewCadence.spec.ts src/tests/views/paper/review/PaperReviewView.spec.ts src/tests/views/paper/review/ReviewQueueRail.spec.ts? 3 files / 174 tests passednpm run typecheck? passednpx eslint src/composables/useReviewCadence.ts src/tests/composables/useReviewCadence.spec.ts src/views/paper/PaperReviewView.vue src/tests/views/paper/review/PaperReviewView.spec.ts? passednpm run build? passednpx vitest --run --maxWorkers=2? 357 files / 5,273 tests passedgit diff --check? passedDocs
No canonical docs changed: this wires an already-shipped rail contract without changing API, operator workflow, or roadmap scope.
Risks / follow-ups
Closes #2205