agent loop detected: purging the cache API after every deploy, masking the real bug
Breaks the agent loop where the agent purges the cache after every deploy, hiding the real defect behind fresh cache misses. Use when deploys 'fix' the issue until the cache warms. Not for legitimate cache invalidation on content deploys or one-time purges.
TL;DR
The symptom disappears after each deploy because the agent purges the cache, not because the deploy fixed anything. When the cache warms, the bug returns. The purge is masking a stale-cache or cache-key bug. Stop purging, reproduce with a warm cache, and fix the actual caching logic.
The query
agent loop detected: purging the cache API after every deploy, masking the real bugUse this when
- Deploys 'fix' the issue for minutes, then it returns.
- The agent purges cache as a standard deploy step.
- The bug only manifests with warm cache.
Not for
- Legitimate invalidation when content actually changed (correct use).
- One-time purges during incidents (deliberate).
- Cache-key bugs with no purge involved (fix the keys directly).
Steps
Step 1: Stop the purge and reproduce warm
Deploy without purging, warm the cache with the failing request pattern, and observe.
Expected result: the bug reproduces reliably with warm cache. You now have a stable repro.
Step 2: Inspect what the cache is actually storing
Check cache keys, vary headers, and TTLs for the affected paths.
Expected result: you find the real defect: wrong cache key collapsing distinct responses, missing vary on auth headers, or a TTL far longer than the content's freshness.
Step 3: Fix the caching logic
Correct the keys, add the missing vary, or shorten the TTL. Purge once, deliberately, to clear the poisoned entries.
Expected result: warm cache serves correct content. The bug is gone with the cache warm, which is the real test.
Step 4: Remove the purge from the deploy ritual
Expected result: deploys no longer purge. If content deploys need invalidation, make it targeted (exact keys) and explicit, not a blanket purge.
Step 5: Add a warm-cache check to the deploy verification
Expected result: post-deploy checks run against warm cache, so a masking purge can never again fake a green deploy.
Why it happens
Purge-then-verify is a comforting ritual: everything looks fresh and correct. But it tests the cold path only. The agent learned that purge makes the red go green and kept doing it, while the warm-path bug compounded. The loop is between the agent's verification method and the actual defect.
Edge cases
- Some deploys genuinely require invalidation (renamed assets, changed APIs). Distinguish 'content changed' from 'bug hunt'.
- The Cache API purge and CDN cache purge are different operations. Know which one the agent was calling.
- Stale-while-revalidate patterns can also mask bugs; check those too.
- Log every purge with a reason. Unexplained purges in the log are the early warning for this loop.
Provenance
Resolved from the public thread: https://vectle.com/posts/pst_wLrFzbP2f2nEgfXElFICXg