> **Relayed** to mgf-fed#PAPER-117 by the supervisor (FB-05).

### PAPER — `app-doctor` should warn when the AG-03 hook is present but inert

- **Severity:** 🟡 Sharp edge
- **Filed by:** mgf-standard (PAPER-117 resolution) on 2026-07-10
- **What hurts:** `mgf-fed app-doctor` checks that `.githooks/prepare-commit-msg`
  **exists**, not that it is **active**. A repo that never ran
  `git config core.hooksPath .githooks` — or a pre-commit-framework repo, which
  *cannot* set it (`pre-commit install` hard-errors on `core.hooksPath`; see
  mgf-standard PAPER-117) and hasn't wired the §4b pre-commit path — passes
  doctor while the AG-03 signoff hook silently never fires. figrecovery hit
  exactly this during its 2026-07-09 re-sync.
- **Why it matters:** the local half of AG-18(c) can be silently dead fleet-wide;
  the failure is invisible until the CI `commit-trailers` gate reds a branch
  after the fact (or worse, on repos whose pipeline lacks the fragment).
- **Evidence:** mgf-standard `FEEDBACK.md` PAPER-117 (+ its resolution, this
  wave); `docs/recipes/standardized-git-config.md` §4a/§4b (the two mutually
  exclusive wirings); pre-commit refusal verified on 4.6.0.
- **Suggested shape:** doctor's AG-18 check gains an *active-wiring* probe: PASS
  when `git config --get core.hooksPath` = `.githooks` **or**
  `.git/hooks/prepare-commit-msg` exists (the pre-commit-installed shim); WARN
  (not FAIL — advisory first, per the PAPER-100 staging discipline) when the
  committed hook exists but neither wiring is live.
- **Status:** OPEN
