diff --git a/docs/linting.md b/docs/linting.md index 3c65a0a..01453a2 100644 --- a/docs/linting.md +++ b/docs/linting.md @@ -38,9 +38,18 @@ for the full list of available rules. Spell-checking is configured via [`.cspell.yaml`](https://github.com/demaconsulting/ContinuousCompliance/blob/main/templates/lint/.cspell.yaml) at the repository root. Key configuration highlights: -- Includes a project word list of common technical terms (tool names, identifiers) to prevent false positives +- Includes a project word list of genuine technical terms (tool names, identifiers) to prevent false positives - Excludes build artifacts and dependency directories (`node_modules`, `.git`, `bin`, `obj`, `.venv`) -- The word list should be extended with any project-specific terms as the project grows + +#### Word list policy + +**Never** add a word to the `.cspell.yaml` word list in order to silence a spell-checking failure. +Doing so defeats the purpose of spell-checking and reduces the quality of the repository. + +- If cspell flags a word that is **misspelled**, fix the spelling in the source file. +- If cspell flags a word that is a **genuine technical term** (tool name, project identifier, etc.) and is + spelled correctly, raise a **proposal** (e.g. open an issue or pull request) explaining why the word + should be added. The proposal must be reviewed and approved before the word is added to the list. ### yamllint diff --git a/templates/lint/.cspell.yaml b/templates/lint/.cspell.yaml index f07c94b..6a4b160 100644 --- a/templates/lint/.cspell.yaml +++ b/templates/lint/.cspell.yaml @@ -5,11 +5,14 @@ # - Maintain professional documentation and code quality # - Catch spelling errors before publication # - Support consistent technical terminology usage +# - Misspelled words should be fixed in the source +# - NEVER add a misspelled word to the 'words' list +# - PROPOSE only genuine technical terms/names as needed version: "0.2" language: en -# Project-specific technical terms and tool names (update as needed) +# Project-specific technical terms and tool names words: - reqstream - reviewmark