Skip to content

docs: enforce public docstring coverage via ruff D1 and backfill#20

Merged
jeqcho merged 1 commit into
mainfrom
docs/public-docstring-gate
Jul 14, 2026
Merged

docs: enforce public docstring coverage via ruff D1 and backfill#20
jeqcho merged 1 commit into
mainfrom
docs/public-docstring-gate

Conversation

@jeqcho

@jeqcho jeqcho commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Adds Ruff's pydocstyle presence rules (D1) to the lint gate (D105/D107 exempt, tests excluded) and backfills the five missing public docstrings in config.py and embodiment.py (the SOArmDriver protocol stubs and the config bound properties). Ruff D1 is fully clean; interrogate shows 92.5% because it counts three deliberately exempted dunders.

Documented in CLAUDE.md and README, with the gate-backed docs-coverage badge.

All gates green locally: ruff check, ruff format, strict mypy, pytest at 100% branch coverage (82 passed).

Part of the org-wide rollout. Implemented by Codex (GPT), reviewed by Fable.

🤖 Generated with Claude Code

Add pydocstyle D1 rules to the ruff gate (D105/D107 ignored, tests
exempt) so every public module, class, and function must carry a
docstring stating its contract. Backfill the five missing docstrings
(SOArmConfig.low/.high, SOArmDriver protocol methods), add a docs
coverage badge, and document the gate in README and CLAUDE.md.

interrogate -s -i -n -p src: 80.0% before, 92.5% after (the remaining
misses are dunders the gate deliberately ignores: two __post_init__
and SOArmEmbodiment.__exit__).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@jeqcho
jeqcho merged commit e188740 into main Jul 14, 2026
12 checks passed
@jeqcho
jeqcho deleted the docs/public-docstring-gate branch July 14, 2026 01:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant