docs: rewrite the documentation around the reader - #136
Merged
Merged
Conversation
The docs were an accurate design record written in the voice of one. This turns them into documentation: task-oriented, rationale separated from instruction, and with the pages a new user needs first actually present. Six new pages. `quickstart` runs the committed 660-pair fixture end to end and shows that run's real output. `cli` maps all 22 commands by task. `outputs` documents every file a run writes and every column in it -- the most-needed reference, previously spread across six pages. Plus `glossary`, `how_it_works` and `benchmarks`. `benchmarks` is now the single home for measured figures. Nothing was dropped: all 118 distinctive figures in the old README are accounted for in the new README plus docs, including the fine-grained V-coverage stratifications that only existed in `usage`. `usage` goes 847 -> 627 lines by linking rather than duplicating, and no longer prints the stage-vs-stage table CLAUDE.md warns is a retraction waiting to happen. README 999 -> 198 lines. It had become a second copy of the docs site, so every fact had two homes and one went stale. Voice. The `Never:` marker is an internal agent-instruction convention; it had leaked into 6 docs pages and -- more seriously -- into 21 user-facing CLI help strings and docstrings. Gone from both; code comments keep it. The emoji severity markers are Sphinx admonitions now, the self-referential postmortems are rewritten as the statements of fact they carried, and the landing page no longer publishes a local absolute path or an internal hostname. Verified: docs build under `sphinx-build -W` at zero warnings in a clean CI-matching env; every arda command and flag written into the new pages introspected against the CLI; ruff clean; 1,162 unit + 100 synthetic/realworld tests pass. No behaviour change -- the cli.py diff is help and docstring text only. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
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.
The docs were an accurate design record written in the voice of one. This turns them into documentation: task-oriented, rationale separated from instruction, and with the pages a new user needs first actually present.
What was wrong
Voice, and it was systematic rather than occasional:
Never:— a CLAUDE.md agent-instruction marker, meaningless to a reader--helpstringsshm,installation,usage, READMEusageStructure — the pages a new reader needs first did not exist. No quickstart (the entry point was
installation, opening on scikit-build-core's CMake caching). No CLI reference for 22 commands. No output reference, so "what is inclones.tsv" was spread across six pages. No glossary. Benchmarks in four places in three framings, including a stage-vs-stage tableCLAUDE.mditself warns is "a retraction waiting to happen". README at 999 lines was a second copy of the site.What changed
Six new pages.
quickstart(runs the committed 660-pair fixture end to end, every number is that run's real output),cli(all 22 commands by task),outputs(every file, every column),glossary,how_it_works,benchmarks.benchmarksis the single home for measured figures. Nothing dropped — all 118 distinctive figures from the old README are accounted for in the new README plus docs, including the fine-grained V-coverage stratifications that previously existed only inusage.usagegoes 847 → 627 lines by linking rather than duplicating.README 999 → 198 lines. What arda is, install, quick start, why, a link table.
cli.py:Never:removed from all 21 help strings and docstrings. Code comments keep it — that convention stays.Left alone deliberately:
skills/arda/references/*.md(23),src/ardacomments (111),integrationscomments (8) — agent- and developer-facing, not reader-facing docs.Verification
sphinx-build -W --keep-going→ zero warnings, in a clean env matching the docs CI job (sphinx + theme + polars + seqtree, no arda installed).CLAUDE.mdcalls out. No unknown command or flag.ruff check src/clean; 1,162 unit + 100 synthetic/realworld tests pass, 9 skipped (optionalolgaextra).cli.pydiff is help and docstring text only.🤖 Generated with Claude Code