When your pipeline behaves unexpectedly, follow this systematic debugging protocol to uncover the root cause. 1. Enable Step Debug Logging
Some advanced users also set RUNNER_TOOL_CACHE_DEBUG to true , but ACTIONS_STEP_DEBUG triggers the specific debug-action-cache protocol.
Cache save is — if two parallel jobs try to save the same key, one succeeds, the other silently skips. Debug with:
You can visually verify if the package-lock.json hash generated a 3-day-old cache or a 3-week-old cache.
If you do not have administrative access to delete caches via the UI or CLI, you can force a global cache bust directly within your YAML file. Introduce an arbitrary versioning variable into your cache key string:
env: ACTIONS_STEP_DEBUG: true
[debug] Resolved path: 'node_modules' -> '/home/runner/work/app/node_modules' [debug] Path exists: true [debug] Contents: [ 'react', 'lodash', '.bin' ]
Did a teammate update their local version of Node.js, Go, or GCC? If your build relies on the host machine's installed tools rather than pinned, hermetic toolchains, different developers will consistently bust each other's remote caches. Ensure all compiler versions are locked down down to the exact patch version. Best Practices for Cache Health
A list of all active cache keys will appear. Locate the problematic key.
There is no single "debug-action-cache" button, but you can implement the following strategies to investigate issues.
When your pipeline behaves unexpectedly, follow this systematic debugging protocol to uncover the root cause. 1. Enable Step Debug Logging
Some advanced users also set RUNNER_TOOL_CACHE_DEBUG to true , but ACTIONS_STEP_DEBUG triggers the specific debug-action-cache protocol.
Cache save is — if two parallel jobs try to save the same key, one succeeds, the other silently skips. Debug with: debug-action-cache
You can visually verify if the package-lock.json hash generated a 3-day-old cache or a 3-week-old cache.
If you do not have administrative access to delete caches via the UI or CLI, you can force a global cache bust directly within your YAML file. Introduce an arbitrary versioning variable into your cache key string: Cache save is — if two parallel jobs
env: ACTIONS_STEP_DEBUG: true
[debug] Resolved path: 'node_modules' -> '/home/runner/work/app/node_modules' [debug] Path exists: true [debug] Contents: [ 'react', 'lodash', '.bin' ] Introduce an arbitrary versioning variable into your cache
Did a teammate update their local version of Node.js, Go, or GCC? If your build relies on the host machine's installed tools rather than pinned, hermetic toolchains, different developers will consistently bust each other's remote caches. Ensure all compiler versions are locked down down to the exact patch version. Best Practices for Cache Health
A list of all active cache keys will appear. Locate the problematic key.
There is no single "debug-action-cache" button, but you can implement the following strategies to investigate issues.