Version. 0.1
Date. 2026-08-04
Author. Claude.ai (drafting session). Operator: Marvin Percival.
Executed by. Claude Code on DUNIN7-M4, one session.
Target. /Users/dunin7/loomworks-engine at main afe8507; /Users/dunin7/loomworks at main c12a1ad, tag surface-typecheck-gate-v0_1. Both read-only. [EXECUTING SESSION: confirm both; report if either has moved.]
Charter. standing-notes/dunin7-standing-authorization-charter-v0_1. R-5 inspection run.
Build-list item. B-11. B-12 waits behind it and may merge with it.
Status. Read-only. Establishes ground for a change request. Produces no fix and no recommendation.
What B-11 is. Asked the same question three times, the system answered correctly, then claimed it had fabricated its own answer when it had not, then answered correctly with a source. The answer is not wrong. It is unstable, and one of the three states is a false statement about its own reliability.
Why that is worse than a wrong answer. A wrong answer can be checked. A system that sometimes disowns a correct answer teaches its reader to distrust the correct ones — and this project's entire product is a record you can trust. The middle state is the governing rule broken in an unusual direction: not stating something it has not read, but denying something it did read.
Why this is the largest item left. B-12 and B-13 both wait on it, and together they are the last third of the demonstration.
Both repositories read-only. No fixes, no branches, no commits, no dependency changes.
No model call is made that costs money without saying so. [EXECUTING SESSION: if reproducing the behaviour requires live model calls, report what it would cost and how many, and halt for authorization rather than spending.] The static reads come first and may settle most of this.
Database. playground_dev and playground_test are never touched. A throwaway is permitted if reproduction needs one; the engine's README carries the stand-up sequence.
No perimeter call. No dev server unless reproduction requires one, and then on spare ports with teardown.
A failure is a result.
State only what you have read or run, plus the disciplines at standing-notes/loomworks-standing-note-executable-document-versions-v0_7:
unread or unrun rather than closing a gap with a plausible reading.And one specific to this subject. The answering path involves a language model, and its output is not a source of truth about its own behaviour. If the system says it fabricated something, that statement is data about what the system emitted — not evidence that fabrication occurred. Establish what actually happened from the code and the record, not from what the answer claims about itself.
Nothing in the record describes it end to end.
3.1 The entry point. Where a question enters — route, handler, orchestration module. Name it.
3.2 What is retrieved, and how. Before the model is called, what does the system gather? By what mechanism — a query, a similarity search, a fixed window, everything? And what decides what is relevant?
3.3 What is assembled. The prompt as constructed: system instructions, retrieved material, the question, any prior turns. Read the actual template, not a description of it.
3.4 What comes back, and what happens to it. Is the model's output returned verbatim, parsed, validated, post-processed? Is there any check between the model and the reader?
3.5 Where citation happens. One of the three observed answers cited a source. Establish whether citation is implemented, and if so what decides what gets cited — the model choosing, or the system attaching what it retrieved.
The distinction matters more than anything else in this brief. If the model names its own sources, a citation is a claim the model makes and could fabricate. If the system attaches what it actually retrieved, a citation is a fact. This is the same question B-9 answered for the provenance walk, arriving from the other side.
Three runs, three behaviours. Establish every place variation can enter.
4.1 Model parameters. Temperature, top-p, seed, any sampling setting. Read the actual call. Is anything set to make repeated calls reproducible, and could it be?
4.2 Retrieval. Does the same question retrieve the same material every time? If retrieval depends on ordering, recency, a limit, or anything non-deterministic, the model is being asked a different question each time — and the instability would not be the model's at all.
4.3 State between runs. Conversation history, cached context, a memory of prior turns, anything accumulated. Does the second asking see the first?
4.4 Anything time-dependent. A timestamp in the prompt, a recency filter, a window that moves.
Report every source of variation you find, and say which could produce the observed behaviour and which could not. [EXECUTING SESSION: this is where the answer most likely is. Three different behaviours from one question is a strong signal, and a language model at nonzero temperature is the obvious explanation and not necessarily the right one.]
The middle answer said the system had fabricated something it had not. That is the most specific and most diagnostic of the three behaviours.
5.1 Is there a self-check? Does anything in the path ask the model to assess its own answer, verify it against sources, or report confidence? If so, read it in full — a self-check that misfires produces exactly this.
5.2 Is there an instruction that invites it? A system prompt telling the model to say when it does not know, or to flag uncertainty, can produce a false confession when the model is uncertain about a correct answer. Read the actual wording.
5.3 What the record shows. If the answer was correct, the material supporting it was presumably retrieved. Establish from the record whether it was — that settles whether the confession was false, rather than taking the answer's word either way.
5.4 Whether the confession is ever right. [EXECUTING SESSION: if the system can fabricate, a confession is sometimes correct and suppressing it would be worse than the instability.] Establish whether anything prevents the model from answering beyond what was retrieved.
B-12 is "make the record searchable" and may merge with this item. Establish whether it would.
Does the answering path already retrieve? If it does, B-12 is a replacement for a mechanism that exists, and B-11's fix would be built on something B-12 then changes. If it does not — if the model is given a fixed context or none — then B-11 and B-12 are the same work and separating them is an accident of when they were noticed.
Report which, with anchors. This decides whether the change request is one or two.
playground_dev or playground_test.One findings document, Markdown primary.
Path. inspection-briefs/loomworks-b11-step-0-findings-v0_1.md. Copy to ~/Downloads.
Structure: environment (both SHAs, both tree states, which databases and whether any model call was made and at what cost) · question one first — the path end to end, and whether citation is a model claim or a system fact · question two's sources of variation, each classed as possible or impossible cause · question three's four parts · question four's verdict on merging · corrections preserved · unread and unrun.
Filing. Charter R-1: commit and push on clean pre-flight. Append the outcome to current-status/dunin7-status-brief.
B-11 Step 0 inspection. Read-only.
Brief: loomworks-record/inspection-briefs/loomworks-b11-step-0-inspection-brief-v0_1.md
Confirm it exists, and that it is the highest version present — numeric sort.
Read the brief in full. Charter dunin7-standing-authorization-charter-v0_1 governs.
Two repositories, both READ-ONLY — the brief's header names them and their SHAs.
Confirm both; report if either has moved.
No fixes, no branches, no commits, no dependency changes.
DO NOT SPEND ON MODEL CALLS WITHOUT AUTHORIZATION. If reproducing the behaviour
needs live calls, report how many and what they would cost, and halt. The static
reads come first and may settle most of it.
playground_dev and playground_test are live databases and neither is touched. A
throwaway is permitted if reproduction needs one.
Section 3.5 is the pivot: is a citation something the model claims, or something
the system attaches from what it actually retrieved? Those are different kinds
of fact and the change request turns on which.
Section 2 carries a discipline specific to this subject: the model's output is
not evidence about the model's behaviour. A statement that it fabricated
something is data about what was emitted, not proof that fabrication occurred.
File findings per section 8. Append the outcome to the status brief.
DUNIN7 — Done In Seven LLC — Miami, Florida Loomworks — B-11 Step 0 inspection brief — v0.1 — 2026-08-04 The answer was right twice and disowned itself once. That third state is the item.