# Recipe — adopt the federation test supervisor (redirect)

> **This recipe has moved.** The test supervisor was extracted
> from `mgf-common/scripts/_mtest/` to a published sibling
> library `mgf-test-supervisor` v0.1.0 (Codeberg:
> `magogi-admin/mgf-test-supervisor`) on **2026-05-26**, after
> all 7 federation siblings completed the original copy-paste
> rollout. The detailed adoption guide is now maintained next
> to the code that ships it — at
> [`mgf-test-supervisor`'s README](https://codeberg.org/magogi-admin/mgf-test-supervisor/src/branch/main/README.md).
>
> This page is preserved as historical context + a quick
> install reminder for maintainers who land here from old
> links. **New adopters should follow the published library's
> README**, not this file.

---

## Quick install (5-line summary)

```bash
# 1. Add the published library to your dev extras.
uv add --dev "mgf-test-supervisor @ git+ssh://git@codeberg.org/magogi-admin/mgf-test-supervisor.git"

# 2. Add pytest-timeout (TS-23) + register the 13 federation markers
#    in pyproject.toml. See mgf-test-supervisor's README §"pyproject
#    config" for the canonical block.

# 3. Gitignore the per-run state directory.
echo ".gates/" >> .gitignore

# 4. Verify.
mgf-test-supervisor --self-check        # canonical console script — exits 0 with "PASS"
# (alias `mtest --self-check` also works; `python -m mgf.test_supervisor --self-check`
#  is the importable form.)
```

For the full adoption walkthrough (the four adaptation knobs,
CI integration, the `MGF_STANDARDS_CONFORMANCE.md` update, the
common pitfalls table) read the published library's README.

---

## Historical note

The pre-extraction copy-paste recipe (~475 lines) documented
the workflow that drove the May 2026 federation rollout: copy
`mgf-common/scripts/_mtest/` verbatim into your project, flip
four adaptation knobs, wire CI, verify. All 7 siblings adopted
that way (mgf-common as sibling-#1, then mgf-fastapi, mgf-django,
mgf-sqlalchemy, mgf-alembic, mgf-http, mgf-apiprobe). The
sibling-#7 adoption (mgf-apiprobe) surfaced the `--no-cov` vs
bare-coverage bug that was fixed before the extraction. With
≥2 siblings adopted (in fact, all 7), the federation rule in
TESTING.md §19.6 fired and the extraction landed.

The rollout history lives at
[`docs/inprogress/SUPERVISOR_ROLLOUT.md`](https://codeberg.org/magogi-admin/mgf-common/src/branch/main/docs/inprogress/SUPERVISOR_ROLLOUT.md)
(will move to `docs/archive/` in a subsequent cleanup).

---

## Cross-references

- `mgf-fed standards TESTING` §19 — the standards rule that pins
  the supervisor as federation-binding (TS-22..TS-27).
- [`mgf-test-supervisor` README](https://codeberg.org/magogi-admin/mgf-test-supervisor/src/branch/main/README.md) —
  the install + adoption guide (canonical, replaces this recipe).
- [`PUBLIC_API.md`](https://codeberg.org/magogi-admin/mgf-common/src/branch/main/PUBLIC_API.md) §`mgf.common.testing` —
  the 13 importable public names that stayed in mgf-common (the
  schema layer; the runtime moved out).
