Files
actual/.github/actions/docs-spelling
Matiss Janis Aboltins e5747b2f2a [AI] Replace archived check-spelling action with typos for docs spell-check (#8249)
* [AI] Replace archived check-spelling action with typos for docs spell-check

The check-spelling/check-spelling action was archived upstream and shipped a
self-disabling "secpoll" kill-switch after a maintainer-account compromise
(2026-06-16), causing the Check Spelling (Docs) workflow to fail fatally with
a security-advisory error. There is no patched release to bump to.

Replace it with crate-ci/typos, which is actively maintained and runs entirely
from the checked-out tree (no PR-comment or bot-apply machinery, so the workflow
only needs contents: read):

- Rewrite .github/workflows/docs-spelling.yml to run crate-ci/typos, dropping
  the check-spelling comment/apply jobs and the pull_request_target trigger.
- Replace the check-spelling config files with typos.toml: scope to
  packages/docs, exclude auto-generated release notes and binary assets, and
  allowlist words typos otherwise mis-flags (HSA, Lage/lage, BA).
- Fix genuine typos surfaced in current docs (schedules.md, paying-in-full.md).
- Update the contributing guide and docs-writing skill to describe the new
  allowlist location.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DstzjPjGYdWMCG4jsrH6a1

* [AI] Add docs-spelling release note and format README

Fix the remaining CI checks on the spell-check migration:

- Add upcoming-release-notes/8249.md (Maintenance) so the "Release notes"
  check passes.
- Reformat .github/actions/docs-spelling/README.md with oxfmt so the lint
  ("Test") and autofix.ci checks pass (autofix.ci is not permitted to modify
  files under .github, so the formatting has to be committed directly).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DstzjPjGYdWMCG4jsrH6a1

* [AI] Disable credential persistence in docs-spelling checkout

Address the code-scanning (zizmor) and CodeRabbit review finding: the
read-only spell-check job performs no authenticated git operations, so set
persist-credentials: false on actions/checkout as a hardening measure.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DstzjPjGYdWMCG4jsrH6a1

---------

Co-authored-by: Claude <noreply@anthropic.com>
2026-06-17 19:19:13 +00:00
..

Docs spell-checking configuration

The documentation under packages/docs is spell-checked by the crate-ci/typos action, wired up in .github/workflows/docs-spelling.yml.

File Purpose
typos.toml typos configuration: the allowlist of accepted words and the list of excluded files

How it works

typos only reports high-confidence misspellings from its built-in correction dictionary, so — unlike the previous check-spelling setup — proper nouns, bank codes, and abbreviations usually do not need to be added to an allowlist. Add an entry only when typos flags something that is actually correct.

Allowing a word

Add it to [default.extend-words] in typos.toml, mapped to itself:

[default.extend-words]
HSA = "HSA"

Excluding a file

Add a glob to extend-exclude under [files] in typos.toml.

See the typos documentation for the full configuration reference.

Why not check-spelling?

The repository previously used check-spelling/check-spelling. That project's upstream repository was archived and shipped a self-disabling "secpoll" kill-switch following a maintainer-account compromise on 2026-06-16, which made every workflow pinned to it fail fatally. typos is actively maintained and runs entirely from the checked-out tree without any PR-comment or bot machinery.