L2.04.8widget range as capability displaydesignresearch

A control’s value range is itself a display of the capability boundary

Aliases: control range affordance · endpoint as service level · legal set on a scale

What it is

The length slider stops at 50–400 words. The format enum is only paragraph / bullets / table. Tone has three bands and ends at “formal,” with no “affidavit.” Before anyone speaks, the extension of the quantities the system will admit is already visible. Widget range as capability display means a parameter control’s legal set is not only an adjustment tool. It is a more honest capability spec than an empty box — what is listed can be promised; what is unlisted should not be guessed as possible.

Open input failing to cue range is the empty channel’s miss. This is the dual success on the control side: range is cut into the ticks. It does not own who overrides whom. It owns the fact that “how far you can turn it” is already speech.

Why it happens

A legal set is the hardest affordance. A knob that will not turn past the stop is less deniable than copy that says “we are good at short text.” People build mental models from endpoints: a max of 400 words means long reports do not live here; no “contract” format means legal-document structure should not be expected. Endpoints also train requests in reverse: users crop goals into range rather than hitting a wall.

A lying range is worse than no range. A slider drawn to 2000 while the model collapses at 600; an enum that includes “code” while the product only polishes comments. Range is read as a service level. A fake endpoint is a failure of being promised and then taken back.

Studying it

First use, controls only (endpoints and enums), no capability copy. People draw “it can / cannot,” then compare to real capability and the real adjustable range. Independent variables: whether endpoints equal true reach, whether units are labeled, whether out-of-range values can be typed, whether typing clamps or errors. Dependent variables: accuracy of boundary estimates, rate of out-of-range intents, noticing of clamp.

Add a “lying range” condition: on-screen endpoints larger than true reach. After the miss, see whether attribution lands on “I can’t use it” or “it wrote a fake range.” The lying condition is the falsifier — if nobody cares about endpoints, the range is not displaying.

Where it stops holding

Decorative controls (pretty, not entering generation) pollute the display: people think they adjusted, generation did not read. Dynamic ranges that stretch with account quota, unmarked with the currently valid endpoint, display someone else’s capability. The language channel can still propose out-of-range intents; the control display cannot stop that sentence — clamp or refusal must agree with the range, or the two sides state two boundaries. Creative tools that deliberately open an “beyond suggested” endpoint are exploration and must be marked as suggestion, not a hard stop.

Applying it

  • Write endpoints, enum items, and units as the actually reachable set. Do not put an unachievable band on a control; one fewer band is better.
  • Out-of-range input should clamp or refuse explicitly, naming the currently valid range. Do not silently crop to the endpoint and pretend you heard.
  • When range moves with plan or tool switches, the live endpoint must move with it, and the moment of change should be announced, rather than keeping the previous plan’s ticks.
  • Check: hide all capability copy, leave the controls, ask a new user how long it can write, which structures it can emit, whether a legal-document band exists. Compare to true reach. Then type an out-of-range value on purpose: silent clamp plus an artifact whose length does not match what was typed is a lying range. Put “endpoint = true reach” in control acceptance.

Related

  • Same group: L2.04.1 Natural language is suited to expressing intent · L2.04.2 Parameter controls are suited to precise adjustment · L2.04.3 Having both beats choosing one · L2.04.4 Natural language is strong at goals and constraints; parameter controls are strong at degree and numeric values · L2.04.5 Parameter controls provide a revertible determinate state; natural language does not · L2.04.6 When both exist, which one overrides the other must be explicit, or conflict is unpredictable · L2.04.7 Filling parsed language back into controls lets users see what the system understood
  • Nearby: L1.02 Expressing Capability Boundaries · L2.01 Openness of Natural-Language Commands and Its Cost · L2.02 Discoverability of What Can Be Said
  • Search terms: widget range as capability display · legal set affordance · endpoint as service level

Cards in the same group

Quick Actions

Share

Share this page

ios_share

https://hci.top/en/handbook/L2.04.8