Skip to content

Commit 3c024d1

Browse files
committed
revert(ci): drop the kache experiment; restore rust-cache baseline
Measured on the pool (2026-08-13): kache-only (no rust-cache) ran the rust job in 30.8 min vs the 27 min rust-cache baseline; kache + rust-cache was 38.1 min. The job is test-dominated (~20 min of ~27), so a compile cache cannot win: kache removes the rust-cache restore but adds setup/post overhead (binary download, daemon, warm prefetch, sync push, report). R2 warm hits covered the compile phase and the result was still slower. Revert to the proven configuration: Swatinem/rust-cache on the rust job, no kache-action anywhere. The real fixes from this session stand: the 5 GiB VM memory ceiling (host OOM class) and the deaf-runner fixes (bridge resilience + server liveness sweep, shipped in v0.30.2). R2 bucket/secrets stay in place if a compile-heavy workload ever justifies revisiting this.
1 parent 405a391 commit 3c024d1

2 files changed

Lines changed: 2 additions & 36 deletions

File tree

‎.github/workflows/ci.yml‎

Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -78,20 +78,8 @@ jobs:
7878
toolchain: "1.86"
7979
components: rustfmt,clippy
8080

81-
# Content-addressed compile cache shared through R2: the rust and
82-
# property-tests jobs run in parallel on separate pool VMs and no
83-
# longer compile the same crates twice, and a lockfile/toolchain bump
84-
# only misses the crates that actually changed. Distinct manifest keys
85-
# keep the two jobs' prefetch manifests from clobbering each other.
86-
- uses: kunobi-ninja/kache-action@49398d37113c616fdb61be434cb497e3c2c8f3e6 # v1
87-
with:
88-
s3-bucket: preloop-kache
89-
s3-endpoint: https://da4b337a84d48ad45633a546cd97dbff.r2.cloudflarestorage.com
90-
s3-region: auto
91-
s3-access-key-id: ${{ secrets.KACHE_R2_ACCESS_KEY_ID }}
92-
s3-secret-access-key: ${{ secrets.KACHE_R2_SECRET_ACCESS_KEY }}
93-
manifest-key: ci-rust
94-
pr-comment: false
81+
# inline run steps work against preloop
82+
- uses: Swatinem/rust-cache@49a0bdc70d2e1b713ca9e2869b211fcce03d3c1c
9583

9684
- run: cargo fmt --all --check
9785
- run: |
@@ -118,16 +106,6 @@ jobs:
118106
with:
119107
toolchain: "1.86"
120108

121-
- uses: kunobi-ninja/kache-action@49398d37113c616fdb61be434cb497e3c2c8f3e6 # v1
122-
with:
123-
s3-bucket: preloop-kache
124-
s3-endpoint: https://da4b337a84d48ad45633a546cd97dbff.r2.cloudflarestorage.com
125-
s3-region: auto
126-
s3-access-key-id: ${{ secrets.KACHE_R2_ACCESS_KEY_ID }}
127-
s3-secret-access-key: ${{ secrets.KACHE_R2_SECRET_ACCESS_KEY }}
128-
manifest-key: ci-property-tests
129-
pr-comment: false
130-
131109
# Zero-filter guard so just fail if no properties match the filter
132110
- name: Verify concurrency_properties filter matches at least one test
133111
run: |

‎.github/workflows/release-golden.yml‎

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -143,18 +143,6 @@ jobs:
143143
- name: Set up Rust toolchain
144144
uses: dtolnay/rust-toolchain@4360b52568e2003a75bf9bc1d59f33a8e3fc893c
145145

146-
# Release builds are the slowest compiles on the pool; cache them
147-
# through the shared R2 bucket so golden re-bakes skip them entirely.
148-
- uses: kunobi-ninja/kache-action@49398d37113c616fdb61be434cb497e3c2c8f3e6 # v1
149-
with:
150-
s3-bucket: preloop-kache
151-
s3-endpoint: https://da4b337a84d48ad45633a546cd97dbff.r2.cloudflarestorage.com
152-
s3-region: auto
153-
s3-access-key-id: ${{ secrets.KACHE_R2_ACCESS_KEY_ID }}
154-
s3-secret-access-key: ${{ secrets.KACHE_R2_SECRET_ACCESS_KEY }}
155-
manifest-key: golden-release
156-
pr-comment: false
157-
158146
- name: Build Preloop binaries
159147
run: |
160148
cargo build --release -p preloop-cli -p preloop-runner-server

0 commit comments

Comments
 (0)