Enforce Oxford spelling with Typos - #35
Conversation
Generate the repository spelling policy from the shared Oxford dictionary, add focused phrase enforcement, and wire the gate into CI. Correct prose while preserving state-graph values, formal titles, executable examples, and machine literals.
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
WalkthroughAdd an en-GB spelling policy with generated configuration, a phrase-rollout checker, Makefile targets, CI checks, cache exclusions, contributor guidance, and documentation spelling corrections. ChangesSpelling enforcement
Sequence Diagram(s)sequenceDiagram
participant CI
participant Makefile
participant Typos
participant PhraseChecker
CI->>Makefile: run make spelling
Makefile->>Typos: check tracked Markdown with typos.toml
Makefile->>PhraseChecker: reject prohibited phrases
PhraseChecker-->>Makefile: return findings and exit status
Makefile-->>CI: report spelling result
Possibly related PRs
Poem
Caution Pre-merge checks failedPlease resolve all errors before merging. Addressing warnings is optional.
❌ Failed checks (2 errors, 3 warnings)
✅ Passed checks (15 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
|
@coderabbitai review |
✅ Action performedReview finished.
|
There was a problem hiding this comment.
Actionable comments posted: 4
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.github/workflows/ci.yml:
- Around line 21-22: Update the “Setup uv” step to add the supported version
input for the installed uv release, matching the repository’s configured
toolchain version; keep the existing pinned action revision unchanged.
In `@docs/repository-layout.md`:
- Around line 85-89: Update the repository layout documentation near the typos
policy entries to include .typos-oxendict-base.toml, noting its role as the
shared base consumed by scripts/typos_rollout_check.py and typos.toml; if it is
intentionally gitignored or internal, explicitly label it that way instead.
In `@Makefile`:
- Around line 102-105: Update the exception handler in typos_rollout_check.py to
use a parenthesized tuple for OSError and UnicodeDecodeError, ensuring the
spelling-helper-test Ruff validation passes under Python 3.
In `@scripts/typos_rollout_check.py`:
- Around line 234-237: Update the exception handler in the file-reading logic to
use a parenthesized tuple, changing the except clause around read_text to catch
both OSError and UnicodeDecodeError with valid Python 3 syntax while preserving
the existing continue behavior.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: c55f603c-b1bd-44ed-b730-9aed6e5a0579
📒 Files selected for processing (17)
.github/workflows/ci.yml.gitignore.markdownlint-cli2.jsoncAGENTS.mdMakefiledocs/adr/002-crate-layout-and-public-api.mddocs/complexity-antipatterns-and-refactoring-strategies.mddocs/developers-guide.mddocs/development-plan.mddocs/execplans/1-1-1-record-runtime-crate-split-as-adr.mddocs/repository-layout.mddocs/roadmap.mddocs/rust-testing-with-rstest-fixtures.mdscripts/tests/test_typos_rollout_check.pyscripts/typos_rollout_check.pytypos.local.tomltypos.toml
🔗 Linked repositories identified
CodeRabbit considers these linked repositories for cross-repo context during reviews:
leynos/rstest-bdd(auto-detected)
Pin uv, document the untracked shared dictionary cache, and align the phrase checker with the approved portable Python baseline.
All four inline findings were addressed in 902c1eb, the threads are resolved, CodeRabbit confirmed the fixes, and replacement hosted checks pass.
Summary
builder pinned to its reviewed merge commit
Typos 1.48.0 in the existing hosted build/test job
titles, executable examples, and machine literals
the repository's existing Rust 1.96 nightly
Validation
make spelling(3 focused tests, 95.45% coverage)make check-fmtmake check-state-graphsand byte-identical state JSON regenerationmake markdownlint(25 files, 0 errors)make check-diagrams/make nixiemake lint(Rustdoc, Clippy, and Whitaker)make typecheckmake test(61 Nextest tests and 7 doctests)make allmbake validate Makefilegit diff --checkCheckmake retains two unchanged recipe-length findings for the state-graph and
diagram checks.