Skip to content

chore: upgrade claude-opus-4-6 to claude-opus-4-7#3

Closed
NathanDrake2406 wants to merge 2 commits into
mainfrom
claude/update-opus-workflows-XKwbs
Closed

chore: upgrade claude-opus-4-6 to claude-opus-4-7#3
NathanDrake2406 wants to merge 2 commits into
mainfrom
claude/update-opus-workflows-XKwbs

Conversation

@NathanDrake2406

@NathanDrake2406 NathanDrake2406 commented Apr 22, 2026

Copy link
Copy Markdown
Owner

Summary

  • Upgrades all claude-opus-4-6 references to claude-opus-4-7 across workflows and opencode agent configs
  • Covers GitHub Actions workflows (bonk, bigbonk, nextjs-tracker) and opencode agents (viguy, reviewer, nextjs-tracker)

Changes

File Change
.github/workflows/bonk.yml claude-opus-4-6claude-opus-4-7
.github/workflows/bigbonk.yml claude-opus-4-6claude-opus-4-7
.github/workflows/nextjs-tracker.yml claude-opus-4-6claude-opus-4-7
.opencode/agents/reviewer.md claude-opus-4-6claude-opus-4-7
.opencode/agents/viguy.md claude-opus-4-6claude-opus-4-7
.opencode/agents/nextjs-tracker.md claude-opus-4-6claude-opus-4-7

Update model references in bonk, bigbonk, and nextjs-tracker workflows
to use the latest Opus 4.7 model via the Cloudflare AI Gateway.

https://claude.ai/code/session_018pEfYehfR4YDA1Ekmu1vn3
Copilot AI review requested due to automatic review settings April 22, 2026 20:11

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR upgrades the GitHub Actions workflows that run the Bonk agents and the Next.js tracker to use the newer Claude Opus 4.7 model via the Cloudflare AI Gateway.

Changes:

  • Switch bonk.yml to cloudflare-ai-gateway/anthropic/claude-opus-4-7
  • Switch bigbonk.yml to cloudflare-ai-gateway/anthropic/claude-opus-4-7
  • Switch nextjs-tracker.yml to cloudflare-ai-gateway/anthropic/claude-opus-4-7

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated no comments.

File Description
.github/workflows/bonk.yml Updates the model used by the Bonk workflow to Opus 4.7.
.github/workflows/bigbonk.yml Updates the model used by the Big Bonk workflow to Opus 4.7.
.github/workflows/nextjs-tracker.yml Updates the model used by the Next.js tracker workflow to Opus 4.7.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@NathanDrake2406 NathanDrake2406 changed the title chore: upgrade workflows from claude-opus-4-6 to claude-opus-4-7 chore: upgrade claude-opus-4-6 to claude-opus-4-7 Apr 22, 2026
@NathanDrake2406
NathanDrake2406 deleted the claude/update-opus-workflows-XKwbs branch April 23, 2026 08:39
NathanDrake2406 pushed a commit that referenced this pull request May 21, 2026
…re#1397)

* fix(basepath): enforce scoping on rewrites/redirects/routes

Sub-issues addressed under cloudflare#1333:

1. Rewrites/redirects/headers were firing on requests outside the
   configured `basePath`. Threaded a `BasePathMatchState` through the
   matchers and prod-server / deploy worker / dev plugin so default
   rules (no `basePath: false` opt-out) only evaluate when the request
   was under basePath, and opt-out rules only evaluate outside it.

5. Pages Router requests that landed outside basePath fell through to
   internal route matching. After redirects and beforeFiles rewrites
   run, the request now 404s when it was outside basePath and no
   `basePath: false` rule rewrote it — matching Next.js's
   `resolve-routes.ts:304-309`.

4. With rewrites no longer firing on out-of-basepath requests, the
   downstream code that prepends basePath to destinations no longer
   sees a stripped-but-already-internal pathname, eliminating the
   `/docs/docs/...` doubling for the rewrite-driven cases.

App Router uses the same gating; `basePath: false` rules don't yet
fire there because `normalizeRscRequest` 404s out-of-basepath requests
before the matchers see them — flagged as follow-up in the rule
gating site. External rewrite proxying (sub-issue #2) and static
asset doubling (sub-issue #3, partly addressed by cloudflare#1337/cloudflare#1383) are
deferred.

Refs cloudflare#1333

* test: update deploy.test signature assertions and format basepath tests

* review: address bonk nits — add inverse basePath:false tests and TODO comment
james-elicx added a commit that referenced this pull request Jun 6, 2026
Move the per-request page probe fan-out (matched page + parallel slot
pages + interception page) out of the generated RSC entry and into a
unit-testable buildAppPageProbes() helper in server/app-page-probe.ts,
keeping entries/app-rsc-entry.ts thin (AGENTS.md guidance). Addresses
bonk review concern #3 on cloudflare#1788.

Document the known slot over-bail (probing inactive parallel-route slot
pages can mark an otherwise-static page dynamic; fails safe toward
dynamic) and track it as a caching-efficiency follow-up in cloudflare#1798
(bonk review concern #1).
NathanDrake2406 added a commit that referenced this pull request Jun 6, 2026
…lare#1788)

* fix(app-router): track searchParams access for static bailout

App Router pages that awaited or used the searchParams prop during prerender could still be classified as static when the prerender request had an empty query string. That seeded no-query output into the deploy cache and served it for requests like ?search=hello.

The dynamic decision was based on query-string content instead of page prop access. Observe the searchParams thenable itself, including React use() status reads, and mark searchParams dynamic only when the prop is consumed.

* chore: rerun ci

* fix(app-router): avoid static cache for searchParams pages

* fix(app-router): tolerate synthetic page paths in manifest codegen

* fix(app-router): observe searchParams access for static bailout

* fix(app-router): preserve app page cache hits

* fix(app-router): observe loading search params during render

* refactor(app-router): extract searchParams probe fan-out into helper

Move the per-request page probe fan-out (matched page + parallel slot
pages + interception page) out of the generated RSC entry and into a
unit-testable buildAppPageProbes() helper in server/app-page-probe.ts,
keeping entries/app-rsc-entry.ts thin (AGENTS.md guidance). Addresses
bonk review concern #3 on cloudflare#1788.

Document the known slot over-bail (probing inactive parallel-route slot
pages can mark an otherwise-static page dynamic; fails safe toward
dynamic) and track it as a caching-efficiency follow-up in cloudflare#1798
(bonk review concern #1).

* fix(app-router): skip probing interception-overridden slot pages

Narrow the searchParams probe fan-out so it only probes page components
that actually render for the request. When an interception matches, it
replaces the page of the slot named by intercept.slotKey (the element
builder sets overrides[slotKey].pageModule to the interception page,
which wins over slot.page in app-page-route-wiring.tsx). We now probe
the interception page in place of that slot's own page instead of
probing both — probing the overridden slot page marked an otherwise
static request dynamic for a component that never renders.

Fixes the over-bail flagged in review of cloudflare#1788.

* docs(app-router): clarify buildAppPageProbes slot precision

Address review feedback: the doc comment overstated precision without
explaining why non-overridden slots are exact. Spell out that a slot
with a page.tsx always renders that page (so probing it is correct),
default-only slots have no slot.page.default so probing is a no-op
(not an over-bail), and a default.tsx awaiting searchParams is
backstopped by the real render's observation (so no under-bail).

* fix(app-router): gate searchParams interception probe on isRscRequest

Interception only fires for RSC navigations (resolveAppPageInterceptState
returns kind:none when !isRscRequest, app-page-request.ts:324). The probe
fan-out called findIntercept unconditionally, so on HTML requests it would
skip the matched route's slot page (which DOES render normally) and probe
the interception page (which never renders). buildAppPageProbes now ignores
the interception match when !isRscRequest, so HTML requests probe every
slot's own page and skip the interception probe.

The source-route interception case (a different route renders) never reaches
this probe: dispatchAppPage returns the intercepted response before calling
probePage, so any interception seen here is the current-route override case.
Documented both in the buildAppPageProbes doc comment.

Addresses review feedback on cloudflare#1788.

---------

Co-authored-by: James <[email protected]>
NathanDrake2406 pushed a commit that referenced this pull request Jun 9, 2026
… context (cloudflare#1868)

* fix(app-router): extend OTel tracer provider after instrumentation register() for Cache Component spans

During Cache Component fallback resume, `workUnitAsyncStorage` carries a
prerender/cache store. Without the tracer extension, calls to
`tracer.startActiveSpan()` / `tracer.startSpan()` inside user RSC code
inherited that frozen context, causing span IDs to be reused across requests
or not created at all.

Mirrors Next.js's `extendInstrumentationAfterRegistration()` in
`instrumentation-node-extensions.ts`: wraps the OTel tracer provider's
`startSpan` and `startActiveSpan` to exit `workUnitAsyncStorage` when
creating spans, then re-enters the store for the `startActiveSpan` callback.

Fixes cloudflare#1495

* fix(otel-tracer-extension): address bonk review findings

BLOCKING: replace bare require("@opentelemetry/api") with globalThis.require
guard so the call is safe in ESM Worker bundles where bare require is
undefined; matches the pattern in client-trace-metadata.ts.

SHOULD-FIX #1: restore the isUseCacheFunction warning when a "use cache"
function is passed to startActiveSpan — mirrors upstream
instrumentation-node-extensions.ts. Adds USE_CACHE_FUNCTION_SYMBOL tag in
registerCachedFunction and the inline isUseCacheFn check in the extension
(avoids importing the full cache-runtime dep graph from this lightweight file).

SHOULD-FIX #2: add focused unit tests in tests/otel-tracer-extension.test.ts
covering no-op paths, startSpan ALS exit, startActiveSpan ALS re-entry,
use-cache warning, provider/tracer double-wrap guards, and provider-swap
re-wrapping. Isolated from the full vinext plugin import graph so they run
without optional build-time packages.

SHOULD-FIX #3: replace module-global boolean tracerProviderExtended with a
WeakSet<object> (extendedProviders) so that a swapped provider gets wrapped
rather than being silently skipped forever.

NIT: correct the upstream filename in the instrumentation-runtime.ts comment
from instrumentation-globals.external.ts to instrumentation-node-extensions.ts
(where afterRegistration() is actually defined).

* refactor(cache-runtime): drop dead isUseCacheFunction export

Nothing imported `isUseCacheFunction` — `otel-tracer-extension.ts`
already keeps its own inline copy (`isUseCacheFn`) with a comment
explaining why (avoids pulling heavy cache-runtime deps into the
lightweight server helper).  Remove the unused export to eliminate the
dead code flagged in review.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants