Skip to content

Commit 910efaa

Browse files
ruvnetruvnet
andcommitted
ci(hailo): point cache keys at the workspace-root Cargo.lock (iter 227)
iter-219 (workspace re-inclusion, ADR-178 Gap E) removed the per-crate `crates/ruvector-hailo-cluster/Cargo.lock` — but the hailo-backend-audit workflow's two `actions/cache@v4` keys still hashed that now-missing path: key: ${{ runner.os }}-cargo-${{ hashFiles('crates/ruvector-hailo-cluster/Cargo.lock') }} `hashFiles()` returns an empty string when the pattern matches nothing. So both cache keys would have collapsed to the constant prefix `${{ runner.os }}-cargo-` (and `-cargo-test-`) on every run — every PR, every branch, every commit would have shared the same cache slot, defeating the cache invalidation iter-178 set up. Either falsely-stale build artifacts on a dep change, or chronic cache misses depending on how the runners' eviction policy shook out. Fix: point both keys at the workspace-root `Cargo.lock`, which is canonical post-iter-219. Same parallel as iter-224's cargo-audit fix that handled the matching deny-vs-audit drift. Validated: - yaml parses (`python3 -c 'import yaml; yaml.safe_load(...)'`) - root Cargo.lock exists at the new path - Pattern matches GitHub Actions' relative-to-GITHUB_WORKSPACE semantic for `hashFiles()` — Cargo.lock at repo root is correctly resolved without a path prefix. Pure CI hygiene; no code change. Catches the third post-iter-219 side effect (after iter-224's cargo-audit ignores and iter-226's real-hardware verification). Co-Authored-By: claude-flow <ruv@ruv.net>
1 parent cabd295 commit 910efaa

1 file changed

Lines changed: 9 additions & 2 deletions

File tree

.github/workflows/hailo-backend-audit.yml

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,13 @@ jobs:
9797
~/.cargo/registry
9898
~/.cargo/git
9999
crates/ruvector-hailo-cluster/target
100-
key: ${{ runner.os }}-cargo-${{ hashFiles('crates/ruvector-hailo-cluster/Cargo.lock') }}
100+
# Iter 227 — cache key now points at the workspace-root
101+
# Cargo.lock since iter-219 removed the per-crate
102+
# `crates/ruvector-hailo-cluster/Cargo.lock`. Keeping the
103+
# stale reference would have resolved to an empty hash via
104+
# `hashFiles()` of a missing path, collapsing every branch's
105+
# cache to the same key → false hits on unrelated trees.
106+
key: ${{ runner.os }}-cargo-${{ hashFiles('Cargo.lock') }}
101107
- name: Run clippy
102108
working-directory: crates/ruvector-hailo-cluster
103109
run: cargo clippy --all-targets -- -D warnings
@@ -116,7 +122,8 @@ jobs:
116122
~/.cargo/registry
117123
~/.cargo/git
118124
crates/ruvector-hailo-cluster/target
119-
key: ${{ runner.os }}-cargo-test-${{ hashFiles('crates/ruvector-hailo-cluster/Cargo.lock') }}
125+
# Iter 227 — workspace-root Cargo.lock (see clippy job).
126+
key: ${{ runner.os }}-cargo-test-${{ hashFiles('Cargo.lock') }}
120127
- name: Run all suites
121128
working-directory: crates/ruvector-hailo-cluster
122129
run: cargo test

0 commit comments

Comments
 (0)