๐ Fumadocs Resync + Drift Gate
Playground ยท branch chore/fumadocs-resync ยท 2026-06-04 ยท fixes stale orchestkit.yonyon.ai/docs/reference/*
86
Reference pages resynced
Symptom: /docs/reference/skills/audit-full showed Opus 4.6/4.7 while the source skill
said Opus 4.8 โ 10 days stale. Root cause: reference mdx is generated from src/ but the
generated artifact is committed and served as-is; nobody re-committed it, and no CI gate caught the rot.
Why the site went stale (the pipeline break)
src/skills/*/SKILL.md โโ(scripts/build-docs.sh, part of `npm run build`)โโ> docs/site/content/docs/reference/*.mdx
Local dev npm run build โ regenerates mdx โ but discarded (treated as "drift")
CI validate npm run build โ regenerates mdx โ validated in memory, never committed, NO drift gate
Vercel deploy next build only โ never runs build-docs.sh โ serves COMMITTED mdx
Published site serves mdx from git โ STALE whenever src/ changed since last mdx commit
The fix โ mirrors the existing plugins/ drift gate
| Part | Change | Effect |
| Immediate | Regenerate + commit 86 reference + 2 category mdx | Live site updates on next deploy (audit-full โ Opus 4.8) |
| Systemic | Add drift gate to .github/workflows/docs.yml validate job | CI fails if committed mdx โ regenerated โ can't silently rot again |
.github/workflows/docs.yml โ validate job
- run: npm run build # regenerates reference mdx from src/
+ - name: Check generated docs drift (reference mdx must match src/)
+ run: |
+ if ! git diff --quiet -- docs/site/content/docs/reference docs/site/content/docs/skills/by-category; then
+ echo "::error::Docs drift detected โ generated reference mdx is stale."; exit 1
+ fi
audit-full โ before / after
docs/site/content/docs/reference/skills/audit-full.mdx
- leveraging **Opus 4.6** 1M context โฆ On Opus 4.7, prefers xhigh โฆ
+ leveraging Opus 4.8 1M context โฆ Opus 4.8 defaults to high effort; bump to xhigh โฆ
Why a gate, not Vercel-side generation? Vercel's ignoreCommand skips deploys when
docs/site is unchanged. A deploy-time generator wouldn't fire on a pure src/skills
change. Committing the mdx (gated) guarantees docs/site changes whenever a skill does โ Vercel always deploys. Same model as the plugins/ drift gate already in CI.