A field test and a fixture are orthogonal artifacts. A fixture **pins** behaviour
for the future: something executes it, so a change that breaks it turns a test
red. A field test **proves** behaviour at one moment: a downstream consumer
reached the shipped surface from outside, and the green cycle records that. The
proof is complete when the cycle lands.
Everything in this corpus was the second kind. Nothing ever re-ran a driver,
re-read a transcript or re-validated a document here — so every file was
stale-by-design: it went out of date the moment the surface moved, and, having
no executor, it said nothing when it did.
Silent staleness is not the whole cost. What is written down is on the agenda of
anything that reads the tree. `--real`, retired two cycles ago, still occurred
130 times, and more than half of those sat in this corpus — not framed as
retired, but shown as working command lines in recorded output. #331 spent
~300k tokens making a surface class-complete that the next cycle deleted; the
agents found that surface where it was written down. 892 of the repository's
1236 tracked files were field-test evidence, so every tree-wide search paid a
threefold surcharge to reach the 344 live ones.
Removed: 51 directories, 883 files, from cycle-0006 (2026-06-04) through
milestone-safe-to-embed. Kept: `cycle-308-folded-delivery`, whose proof is the
one that still describes this tree.
Nothing is lost. `git log --grep='^fieldtest'` is the index — each subject
carries its own finding counts, which is where this repository's field-test
regression analysis came from, without opening a single corpus file — and
`git show <sha>:<path>` returns any of it verbatim. Deleting from the working
tree separates the two kinds of access that had to be separated: a human reaches
into history deliberately, an agent never does.
Going forward the corpus wants rotation depth 1: a cycle's field test clears the
previous one as it files its own, so the directory always holds exactly the proof
for the tree as it stands. That rule is not yet written into the field-test skill
— which still prescribes committing the fixtures — so it is owed there before the
next cycle refills the directory.
Suite 1652 passed / 0 failed (exit 0); clippy exit 0. No code reads this corpus:
the five prose citations were removed in the preceding commit.
Source-blind per-cycle fieldtest of the #317 surface (register->label->
discover->use loop; ref forms + refusal UX; open patterns; sweep axes through
a spliced instance). Corpus under fieldtests/composites-use/ with TRANSCRIPT.md.
Working: the full authoring loop (W1), ref-form variety incl. ambiguous/
unknown-prefix and unknown-label refusals (W2), sweep --list-axes and a real
sweep through graph.<instance>.<node>.<param> plus splice-time bind (W3).
Findings, routed at close:
- B1 (reclassified: docs untruth, behaviour ratified): an open pattern whose
input role names an archive column RUNS standalone — the harness binds
roles by name, which is C26's design; the "running standalone refuses"
claim was the wrong sentence, fixed in the follow-up docs commit and
minuted on #317.
- S1: the run path's actual refusal trio (bias/tap gate, free knobs, role-
column) vs the docs' bootstrap-gate story -> same docs commit + #339 note.
- F1: gang-on-instance-member refusal does not name the unsupported-rule ->
evidence added to #339 item 1.
- S2: README still enumerated nine ops -> fixed in the follow-up commit.
- S3: the use-seam C29 gate is unreachable through today's CLI writes
(register gates both input forms) -> ratified as a backstop, one line in
C24.
- Orthogonal pre-existing observation (NOT #317): aura run --params did not
close free knobs in the fieldtester's hands -> #340.
refs #317