DUNIN7 · LOOMWORKS · RECORD
record.dunin7.com
Status Current
Path current-status/current-status-manifest-v0_72-amendment-v0_1.md

Current-Status Manifest v0.72 — amendment instructions — v0.1

Document: current-status-manifest-v0_72-amendment-v0_1 Version: v0.1 Date: 2026-06-28 Recipe: Apply these splices to current-status-manifest-v0_71.md and save the result as current-status-manifest-v0_72.md (add-new-file sibling — never git mv; v0.71 stays a standing sibling, byte-for-byte untouched). Update header/footer/version to v0.72 throughout.

What v0.72 records: doors 2 and 3 of the create stage SHIPPED (door 1 was already in v0.71), completing the three-door create stage. Door 2 ("I'll tell you") needed a thin engine turn-writer seam; door 3 ("here's my specification") needed a thin engine allocation seam — both small reuses over the untouched compose→commit spine, each live-verified to the WebAuthn gate. The CR scopes were corrected during the builds (door 2: "frontend-only" → needed the seam; door 3: "heaviest door" → the smallest). The browser passkey-commit remains the one pending real-world step across all three doors.


Splice 1 — Header (version)

Replace the H1:


# Loomworks Current-Status Manifest — v0.71

with:


# Loomworks Current-Status Manifest — v0.72

And the version line Version: 0.71Version: 0.72 (date stays 2026-06-28).

Splice 2 — Status line (append to the v0.71 Status paragraph)

The Status block's v0.71 sentence ends "...See Entry 117 and the §5/§2 updates." Append immediately after it, before the Correction (2026-06-19): line:

> v0.72 (later same session): the create stage is COMPLETE — all three doors shipped. Doors 2 and 3 joined door 1, each a thin engine seam over the untouched compose→commit spine plus its OL surface. Door 2 ("I'll tell you") — five foundation questions (incl. the voice) → a turn-writer seam (POST /me/engagements/seed-creation-conversation, batch-records the answers as creation-mode turns via the existing record_turn, no LLM, no commit) → the conversation opens populated → refine → commit through the existing terminal. Engine 5578a05 → 37a3be5; OL 132296f → 807ef8e (both --no-ff). Door 3 ("here's my specification") — upload a document → the existing /seed/extract pulls the five commitments (no commit) → review-and-adjust (one net-new editable field) → amend → commit via the existing /instantiate. Needed only a thin allocation seam (POST /me/engagements/draft-candidate, exposing the existing _allocate_candidate_engagement — a seedless candidate + operator membership). Engine 37a3be5 → 0b2c232; OL 807ef8e → b107290 (both --no-ff). Both live-verified to the WebAuthn gate (door 2: the seed carried all five incl. the voice; door 3: an adjusted voice value survived to commit — "ADJUSTED persisted: True"). Both CR scopes were corrected in-build (door 2 "frontend-only" → needed the seam; door 3 "heaviest door" → the smallest), recorded not smoothed. The create stage is three text inputs to one spine, complete. The browser passkey-commit remains the one pending step across all three doors (the passkey tap is the Operator's, unreachable headlessly). See Entry 118.

Splice 3 — New Entry 118 (after Entry 117, before §4)

Entry 117 ends with "...both depend on door 1's now-shipped opening." then ---. Insert after that --- and before ### 4.A Carryover from v0.41:


### Entry 118 — Create stage COMPLETE: doors 2 and 3 shipped (new v0.72; 2026-06-28, same session as 115–117, later)

The create stage is complete — all three doors shipped, three text inputs to the one compose→commit spine, the spine itself untouched (the converged-spine discipline from Entry 117 held through both builds). Door 1 (Entry 117) shipped earlier this session; doors 2 and 3 follow here.

**Door 2 — "I'll tell you" (shipped).** For the articulable Operator who hasn't written it down: five foundation questions (incl. the voice the marketing generator omits), composed into the create conversation's opening state, then refine and commit. **Step 0 corrected the CR's "frontend-only" lean** (recorded, not smoothed): the commit terminal composes the seed from *persisted DB turns* (`get_recent_turns` → the creation-mode block), so client-side-only synthesized answers would render a populated opening but the commit would read an empty block and fail — the exists-vs-works trap, caught at the read level. The fix: a thin **turn-writer seam** `POST /me/engagements/seed-creation-conversation` that batch-records the answered questions as creation-mode `conversation_turns` via the *existing* `record_turn` (pure INSERT, no LLM, no commit) — a turn-writer, not a second spine; the compose→commit spine is untouched. ChatView fetches the just-seeded block to display (single source of truth — the display reads the same DB the commit reads, closing the drift trap). **Live-verified** (real engine + real Anthropic): seam → 11 turns recorded; the conversation opened populated with the faithful five Q&A from the DB (not the generic greeting, no immediate commit); commit read the seeded block, drafted a convergent seed (E0079) carrying all five commitments incl. the voice ("Plain, unsentimental, and factual — no marketing gloss, no hype"), to the WebAuthn gate. Engine `feat-create-stage-door-2` `f1b0d85` → `main` `37a3be5` (`--no-ff`); OL `97bcc9e` → `main` `807ef8e` (`--no-ff`); engine suite 3049, OL 458, zero new lint debt. CR `cr-create-stage-door-2-v0_1` (v0.1 scope corrected in-build).

**Door 3 — "here's my specification" (shipped).** For the already-documented Operator (PRD/brief/SOW): upload the document, the existing extraction pulls the five commitments, review-and-adjust the mapping (not a conversation — finished work gets reviewed), then commit. **Step 0 confirmed door 3 is the *smallest* door** (correcting the CR's "heaviest" framing, recorded not smoothed): the document→commitments→commit path already exists end to end — upload (`POST /engagements/{id}/uploads`), extract-without-commit (`POST …/seed/extract`, returns the five commitments + drafts the candidate seed), amend (`POST …/seed`), commit (`POST …/instantiate`, the WebAuthn gate). The one real gap was **pre-engagement upload**: upload/extract are engagement-scoped, but create mode has no engagement yet, and allocating one via the public `draft_engagement` would require fabricated placeholder commitments (the orphaned-initial-Seed anti-pattern the engine explicitly designed around, and a truthfulness violation). The fix: a thin **allocation seam** `POST /me/engagements/draft-candidate` exposing the *existing* internal `_allocate_candidate_engagement` (seedless candidate + operator membership) — pure reuse, no new extract/create capability. The one net-new UI piece: an editable-field component (adjust an extracted value before confirming), over the reused SeedViewer display + held-card confirm. **Live-verified**: draft-candidate → candidate; upload spec → file_id; `/seed/extract` → the five commitments (gap_fields empty, no commit); adjust the voice → amend → the seed carried the *adjusted* voice ("Terse and clinical — data only…"), NOT the extracted original ("ADJUSTED persisted: True" — the exists-vs-works proof that the commit reads the reviewed mapping); instantiate → the WebAuthn gate. Engine `feat-create-stage-door-3` `3e80e29` → `main` `0b2c232` (`--no-ff`); OL `dcc32cd` → `main` `b107290` (`--no-ff`); engine suite 3050, OL 461, lint unchanged. CR `cr-create-stage-door-3-v0_1` (v0.1 "heaviest door" framing corrected in-build). Two build-time branches not exercised live (the spec was complete): re-induct-after-amend (not needed for the convergent case — instantiate went straight to the gate; an amend that introduced a gap would re-induct or instantiate-divergent) and the gaps→conversation handoff (handled structurally via per-field gap markers + a done-state note that uncovered items fill in the door-1 conversation).

**The pattern across all three doors.** Each needed only a thin engine seam — greeting (door 1 cold-open), turn-writer (door 2), allocation (door 3) — over reused spine machinery, plus its OL surface; the compose→commit spine was never rebuilt. Each Step 0 corrected its CR's scope before code (door 1: speak-first isn't built for empty openers; door 2: not frontend-only; door 3: the smallest not the heaviest). Each was live-verified to the WebAuthn gate against the real engine + real Anthropic, distinguishing render/exists from commit/works. **The one remaining real-world step across all three is the browser passkey-commit** (the WebAuthn presence ceremony — the passkey tap is the Operator's, unreachable headlessly; pre-existing, unchanged by any door). The create stage that began with "the create page doesn't invite activity" is complete: three ways in (talk it through / answer the questions / hand over a document), one merged resultant seed.

Splice 4 — §1 Substrate-state OL + engine lines

In the §1 "Frontend state — Operator Layer" block, after the v0.71 update sentence ("...Prior SHAs preserved as trajectory. (See header status + Entry 117.)"), append:

> Updated for v0.72 (2026-06-28): the create stage completed — doors 2 and 3 shipped. OL main advanced 132296f807ef8e (door-2 surface, --no-ff) → b107290 (door-3 surface, --no-ff); engine main advanced 5578a0537a3be5 (door-2 turn-writer seam, --no-ff) → 0b2c232 (door-3 allocation seam, --no-ff); alembic unchanged (both seams reuse existing helpers, no migration). Prior SHAs preserved as trajectory. (See header status + Entry 118.)

Splice 5 — §5 (update the create-stage / door-1 references to reflect completion)

§5 has no door-specific open item to remove (door state lives in Entries 117–118). Add a new §5 item (after the methodology-note item from v0.71):


**Browser passkey-commit pending across all three create-stage doors (2026-06-28).** Doors 1–3 are shipped and live-verified to the WebAuthn step-up gate, but the final commit — the WebAuthn presence ceremony (a passkey tap) — is unreachable headlessly and remains the Operator's to perform in the browser. This is a pre-existing security control on all commits, unchanged by the create-stage work; it is the one real-world acceptance step still open on each door. Not a defect — the expected ceiling of headless verification. (The greeting render was browser-confirmed by screenshot for door 1; the door-2/3 surfaces were live-driven to the gate over HTTP.)

Splice 6 — Changelog (add v0.72 atop v0.71)

Insert above the - v0.71 changelog entry:


- **v0.72** (2026-06-28, later same session): **The engagement create stage is COMPLETE — doors 2 and 3 shipped, joining door 1.** Each door needed only a thin engine seam over the untouched compose→commit spine. **Door 2 ("I'll tell you")** — five foundation questions (incl. the voice) → a turn-writer seam (`/me/engagements/seed-creation-conversation`, batch-records the answers as creation-mode turns via the existing `record_turn`) → conversation opens populated → refine → commit. Step 0 corrected the CR's "frontend-only" lean (the commit composes from persisted DB turns, so client-only state would break at commit). Engine `5578a05 → 37a3be5`; OL `132296f → 807ef8e`. **Door 3 ("here's my specification")** — upload → existing `/seed/extract` → review-and-adjust (one net-new editable field) → amend → commit via `/instantiate`. Needed only a thin allocation seam (`/me/engagements/draft-candidate`, exposing the existing `_allocate_candidate_engagement`). Step 0 corrected the CR's "heaviest door" framing to the smallest. Engine `37a3be5 → 0b2c232`; OL `807ef8e → b107290` (all `--no-ff`). Both live-verified to the WebAuthn gate (door 2: seed carried all five incl. voice; door 3: an adjusted value survived to commit — "ADJUSTED persisted: True"). Adds §3 Entry 118 (create stage complete; corrections recorded not smoothed); §1 Substrate OL/engine SHA bumps; §5 the browser-passkey-commit-pending item. The browser passkey-commit remains the one pending real-world step across all three doors. Otherwise carries v0.71 forward.

Splice 7 — Footer

Replace:


*Loomworks Current-Status Manifest — v0.71 — 2026-06-28*

with:


*Loomworks Current-Status Manifest — v0.72 — 2026-06-28*

Verification checklist (for CC after applying)


DUNIN7 — Done In Seven LLC — Miami, Florida Current-Status Manifest v0.72 — amendment instructions — v0.1 — 2026-06-28 Splice-list against v0.71: doors 2 ("I'll tell you" — turn-writer seam) and 3 ("here's my specification" — allocation seam) SHIPPED, completing the three-door create stage. Each a thin engine seam over the untouched compose→commit spine; each Step 0 corrected its CR scope in-build (door 2 not-frontend-only; door 3 smallest-not-heaviest), recorded not smoothed; each live-verified to the WebAuthn gate (door 3's adjusted-value-survives-commit the exists-vs-works proof). Engine main 5578a05 → 37a3be5 → 0b2c232; OL main 132296f → 807ef8e → b107290. The browser passkey-commit remains the one pending real-world step across all three doors. Add-new-file sibling; v0.71 untouched.