fix(coverage): materialize requirements-directory locks - #785
Draft
seonghobae wants to merge 6 commits into
Draft
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 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Buyer and review problem
Central OpenCode coverage discovers conventional
requirements*.txtnames but ignores complete hash-pinned locks stored as direct children such asrequirements/ci.txt. Infast-mlsirm#546, the authenticated base contains a generated NumPy-bearingrequirements/ci.txt, yet central coverage materialized zero lock candidates and produced 166 collection errors, includingModuleNotFoundError: No module named 'numpy'. This blocks meaningful review of the changed production code.Test-first and repair state
The immutable RED contract at
8344a2b2e24d6952fe2442e68b9ee514cb1d7ee8proves directrequirements/*.txtlock discovery is absent and covers realistic base-owned hash locks plus deeper/unrelated rejection cases.Current exact head:
9d24c19d860cbd8fef5e4fc60501fc156f057abb.The branch currently contains only the RED contract and a bounded self-removing repair workflow. The repair now:
contents: write;exit 1) rather than accepting collection/import errors as RED evidence;--force-with-lease;The current exact head is intentionally Draft and not merge-ready. Temporary write-capable automation or the expected RED test is not product evidence.
Intended trust boundary
Candidate status is granted only to a
.txtfile that is a direct child of a directory namedrequirements, in addition to existing conventional names. Existing controls remain authoritative:pip --require-hashesclosure;Downstream impact
After this central fix merges,
fast-mlsirm#546must rerun exact-head coverage/review so its Rust-backed psychometric report orchestration is judged with NumPy and the repository's real hash-locked test environment rather than a dependency-free image.Merge gate
Keep Draft until the repair publishes a workflow-free exact head. Then require Trusted uv Materializer Quality CI, complete central tests, 100% production statement/branch/docstring evidence, Python 3.10/3.14 compatibility, Python Security, Security Scan, CodeQL, Semgrep, Secret Scan, OSV, Scorecard, SBOM, current-head CodeRabbit/OpenCode/Noema review, independent approval, zero unresolved threads, and branch protection without bypass.