- All playbooks
- Caching and setup
- Restore dependencies after their manifest exists
Restore dependencies after their manifest exists
Check out the code before the setup action, so its dependency cache can find the manifest.
Company examples
How Uber used this technique
Read what Uber changed and follow the original sources.
Restore dependencies after their manifest exists
TChannel's Go setup ran before checkout, and checkout used a nested GOPATH directory. The fix runs checkout first, points setup-go at **/go.sum and removes an obsolete Glide cache. OPT61 is adapted to repairing cache discovery.
The merged diff moves checkout ahead of setup-go and sets cache-dependency-path to the real go.sum location. Source
- Use it when
- A language setup action runs before checkout, or looks for the dependency manifest in the wrong directory under a custom checkout path.
- Before applying it
- Use a reviewed action version and a manifest glob that matches only the intended modules, and keep dependency installation and integrity checks on cache hits.
Company Playbooks
- Read Anthropic’s playbookRun only affected tests
- Read DoorDash’s playbookRun build and test in parallel, sharded across CI agents
- Read Linear’s playbookBenchmark the same job on faster hardware
- Read Mastra’s playbookStarSling runners for the slowest test workflow
- Read OpenAI’s playbookRank CI fixes by the minutes they save
- Read Ramp’s playbookMove a CPU-bound test suite to a faster CPU
- Read Shopify’s playbookLet an agent iterate against one CI metric
- Read Spotify’s playbookBuild arm64 on native arm64 runners
- Read Stripe’s playbookRun only the tests a change can reach
- Read Uber’s playbookBuild the merge-queue speculations most likely to be needed