fix(coverage): materialize trusted uv lock dependencies - #737
fix(coverage): materialize trusted uv lock dependencies#737seonghobae wants to merge 20 commits into
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
|
The bounded bootstrap completed successfully and produced the verified canonical source/test pair at head |
What
Extend the central base-commit Python dependency materializer so repositories that rely on
uv.lockcan produce an offline, fully hash-pinned dependency closure even when the GitHub runner does not already expose a trusteduvexecutable.This draft initially carries bounded staging chunks and a self-removing verification workflow. The workflow reconstructs the reviewed source and regression suite, verifies exact SHA-256 receipts, runs focused tests, 100% statement/branch coverage and docstring checks, then commits only the canonical materializer and its tests. The draft must not become ready or merge until that cleanup commit exists.
Why
BandScope Python PRs currently pass their repository CI but fail the central OpenCode coverage sandbox because the validated base tree contains
uv.lockdependency contracts and the coverage runner silently omits them whenuvis absent. That turns missing environment materialization into misleading source-review failures.Trust boundary
uv.lockand siblingpyproject.tomlonly from the exact validated base SHA.uvarchive through HTTPS.uv export --frozen --offline --no-emit-project --no-editablein an isolated temporary project.Verification completed locally
git diff --check: passed.services/analysis-engine/uv.lockexported to a hash-pinned requirements closure; the dependency-free root project correctly emitted no installable closure.Stack
This PR is intentionally stacked on #703 (
fix/npm-workspace-coverage-root). It must be rebased or retargeted after #703 merges, and all exact-head security/review checks remain authoritative.