@redocly/recheck 0.1.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1023 -56
- package/dist/cli.js +40 -7
- package/dist/cli.js.map +1 -1
- package/dist/commands/markdoc-schema.d.ts +17 -0
- package/dist/commands/markdoc-schema.d.ts.map +1 -0
- package/dist/commands/markdoc-schema.js +127 -0
- package/dist/commands/markdoc-schema.js.map +1 -0
- package/dist/commands/run.d.ts +2 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +87 -10
- package/dist/commands/run.js.map +1 -1
- package/dist/config/load.d.ts +11 -0
- package/dist/config/load.d.ts.map +1 -1
- package/dist/config/load.js +12 -2
- package/dist/config/load.js.map +1 -1
- package/dist/config/presets/google.d.ts +3 -0
- package/dist/config/presets/google.d.ts.map +1 -0
- package/dist/config/presets/google.js +1671 -0
- package/dist/config/presets/google.js.map +1 -0
- package/dist/config/presets/inclusive-language.d.ts +3 -0
- package/dist/config/presets/inclusive-language.d.ts.map +1 -0
- package/dist/config/presets/inclusive-language.js +321 -0
- package/dist/config/presets/inclusive-language.js.map +1 -0
- package/dist/config/presets/index.d.ts +67 -0
- package/dist/config/presets/index.d.ts.map +1 -0
- package/dist/config/presets/index.js +137 -0
- package/dist/config/presets/index.js.map +1 -0
- package/dist/config/presets/markdoc.d.ts +21 -0
- package/dist/config/presets/markdoc.d.ts.map +1 -0
- package/dist/config/presets/markdoc.js +101 -0
- package/dist/config/presets/markdoc.js.map +1 -0
- package/dist/config/presets/markdown-relaxed.d.ts +3 -0
- package/dist/config/presets/markdown-relaxed.d.ts.map +1 -0
- package/dist/config/presets/markdown-relaxed.js +98 -0
- package/dist/config/presets/markdown-relaxed.js.map +1 -0
- package/dist/config/presets/markdown.d.ts +43 -0
- package/dist/config/presets/markdown.d.ts.map +1 -0
- package/dist/config/presets/markdown.js +132 -0
- package/dist/config/presets/markdown.js.map +1 -0
- package/dist/config/presets/microsoft.d.ts +3 -0
- package/dist/config/presets/microsoft.d.ts.map +1 -0
- package/dist/config/presets/microsoft.js +2268 -0
- package/dist/config/presets/microsoft.js.map +1 -0
- package/dist/config/presets/minimal.d.ts +3 -0
- package/dist/config/presets/minimal.d.ts.map +1 -0
- package/dist/config/presets/minimal.js +21 -0
- package/dist/config/presets/minimal.js.map +1 -0
- package/dist/config/presets/plain-language.d.ts +3 -0
- package/dist/config/presets/plain-language.d.ts.map +1 -0
- package/dist/config/presets/plain-language.js +351 -0
- package/dist/config/presets/plain-language.js.map +1 -0
- package/dist/config/presets/prose.d.ts +52 -0
- package/dist/config/presets/prose.d.ts.map +1 -0
- package/dist/config/presets/prose.js +138 -0
- package/dist/config/presets/prose.js.map +1 -0
- package/dist/config/schema.d.ts +128 -22
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +105 -21
- package/dist/config/schema.js.map +1 -1
- package/dist/config/validate.d.ts +12 -2
- package/dist/config/validate.d.ts.map +1 -1
- package/dist/config/validate.js +1200 -44
- package/dist/config/validate.js.map +1 -1
- package/dist/core/auto-fix.d.ts +8 -13
- package/dist/core/auto-fix.d.ts.map +1 -1
- package/dist/core/auto-fix.js +94 -75
- package/dist/core/auto-fix.js.map +1 -1
- package/dist/core/case-preserve.d.ts +46 -0
- package/dist/core/case-preserve.d.ts.map +1 -0
- package/dist/core/case-preserve.js +57 -0
- package/dist/core/case-preserve.js.map +1 -0
- package/dist/core/directives.d.ts +9 -0
- package/dist/core/directives.d.ts.map +1 -0
- package/dist/core/directives.js +73 -0
- package/dist/core/directives.js.map +1 -0
- package/dist/core/files.d.ts +63 -0
- package/dist/core/files.d.ts.map +1 -1
- package/dist/core/files.js +185 -0
- package/dist/core/files.js.map +1 -1
- package/dist/core/inline-code.d.ts +87 -0
- package/dist/core/inline-code.d.ts.map +1 -0
- package/dist/core/inline-code.js +104 -0
- package/dist/core/inline-code.js.map +1 -0
- package/dist/core/line-endings.d.ts +32 -0
- package/dist/core/line-endings.d.ts.map +1 -0
- package/dist/core/line-endings.js +65 -0
- package/dist/core/line-endings.js.map +1 -0
- package/dist/core/markdoc-tags.d.ts +79 -0
- package/dist/core/markdoc-tags.d.ts.map +1 -0
- package/dist/core/markdoc-tags.js +131 -0
- package/dist/core/markdoc-tags.js.map +1 -0
- package/dist/core/rule-filters.d.ts +17 -0
- package/dist/core/rule-filters.d.ts.map +1 -1
- package/dist/core/rule-filters.js +64 -0
- package/dist/core/rule-filters.js.map +1 -1
- package/dist/core/runner.d.ts +92 -3
- package/dist/core/runner.d.ts.map +1 -1
- package/dist/core/runner.js +348 -110
- package/dist/core/runner.js.map +1 -1
- package/dist/core/timing.d.ts.map +1 -1
- package/dist/data/markdoc-realm-schema.d.ts +3 -0
- package/dist/data/markdoc-realm-schema.d.ts.map +1 -0
- package/dist/data/markdoc-realm-schema.js +760 -0
- package/dist/data/markdoc-realm-schema.js.map +1 -0
- package/dist/data/proper-nouns.d.ts +2 -0
- package/dist/data/proper-nouns.d.ts.map +1 -0
- package/dist/data/proper-nouns.js +47 -0
- package/dist/data/proper-nouns.js.map +1 -0
- package/dist/index.d.ts +90 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +152 -0
- package/dist/index.js.map +1 -0
- package/dist/metrics/formulas.d.ts +17 -0
- package/dist/metrics/formulas.d.ts.map +1 -0
- package/dist/metrics/formulas.js +70 -0
- package/dist/metrics/formulas.js.map +1 -0
- package/dist/metrics/index.d.ts +5 -0
- package/dist/metrics/index.d.ts.map +1 -0
- package/dist/metrics/index.js +3 -0
- package/dist/metrics/index.js.map +1 -0
- package/dist/metrics/statistics.d.ts +27 -0
- package/dist/metrics/statistics.d.ts.map +1 -0
- package/dist/metrics/statistics.js +56 -0
- package/dist/metrics/statistics.js.map +1 -0
- package/dist/parser/index.d.ts +18 -0
- package/dist/parser/index.d.ts.map +1 -0
- package/dist/parser/index.js +168 -0
- package/dist/parser/index.js.map +1 -0
- package/dist/parser/markdoc/extract-statics.d.ts +45 -0
- package/dist/parser/markdoc/extract-statics.d.ts.map +1 -0
- package/dist/parser/markdoc/extract-statics.js +139 -0
- package/dist/parser/markdoc/extract-statics.js.map +1 -0
- package/dist/parser/markdoc/pairing.d.ts +63 -0
- package/dist/parser/markdoc/pairing.d.ts.map +1 -0
- package/dist/parser/markdoc/pairing.js +94 -0
- package/dist/parser/markdoc/pairing.js.map +1 -0
- package/dist/parser/markdoc/schema.d.ts +85 -0
- package/dist/parser/markdoc/schema.d.ts.map +1 -0
- package/dist/parser/markdoc/schema.js +86 -0
- package/dist/parser/markdoc/schema.js.map +1 -0
- package/dist/parser/markdoc/span.d.ts +64 -0
- package/dist/parser/markdoc/span.d.ts.map +1 -0
- package/dist/parser/markdoc/span.js +729 -0
- package/dist/parser/markdoc/span.js.map +1 -0
- package/dist/parser/markdoc/structure.d.ts +28 -0
- package/dist/parser/markdoc/structure.d.ts.map +1 -0
- package/dist/parser/markdoc/structure.js +153 -0
- package/dist/parser/markdoc/structure.js.map +1 -0
- package/dist/parser/markdoc/syntax.d.ts +44 -0
- package/dist/parser/markdoc/syntax.d.ts.map +1 -0
- package/dist/parser/markdoc/syntax.js +317 -0
- package/dist/parser/markdoc/syntax.js.map +1 -0
- package/dist/parser/types.d.ts +18 -0
- package/dist/parser/types.d.ts.map +1 -0
- package/dist/parser/types.js.map +1 -0
- package/dist/reporter/fixes.d.ts.map +1 -1
- package/dist/reporter/fixes.js +22 -1
- package/dist/reporter/fixes.js.map +1 -1
- package/dist/reporter/statistics.d.ts +1 -8
- package/dist/reporter/statistics.d.ts.map +1 -1
- package/dist/reporter/statistics.js.map +1 -1
- package/dist/rules/registry.d.ts +15 -0
- package/dist/rules/registry.d.ts.map +1 -0
- package/dist/rules/registry.js +81 -0
- package/dist/rules/registry.js.map +1 -0
- package/dist/rules/scope/capitalization.d.ts +3 -0
- package/dist/rules/scope/capitalization.d.ts.map +1 -0
- package/dist/rules/scope/capitalization.js +163 -0
- package/dist/rules/scope/capitalization.js.map +1 -0
- package/dist/rules/scope/conditional.d.ts +3 -0
- package/dist/rules/scope/conditional.d.ts.map +1 -0
- package/dist/rules/scope/conditional.js +112 -0
- package/dist/rules/scope/conditional.js.map +1 -0
- package/dist/rules/scope/consistency.d.ts +3 -0
- package/dist/rules/scope/consistency.d.ts.map +1 -0
- package/dist/rules/scope/consistency.js +178 -0
- package/dist/rules/scope/consistency.js.map +1 -0
- package/dist/rules/scope/length.d.ts +3 -0
- package/dist/rules/scope/length.d.ts.map +1 -0
- package/dist/rules/scope/length.js +69 -0
- package/dist/rules/scope/length.js.map +1 -0
- package/dist/rules/scope/max-image-size.d.ts +3 -0
- package/dist/rules/scope/max-image-size.d.ts.map +1 -0
- package/dist/rules/scope/max-image-size.js +65 -0
- package/dist/rules/scope/max-image-size.js.map +1 -0
- package/dist/rules/scope/metric.d.ts +17 -0
- package/dist/rules/scope/metric.d.ts.map +1 -0
- package/dist/rules/scope/metric.js +216 -0
- package/dist/rules/scope/metric.js.map +1 -0
- package/dist/rules/scope/occurrence.d.ts +3 -0
- package/dist/rules/scope/occurrence.d.ts.map +1 -0
- package/dist/rules/scope/occurrence.js +48 -0
- package/dist/rules/scope/occurrence.js.map +1 -0
- package/dist/rules/scope/pattern.d.ts +3 -0
- package/dist/rules/scope/pattern.d.ts.map +1 -0
- package/dist/rules/scope/pattern.js +75 -0
- package/dist/rules/scope/pattern.js.map +1 -0
- package/dist/rules/scope/repetition.d.ts +3 -0
- package/dist/rules/scope/repetition.d.ts.map +1 -0
- package/dist/rules/scope/repetition.js +139 -0
- package/dist/rules/scope/repetition.js.map +1 -0
- package/dist/rules/scope/semantic-line-breaks.d.ts +3 -0
- package/dist/rules/scope/semantic-line-breaks.d.ts.map +1 -0
- package/dist/rules/scope/semantic-line-breaks.js +213 -0
- package/dist/rules/scope/semantic-line-breaks.js.map +1 -0
- package/dist/rules/scope/spelling.d.ts +27 -0
- package/dist/rules/scope/spelling.d.ts.map +1 -0
- package/dist/rules/scope/spelling.js +227 -0
- package/dist/rules/scope/spelling.js.map +1 -0
- package/dist/rules/scope/swap.d.ts +3 -0
- package/dist/rules/scope/swap.d.ts.map +1 -0
- package/dist/rules/scope/swap.js +149 -0
- package/dist/rules/scope/swap.js.map +1 -0
- package/dist/rules/scope/title-case.d.ts +46 -0
- package/dist/rules/scope/title-case.d.ts.map +1 -0
- package/dist/rules/scope/title-case.js +301 -0
- package/dist/rules/scope/title-case.js.map +1 -0
- package/dist/rules/token/blanks-around-fences.d.ts +3 -0
- package/dist/rules/token/blanks-around-fences.d.ts.map +1 -0
- package/dist/rules/token/blanks-around-fences.js +44 -0
- package/dist/rules/token/blanks-around-fences.js.map +1 -0
- package/dist/rules/token/blanks-around-headings.d.ts +3 -0
- package/dist/rules/token/blanks-around-headings.d.ts.map +1 -0
- package/dist/rules/token/blanks-around-headings.js +108 -0
- package/dist/rules/token/blanks-around-headings.js.map +1 -0
- package/dist/rules/token/blanks-around-lists.d.ts +3 -0
- package/dist/rules/token/blanks-around-lists.d.ts.map +1 -0
- package/dist/rules/token/blanks-around-lists.js +56 -0
- package/dist/rules/token/blanks-around-lists.js.map +1 -0
- package/dist/rules/token/blanks-around-tables.d.ts +3 -0
- package/dist/rules/token/blanks-around-tables.d.ts.map +1 -0
- package/dist/rules/token/blanks-around-tables.js +42 -0
- package/dist/rules/token/blanks-around-tables.js.map +1 -0
- package/dist/rules/token/code-block-style.d.ts +3 -0
- package/dist/rules/token/code-block-style.d.ts.map +1 -0
- package/dist/rules/token/code-block-style.js +30 -0
- package/dist/rules/token/code-block-style.js.map +1 -0
- package/dist/rules/token/code-fence-style.d.ts +3 -0
- package/dist/rules/token/code-fence-style.d.ts.map +1 -0
- package/dist/rules/token/code-fence-style.js +35 -0
- package/dist/rules/token/code-fence-style.js.map +1 -0
- package/dist/rules/token/commands-show-output.d.ts +3 -0
- package/dist/rules/token/commands-show-output.d.ts.map +1 -0
- package/dist/rules/token/commands-show-output.js +38 -0
- package/dist/rules/token/commands-show-output.js.map +1 -0
- package/dist/rules/token/descriptive-link-text.d.ts +3 -0
- package/dist/rules/token/descriptive-link-text.d.ts.map +1 -0
- package/dist/rules/token/descriptive-link-text.js +53 -0
- package/dist/rules/token/descriptive-link-text.js.map +1 -0
- package/dist/rules/token/emphasis-style.d.ts +3 -0
- package/dist/rules/token/emphasis-style.d.ts.map +1 -0
- package/dist/rules/token/emphasis-style.js +51 -0
- package/dist/rules/token/emphasis-style.js.map +1 -0
- package/dist/rules/token/fenced-code-language.d.ts +3 -0
- package/dist/rules/token/fenced-code-language.d.ts.map +1 -0
- package/dist/rules/token/fenced-code-language.js +35 -0
- package/dist/rules/token/fenced-code-language.js.map +1 -0
- package/dist/rules/token/first-line-h1.d.ts +3 -0
- package/dist/rules/token/first-line-h1.d.ts.map +1 -0
- package/dist/rules/token/first-line-h1.js +107 -0
- package/dist/rules/token/first-line-h1.js.map +1 -0
- package/dist/rules/token/heading-increment.d.ts +3 -0
- package/dist/rules/token/heading-increment.d.ts.map +1 -0
- package/dist/rules/token/heading-increment.js +27 -0
- package/dist/rules/token/heading-increment.js.map +1 -0
- package/dist/rules/token/heading-start-left.d.ts +3 -0
- package/dist/rules/token/heading-start-left.d.ts.map +1 -0
- package/dist/rules/token/heading-start-left.js +31 -0
- package/dist/rules/token/heading-start-left.js.map +1 -0
- package/dist/rules/token/heading-style.d.ts +3 -0
- package/dist/rules/token/heading-style.d.ts.map +1 -0
- package/dist/rules/token/heading-style.js +41 -0
- package/dist/rules/token/heading-style.js.map +1 -0
- package/dist/rules/token/helpers.d.ts +313 -0
- package/dist/rules/token/helpers.d.ts.map +1 -0
- package/dist/rules/token/helpers.js +746 -0
- package/dist/rules/token/helpers.js.map +1 -0
- package/dist/rules/token/hr-style.d.ts +3 -0
- package/dist/rules/token/hr-style.d.ts.map +1 -0
- package/dist/rules/token/hr-style.js +28 -0
- package/dist/rules/token/hr-style.js.map +1 -0
- package/dist/rules/token/index.d.ts +75 -0
- package/dist/rules/token/index.d.ts.map +1 -0
- package/dist/rules/token/index.js +226 -0
- package/dist/rules/token/index.js.map +1 -0
- package/dist/rules/token/line-length.d.ts +3 -0
- package/dist/rules/token/line-length.d.ts.map +1 -0
- package/dist/rules/token/line-length.js +120 -0
- package/dist/rules/token/line-length.js.map +1 -0
- package/dist/rules/token/link-fragments.d.ts +3 -0
- package/dist/rules/token/link-fragments.d.ts.map +1 -0
- package/dist/rules/token/link-fragments.js +145 -0
- package/dist/rules/token/link-fragments.js.map +1 -0
- package/dist/rules/token/link-image-reference-definitions.d.ts +3 -0
- package/dist/rules/token/link-image-reference-definitions.d.ts.map +1 -0
- package/dist/rules/token/link-image-reference-definitions.js +50 -0
- package/dist/rules/token/link-image-reference-definitions.js.map +1 -0
- package/dist/rules/token/link-image-style.d.ts +3 -0
- package/dist/rules/token/link-image-style.d.ts.map +1 -0
- package/dist/rules/token/link-image-style.js +131 -0
- package/dist/rules/token/link-image-style.js.map +1 -0
- package/dist/rules/token/list-indent.d.ts +3 -0
- package/dist/rules/token/list-indent.d.ts.map +1 -0
- package/dist/rules/token/list-indent.js +60 -0
- package/dist/rules/token/list-indent.js.map +1 -0
- package/dist/rules/token/list-length.d.ts +3 -0
- package/dist/rules/token/list-length.d.ts.map +1 -0
- package/dist/rules/token/list-length.js +55 -0
- package/dist/rules/token/list-length.js.map +1 -0
- package/dist/rules/token/list-marker-space.d.ts +3 -0
- package/dist/rules/token/list-marker-space.d.ts.map +1 -0
- package/dist/rules/token/list-marker-space.js +52 -0
- package/dist/rules/token/list-marker-space.js.map +1 -0
- package/dist/rules/token/markdoc-attributes.d.ts +3 -0
- package/dist/rules/token/markdoc-attributes.d.ts.map +1 -0
- package/dist/rules/token/markdoc-attributes.js +269 -0
- package/dist/rules/token/markdoc-attributes.js.map +1 -0
- package/dist/rules/token/markdoc-pairing.d.ts +3 -0
- package/dist/rules/token/markdoc-pairing.d.ts.map +1 -0
- package/dist/rules/token/markdoc-pairing.js +73 -0
- package/dist/rules/token/markdoc-pairing.js.map +1 -0
- package/dist/rules/token/markdoc-syntax.d.ts +3 -0
- package/dist/rules/token/markdoc-syntax.d.ts.map +1 -0
- package/dist/rules/token/markdoc-syntax.js +119 -0
- package/dist/rules/token/markdoc-syntax.js.map +1 -0
- package/dist/rules/token/markdoc-unknown-tag.d.ts +3 -0
- package/dist/rules/token/markdoc-unknown-tag.d.ts.map +1 -0
- package/dist/rules/token/markdoc-unknown-tag.js +64 -0
- package/dist/rules/token/markdoc-unknown-tag.js.map +1 -0
- package/dist/rules/token/messages.d.ts +4 -0
- package/dist/rules/token/messages.d.ts.map +1 -0
- package/dist/rules/token/messages.js +20 -0
- package/dist/rules/token/messages.js.map +1 -0
- package/dist/rules/token/no-alt-text.d.ts +3 -0
- package/dist/rules/token/no-alt-text.d.ts.map +1 -0
- package/dist/rules/token/no-alt-text.js +47 -0
- package/dist/rules/token/no-alt-text.js.map +1 -0
- package/dist/rules/token/no-bare-urls.d.ts +3 -0
- package/dist/rules/token/no-bare-urls.d.ts.map +1 -0
- package/dist/rules/token/no-bare-urls.js +88 -0
- package/dist/rules/token/no-bare-urls.js.map +1 -0
- package/dist/rules/token/no-blanks-blockquote.d.ts +3 -0
- package/dist/rules/token/no-blanks-blockquote.d.ts.map +1 -0
- package/dist/rules/token/no-blanks-blockquote.js +39 -0
- package/dist/rules/token/no-blanks-blockquote.js.map +1 -0
- package/dist/rules/token/no-duplicate-heading.d.ts +3 -0
- package/dist/rules/token/no-duplicate-heading.d.ts.map +1 -0
- package/dist/rules/token/no-duplicate-heading.js +101 -0
- package/dist/rules/token/no-duplicate-heading.js.map +1 -0
- package/dist/rules/token/no-duplicate-link-destinations.d.ts +3 -0
- package/dist/rules/token/no-duplicate-link-destinations.d.ts.map +1 -0
- package/dist/rules/token/no-duplicate-link-destinations.js +65 -0
- package/dist/rules/token/no-duplicate-link-destinations.js.map +1 -0
- package/dist/rules/token/no-emphasis-as-heading.d.ts +3 -0
- package/dist/rules/token/no-emphasis-as-heading.d.ts.map +1 -0
- package/dist/rules/token/no-emphasis-as-heading.js +44 -0
- package/dist/rules/token/no-emphasis-as-heading.js.map +1 -0
- package/dist/rules/token/no-empty-headings.d.ts +3 -0
- package/dist/rules/token/no-empty-headings.d.ts.map +1 -0
- package/dist/rules/token/no-empty-headings.js +28 -0
- package/dist/rules/token/no-empty-headings.js.map +1 -0
- package/dist/rules/token/no-empty-links.d.ts +3 -0
- package/dist/rules/token/no-empty-links.d.ts.map +1 -0
- package/dist/rules/token/no-empty-links.js +67 -0
- package/dist/rules/token/no-empty-links.js.map +1 -0
- package/dist/rules/token/no-hard-tabs.d.ts +3 -0
- package/dist/rules/token/no-hard-tabs.d.ts.map +1 -0
- package/dist/rules/token/no-hard-tabs.js +76 -0
- package/dist/rules/token/no-hard-tabs.js.map +1 -0
- package/dist/rules/token/no-inline-html.d.ts +3 -0
- package/dist/rules/token/no-inline-html.d.ts.map +1 -0
- package/dist/rules/token/no-inline-html.js +45 -0
- package/dist/rules/token/no-inline-html.js.map +1 -0
- package/dist/rules/token/no-missing-space-atx.d.ts +3 -0
- package/dist/rules/token/no-missing-space-atx.d.ts.map +1 -0
- package/dist/rules/token/no-missing-space-atx.js +36 -0
- package/dist/rules/token/no-missing-space-atx.js.map +1 -0
- package/dist/rules/token/no-missing-space-closed-atx.d.ts +3 -0
- package/dist/rules/token/no-missing-space-closed-atx.d.ts.map +1 -0
- package/dist/rules/token/no-missing-space-closed-atx.js +45 -0
- package/dist/rules/token/no-missing-space-closed-atx.js.map +1 -0
- package/dist/rules/token/no-multiple-blanks.d.ts +3 -0
- package/dist/rules/token/no-multiple-blanks.d.ts.map +1 -0
- package/dist/rules/token/no-multiple-blanks.js +35 -0
- package/dist/rules/token/no-multiple-blanks.js.map +1 -0
- package/dist/rules/token/no-multiple-space-atx.d.ts +13 -0
- package/dist/rules/token/no-multiple-space-atx.d.ts.map +1 -0
- package/dist/rules/token/no-multiple-space-atx.js +50 -0
- package/dist/rules/token/no-multiple-space-atx.js.map +1 -0
- package/dist/rules/token/no-multiple-space-blockquote.d.ts +3 -0
- package/dist/rules/token/no-multiple-space-blockquote.d.ts.map +1 -0
- package/dist/rules/token/no-multiple-space-blockquote.js +43 -0
- package/dist/rules/token/no-multiple-space-blockquote.js.map +1 -0
- package/dist/rules/token/no-multiple-space-closed-atx.d.ts +3 -0
- package/dist/rules/token/no-multiple-space-closed-atx.d.ts.map +1 -0
- package/dist/rules/token/no-multiple-space-closed-atx.js +19 -0
- package/dist/rules/token/no-multiple-space-closed-atx.js.map +1 -0
- package/dist/rules/token/no-reversed-links.d.ts +3 -0
- package/dist/rules/token/no-reversed-links.d.ts.map +1 -0
- package/dist/rules/token/no-reversed-links.js +52 -0
- package/dist/rules/token/no-reversed-links.js.map +1 -0
- package/dist/rules/token/no-space-in-code.d.ts +3 -0
- package/dist/rules/token/no-space-in-code.d.ts.map +1 -0
- package/dist/rules/token/no-space-in-code.js +75 -0
- package/dist/rules/token/no-space-in-code.js.map +1 -0
- package/dist/rules/token/no-space-in-emphasis.d.ts +3 -0
- package/dist/rules/token/no-space-in-emphasis.d.ts.map +1 -0
- package/dist/rules/token/no-space-in-emphasis.js +79 -0
- package/dist/rules/token/no-space-in-emphasis.js.map +1 -0
- package/dist/rules/token/no-space-in-links.d.ts +3 -0
- package/dist/rules/token/no-space-in-links.d.ts.map +1 -0
- package/dist/rules/token/no-space-in-links.js +48 -0
- package/dist/rules/token/no-space-in-links.js.map +1 -0
- package/dist/rules/token/no-trailing-punctuation.d.ts +3 -0
- package/dist/rules/token/no-trailing-punctuation.d.ts.map +1 -0
- package/dist/rules/token/no-trailing-punctuation.js +38 -0
- package/dist/rules/token/no-trailing-punctuation.js.map +1 -0
- package/dist/rules/token/no-trailing-spaces.d.ts +3 -0
- package/dist/rules/token/no-trailing-spaces.d.ts.map +1 -0
- package/dist/rules/token/no-trailing-spaces.js +89 -0
- package/dist/rules/token/no-trailing-spaces.js.map +1 -0
- package/dist/rules/token/ol-prefix.d.ts +3 -0
- package/dist/rules/token/ol-prefix.d.ts.map +1 -0
- package/dist/rules/token/ol-prefix.js +70 -0
- package/dist/rules/token/ol-prefix.js.map +1 -0
- package/dist/rules/token/proper-names.d.ts +3 -0
- package/dist/rules/token/proper-names.d.ts.map +1 -0
- package/dist/rules/token/proper-names.js +93 -0
- package/dist/rules/token/proper-names.js.map +1 -0
- package/dist/rules/token/reference-links-images.d.ts +3 -0
- package/dist/rules/token/reference-links-images.d.ts.map +1 -0
- package/dist/rules/token/reference-links-images.js +36 -0
- package/dist/rules/token/reference-links-images.js.map +1 -0
- package/dist/rules/token/required-headings.d.ts +3 -0
- package/dist/rules/token/required-headings.d.ts.map +1 -0
- package/dist/rules/token/required-headings.js +83 -0
- package/dist/rules/token/required-headings.js.map +1 -0
- package/dist/rules/token/single-h1.d.ts +3 -0
- package/dist/rules/token/single-h1.d.ts.map +1 -0
- package/dist/rules/token/single-h1.js +56 -0
- package/dist/rules/token/single-h1.js.map +1 -0
- package/dist/rules/token/single-trailing-newline.d.ts +3 -0
- package/dist/rules/token/single-trailing-newline.d.ts.map +1 -0
- package/dist/rules/token/single-trailing-newline.js +25 -0
- package/dist/rules/token/single-trailing-newline.js.map +1 -0
- package/dist/rules/token/strong-style.d.ts +3 -0
- package/dist/rules/token/strong-style.d.ts.map +1 -0
- package/dist/rules/token/strong-style.js +51 -0
- package/dist/rules/token/strong-style.js.map +1 -0
- package/dist/rules/token/table-column-count.d.ts +3 -0
- package/dist/rules/token/table-column-count.d.ts.map +1 -0
- package/dist/rules/token/table-column-count.js +44 -0
- package/dist/rules/token/table-column-count.js.map +1 -0
- package/dist/rules/token/table-column-style.d.ts +3 -0
- package/dist/rules/token/table-column-style.d.ts.map +1 -0
- package/dist/rules/token/table-column-style.js +179 -0
- package/dist/rules/token/table-column-style.js.map +1 -0
- package/dist/rules/token/table-pipe-style.d.ts +3 -0
- package/dist/rules/token/table-pipe-style.d.ts.map +1 -0
- package/dist/rules/token/table-pipe-style.js +54 -0
- package/dist/rules/token/table-pipe-style.js.map +1 -0
- package/dist/rules/token/ul-indent.d.ts +3 -0
- package/dist/rules/token/ul-indent.d.ts.map +1 -0
- package/dist/rules/token/ul-indent.js +72 -0
- package/dist/rules/token/ul-indent.js.map +1 -0
- package/dist/rules/token/ul-style.d.ts +3 -0
- package/dist/rules/token/ul-style.d.ts.map +1 -0
- package/dist/rules/token/ul-style.js +80 -0
- package/dist/rules/token/ul-style.js.map +1 -0
- package/dist/rules/types.d.ts +81 -0
- package/dist/rules/types.d.ts.map +1 -0
- package/dist/rules/types.js +2 -0
- package/dist/rules/types.js.map +1 -0
- package/dist/rules/utils.d.ts +29 -0
- package/dist/rules/utils.d.ts.map +1 -0
- package/dist/{assertions → rules}/utils.js +27 -0
- package/dist/rules/utils.js.map +1 -0
- package/dist/scopes/extractor.d.ts +7 -0
- package/dist/scopes/extractor.d.ts.map +1 -0
- package/dist/scopes/extractor.js +475 -0
- package/dist/scopes/extractor.js.map +1 -0
- package/dist/scopes/selector.d.ts +51 -0
- package/dist/scopes/selector.d.ts.map +1 -0
- package/dist/scopes/selector.js +121 -0
- package/dist/scopes/selector.js.map +1 -0
- package/dist/scopes/sentences.d.ts +15 -0
- package/dist/scopes/sentences.d.ts.map +1 -0
- package/dist/scopes/sentences.js +124 -0
- package/dist/scopes/sentences.js.map +1 -0
- package/dist/scopes/types.d.ts +44 -0
- package/dist/scopes/types.d.ts.map +1 -0
- package/dist/scopes/types.js +2 -0
- package/dist/scopes/types.js.map +1 -0
- package/dist/scopes/vocabulary.d.ts +16 -0
- package/dist/scopes/vocabulary.d.ts.map +1 -0
- package/dist/scopes/vocabulary.js +70 -0
- package/dist/scopes/vocabulary.js.map +1 -0
- package/dist/types/assertions.d.ts +95 -32
- package/dist/types/assertions.d.ts.map +1 -1
- package/dist/types/problems.d.ts +4 -5
- package/dist/types/problems.d.ts.map +1 -1
- package/dist/types/rules.d.ts +4 -6
- package/dist/types/rules.d.ts.map +1 -1
- package/examples/appendices/google.appendix.yaml +91 -0
- package/examples/appendices/inclusive-language.appendix.yaml +61 -0
- package/examples/appendices/microsoft.appendix.yaml +99 -0
- package/examples/appendices/plain-language.appendix.yaml +88 -0
- package/examples/google.yaml +1525 -0
- package/examples/inclusive-language.yaml +304 -0
- package/examples/microsoft.yaml +1542 -0
- package/examples/plain-language.yaml +325 -0
- package/package.json +49 -16
- package/presets/google/PROVENANCE.md +1022 -0
- package/presets/google/sources.json +192 -0
- package/presets/inclusive-language/PROVENANCE.md +174 -0
- package/presets/inclusive-language/sources.json +107 -0
- package/presets/microsoft/PROVENANCE.md +1555 -0
- package/presets/microsoft/sources.json +494 -0
- package/presets/plain-language/PROVENANCE.md +364 -0
- package/presets/plain-language/sources.json +108 -0
- package/dist/assertions/bullet-style.d.ts +0 -3
- package/dist/assertions/bullet-style.d.ts.map +0 -1
- package/dist/assertions/bullet-style.js +0 -60
- package/dist/assertions/bullet-style.js.map +0 -1
- package/dist/assertions/index.d.ts +0 -21
- package/dist/assertions/index.d.ts.map +0 -1
- package/dist/assertions/index.js +0 -30
- package/dist/assertions/index.js.map +0 -1
- package/dist/assertions/max-image-size.d.ts +0 -3
- package/dist/assertions/max-image-size.d.ts.map +0 -1
- package/dist/assertions/max-image-size.js +0 -73
- package/dist/assertions/max-image-size.js.map +0 -1
- package/dist/assertions/max-line-length.d.ts +0 -3
- package/dist/assertions/max-line-length.d.ts.map +0 -1
- package/dist/assertions/max-line-length.js +0 -68
- package/dist/assertions/max-line-length.js.map +0 -1
- package/dist/assertions/no-broken-fragment-links.d.ts +0 -3
- package/dist/assertions/no-broken-fragment-links.d.ts.map +0 -1
- package/dist/assertions/no-broken-fragment-links.js +0 -79
- package/dist/assertions/no-broken-fragment-links.js.map +0 -1
- package/dist/assertions/no-duplicate-headings.d.ts +0 -3
- package/dist/assertions/no-duplicate-headings.d.ts.map +0 -1
- package/dist/assertions/no-duplicate-headings.js +0 -66
- package/dist/assertions/no-duplicate-headings.js.map +0 -1
- package/dist/assertions/no-hard-tabs.d.ts +0 -3
- package/dist/assertions/no-hard-tabs.d.ts.map +0 -1
- package/dist/assertions/no-hard-tabs.js +0 -63
- package/dist/assertions/no-hard-tabs.js.map +0 -1
- package/dist/assertions/no-trailing-spaces.d.ts +0 -3
- package/dist/assertions/no-trailing-spaces.d.ts.map +0 -1
- package/dist/assertions/no-trailing-spaces.js +0 -72
- package/dist/assertions/no-trailing-spaces.js.map +0 -1
- package/dist/assertions/pattern.d.ts +0 -3
- package/dist/assertions/pattern.d.ts.map +0 -1
- package/dist/assertions/pattern.js +0 -39
- package/dist/assertions/pattern.js.map +0 -1
- package/dist/assertions/semantic-line-breaks.d.ts +0 -3
- package/dist/assertions/semantic-line-breaks.d.ts.map +0 -1
- package/dist/assertions/semantic-line-breaks.js +0 -152
- package/dist/assertions/semantic-line-breaks.js.map +0 -1
- package/dist/assertions/swap.d.ts +0 -3
- package/dist/assertions/swap.d.ts.map +0 -1
- package/dist/assertions/swap.js +0 -39
- package/dist/assertions/swap.js.map +0 -1
- package/dist/assertions/utils.d.ts +0 -8
- package/dist/assertions/utils.d.ts.map +0 -1
- package/dist/assertions/utils.js.map +0 -1
- package/dist/core/scope-parser.d.ts +0 -26
- package/dist/core/scope-parser.d.ts.map +0 -1
- package/dist/core/scope-parser.js +0 -110
- package/dist/core/scope-parser.js.map +0 -1
- package/dist/files.d.ts +0 -2
- package/dist/files.d.ts.map +0 -1
- package/dist/files.js +0 -39
- package/dist/files.js.map +0 -1
- package/dist/load-config.d.ts +0 -25
- package/dist/load-config.d.ts.map +0 -1
- package/dist/load-config.js +0 -104
- package/dist/load-config.js.map +0 -1
- package/dist/load.d.ts +0 -25
- package/dist/load.d.ts.map +0 -1
- package/dist/load.js +0 -112
- package/dist/load.js.map +0 -1
- package/dist/scope.d.ts +0 -26
- package/dist/scope.d.ts.map +0 -1
- package/dist/scope.js +0 -110
- package/dist/scope.js.map +0 -1
- package/dist/types.d.ts +0 -109
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js.map +0 -1
- package/dist/validate.d.ts +0 -31
- package/dist/validate.d.ts.map +0 -1
- package/dist/validate.js +0 -154
- package/dist/validate.js.map +0 -1
- /package/dist/{types.js → parser/types.js} +0 -0
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
{
|
|
2
|
+
"normalization": {
|
|
3
|
+
"method": "article-body-sha256",
|
|
4
|
+
"description": "Each digest is sha256 over the UTF-8 bytes of the <article class=\"devsite-article\">...</article> region extracted from the raw HTML response -- NOT the full page. Hashing the full raw HTML is not reproducible: every fetch embeds a per-request <script type=\"application/json\" analytics> blob whose JSON keys serialize in non-deterministic order, a CSP nonce regenerated per request, and an inline feature-flag bootstrap array whose element order also varies per request. None of that reflects the guide's actual content. The <article class=\"devsite-article\"> region contains the guide's rendered content (headings, paragraphs, lists, tables) and excludes all of the above -- verified byte-identical across two consecutive fetches for all 30 pages below. See PROVENANCE.md's 'sources.json normalization' section for the full reproduction method and evidence.",
|
|
5
|
+
"extractionPattern": "<article class=\"devsite-article\">.*?</article>",
|
|
6
|
+
"extractionFlags": "dotall, first match",
|
|
7
|
+
"hashedBytesField": "bytes -- the byte length of the EXTRACTED region (UTF-8), not the raw page. A future re-check with a matching `bytes` but different `sha256` (or vice versa) signals the extraction may have changed shape rather than the content, and should be triaged before treating it as drift.",
|
|
8
|
+
"fetchMethod": "curl -- confirmed empirically (Fix wave C / Item 4) that a plain Node `fetch()` returns a materially different HTML variant of the same URL than `curl` does (not just the non-deterministic per-request noise described above -- a different response shape from the same server for the same request, attributable to the client). A future re-check must fetch with `curl`, not `fetch()` or another HTTP client, or a client-driven variant could be misread as guide drift."
|
|
9
|
+
},
|
|
10
|
+
"pages": [
|
|
11
|
+
{
|
|
12
|
+
"url": "https://developers.google.com/style/headings",
|
|
13
|
+
"fetchedAt": "2026-07-29",
|
|
14
|
+
"bytes": 25236,
|
|
15
|
+
"sha256": "676b223e99eea913e8c9f0e157c0a0d6e70622d8d2f655d34b77d07da8cac535"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"url": "https://developers.google.com/style/periods",
|
|
19
|
+
"fetchedAt": "2026-07-29",
|
|
20
|
+
"bytes": 18674,
|
|
21
|
+
"sha256": "d03856a7f631268b377e48d41011e2a596ee03811608ca375e8bfccde7b3ec0e"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"url": "https://developers.google.com/style/accessibility",
|
|
25
|
+
"fetchedAt": "2026-07-29",
|
|
26
|
+
"bytes": 28786,
|
|
27
|
+
"sha256": "c79419c7e4c446613b02eb4b1927ea52df874ef79bb6157e8e9097e28588d572"
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"url": "https://developers.google.com/style/lists",
|
|
31
|
+
"fetchedAt": "2026-07-29",
|
|
32
|
+
"bytes": 29943,
|
|
33
|
+
"sha256": "45dd5bc49249431df11b2eda473f96404e4511f40076d63d9f7a0bb1c1765702"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"url": "https://developers.google.com/style/person",
|
|
37
|
+
"fetchedAt": "2026-07-29",
|
|
38
|
+
"bytes": 15672,
|
|
39
|
+
"sha256": "c25db5b5b3fba57de6a0ceae90d9eaa94565e4d1be8da78aa2bb74e6c6313ce2"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"url": "https://developers.google.com/style/contractions",
|
|
43
|
+
"fetchedAt": "2026-07-29",
|
|
44
|
+
"bytes": 10555,
|
|
45
|
+
"sha256": "932fea9d2ef6ae4e50a7a6596e1c6beca687b5004e8fc0499de5e3dde7b5d7f4"
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"url": "https://developers.google.com/style/word-list",
|
|
49
|
+
"fetchedAt": "2026-07-29",
|
|
50
|
+
"bytes": 265744,
|
|
51
|
+
"sha256": "3a7a4548ee05ab97303fdee88878a6d8f64f04e8f3c9a481b3c20d732d99fec9"
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"url": "https://developers.google.com/style/timeless-documentation",
|
|
55
|
+
"fetchedAt": "2026-07-29",
|
|
56
|
+
"bytes": 15993,
|
|
57
|
+
"sha256": "1d7286097aeb0d8de6282305db7db6354ff8ca20aceb6523ae77ad424d9ff4ee"
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"url": "https://developers.google.com/style/abbreviations",
|
|
61
|
+
"fetchedAt": "2026-07-29",
|
|
62
|
+
"bytes": 22489,
|
|
63
|
+
"sha256": "89d73ca93921f5243a8b8e30b1668483c33b868352acb7e2eebf04291e219a14"
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"url": "https://developers.google.com/style/slashes",
|
|
67
|
+
"fetchedAt": "2026-07-29",
|
|
68
|
+
"bytes": 15576,
|
|
69
|
+
"sha256": "0bfab0f261e86d07c65c2185f35770f690a405b628191f088f9abe71179f5b4c"
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"url": "https://developers.google.com/style/numbers",
|
|
73
|
+
"fetchedAt": "2026-07-29",
|
|
74
|
+
"bytes": 24862,
|
|
75
|
+
"sha256": "cc227b69caaa189a7f51ea5da7848b42bc10b613e0fb38d781340396decf0514"
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"url": "https://developers.google.com/style/dates-times",
|
|
79
|
+
"fetchedAt": "2026-07-29",
|
|
80
|
+
"bytes": 20103,
|
|
81
|
+
"sha256": "fb62cb89935f5d84d0ec3990b57bba4cd4f7acfb4b67fa847d49ddd5ee987aa3"
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"url": "https://developers.google.com/style/commas",
|
|
85
|
+
"fetchedAt": "2026-07-29",
|
|
86
|
+
"bytes": 17596,
|
|
87
|
+
"sha256": "9008f0b428b66a3b405116976786ba88bda0462b4814add7704c4f68a57b9135"
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"url": "https://developers.google.com/style/dashes",
|
|
91
|
+
"fetchedAt": "2026-07-29",
|
|
92
|
+
"bytes": 15316,
|
|
93
|
+
"sha256": "9103627b4bf7c194060a74f636078732a29c05ba8c7e5121ccb870dc8e9a5cab"
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"url": "https://developers.google.com/style/pronouns",
|
|
97
|
+
"fetchedAt": "2026-07-29",
|
|
98
|
+
"bytes": 17699,
|
|
99
|
+
"sha256": "19429c67d35f0a423ce9de21365aafcba318235f918d7e10d557906e9acda96f"
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
"url": "https://developers.google.com/style/cross-references",
|
|
103
|
+
"fetchedAt": "2026-07-29",
|
|
104
|
+
"bytes": 33039,
|
|
105
|
+
"sha256": "be3023804a1841d52074a2a8b432baf66e6c13604e8a045e23759add57dd1075"
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"url": "https://developers.google.com/style/text-formatting",
|
|
109
|
+
"fetchedAt": "2026-07-29",
|
|
110
|
+
"bytes": 17455,
|
|
111
|
+
"sha256": "84c794977bbeaf5b75d8e6ca9de5986a0cdd4ad4ecbb1b740e53ed781d014ce7"
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
"url": "https://developers.google.com/style/capitalization",
|
|
115
|
+
"fetchedAt": "2026-07-29",
|
|
116
|
+
"bytes": 17794,
|
|
117
|
+
"sha256": "4b31fc5bd9c60a1ae0b1a650e85b41c913d3497142c136c750424955d40ce538"
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"url": "https://developers.google.com/style/code-in-text",
|
|
121
|
+
"fetchedAt": "2026-07-29",
|
|
122
|
+
"bytes": 35658,
|
|
123
|
+
"sha256": "416df7e082dbd679fa6aed9337c74a9a9956eb6188dfad15b011d8008444705d"
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"url": "https://developers.google.com/style/ui-elements",
|
|
127
|
+
"fetchedAt": "2026-07-29",
|
|
128
|
+
"bytes": 43078,
|
|
129
|
+
"sha256": "d52aed7556c062270544a5f9b90360700a77c129b9aaa1153300c3fd520bb22e"
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
"url": "https://developers.google.com/style/procedures",
|
|
133
|
+
"fetchedAt": "2026-07-29",
|
|
134
|
+
"bytes": 32253,
|
|
135
|
+
"sha256": "15f0312be3cfc60d3a3eb4ac95c3b72da5c779c099035dea0ed45213106bdf40"
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
"url": "https://developers.google.com/style/inclusive-documentation",
|
|
139
|
+
"fetchedAt": "2026-07-29",
|
|
140
|
+
"bytes": 27744,
|
|
141
|
+
"sha256": "633fac89a8969bce0caf046d0478a22a40453a42729157277e8dab298a85142c"
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
"url": "https://developers.google.com/style/tables",
|
|
145
|
+
"fetchedAt": "2026-07-29",
|
|
146
|
+
"bytes": 20487,
|
|
147
|
+
"sha256": "704368a13fd7a53a0224fe4076361ad5ffe7b0869a2f76608f58d0aecf50dd1e"
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
"url": "https://developers.google.com/style/hyphens",
|
|
151
|
+
"fetchedAt": "2026-07-29",
|
|
152
|
+
"bytes": 24974,
|
|
153
|
+
"sha256": "e057fb6a0e8e8282c23a888d58467b50c2786a5e6deee3584ae257eedf13ff7f"
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
"url": "https://developers.google.com/style/colons",
|
|
157
|
+
"fetchedAt": "2026-07-29",
|
|
158
|
+
"bytes": 13625,
|
|
159
|
+
"sha256": "5eca4d777c3c0a8de729f28bc5898baff38110d50edcfaab70aef87487bdec02"
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
"url": "https://developers.google.com/style/tense",
|
|
163
|
+
"fetchedAt": "2026-07-29",
|
|
164
|
+
"bytes": 11163,
|
|
165
|
+
"sha256": "2282860317719650d11396af7a96f0acb0742bb62fe1cd42c59ca3458ec0a47c"
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
"url": "https://developers.google.com/style/translation",
|
|
169
|
+
"fetchedAt": "2026-07-29",
|
|
170
|
+
"bytes": 27763,
|
|
171
|
+
"sha256": "a36ab166809c41bdd89c53e4fc52fcd79ab3ed72acd9f360a7f6db894990a4ac"
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
"url": "https://developers.google.com/style/future",
|
|
175
|
+
"fetchedAt": "2026-07-29",
|
|
176
|
+
"bytes": 9743,
|
|
177
|
+
"sha256": "edb990cee9f33d0d5d293568ebe98b2960123f1fd41400e012b6f23f71cc1a8a"
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
"url": "https://developers.google.com/style/voice",
|
|
181
|
+
"fetchedAt": "2026-07-29",
|
|
182
|
+
"bytes": 14209,
|
|
183
|
+
"sha256": "44c5f24ad9814fe3f613cc8be0a1d70281d09a7167ef0f92c492bde73bdbf52d"
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
"url": "https://developers.google.com/style/tone",
|
|
187
|
+
"fetchedAt": "2026-07-29",
|
|
188
|
+
"bytes": 17959,
|
|
189
|
+
"sha256": "e44246ff3f5de71108430271f31f00c4b8a3f3f359e34135f3bfb2a3ffd3e9dd"
|
|
190
|
+
}
|
|
191
|
+
]
|
|
192
|
+
}
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
# Provenance: `recheck/inclusive-language`
|
|
2
|
+
|
|
3
|
+
Composable, guide-agnostic preset: the **intersection** of `recheck/google`
|
|
4
|
+
and `recheck/microsoft`'s inclusive/bias-free/ableist/accessibility content —
|
|
5
|
+
terminology both flagship guides independently state should be avoided.
|
|
6
|
+
Sync date: **2026-07-30** (no new fetch; see "How this preset was verified"
|
|
7
|
+
below).
|
|
8
|
+
|
|
9
|
+
Modification note: rules are adapted to Recheck's assertion vocabulary
|
|
10
|
+
(`swap`, `pattern`); wording is paraphrased into each rule's `message`, not
|
|
11
|
+
quoted verbatim. Every rule carries a `link:` to one of its two source pages
|
|
12
|
+
(picked for specificity; the other guide's citation lives in this table and
|
|
13
|
+
in the rule's own code comment).
|
|
14
|
+
|
|
15
|
+
## Shipped rules
|
|
16
|
+
|
|
17
|
+
All `warn` severity (pure word-choice/terminology, no structural content —
|
|
18
|
+
matching both flagships' "word choice → warn" policy) and all detection-only
|
|
19
|
+
(`fix: false`, forced structurally — see `inclusive-language.ts`'s header).
|
|
20
|
+
|
|
21
|
+
| Rule id | Term(s) | Google source | Microsoft source | Note |
|
|
22
|
+
|---|---|---|---|---|
|
|
23
|
+
| `inclusive-language/slave` | `slave` | C§3.5 row 2 ("Don't use. Instead, use alternative terms... such as worker or replica.") | a-z/master-slave (H.md row 46: "Don't use master/slave. Use primary/replica...") | Bare `master` excluded on both sides — too polysemous (master's degree, master key, git branch name); only the unambiguous `slave` ships as a swap. |
|
|
24
|
+
| `inclusive-language/master-slave-pairing` | `master/slave`, `master-slave` | C§3.5 row 1 ("Never use in conjunction with slave... primary, main, original, parent... controller... leader, or active") | a-z/master-slave (H.md row 46) + bias-free-communication (E.md V25) | The two guides disagree on the replacement (primary/replica vs. primary/subordinate) — ships as `pattern`, matching `microsoft/master-slave`'s own resolution of the identical disagreement. |
|
|
25
|
+
| `inclusive-language/blacklist-whitelist` | `blacklist`, `whitelist` (noun forms) | C§3.5 rows 3-4 | a-z/blacklist, a-z/whitelist (G.md row 58, H.md row 45) | Both guides separately caution the VERB forms don't take a word-for-word swap; message says so. Single-word replacement (`denylist`/`allowlist`) per spec, noting Microsoft's two-word preference. |
|
|
26
|
+
| `inclusive-language/dmz` | `DMZ`, `demilitarized zone` | C§3.5 row 26 | a-z/demilitarized-zone-dmz (G.md row 61) + bias-free-communication | Rare exact match: both guides recommend the identical replacement, "perimeter network". Anchored against the real Korean-border sense (`(?!\s+(?:dividing|between|separating)\b)`), the same guard already proven necessary in `microsoft/bias-free-terms`. |
|
|
27
|
+
| `inclusive-language/grayed-out` | `grayed-out`, `greyed-out` | C§3.5 row 20 | a-z/gray-grayed-out (G.md row 112) | Microsoft's own page: "Don't use gray or grayed out to describe commands or options that are in an unusable state—use not available or isn't available instead" — the shared conclusion is that the JARGON TERM itself should be avoided; Google's "unavailable" ships as the default replacement text. **Not** "shaded": the live page reserves "shaded" for describing the appearance of checkboxes that represent a mixture of settings, a narrower, different case, not a general alternate phrasing for "grayed out" (same distinction `recheck/microsoft`'s own PROVENANCE.md draws for its "shaded" entry). |
|
|
28
|
+
| `inclusive-language/he-she` | `he/she`, `s/he` | Google pronouns page (via C/D.md context) | bias-free-communication V23 (E.md): "Don't use constructions like he/she and s/he." | `(s)he` and "his or her" are NOT independently Microsoft-confirmed as literal banned strings (V23's own caveat) — left out. |
|
|
29
|
+
| `inclusive-language/nondisabled-person` | `normal person`, `healthy person` | D§3.6 row 45 (inclusive-documentation): "Don't describe people without disabilities as normal or healthy" | Microsoft accessibility table Row 5: "Person without a disability" preferred / "Non-disabled person, able-bodied person" acceptable | Matched phrase-level, never bare `normal`/`healthy` — both guides' own text (and `microsoft/accessibility-terms`'s collision note) flag the statistical/wellness senses of the bare words as unrelated and unaddressed. |
|
|
30
|
+
| `inclusive-language/suffering-victim` | `suffering from`, `victim of` | D§3.6 row 43 (inclusive-documentation): "such as victim of, suffering from... instead, use... experiencing, living with" | Microsoft accessibility table Row 4 ("suffers from", "a victim of" in Do-not-use column) + bias-free V28 | Microsoft's own replacement for Row 4 is sometimes a fuller, condition-specific sentence rewrite, not a literal swap — message notes this. Microsoft's "affected by"/"stricken with" (also Row 4) are NOT Google-confirmed and are excluded. |
|
|
31
|
+
| `inclusive-language/differently-abled` | `differently abled` | D§3.6 row 44 (inclusive-documentation, DETECT-ONLY, no replacement given): "physically challenged, special, differently abled, handi-capable" | Microsoft accessibility table Row 8 (Do-not-use column), preferred "person with cognitive disabilities, developmental disabilities, learning disabilities, or dyslexia" | Only "differently abled" is the exact shared string across the two guides' respective lists; Google's other three synonyms in the same row are not independently Microsoft-confirmed. Detection-only, no forced replacement: the two guides scope this euphemism to different specific disabilities. |
|
|
32
|
+
| `inclusive-language/crippled` | `cripple`, `crippled` | D§3.6 row 27 (word-list#cripple): figurative → "slowed down"; of-person → person-first alternatives | Microsoft accessibility table Row 2 (Do-not-use column), preferred "person with limited mobility, person who has a mobility or physical disability" | Detection-only, no forced replacement — the two guides give different alternative sets for the figurative vs. person-reference senses. `microsoft/accessibility-terms` already ships `crippled` bare/unguarded with no demonstrated unrelated collision; this preset does the same for both `cripple` and `crippled`. |
|
|
33
|
+
| `inclusive-language/nuke` | `nuke` | C§3.5 (word-list#nuke): "Don't use. Instead use remove or attack." | Militaristic-language "Never use" list (E.md V26): "...nuke, go nuclear..." | The one term drawn from Microsoft's militaristic list. No other Google-confirmed term overlaps that list. |
|
|
34
|
+
|
|
35
|
+
## Excluded (single-guide coverage — the intersection principle)
|
|
36
|
+
|
|
37
|
+
These terms are `CONFIRMED` on only ONE guide's side, so they are left out —
|
|
38
|
+
shipping them here would make this preset silently guide-specific rather than
|
|
39
|
+
composable onto either flagship:
|
|
40
|
+
|
|
41
|
+
**Google-only** (no Microsoft evidence found in any verification pass):
|
|
42
|
+
`graylist`/`greylist`, `blackhat`/`whitehat`/`grayhat`, `blackhole` (verb),
|
|
43
|
+
`black-box`/`white-box`/`gray-box` testing (Microsoft's own "black box: never"
|
|
44
|
+
entry is a general A-Z word-choice row, not bias-free/accessibility-themed —
|
|
45
|
+
see "Also excluded" below), `white label`, `white glove`, `grandfathered`,
|
|
46
|
+
`guys`/`you guys`, `gypsy`, `ghetto`, `ninja`, `guru`, `sherpa`, `dojo`, `mom
|
|
47
|
+
test`/`grandma test`/`girlfriend test`, `monkey test`, `brown bag`, `build
|
|
48
|
+
cop`/`build sheriff`, `war room`, `tribal knowledge`, `native` (of people),
|
|
49
|
+
`first class`/`first-class citizen`, `male adapter`, `female adapter`, `man
|
|
50
|
+
hours`, `manmade`/`man made`, `manned`, `man-in-the-middle`/MITM,
|
|
51
|
+
`preferred pronouns`, `final solution`, `denigrate`, `target` (verb, of
|
|
52
|
+
people), `webmaster`, `sexy`, `voodoo`, `holiday`/`Black Friday`/`Cyber
|
|
53
|
+
Monday`, `the elderly`/`the aged`/`senior citizens`, `the disabled`, `a
|
|
54
|
+
quadriplegic`, `wheelchair-bound`, `unsighted`/`visually challenged` (these
|
|
55
|
+
resolve to `blind`'s person-reference alternatives, never its figurative
|
|
56
|
+
ones — moot here since Microsoft doesn't independently confirm either term),
|
|
57
|
+
`crazy`/`bonkers`/`mad`/`lunatic`/`insane`/`loony`, `sane`, `sanity check`,
|
|
58
|
+
`retarded`, `dumb down`, `dummy variable`, `blind to`/`blind eye to`.
|
|
59
|
+
|
|
60
|
+
**Microsoft-only** (no Google evidence found): `chairman`/`chairwoman`,
|
|
61
|
+
`mankind`, `manpower`, `salesman`/`salesmen` (Microsoft's own bias-free page,
|
|
62
|
+
V24 — Google's guide never states these), `screened subnet` (paired with DMZ
|
|
63
|
+
on Microsoft's page but not independently on Google's), `sight-impaired`,
|
|
64
|
+
`vision-impaired`, `hearing-impaired` (Google's own, DIFFERENT terms —
|
|
65
|
+
`unsighted`/`visually challenged` — are the Google-side equivalent family,
|
|
66
|
+
but the literal strings differ, so neither side's term is shipped here),
|
|
67
|
+
`dumb`, `mute`, `non-verbal`, `an epileptic`, `maimed`, `missing a limb`,
|
|
68
|
+
`birth defect`, `Special Ed person`, `stupid`, `slow learner`, `mentally
|
|
69
|
+
handicapped`, `special needs` (appears TWICE on Microsoft's own 11-row table
|
|
70
|
+
with two different preferred replacements — a real self-contradiction on
|
|
71
|
+
Microsoft's own page — moot here regardless since Google never states it),
|
|
72
|
+
`handicapped`/`the handicapped`/`people with handicaps`, `lame` (excluded on
|
|
73
|
+
Microsoft's own preset too, for colliding with "lame excuse"/"lame joke" —
|
|
74
|
+
the same reasoning applies here even though it happens to be
|
|
75
|
+
Microsoft-only), `Asperger's`.
|
|
76
|
+
|
|
77
|
+
## Also excluded (present in both guides' broader word lists, but not shipped
|
|
78
|
+
here as inclusive-language)
|
|
79
|
+
|
|
80
|
+
- **`disable`/`disabled` (of a broken/malfunctioning system)** — Google
|
|
81
|
+
confirms (word-list#disable: "use inactive, unavailable, deactivate, turn
|
|
82
|
+
off, or deselect") and Microsoft confirms (a-z/disable-disabled: "Use turn
|
|
83
|
+
off") a narrow ableist-metaphor sense (describing something as "disabled"
|
|
84
|
+
to mean broken). **Deliberately not shipped**: `disable`/`disabled` is
|
|
85
|
+
core, ubiquitous, entirely correct technical vocabulary in exactly the
|
|
86
|
+
corpus Recheck targets ("disable this feature", "the API is disabled",
|
|
87
|
+
feature flags) — a bare-word rule would misfire on nearly every API
|
|
88
|
+
document that describes turning something off, a worse false-positive
|
|
89
|
+
profile than the `shall`/`implement`/`command` hazard the plain-language
|
|
90
|
+
preset's header calls out. The guide's actual "avoid" case (describing
|
|
91
|
+
something as broken, not merely off) has no reliable textual signal to
|
|
92
|
+
anchor against.
|
|
93
|
+
- **`hang`/`hung` (of a system)**, **`healthy` (of a system)** — present in
|
|
94
|
+
both Google's word-list (word-list#hang, word-list#healthy) and
|
|
95
|
+
Microsoft's general A-Z word list ("hang, hangs -> stop responding",
|
|
96
|
+
SUBSTRING-RISK-flagged). Excluded here because, looked at independently,
|
|
97
|
+
this is general word-choice/precision content on BOTH sides (not sourced
|
|
98
|
+
from either guide's bias-free-communication/inclusive-documentation/
|
|
99
|
+
accessibility pages) — `recheck/google`'s own PROVENANCE.md independently
|
|
100
|
+
excludes both for the identical polysemy reason ("hung the picture", "hung
|
|
101
|
+
jury", "a healthy amount of caution", "healthy competition").
|
|
102
|
+
- **`black box`** (bare, general sense) — Google's C§3.5 entry is
|
|
103
|
+
explicitly framed as inclusive language (alongside blacklist/whitelist);
|
|
104
|
+
Microsoft's matching A-Z row ("black box | never | DETECT-ONLY") is a
|
|
105
|
+
general word-choice entry with no bias-free/accessibility framing found in
|
|
106
|
+
any source. Left out for the same reason as `hang`/`healthy` above — only
|
|
107
|
+
one side's citation is actually inclusive-language-themed.
|
|
108
|
+
|
|
109
|
+
## How this preset was verified
|
|
110
|
+
|
|
111
|
+
Every term shipped here was already confirmed against a live page while
|
|
112
|
+
verifying `recheck/google`'s inclusive/ableist-language content and
|
|
113
|
+
`recheck/microsoft`'s bias-free, militaristic-language, and
|
|
114
|
+
accessibility-terms content — no separate web fetch was needed for this
|
|
115
|
+
preset. This file was built by taking the **intersection** of those existing
|
|
116
|
+
results: a term ships here only if it is independently `CONFIRMED` on at
|
|
117
|
+
least one Google source AND at least one Microsoft source. Where only one
|
|
118
|
+
guide covers a term, it is listed in "Excluded" above with the reason — that
|
|
119
|
+
asymmetry is what keeps this preset safely composable onto *either* flagship
|
|
120
|
+
without duplicating or contradicting either one's own word list.
|
|
121
|
+
|
|
122
|
+
### Duplicate-finding audit
|
|
123
|
+
|
|
124
|
+
Unlike `recheck/plain-language` (where two clean single-phrase duplicates
|
|
125
|
+
were found and removed — see its own PROVENANCE.md), this preset's overlap
|
|
126
|
+
with the flagships is NOT a removable defect: it is the direct, unavoidable
|
|
127
|
+
consequence of building it as their intersection in the first place. Every
|
|
128
|
+
term shipped here is, by construction, already confirmed by at least one of
|
|
129
|
+
the two flagship reports — which usually means it is already SHIPPED by
|
|
130
|
+
that flagship's own preset too.
|
|
131
|
+
|
|
132
|
+
Measured directly with `lintContent` over this preset's own violations
|
|
133
|
+
fixture (`inclusive-language-violations.md`, which exercises all 11 shipped
|
|
134
|
+
rules), stacked onto each flagship in turn (see `preset-composition.test.ts`'s
|
|
135
|
+
"duplicate findings" describe block for the live, asserted counts):
|
|
136
|
+
|
|
137
|
+
| Stacked with | Total problems | Duplicate positions | Rules that duplicate | Rules that are net-new |
|
|
138
|
+
|---|---|---|---|---|
|
|
139
|
+
| `recheck/google` | 32 | **11** | `slave`, `blacklist-whitelist`, `grayed-out`, `he-she`, `dmz`, `nuke`, `suffering-victim` (7 of 11) | `master-slave-pairing`, `nondisabled-person`, `differently-abled`, `crippled` (4 of 11) |
|
|
140
|
+
| `recheck/microsoft` | 27 | **8** | `dmz`, `master-slave-pairing`, `nondisabled-person`, `differently-abled`, `crippled`, `blacklist-whitelist` (6 of 11) | `slave`, `grayed-out`, `he-she`, `suffering-victim`, `nuke` (5 of 11) |
|
|
141
|
+
|
|
142
|
+
**The union of the two "duplicates" columns is all 11 rules.** There is no
|
|
143
|
+
rule in this preset that is simultaneously non-duplicate against BOTH
|
|
144
|
+
flagships — every single one duplicates at least one of them. This is
|
|
145
|
+
mathematically inevitable, not a quality gap to fix by trimming: trimming
|
|
146
|
+
the rules that duplicate Google would gut the preset's value for Microsoft
|
|
147
|
+
users and vice versa, and there is no third option that keeps the
|
|
148
|
+
intersection's whole reason for existing (cross-guide agreement) while being
|
|
149
|
+
simultaneously novel against either specific flagship alone.
|
|
150
|
+
|
|
151
|
+
**Decision, stated plainly rather than left for a user to discover**: this
|
|
152
|
+
preset's full, zero-duplicate value is realized STANDALONE, alongside
|
|
153
|
+
`recheck/prose`, or on a project using neither flagship. Stacked onto
|
|
154
|
+
exactly one flagship, it still adds real value — the "net-new" columns above
|
|
155
|
+
are genuine gaps that flagship's own editorial pass left out — but a
|
|
156
|
+
majority of its findings (7 of 11 with Google, 6 of 11 with Microsoft) will
|
|
157
|
+
be reported twice, once by each preset, for the same span. This is expected
|
|
158
|
+
behavior, documented here and in the preset's own file header and the
|
|
159
|
+
README, not a defect. Stacking it onto BOTH `recheck/google` AND
|
|
160
|
+
`recheck/microsoft` together adds no net-new coverage at all (the union
|
|
161
|
+
above is complete) — combined with this phase's existing guidance that
|
|
162
|
+
composing the two flagships together is not recommended in the first place,
|
|
163
|
+
this preset should not be reached for in that combination expecting new
|
|
164
|
+
signal either.
|
|
165
|
+
|
|
166
|
+
### Carried-over corrections
|
|
167
|
+
|
|
168
|
+
- `chubby`/`fat` are Google's own **technical-precision** entries (vague
|
|
169
|
+
resource sizing, imprecise modifiers), never ableist ones — Google's
|
|
170
|
+
entries never mention people. Not shipped here (and Google-only besides).
|
|
171
|
+
- `unsighted`/`visually challenged` resolve to the `blind` entry's
|
|
172
|
+
**person-reference** alternatives, never its figurative ones — not shipped
|
|
173
|
+
here regardless, since Microsoft doesn't independently confirm either
|
|
174
|
+
term.
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
{
|
|
2
|
+
"methodology": {
|
|
3
|
+
"description": "recheck/inclusive-language performed NO NEW FETCH (Task 11 controller resolutions §2): every term is sourced from five existing verification reports (task-9-verify-C.md, task-9-verify-D.md, task-10-verify-E.md, task-10-verify-G.md, task-10-verify-H.md, task-10-verify-accessibility.md), which already fetched and hashed the relevant live pages while building recheck/google and recheck/microsoft. This file cross-references those existing hashes rather than re-fetching or fabricating new ones.",
|
|
4
|
+
"crossReferencedFiles": [
|
|
5
|
+
"packages/recheck/presets/google/sources.json",
|
|
6
|
+
"packages/recheck/presets/microsoft/sources.json"
|
|
7
|
+
]
|
|
8
|
+
},
|
|
9
|
+
"pages": [
|
|
10
|
+
{
|
|
11
|
+
"url": "https://developers.google.com/style/word-list",
|
|
12
|
+
"guide": "google",
|
|
13
|
+
"hashRecordedIn": "packages/recheck/presets/google/sources.json",
|
|
14
|
+
"fetchedAt": "2026-07-29",
|
|
15
|
+
"coversTerms": [
|
|
16
|
+
"slave",
|
|
17
|
+
"master/slave",
|
|
18
|
+
"blacklist",
|
|
19
|
+
"whitelist",
|
|
20
|
+
"grayed-out",
|
|
21
|
+
"greyed-out",
|
|
22
|
+
"nuke"
|
|
23
|
+
]
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"url": "https://developers.google.com/style/inclusive-documentation",
|
|
27
|
+
"guide": "google",
|
|
28
|
+
"hashRecordedIn": "packages/recheck/presets/google/sources.json",
|
|
29
|
+
"fetchedAt": "2026-07-29",
|
|
30
|
+
"coversTerms": [
|
|
31
|
+
"normal person",
|
|
32
|
+
"healthy person",
|
|
33
|
+
"suffering from",
|
|
34
|
+
"victim of",
|
|
35
|
+
"differently abled"
|
|
36
|
+
]
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"url": "https://learn.microsoft.com/en-us/style-guide/bias-free-communication",
|
|
40
|
+
"guide": "microsoft",
|
|
41
|
+
"hashRecordedIn": "packages/recheck/presets/microsoft/sources.json",
|
|
42
|
+
"fetchedAt": "2026-07-29",
|
|
43
|
+
"coversTerms": [
|
|
44
|
+
"he/she",
|
|
45
|
+
"s/he",
|
|
46
|
+
"demilitarized zone",
|
|
47
|
+
"DMZ",
|
|
48
|
+
"master/slave (secondary citation)"
|
|
49
|
+
]
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"url": "https://learn.microsoft.com/en-us/style-guide/militaristic-language",
|
|
53
|
+
"guide": "microsoft",
|
|
54
|
+
"hashRecordedIn": "packages/recheck/presets/microsoft/sources.json",
|
|
55
|
+
"fetchedAt": "2026-07-29",
|
|
56
|
+
"coversTerms": ["nuke"]
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"url": "https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/m/master-slave",
|
|
60
|
+
"guide": "microsoft",
|
|
61
|
+
"hashRecordedIn": "packages/recheck/presets/microsoft/sources.json",
|
|
62
|
+
"fetchedAt": "2026-07-29",
|
|
63
|
+
"coversTerms": ["master/slave"]
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"url": "https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/b/blacklist",
|
|
67
|
+
"guide": "microsoft",
|
|
68
|
+
"hashRecordedIn": "packages/recheck/presets/microsoft/sources.json",
|
|
69
|
+
"fetchedAt": "2026-07-29",
|
|
70
|
+
"coversTerms": ["blacklist"]
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
"url": "https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/term-collections/accessibility-terms",
|
|
74
|
+
"guide": "microsoft",
|
|
75
|
+
"hashRecordedIn": "packages/recheck/presets/microsoft/sources.json",
|
|
76
|
+
"fetchedAt": "2026-07-29",
|
|
77
|
+
"coversTerms": [
|
|
78
|
+
"crippled",
|
|
79
|
+
"differently abled",
|
|
80
|
+
"victim of",
|
|
81
|
+
"normal person",
|
|
82
|
+
"healthy person"
|
|
83
|
+
]
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"url": "https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/w/whitelist",
|
|
87
|
+
"guide": "microsoft",
|
|
88
|
+
"hashRecordedIn": null,
|
|
89
|
+
"note": "Quoted verbatim in task-10-verify-H.md row 45 ('Never use whitelist. Use allow list instead.') but not independently hashed in microsoft/sources.json — cited via that report's quote, not re-fetched here.",
|
|
90
|
+
"coversTerms": ["whitelist"]
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"url": "https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/d/demilitarized-zone-dmz",
|
|
94
|
+
"guide": "microsoft",
|
|
95
|
+
"hashRecordedIn": null,
|
|
96
|
+
"note": "Quoted verbatim in task-10-verify-G.md row 61 but not independently hashed in microsoft/sources.json — cited via that report's quote, not re-fetched here.",
|
|
97
|
+
"coversTerms": ["DMZ", "demilitarized zone"]
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"url": "https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/g/gray-grayed-out",
|
|
101
|
+
"guide": "microsoft",
|
|
102
|
+
"hashRecordedIn": null,
|
|
103
|
+
"note": "Quoted verbatim in task-10-verify-G.md row 112 but not independently hashed in microsoft/sources.json — cited via that report's quote, not re-fetched here.",
|
|
104
|
+
"coversTerms": ["grayed-out", "greyed-out"]
|
|
105
|
+
}
|
|
106
|
+
]
|
|
107
|
+
}
|