Today — the default Linux test lane runs make test-termlens-cli, whose #[ignore]d suite installs the tool with cargo install termlens-cli --version <lock version> (crates/oxidelake-tui/tests/termlens_cli.rs:100), compiling it from source on every run; cache-bin: false means it is never reused. The other tools are prebuilt: cargo-deny via EmbarkStudios/cargo-deny-action, cargo-semver-checks via its action, zizmor via pipx run zizmor==1.29.0.
Fix — install termlens-cli prebuilt (cargo-binstall, or taiki-e/install-action pinned by full SHA looked up with gh api, at exactly the version Cargo.lock names) in a workflow step, and have the test use the binary on PATH when TERMLENS_CLI is set, falling back to cargo install only for local --ignored runs. No cache: the rule for this ecosystem's workflows is prebuilt tools, not cached builds.
Done when — the test lane's termlens-cli step takes seconds, not minutes; the version installed is asserted equal to the lockfile's in the test.
Today — the default Linux test lane runs
make test-termlens-cli, whose#[ignore]d suite installs the tool withcargo install termlens-cli --version <lock version>(crates/oxidelake-tui/tests/termlens_cli.rs:100), compiling it from source on every run;cache-bin: falsemeans it is never reused. The other tools are prebuilt:cargo-denyviaEmbarkStudios/cargo-deny-action,cargo-semver-checksvia its action,zizmorviapipx run zizmor==1.29.0.Fix — install
termlens-cliprebuilt (cargo-binstall, ortaiki-e/install-actionpinned by full SHA looked up withgh api, at exactly the versionCargo.locknames) in a workflow step, and have the test use the binary onPATHwhenTERMLENS_CLIis set, falling back tocargo installonly for local--ignoredruns. No cache: the rule for this ecosystem's workflows is prebuilt tools, not cached builds.Done when — the test lane's
termlens-clistep takes seconds, not minutes; the version installed is asserted equal to the lockfile's in the test.