Repository navigation
docs(deploy-tests): read client-cache's prefetch race as upstream - #446
Conversation
"should refetch the full page after 5 mins" of client-cache.original failed once on cloudflare under Node.js 26 in the night's run of 2026-11-02 (run 41491299214): `#loading` never showed after the second click. The test waits for the links' new prefetches with `waitForIdleNetwork()`, which is the document's own network idle and returns at once. A click while a prefetch is still out navigates with one dynamic request and no loading state. vercel/next.js#87412 names the race, and the test's own steps on `next start` 16.4.3 failed 3 of 20 runs with no adapter. The judge reads only the second wait (line 386). The suite is the same at 16.4.4.
|
Arkor — Preview deployments for arkorlab-upwind Use the checkbox below to choose whether this pull request gets preview deployments.
Checking this builds the latest commit and future pushes. Unchecking stops queued and future builds; a running build can finish and an existing preview stays available. |
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. |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
The account paying for this security review has reached its Codex usage limits. The payer can check the Codex usage dashboard. For personal accounts, using credits requires enabling “Use credits for security reviews” in Code review settings. If you do not manage the paying account, contact this repository's admins. |
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 39 minutes. View limit details
Walkthrough
Merge Risk:
|
[Low impact] The PR appears safe to merge. SummaryThe PR records a known
Reviews (3) · Last reviewed commit: "docs(deploy-tests): say plainly why clie..." · Reviewed by Greptile |
There was a problem hiding this comment.
1 issue found across 3 files
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="tools/deploy-tests/src/reviewed.ts">
<violation number="1" location="tools/deploy-tests/src/reviewed.ts:330">
P2: This record applies to every target and Node.js lane, although the evidence only covers `cloudflare` under Node.js 26. Restrict the group to `targets: ['cloudflare']` and `nodes: ON_NODE_26` so matching failures in unverified lanes still fail the shard.</violation>
</file>
Reply with feedback, questions, or to request a fix.
View guided diff | Turn on auto-fix | Re-trigger cubic
| }, | ||
| { | ||
| reading: 'upstream', | ||
| record: 'app-client-cache', |
There was a problem hiding this comment.
P2: This record applies to every target and Node.js lane, although the evidence only covers cloudflare under Node.js 26. Restrict the group to targets: ['cloudflare'] and nodes: ON_NODE_26 so matching failures in unverified lanes still fail the shard.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. At tools/deploy-tests/src/reviewed.ts, line 330:
<comment>This record applies to every target and Node.js lane, although the evidence only covers `cloudflare` under Node.js 26. Restrict the group to `targets: ['cloudflare']` and `nodes: ON_NODE_26` so matching failures in unverified lanes still fail the shard.</comment>
<file context>
@@ -325,6 +325,21 @@ const AT_16_4_3: readonly Group[] = [
},
+ {
+ reading: 'upstream',
+ record: 'app-client-cache',
+ // The second wait for the loading state, after the clock moves on: the first follows a wait the
+ // document's own load answers, which leaves no prefetch out.
</file context>
| record: 'app-client-cache', | |
| record: 'app-client-cache', | |
| targets: ['cloudflare'], | |
| nodes: ON_NODE_26, |
…prefetches - A prefetch of the adapter's that failed would skip the loading state as well (CodeRabbit). The reading now holds only where the suite's cases that prefetch again after five minutes, and prefetch a dynamic page in part, passed in the same run (`beside`). In the runs that failed it, both passed. - The record names its release and commit, 16.4.3 at 29bbeab (cubic). - The record says why it holds on both targets and under both Node.js versions: the race is the test's and the client router's, and it fails on `next start` with no adapter (cubic).
|
The account paying for this security review has reached its Codex usage limits. The payer can check the Codex usage dashboard. For personal accounts, using credits requires enabling “Use credits for security reviews” in Code review settings. If you do not manage the paying account, contact this repository's admins. |
There was a problem hiding this comment.
All reported issues were addressed across 2 files (changes from recent commits).
Reply with feedback, questions, or to request a fix.
View guided diff | Turn on auto-fix | Re-trigger cubic
…ts prefetch cases The comment and the record said "a prefetch of the adapter's" with no noun after it (cubic). They now say that a failed prefetch of the link skips the loading state too, so a failure is read only where the suite's cases that prefetch again after five minutes, and that prefetch a dynamic page in part, passed in the same run.
|
The account paying for this security review has reached its Codex usage limits. The payer can check the Codex usage dashboard. For personal accounts, using credits requires enabling “Use credits for security reviews” in Code review settings. If you do not manage the paying account, contact this repository's admins. |
|
Codex Review: Didn't find any major issues. Bravo. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
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
This adds an upstream reading for one case of
client-cache.original: "should refetch the full page after 5 mins". It failed once oncloudflareunder Node.js 26 in the night's run of 2026-11-02 (run 41491299214), when#loadingnever showed after the second click./, and waits for the links' new prefetches withwaitForIdleNetwork()before it clicks.next start16.4.3 with no adapter, the test's own steps failed 3 of 20 runs.#loading(line 386, after the clock moves on).Changes
src/reviewed.ts: the reading.REVIEWED.md: its record, under Upstream.test/judge.test.ts: the recorded failure message.Verification
The
tools/deploy-teststests (198), typecheck, lint, format and the vocabulary check pass.Summary by cubic
Reads
client-cache.original's "should refetch the full page after 5 mins" failure as an upstream race indeploy-tests, so the suite no longer flags it as a regression.waitForIdleNetwork()is answered by the document's own network idle, so a click while the link's prefetch is still out navigates with no loading state.next start16.4.3.#loading(line 386), after the clock moves on; the reading holds at 16.4.3 (29bbeab) and 16.4.4.Written for commit 6cce0ba. Summary will update on new commits.
Summary by CodeRabbit