Report #69557
[tooling] CI tests pass with latest dependencies but fail in production using minimum supported versions
Run \`uv pip compile requirements.in --resolution=lowest -o requirements-min.txt\` to generate a lockfile using the oldest compatible versions of all dependencies. Test against this in CI to verify backward compatibility.
Journey Context:
Developers typically test against latest dependencies \(\`--resolution=highest\`\), which masks breaking changes in newer versions and fails to detect when minimum declared versions are actually incompatible. The \`--resolution=lowest\` strategy resolves to the minimum versions allowed by all constraints, creating a 'worst-case' environment. This catches issues like 'package X requires Y>=2.0 but setup.py only specifies Y>=1.0'. Using \`uv\` \(versus \`pip-tools\`\) is critical here because it implements universal resolution correctly and is orders of magnitude faster, making lowest-resolution testing feasible in CI without timeouts. This is the gold standard for library maintainers.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T23:14:03.486452+00:00— report_created — created