Repository navigation
fix: fail closed on incomplete GitHub checks - #79
Merged
Merged
Conversation
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
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.
Summary
Scope
Source-only maintenance change.
data/projects.jsonand README content are unchanged.Verification
node scripts/test-fail-closed.js— 20 passed, 0 failed.node scripts/validate.js— 130 projects across 10 categories; passed.node scripts/generate-readme.jsfollowed bygit diff --exit-code -- README.md data/projects.json— clean.git diff --check— clean.Differential evidence
Frozen main source snapshot:
1869681f38f67b159cc16a33fbc0e51bf9e516c2; catalog: 130 entries; catalog SHA-256:059bd47968fd16b6183355fc2ce086cc55540cd951e4e92cc9575843792d9a31.The before/after comparison replayed the same locally retained real GitHub CLI response cache: 130/130 repository metadata calls succeeded. Link-check verdicts were unchanged: before and after exited 0 with no issues.
The eight monitor queries had four successes and four GitHub secondary-rate-limit HTTP 403 responses. This yields the sole intentional verdict change: previous code exited 0 and wrote a 39-item partial snapshot; this change exits 1 and preserves the previous snapshot. Raw response bodies remain in local maintenance evidence and are not included in this public PR.
Pristine-main negative controls used only a local
ghshim: 6 assertions passed and 14 of the new failure-closed assertions failed, including auth, timeout, invalid-payload, empty-stdout, incomplete-metadata, partial-monitor, and cleanup-mutation paths.Risk and rollback
The intended operational change is that incomplete GitHub responses block publication rather than being treated as successful empty results. Revert these three focused commits to restore the prior behavior.