Pattern 02 · An app that adapts · Interaction pattern
Pre-filled form with review
Practice view. What to build, the words on screen and how to measure it. Switch to Research for why it should work, the framework properties and the references.Research view. The research side is shown below the card: why it should work, the properties it targets and the references. Switch to Practice to hide it.
The AI fills in all fields from the source text and the user reviews, edits and submits.
Done right, done wrong
Schematic screens, not real products. Click a screen to enlarge it.The receipt
A receipt is the result of one test, printed on the card: the case, what was compared, how many people took part, the main result, the methods, and what we do not know. The plan written before the analysis is the study card. How a pattern earns its label.
In practice
Pre-filling is the default in most AI form tools because it looks fast. The VAIA pilot shows the cost. When every field arrived filled, participants read the text, corrected small things and moved on. They viewed fewer alternatives and more often kept the first suggestion, even when a better one was one click away. One said they simply continued with what was there. Use pre-filling where the system can verify the value against a source, and mark each filled field so people know where to look.
Words on screen
Obligations to keep in mind (AI Act, GDPR)
- Mark every AI-filled field as AI-filled, so users know what to check. (O1, IUI 2026, Table 1)
- Do not pre-fill judgement content: defaults anchor people and reduce alternatives considered. (O4, IUI 2026, Table 1, VAIA pilot)
Design considerations, not legal advice or a conformity assessment. What O1 to O5 mean.
Build it
Illustrative signatures, not a published library: the names below are suggestions to adapt to your stack. Thresholds are examples to tune on your own data.
States: extracting, filled, reviewing, edited, cleared, failed
Component: <PrefilledForm fields={fields} source={text} onReview={fn} onClear={fn} />
Prompt snippet: Extract the value of each factual field from the source text. Return null when the source does not contain it. Never invent a value.
Output schema: { "fields": [{ "id": "string", "value": "string | null", "evidence": "string" }] }
Measure it
Same idea, other names
Applied by: nobody yet · Replicated by: nobody yet · Used this pattern? Tell us and get listed
Research side · why it should work · framework v0.2
Why it should work
Properties targeted
Notes
Why it should work for facts and fail for judgement: a factual field has one right value, so anchoring costs nothing and verification is the right stance. A judgement field has many acceptable values, and the anchor removes the search for them. The VAIA pilot shows the second half of that sentence with six people; the first half is the hypothesis for a factual-field study.
Relations
- Efficiency rises for verifiable fields; reliance rises for all fields, which is the risk for judgement content.
- Marking AI-filled fields should direct attention in review; whether it lowers cognitive load is not yet measured.
Across contexts
| Context | Users | State | Result |
|---|---|---|---|
| VAIA course forms | course providers | Tested (pilot) | 2 of 6 preferred; 6.5 vs 11 alternatives viewed |
| Your context | Bring your case |
References
- Tversky and Kahneman 1974, Judgment under uncertainty: heuristics and biases (anchoring).
- Parasuraman and Manzey 2010, Complacency and bias in human use of automation.
- Van den Bossche and Abdul Khalil 2026, From Pattern Libraries to Practice, IUI Companion.