Files
redwoodjs__local-ci/experiments/pkg-cache-bench
Peter Pistorius 06fa6e6f61 Harden DTU release remediation (#379)
* Harden DTU control plane

* Harden DTU release remediation

* Clean Rust smoke parity artifacts
2026-07-13 12:16:26 +02:00
..
2026-03-12 22:35:26 +02:00

Package Manager Cache Benchmark

Benchmarks install speed for NPM, Yarn, and Bun across 4 caching scenarios using a real create-rwsdk project.

Why

Agent CI already caches PNPM installs via warm node_modules bind-mounts (symlinked into containers). This experiment measures whether the same strategy works for other package managers.

Run

# All package managers
bash bench.sh

# Specific ones
bash bench.sh --pm npm
bash bench.sh --pm yarn
bash bench.sh --pm bun
bash bench.sh --pm npm,bun

Scenarios

# Scenario What it tests
1 Cold install Fresh install, no cache, no node_modules
2 Warm cache Global cache populated, but node_modules deleted
3 Warm modules node_modules already present, incremental install
4 Symlink only Symlink a cached node_modules — no install at all

Scenario 4 is the interesting one — it's what Agent CI does for PNPM. If it's ≫5× faster than cold install, the warm-modules strategy generalises to all package managers.

Requirements

  • npm (bundled with Node)
  • yarn v1: npm i -g yarn
  • bun: curl -fsSL https://bun.sh/install | bash