feat(core): warm compiler caches across worktrees for compiled stacks#412
feat(core): warm compiler caches across worktrees for compiled stacks#412OBenner wants to merge 1 commit into
Conversation
Fresh worktrees always cold-build, making every coder -> QA -> fixer iteration expensive for C/C++ and Rust projects. New core/build_cache module injects opt-in cache wrappers into the agent session env: - CMAKE_C/CXX_COMPILER_LAUNCHER=ccache for CMake projects - RUSTC_WRAPPER=sccache for Cargo projects Only when the tool is installed and the variable is not already set by the user. Plain Make projects are left alone (overriding CC/CXX can break builds expecting a bare compiler path). sccache added to the rust allowlist. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Signed-off-by: Oleg Miagkov <mrobenner@gmail.com>
|
Warning Review limit reached
Next review available in: 28 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (4)
✨ 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 |
|



Summary
Roadmap phase 4, second slice (follows #402's targeted test commands).
Auto Code builds every spec in a fresh worktree, so compiled projects cold-build on every coder → QA → fixer iteration. ccache/sccache keep their caches outside the worktree — pointing builds at them makes a brand-new worktree reuse object files from all previous builds.
New
core/build_cache.py, wired intocreate_client():CMAKE_C_COMPILER_LAUNCHER=ccache,CMAKE_CXX_COMPILER_LAUNCHER=ccacheccacheinstalledRUSTC_WRAPPER=sccachesccacheinstalledSafety properties:
os.environand the collected SDK env)CC/CXXcan break builds expecting a bare compiler pathsccacheadded to the rust command allowlistTesting
tests/test_build_cache.py: 7 tests (injection per stack, missing tool, user-override respect via env dict and os.environ, non-compiled and Make-only no-ops). Ruff check + format clean;core.clientimport verified.🤖 Generated with Claude Code