Setting the Specs

Choosing is not answering. Picking an island with seating leaves four things unsaid that a cabinet maker cannot build without, and picking no island leaves none — so the questions belong to the option and they do not exist until one is chosen.

1 · What is open, and what already answered part of it
Reached from the kitchen. The three lines under the title are answers from the space conversation, and they are the reason this decision has a shape before anybody opens it.
Where the three lines come from

They are answers rows at grain intent and dimension, written by 07-one-question-at-a-time.html against the kitchen zone, and they reach this screen through decision_evidence with relation='opened'. The aisle is the one 07 frame B draws by name.

Why the answers are on the decision at all

Because a decision that cannot show its own inputs asks the homeowner to remember them. Six feet and under four feet were measured by hand and _ds/FICTION.md pins both, so neither may appear without its noun: the length is named as length before the width is asked for.

2 · Four ways, and what each one closes
Each option says what it locks rather than what it costs. The money is a range on any of them; the locking is the part that stops being free.
Kitchen · nothing chosen

What kitchen island configuration will you include?

Delaying this past design lock keeps your architect from ordering, and a prep sink or a cooktop wants drains and gas under the floor. After the slab pours, you are cutting concrete.
Pick one

No island

Locks the kitchen layout. Nothing further to specify.

Basic island, prep only

Locks island size and location, and the electrical for its outlets.

Island with seating

Locks overhang depth and counter height. Four things to specify.

Full-featured, sink or cooktop

Locks plumbing rough-in, the ventilation path and the electrical circuits.

Settle island with seating Send all four to Nora first
The lines under the names are authored

Every one is the option's locks array, which is content rather than copy written here: Overhang depth and Counter height (36" or 42") are the two rows island_with_seating carries. no_island locks the kitchen layout and holds no specification_fields at all, which is why frame 3 has nothing to draw for it.

No recommendation, and no score

The library holds impact_assessments for each option — seating scores resale_value +1, warmth_character +1, budget_control -1 — and none of it is drawn as a rank. Same refusal as 18: make the differences impossible to miss and then get out of the way.

3 · Settled, and now there are four questions
The frame this page exists for. Choosing opened the specification, and the four questions are the chosen option's, not the decision's.
Settled is not finished, and the screen says so

The decision is settled the moment the option is chosen — a resolutions row, which is the only source for settledness. The four unanswered specs do not hold it open, and the ghost action says as much in words. A product that made the island go back to open because nobody had typed an overhang yet would be lying about what was decided.

Nothing here counts

No 0 of 4, no bar. 07's rule holds wherever these questions are drawn: answering one can add another, so a denominator is a claim the flow cannot make. Four rows, and the reader can see there are four.

4 · One spec, with the reason under it
The same shape as 07, because it is the same object: a field, a renderer and an authored sentence saying why it is being asked.
Island with seating · two answered so far

Counter height

Counter height seating uses standard chairs and lines up with your prep surface. Bar height hides the mess from the living room and needs taller stools.

36", counter height

Level with the run behind it, and your chairs are ordinary chairs.

42", bar height

Hides the prep from the great room, and the stools get taller.

Two tiers

Both, with a step in the slab. A second fabrication charge.

Save and go to the overhang Leave this one for now
The sentence is authored, not written here

It is counter_height's help_text, verbatim. Three choices, keyed value_36_counter_height, value_42_bar_height and two_tier. 07's finding is the whole reason a spec looks like this: the help text is the product, which is why library_questions.help_text is NOT NULL.

Saving writes one row

An answers row, field_key='counter_height', grain='sku', source='stated', via='stepper', keyed to this decision. The same table the aisle answer is in. There is no separate specifications table and there should not be one — a spec that lives somewhere else is a spec the room cannot show.

5 · The dimensions, already filled in
Nobody types a measurement they already gave you. Both numbers arrive ticked from the tape measure in April, each alternative says what it does to the aisle, and the exact-figures escape sits under the primary.
Island with seating · three answered so far

Island dimensions

Island size is really a question about the aisles around it, and both code and comfort want clear space on every side people walk. That clearance comes out of the room, not the island.
How long

You measured six feet of counter in daily use on 2 April.

6 ft 0 in

What you measured. Three seats along the long side.

5 ft 6 in

Six inches back to the walkway. Still three seats, tighter.

7 ft 0 in

A foot more counter, and it takes that foot out of the aisle.

How deep

You said under four feet to reach across, on 2 April.

3 ft 0 in

Reaches easily. No room for a seated overhang on the far side.

3 ft 10 in

What you measured, and it carries the fifteen-inch overhang.

4 ft 0 in

Past what you said you could reach across.

You asked for a forty-eight inch aisle, room for two. Every inch this island gains comes off that, and the plan is what says whether it still fits.

Save these two Type exact measurements instead
Why it is not a text box

An earlier draft of this frame was one field reading 6'-0" x 3'-10", which asks somebody to type a measurement they had already given and formats it for the machine while they do it. Two choosers, each already ticked, is the same data with the work taken off the reader. Nothing here is a new component: it is pick_row, the shape 07 uses for every question where each answer costs something different.

The default is not silent

Both ticks are carried from the tape measure in April and both card heads say so by name and date. A default with no provenance is the product putting a number in somebody's mouth, and G4 — no figure on a screen without its source — applies to a measurement exactly as it applies to a price. The tick can be moved; nothing is saved until the primary.

What this frame asks for, and it is the whole reason it can be drawn

The field is authored input_key: "text", so 6'-0" x 3'-10" is a string and nothing parses it. Give it the schema's dimensions renderer and it becomes two numbers and a unit, which is what lets the options be generated around what somebody measured and lets every line on the next frame be a DIFFERENCE from it. What it does not buy is a clearance: the forty-eight inches is an aisle the homeowner ASKED FOR on 07, not a room measurement, and nothing in the binder holds the distance from the island to the run behind it. So this frame states the aisle and says the plan settles it. An earlier draft of this callout said six by three ten leaves forty-eight inches on both sides, which the product cannot know.

6 · A size that is not on the list
The escape under frame 5, opened. Feet and inches, no formatting to get right, and every line under the fields is a difference from what they measured rather than a verdict on it.
Island with seating · dimensions

Your own size

Feet and inches. I will tell you what each one is doing against what you measured, and I will save whatever you put in.
Length
6 ft 4 in
Four inches longer than the six feet you measured. Those four inches come out of the aisle unless the run behind it moves.
Depth
3 ft 6 in
Four inches shallower than you measured, and still enough to carry the fifteen-inch overhang.

You asked for a forty-eight inch aisle. This is four inches longer than the island you measured against it, so somebody with the plan has to say it still fits.

Save 6 ft 4 in by 3 ft 6 in Ask Dave before I save it
It never refuses the number

There is no minimum, no red border and no disabled primary. The product does not hold the plan, so it cannot know that six foot four is wrong, and a validation error that fires on a guess teaches the reader to stop believing the ones that matter. What it does instead is say the difference out loud and name who can settle it, which is the same refusal 43 frame 2 makes when it declines to call an option a mistake.

The custom size joins the list

Saving here writes the same answers row the chooser writes, and going back to frame 5 finds a fourth row — 6 ft 4 in, yours — ticked, above the three common ones. A custom value that does not appear in the list it escaped from is a value the reader has to remember they set.

Feet and inches, and no free text

Each figure is a field in its select posture, so the units are the screen's problem rather than the reader's: there is no way to type 6'4", 76 in or 6.33 ft and no parser guessing which was meant. That is the second thing the dimensions renderer buys, and the reason the escape is still not a text box.

7 · What you saved is not on the list any more
The overhang sizes were re-authored after this house answered. The recorded fifteen inches is still the answer, said plainly, with what the question offers today underneath it and nothing rewritten.
Island with seating · overhang depth

Fifteen inches is still your answer

The sizes this question offers were re-authored since you answered. Yours is not one of them, and it has not been touched.
What you saved

Answered 2 April, when you set the depth.

Overhang depth
15 in
The three foot ten depth you chose on 2 April carries it, which is why that number and this one were settled together.
What this question offers now

Three depths, none of them fifteen inches.

10 in

Perching depth. Knees stay outside the counter.

12 in

Three inches less than yours, and the stools tuck further under.

18 in

Three inches more than yours, and it needs a bracket under the slab.

Nothing here needs doing. Fifteen inches is what goes on the spec sheet and what Dave was sent. Tick one of these only if you have changed your mind about the overhang.

Type a different depth instead
Nothing is ticked, and that is the frame

The obvious draft pre-selects the nearest offer — twelve inches, three away — and asks the reader to confirm. That is the product changing somebody’s answer and calling it a confirmation. D9 says a content edit never invalidates a stored answer, so the stored row stays exactly as it was written and the three offers arrive unticked. There is no primary on this screen because there is nothing to save.

It does not say the answer is wrong

No red, no warning triangle, no “no longer valid”. The list changed; the island did not. 43 frame 2 makes the same refusal when it declines to call an option a mistake, and frame 6 makes it one screen earlier when it declines to refuse a number. A screen that calls a recorded measurement invalid is the product holding an opinion it has no standing to hold.

Why the reader is on this screen at all

Because they opened the field, not because anything summoned them. There is no badge on the spec sheet and no digest line: an answer that is still the answer is not an outstanding item, and putting it in a to-do list is how a reader learns to clear things that did not need clearing. Frame 8 draws Overhang — 15" with no mark on it whatsoever, and frames 5 and 6 go on measuring depth against the fifteen inches, because nothing about the island moved.

Why the overhang and not the size

Because a size is the one field on this page where a stored value NOT in the list is ordinary rather than exceptional: frame 6’s escape writes one deliberately, and its own annotation says the custom row joins the list above the three common ones. Drawing this frame on the length would show a value the deck has already said is offered. The overhang has no escape and no custom row — it is a closed list somebody re-authored, which is the only way a stored answer falls out of one.

What draws it

The stored answers row matches none of the question’s current choices. Both halves come from the same read: the row’s value and created_at for the top card, the question’s choices for the bottom one. Nothing compares them to produce a verdict — the two are drawn side by side and the reader is the one who decides whether anything has changed.

8 · The spec sheet, and who it goes to
45’s shape: label, value, and where the value came from. The provenance column is the page — a line that cannot say where it came from is a line somebody has to ring about.
The third chip is the gap

Dave holds a builder seat and Marcus is a contact on one. There is no architect seat: seats.role is owner, builder or viewer, and responsible_trade_key: "architect" on this decision is a label on library content rather than a person anybody can send to. What the chip should resolve to is a spec link, and today links_subject will not carry one for a decision — type='spec' is keyed to a zone_id, so the smallest thing that can be sent is the whole kitchen.

Why the sheet is not a quote

Nothing here carries a price. The island's money is on its options and its change orders, and a specification that also priced itself would be two documents that can disagree. 17 owns the price and its provenance; this owns what gets built.

9 · A year later, in the record
The reason for writing any of it down. The specs, the things that fed them, and the one line that went in different.
Three tables, and they are all built

The facts are answers. The moved line is a substitutions row, which keeps chosen_value and installed_value apart and holds the reason verbatim, with the acknowledgment as its own column because fine by me is a fact about the homeowner rather than about Marcus. The two saved things are memories with zone_id on the kitchen.

What is missing from this frame

Nothing joins the note to the field it fed. memories.decision_id can point a saved thing at this decision, and there is no column pointing one at dimensions. That is a smaller ask than it looks and it is not made here; 44 owns the board and would own the join.

What this page decides, and what it asks for