Skip to content

fix: upgrade Gemini SDK with continuation regressions - #2446

Open
groupthinking wants to merge 3 commits into
mainfrom
fix/genai-continuation-2445
Open

groupthinking wants to merge 3 commits into
mainfrom
fix/genai-continuation-2445

Conversation

@groupthinking

@groupthinking groupthinking commented Oct 18, 2026 •

Copy link
Copy Markdown
Owner

Closes #2445

Changes and behavior

Upgrade the direct Gemini SDK from 2.24.0 to 2.30.0 so automatic continuation recovers dropped hops, retains grounding references, stops on prompt feedback, and surfaces genuine provider/transport errors. Twelve offline regressions exercise the installed public SDK through controlled HTTP/SSE responses; Gemini 3.8 and older-model request parameters remain covered. The app's gateway routing, Studio feature flags and production handlers are unchanged.

Google's 2.30.0 changelog, continuation fix and grounding-reference fix are the primary SDK sources.

Refreshing against current main also exposed inherited npm advisory findings. This PR applies compatible direct updates and scoped overrides, preserves existing dependency majors and application behavior, and makes the npm audit job enforce the committed lock rather than tolerate findings. The eight-file scope is the root/web manifests and lockfile, the original SDK test, a package-runtime test, the audit workflow and its regression test, and the corresponding merge-policy paragraph.

The new runtime test covers actual MCP/Zod input-schema validation, native Sharp PNG processing, and each selected consumer's own Undici Agent/fetch pair against a loopback server. The MCP SDK is explicitly declared as a web development dependency because that test imports it; workspace-only Docker installs otherwise omitted the root-only development dependency during Next's typecheck. Tests and type checks remain enabled, and that declaration does not change any resolved package version.

The audit job checks the PR head, installs with declared npm 10.8.0 using npm ci --ignore-scripts --no-audit --no-fund, fails on high/critical advisories or audit errors, and retains the same invocation's JSON report even on failure. Other scans retain their existing behavior.

Dependency compatibility

Package / consumer Resolved version Compatibility boundary
@google/genai 2.30.0 Both direct floors ^2.30.0; original contract and lock object preserved
Next / Next ESLint config 16.4.3 Existing major 16 retained
MCP SDK 1.32.2 Existing major 1; web test dependency explicitly declared
Zod 4.6.7 Existing major 4; no forced replacement of a Zod-3-only consumer
Undici 6.29.1 / 7.30.1 / 8.12.3 Each consumer's existing major retained
Vite 8.3.5 Existing major 8 retained
Root / web Vitest 4.1.12 / 5.0.5 Separate existing majors retained

The Zod override deliberately advances Vercel's exact 4.1.11 and Workflow's ~4.3.6 dependency constraints. Actual Vercel config parsing, Workflow run/queue validation, AI SDK schema conversion and MCP tool validation passed positive/negative tests with 4.6.7. This is a tested same-major override, not a claim that those narrow upstream pins accept the new version. Scoped fixes also cover body-parser, brace-expansion 1.x, Hono/node-server, fast-uri, ip-address and qs. Existing unrelated overrides remain intact.

Security dependency evidence

  • Advisory: Next GHSA-2464-fhr4-w9xw and GHSA-p3m5-59mp-jv5r affect the 16.x line through 16.4.0; Zod GHSA-mrhx-c7xc-m3w5 lists versions below 4.6.6; Undici GHSA-2m5v-pch6-74hx fixes the affected branches at 6.29.1 / 7.30.1 / 8.12.2. Other observed advisories are addressed by the scoped lock updates and retained in audit evidence.
  • Package and versions: direct Next 16.3.8 → 16.4.3; direct/root MCP SDK 1.30.1 → 1.32.2; direct/root Undici 8.11.0 → 8.12.3, with transitive Undici 6/7 retained under Blob, AI SDK and Workflow consumers; direct/web and transitive Zod copies → 4.6.7. Direct/development classifications remain intentional; the new web MCP entry is a development dependency of its actual test import.
  • Validation: clean npm 10.8.0 and 11.19.0 installs, local complete web suite/lint/typecheck/build and consumer regressions passed. The hosted npm-audit job at 035150c checked that exact head, ran the locked fail-closed gate and reported zero findings at every severity. The downloaded JSON artifact matches the logged report and its provider archive digest.
  • Rollback: revert the scoped repair through a reviewed PR, restore both Gemini manifest floors and SDK lock entry together if reverting SDK behavior, preserve unrelated main changes, and reassess any vulnerabilities reintroduced by a dependency rollback.

Executed validation

Local final SDK/security candidate: Node 24.20.0, actual clean installs under npm 10.8.0 and 11.19.0; 1,540 web tests passed / 28 skipped, full lint/typecheck and unchanged-config production build passed, Next generated 53 static pages, dependency tree valid, full npm audit zero. Independent Node 22.23.4 review passed 158 focused Gemini/package/workflow/security tests, six Python workflow/policy tests, 13 actual consumer-schema assertions, and actionlint v1.7.12.

For the two-entry workspace-dependency correction: a fresh isolated install using npm@10.8.0 ci --workspace=apps/web --legacy-peer-deps --no-audit --no-fund installed 937 packages. The unchanged production Next build then passed compilation, typechecking and 53 static pages with the test files included. Twenty actual SDK/runtime regression tests passed and a fresh full npm audit remained zero. All other lockfile values, versions and integrity hashes are identical. The subsequent Linux Docker job at published head 035150c independently passed the actual workspace install, compilation, typechecking, all 53 static pages and image export.

Hosted state and remaining limits

The reviewed published head is 035150c6216e7502ba9512e5e3a1fbbc4c6e0bac, compared with main f258db8a6cc38c064ba4d7ca1baee02bedbd0534. All 28 observed check runs are terminal: 25 successful and three skipped, with no failed or pending check. CI's synthetic merge d37ef226bafeae7d3e9f74896681f66f62b4b214 has the same complete tree 883303dcfadd75cfc8ca646cb4285e0c195c6735 as the published head.

  • Frontend: 1,567 passed / one live-model case skipped; CI installed Redis and executed the 27 cases skipped locally.
  • Python 3.11 and 3.12: 2,990 passed / nine deselected / five xpassed per version, plus 38 MCP security tests. Coverage: 3,195 passed / two skipped / five xpassed, 84.86% against the 84.2% threshold. The GitHub coverage artifact was saved. The optional Qlty upload did not occur because neither OIDC nor token was configured; its tolerated error is not upload success.
  • Docker build passed compilation, typechecking, 53 static pages and complete image export. The workspace MCP development declaration resolves the actual prior Docker-only typecheck failure.
  • Dependency review, attempt 2: both snapshot submissions, advisory review, strict evidence recording and upload passed. The downloaded evidence artifact binds the exact base/head/run/attempt and contains all 139 dependency changes. Its archive digest matches GitHub, and the full saved diff independently passes the unchanged lock/manifest guard. No unrelated Python-manifest change or snapshot warning was accepted. The earlier warning failure is retained as history; source and policy were not weakened to make the retry pass.
  • Vercel Agent Review completed with zero suggestions; the freshly fetched inline-thread list was empty. Vercel commit status reports a completed preview; this is not live Gemini or production acceptance.

The Trivy image scan completed under main's existing report-only policy (exit-code: 0). Its downloaded image evidence artifact binds the image to 035150c and contains 250 high/critical package findings: 249 HIGH and one CRITICAL across the OS, global/bundled Node packages and Python libraries. These remain tracked under #2396 and are not resolved by a zero-finding repository npm lock audit. No clean-container or production-readiness claim is made.

Automatic Gemini continuation may issue additional provider requests when a continuation token is returned. Offline tests do not establish provider availability, cost, latency or gateway reliability. No live paid provider request, production deployment or merge was performed for this work. The Gemini 2.30 floor and regression suite must survive reconciliation with overlapping dependency PR #2444.

Copilot AI balanced review requested due to automatic review settings October 18, 2026 15:20
@vercel

vercel Bot commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
v0-uvai Ready Ready Preview, v0 Oct 30, 2026 1:52am UTC

@coderabbitai

coderabbitai Bot commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

Run configuration
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown
Contributor

✅ E2E Test Results: ALL TESTS PASSED

Metric Value
Status 🟢 GREEN
Total Tests
Passed 16
Failed
Deployment https://v0-uvai-mihilehc6-garv1.vercel.app
Test Output
every request without persisting it�[32m 1�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mTemplate Gallery�[2m > �[22mhomepage returns 200 with HTML�[32m 173�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mTemplate Gallery�[2m > �[22mfeatures page contains template/workflow markup�[32m 205�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mTemplate Gallery�[2m > �[22mfeatures page surfaces at least 5 workflow/template indicators�[32m 179�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mVideo Pack Pipeline�[2m > �[22mPOST /api/video/pack accepts a YouTube URL without hanging�[33m 2115�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mVideo Pack Pipeline�[2m > �[22mGET /api/video/pack resolves to a ready pack with evidence lineage�[33m 638�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mError Handling�[2m > �[22mmissing URL returns 400, not a hang�[32m 118�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mError Handling�[2m > �[22minvalid URL returns 400 quickly, not a hang�[32m 101�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mError Handling�[2m > �[22mPOST /api/video/pack with no body returns 400�[32m 105�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mDashboard�[2m > �[22m/dashboard returns 200�[32m 205�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mDashboard�[2m > �[22m/dashboard contains agent or pipeline visualization markup�[32m 165�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mAPI Health�[2m > �[22mGET /api returns a response (not 404)�[33m 302�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mAPI Health�[2m > �[22mretired /api/pipeline routes are gone (no pipeline served)�[32m 80�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mStatic Assets�[2m > �[22mhomepage has proper meta tags�[32m 130�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mStatic Assets�[2m > �[22m/features page returns 200�[32m 160�[2mms�[22m�[39m

�[2m Test Files �[22m �[1m�[32m1 passed�[39m�[22m�[90m (1)�[39m
�[2m      Tests �[22m �[1m�[32m16 passed�[39m�[22m�[90m (16)�[39m
�[2m   Start at �[22m 15:21:46
�[2m   Duration �[22m 6.42s�[2m (transform 35ms, setup 0ms, import 44ms, tests 6.30s, environment 0ms)�[22m


@github-actions

github-actions Bot commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

OpenSSF Scorecard

Scorecard details
PackageVersionScoreDetails
npm/@google/genai ^2.30.0 UnknownUnknown
npm/@modelcontextprotocol/sdk ^1.32.0 UnknownUnknown
npm/eslint-config-next ^16.4.3 UnknownUnknown
npm/next 16.4.3 🟢 6.2
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Packaging🟢 10packaging workflow detected
Security-Policy🟢 10security policy file detected
Binary-Artifacts⚠️ 0binaries present in source code
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Fuzzing🟢 10project is fuzzed
npm/vite ^8.3.3 UnknownUnknown
npm/vitest ^5.0.3 UnknownUnknown
npm/zod ^4.6.6 UnknownUnknown
npm/@google/genai 2.30.0 UnknownUnknown
npm/@hono/node-server 2.1.5 UnknownUnknown
npm/@modelcontextprotocol/sdk 1.32.2 UnknownUnknown
npm/@next/env 16.4.3 🟢 6.2
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Packaging🟢 10packaging workflow detected
Security-Policy🟢 10security policy file detected
Binary-Artifacts⚠️ 0binaries present in source code
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Fuzzing🟢 10project is fuzzed
npm/@next/eslint-plugin-next 16.4.3 🟢 6.2
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Packaging🟢 10packaging workflow detected
Security-Policy🟢 10security policy file detected
Binary-Artifacts⚠️ 0binaries present in source code
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Fuzzing🟢 10project is fuzzed
npm/@next/swc-darwin-arm64 16.4.3 🟢 6.2
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Packaging🟢 10packaging workflow detected
Security-Policy🟢 10security policy file detected
Binary-Artifacts⚠️ 0binaries present in source code
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Fuzzing🟢 10project is fuzzed
npm/@next/swc-darwin-x64 16.4.3 🟢 6.2
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Packaging🟢 10packaging workflow detected
Security-Policy🟢 10security policy file detected
Binary-Artifacts⚠️ 0binaries present in source code
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Fuzzing🟢 10project is fuzzed
npm/@next/swc-linux-arm64-gnu 16.4.3 🟢 6.2
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Packaging🟢 10packaging workflow detected
Security-Policy🟢 10security policy file detected
Binary-Artifacts⚠️ 0binaries present in source code
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Fuzzing🟢 10project is fuzzed
npm/@next/swc-linux-arm64-musl 16.4.3 🟢 6.2
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Packaging🟢 10packaging workflow detected
Security-Policy🟢 10security policy file detected
Binary-Artifacts⚠️ 0binaries present in source code
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Fuzzing🟢 10project is fuzzed
npm/@next/swc-linux-x64-gnu 16.4.3 🟢 6.2
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Packaging🟢 10packaging workflow detected
Security-Policy🟢 10security policy file detected
Binary-Artifacts⚠️ 0binaries present in source code
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Fuzzing🟢 10project is fuzzed
npm/@next/swc-linux-x64-musl 16.4.3 🟢 6.2
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Packaging🟢 10packaging workflow detected
Security-Policy🟢 10security policy file detected
Binary-Artifacts⚠️ 0binaries present in source code
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Fuzzing🟢 10project is fuzzed
npm/@next/swc-win32-arm64-msvc 16.4.3 🟢 6.2
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Packaging🟢 10packaging workflow detected
Security-Policy🟢 10security policy file detected
Binary-Artifacts⚠️ 0binaries present in source code
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Fuzzing🟢 10project is fuzzed
npm/@next/swc-win32-x64-msvc 16.4.3 🟢 6.2
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Packaging🟢 10packaging workflow detected
Security-Policy🟢 10security policy file detected
Binary-Artifacts⚠️ 0binaries present in source code
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Fuzzing🟢 10project is fuzzed
npm/@oxc-project/types 0.156.0 UnknownUnknown
npm/@rolldown/binding-android-arm-eabi 1.2.16 UnknownUnknown
npm/@rolldown/binding-android-arm64 1.2.16 UnknownUnknown
npm/@rolldown/binding-darwin-arm64 1.2.16 UnknownUnknown
npm/@rolldown/binding-darwin-x64 1.2.16 UnknownUnknown
npm/@rolldown/binding-freebsd-x64 1.2.16 UnknownUnknown
npm/@rolldown/binding-linux-arm-gnueabihf 1.2.16 UnknownUnknown
npm/@rolldown/binding-linux-arm64-gnu 1.2.16 UnknownUnknown
npm/@rolldown/binding-linux-arm64-musl 1.2.16 UnknownUnknown
npm/@rolldown/binding-linux-ppc64-gnu 1.2.16 UnknownUnknown
npm/@rolldown/binding-linux-s390x-gnu 1.2.16 UnknownUnknown
npm/@rolldown/binding-linux-x64-gnu 1.2.16 UnknownUnknown
npm/@rolldown/binding-linux-x64-musl 1.2.16 UnknownUnknown
npm/@rolldown/binding-openharmony-arm64 1.2.16 UnknownUnknown
npm/@rolldown/binding-win32-arm64-msvc 1.2.16 UnknownUnknown
npm/@rolldown/binding-win32-x64-msvc 1.2.16 UnknownUnknown
npm/@vitest/expect 4.1.12 UnknownUnknown
npm/@vitest/mocker 5.0.5 UnknownUnknown
npm/@vitest/mocker 4.1.12 UnknownUnknown
npm/@vitest/pretty-format 4.1.12 UnknownUnknown
npm/@vitest/runner 4.1.12 UnknownUnknown
npm/@vitest/snapshot 4.1.12 UnknownUnknown
npm/@vitest/spy 5.0.5 UnknownUnknown
npm/@vitest/spy 4.1.12 UnknownUnknown
npm/@vitest/utils 4.1.12 UnknownUnknown
npm/body-parser 2.4.0 🟢 8
Details
CheckScoreReason
Binary-Artifacts🟢 10no binaries found in the repo
Code-Review🟢 7Found 18/25 approved changesets -- score normalized to 7
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
Pinned-Dependencies🟢 6dependency not pinned by hash detected -- score normalized to 6
Dependency-Update-Tool🟢 10update tool detected
Maintained🟢 1023 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Vulnerabilities🟢 100 existing vulnerabilities detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Packaging🟢 10packaging workflow detected
Fuzzing⚠️ 0project is not fuzzed
Signed-Releases⚠️ -1no releases found
License🟢 10license file detected
Branch-Protection⚠️ 1branch protection is not maximal on development and all release branches
SAST🟢 9SAST tool detected but not run on all commits
Security-Policy🟢 10security policy file detected
CI-Tests🟢 926 out of 28 merged PRs checked by a CI test -- score normalized to 9
Contributors🟢 10project has 33 contributing companies or organizations
npm/brace-expansion 1.1.21 🟢 7
Details
CheckScoreReason
Maintained🟢 1017 commit(s) and 13 issue activity found in the last 90 days -- score normalized to 10
Code-Review⚠️ 1Found 3/16 approved changesets -- score normalized to 1
Binary-Artifacts🟢 10no binaries found in the repo
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
Security-Policy🟢 10security policy file detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Pinned-Dependencies🟢 10all dependencies are pinned
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Fuzzing⚠️ 0project is not fuzzed
License🟢 9license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/chai 6.3.0 🟢 6.9
Details
CheckScoreReason
Code-Review🟢 6Found 6/9 approved changesets -- score normalized to 6
Maintained🟢 1030 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies🟢 8dependency not pinned by hash detected -- score normalized to 8
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Security-Policy⚠️ 0security policy file not detected
License🟢 10license file detected
Fuzzing⚠️ 0project is not fuzzed
Signed-Releases⚠️ -1no releases found
Packaging🟢 10packaging workflow detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/content-type 2.1.0 🟢 7.4
Details
CheckScoreReason
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Binary-Artifacts🟢 10no binaries found in the repo
Packaging⚠️ -1packaging workflow not detected
Code-Review🟢 5Found 17/30 approved changesets -- score normalized to 5
Maintained🟢 1010 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Security-Policy🟢 9security policy file detected
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
SAST🟢 9SAST tool detected but not run on all commits
npm/eslint-config-next 16.4.3 🟢 6.2
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Packaging🟢 10packaging workflow detected
Security-Policy🟢 10security policy file detected
Binary-Artifacts⚠️ 0binaries present in source code
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Fuzzing🟢 10project is fuzzed
npm/fast-uri 3.1.9 🟢 8.1
Details
CheckScoreReason
Code-Review🟢 3Found 9/28 approved changesets -- score normalized to 3
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Binary-Artifacts🟢 10no binaries found in the repo
Security-Policy🟢 10security policy file detected
Dependency-Update-Tool🟢 10update tool detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Pinned-Dependencies🟢 5dependency not pinned by hash detected -- score normalized to 5
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Vulnerabilities🟢 100 existing vulnerabilities detected
Signed-Releases⚠️ -1no releases found
License🟢 9license file detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
SAST🟢 9SAST tool is not run on all commits -- score normalized to 9
Fuzzing⚠️ 0project is not fuzzed
CI-Tests🟢 1011 out of 11 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 33 contributing companies or organizations
npm/hono 4.13.14 UnknownUnknown
npm/ip-address 10.7.5 🟢 6.9
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10
Security-Policy🟢 10security policy file detected
Code-Review⚠️ 0Found 0/30 approved changesets -- score normalized to 0
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Binary-Artifacts🟢 10no binaries found in the repo
Token-Permissions🟢 9detected GitHub workflow tokens with excessive permissions
Pinned-Dependencies🟢 8dependency not pinned by hash detected -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
License🟢 10license file detected
Fuzzing⚠️ 0project is not fuzzed
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
Packaging🟢 10packaging workflow detected
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/magic-string 1.4.5 🟢 5.3
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 6 issue activity found in the last 90 days -- score normalized to 10
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Code-Review🟢 6Found 19/30 approved changesets -- score normalized to 6
Token-Permissions🟢 9detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Security-Policy⚠️ 0security policy file not detected
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
Signed-Releases⚠️ -1no releases found
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/next 16.4.3 🟢 6.2
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 29/30 approved changesets -- score normalized to 9
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Packaging🟢 10packaging workflow detected
Security-Policy🟢 10security policy file detected
Binary-Artifacts⚠️ 0binaries present in source code
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Fuzzing🟢 10project is fuzzed
npm/obug 3.0.0 UnknownUnknown
npm/qs 6.17.1 🟢 5.5
Details
CheckScoreReason
Code-Review🟢 3Found 10/29 approved changesets -- score normalized to 3
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
Security-Policy🟢 10security policy file detected
Binary-Artifacts🟢 10no binaries found in the repo
Maintained🟢 1028 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
CII-Best-Practices🟢 5badge detected: Passing
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/rolldown 1.2.16 UnknownUnknown
npm/std-env 4.3.0 UnknownUnknown
npm/tinybench 6.2.2 UnknownUnknown
npm/tinyexec 1.3.1 UnknownUnknown
npm/tinyrainbow 3.2.0 UnknownUnknown
npm/undici 8.12.3 🟢 8.2
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10
Dependency-Update-Tool🟢 10update tool detected
Security-Policy🟢 10security policy file detected
Code-Review🟢 8Found 17/21 approved changesets -- score normalized to 8
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 8binaries present in source code
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Pinned-Dependencies🟢 6dependency not pinned by hash detected -- score normalized to 6
Vulnerabilities🟢 82 existing vulnerabilities detected
SAST🟢 10SAST tool is run on all commits
Packaging🟢 10packaging workflow detected
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Fuzzing🟢 10project is fuzzed
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
CI-Tests🟢 1026 out of 26 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 58 contributing companies or organizations
npm/undici 7.30.1 🟢 8.2
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10
Dependency-Update-Tool🟢 10update tool detected
Security-Policy🟢 10security policy file detected
Code-Review🟢 8Found 17/21 approved changesets -- score normalized to 8
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 8binaries present in source code
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Pinned-Dependencies🟢 6dependency not pinned by hash detected -- score normalized to 6
Vulnerabilities🟢 82 existing vulnerabilities detected
SAST🟢 10SAST tool is run on all commits
Packaging🟢 10packaging workflow detected
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Fuzzing🟢 10project is fuzzed
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
CI-Tests🟢 1026 out of 26 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 58 contributing companies or organizations
npm/undici 6.29.1 🟢 8.2
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10
Dependency-Update-Tool🟢 10update tool detected
Security-Policy🟢 10security policy file detected
Code-Review🟢 8Found 17/21 approved changesets -- score normalized to 8
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 8binaries present in source code
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Pinned-Dependencies🟢 6dependency not pinned by hash detected -- score normalized to 6
Vulnerabilities🟢 82 existing vulnerabilities detected
SAST🟢 10SAST tool is run on all commits
Packaging🟢 10packaging workflow detected
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Fuzzing🟢 10project is fuzzed
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
CI-Tests🟢 1026 out of 26 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 58 contributing companies or organizations
npm/vite 8.3.5 🟢 6.5
Details
CheckScoreReason
Code-Review🟢 5Found 13/24 approved changesets -- score normalized to 5
Maintained🟢 1030 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Security-Policy🟢 10security policy file detected
Token-Permissions🟢 7detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Binary-Artifacts⚠️ 1binaries present in source code
Pinned-Dependencies🟢 9dependency not pinned by hash detected -- score normalized to 9
License🟢 10license file detected
Fuzzing⚠️ 0project is not fuzzed
Signed-Releases⚠️ -1no releases found
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
SAST🟢 10SAST tool is run on all commits
npm/vitest 5.0.5 UnknownUnknown
npm/vitest 4.1.12 UnknownUnknown
npm/why-is-node-running 3.2.1 🟢 4.7
Details
CheckScoreReason
Binary-Artifacts🟢 10no binaries found in the repo
Maintained🟢 53 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 5
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Code-Review⚠️ 1Found 4/30 approved changesets -- score normalized to 1
Token-Permissions🟢 9detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Packaging🟢 10packaging workflow detected
Branch-Protection⚠️ 0branch protection not enabled on development/release branches
Security-Policy⚠️ 0security policy file not detected
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/zod 4.6.7 🟢 5.1
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10
Security-Policy🟢 10security policy file detected
Code-Review⚠️ 0Found 1/30 approved changesets -- score normalized to 0
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
Binary-Artifacts🟢 10no binaries found in the repo
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Pinned-Dependencies🟢 5dependency not pinned by hash detected -- score normalized to 5
License🟢 10license file detected
Fuzzing⚠️ 0project is not fuzzed
Signed-Releases⚠️ -1no releases found
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Branch-Protection🟢 3branch protection is not maximal on development and all release branches

Scanned Files

  • apps/web/package.json
  • package-lock.json

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🔵 Needs a closer look

Required exact-head CI, build, and security validation remain unconfirmed in the supplied evidence.

No open issues 🎉

What changed in this PR

Upgrades the direct Gemini SDK and adds offline regression coverage for continuation reliability, addressing #2445 without changing gateway routing or application behavior.

Changes:

  • Raises root and web @google/genai floors to ^2.30.0.
  • Pins the shared lockfile resolution to 2.30.0.
  • Adds 12 contract cases covering continuation, grounding, safety termination, error propagation, and request serialization.
File Description
package.json Raises the root SDK dependency floor.
package-lock.json Updates both dependency specs and the SDK resolution.
apps/​web/​src/​lib/​__tests__/​gemini-sdk-continuation.test.ts Adds offline tests using the real SDK with synthetic transport responses.
apps/​web/​package.json Aligns the web SDK dependency floor.

Review effort: Balanced

Copy link
Copy Markdown
Owner Author

Final implementation receipt — October 18, 2026

Head: b54bcfef377278f9ad293cb5b698d455744df5d7; base: 560f07120dee5294da0af0f2aab8eec8b79de8b5.
Decision: TEST complete; implementation READY FOR MERGE REVIEW, not merged.

  • All 21 applicable checks from MERGE_POLICY.md plus the active issue-closing ruleset report success on this exact head, including build, all three Python matrices, test-frontend, dependency-review, coverage, E2E, CodeQL and security scans. CI run.
  • GitHub reports mergeable=true, mergeable_state=clean. Vercel preview READY.
  • Copilot completed review with no open code issues; its earlier request to confirm CI is now satisfied by the exact-head results above. Inline review threads: zero. CodeRabbit skipped automatic review due to repository star policy; its status is success. No independent human approval is claimed.
  • Local: 44 focused tests pass; full web suite 1532 pass / 28 skip (26 optional Origin GATE Redis, one Video Pack store integration, one clip probe). Type-check and targeted lint pass. Local no-upload build succeeds after moving aside aborted build cache. Repository config restored; worktree clean. Remote exact-config Build web app and Build web production image both pass.
  • Package and lockfile diff is limited to @google/genai 2.24.0 → 2.30.0; 12 transport-level regression cases added. No app routing changes.
  • Standard local build initially hit an automatic-approval rejection for Sentry external egress; the safer local build explicitly disabled telemetry/uploads/releases. No override of that rejection was attempted.
  • Ownership: groupthinking. Broad batch fix: bump the npm-minor-patch group across 1 directory with 37 updates #2444 retains its unrelated changes and is marked for reconciliation with this PR.
  • Durable ledger: implementation action120; publication/reconciliation actions121–135, associated read-back reviews. Issue2445 links this PR.

Next action: obtain approval identifying PR #2446 or this exact head under the current Watch exact-PR merge rule; then re-fetch head, checks, reviews, mergeability and use expected-head protection to merge. Do not infer production acceptance or live Gemini cost/latency from offline fixtures. No production deployment was initiated manually.

@github-actions

github-actions Bot commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

🔍 PR Validation

⚠️ Large PR detected (1148 lines changed)

@github-actions

Copy link
Copy Markdown
Contributor

✅ E2E Test Results: ALL TESTS PASSED

Metric Value
Status 🟢 GREEN
Total Tests
Passed 16
Failed
Deployment https://v0-uvai-31oo0ej2p-garv1.vercel.app
Test Output
very request without persisting it�[32m 1�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mTemplate Gallery�[2m > �[22mhomepage returns 200 with HTML�[33m 309�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mTemplate Gallery�[2m > �[22mfeatures page contains template/workflow markup�[33m 489�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mTemplate Gallery�[2m > �[22mfeatures page surfaces at least 5 workflow/template indicators�[33m 301�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mVideo Pack Pipeline�[2m > �[22mPOST /api/video/pack accepts a YouTube URL without hanging�[33m 2202�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mVideo Pack Pipeline�[2m > �[22mGET /api/video/pack resolves to a ready pack with evidence lineage�[33m 907�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mError Handling�[2m > �[22mmissing URL returns 400, not a hang�[32m 203�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mError Handling�[2m > �[22minvalid URL returns 400 quickly, not a hang�[32m 197�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mError Handling�[2m > �[22mPOST /api/video/pack with no body returns 400�[32m 216�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mDashboard�[2m > �[22m/dashboard returns 200�[33m 309�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mDashboard�[2m > �[22m/dashboard contains agent or pipeline visualization markup�[32m 234�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mAPI Health�[2m > �[22mGET /api returns a response (not 404)�[33m 306�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mAPI Health�[2m > �[22mretired /api/pipeline routes are gone (no pipeline served)�[32m 110�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mStatic Assets�[2m > �[22mhomepage has proper meta tags�[32m 287�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mStatic Assets�[2m > �[22m/features page returns 200�[32m 235�[2mms�[22m�[39m

�[2m Test Files �[22m �[1m�[32m1 passed�[39m�[22m�[90m (1)�[39m
�[2m      Tests �[22m �[1m�[32m16 passed�[39m�[22m�[90m (16)�[39m
�[2m   Start at �[22m 01:44:21
�[2m   Duration �[22m 8.20s�[2m (transform 45ms, setup 0ms, import 61ms, tests 8.02s, environment 0ms)�[22m


@github-actions

Copy link
Copy Markdown
Contributor

✅ E2E Test Results: ALL TESTS PASSED

Metric Value
Status 🟢 GREEN
Total Tests
Passed 16
Failed
Deployment https://v0-uvai-ors2vc8x0-garv1.vercel.app
Test Output
every request without persisting it�[32m 1�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mTemplate Gallery�[2m > �[22mhomepage returns 200 with HTML�[33m 314�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mTemplate Gallery�[2m > �[22mfeatures page contains template/workflow markup�[32m 286�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mTemplate Gallery�[2m > �[22mfeatures page surfaces at least 5 workflow/template indicators�[33m 321�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mVideo Pack Pipeline�[2m > �[22mPOST /api/video/pack accepts a YouTube URL without hanging�[33m 1889�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mVideo Pack Pipeline�[2m > �[22mGET /api/video/pack resolves to a ready pack with evidence lineage�[33m 835�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mError Handling�[2m > �[22mmissing URL returns 400, not a hang�[33m 322�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mError Handling�[2m > �[22minvalid URL returns 400 quickly, not a hang�[32m 164�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mError Handling�[2m > �[22mPOST /api/video/pack with no body returns 400�[32m 195�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mDashboard�[2m > �[22m/dashboard returns 200�[33m 304�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mDashboard�[2m > �[22m/dashboard contains agent or pipeline visualization markup�[33m 359�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mAPI Health�[2m > �[22mGET /api returns a response (not 404)�[33m 351�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mAPI Health�[2m > �[22mretired /api/pipeline routes are gone (no pipeline served)�[32m 78�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mStatic Assets�[2m > �[22mhomepage has proper meta tags�[32m 210�[2mms�[22m�[39m
 �[32m✓�[39m tests/e2e/pipeline.test.ts�[2m > �[22mEventRelay E2E — Live Deployment�[2m > �[22mStatic Assets�[2m > �[22m/features page returns 200�[32m 169�[2mms�[22m�[39m

�[2m Test Files �[22m �[1m�[32m1 passed�[39m�[22m�[90m (1)�[39m
�[2m      Tests �[22m �[1m�[32m16 passed�[39m�[22m�[90m (16)�[39m
�[2m   Start at �[22m 01:53:23
�[2m   Duration �[22m 7.69s�[2m (transform 43ms, setup 0ms, import 58ms, tests 7.50s, environment 0ms)�[22m


This branch was successfully deployed

1 active deployment
Preview — 035150c6 Deployed Oct 30, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci/cd documentation Improvements or additions to documentation javascript Pull requests that update javascript code needs-reconciliation python tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Upgrade @google/genai to 2.30+ with continuation and grounding regressions

2 participants