Staleness rules #12
Labels
No labels
bug
duplicate
enhancement
help wanted
invalid
needs-info
needs-triage
question
ready-for-agent
ready-for-human
wayfinder:grilling
wayfinder:map
wayfinder:prototype
wayfinder:research
wayfinder:task
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
crowmaki/ai-studio#12
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Part of #1
Blocked by: #11
Question
When is a Take stale? Cover a new Lock snapshot on a Reference set it used (directly or through an Atlas), a changed Board or Keyframe, a changed Performance, a changed prompt or Setup fields, and a changed shipped workflow version. Is staleness stored or computed? What does the user do with it?
From "Dailies review and circling" (#7): stale Takes can still be promoted (with a warning naming the stale inputs); the resulting final keeps the stale flag. "Same take, new seed" defaults to current inputs; stale Takes also offer "with original inputs".
From "Prompt composer phrasing" (#9): a Shot's prompt override has its own staleness. When the composed prompt differs from the override's fork base, the Shot shows only an unobtrusive "composer changed" marker; the three-way reconcile opens only on demand, and queuing does not prompt. Slot tags in an override that point at an empty or reassigned slot are a blocking error, not staleness. Takes record the exact prompt text, so "changed prompt" can be judged by text comparison.
From "Reference slot budget" (#10): a change in the set of references a Shot would send (a new or removed candidate, a changed Project order on an unedited Shot) shows the same quiet marker as "composer changed". Forced drops never block queuing; only override tags that no longer match a slot do. Dailies compares a Take's recorded slot assignment with the current one.
From ".studio schema" (#11): additional staleness triggers: a change to the Shot's effective aspect ratio (Project ratio or Shot override); a new Performance version (or the Scene's performance_off flag flipping); the current Lock snapshot no longer being the one the Take used (current = highest number). Take provenance is
take_inputrows with real FKs plus Shot/Setup text fields recorded by value or hash, so staleness can be computed by query. Changing the Project's default generation profile does NOT make Takes stale.Resolution
take_inputrows plus recorded text and hashes) compared with the Shot's current job. It is never stored as a flag. Each difference is a named Stale reason, grouped into these kinds: References, Board/Keyframes, Performance, Prompt, Framing, Workflow. The triggers listed in the question and comments are examples of this rule, not a closed list. These cases follow from the rule:Glossary: added Stale take, Stale reason and Accepted reason to CONTEXT.md.