Skip to main content

build_cache_note

Function build_cache_note 

Source
pub fn build_cache_note(node: &str) -> String
Expand description

What a seat that may build is told about the shared build cache.

Spliced into every node prompt (in [crate::graph::wave]) when the run’s config declares a CARGO_TARGET_DIR — which is also the directory the verify commands build into. The text is stable so tests can assert on it; the value of the variable is not spelled out because the seat reads it from its own environment, and a prompt that hardcodes a path would go stale the moment the config moves the cache.

The fund-transfer reality it exists to prevent: an implementer that builds with its own CARGO_TARGET_DIR (or lets cargo create a fresh target/ in the worktree) is compiling a second copy of the world that nobody prunes, on a machine that has already had that exact failure once.

node is the graph node this is spliced into ("review", "fix", …). A reviewer or fixer gets an extra paragraph saying full verification is magi’s own job, not theirs to repeat — the same duplicated-full-suite cost this note’s own advice (build through the shared cache) does nothing to prevent on its own, since a seat that dutifully builds through the cache can still spend the round re-running the whole thing. Phrased as a request, not a guarantee: magi has no way to stop a seat from running cargo test --all-targets anyway, so the note asks rather than claims it enforces anything.