# AGENT-PROMPT-v5-P1-1b — C8 amendment: execute the source merge on Luís's behalf

**Date:** 2026-08-06
**Follows:** `docs/AGENT-PROMPT-v5-P1-1b.md`, `docs/p1-1b-status.md` (the C8 stop record)
**Authority:** Miguel. Luís is unavailable. **This amendment authorizes exactly one write to the
prototype repository, performed on Luís's behalf**: the C8 merge of the five duplicate ENTBNK
`(CodeName, Company)` pairs. It is taken under the project's established on-behalf convention —
reversible until Luís reviews it, recorded prominently for that review, never silent. The P1-1b
prompt's general prototype-write prohibition remains in force for everything else; this amendment
does not widen it.

## The one write, precisely

Target: `Editor/Data/entbnk.json` in the prototype repository
(`D:\fileStorage\repos\invoice-skill-build`, remote = Luís's origin).

1. **Preconditions — stop and report if any fails:**
   - `git status` clean in the clone; `git fetch --prune origin` runs; `origin/main` is still
     `06825b54ec3855a96b5c49b352e2879b11971e39`. If it moved, Luís (or something) touched the
     repository — stop; the premise of acting for him is that he is absent.
   - Confirm push access to origin before editing (e.g. `git push --dry-run`). No access → stop;
     the merge at source is worthless if it cannot land where pins are taken.
2. **The edit**, from a work branch checked out at that SHA:
   - Parse `entbnk.json`. Group by `(CodeName, Company)`. Require **exactly 5 duplicate groups,
     each of exactly 2 rows, 10 rows total, 48 rows overall** — the measured stop state. Any other
     shape → stop and report; the file changed since the measurement.
   - Within each pair, require `PayAccount` and `PayMethod` each to have exactly one distinct
     value (the stop record measured exactly that). Any real field conflict beyond `Flag` → stop;
     that pair needs a human, not a merge.
   - Merge each pair into one row: natural key untouched, the single `PayAccount`/`PayMethod`
     values kept, **both `Flag` notes retained in full** — inspect the file for an existing
     multi-note convention and follow it; if none exists, join as `first; second` in the rows'
     current file order, losing no characters. Every other field: values are expected identical;
     if a pair differs on any other field, stop (covered above).
   - Preserve the file's exact serialization style (indentation, key order, encoding, trailing
     newline) — the diff must show only the five merges.
3. **Verify:** re-run the C8 measurement on the edited file: 43 rows, 43 distinct keys,
   0 duplicate groups, 0 rows in duplicate groups. Record Initial 48/5/10 → Expected 43/0/0 →
   Result as measured. Confirm the file re-parses and no other path in the worktree changed.
4. **Commit and push to `origin/main`:** one commit, clean multi-line body, clearly attributed —
   it must state that the merge executes C8's standing instruction, is performed **on Luís's
   behalf under Miguel's 2026-08-06 authorization while Luís is unavailable**, retains both Flag
   notes per pair, and invites Luís's review on return. No other file in the commit. If the push
   is rejected, stop and report — do not force.

## Then, the Sibyla-side resume (back under the standing P1-1b prompt)

5. **Records amendment** in GOTT.Sibyla (`feature/p1-1b`): amend `docs/p1-1b-status.md` with the
   on-behalf action (who authorized, what was measured before and after, the prototype commit
   SHA), take the **new immutable pin** (post-merge `origin/main`), and re-record the blob
   roster. **Every blob except `Editor/Data/entbnk.json` must be byte-identical to the
   2026-08-05 roster** — any other drift → stop and report. Note honestly that the stability
   confirmation for this pin is Miguel's authorization plus the roster-unchanged check, not a
   Luís confirmation; flag it for his return. Update `PROJECT-STATE.md` (changelog + current
   state) accordingly.
6. **Restart Scope 1 at its preflight** against the new pin and proceed with the ordered Scopes
   1–6 of `docs/AGENT-PROMPT-v5-P1-1b.md` exactly as written — disposable rehearsal first, live
   pass only after green, all stop-and-report rules intact. Scopes 7–8 stay behind their own
   review gates.

## What this amendment does not authorize

Any other prototype write, edit, cleanup, or "while we're here" fix — the false live-gate claims
in the prototype's `SKILL.md`, the three residual DOCFLG collisions, and everything else on
Luís's side stay his. No history rewrite in either repository. No relaxation of any P1-1b rule.
If anything in the prototype looks different from what the stop record measured, the answer is
always stop and report, never adapt.
