Skip to content

Fix Docker build: copy uv.lock to prevent dependency drift#603

Closed
DK09876 wants to merge 1 commit intomainfrom
fix/dockerfile-copy-lockfile
Closed

Fix Docker build: copy uv.lock to prevent dependency drift#603
DK09876 wants to merge 1 commit intomainfrom
fix/dockerfile-copy-lockfile

Conversation

@DK09876
Copy link
Contributor

@DK09876 DK09876 commented Mar 17, 2026

Summary

  • Copy uv.lock into the Docker build stage so uv sync uses locked dependency versions
  • Use --frozen --no-install-project to enforce exact versions from the lockfile
  • Fixes CI breakage caused by claude-agent-sdk==0.1.49 being published with only macOS ARM wheels (no Linux x86_64)

Context

The standalone Dockerfile only copied pyproject.toml but not uv.lock, so uv sync resolved dependencies fresh on every build. When claude-agent-sdk>=0.1.27 resolved to 0.1.49 (which lacks Linux wheels), all Docker builds on Linux x86_64 started failing.

Test plan

  • Local Docker build succeeds with --target api-only
  • Verified installed claude-agent-sdk version is 0.1.31 (locked) not 0.1.49
  • CI Docker build passes

🤖 Generated with Claude Code

The standalone Dockerfile only copied pyproject.toml but not uv.lock,
causing uv sync to resolve dependencies fresh on every build. This broke
CI when claude-agent-sdk 0.1.49 was published with only macOS ARM wheels
(no Linux x86_64 support), since the Docker build runs on Linux.

Now copies uv.lock and uses --frozen --no-install-project to install
exact locked versions, preventing unexpected upgrades.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@nicoloboschi
Copy link
Collaborator

nicoloboschi commented Mar 17, 2026

that problem should be already fixed now from here: #601

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.

2 participants