Discussion lens · quotes that work like every other quote

The shipped lens (eight sessions, strip navigator) with the Quotes lens's own card in place of its read-only one. Try it: hover a card for star and hide, click + to tag, click the words to edit, click a timecode or a speaker badge, accept or deny a dashed proposal, and use j k s h t r x ⇧J/⇧K Enter Esc [. Star or hide a quote in All, then open its session: it is one store.

Artefact — the product's pixels and words Commentary and controls — not the product
1 · A hidden quote is counted…
2 · The guide's counts and shading…
3 · AutoCode proposals on cards
4 · The moderator's question rows
5 · Esc clears…
6 · A question with nothing to show
Appearance
Palette
Discussion · 8 sessions · 1280 × 780
Commentary

What is shipped here, and what is proposed

  • Shipped, verbatim: the theme and discussion.css; the lens's markup (session bar, strip navigator with the selected-column wash, All with lead-ins and “Not asked in”, the ask rows); and the card exactly as the SPA renders it — QuoteCard, TimecodeLink, PersonBadge with its transcript link, sentiment, tag, proposed and add badges, hide / revert / star, the TagInput and the hidden-quotes Counter. Every word in the frame is a shipped English string.
  • Proposed (one style block, each rule commented): a .dl-card wrapper per card, as Screens has, holding the lens's own marks and positioning star and hide; the Quotes lens's right-hand room on cards; and the three places the counter can go. The ask rows' two links reuse the card's own link markup.
  • Drawn approximately: editing is plain in-place editing (the product's crop brackets aren't drawn); the player and transcript are stubs that report to the frame's title bar; the wires in the gutter aren't drawn; “Your guide” doesn't switch.

Things to notice

  • Two kinds of focus at once. Click a question (or a guide row) and then j: the question stays lit while the card focus moves. Option 5 decides which one Esc clears first.
  • Hiding moves numbers. With option 2 on “follow”, hide the only answer to a question in a session: its cell in the strip empties and reads “Asked, no quotes”, the same as a question that drew nothing.
  • One store. Starring, tagging and hiding in All show in the session view and back. In the product they would also show on Quotes and Screens.
  • Badges that look alike, act differently. #3 in the session bar and a lead-in switches the lens to that session; p3 on a card opens the transcript. The bar's badges sit inside buttons, and the codes differ (session number vs participant), but you should check it reads.

The decisions — settled 19 Oct 2026 (the controls' defaults)

  • 1 · Beside its question. In All the question heading becomes the Quotes lens's group header with the counter on the right; in a session view, where a question is one block, the counter ends the block. The other two options stay switchable for comparison.
  • 2 · A hidden quote stops counting. Hiding means the researcher finds it unconvincing as evidence, and the strip is evidence, not a tally of what was said.
  • 3 · Proposals shown, as on Quotes and Screens. A global show/hide for proposals in every lens is a separate item (100days § 8).
  • 4 · Question rows link like quotes: the timecode plays, the badge opens the transcript at that turn. Never star, hide or tag.
  • 5 · Esc: selection, then card focus, then the question.
  • 6 · Nothing to show is quiet. Not asked, asked with nothing quotable, or every answer hidden: the guide row is grey, and in All the question is its heading alone, in the same grey, with the hidden-quotes link if there is one. In All a session appears under a question only when it has a quote to show, and “Not asked in” goes. No key line explains the grey: empty space reads as empty. A session's own view keeps its questions, folded forward as shipped, and drops “No quotes from this question”.

Recorded in docs/design-discussion-lens-plan.md §3. Not built.

Keys (the report's own)

j/k move · ⇧J/⇧K extend · x select · ⇧-click range · ⌘-click toggle · s star · h hide · t tag · r repeat last tag · Enter play · [ guide · Esc. With a selection, star, hide and tag act on all of it — try selecting every answer to one question in All and tagging them at once.