Make Review poll degradation visible - #2388
Conversation
…easurement-tooling
Bumps the npm-minor-patch group in /frontend/taskdeck-web with 13 updates: | Package | From | To | | --- | --- | --- | | [@material-symbols/font-200](https://github.com/marella/material-symbols/tree/HEAD/font/200) | `0.46.0` | `0.47.0` | | [axios](https://github.com/axios/axios) | `1.19.0` | `1.20.0` | | [marked](https://github.com/markedjs/marked) | `18.0.10` | `18.0.11` | | [vue](https://github.com/vuejs/core) | `3.5.41` | `3.5.42` | | [vue-i18n](https://github.com/intlify/vue-i18n/tree/HEAD/packages/vue-i18n) | `11.4.9` | `11.4.10` | | [vue-router](https://github.com/vuejs/router) | `5.2.0` | `5.3.0` | | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.67.0` | `8.68.0` | | [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.67.0` | `8.68.0` | | [@vue/compiler-dom](https://github.com/vuejs/core/tree/HEAD/packages/compiler-dom) | `3.5.41` | `3.5.42` | | [@vue/test-utils](https://github.com/vuejs/test-utils) | `2.4.11` | `2.5.0` | | [baseline-browser-mapping](https://github.com/web-platform-dx/baseline-browser-mapping) | `2.11.18` | `2.11.20` | | [eslint](https://github.com/eslint/eslint) | `10.9.0` | `10.9.1` | | [happy-dom](https://github.com/capricorn86/happy-dom) | `20.11.6` | `20.11.12` | Updates `@material-symbols/font-200` from 0.46.0 to 0.47.0 - [Release notes](https://github.com/marella/material-symbols/releases) - [Commits](https://github.com/marella/material-symbols/commits/v0.47.0/font/200) Updates `axios` from 1.19.0 to 1.20.0 - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](axios/axios@v1.19.0...v1.20.0) Updates `marked` from 18.0.10 to 18.0.11 - [Release notes](https://github.com/markedjs/marked/releases) - [Commits](markedjs/marked@v18.0.10...v18.0.11) Updates `vue` from 3.5.41 to 3.5.42 - [Release notes](https://github.com/vuejs/core/releases) - [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md) - [Commits](vuejs/core@v3.5.41...v3.5.42) Updates `vue-i18n` from 11.4.9 to 11.4.10 - [Release notes](https://github.com/intlify/vue-i18n/releases) - [Changelog](https://github.com/intlify/vue-i18n/blob/v11.4.10/CHANGELOG.md) - [Commits](https://github.com/intlify/vue-i18n/commits/v11.4.10/packages/vue-i18n) Updates `vue-router` from 5.2.0 to 5.3.0 - [Release notes](https://github.com/vuejs/router/releases) - [Commits](vuejs/router@v5.2.0...v5.3.0) Updates `@typescript-eslint/eslint-plugin` from 8.67.0 to 8.68.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.68.0/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 8.67.0 to 8.68.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.68.0/packages/parser) Updates `@vue/compiler-dom` from 3.5.41 to 3.5.42 - [Release notes](https://github.com/vuejs/core/releases) - [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md) - [Commits](https://github.com/vuejs/core/commits/v3.5.42/packages/compiler-dom) Updates `@vue/test-utils` from 2.4.11 to 2.5.0 - [Release notes](https://github.com/vuejs/test-utils/releases) - [Commits](vuejs/test-utils@v2.4.11...v2.5.0) Updates `baseline-browser-mapping` from 2.11.18 to 2.11.20 - [Release notes](https://github.com/web-platform-dx/baseline-browser-mapping/releases) - [Commits](web-platform-dx/baseline-browser-mapping@v2.11.18...v2.11.20) Updates `eslint` from 10.9.0 to 10.9.1 - [Release notes](https://github.com/eslint/eslint/releases) - [Commits](eslint/eslint@v10.9.0...v10.9.1) Updates `happy-dom` from 20.11.6 to 20.11.12 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](capricorn86/happy-dom@v20.11.6...v20.11.12) --- updated-dependencies: - dependency-name: "@material-symbols/font-200" dependency-version: 0.47.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: npm-minor-patch - dependency-name: axios dependency-version: 1.20.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: npm-minor-patch - dependency-name: marked dependency-version: 18.0.11 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: npm-minor-patch - dependency-name: vue dependency-version: 3.5.42 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: npm-minor-patch - dependency-name: vue-i18n dependency-version: 11.4.10 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: npm-minor-patch - dependency-name: vue-router dependency-version: 5.3.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: npm-minor-patch - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.68.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm-minor-patch - dependency-name: "@typescript-eslint/parser" dependency-version: 8.68.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm-minor-patch - dependency-name: "@vue/compiler-dom" dependency-version: 3.5.42 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: npm-minor-patch - dependency-name: "@vue/test-utils" dependency-version: 2.5.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm-minor-patch - dependency-name: baseline-browser-mapping dependency-version: 2.11.20 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: npm-minor-patch - dependency-name: eslint dependency-version: 10.9.1 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: npm-minor-patch - dependency-name: happy-dom dependency-version: 20.11.12 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: npm-minor-patch ... Signed-off-by: dependabot[bot] <support@github.com>
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. |
|
Fresh-context review found two HIGH blockers in the first implementation: Legacy hid the retained queue when stale, and Paper inserted the notice as a direct grid child that displaced its columns. One bounded fix commit ( |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b2d2d3028f
ℹ️ 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".
|
Parking at the review ceiling on exact product head HIGH — Paper still hides degraded polling when the queue is empty. After three transient poll failures, MEDIUM / non-blocking: a non-transient response between transient failures does not reset the consecutive-transient counter, so Verification on the reviewed head: focused Review specs 293/293, typecheck, build, and diff hygiene passed; the base-refresh delta was policy/docs only. This is a confirmed merge blocker after the permitted review/fix cycle, so no second fix cascade is being started here. Do not merge #2388. Resume from current |
…tend/taskdeck-web/npm-minor-patch-bb0772f77c deps(npm): bump the npm-minor-patch group in /frontend/taskdeck-web with 13 updates
Adds four new multi-agent prompting resources for Taskdeck: a Claude programme coordinator brief, dedicated Codex Alpha/Beta lane mandates, and a v2 two-Codex operating model. The new docs formalize lane ownership, claim/lease protocol, restart authority for parked work, coordination loops, and release-horizon guidance to reduce cross-lane conflicts and keep canonical project truth aligned with live state.
docs: record the v0.3 integration wave Gate at exact head 63d092e: 20/20 check runs success; mergeable_state clean; merge-base equals main HEAD 0974eeb (0 behind); documentation-only; Codex Code Review completed on 63d092e 2026-09-02T23:21:08Z with zero findings; Copilot approval recommended; aging floor met.
Programme ruling: resume ratified, and the red Smart CI gate is not your blockerCoordinator pass, 2026-09-03. Two rulings and one correction. 1. The resumed repair round is authorizedThis PR parked on 2026-09-02T08:59:09Z at the global-law-11 ceiling with a confirmed HIGH: Paper rendered the degraded-poll warning only inside Head has since moved to Law 11 caps autonomous cycles at two rounds and this is a third. As programme coordinator I ratify it: this round is a programme-authorized repair, not an unauthorized cascade. The authorization is narrow. It covers the one named empty-state defect and nothing else. A new blocker found from here parks the PR again rather than opening a fourth round.
2.
|
…dline' into issue-2214/review-poll-stale-deadline-refresh-57821
Chris0Jeky
left a comment
There was a problem hiding this comment.
Current-base independent adversarial review at 7b3994e61ec56f18dc1716105270890eaef7b192 against 57821f076f74c4715dd359ff29431df2d604bc5c: no CRITICAL or HIGH finding.
Paper empty and filtered-empty branches place the polite stale warning ahead of the existing state templates. Active Paper behavior, Legacy parity, the transient threshold/reset, authorization gating, deadline cancellation, and request-generation guards were traced without a merge blocker.
Independent proof passed: affected Review tests 296/296, typecheck, production build, scoped ESLint, and git diff --check. Browser-level dynamic filtered-empty interaction was not run. Existing lower-severity copy, counter-reset, scroll-visibility, and focused ARIA follow-ups remain tracked.
Hosted Required CI is still running. Smart CI run 33699697079 is red only on the known #2401 stale control-event base defect and has been supplied to active repair PR #2404; it is not being dismissed as flaky.
Make the generated PWA worker contract fresh-checkout safe
Retry Smart CI merge-ref resolution against the run control base
Chris0Jeky
left a comment
There was a problem hiding this comment.
Fresh-context current-base review at exact head 94d07ed against main 62f8686: no CRITICAL/HIGH blocker found.
The merge delta contains only already-landed infrastructure/test configuration and changes no Review product bytes. Static review covered deadline and timeout aborts, stale counters/results, supersession, 403 handling, deep-link pin reads, and both Paper and Legacy render paths. Known localization, deep-link empty-state, and counter-reset residuals remain non-blocking and tracked.
The PR body says STATUS was synchronized, but docs/STATUS.md is not changed by this PR and the canonical record remains stale. That is non-blocking canonical-doc drift for the coordinator/Claude sync packet, not a fix for this bounded review round.
Local current-base proof from the writer: 296 focused tests passed, typecheck passed, build passed, scoped ESLint passed, and diff check passed. Hosted exact-head CI is still being observed separately.
…icting Answers a confirmed Codex P2. Recording #2388's delivery made the adjacent #2298 entry false: line 91 still listed per-request deadlines and stale/degraded queue disclosure as open on #2214 while the new entry recorded both as shipped. In the file that is the declared source of shipped reality, two adjacent entries disagreeing about remaining scope would send an implementer to build something that already exists. I declined this pruning when opening the PR, on the grounds that #2388's own claim about what it removed could not be verified. That reasoning still holds for the claim; it does not hold for these two items, which I verified directly against main rather than against the PR body: REVIEW_QUEUE_REQUEST_DEADLINE_MS = 8_000 useReviewProposals.ts:53 raced via Promise.race :590, cleared :592 consecutiveQueueRefreshFailures :543-560 degraded indication cleared on success :519-520 So exactly two items are struck, each with its evidence inline, and the strike is attributed to #2388 with its merge SHA so the supersession is traceable rather than looking like a silent edit. The stale copy's Paper localization stays open as #2214 item 4, because it is hardcoded English. Deep-link re-authorization, count-neutral replacement announcements and the low-impact accessibility/diagnostic residuals are untouched and still listed. Nothing else was pruned. Verified: the four line references read from main this session; check-docs-governance and check-golden-principles exit 0; git diff --check clean.
Summary
Tests
npm run typecheck: passednpm run build: passedgit diff --check: passedReview
Docs
docs/STATUS.mdnow records PR Make Review poll degradation visible #2388, removes the shipped deadline/degradation/deep-link items from the residual list, and records [Frontend][Review] The Review queue does not refresh while open — a proposal pending server-side shows "Nothing waiting" for 115 s until re-navigation #2194 closed while [Frontend][Review] The queue rail Apply rate is permanently empty - PaperReviewView never binds the applyRate prop #2205 remains separately BlockedNOT verified
Refs #2214