chore(deps): update sqlalchemy requirement from <2.1,>=2.0.51 to >=2.0.52,<2.1 in /backend - #906
Conversation
There was a problem hiding this comment.
Pull request overview
OpenCode could not approve from deterministic current-head evidence because GitHub Checks have failed.
Findings
1. HIGH Current-head GitHub Checks - Fix failed required checks before approval
- Problem: Failed same-head checks remain for
afd9a886ff569cd64f9cf41a3bb0af586b6fe064. - Root cause: The model-unavailable evidence fallback is allowed only when peer GitHub Checks are complete and clean.
- Fix: Read and fix the failed check logs below, then rerun the current-head checks.
- Regression test: Keep the model-unavailable fallback gated on an empty failed-check rollup.
Failed checks:
- Close Empty PR/close-empty: CANCELLED (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969129456/job/95218677310)
- SAST Semgrep/Semgrep (multi-language SAST): CANCELLED (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969130195/job/95218679149)
- Security Scan/dependency-review: CANCELLED (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969130192/job/95218679487)
- Security Scan/osv-scan: CANCELLED (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969130192/job/95218679400)
- Security Scan/scorecard: CANCELLED (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969130192/job/95218679379)
- Security Scan/trivy-fs: CANCELLED (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969130192/job/95218679422)
- Semgrep (multi-language SAST) check run: cancelled (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969130195/job/95218679149)
- Strix Security Scan/publish-manual-pr-evidence-status: CANCELLED (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969129459/job/95221519932)
- Strix Security Scan/strix: CANCELLED (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969129459/job/95218677412)
- Strix Security Scan/strix: cancelled (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969129459/job/95218677412)
- backend check run: cancelled (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969130248/job/95218679280)
- ci/backend: CANCELLED (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969130248/job/95218679280)
- ci/frontend: CANCELLED (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969130248/job/95218679144)
- close-empty check run: cancelled (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969129456/job/95218677310)
- coverage-source-tree check run: cancelled (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969129470/job/95221521596)
- dependency-review check run: cancelled (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969130192/job/95218679487)
- frontend check run: cancelled (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969130248/job/95218679144)
- osv-scan check run: cancelled (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969130192/job/95218679400)
- publish-manual-pr-evidence-status check run: cancelled (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969129459/job/95221519932)
- required-workflow-bootstrap check run: cancelled (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969129470/job/95218677619)
- scorecard check run: cancelled (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969130192/job/95218679379)
- trivy-fs check run: cancelled (https://github.com/ContextualWisdomLab/pg-erd-cloud/actions/runs/31969130192/job/95218679422)
Changed-File Evidence Map
flowchart LR
PR["PR changed files"] --> Evidence["OpenCode bounded evidence"]
Evidence --> S1["Backend: pyproject.toml"]
S1 --> I1["API and service runtime"]
I1 --> R1["Review risk: Backend: pyproject.toml"]
R1 --> V1["backend tests"]
Updates the requirements on [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) to permit the latest version. - [Release notes](https://github.com/sqlalchemy/sqlalchemy/releases) - [Changelog](https://github.com/sqlalchemy/sqlalchemy/blob/main/CHANGES.rst) - [Commits](https://github.com/sqlalchemy/sqlalchemy/commits) --- updated-dependencies: - dependency-name: sqlalchemy dependency-version: 2.0.52 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
3c6db17 to
c87982f
Compare
| "pydantic>=2.13.4", | ||
| "pydantic-settings>=2.14.2", | ||
| "sqlalchemy[asyncio]>=2.0.51,<2.1", | ||
| "sqlalchemy[asyncio]>=2.0.52,<2.1", |
There was a problem hiding this comment.
🔴 Dependency version bump not reflected in lockfiles, breaking installs and CI
The required version of the database library is raised (sqlalchemy[asyncio]>=2.0.52,<2.1 at backend/pyproject.toml:19) without regenerating the hash-locked lists, which still pin the old 2.0.51, so hash-locked installs and CI fail with an unsatisfiable version conflict.
Impact: Continuous integration and reproducible installs break because the pinned version no longer satisfies the declared minimum.
Lockfiles still pin 2.0.51 while pyproject requires >=2.0.52
The repo rules (AGENTS.md / CLAUDE.md) state that when changing dependencies in backend/pyproject.toml, both backend/requirements.lock and backend/requirements-dev.lock must be regenerated with uv --generate-hashes. CI installs backend deps with pip install --require-hashes -r requirements-dev.lock, and pip install -e . (or dependency-review) validates against pyproject.toml.
Both lockfiles still contain sqlalchemy==2.0.51 (backend/requirements.lock:1315, backend/requirements-dev.lock:1637), which does not satisfy the new constraint >=2.0.52,<2.1. This produces a resolution/conflict error and leaves supply-chain pinning inconsistent.
Fix: regenerate both lockfiles, e.g.
uv pip compile backend/pyproject.toml --python-version 3.10 --generate-hashes -o backend/requirements.lock
uv pip compile backend/pyproject.toml --python-version 3.10 --generate-hashes --extra dev -o backend/requirements-dev.lock
Prompt for agents
backend/pyproject.toml now requires sqlalchemy[asyncio]>=2.0.52,<2.1, but backend/requirements.lock (line 1315) and backend/requirements-dev.lock (line 1637) still pin sqlalchemy==2.0.51 with hashes. Per AGENTS.md/CLAUDE.md, both lockfiles must be regenerated whenever dependencies in pyproject.toml change, since CI uses pip install --require-hashes and the pinned 2.0.51 no longer satisfies >=2.0.52. Regenerate both lockfiles with uv --generate-hashes (the requirements-dev.lock with --extra dev) so sqlalchemy and any transitively affected packages/hashes are updated to a 2.0.52+ version.
Was this helpful? React with 👍 or 👎 to provide feedback.
Updates the requirements on sqlalchemy to permit the latest version.
Release notes
Sourced from sqlalchemy's releases.
... (truncated)
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)