One distillation, two densities. Each panel shows the same ~6 territories in the sidebar and the active one
(Try the prototype) in the content. Small mono numbers are live character counts, testing the parse budgets
(terse ≤28 · heading ≤40 · nav_terse ≤18 · intent ≤100 · scaffold.terse ≤34).
The difference is only visible where a label has room to compress/expand — Wrap-up is already short, so A = B there.
terse, shared recommendedSidebar row IS the content heading, character-identical. Content adds the intent line. Identity mapping; one string.
Sidebar nav
Content
How they reacted to the prototype — first impressions, the export flow, naming what they saw.intent · 92
Most found the export obvious5 of 7
A few wanted a preview first2 of 7
what I explored here ▸ (the terse scaffold, on demand)
nav_terse + headingUltra-terse sidebar; fuller content heading. Tightest nav, richer heading; two strings, a nav→heading mapping.
Sidebar nav
Content
How they reacted to the prototype — first impressions, the export flow, naming what they saw.intent · 92
Most found the export obvious5 of 7
A few wanted a preview first2 of 7
what I explored here ▸ (the terse scaffold, on demand)
terse = sidebar row + content heading (A). nav_terse / heading = split pair (B).
intent = content one-liner (both). scaffold.terse = disclosure sub-labels.
Signal bars = evidence density (territory level). All strings within budget → the ≤2-screen sidebar holds.
A's cost: the heading can only be as expressive as a 4-word nav label allows. B's cost: two strings the model must keep
coherent, and a nav word (“Prototype”, “Tools”) that's terser than the researcher's own phrasing — a small loss of their voice.