mirror of https://github.com/actions/cache.git
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Three gaps let a cache key live only in the GitHub cache with GCS
configured, and one of them stopped the pnpm store (1.6 GB) from ever
reaching GCS in cula-platform:
- A hit served by the GitHub fallback counted as an exact match, so the
post step never saved it. Once GCS missed a key a single time, the
GitHub copy satisfied every later job and GCS never got the key.
Restore now records which backend answered (State.CacheSource); on a
GitHub hit the save writes the entry to GCS, without a second GitHub
save that would only fail on the existing entry.
- The post step of an action nested inside composite actions cannot see
sibling step outputs, so `path: ${{ steps.x.outputs.y }}` arrived empty
there ("Input required and not supplied: path") and the save was
skipped. Restore now records the resolved paths (State.CachePaths) and
the save falls back to them when the input is empty.
- saveCache logged "falling back to GitHub cache" on an empty GCS result
and then returned without doing so. The fallback now runs in both the
empty-result and the thrown-error case, unless the caller opted out.
The restore/save tests mocked core.getState with positional
mockImplementationOnce chains that depended on the number and order of
reads (and leaked across tests); they are keyed by state name now.
dist/ rebuilt with `npm run build`.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Y5UfALF3nKcwCLWPikbnJn
|
6 days ago | |
|---|---|---|
| .. | ||
| restore | 6 days ago | |
| restore-only | 6 days ago | |
| save | 6 days ago | |
| save-only | 6 days ago | |