Roll up the remaining gemini-nano dependency updates#11
Conversation
Consolidate the remaining fastapi, httpx, and express dependency bumps after their individual Dependabot branches conflicted with the provenance and workflow updates already merged to master.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 3172f03b18
ℹ️ 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".
| }, | ||
| "dependencies": { | ||
| "express": "^4.19.2", | ||
| "express": "^5.2.1", |
There was a problem hiding this comment.
Guard empty request bodies after Express 5
When this dependency bump takes the bridge to Express 5, req.body is now undefined whenever express.json() does not parse a body, whereas Express 4 defaulted it to {}; the ready Chrome path in server.js still dereferences req.body.messages directly. A POST /v1/chat/completions with no body or a non-JSON content type will therefore throw and return a 500 instead of following the existing fallback behavior (messages || []) or returning a controlled client error, so the route should coerce req.body before reading from it.
Useful? React with 👍 / 👎.
Summary
Roll up the remaining gemini-nano dependency updates that were left open after the provenance and workflow merges changed the same files.
Changes
api-server/requirements.txtto allowfastapi>=0.139.0andhttpx>=0.28.1chrome-bridge/package.jsonandpackage-lock.jsonforexpress@^5.2.1masterWhy
Dependabot PRs
#1,#3, and#4all became conflicting after the provenance rollout and the earlier dependency merges changed the same files. This PR reapplies those still-desired dependency bumps on top of the current default branch.Validation
api-server: repo-local venv install,ruff check .,pytest -q -s test_server.pychrome-bridge:npm installchrome-bridge: localnpm testis not authoritative on this workstation because Node is18.19.1while the already-mergedpuppeteer-core@25.3.0path expects Node>=22.12.0; the same health test previously passed in GitHub Actions on Node22.23.1Risks
expressis a semver-major bump and could still surface runtime differences outside the existing health check coverageRelated
#1,#3, and#4#9,#10,#7,#6,#5, and#2Reviewer notes
Start with
api-server/requirements.txtandchrome-bridge/package.json, then verify the regeneratedpackage-lock.jsonand the CI runs on this branch.