Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
cca671e
docs: scaffold Material for MkDocs site, make targets, and Pages work…
sourcehawk Jun 1, 2026
7767ebc
docs: add landing page, getting-started stub, and fix out-of-tree lin…
sourcehawk Jun 1, 2026
64b9ee3
docs: address site preview feedback (cards, nav, duplicate TOC)
sourcehawk Jun 1, 2026
a882bd4
docs: rewrite concept pages to writing-docs standard
sourcehawk Jun 1, 2026
f4945d8
docs: add getting-started tutorial and rework landing page
sourcehawk Jun 1, 2026
9ff2388
docs: rewrite primitive reference pages to canonical template
sourcehawk Jun 1, 2026
cd9c3e8
docs: rewrite guidelines, testing, and compatibility guides
sourcehawk Jun 1, 2026
34e75a2
example: genericize version-matrix naming; sync testing docs
sourcehawk Jun 1, 2026
effe89a
docs: remove em dashes from rewritten pages
sourcehawk Jun 1, 2026
6046eaf
docs: strengthen landing page pitch and move navigation above it
sourcehawk Jun 1, 2026
312af06
docs: adopt feature.NewBooleanGate across docs and examples
sourcehawk Jun 1, 2026
51b9ebc
docs: show a concrete version-gated example in the getting-started note
sourcehawk Jun 1, 2026
bb53f95
example: demonstrate three-layer testing in mutations-and-gating
sourcehawk Jun 1, 2026
caf718a
docs: rework getting-started Step 6 to use the real factory and intro…
sourcehawk Jun 1, 2026
3048b31
example: standardize mutations-and-gating resource and component test…
sourcehawk Jun 2, 2026
9c79549
example: make resource and component tests consistent across examples
sourcehawk Jun 2, 2026
1d7603c
docs: restructure testing guide around the three testing layers
sourcehawk Jun 2, 2026
9555888
docs: simplify getting-started resource test to a plain golden
sourcehawk Jun 2, 2026
ac65c64
docs: fix testing guide snippets and a broken note admonition
sourcehawk Jun 2, 2026
d5cb667
docs: drop the manual FiringSet section in favor of goldengen.Resource
sourcehawk Jun 2, 2026
e8cda5d
docs: remove forward reference to FiringSet in the goldengen intro
sourcehawk Jun 2, 2026
92ac524
docs: clarify that AssertComplete checks coverage, not firing
sourcehawk Jun 2, 2026
ae99594
docs: add a summary table contrasting Requires, Forbids, and AssertCo…
sourcehawk Jun 2, 2026
9005415
docs: format the LoadMatrix call across lines in canonical gofmt style
sourcehawk Jun 2, 2026
b33c93e
docs: clarify that LoadMatrix specs are shared across versions and ne…
sourcehawk Jun 2, 2026
962c725
docs: show the buildUnit body in the LoadMatrix example
sourcehawk Jun 2, 2026
2b91c3d
docs: explain that Run invokes the LoadMatrix build function
sourcehawk Jun 2, 2026
b793711
docs: writing-docs pass on the testing guide
sourcehawk Jun 2, 2026
bcef93e
docs: realign the version-coverage guideline to recommend goldengen
sourcehawk Jun 2, 2026
83fdc7f
docs: render the component architecture block as a centered Mermaid d…
sourcehawk Jun 2, 2026
9c88015
docs: bold each node headline in the component architecture diagram
sourcehawk Jun 2, 2026
ca25af0
docs: clarify the WithResource-to-IncludeWhen untrack path and its ow…
sourcehawk Jun 2, 2026
d924789
docs: fix the plan-and-apply Mermaid sequence diagram not rendering
sourcehawk Jun 2, 2026
85cdd84
docs: adopt OrphanWhen in the component resource-options docs
sourcehawk Jun 2, 2026
d60c57c
docs: trim README to a minimal entry point that links to the docs site
sourcehawk Jun 2, 2026
ea9011a
ci: publish docs on release instead of on every default-branch merge
sourcehawk Jun 2, 2026
969119c
ci: scope Pages and OIDC permissions to the deploy job only
sourcehawk Jun 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
63 changes: 63 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Docs

# Pull requests build the site in strict mode to catch broken links and nav.
# The site is published only when a release is published (so it tracks the latest
# released version), or manually via workflow_dispatch.
on:
release:
types:
- published
pull_request:
workflow_dispatch:

# Least privilege: the top level (inherited by the PR build job) is read-only;
# the Pages and OIDC scopes are granted only to the deploy job below.
permissions:
Comment on lines +10 to +15
contents: read

concurrency:
group: pages
cancel-in-progress: false

jobs:
build:
name: Build site
runs-on: ubuntu-latest
steps:
- name: Clone the code
uses: actions/checkout@v6
with:
fetch-depth: 0

- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.x"

- name: Install docs dependencies
run: pip install -r requirements-docs.txt

- name: Build site (strict)
run: mkdocs build --strict

- name: Upload Pages artifact
if: github.event_name == 'release' || github.event_name == 'workflow_dispatch'
uses: actions/upload-pages-artifact@v3
with:
path: site

deploy:
name: Deploy to GitHub Pages
needs: build
if: github.event_name == 'release' || github.event_name == 'workflow_dispatch'
runs-on: ubuntu-latest
Comment on lines +46 to +53
permissions:
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Deploy
id: deployment
uses: actions/deploy-pages@v4
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -46,3 +46,6 @@ CLAUDE.md
posts
# Internal planning artifacts (specs/plans), keep local-only
docs/superpowers/

# MkDocs build output
site/
1 change: 1 addition & 0 deletions .tool-versions
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@ golang 1.25.6
golangci-lint 2.11.2
nodejs 25.1.0
kind 0.31.0
python 3.14.4
8 changes: 8 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,14 @@ $(PRETTIER): $(LOCALBIN)
chmod +x $(PRETTIER) ; \
}

.PHONY: docs-serve
docs-serve: ## Serve the documentation site locally with live reload.
mkdocs serve

.PHONY: docs-build
docs-build: ## Build the documentation site in strict mode.
mkdocs build --strict

.PHONY: lint ## Run all linters
lint: lint-go lint-md

Expand Down
Loading
Loading