fix(ci): pin rainix flake rev in deploy reusable to avoid api.github.com 429#245
Conversation
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThree ChangesPin Rainix ref in CI workflow
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Reviewed 8c4d333: pins the deploy reusable's three Merge explicitly authorized by thedavidmeister ("merge 245") — this is his approval, not an agent self-approval. CI: the only failing checks are the two |
|
@coderabbitai assess this PR size classification for the totality of the PR with the following criterias and report it in your comment: S/M/L PR Classification Guidelines:This guide helps classify merged pull requests by effort and complexity rather than just line count. The goal is to assess the difficulty and scope of changes after they have been completed. Small (S)Characteristics:
Review Effort: Would have taken 5-10 minutes Examples:
Medium (M)Characteristics:
Review Effort: Would have taken 15-30 minutes Examples:
Large (L)Characteristics:
Review Effort: Would have taken 45+ minutes Examples:
Additional Factors to ConsiderWhen deciding between sizes, also consider:
Notes:
|
|
Tip For best results, initiate chat on the files or code changes. SIZE=S |
Problem
nix develop github:rainlanguage/rainix#sol-shellresolves the flake's HEAD viahttps://api.github.com/repos/rainlanguage/rainix/commits/HEAD. Under CI bursts GitHub burst/secondary rate-limits that call (429) — and once authenticated it returns a gzip-compressed rate-limit body that nix-2.24.12 fails to decompress, surfacing asjson.exception.parse_error.101 … invalid literal … '<U+001F>'. This has been the recurring org-wide nix CI flake.Auth does not fix it. Verified directly: setting
access-tokensviaNIX_CONFIGdoes apply the token (nix config showlists it), but thecommits/HEADfetch still fails — it's a burst limit, not a missing credential.Fix
Pin the flake refs to a full commit sha. With an explicit rev, nix skips the
commits/HEADapi.github.com resolution entirely and pulls the tarball directly (codeload, far higher limits). Pins all threenix developcalls in the deploy reusable to307bf27fcc5a410994f5a6a6a96527a64625c3da(currentmain).Confirmed
A deploy run on this branch got past every flake-fetch step (
forge soldeer install,forge selectors up, intoforge script Deploy) with zero 429/gzip errors — it now reaches the actual deploy logic. (It stops at an unrelated base-RPC dependency check.)Notes
307bf27f; bump the sha when the rainix toolchain changes. For a deploy reusable a stable, pinned toolchain is desirable (reproducible deploys).rainix-sol-test,rainix-rs-test, etc.) for the full org-wide 429 fix — follow-up, weighed against wanting CI to track the current toolchain.🤖 Generated with Claude Code
Summary by CodeRabbit