Presenting regeneration as “refresh” implies the previous result was just a failed load
Aliases: reload schema · regenerate vs refresh · failed-load implication
What it is
A circular arrow, Refresh, Reload: on the web that means the resource is still there, the last fetch may be stale or missing, and fetching again should yield the current truth of the same resource. Dressing regenerate as that tells people: the version you saw was a failed load, the real one is next. Regenerate-as-refresh mislabeling is a stolen label.
The previous result is often a legal sample, not a bad packet. Refresh-talk writes a legal result as an erroneous mid-state.
Why it happens
Refresh is the idiom of idempotent reads. Browsers, mail lists, dashboards taught it: after the press, content should be “more correct” or “more current,” not “a newly written piece.” Icons are harder than words — many people only see the circular arrow. When generate is drawn as refresh, people wait with a read schema: the new result should overwrite the old, and the old is not worth keeping because it was marked unfinished or dirty.
Overwrite follows. The product deletes the last version not because the user disliked it, but because a refresh schema will not let two truths sit together. If they actually preferred the last version, there is no action left that means “that was not a failed load.”
Studying it
One regenerate function, four shells: circular arrow with no words, a button that says Refresh, one that says Regenerate, one that says Write another version. Measure how people rank the previous version (completed state / failed load / optional candidate) and whether they think to copy before clicking. Independent variables: icon, verb, whether the previous version remains after the click. Dependent variables: status judgement, copy rate, choice of “which version is the real one.”
Do not assume Refresh and regenerate are synonyms across languages. Localization often translates regenerate back into Refresh and undoes a label the study just repaired.
Where it stops holding
When the source is an external truth that goes stale (prices, stock), refresh semantics are right even if a model rewrites in the middle. That is a read, not a recomposition. If a stream died mid-flight, using refresh to mean “finish this request” is close to load recovery — but it should resume the same request, not draw a new sample. For pure composition with no external truth, refresh semantics are almost always wrong. This entry does not discuss the undo stack. It discusses the lie the action tells before it is pressed.
Applying it
- Use verbs like generate again, write another version, give me a different one. Ban refresh and reload. Do not use a circular arrow; use a mark that means “a further one,” a die or a new-copy glyph.
- After the press, keep the previous version by default. If the layout can hold only one, ask before replacing, and call the previous version a result, not a failure.
- Real load failure (timeout, empty response) gets refresh; a successful sample the user dislikes gets regenerate. Do not merge the two entries.
- Check: show only the icon and ask people to dictate what the button will do. If the answer contains reload or “it didn’t load just now,” the label is lying. Then see whether the previous version is still there after the click — if not, the schema has already landed in the product’s structure.
Related
- Same group: L1.01.1 The same input can yield different outputs · L1.01.2 Interface conventions assume actions are repeatable and results are stable · L1.01.3 Users misread a lucky correct answer as stable competence · L1.01.4 Controls promise that the same action yields the same result; generation breaks that promise · L1.01.5 Retry cannot tell whether the phrasing was wrong or the system itself is fluctuating · L1.01.6 Undo and redo lose their meaning when output cannot be reproduced · L1.01.8 Presenting variability as several parallel options is more honest than hiding it behind a single result
- Nearby: L1.12 Latency and streaming experience · L3.11 Streaming the generation process · E1.06 Button labels
- Search terms:
regenerate-as-refresh·reload schema·labeling of regeneration
Cards in the same group
- L1.01.1The same input can yield different outputs
- L1.01.2Interface conventions assume actions are repeatable and results are stable
- L1.01.3Users misread a lucky correct answer as stable competence
- L1.01.4Controls promise that the same action yields the same result; generation breaks that promise
- L1.01.5Retry cannot tell the user whether the phrasing was wrong or the system itself is fluctuating
- L1.01.6Undo and redo lose their meaning when output cannot be reproduced; undo does not return the earlier result
- L1.01.8Presenting variability as several parallel options is more honest than hiding it behind a single result