Raised by @esnible in review of #120: two deliberately temporary pieces exist only to make #120 safe to merge in either order relative to rossoctl/rossoctl#2530. Both are commented as temporary. Without a tracking issue they will outlive their purpose.
1. The MIGRATION WINDOW block in scripts/sync-docs.sh
It synthesises a minimal docs/index.md when upstream does not supply one. The restructured docs supply docs/index.md with slug: /, so the block becomes a no-op the moment #2530 lands.
if [[ ! -f "$DEST/index.md" ]]; then
printf -- '---\ntitle: Rossoctl documentation\nslug: /\n---\n\nChoose a section from the sidebar.\n' \
> "$DEST/index.md"
echo "==> synthesised docs/index.md (upstream does not provide one yet)."
fi
To remove: delete the block. Then confirm /docs/dev/ still resolves — it should, from the upstream docs/index.md.
2. The legacy entries in the exclude array in docusaurus.config.ts
// --- Legacy locations, pre-restructure. ---
'superpowers/**',
'authbridge/**',
'automation-health.md',
#2530 moves that content under docs/_internal/, which the default '**/_*/**' pattern already excludes. The three entries then match nothing.
To remove: delete only those three lines. Keep the four Docusaurus defaults above them — '**/_*.{js,jsx,ts,tsx,md,mdx}', '**/_*/**', '**/*.test.{js,jsx,ts,tsx}', '**/__tests__/**'. Providing exclude replaces the defaults rather than extending them, so removing those four silently publishes docs/_internal/ and fails the build on its repo-relative image links. The comment in the file says this; it is the reason the array exists at all.
Verification after removal
npm run sync-docs && npm run build
Expect: build succeeds, /docs/dev/ resolves, and no route under /docs/dev/_internal/ or /docs/dev/superpowers/ is generated.
Blocked on
rossoctl/rossoctl#2530
Raised by @esnible in review of #120: two deliberately temporary pieces exist only to make #120 safe to merge in either order relative to rossoctl/rossoctl#2530. Both are commented as temporary. Without a tracking issue they will outlive their purpose.
1. The
MIGRATION WINDOWblock inscripts/sync-docs.shIt synthesises a minimal
docs/index.mdwhen upstream does not supply one. The restructured docs supplydocs/index.mdwithslug: /, so the block becomes a no-op the moment #2530 lands.To remove: delete the block. Then confirm
/docs/dev/still resolves — it should, from the upstreamdocs/index.md.2. The legacy entries in the
excludearray indocusaurus.config.ts#2530 moves that content under
docs/_internal/, which the default'**/_*/**'pattern already excludes. The three entries then match nothing.To remove: delete only those three lines. Keep the four Docusaurus defaults above them —
'**/_*.{js,jsx,ts,tsx,md,mdx}','**/_*/**','**/*.test.{js,jsx,ts,tsx}','**/__tests__/**'. Providingexcludereplaces the defaults rather than extending them, so removing those four silently publishesdocs/_internal/and fails the build on its repo-relative image links. The comment in the file says this; it is the reason the array exists at all.Verification after removal
npm run sync-docs && npm run buildExpect: build succeeds,
/docs/dev/resolves, and no route under/docs/dev/_internal/or/docs/dev/superpowers/is generated.Blocked on
rossoctl/rossoctl#2530