Remove mikado frontmatter from closed chains, clarify finalization rules

During finalization, all mikado frontmatter (requires, status, branch) should
be removed — cards become plain documentation linked via wiki-links. Updated
agent-change-process docs and cleaned up 10 cards from closed chains. Also
fixed ai-docs referencing deleted plans/ files.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Erich Blume 2026-03-04 20:43:19 -08:00
commit 77a1ea15d2
15 changed files with 8 additions and 39 deletions

View file

@ -0,0 +1 @@
Clarify that all mikado frontmatter is removed during chain finalization; clean up stale frontmatter from closed chains; fix ai-docs exit code after plans directory retirement.

View file

@ -1,6 +1,6 @@
--- ---
title: Agent Change Process title: Agent Change Process
modified: 2026-03-03 modified: 2026-03-04
last-reviewed: 2026-02-23 last-reviewed: 2026-02-23
tags: tags:
- how-to - how-to
@ -203,10 +203,11 @@ When you discover a new prerequisite **or encounter an error** during code work,
When the final leaf node is closed and no `status: active` cards remain: When the final leaf node is closed and no `status: active` cards remain:
1. **Rewrite all Mikado cards** to reflect their nature as historical documentation: 1. **Rewrite all Mikado cards** to reflect their nature as historical documentation:
- **Remove all Mikado frontmatter** from every card in the chain: `requires:`, `status:`, and `branch:`. Cards become "just documentation" — the Mikado metadata served its purpose during the chain and should not persist.
- Cards can (and should) still link to one another via wiki-links in their body text, just not via frontmatter dependencies.
- Remove transient technical details (specific version numbers, temporary workarounds) that won't matter in the future - Remove transient technical details (specific version numbers, temporary workarounds) that won't matter in the future
- Frame the content as "what to do if someone wanted to repeat this process" - Frame the content as "what to do if someone wanted to repeat this process"
- Add appropriate context about what was learned - Add appropriate context about what was learned
- Remove `branch:` from the goal card frontmatter
2. **Add changelog information** in `docs/changelog.d/` 2. **Add changelog information** in `docs/changelog.d/`
3. Commit as `C2(<chain>): finalize ...` — this is the one permitted exception to the invariant's "no card changes after code" rule 3. Commit as `C2(<chain>): finalize ...` — this is the one permitted exception to the invariant's "no card changes after code" rule
4. The user reviews and merges the PR 4. The user reviews and merges the PR
@ -253,8 +254,9 @@ tags:
``` ```
- `status: active` marks in-progress work; remove when done (this is the ONLY way a card is marked complete) - `status: active` marks in-progress work; remove when done (this is the ONLY way a card is marked complete)
- `branch` is set on goal cards only, linking the card to its `mikado/<chain-stem>` branch. A goal card with `status: active` but no `branch` indicates a chain that is planned but not yet started. Remove `branch` when the chain is finalized. - `branch` is set on goal cards only, linking the card to its `mikado/<chain-stem>` branch. A goal card with `status: active` but no `branch` indicates a chain that is planned but not yet started.
- `requires` lists card stems (filenames without `.md`) that must be completed first. **Keep `requires` permanently** even after prerequisites are done — it documents the dependency graph history - `requires` lists card stems (filenames without `.md`) that must be completed first.
- **During finalization**, remove all Mikado frontmatter (`requires`, `status`, `branch`) from every card in the chain. Use wiki-links in body text to preserve cross-references.
- `required-by` is NOT stored — it's computed by `docs-mikado` - `required-by` is NOT stored — it's computed by `docs-mikado`
### Writing Cards ### Writing Cards

View file

@ -2,8 +2,6 @@
title: Generate Authentik API Clients title: Generate Authentik API Clients
modified: 2026-03-01 modified: 2026-03-01
last-reviewed: 2026-03-01 last-reviewed: 2026-03-01
requires:
- mirror-authentik-build-deps
tags: tags:
- how-to - how-to
- authentik - authentik

View file

@ -2,9 +2,6 @@
title: Build Authentik Go Server title: Build Authentik Go Server
modified: 2026-03-02 modified: 2026-03-02
last-reviewed: 2026-03-02 last-reviewed: 2026-03-02
requires:
- authentik-api-client-generation
- authentik-python-backend-derivation
tags: tags:
- how-to - how-to
- authentik - authentik

View file

@ -2,8 +2,6 @@
title: Build Authentik Python Backend title: Build Authentik Python Backend
modified: 2026-03-01 modified: 2026-03-01
last-reviewed: 2026-03-02 last-reviewed: 2026-03-02
requires:
- mirror-authentik-build-deps
tags: tags:
- how-to - how-to
- authentik - authentik

View file

@ -2,8 +2,6 @@
title: Build Authentik Web UI title: Build Authentik Web UI
modified: 2026-03-01 modified: 2026-03-01
last-reviewed: 2026-03-02 last-reviewed: 2026-03-02
requires:
- authentik-api-client-generation
tags: tags:
- how-to - how-to
- authentik - authentik

View file

@ -2,10 +2,6 @@
title: Build Authentik from Source title: Build Authentik from Source
modified: 2026-03-01 modified: 2026-03-01
last-reviewed: 2026-03-02 last-reviewed: 2026-03-02
requires:
- authentik-go-server-derivation
- authentik-web-ui-derivation
- authentik-python-backend-derivation
tags: tags:
- how-to - how-to
- authentik - authentik

View file

@ -2,11 +2,6 @@
title: Deploy Authentik Identity Provider title: Deploy Authentik Identity Provider
modified: 2026-02-23 modified: 2026-02-23
last-reviewed: 2026-02-23 last-reviewed: 2026-02-23
requires:
- build-authentik-container
- provision-authentik-database
- create-authentik-secrets
- migrate-grafana-to-authentik
tags: tags:
- how-to - how-to
- authentik - authentik

View file

@ -1,8 +1,5 @@
--- ---
title: Upgrade K8s Forgejo Runner to v12 title: Upgrade K8s Forgejo Runner to v12
requires:
- validate-workflows-against-v12
- review-runner-config-v12
modified: 2026-02-27 modified: 2026-02-27
last-reviewed: 2026-02-27 last-reviewed: 2026-02-27
tags: tags:

View file

@ -1,8 +1,5 @@
--- ---
title: Upgrade Grafana title: Upgrade Grafana
requires:
- kustomize-grafana-deployment
- build-grafana-container
modified: 2026-03-04 modified: 2026-03-04
last-reviewed: 2026-03-04 last-reviewed: 2026-03-04
tags: tags:

View file

@ -1,10 +1,6 @@
--- ---
title: Add Container Version Sync Check title: Add Container Version Sync Check
modified: 2026-02-20 modified: 2026-02-20
requires:
- pin-container-versions
- add-dagger-nix-build
- fix-ntfy-nix-version
tags: tags:
- how-to - how-to
- containers - containers

View file

@ -1,7 +1,6 @@
--- ---
title: Add Dagger Nix Build Function title: Add Dagger Nix Build Function
modified: 2026-02-20 modified: 2026-02-20
status:
tags: tags:
- how-to - how-to
- containers - containers

View file

@ -1,9 +1,6 @@
--- ---
title: Adopt Commit-Based Container Tags title: Adopt Commit-Based Container Tags
modified: 2026-02-20 modified: 2026-02-20
requires:
- add-container-version-sync-check
- install-dagger-on-nix-runner
tags: tags:
- how-to - how-to
- containers - containers

View file

@ -13,8 +13,6 @@ FILES=(
"$DOCS_DIR/reference/reference.md" "$DOCS_DIR/reference/reference.md"
"$DOCS_DIR/how-to/how-to.md" "$DOCS_DIR/how-to/how-to.md"
"$DOCS_DIR/how-to/operations/troubleshooting.md" "$DOCS_DIR/how-to/operations/troubleshooting.md"
"$DOCS_DIR/how-to/plans/plans.md"
"$DOCS_DIR/how-to/plans/completed/completed.md"
"$DOCS_DIR/explanation/explanation.md" "$DOCS_DIR/explanation/explanation.md"
"$DOCS_DIR/explanation/architecture.md" "$DOCS_DIR/explanation/architecture.md"
"$DOCS_DIR/tutorials/tutorials.md" "$DOCS_DIR/tutorials/tutorials.md"

View file

@ -107,7 +107,7 @@ def is_mikado_card(content: str) -> bool:
"""Check if file content has Mikado card frontmatter. """Check if file content has Mikado card frontmatter.
A file is a Mikado card if its YAML frontmatter contains any of: A file is a Mikado card if its YAML frontmatter contains any of:
- requires: (dependency list, kept permanently on cards) - requires: (dependency list for active chain cards)
- status: (e.g. 'active' for in-progress cards) - status: (e.g. 'active' for in-progress cards)
- branch: mikado/... (goal cards linking to their branch) - branch: mikado/... (goal cards linking to their branch)
""" """