> **Relayed** to mgf-common#PAPER-102 by the supervisor (FB-05) on 2026-06-14
> (mgf-common PR #30, merge `3baff9b`). **Triaged ACCEPTED 2026-06-14**
> (mgf-common PR #31) — hook as the dev-convenience layer + a CI/PR trailer-gate
> as the authoritative enforcement (covers both trailers); not yet scheduled.

### PAPER (→ mgf-common) — AG-18 should ship a `prepare-commit-msg` hook so `git commit -m` still carries the AG-03 `Signed-off-by`
- **Severity:** 🟡 Should-have (closes a recurring, fleet-wide AG-03 conformance leak)
- **Filed by:** mgf-standard (conformance depth-audit) on 2026-06-14
- **Evidence level / confidence:** VERIFIED_BY_EXECUTION / HIGH
- **What hurts:** **AG-03** requires *both* trailers (`Signed-off-by:` + `Co-Authored-By:`).
  **AG-18** wires `.gitmessage` via `git config commit.template` — but that template
  is consulted only for *interactive* commits. **`git commit -m` (the default agent
  path) bypasses the template entirely**, so the constant human `Signed-off-by` is
  silently dropped on `-m` commits. Nothing catches it until a depth audit reads the
  trailers.
- **Why it matters:** the trailers are non-negotiable (review provenance +
  `git log --grep` audit, per AG-03). AG-18 wiring that covers only interactive
  commits leaves the *most common* agent/scripted path unenforced, so conformance
  erodes one commit at a time and surfaces only late. Fleet-wide: every repo inherits
  the same `.gitmessage`-only setup.
- **Evidence:** mgf-standard hit this — **5 commits in one 2026-06-14 session carried
  only `Co-Authored-By`** (`e976477`, `9684308`, `8fddbfb`, `df285c9`, `14d8129`),
  caught by the AG-03 row of the per-MUST audit. Fix verified by execution: a committed
  **`.githooks/prepare-commit-msg`** (mgf-standard `fadd368`, PR #113) auto-added the
  signoff on its own `-m` commit, idempotent (`git interpret-trailers --if-exists
  doNothing`).
- **Suggested shape:** (1) cookiecutter ships the hook + `mgf-common init-project` sets
  `core.hooksPath .githooks`; `catch-up` repairs it. (2) AG-18(b) rule-text extension.
  (3) `mgf-common doctor` checks the hook is present + wired. Reference impl: mgf-standard
  `.githooks/prepare-commit-msg` (PR #113). Propagation (DOC-18): AG-18 rule text + README
  *What's new* + `standardized-git-config` recipe + cookiecutter + `catch-up`/`doctor`.
