Clean up docs nav titles and default uv toolchain#91
Merged
Conversation
The Patterns section showed kebab-case titles inherited from the filenames (Tool-dispatch-as-node, Session-as-checkpoint-resume, Bypass-if-output-exists), inconsistent with "Parameterized entry point". Convert the nav labels, page H1s, and index catalog links to spaced titles. Filenames stay kebab-case: they are the canonical pattern slugs behind patterns.get() / patterns.list(), so the link targets and the public API surface are unchanged.
A plain `uv run mkdocs serve` failed because mkdocs lives in the docs dependency group, which uv does not sync by default. The docs and examples groups and the otel/langfuse extras were absent from the default environment. Add a [tool.uv] default-groups covering dev, docs, examples, and a new observability group. uv can default groups but not extras, so the observability group self-references the public otel/langfuse extras to pull them into the default-synced env. Regenerate uv.lock to record the new group.
There was a problem hiding this comment.
Pull request overview
Housekeeping PR that cleans up MkDocs nav/page titles for the Patterns section and configures uv's default-synced groups so uv run works out-of-the-box for docs, examples, and observability extras.
Changes:
- De-hyphenate Patterns nav labels, page H1s, and index catalog links (filenames unchanged).
- Add
[tool.uv] default-groupscovering dev/docs/examples plus a newobservabilitygroup self-referencingopenarmature[otel,langfuse]. - Regenerate
uv.lockto reflect the new group.
Reviewed changes
Copilot reviewed 6 out of 7 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| mkdocs.yml | Spaced titles for three Patterns nav entries. |
| docs/patterns/tool-dispatch-as-node.md | H1 de-hyphenated. |
| docs/patterns/session-as-checkpoint-resume.md | H1 de-hyphenated. |
| docs/patterns/bypass-if-output-exists.md | H1 de-hyphenated. |
| docs/patterns/index.md | Catalog link labels de-hyphenated. |
| pyproject.toml | New observability group and [tool.uv] default-groups. |
| uv.lock | Regenerated to include the new group. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
The de-hyphenate commit changed docs/patterns/ H1s but not the artifacts generated from them: src/openarmature/AGENTS.md and the src/openarmature/_patterns/ copies the patterns API serves. The drift test caught the mismatch in CI. Regenerate both via scripts/build_agents_md.py so the bundled recipe titles match the docs. Pattern slugs (filenames / API keys) are unchanged.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Two unrelated housekeeping changes, one commit each:
patterns.get()/patterns.list(), so link targets and the public API are unchanged.uv run mkdocs servefailed because the docs toolchain (and the examples / observability deps) is not in uv's default sync set. Added a[tool.uv]default-groupsfor dev/docs/examples plus a newobservabilitygroup that self-references the publicotel/langfuseextras (uv can default groups, not extras).uv.lockregenerated to match.Notes
uv syncinvocations now also pull the default groups, so each job installs a bit more than it strictly needs (harmless). A follow-up could add--no-default-groupswhere CI wants a lean env.Test plan
uv syncbrings up docs + examples + otel/langfuse in one envuv run mkdocs servebuilds and serves; Patterns nav shows spaced titlesuv run pytest -qgreen (CI)mkdocs build --strict) green (CI)