# 0039 answer-shape transcript — RESEARCH's instrument (independent of dev's)
# generated 2026-09-12 (research's instrument, re-run by dev)  against veracium @ 537dcd8
# RE-PINNED 2026-10-24 R-II round 3's NEXT-ROUND batch (research's N2: an import owner conflict refused as one; the kind closure's own cells; the reviewer's round-4 cases) landed in 537dcd8e2b9dd0413d11b3c9f48f26ea214fa8a9: bodies byte-identical; the pin moves to it
# RE-PINNED 2026-10-23 R-II round 3's RII-R3-01 (add_episode's persisted-owner refusal and its id-keyed X21 and INV-11 refusals; the import's two refusals at its episode admission) landed in c361b23b37b51277f9400d37b9d3cfacbaa32b7c: bodies byte-identical; the pin moves to it
# RE-PINNED 2026-10-23 R-II round 3's RII-R2-01 (schema.assertion_view read at every edge and episode write and by the bind; discard_wiki; the cutover's eviction) landed in 5d78a79564fb03982164016a5e71c57d13e92c0a: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-22 R-II round 2's D10 (specs/0004 W9: a revoking invalidation withholds the in-call body) landed in 62246918d99f5703f3509e49a2c99b862446fc2b: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-22 R-II round 2's landing read L1 (the bind reads the drawn episodes' presence) landed in c67f39247cb46be7bd7cadd3df92362c97f6da51: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-22 R-II round 2 (RII-01's bound wiki, import eviction, the redaction/erasure bind and its census site 1d7f186..7f7f02e; RII-02's ATTEST-6 ec929c1) landed in 7f7f02e7584828ba8b4a3e7e2c0b426aee4043f0: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-21 0044 T12 (the closing gates) landed in 811760d9641f292af8c71c10f1abb5a7afd8ed48: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-20 0044 T11b stage 2 (research's stage-2 read) landed in 57c079f639b2ff6a1eebccc16cce48c740ddfadc: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-20 0044 T11b (act and attestation portability) landed in e8e476e444f0e30c8965c0a4c30f83a0cf9b069a: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-20 0044 T11a stage 2 (the S2-1 ruling, S2-2..S2-5) landed in 2d32e72544d09cc0872f87c9340d7eaaa6c4ba73: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-20 0044 T11a (outcome portability, format era 14) landed in fab8355a00c8927eec295751cb9e6dac5e8f4241: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-20 0051 (ATTEST-5, the speaker-turn backstop, speaker_restricted) landed in b066a78eaef44c379adec7a144ef36b6c773b4f2: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-20 0044 T10b stage 2 (as-of collapse with the call's snapshot; proactive's count; introspect's twin line) landed in 50332ede69cace48221d1cb7179d288c73a53e34: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-20 the one-speaker-per-event docstrings (Memory.remember, the MCP remember tool) landed in 94c46d71199565ab619a77637232a318ab1728ba: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-19 0044 T10b-1 (0047's read half and 0045's inspection carriers) landed in 5a8bef573751113b5db776420c1a1b197b9789ee: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-19 0044 T10a-1's forget() carriers (over T10a-1, 0047's reply store and verb) landed in 891ff375f994caa935c1f35d7b53c153600927a2: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-19 0044 T10a-1 (0047's reply store and verb) landed in 0612fc0caa169bc3f354c7c4b8519e5f81048a37: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-18 0044 T9-1 (0045's write half) landed in 367f761c2d74fa1f344efaeea93ced0c69444ea4: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-18 0044 T8-1 (0003 §4c-iii, the contested group order) landed in a0c9f8422464bf3c916c71e2f51c67081bc397e3: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-18 0044 T7-1 (one store-path predicate, 2537d8e) and T7-2 (undo_restoration) landed in f89752aeaf987bcaeac111bab4755bb1e00fca2e: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-16 0044 T6-1 (run_data_migration) landed in 0fee726399299da64095a52da5652e88a4550b97: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-16 0044 T5-3 (the policy digest binds arity) and T5-2 stage-2 N1 (the naive-instant fix) landed in 811a0c2dc45801f3cf5f2a1d3e4c0086da5c2591: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-16 0044 T5-2 (the flip, the v16 arity step, the lifetime hook, the retention) landed in d0234ff8a906d8c5b78a660510a8ef1edb88233e: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-15 T5-1 (0044 Relation.arity, 3e64d3c) and R-A round 2's fixes (RA-01..RA-03) landed in e4fbcfa91de01bc4cd2e9706dac44346e07c847f: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-15 the T4-1 fix (research's T4 stage 2) landed in 3e1c6bc19b03a54df4ca37e108f16dc8eb93fe35: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-15 0041 §11.6.6 (T4, the notice state machine) landed in 86baf9cb1ec84de25667d1d756d259e9951af5d3: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-14 0008 v7 (the request registry, schema v16) landed in f20840fed3c4528eba8be50cb3634a568c5f87ac: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-14 0019 v7 (the non-user refusal) landed in 6e35f564bcbaaa000b7e25daa0b461503f22c223: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-14 0029 v12 (the reinstatement reason) landed in fbd69be010eebee4bbe403c66620366e2d3101e6: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-14 0013-PA1 stage-2 (the chain postcondition's own classification) landed in 86522c6398ea411ebae9ab6893a4cc5194a9b334: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-14 0013 v33 §4f (0013-PA1, the migration postconditions) landed in 0a89696f48e4c4247e0c54e01b62567983214ad3: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-13 the 0041 notice-binding hotfix landed in 98327c23e5e3f70fac3cfeb071f52468f2855314: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-11 the 0019 U5 as-of marker fix landed in 84b50c225cbd6d94a50174f6a01947e8b898dbfc: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-03 the 0041 round-11 corrections landed in e771432363b7fdb4fe104b469dbeb131615cabe6 (9b0d0a4..e771432): bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-02 the 0041 round-10 stage-2 fix (S2-1) landed in 6af44eeeacc8147390bd94edc7d27379de8e26c5: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-02 the 0041 round-10 corrections landed in 2061dd323e05984323d07a312cd4845af56a8812 (6f419ff..2061dd3): bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-29 the store's probe connections closed (0007) landed in 0ceffd150caccb1b08c50172b481e244bd145490: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-20 the 0042 round-7 fix landed in 61e7904690e698d690269e20cead7e1cf9f50123: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-20 the 0042 round-6 pre-seal fix landed in 8198ea798b52aa2b215f0d949e8c097377799cb6: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-20 0041 tranche 5 (the delayed writers) landed in 5d813ea15ad42f6322f21f055b47b87112245c64: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-20 0041 tranche 4b (export + the import contract) landed in 8ea59e79e6e6833521aefd0b828a5a24223f5aa2: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-20 0041 tranche 4a (the readers) landed in c8de9be8e8b77e5395269607c904d2c444be90c2: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-19 0041 tranche 3 (redact) landed in 45797d5e2d04af15e76ba4a2e370dc1c19086ddc: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-19 0041 tranche 2 (schema 14 -> 15) landed in 8581f5542c9de47945ed37c53b10dc4504c79b1b: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-19 0041 tranche 1 (the write-path refusals) landed in c68e45b9fc8fc6bcaa41409e52a9c7a2bfb29a38: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-19 0043 tranche 1 (the gate's rendering seam; the captured baseline) landed in d2eaabacabf4182b861106b7bea6f27910cf7d7b: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-19 0042 tranche 5 (the store's forty-six sites) landed in 214964caca9c65dd235652b5a09e4498cb060fdf: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-19 0042 tranche 4 (thirty-three more sites) landed in 2fcaa57ae4539ed85ddee54fbfe562f8c3bcd777: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-19 0042 tranche 3 (forty more sites) landed in 14ad68ce52a5c06f732b0c01a4d43fd87d53f000: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-19 0042 tranche 2b (the census bypass at the four hot Edge predicates) landed in 4002977d8f3e4641d199ccd9a9b6a484e6c0b49c: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-19 0042 tranche 2 (28 sites bound) landed in 30dea6c0a621467d976b9cdda45501d309616b1a: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-19 the provider's empty-completion refusal landed in 719d5a37a45148926d1e5d570a98368abc876019: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-19 the recall report's contested class (I10b amended) landed in c130cbd3e52b64cca12193bbff6abb4440dc553b: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-19 the renderer cap (contested_render_share) landed in 0da385f319cf6014ba94f3ac98ffd547aac8ec25: bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-19 after 0042 tranche 1 (f73899d; src/veracium/census.py, __init__.py, config.py): bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-18 after the derived ladder diagnostic (bbeb024; src/veracium/store/release_migration.py): bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-09-18 after the MemoryConfig.relations doc line (87aa4c5; src/ moved by comment text only): bodies byte-identical
# RE-PINNED 2026-09-18 after the v0.26.1 schema-evidence regeneration (legacy_stores.json records the new release; no product change): bodies byte-identical
# RE-PINNED 2026-09-18 after the second v0.26.0 schema-evidence regeneration (the record now names the tag's final commit; JSON under src/, no product code): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-17 after the v0.26.0 schema-evidence regeneration (a released-version record, not product code): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-15 after the 0041 adoption: body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-15 after 0027 v15: body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-15 after 0027 v14.1: body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-14 after 0037 v24.5: body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-14 after 0037 v24.4: body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-14 after 0027 v14: body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-14 after 0037 v24.3: body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-14 after 0037 v24.2: body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-14 after 0037 v24.1 (fail closed): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-14 after 0037 v24 (the boundary kinds): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-14 after 0037 v23.1 (wording only): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-14 after 0037 v23 / 0006 v10 (Provenance frozen; the producer stamp; no procedural triple here): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-14 after 0037 v22 (the whole-sentence rule; no procedural triple here): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-13 after 0027 v13 (the policy receipt; no policy passed here): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-13 after the v21 doc sweep (docstrings only): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-13 after 0037 v21 (the derived gloss; no procedural triple here): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-13 after 0027 v12 (graph.py's baseline order; ingest untouched): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-13 after 0037 v20 (procedural_gate's positive form; no procedural triple here): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-13 after 0037 v19 / 0038 v6.2 (ingest's capture gates, correct(), the store guard; no procedural triple here): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-13 after 0037 v18 (the describe attribution; ingest untouched): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-12 after 0006 v9 / 0037 v17 (procedures, mcp_server; ingest untouched): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-12 after the doctor's procedural tripwire (doctor.py only): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-12 after 0037 v16 (the quote gate in ingest; no procedural triple in these answers): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-12 after 0006 v8 (the default flip; `ingest_event` called directly): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-12 after 0006 v7 `require_source_id` (default-off branch in ingest): body BYTE-IDENTICAL again.
# script: proposals/0039-answer-shapes-research-instrument.py
# Real ingest_event with a scripted provider. Not a simulation of the loop.
# research's instrument as committed: ONE row moved — `R bare array of dicts` is now a
# research's instrument as committed: THREE rows moved — `P triples null`, `number` and
# REGENERATED by dev at the round-5 fold (the pin above) by re-running research's instrument as
# committed: the same seven primary rows back to `"unparseable": null`, body BYTE-IDENTICAL to the
# pre-widening transcript.
# REGENERATED by dev 2026-09-11 (the pin above) after the retry handler's sentinel fix
# (9a590d6): body BYTE-IDENTICAL to the round-5 transcript; no row moves.
# RE-PINNED 2026-09-12 after `veracium why` (no ingest change): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-12 after `veracium doctor` (no ingest change): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-12 after `remember --dry-run` (no ingest change): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-12 after the confirmation-episode id fix (no ingest change): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-12 after 0027 v11's policy lane (no ingest change): body BYTE-IDENTICAL again.
# RE-PINNED 2026-09-12 after the doctor's sources check (no ingest change): body BYTE-IDENTICAL again.
# RE-PINNED 2026-10-04 the 0041 round-12 corrections landed in bbd71d1038cba05be3aee568c6ba36b70e093f00 (1b8d875..bbd71d1): bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-05 the 0041 round-13 corrections landed in 0333ad1fece3eab07a039261d47d4a8e16de9973 (e4c1573..0333ad1): bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-05 the 0041 round-14 corrections landed in a24a47dd2c8cbc1c930fac5507931993844ccd6a (2662970..a24a47d): bodies byte-identical; the pin moves to the commit that changed src/
# RE-PINNED 2026-10-06 the owner's-name scrub of src/ comments and docstrings landed in e6bdac98f0dd235e24eee9999bb26701a53d7904 (no code change): bodies byte-identical; the pin moves to the commit that changed src/

  primary answer shape     outcome                                             
  ------------------------ ----------------------------------------------------
  P valid non-empty        RETURNS {"facts": 1, "unparseable": null, "invalid": 0, "retried": 0, "recovered": 0, "resi
  P valid empty            RETURNS {"facts": 0, "unparseable": null, "invalid": 0, "retried": 0, "recovered": 0, "resi
  P missing key            RETURNS {"facts": 0, "unparseable": null, "invalid": 0, "retried": 0, "recovered": 0, "resi
  P triples string         RETURNS {"facts": 0, "unparseable": null, "invalid": 0, "retried": 0, "recovered": 0, "resi
  P triples dict           RETURNS {"facts": 0, "unparseable": null, "invalid": 0, "retried": 0, "recovered": 0, "resi
  P triples null           RETURNS {"facts": 0, "unparseable": null, "invalid": 0, "retried": 0, "recovered": 0, "resi
  P triples number         RETURNS {"facts": 0, "unparseable": null, "invalid": 0, "retried": 0, "recovered": 0, "resi
  P triples bool           RETURNS {"facts": 0, "unparseable": null, "invalid": 0, "retried": 0, "recovered": 0, "resi
  P bare array of dicts    RETURNS {"facts": 1, "unparseable": null, "invalid": 0, "retried": 0, "recovered": 0, "resi
  P bare array scalars     RETURNS {"facts": 0, "unparseable": null, "invalid": 0, "retried": 0, "recovered": 0, "resi
  P top-level number       RETURNS {"facts": 0, "unparseable": true, "invalid": 0, "retried": 0, "recovered": 0, "resi
  P top-level string       RETURNS {"facts": 0, "unparseable": true, "invalid": 0, "retried": 0, "recovered": 0, "resi
  P prose, no JSON         RETURNS {"facts": 0, "unparseable": true, "invalid": 0, "retried": 0, "recovered": 0, "resi
  P instructions string    RETURNS {"facts": 0, "unparseable": true, "invalid": 0, "retried": 0, "recovered": 0, "resi
  P mixed member types     RETURNS {"facts": 1, "unparseable": null, "invalid": 0, "retried": 0, "recovered": 0, "resi
  P empty dict members     RETURNS {"facts": 0, "unparseable": null, "invalid": 0, "retried": 0, "recovered": 0, "resi
  P nested triples         RETURNS {"facts": 0, "unparseable": null, "invalid": 0, "retried": 0, "recovered": 0, "resi

  retry answer shape       outcome                                             
  ------------------------ ----------------------------------------------------
  R valid repair           RETURNS {"facts": 1, "unparseable": null, "invalid": 1, "retried": 1, "recovered": 1, "resi
  R valid empty            RETURNS {"facts": 1, "unparseable": null, "invalid": 1, "retried": 1, "recovered": 0, "resi
  R missing key            RETURNS {"facts": 1, "unparseable": null, "invalid": 1, "retried": 1, "recovered": 0, "resi
  R triples string         RETURNS {"facts": 1, "unparseable": null, "invalid": 1, "retried": 1, "recovered": 0, "resi
  R triples null           RETURNS {"facts": 1, "unparseable": null, "invalid": 1, "retried": 1, "recovered": 0, "resi
  R bare array of dicts    RETURNS {"facts": 1, "unparseable": null, "invalid": 1, "retried": 1, "recovered": 1, "resi
  R bare array scalars     RETURNS {"facts": 1, "unparseable": null, "invalid": 1, "retried": 1, "recovered": 0, "resi
  R prose, no JSON         RETURNS {"facts": 1, "unparseable": null, "invalid": 1, "retried": 1, "recovered": 0, "resi
  R top-level number       RETURNS {"facts": 1, "unparseable": null, "invalid": 1, "retried": 1, "recovered": 0, "resi
