# AGENT-PROMPT-v5-P1-1b — Piece D test-plan gate: Miguel's approval

**Date:** 2026-08-07
**Follows:** `docs/AGENT-PROMPT-v5-P1-1b-piece-d-goahead.md` (the Piece D go-ahead, its eight-item
consolidated checklist, and its ordered execution), `docs/AGENT-PROMPT-v5-P1-1b-o10-amendment-5.md`
(checklist discipline, proof-pattern annex, test-plan gate), `docs/p1-1b-status.md` ("2026-08-07
Piece D test-plan gate" — the checklist→test mapping as corrected by two independent review passes,
recorded and pushed), `docs/PROJECT-STATE.md`
**Authority:** Miguel. This is the explicit gate decision ordered instruction 2 of the Piece D
go-ahead requires before any implementation of any kind. It reopens no closed decision and changes
no baseline: the five expected completeness baselines remain 119 / 119 / 52 / 221 / **2,787**, the
two pinned `Routine` rows still import verbatim, and the immutable source pin remains
`b91768513fc638381fbde91f0b576b08220a98f6`. The one checklist amendment this document makes —
Observation 1, option (b) — is stated below in Miguel's own operative sentence and amends the
go-ahead's checklist item 5 only.

## Decision: **Approved in full**, both observations decided by name

Miguel's operative approval sentence, adopting verbatim the recommended Option (b) sentence the
mapping itself recorded for this purpose:

> "Aprovo o mapping Piece D na íntegra: itens 1, 2, 3, 4, 6, 7 e 8 como escritos; aprovo a
> Observação 2 — a lista correta é de oito ficheiros de migração, não seis, e a questão dos
> ficheiros Designer/ModelSnapshot fica fora do âmbito deste item; **decido e emendo o checklist do
> go-ahead pela Observação 1, opção (b): o item 5 fica formalmente fora do Accept do Piece D, a
> confirmação da população real das cinco baselines e das duas linhas Routine fica diferida para o
> Scope 1, e o checklist de oito itens fica assim integralmente fechado — só agora autorizo o
> início da implementação de todos os itens 1–4 e 6–8, e do item 5 conforme reformulado.**"

### The two reported observations — decided

1. **Observation 1 — decided as option (b), defer the real-population claim to Scope 1.** This
   sentence is itself the explicit go-ahead/checklist amendment Observation 1 required: checklist
   item 5's literal baseline-count claim ("the five baselines, one run") is formally carved out of
   Piece D's Accept scope. Piece D commits **no test for the real governed population**, invents no
   synthetic population matched to the five numbers, and its eventual Accept explicitly does not
   confirm the real baselines; Scope 1's own eventual acceptance criteria carry that confirmation
   instead, where O10-D1's own words already place it ("measured at import; a differing measured
   value is recorded and flagged, not a stop"). Option (a) — authored synthetic populations equal
   to the five numbers — is rejected for the reason the mapping states: it would let Piece D's
   Accept imply a false confirmation of the real governed baselines using numbers chosen to match
   rather than measured. With this amendment the eight-item checklist is closed in full; item 5 is
   not left open.
2. **Observation 2 — decided as alternative (i), the eight-file roster.** The checklist's "six
   accepted migration files" is confirmed a stale drafting count carried from Piece C's own
   pre-acceptance evidence maps. Item 1's byte-identity assertion (and every other byte-identity
   claim keyed to it) runs over the correct measured roster of **eight** files — two per accepted
   piece: `20260805180000_P11aFdrSchema.cs`/`P11aSchemaSql.cs`,
   `20260806180000_P11bPieceASchemaCompleteness.cs`/`P11bPieceASchemaSql.cs`,
   `20260806190000_P11bPieceBRegistryFieldProvenance.cs`/`P11bPieceBSchemaSql.cs`,
   `20260806200000_P11bPieceCGovernedCommands.cs`/`P11bPieceCSchemaSql.cs` — by blob-ID assertion,
   not `diff --stat` silence. **The Designer/ModelSnapshot sub-question is decided out of scope for
   item 1:** the one `20260805180000_P11aFdrSchema.Designer.cs` and the one shared
   `SibylaDbContextModelSnapshot.cs` are not added to the byte-identity roster — the sub-question
   was reported precisely so this would be an explicit decision, and the decision is that it was
   never part of any prior piece's checklist and does not enter this one silently. Nothing in this
   decision authorizes touching either file; Piece D's allowed surface remains test/harness/helper
   code and the two records files only.

### Approved as written, no further ambiguity reported

Items 1, 2, 3, 4, 6, 7 and 8's proposed test names, surfaces, helpers, folds, and literal
assertions exactly as recorded in the twice-corrected mapping, including: item 2's complete
dynamically-enumerated `pg_catalog` snapshot helper (`PieceDCumulativeCatalogSnapshot`, no curated
name list, proven deterministic before it is trusted as the item-3 oracle); item 3's single
cumulative Up→Down→Up disposable method with item 4's assertions and item 8's S1/S3 roster checks
folded into that same method and run, not counted or run separately; item 6's two new tests plus
the exact seven named existing regressions; item 7's eight verification commands; and item 8's
standalone owner-level bypass probe `[Fact]` with its literal audit/provenance post-state
assertions. The committed inventory stands: **6 new tests + 1 helper, 2 strengthened, 7 existing
regressions re-run, 14 verification commands, and no test for item 5.** No final suite total (N/N)
is projected, per amendment 5.

## What is now authorized

Ordered instruction 3 of the Piece D go-ahead: implement, TDD first, from the pushed approval tip,
the integration test/harness changes exactly as the approved mapping commits — under the
amendment-4 reformulated preflight (checks 1–5 re-run fresh and passing, read-only; check-6
divergence logged by hash and subject only, no post-pin content read or adopted). **No migration
content of any kind; no production, shared, or live database write; no importer execution; no
Scope 1 work.** All eight accepted migration files byte-identical throughout, by blob-ID. Full
verification envelope per item 7: focused integration tests, the full disposable suite, focused
registry tests, the ordinary suite, a clean rebuilding build at 0 warnings/0 errors, `git diff
--check` clean, exact changed-path/claim equality, 0 residual containers, every claim a measured
assertion. The status evidence map keyed item by item to the eight checklist items as amended
(item 5 recorded as deferred-to-Scope-1 by this approval, not as skipped silently); commit and
push. Then ordered instruction 4: the **fresh independent integration-focused review** in an
independent session, explicit Accept/Reject verdict recorded. **Only Accept authorizes Scope 1 to
seek/restart** at its own preflight and confirm-pin-or-re-pin checkpoint against pin `b917685…`.
**Reject stops** — Piece D does not self-authorize remediation; the mapping/approval gate applies
exactly as it did for Pieces A, B, and C.

## What this approval does not authorize

Any Piece D migration or DDL product change. Any importer or import execution, or any synthetic
population authored to match the five baseline numbers (option (a) is rejected). Any Scope 1
restart before Piece D's own recorded independent Accept. Any change to the
Designer/ModelSnapshot files, or their silent addition to any roster. Any shared or live database
write. Any prototype write or post-pin content adoption. Any change to a baseline or a closed
decision beyond the named item-5 amendment above. O5 work of any kind under this prompt (O5-prep
runs in parallel under its own authorization, on its own disjoint surface). Resurrection,
cherry-picking, or reuse in any part of `b324a3e…`, `57f0f023…`, `7ea6c0f…`, `6f86023d…`, or
`b8fa033…`. History rewrite in either repository.

## Records instruction

Record this approval in `docs/p1-1b-status.md` (the gate section gains its "Miguel's approval
recorded" entry, quoting the operative sentence and both decided observations) and update
`docs/PROJECT-STATE.md` **in the same commit** (header; the amendment-5 rule that these records
move together is in force), track this file, push before any implementation code — then proceed
with ordered instruction 3.
