Repository navigation
fix(catalog): repair packages when the catalog is unchanged - #70
Closed
KennyMcSimpson wants to merge 2 commits into
Closed
KennyMcSimpson wants to merge 2 commits into
KennyMcSimpson wants to merge 2 commits into
Conversation
|
@KennyMcSimpson is attempting to deploy a commit to the vastsa's projects Team on Vercel. A member of the Team first needs to authorize it. |
KennyMcSimpson
marked this pull request as ready for review
October 7, 2026 17:19
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.
What this changes
An unchanged catalog currently returns before checking the local packages. Deleting or corrupting a package therefore leaves the mirror broken even after a successful sync.
Check that every non-yanked package exists and matches its SHA-256 before taking that shortcut. If a package needs repair, use the existing staging and verification path. Healthy mirrors still avoid package downloads, and missing yanked versions remain optional.
Regression tests cover missing and corrupt packages, healthy mirrors, yanked versions, a bad downloaded hash, and a dry run that leaves the local files untouched. No catalog or published package is changed in this PR.
Checks
python3 scripts/security_audit.py --check-packages— zero blockerspython3 -m unittest discover -s tests -p 'test_*.py' -v— 20 tests passedcatalog.jsonand published packages are unchangedplugins/) was addedpython3 scripts/sync_catalog.py --dry-runalso completed against the live center (52 plugins, 90 packages staged). No repository files were replaced.