Successive edits accumulate drift until the result no longer matches the original goal
Aliases: edit-chain drift · goal walk-off · semantic drift across edits
What it is
Version one is a factual product note. The user says “sharper,” “more spoken,” “a hookier opening,” eight times. By version nine the sharpness is there and the three parameters that had to stay have been swapped for louder, less accurate claims. Each round looks like a small edit; together they are iterative generation drift: the endpoint no longer sits inside the starting goal.
Drift is not a wrong span in one round, and not an unmentioned sentence moving in one round. It is the integral of legal small steps on the objective: locally each step looks like improvement, globally the assignment has changed.
Why it happens
Each turn’s conditional is the current text, not the original goal. The current text already holds last turn’s rhetorical choices, omissions, and substitutions. The next turn samples again from that already-twisted text, and bias stacks in the same direction. Attention follows the latest diff; almost no one compares version nine with version one in full, so drift feels like “getting better” while objectively walking off spec.
There is also goal substitution: the immediate instruction (“more gripping”) overwrites constraints that are still in force but were not repeated this turn (the three parameters must stay). The system treats unmentioned constraints as withdrawn. If constraints do not exist as a stable object, after enough turns only the latest cosmetic ask remains.
Studying it
Give an initial draft with hard constraints (figures that must remain, claims that must not appear, a reader that must be covered). Allow up to k turns of free cosmetic edits, no looking back at the first draft. Score the endpoint with a constraint checker and semantic distance to the first draft. Independent variables: whether hard constraints are an invisible condition every turn, whether the UI pins a first-draft comparison, number of turns. Dependent variables: hard-constraint survival, a goal-fit curve against turn count, whether users judge the endpoint as better.
A common crossover: user ratings rise while constraint survival falls. “Better” is measuring rhetoric, not the goal. Report both curves.
Where it stops holding
When there are no hard constraints and the goal is to explore style, drift is the exploration; it is not a fault. Two or three turns with a professional user who restates every constraint can keep drift low. If hard constraints live in an external system (database fields, template slots) rather than in the prose, drift rewrites the shell and the slots remain; harm is smaller. Harm concentrates in flows where the constraint exists only in the first natural-language sentence and never appears again.
Applying it
- Turn hard constraints recognised in round one (figures, forbidden claims, required coverage) into a pin-able list that every later generation carries by default. Do not rely on the user restating them each sentence.
- Offer “compare to first draft,” not only to the previous version. The left side of the diff should be able to select version one.
- Past a turn threshold, ask before send whether those original items still apply. Do not silently treat the work as a new assignment.
- Check: take ten first drafts with three hard constraints, have people do at least six cosmetic turns. Script-check the three constraints at the endpoint. Any loss is a drift incident. Also ask “better than version one?” — high better-rate plus high constraint-loss means the UI is rewarding walk-off.
Related
- Same group: L2.12.1 A local edit has to locate the part the user meant; failed reference is the main break · L2.12.2 Changes in parts that were not mentioned destroy trust in the edit function · L2.12.4 Any historical version must be restorable; undo-last-step cannot carry iteration · L2.12.5 The cost gap between local and full regeneration should be visible to the user
- Nearby: L2.05 Iterative Revision · L2.14 Carrying and Clearing Context · L1.01 Mismatch Between Stochastic Output and Deterministic UI
- Search terms:
iterative generation drift·goal drift·constraint decay over turns
Cards in the same group
- L2.12.1A local edit has to locate the part the user meant; failed reference is the main break
- L2.12.2Changes in parts that were not mentioned destroy trust in the edit function
- L2.12.4Any historical version must be restorable; undo-last-step cannot carry iteration
- L2.12.5The cost gap between local and full regeneration should be visible to the user