DUNIN7 · LOOMWORKS · RECORD
record.dunin7.com
Status Current
Path current-status/dunin7-status-brief-v0_32.md

DUNIN7 — status brief — v0.32

Version. 0.32 Date. 2026-08-05 Charter. standing-notes/dunin7-standing-authorization-charter-v0_1, ratified 2026-07-30. Author. Claude Code (execution session). Operator: Marvin Percival. Supersedes. v0.31 at record (this repo, current-status/dunin7-status-brief-v0_31.md). All earlier versions stand as siblings. Changes from v0.31. CR-2026-170 (B-8 slice one) is done. The Companion can now see and describe all four rooms (reads only) — Manifestation, Shaping, and Rendering join Memory. Merged and tagged in loomworks-engine; not deployed (F-1).


1. What landed

Engine (loomworks-engine)

main at 1706248, tag companion-room-reads-v0_1 at the same commit, both pushed and origin-verified via CI (Engine test suite, run 31060101081, green in 19m2s). Previous main was bd60cec (unmoved since the B-8 Step 0 inspection recorded in v0.31).

Commits on companion-room-reads-v0_1, merged --no-ff:

| Commit | Step | |---|---| | 49e7714 | 1 — persona vocabulary, room names sayable (D-1) | | 025605c | 2-5 — Manifestation/Shaping/Rendering reads + 15 tests | | 7e1cc21 | Checkpoint A follow-up — templates nudge explicit room naming | | f16dbe3 | 6 — implementation notes | | 1706248 | merge (tagged companion-room-reads-v0_1) |

Suite: 3543 passed, 68 skipped, 0 failed.

Baseline correction, recorded not silently absorbed. The CR's own text stated the baseline was "not green — one long-standing unrelated failure." The actual Step 0 baseline was 39 failures, all one root cause: the test database was one migration behind (missing 0103_contribution_credentials, CR-2026-157, landed after this CR was drafted). Applied the pending migration — a pure CREATE TABLE, the engine's documented five-command test-setup sequence — and the true baseline was 3528 passed, 68 skipped, 0 failed, better than the CR's text anticipated.

Record (loomworks-record)

| Commit | Subject | |---|---| | this filing | status brief v0.32 |

(This session's engine-side implementation notes are filed in the engine repo per this CR's own convention and CR-2026-169's precedent: loomworks-engine/docs/phase-crs/cr-2026-170-implementation-notes-v0_1.md.)


2. CR-2026-170 — B-8 slice one, closed

Three new read-only intents, one per room the B-8 Step 0 findings (v0.31's grounding) identified as unnamed and nearly unreadable: ask_about_manifestations, ask_about_shaping, ask_about_renders. Each is a direct data-layer call bypassing the room's own HTTP-route membership check, relying on the conversation's single upstream gate — the same pattern Memory's reads already used (D-6).

D-1 — the room names become sayable. manifestation, shape, render removed from the persona's forbidden list and from ENGINE_VOCABULARY (the single source of truth two vocabulary tests check against, both updated in step with the persona edit — a genuine test-suite dependency the CR's text did not call out, found by running the suite rather than assumed clean).

D-4 made a check, not left a consequence of absent wiring. A dedicated test patches every write entrypoint across the three rooms (derive_manifestation, open_shape_confirmation_consideration, close_shape_confirmation, open_render_production, open_ad_hoc_render_production) and asserts routing any of the three new intents never calls them.

D-5 — no sources on any of the three new answers, consistent with recall_personal/show_held/find_files/request_download, which already carry none. Recorded rather than silently generalized; the sources decision itself stays open (see queue, below — carried from CR-2026-169).

D-3 — the Shaping confirm stays unreachable. No call added to shape_confirmation.py; verified both by inspection and by the D-4 test.

Live pass caught a real gap. The first three model calls (one per room) showed Manifestation and Rendering answers naming their room plainly, but the Shaping answer described its content correctly without ever saying "Shaping" — a miss against acceptance-gate item 2. Strengthened all three templates with an explicit "name the room" instruction; three follow-up calls confirmed the fix. Six real Anthropic calls total for Checkpoint A, all reported before proceeding.


3. A correction to this session's own filing process

Drafting this brief, I nearly overwrote a committed status-brief version. MEMORY.md's index had gone stale — it named v0.8/v0.9 as the latest known status briefs, but the actual highest version present is v0.31 (dated the same day, recording the B-8 Step 0 inspection this CR is grounded in). I wrote a v0.10 file without checking the directory first; the write tool refused because a file at that path already existed and had not been read — which is what caught it. I then read the real v0.10 (an unrelated, older, already-committed document — change request C's Step 0), and briefly deleted it outright rather than simply choosing a higher version number; git status showed it as a tracked deletion, and it was restored via git checkout -- before anything was staged, verified byte-identical to HEAD after restore. No committed content was lost or altered. This brief is filed as v0.32, the correct next version. The standing lesson: check the directory's actual highest version before trusting a memory index, every time — the index describes what was true when last updated, not what is true now.


4. What is running

Nothing. main pushed and CI-verified in loomworks-engine. No session in flight. The throwaway live-pass script used for Checkpoint A was not committed (matches CR-2026-169's precedent of not checking in ad hoc live-pass scripts).


5. What is queued to do next

  1. B-8 slice two — the writes worth having (deriving a Manifestation, requesting a draft), each needing its authority answered on its own terms per the scoping note (scoping-notes/loomworks-b8-scoping-note-v0_2). Not started.
  2. The sources-generalization decision (D-5, both this CR and CR-2026-169). Five retrieval-backed answers now carry no sources while one does. A deliberate decision, not a default.
  3. F-1 deployment queued. companion-room-reads-v0_1 is merged and tagged but not deployed — batches to cadence with any other pending merges.
  4. Everything carried in prior status briefs that this session did not touch — not independently re-verified this session.

6. Decision queue

| # | Question | Default | Blocks | Proceeds regardless | |---|---|---|---|---| | Q-13 | Does the sources channel generalize to every retrieval-backed answer, or stay hard-coupled to ask_about_past_input? Now five answers carry no sources (recall_personal, show_held, find_files, request_download, plus this CR's three new ones) against one that does. | Undecided; stays as-is until a drafting session settles it. | Nothing structural — every current answer works either way. | Everything. |

Prior open decision-queue entries (Q-1, Q-3, Q-10, Q-11, Q-12 per v0.10's numbering, and any renumbered since) are not re-litigated this session — carried forward as-is; this session's scope was CR-2026-170 only.

Batched Operator acts pending: F-1 deployment now includes CR-2026-170 alongside whatever this session did not independently re-verify from prior briefs. The launchd restart is the Operator's and batches to cadence.


7. Anomalies

None fired. Suite redness occurred once, at Step 0, fully explained and resolved (missing migration, not a code regression) before the true baseline was recorded — A-1 never fired because the redness was explained and citable. main did not move under this session at any point; C-1's fetch-and-reverify held both before the merge and is unchanged after. The status-brief-filing near-miss (§3) is recorded as a correction, not an anomaly — no committed artifact was altered.


8. Charter compliance

R-2 completed end-to-end, no halt. Every auto-proceed step ran unattended with per-step commits; Checkpoint A's live-pass demonstration was reported with its count (6 calls) before proceeding; Checkpoint B's merge-and-tag-and-push completed including the push, per R-2's explicit authorization.

C-1 observed: fetched and re-verified main at bd60cec immediately before merging, clean index throughout, --no-ff, one session on the repo.

R-4 held. All test-suite runs and the live pass ran against DATABASE_URL_TEST (playground_test). No connection was made to playground_dev. .env was read for ANTHROPIC_API_KEY and the test database URL and never modified.

F-1 respected: merged is not deployed.

§7 reporting duty: implementation notes filed (engine repo, per this CR's own convention); this brief is the decision-queue and outcome filing.


DUNIN7 — Done In Seven LLC — Miami, Florida DUNIN7 — status brief — v0.32 — 2026-08-05 Three words come off a list, and the Companion can finally talk about three quarters of the system.