Skip to content

Commit 2973232

Browse files
ci: refresh poetry.lock content-hash + pin Poetry so install works
The first CI run surfaced a pre-existing problem on `main`: a fresh `poetry install` fails with "pyproject.toml changed significantly since poetry.lock was last generated" — pyproject was edited after the lock was last written, so its content-hash no longer matches. Local dev never hit this (an existing venv + `poetry run`), but a clean checkout (CI, new contributors) can't install. Regenerating the lock changes ONLY the content-hash line — zero package versions move — so this is a no-op for resolved dependencies. Pin CI to Poetry 2.1.4 (the lock's generator) so the hash check is deterministic. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent d1e2c0f commit 2973232

2 files changed

Lines changed: 7 additions & 2 deletions

File tree

.github/workflows/ci.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,12 @@ jobs:
6060
python-version: "3.12"
6161

6262
- name: Install Poetry + pre-commit
63-
run: pipx install poetry && pipx install pre-commit
63+
# Poetry is pinned to the version that generated poetry.lock (see
64+
# its header). `poetry install` compares the lock's content-hash
65+
# against the one it computes from pyproject; a different Poetry
66+
# can compute it differently and reject an otherwise-valid lock.
67+
# Bump this in lockstep whenever the lock is regenerated.
68+
run: pipx install poetry==2.1.4 && pipx install pre-commit
6469

6570
- name: Install dependencies (locked)
6671
run: poetry install --no-interaction

poetry.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)