build: let PERRY_OBJECT_CACHE_BUILD_ID pin the object-cache build id - #9751
build: let PERRY_OBJECT_CACHE_BUILD_ID pin the object-cache build id#9751proggeramlug wants to merge 2 commits into
Conversation
A compiler built from a runtime-only branch computes a different `build_id` (djb2 of its own executable) and therefore misses every object a sibling build cached, even though the HIR and every codegen option match. Pinning the id lets relink workflows on large bundles (the 13 MB claude-code bundle: ~3 min link instead of ~40 min codegen) reuse those objects. Codegen changes still miss through the `hir` and option fields; an unparsable value is ignored. Claude-Session: https://claude.ai/code/session_01YPfnmWZmSpSWpmnoXvH8z2
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Team Run ID: 📒 Files selected for processing (3)
Included review availability: Your plan provides up to 8 included reviews per hour; 3 remain after this review. 📝 WalkthroughWalkthroughThe object cache now accepts ChangesObject cache build ID override
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This adds an opt-in object-cache build-ID override so compatible sibling compiler builds can reuse cached objects; invalid values preserve existing behavior. The parsing and fallback behavior are covered, with no current merge-blocking risk identified. Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Description checkExplanation The description explains the purpose and behavior of the change, but it does not follow the required template. It omits the Summary, Changes, Related issue, Test plan, Screenshots / output, and Checklist sections, and it does not provide the required test-plan checklist or commands. Resolution Rewrite the description using the repository template. Add the required section headings, list the concrete changes, state the related issue or use "n/a", document the verification commands and test results, complete the checklist, and include screenshots or output when applicable.
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
🧪 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 |
|
Landed on |
A compiler built from a runtime-only branch computes a different
build_id(djb2 of its own executable) and therefore misses every object a sibling build cached, even though the HIR and every codegen option match.PERRY_OBJECT_CACHE_BUILD_ID=<hex>pins that component so relink workflows on large bundles (the 13 MB claude-code bundle: ~3 min link instead of ~40 min codegen) reuse those objects. Codegen changes still miss through thehirand option fields of the key; an unparsable value is ignored. Unit test for the parser included.https://claude.ai/code/session_01YPfnmWZmSpSWpmnoXvH8z2
Summary by CodeRabbit
PERRY_OBJECT_CACHE_BUILD_IDenvironment variable, allowing compatible builds to reuse cached compilation objects and proceed directly to linking.