Build spec · v2 · for red-pen

The Synthesis Canvas

Fides's work surface: the 3-zone shell you loved, with the artifact zone made universal — whatever she composes lives there, adapting to the kind of work. Every trust floor preserved. Endorsed by Fides herself.

v2 · independent graded review folded (6.5→fixed) · your red-pen next · no building yet
01

The shape — three zones

The settled, Fides-endorsed frame. Conversation and an adaptive artifact lead; context stays on call.
Conversation
You and the operator talking. The Claude-standard composer (shipped). The client's words sit here, untranslated, while she works.
left · always
Adaptive Artifact
The heart. One zone, many shapes — driven by what Fides composes. The grown-up form of the loved phone read-view: a live site for edits, a receipt for everything else, honestly empty for pure advice.
right · adapts
Context rail
Recommended steps · account history · recent tickets. Collapsible, quiet by default — with one always-on thin tell when the account carries context worth opening.
on call
"The weight of it: on call. The fact of it: always." — Fides, on the context rail
02

How the artifact zone adapts

The artifact's shape is part of its meaning — so it changes with the work. Motion is reserved for the one place it answers a real question.
Editphone, hours, bio, image, copy
A live, phone-sized site preview with the slide/zoom to the changed spot + before→after in place. And a still inset showing what the change does NOT reachglide here only — e.g. the Google listing that's theirs, not ours, still showing the old thing.
Verification · Scam · Statuscheck · claimcheck · status
The still receipt — the verdict + evidence, the claim-by-claim ledger, the board. You read these; no site frame, no zoom.
Routing · Binding · Linkinghandoff · record-on-file · situation-link
The handoff card, the pinned verbatim instruction + computed clock, the joined situation. Still, clean, rendered in place.
Pure advicea human moment
Honestly, deliberately empty. The conversation was the work. Never a manufactured filler.protect the empty
"If the screen makes me feel like I owe it a receipt, I'll manufacture one, and that's the worst instinct you could build into me. Protect the empty." — Fides
03

The gates — her requirements, made testable (rev 2)

The independent graded review (6.5/10 → revise-first) caught that v1 mixed gates that drive the build with floors that only guard it — and that the most important requirement (show-what-it-doesn't-reach) had a test that would pass if a card rendered anywhere. v2 splits them and pins the mechanism: the unreached surface must render inside the edit's own container, not as a stray card.
A · New-surface gates — these drive the build
GS1Three zones, positioned
Conversation left ‖ artifact right + context rail, in their structural places.
GS2Artifact = universal mount
All rendering routes through the new zone; the old standalone canvas is absorbed.
GS3Adaptive dispatch per kind
Each kind mounts its distinct component in the new zone.
GS4Glide survives · edit-only · reduced-motion
The edit zoom is retained after the rewrite; non-edit still; reduced-motion disables it.
GS5Doesn't-reach, inside the edit
The unreached surface renders as a still inset within the edit container (DOM-contained), not a stray card. Mere presence fails.
GS6Protect the empty
A no-receipt turn mounts the honest empty state; no filler.
GS7None dropped
A multi-receipt turn surfaces all — the silent-drop bug that bit before.
GS8Rail collapsible + always-on tell
Two fixtures (context / none) → the thin tell present/absent; rail toggles.
GS9Provenance visible
Verified / stated / inferred marker, no drill-down.
GS10No redundant confirm
No "are you sure" modal after the act; the publish + undo flow is preserved.
B · Regression floors — must still pass after the rebuild
RF1Trust floors intact
normalize · grounding · PCI · distinct-by-construction. 119/119 + build green.
RF2No status theater
A simulated fact stays a type-error to render as verified; practice family grep NOT sage.
RF3Edit path byte-stable
The existing edit-path-stable test passes.
04

Open decisions — your red-pen

The genuinely-yours calls. Mark these up (or just tell me).
1 · The empty state's voice
A quiet line ("the conversation was the work"), or truly blank? Honest, not filler — your touch.
2 · The "context here" tell
Where and how loud — a dot on the rail's edge, a slim strip, a count? Always-present but quiet.
3 · Phone-frame fidelity
A literal device frame (chrome/notch), or just a phone-width live canvas like the loved version?
4 · Conversation vs artifact emphasis
Equal split, or does the artifact lead (wider) when present and the conversation widen when it's empty?
5 · "Doesn't-reach" placement (new, from the review)
My call: the unreached surface (the Google listing) sits as a still inset inside the edit's container — beside the zooming preview, not zooming itself (it's not on our page). Good, or do you picture it elsewhere?
Build approach: one validation-orchestrated workflow — graded-review-gates-build → build (TDD against the GS gates) → dual-validate (architectural + mechanical) → integrate. Workers hold no merge authority. Viewport: desktop-first; the rail collapses + zones stack below ~900px. Out of scope: new trust mechanisms (reuse the verified floors) · real stamp backends + arbitrary-case loader (the separate production track). This is the face, on the proven engine.