Repository navigation
Conversation
Signed-off-by: stacknil <219124580+stacknil@users.noreply.github.com>
This branch has not been deployed
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.
Problem
Equivalent dependency representations could change explicit evidence-policy decisions, while malformed policy or provider evidence could cross validation boundaries. This change adds a reproducible, offline decision-stability qualification and the narrowly justified repairs it exposed.
Invariants
Canonical identity, observed metadata, recorded evidence, policy authorization and consumer decisions remain distinct. Representation-only equivalence is STABLE; changes to active rules or relevant evidence can produce JUSTIFIED_REVERSAL. Contradictory identities remain invalid input. Unknown evidence never becomes proof of authenticity or package safety.
Design decisions
Failure model and rejected alternatives
The regressions cover contradictory/duplicate inputs, cache contamination, omitted violations, severity/suppression corruption, unavailable/missing/unverified confusion, malformed provider evidence and misleading report agreement. Universal alias matching, Unicode repository alias folding, latest-release inference and a new unknown-score blocking policy were rejected. A failed cache experiment based on an invalid distinct-release assumption is retained as a rejected oracle hypothesis, not a production defect.
Compatibility and non-claims
Existing policy/report schema identifiers, risk taxonomy, strict SemVer classification and offline defaults remain unchanged. No dependency or workflow changes are included. Invalid Scorecard evidence follows existing error/unknown handling; an available-score-only policy can therefore pass without usable score evidence. This is not a vulnerability scanner or package safety certification. No live PyPI/Scorecard enrichment or production PyPI publishing was exercised. The qualification's network-denial audit recorded zero actual attempts; explicitly enabled production lookup remains the existing opt-in behavior.
Validation
test_policy_scorecard.py.dce5082e3f943c0e796e74607aa65c02cf86f10c; 30-file frozen diff; semantic tree0760a5543df366f3a8237c60a187cde7f3aae0b0.The owner supplied the external disposition ACCEPT_FOR_LOCAL_COMMIT, conditional on exact source identity, after targeted independent execution and review for the defined scope. That external review was not an independently executed rerun of the entire 817-test suite. Frozen qualification documents retain their historical audit-pending checkpoint; the later external disposition is preserved separately. Private transcripts, machine receipts and the private audit package are not part of this PR. Hosted CI is a separate integration gate and will be assessed from actual jobs, not inferred from local results.
Rollback and review
Revert this single contribution to remove the qualification and bounded repairs; no schema migration or data conversion is required. This is a draft because the coherent qualification spans 30 files. It does not close or claim completion of #103 or #117. Merge requires a separate decision; no merge or release is authorized by this integration task.