Cache Wipe / Force Re-roll¶
When the Generation Runner's cache is working against you instead of for you. This page covers explicit cache control — what to wipe, when, and how.
For the general concept of how cache works, see Chapter 5 — Cache and Re-generation.
When you need to wipe cache¶
| Situation | Wipe? |
|---|---|
| Standard re-run after prompt edit | NO — runner auto-invalidates the edited node's cache |
| Standard re-roll on one scene | NO — use per-node rerun (which ignores cache for that node only) |
| Avatar reference URL changed | YES — the cache was tied to the old URL |
| Model identifier changed (NB1 → NB2) | YES — old cached output is from the wrong model |
| Complete fresh comparison run | YES — you want everything regenerated |
| Workflow file restored from backup | YES — cached output may not match the restored prompts |
Old .nbflow from a previous month's project |
YES — cache might point to URLs that have been cleaned up |
| Suspect cache corruption | YES — when in doubt, wipe |
How to wipe cache¶
You: wipe the cache on XYZG3-V0-3 and regenerate from scratch.
Claude:
Wiping cached _savedImages and _savedClips from all gen nodes in
XYZG3-V0-3.nbflow...
Wiped 8 image nodes and 8 video nodes across 5 account tabs (40 nodes
total).
Source file saved (the original cache is preserved in
backups/XYZG3-V0-3.nbflow.bak-2026-05-12-pre-cache-wipe).
Now invoking the Generation Runner — it will regenerate every node
since none have cached output anymore.
~30-45 min estimated for the full pass.
Wiping is a destructive change to the source .nbflow. The cache state is gone after the wipe. That's why the backup is critical — if you change your mind, restore from backups/.
How to wipe cache for just specific nodes¶
You don't usually want to wipe everything. Often you want to invalidate cache for specific nodes:
You: wipe the cache for just Scenes 03 and 05 in XYZG3-V0-3. Other
scenes should keep their cached output.
Claude: [clears _savedImages and _savedClips on the specific scene nodes;
saves; runner will regenerate just those scenes]
This is the targeted middle ground between "wipe everything" and "no wipe."
Force re-roll on a single node¶
When you want fresh candidates for one scene (different seeds, same prompt):
You: re-roll Scene 03's image gen. Don't use cached output.
Claude: [calls regen-nodes.py for Scene 03's image node — that script
always ignores cache for the targeted node]
regen-nodes.py always treats the targeted nodes as cache-misses, even if _savedImages is populated. The other nodes' cache stays intact.
This is the most common cache-control operation. You're not really wiping cache — you're saying "don't use it for this node."
Cache wipe vs. version bump¶
A confusing pair:
Cache wipe- Clear the
_savedImagesand_savedClipsfields on gen nodes. Forces regeneration on next run. Doesn't bump the version. Version bump- Move the current
.nbflowtobackups/and save a new one with a higher V0-N. Documents a meaningful change in the version history.
These often happen together but are distinct operations.
| You did this | Wipe cache? | Bump version? |
|---|---|---|
| Edited a single scene's prompt | NO (auto-invalidated) | YES (it's a meaningful change) |
| Wiped cache to start fresh | YES | YES (a wipe is a meaningful change) |
| Restored from backup | NO (the cache is what's restored) | NO (you're going back to a prior version) |
| Per-node re-roll for fresh seeds | N/A (regen-nodes ignores cache) | NO (re-rolls aren't meaningful changes unless results are different) |
| Avatar ref URL update + re-run | YES | YES (URL change is meaningful) |
The mode=clean invocation¶
The Generation Runner supports a clean-run mode that explicitly wipes cache before running:
You: re-run XYZG3-V0-3 in clean mode — wipe cache first, then regenerate.
Claude: [invokes Generation Runner with --mode=clean]
[wipes cache, then runs all nodes from scratch]
This combines the wipe and re-run into one operation. Useful when you know you need a clean pass.
When wiping cache is excessive¶
Don't wipe cache when:
A single scene needs a re-roll- Use per-node rerun. Cheap. Doesn't disturb anything else.
You "just want to be sure"- The cache is reliable. If you find yourself wiping out of paranoia, you're burning budget for no benefit.
After a prompt edit- The runner auto-invalidates cache for nodes whose prompts changed. You don't need to wipe manually.
Recovering from a runner crash- The cache holds what succeeded. Don't wipe — let the next run reuse what's there. (Unless the cache is corrupted — see Runner Crash Recovery.)
When R2 URL stale + cache stale combine¶
A particularly annoying combo: you re-uploaded an avatar reference to R2 (new URL), but the workflow's cache still has _savedImages pointing at outputs generated with the OLD avatar URL.
Symptoms:
- Workflow runs, "succeeds," but the avatar in the cached output is the old face
- New scenes regenerate with the new avatar (because they don't have cache)
- Output is inconsistent across scenes
Recovery:
- Wipe cache — forces all gens to redo with the new avatar URL
- Bump V0-N — the URL change is a meaningful change
- Re-run — fresh output with the new avatar throughout
Or, if you haven't yet re-uploaded but plan to:
- Bump V0-N first
- Update the avatar URL in the new V0-N
- Wipe cache in the new V0-N
- Re-run — clean from the start
Recovery from a cache-related disaster¶
If you've made cache changes you regret:
- Find the pre-wipe backup in
backups/ - Restore the source
.nbflowfrom that backup - The restored file has its original cache intact — work resumes from that state
The backup-before-destructive-change rhythm is what makes recovery possible.
When you're ready¶
You've finished Chapter 13. This is the end of the linear textbook — from here, the wiki is reference. Go back to specific chapters when you need them.
→ The wiki's final pages, in case you missed them: Skills for skill-specific deep dives, Glossary for term lookups.