H1.19 · H1.20Console partsStable · Rev 60 · 21 Oct 2026
Two console parts, on the system.

For Nathanael and his coding agent. Production asks clarifying questions before deep research and streams research updates while it works; the console prototype drew neither. Both are now in components.css. Each specimen below is the markup to build, so read this page’s source. The rules are in AGENTS.md, the console’s behaviour in CONSOLE.md (section 8, H1.19 to H1.21), and the CSS wins over both.

What was wrong

The accent was on nine things in two views, where a view gets three or four, and only on things you act on. Corners were rounded past 4px. The serif was set on every line, where a card gets one serif line.

What changed

Face and edge for the card, 4px corners from --r-*. One serif line, the question. The options sit in a tray. The updates are written in ink, folded under one mono line. The only accent left is the tint button that moves you on.

What it costs

CSS and markup only: the data and the behaviour production already has. One wording change: the duplicate “Something else (please specify)” option is dropped, since “Write my own answer” does the same job.

H1.19Clarifying questionsStable · .clarify
Ask before the research, quietly.

Built the way the session reflection is built: a raised object in the thread (face, edge, 4px). The count is a neutral mono eyebrow, because it names a place, not a state. Where you are is the 2px ink line and the steps to come are hairlines. The question is the one serif line. The options are a choice among options, so they sit in a tray, and the chosen one rises out of it as a face tile with an ink dot. Next is the tint; Skip and Back are quiet.

Try itLivechoose, Next, Write my own answer, Start research. The research updates follow.
You · 10:48 AM
How should we think about reintegration for women accused of witchcraft in the camps of northern Ghana?
Peace Intel · 10:48 AM

The library has eleven papers on accusation violence and two on Ghana’s camps directly, and none of EIRENE’s indicators are tagged to this construct yet. Two questions will point the research.

Question 1 of 2

What is the main lens for this?

Answer what you like, or skip and Peace Intel will make reasonable assumptions.

One question, an option chosenThe chosen option is a face tile on the tray’s recess. A lead term in bold, then its gloss, where production wrote “Lead term — gloss”. Next carries the pixel arrow; the class draws it.
Question 2 of 2

Who is this for?

Choose any.

The last question, choose any, written inSeveral answers are checkboxes, with 4px corners where a radio is round. Write my own answer opens a field under the tray. Back is a quiet .act in the head. On the last question Next reads Start research.
You · 10:49 AM
Lens: Policy and advocacy
For: A funder deciding whether to back a programme; our board, before the March review
AnsweredThe card leaves the thread and the answers go in as your own message, one line per question. Nothing new to style: it is .msg.user.

Questions skipped. Peace Intel will make reasonable assumptions and say what they were.

SkippedOne line in ink where the card was, as the reflection’s thanks is. The answer then states its assumptions in its first paragraph.
H1.20Research updatesStable · .ru
Say what it is doing, where the answer will land.

Production boxed each update in the warm tone with an orange rule, under a toggle with an orange edge: four accents and three warm surfaces in one answer, where warm has three uses and this is none of them. The updates are the console’s working state (Pl. 13), so they are written in ink. While the research runs, the newest update is the pending answer’s own text and the earlier ones fold above it under one faint mono line, the twin of 25 tools used. When the answer lands, all of them fold into that line at the head of the answer.

Peace Intel · 10:51 AM
2 earlier updates
  1. Update 1

    Searching the library and recent peacebuilding studies for validated survey items on support for political violence, particularly ones tested across partisan groups.

  2. Update 2

    Working through several academic papers to pull out the survey questions and wording that have shown movement in evaluations.

Pulling together the question wording from recent studies on support for political violence across partisan groups…

WorkingThe newest update is the answer’s text until the answer replaces it, with an ellipsis. The line above counts the earlier ones and folds them. No box, no warm, no rule, no spinner.
Peace Intel · 10:53 AM
3 research updates
  1. Update 1

    Searching the library and recent peacebuilding studies for validated survey items on support for political violence, particularly ones tested across partisan groups.

  2. Update 2

    Working through several academic papers to pull out the survey questions and wording that have shown movement in evaluations.

  3. Update 3

    Pulling together the question wording from recent studies on support for political violence across partisan groups.

Three validated items to start from

The most tested measures ask about support for violence in the abstract and then about specific acts…

Done, openedWhen the answer lands, every update folds into the line at its head (closed by default; opened here). Open, the updates are rows on hairlines, like the sources: a mono count, then the sentence at --t-sm.
H1.21The input field’s active stateProduction does not match
The field you type in lifts. It does not light up.

The active state of production’s input field does not match the design that was handed off. Build it from the CSS, not from what production draws now.

The composer

No shadow at rest. While you type in it, its edge darkens to --ink-35 and it lifts to --elev-3 (.composer:focus-within). The textarea inside draws nothing of its own: no ring, no border, no padding, no shadow. The composer is the box.

Every other field

Focused, a text field’s edge darkens to --ink-35 and it takes --elev-1, with no outline (.input:focus). That covers the “Write my own answer” field above, the reflection’s field and the dialogs.

Never

An accent ring or an accent edge on a field. The accent’s focus ring (:focus-visible) is for buttons and other controls reached by keyboard, not for a field you are typing in.

To check against

Click into the composer in console.html, and compare with media/snapshots/console/desk-chat.jpg.