Goal
Migrate mainline SKaiNET's docs to Antora following Divio documentation principles (Tutorials / How-to / Reference / Explanation), add a GitHub Actions workflow to build and publish the site, integrate the existing Gradle-generated ops-docs (via the `generateDocs` custom task) into the Antora Reference section, and bundle the Dokka-generated API reference as a sibling `/api/` path of the Antora site. Use the same Docker image as `SKaiNET-transformers` (`node:20-alpine` + `@antora/cli` + `asciidoctor-kroki` + mermaid-cli via Chromium/Puppeteer).
Context
Several pre-staging signals show this migration was anticipated but never finished:
- `docs/modules/operators/generated/` already matches Antora's module layout
- `docs/nav.adoc` exists as a stub written in Antora xref style
- `.gitignore` has a commented `## antora` section listing `_public` and `.cache`
- The custom `GenerateDocumentationTask` already outputs AsciiDoc with backend-status tables
Mainline has Dokka 2.1.0 fully configured (`dokkaGenerate` aggregates ~21 modules), currently published to GitHub Pages via `dokka-pages.yml` which will be superseded by the new workflow.
Phased execution (6 commits)
- Scaffold — `antora.yml`, `antora-playbook.yml`, `docs/modules/ROOT/nav.adoc` (minimal), landing page, `docs/.docker/Dockerfile` (verbatim from transformers).
- Content migration — 11 `.md` files converted to `.adoc` and placed under Divio categories; images moved; 3 mermaid fences hand-fixed; nav populated.
- Repoint ops-docs generator — change `documentation { outputDirectory }` in root `build.gradle.kts` to the new Antora path; delete old `docs/modules/operators/` tree.
- Ops-status matrix emitter — extend `GenerateDocumentationTask` with `emitOpsStatusMatrix()` writing a single-page operator × backend matrix.
- GitHub Actions workflow — new `.github/workflows/docs.yml` with gha cache on the Docker image, `generateDocs` + `dokkaGenerate` pre-steps, Antora in container, Pages deploy gated on `develop`. Delete `dokka-pages.yml`.
- Dokka bundle wiring — `bundleDokkaIntoSite` Copy task in root `build.gradle.kts`; invoked from workflow after Antora writes `docs/build/site/`.
Plan authored and saved locally before execution. Each commit verified with a local `docker run ... antora ... --failure-level=warn` build before pushing.
Out of scope
- Redesigning the docs content itself (conversions are mechanical, voice/style unchanged).
- Moving LLM-specific guides out of mainline — they stay here with a top-of-page cross-link to `SKaiNET-transformers`, following the repo-split policy from 2026-04-13.
- External link checking (noisy; add later).
- Publishing the Docker image to GHCR (transformers doesn't; keeping parity).
Goal
Migrate mainline SKaiNET's docs to Antora following Divio documentation principles (Tutorials / How-to / Reference / Explanation), add a GitHub Actions workflow to build and publish the site, integrate the existing Gradle-generated ops-docs (via the `generateDocs` custom task) into the Antora Reference section, and bundle the Dokka-generated API reference as a sibling `/api/` path of the Antora site. Use the same Docker image as `SKaiNET-transformers` (`node:20-alpine` + `@antora/cli` + `asciidoctor-kroki` + mermaid-cli via Chromium/Puppeteer).
Context
Several pre-staging signals show this migration was anticipated but never finished:
Mainline has Dokka 2.1.0 fully configured (`dokkaGenerate` aggregates ~21 modules), currently published to GitHub Pages via `dokka-pages.yml` which will be superseded by the new workflow.
Phased execution (6 commits)
Plan authored and saved locally before execution. Each commit verified with a local `docker run ... antora ... --failure-level=warn` build before pushing.
Out of scope