Enforce Oxford spelling with Typos#65
Conversation
There was a problem hiding this comment.
Sorry @leynos, your pull request is larger than the review limit of 150000 diff characters
|
Warning Review limit reachedYou’ve reached a temporary PR review limit under our Fair Usage Limits Policy. Next review available in: 46 minutes Your organization has reached its usage spending cap. Adjust your spending cap in the billing tab. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (88)
WalkthroughThe pull request adds Oxford/en-GB spelling enforcement, exact phrase checking, Mermaid validation, pinned CI tooling, generated Typos policies, and terminology updates across source code, documentation, localisation strings, tests, and snapshots. ChangesSpelling policy and validation
Terminology and content consistency
Possibly related PRs
Poem
Caution Pre-merge checks failedPlease resolve all errors before merging. Addressing warnings is optional.
❌ Failed checks (3 errors, 6 warnings)
✅ Passed checks (11 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
* Repair TypeScript dependency baseline Align the Playwright type dependency and accessibility snapshot helper with the installed 1.61 API. Update MapLibre typing and lifecycle narrowing, then regenerate the four focused ARIA snapshots. Use the explicit roles exposed by Happy DOM 20 in routed-flow tests and add the canonical Python compilation artefact ignore rules. * Fix accessibility review findings Remove redundant icon labels so bottom-navigation controls expose one accessible name, and refresh only the affected ARIA snapshots. Document the raw Playwright snapshot boundary and align the related test module and design documentation with the implemented accessibility flow. --------- Co-authored-by: leynos <leynos@rohga>
Adopt the shared generated Oxford dictionary, correct the repository corpus, and wire pinned spelling, Markdown and diagram checks into local and hosted validation. Keep generated policy deterministic, reject `hand-written` prose and ignore Python compilation artefacts without tracking bytecode.
Protect exact CSS snapshot property keys through narrow generated Typos rules, without masking ordinary prose. Reflow the affected Oxford documentation so the rollout introduces no new Markdown findings after rebasing onto the repaired accessibility baseline.
3486c8b to
d7f3721
Compare
There was a problem hiding this comment.
Sorry @leynos, your pull request is larger than the review limit of 150000 diff characters
|
@coderabbitai full review |
✅ Action performedFull review finished. |
There was a problem hiding this comment.
Actionable comments posted: 20
🤖 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/semantic-lint.yml:
- Around line 38-39: Remove the separate “Install Nixie” step from the workflow
and rely on the existing make nixie target to provision Nixie under
UV_TOOL_DIR=.uv-tools. Do not add another installation command or alternate tool
directory.
In `@docs/building-accessible-and-responsive-progressive-web-applications.md`:
- Line 671: Complete the Perceivable continuation row in the accessibility
checklist table by adding an empty first category cell, ensuring it has four
cells matching the table header and preserves the existing content in the
remaining columns.
In `@docs/daisyui-v5-guide.md`:
- Line 37: Update the usage-rule example in the daisyUI customization guidance
by adding a comma after “For example,” rewriting the clause to say it
“forcefully sets a custom background colour on a `btn`,” and ending the sentence
with a full stop.
- Line 891: Replace the ambiguous “- suggestion -” separators in the guidance
text at both documented occurrences with clear prose using either “Suggestion:
use...” or “Suggestion — use...”, preserving the existing recommendation.
- Around line 123-132: Update the colour-rules prose in the numbered list:
change line 123 to say “based on the theme,” add a comma before “so” on line
126, use proper dash punctuation and “the dark theme” on line 129, and revise
line 132 to say “the majority” with a full stop.
- Around line 107-109: Update the base-100, base-200, and base-300 entries in
the guide to remove the duplicated numeric suffixes after each label. Correct
base-300 to use “an even darker shade” and preserve the intended descriptions
with clear grammar.
- Around line 99-118: Update the colour-name list entries in the daisyUI v5
guide to use consistent sentence punctuation and capitalization: replace
comma-separated fragments with a colon or full stop, and lowercase the
continuation text. Apply this consistently to the entries from primary through
error-content, including correcting the malformed base-100, base-200, and
base-300 descriptions.
- Around line 96-98: Add blank lines immediately before and after each affected
heading in the daisyUI colour documentation, including the headings near lines
96, 98, 120, and 134. Preserve all existing heading text and levels while
satisfying MD022.
In `@docs/developers-guide.md`:
- Around line 71-76: Update the documented typos-config-builder revision in the
generator description to b604f198797fdd36a567dd0f8f07b13f9539b241, replacing the
outdated pinned commit while preserving the surrounding generation and cache
documentation.
In `@docs/high-velocity-accessibility-first-component-testing.md`:
- Line 623: Restore the synthesis table around the changed comparison row as
valid Markdown, including its header and four consistently delimited columns
using | separators. Preserve the intended wording change while ensuring each row
is properly separated and renders as a scannable table.
- Line 722: Update the axe-core documentation note in the referenced
accessibility testing document to use the valid rule name “color-contrast” or
rewrite the term as “colour contrast” in prose; do not retain the invalid
hyphenated “colour-contrast” wording.
- Line 35: Update the documentation paragraph describing the Node-based
accessibility test workflow: restrict tsgo to transpilation or type-checking,
and explicitly identify the separate Node runner or loader responsible for
executing the *.a11y.test.tsx tests. Preserve the existing JSDOM, component
rendering, axe-core, and reporting flow.
In `@docs/tailwind-v4-guide.md`:
- Line 98: Update the changed headings in docs/tailwind-v4-guide.md, including
“Default Behaviour Changes” and the listed affected headings, to have blank
lines before and after each heading. Also add blank lines immediately before and
after the ring-offset-* fenced code block so the document satisfies MD022 and
MD031.
- Line 98: Update the changed Markdown headings in docs/tailwind-v4-guide.md to
sentence case, including headings such as “Default behaviour changes” and
“Modern colour system.” Apply the same casing consistently to all headings
identified by the review comment, preserving their wording otherwise.
- Line 281: Update the nearby example prose under “Leverage the New Colour
System” from “Vivid colors on modern displays” to “Vivid colours on modern
displays.” Preserve API identifiers such as color-mix() and --color-* unchanged.
In `@Makefile`:
- Around line 66-69: Update the Makefile’s nixie target to invoke $(NIXIE) with
configurable NIXIE_ARGS and no hardcoded --no-sandbox flag, so local runs retain
sandboxing; then set NIXIE_ARGS=--no-sandbox in the CI workflow’s nixie
invocation.
In `@scripts/tests/test_typos_rollout_check.py`:
- Around line 104-121: Extend test_main_reports_location_and_exit_two’s test
coverage with an allowed-text fixture containing no prohibited phrase, then
invoke checker.main with that repository and assert it returns zero and produces
no stdout. Keep the existing prohibited-text diagnostic assertions unchanged.
In `@scripts/typos_rollout_check.py`:
- Around line 87-108: Update _phrases and its callers to reject malformed
phrase-policy data: require [phrases] and [phrases.corrections] to be tables and
every correction value to be a string, raising the existing validation error
rather than returning an empty mapping. Apply the same validation to both shared
and local policy parsing paths, and add regression tests covering malformed
shared and local policies.
In `@src/app/lib/localization-runtime.ts`:
- Around line 64-68: Add a regression test for coerceLocaleCode covering the
mixed-case input "EN-gb" and assert that it returns the canonical locale code
"en-GB". Place it with the existing localization runtime unit tests and follow
their established test structure.
In `@tests/explore-data.test.ts`:
- Around line 19-23: Update the failure message inside expectHasLocalizations to
use “missing localization for ${code}” instead of the stale “localisation”
spelling, aligning the diagnostic with the repository’s spelling policy.
🪄 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: cc90f2f7-af64-42d3-a256-3447f93caf23
📒 Files selected for processing (88)
.github/workflows/semantic-lint.yml.gitignoreAGENTS.mdMakefiledocs/building-accessible-and-responsive-progressive-web-applications.mddocs/daisyui-v5-guide.mddocs/data-model-driven-card-architecture.mddocs/developers-guide.mddocs/enforcing-semantic-tailwind-best-practice.mddocs/high-velocity-accessibility-first-component-testing.mddocs/pure-accessible-and-localizable-react-components.mddocs/semantic-tailwind-with-daisyui-best-practice.mddocs/tailwind-v3-v4-migration-guide.mddocs/tailwind-v4-guide.mddocs/wildside-mockup-design.mdpublic/locales/en-GB/common.ftlscripts/find-near-duplicate-classes.tsscripts/tests/test_typos_rollout_check.pyscripts/typos_rollout_check.pysrc/app/components/section-heading.tsxsrc/app/components/slider-control.tsxsrc/app/components/wildside-map.tsxsrc/app/data/customize.tssrc/app/data/registries/difficulties.tssrc/app/data/registries/interests.tssrc/app/data/registries/tags.tssrc/app/data/safety-fixtures.tssrc/app/data/stage-four-offline.tssrc/app/data/walk-complete-moment-localizations.tssrc/app/data/wizard-localizations.tssrc/app/data/wizard-route-localizations.tssrc/app/data/wizard-stop-localizations.tssrc/app/data/wizard-weather-localizations.tssrc/app/data/wizard.tssrc/app/domain/entities/localization.tssrc/app/features/customize/customize-screen.tsxsrc/app/features/customize/customize-sections.tsxsrc/app/features/customize/index.tssrc/app/features/customize/segment-toggle-card.tsxsrc/app/features/customize/use-customize-data.tssrc/app/features/explore/explore-community.tsxsrc/app/features/explore/explore-trending.tsxsrc/app/features/map/itinerary/hooks/use-itinerary-data.tssrc/app/features/map/saved/hooks/use-route-formatters.tssrc/app/features/map/saved/hooks/use-route-metrics.tssrc/app/features/map/saved/use-saved-route-data.tssrc/app/features/offline/hooks/use-offline-localizations.tssrc/app/features/safety/use-safety-data.tssrc/app/features/walk-complete/components/walk-complete-hero.tsxsrc/app/features/walk-complete/components/walk-complete-moments.tsxsrc/app/features/walk-complete/hooks/use-walk-complete-translations.tssrc/app/i18n/descriptors.tssrc/app/lib/localization-runtime.tssrc/app/lib/relative-time.tssrc/app/lib/time.tssrc/app/observability/logger.tssrc/app/routes/customize/route.tsxsrc/app/units/unit-system.tssrc/app/units/use-unit-formatters.tssrc/i18n.tstests/customize-localization.behaviour.test.tsxtests/descriptor-lookups.test.tstests/e2e/accessibility-snapshots.pw.ts-snapshots/customize-aria-tree-chromium-linux.jsontests/e2e/stage4.pw.tstests/explore-components.test.tsxtests/explore-data.test.tstests/explore-models.test.tstests/fluent-quick-walk-duration.test.tstests/format-slider-value.test.tstests/helpers/resolveLocalization.tstests/i18n-load-path.test.tstests/interest-components.test.tsxtests/interest-registry.test.tstests/interest-toggle-group.test.tsxtests/localization-runtime.test.tstests/map-state-provider.test.tstests/pick-localization.test.tstests/routes.stage1.test.tsxtests/safety-hooks.test.tsxtests/support/i18n-test-runtime.tstests/walk-complete.energy.test.tsxtests/walk-completion-data.test.tstests/wizard-route-stats.copy.test.tstests/wizard-step-one.markers.test.tsxtests/wizard-step-three-localization.test.tsxtypos.local.tomltypos.tomlvite.config.ts
Harden phrase-policy validation and error reporting, add focused regression coverage, and keep Nixie provisioning under a single configurable authority. Repair the reviewed documentation, tables, module headers, terminology, and Oxford-versus-API spelling boundaries without expanding shared tooling scope.
|
Review follow-up for exact repair head
Sequential Scrutineer validation is Green: lint, type-check, 202 unit tests, 5 accessibility tests, Fluent and semantic checks, token and production builds, spelling/config generation, Nixie 1.1.0 with Merman 0.7.0, YAML, Actionlint, Mbake, workflow authority and Python-artefact audits. Local E2E remains the established nonconfigured baseline because Chromium is absent; all 17 cases stop before application execution. No replacement review or merge is being requested while replacement hosted checks are still running. |
Group the policy path and malformed TOML as one typed case value so the parameterized test stays within the repository argument-count limit without weakening its five regression cases.
|
@coderabbitai resume |
✅ Action performedReviews resumed. |
Summary
This branch enforces en-GB-oxendict spelling across the repository using the
shared generated Typos dictionary. It corrects the existing corpus, prohibits
hand-writtenin favour ofhandwritten, adds deterministic policy checks andwires pinned Nixie 1.1.0 and Merman 0.7.0 validation into the semantic workflow.
It also ensures that Python compilation artefacts are ignored through the
canonical
__pycache__/,*.py[cod]and*$py.classrules, with no trackedbytecode.
No matching implementation issue, roadmap task or execplan was found.
Review walkthrough
Validation
bd06cde; the narrow policy overlay protects exact CSS property keysbackground-colorandborder-top-colorwithout masking ordinary prose.b604f198, base authority1f5d06a4and deterministic configuration checks passed.typos, prohibited-phrase enforcement andhandwrittenpolicy passed. The existing Markdownlint baseline improves to 2,177 findings from 2,226 on exact main, with no rollout-added findings..coverageor bytecode residue.Notes
The pull request is ready for review. Merge remains gated on replacement hosted
checks and a fresh exact-head CodeRabbit review with no outstanding actionable
comments.