@redocly/recheck 0.7.0 → 0.9.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 +27 -2
- package/dist/config/presets/index.d.ts.map +1 -1
- package/dist/config/presets/index.js +2 -0
- package/dist/config/presets/index.js.map +1 -1
- package/dist/config/presets/technical-english.d.ts +34 -0
- package/dist/config/presets/technical-english.d.ts.map +1 -0
- package/dist/config/presets/technical-english.js +79 -0
- package/dist/config/presets/technical-english.js.map +1 -0
- package/dist/data/markdoc-realm-schema.d.ts.map +1 -1
- package/dist/data/markdoc-realm-schema.js +22 -0
- package/dist/data/markdoc-realm-schema.js.map +1 -1
- package/dist/rules/token/link-fragments.d.ts.map +1 -1
- package/dist/rules/token/link-fragments.js +82 -5
- package/dist/rules/token/link-fragments.js.map +1 -1
- package/examples/appendices/technical-english.appendix.yaml +33 -0
- package/examples/technical-english.yaml +134 -0
- package/package.json +2 -2
- package/presets/technical-english/PROVENANCE.md +44 -0
- package/skills/recheck-config/SKILL.md +66 -0
- package/skills/recheck-lint/SKILL.md +49 -0
package/README.md
CHANGED
|
@@ -308,6 +308,23 @@ The score reads flowing prose the way standard readability tools do: headings, c
|
|
|
308
308
|
A file with no prose reports `—` (null in JSON) rather than a fake zero.
|
|
309
309
|
In CI, run it twice — once on the PR head and once on the merge-base worktree — and join on file to show each changed page's score change.
|
|
310
310
|
|
|
311
|
+
## Agent skills
|
|
312
|
+
|
|
313
|
+
Agents write a growing share of markdown, and a skill makes each one a recheck user with no person in the loop.
|
|
314
|
+
Two skills ship in the npm package under `skills/`:
|
|
315
|
+
|
|
316
|
+
- **`recheck-lint`** — run recheck on touched markdown before committing or outputting it, fix errors, and never suppress findings to pass.
|
|
317
|
+
- **`recheck-config`** — write and tune `recheck.yaml`: measure the corpus, set severities from counts, prefer fixes over exceptions, and adopt a baseline for large corpora.
|
|
318
|
+
|
|
319
|
+
To use them with Claude Code, copy them into your project:
|
|
320
|
+
|
|
321
|
+
```bash
|
|
322
|
+
cp -r node_modules/@redocly/recheck/skills/recheck-lint .claude/skills/
|
|
323
|
+
cp -r node_modules/@redocly/recheck/skills/recheck-config .claude/skills/
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
Each skill is one `SKILL.md` with a trigger description and instructions, so other agent runtimes can adapt them with a rename.
|
|
327
|
+
|
|
311
328
|
## Exceptions
|
|
312
329
|
|
|
313
330
|
Rules can be configured with exceptions to skip specific files or lines:
|
|
@@ -1209,8 +1226,13 @@ A rule may attach a milder severity to some of its own reports, and your config
|
|
|
1209
1226
|
The 3 that remain are an accepted paragraph-length overlap with `recheck/microsoft` (two independently-sourced numbers, not the same fact restated) and a coincidental substring collision with `use-contractions`, not content duplication.
|
|
1210
1227
|
See `packages/recheck/presets/plain-language/PROVENANCE.md` for every rule's source quote, every family considered and left out, and the full duplicate-finding audit.
|
|
1211
1228
|
|
|
1212
|
-
|
|
1213
|
-
|
|
1229
|
+
- **`recheck/technical-english`** — composable, an original rule set that helps writers follow the principles of ASD-STE100 Simplified Technical English: sentence length (max 25 words, the descriptive-text bound; tighten to 20 for procedures), paragraph length (max 6 sentences), and a passive-voice heuristic at `info`.
|
|
1230
|
+
ASD-STE100 Simplified Technical English is a Copyright and a Trade Mark of ASD, Brussels, Belgium.
|
|
1231
|
+
This preset is an independent work that ASD and the STEMG do not review, approve, certify, or endorse, and it reproduces no part of the standard — not its text and not its dictionary (compose with `recheck/plain-language` for word-choice checking).
|
|
1232
|
+
See `packages/recheck/presets/technical-english/PROVENANCE.md` for the STEMG correspondence and every deliberate omission.
|
|
1233
|
+
|
|
1234
|
+
**All five of the presets above — `recheck/google`, `recheck/microsoft`,
|
|
1235
|
+
`recheck/inclusive-language`, `recheck/plain-language`, and `recheck/technical-english` — are
|
|
1214
1236
|
detection-only by design, not by omission: no rule in any of them
|
|
1215
1237
|
auto-fixes, ever.**
|
|
1216
1238
|
This is enforced structurally (`fix: false` on every rule, set once by a
|
|
@@ -1422,6 +1444,9 @@ Token-rule options aren't individually schema-validated, so an option name a rul
|
|
|
1422
1444
|
- A `file.md#anchor` fragment must exist in the target file's headings and anchors.
|
|
1423
1445
|
- Extensionless links resolve the way the Realm router does: `./page` tries `page.md`, and a directory link reads its `index.md`.
|
|
1424
1446
|
- Site-root absolute paths (`/x/y`) resolve against the `rootDir` option when set, and are skipped without it.
|
|
1447
|
+
- `ignoredTargets` skips destinations by glob (`['/gateways/**']`) — for routes a renderer generates from data, with no file on disk.
|
|
1448
|
+
- Links to `<details>` sections resolve: a `<details>` without an explicit `id` gets one derived from its `<summary>` text, the same way the theme generates them in the browser.
|
|
1449
|
+
- Markdoc tags in headings (`## Payments {% badge /%}`) do not change the heading's anchor.
|
|
1425
1450
|
In a monorepo with several docs projects, give `rootDir` a map from source-directory prefix to that directory's site root; the longest matching prefix wins, and files under no prefix keep the skip.
|
|
1426
1451
|
Paths are relative to the working directory.
|
|
1427
1452
|
- External URLs and `mailto:` are skipped.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/config/presets/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAY,aAAa,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/config/presets/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAY,aAAa,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAarF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAWjD,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,eAAO,MAAM,4BAA4B,YAAI,aAAa,EAAE,QAAQ,EAAE,UAAU,CAAU,CAAC;AAmB3F;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAC/D,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B,CA+CA"}
|
|
@@ -6,6 +6,7 @@ import { buildMarkdownRelaxedPreset } from './markdown-relaxed.js';
|
|
|
6
6
|
import { buildMicrosoftPreset } from './microsoft.js';
|
|
7
7
|
import { buildMinimalPreset } from './minimal.js';
|
|
8
8
|
import { buildPlainLanguagePreset } from './plain-language.js';
|
|
9
|
+
import { buildTechnicalEnglishPreset } from './technical-english.js';
|
|
9
10
|
import { buildProsePreset } from './prose.js';
|
|
10
11
|
/**
|
|
11
12
|
* Registered `extends` presets, keyed by their `recheck/<name>` id (the
|
|
@@ -29,6 +30,7 @@ export const presets = {
|
|
|
29
30
|
'recheck/microsoft': buildMicrosoftPreset(),
|
|
30
31
|
'recheck/inclusive-language': buildInclusiveLanguagePreset(),
|
|
31
32
|
'recheck/plain-language': buildPlainLanguagePreset(),
|
|
33
|
+
'recheck/technical-english': buildTechnicalEnglishPreset(),
|
|
32
34
|
};
|
|
33
35
|
/**
|
|
34
36
|
* Documented, monorepo-wide opt-in scope-rule assertions -- native
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/config/presets/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,OAAO,GAAkC;IACpD,kBAAkB,EAAE,mBAAmB,EAAE;IACzC,0BAA0B,EAAE,0BAA0B,EAAE;IACxD,iBAAiB,EAAE,kBAAkB,EAAE;IACvC,eAAe,EAAE,gBAAgB,EAAE;IACnC,iBAAiB,EAAE,kBAAkB,EAAE;IACvC,gBAAgB,EAAE,iBAAiB,EAAE;IACrC,mBAAmB,EAAE,oBAAoB,EAAE;IAC3C,4BAA4B,EAAE,4BAA4B,EAAE;IAC5D,wBAAwB,EAAE,wBAAwB,EAAE;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/config/presets/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { RecheckConfig } from '../../types/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* `recheck/technical-english` — an original rule set that helps writers
|
|
4
|
+
* follow the principles of ASD-STE100 Simplified Technical English.
|
|
5
|
+
*
|
|
6
|
+
* ASD-STE100 Simplified Technical English is a Copyright and a Trade Mark
|
|
7
|
+
* of ASD, Brussels, Belgium. This preset is an independent work: ASD and
|
|
8
|
+
* the STEMG do not review, validate, approve, certify, or endorse it. It
|
|
9
|
+
* reproduces no part of the standard — not its text and not its dictionary.
|
|
10
|
+
* Each rule implements a publicly documented writing principle in Recheck's
|
|
11
|
+
* own vocabulary. Provenance, the STEMG correspondence, and the list of
|
|
12
|
+
* deliberate omissions: packages/recheck/presets/technical-english/
|
|
13
|
+
* PROVENANCE.md.
|
|
14
|
+
*
|
|
15
|
+
* WHAT DOESN'T SHIP, AND WHY:
|
|
16
|
+
*
|
|
17
|
+
* - NO approved-word dictionary. The STE dictionary is part of the
|
|
18
|
+
* copyrighted standard; encoding it would reproduce the standard in
|
|
19
|
+
* part. The standard's Special Usage Rights grant reproduction rights
|
|
20
|
+
* only to a closed list of aerospace and defense organizations, which
|
|
21
|
+
* a public npm package distributes past — so a dictionary rule needs
|
|
22
|
+
* written authority from an ASD officer (see PROVENANCE.md). For
|
|
23
|
+
* general word-choice checking, compose with `recheck/plain-language`
|
|
24
|
+
* (public-domain source, similar intent).
|
|
25
|
+
* - NO noun-cluster rule (the standard limits noun clusters to three).
|
|
26
|
+
* Counting nouns needs part-of-speech tagging; any regex approximation
|
|
27
|
+
* would flag ordinary prose constantly.
|
|
28
|
+
* - NO present-tense rule. `will` is a legitimate word in changelogs,
|
|
29
|
+
* roadmaps, and promises; a tense rule would fight real documentation.
|
|
30
|
+
* - NO one-instruction-per-sentence rule. Not reliably detectable;
|
|
31
|
+
* the sentence-length rule is the closest proxy.
|
|
32
|
+
*/
|
|
33
|
+
export declare function buildTechnicalEnglishPreset(): RecheckConfig;
|
|
34
|
+
//# sourceMappingURL=technical-english.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"technical-english.d.ts","sourceRoot":"","sources":["../../../src/config/presets/technical-english.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,2BAA2B,IAAI,aAAa,CAqD3D"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `recheck/technical-english` — an original rule set that helps writers
|
|
3
|
+
* follow the principles of ASD-STE100 Simplified Technical English.
|
|
4
|
+
*
|
|
5
|
+
* ASD-STE100 Simplified Technical English is a Copyright and a Trade Mark
|
|
6
|
+
* of ASD, Brussels, Belgium. This preset is an independent work: ASD and
|
|
7
|
+
* the STEMG do not review, validate, approve, certify, or endorse it. It
|
|
8
|
+
* reproduces no part of the standard — not its text and not its dictionary.
|
|
9
|
+
* Each rule implements a publicly documented writing principle in Recheck's
|
|
10
|
+
* own vocabulary. Provenance, the STEMG correspondence, and the list of
|
|
11
|
+
* deliberate omissions: packages/recheck/presets/technical-english/
|
|
12
|
+
* PROVENANCE.md.
|
|
13
|
+
*
|
|
14
|
+
* WHAT DOESN'T SHIP, AND WHY:
|
|
15
|
+
*
|
|
16
|
+
* - NO approved-word dictionary. The STE dictionary is part of the
|
|
17
|
+
* copyrighted standard; encoding it would reproduce the standard in
|
|
18
|
+
* part. The standard's Special Usage Rights grant reproduction rights
|
|
19
|
+
* only to a closed list of aerospace and defense organizations, which
|
|
20
|
+
* a public npm package distributes past — so a dictionary rule needs
|
|
21
|
+
* written authority from an ASD officer (see PROVENANCE.md). For
|
|
22
|
+
* general word-choice checking, compose with `recheck/plain-language`
|
|
23
|
+
* (public-domain source, similar intent).
|
|
24
|
+
* - NO noun-cluster rule (the standard limits noun clusters to three).
|
|
25
|
+
* Counting nouns needs part-of-speech tagging; any regex approximation
|
|
26
|
+
* would flag ordinary prose constantly.
|
|
27
|
+
* - NO present-tense rule. `will` is a legitimate word in changelogs,
|
|
28
|
+
* roadmaps, and promises; a tense rule would fight real documentation.
|
|
29
|
+
* - NO one-instruction-per-sentence rule. Not reliably detectable;
|
|
30
|
+
* the sentence-length rule is the closest proxy.
|
|
31
|
+
*/
|
|
32
|
+
export function buildTechnicalEnglishPreset() {
|
|
33
|
+
const rules = {};
|
|
34
|
+
const SITE = 'https://www.asd-ste100.org';
|
|
35
|
+
// The standard's best-known numeric principle: procedural sentences stay
|
|
36
|
+
// within 20 words, descriptive sentences within 25. A linter cannot tell
|
|
37
|
+
// a procedure from a description, so the default enforces the lenient
|
|
38
|
+
// bound; a procedures-only project tightens max to 20 in its own config.
|
|
39
|
+
rules['technical-english/sentence-length'] = {
|
|
40
|
+
severity: 'warn',
|
|
41
|
+
scope: 'sentence',
|
|
42
|
+
link: SITE,
|
|
43
|
+
message: 'Sentence is %s %s long; ASD-STE100 recommends at most 20 words in procedures and 25 in descriptive text (max %s).',
|
|
44
|
+
assertions: { length: { unit: 'words', max: 25 } },
|
|
45
|
+
};
|
|
46
|
+
// Paragraphs stay within six sentences.
|
|
47
|
+
rules['technical-english/paragraph-length'] = {
|
|
48
|
+
severity: 'warn',
|
|
49
|
+
scope: 'paragraph',
|
|
50
|
+
link: SITE,
|
|
51
|
+
message: 'Paragraph is %s %s long; ASD-STE100 recommends at most 6 sentences per paragraph (max %s).',
|
|
52
|
+
assertions: { length: { unit: 'sentences', max: 6 } },
|
|
53
|
+
};
|
|
54
|
+
// Use the active voice. A heuristic (be-verb followed by a participle),
|
|
55
|
+
// so it ships at `info`: visible, never blocking. The participle
|
|
56
|
+
// alternation covers regular -ed forms plus the common irregulars; the
|
|
57
|
+
// irregular list is ordinary linguistic knowledge, not standard content.
|
|
58
|
+
rules['technical-english/passive-voice'] = {
|
|
59
|
+
severity: 'info',
|
|
60
|
+
scope: 'sentence',
|
|
61
|
+
link: SITE,
|
|
62
|
+
message: 'Prefer the active voice; ASD-STE100 recommends it ("%s").',
|
|
63
|
+
assertions: {
|
|
64
|
+
pattern: {
|
|
65
|
+
ignoreCase: true,
|
|
66
|
+
tokens: [
|
|
67
|
+
'\\b(?:is|are|was|were|be|been|being)\\s+(?:\\w+ed|begun|broken|brought|built|chosen|done|drawn|driven|found|given|held|hidden|kept|known|left|lost|made|meant|paid|put|read|said|seen|sent|set|shown|taken|told|thrown|understood|written)\\b',
|
|
68
|
+
],
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
};
|
|
72
|
+
// Detection-only by design, matching the other style presets: no rule in
|
|
73
|
+
// this preset auto-fixes, ever.
|
|
74
|
+
for (const rule of Object.values(rules)) {
|
|
75
|
+
rule.fix = false;
|
|
76
|
+
}
|
|
77
|
+
return rules;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=technical-english.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"technical-english.js","sourceRoot":"","sources":["../../../src/config/presets/technical-english.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,UAAU,2BAA2B;IACzC,MAAM,KAAK,GAAkB,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,4BAA4B,CAAC;IAE1C,yEAAyE;IACzE,yEAAyE;IACzE,sEAAsE;IACtE,yEAAyE;IACzE,KAAK,CAAC,mCAAmC,CAAC,GAAG;QAC3C,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,UAAU;QACjB,IAAI,EAAE,IAAI;QACV,OAAO,EACL,mHAAmH;QACrH,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE;KACnD,CAAC;IAEF,wCAAwC;IACxC,KAAK,CAAC,oCAAoC,CAAC,GAAG;QAC5C,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,IAAI;QACV,OAAO,EACL,4FAA4F;QAC9F,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;KACtD,CAAC;IAEF,wEAAwE;IACxE,iEAAiE;IACjE,uEAAuE;IACvE,yEAAyE;IACzE,KAAK,CAAC,iCAAiC,CAAC,GAAG;QACzC,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,UAAU;QACjB,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,2DAA2D;QACpE,UAAU,EAAE;YACV,OAAO,EAAE;gBACP,UAAU,EAAE,IAAI;gBAChB,MAAM,EAAE;oBACN,+OAA+O;iBAChP;aACF;SACF;KACF,CAAC;IAEF,yEAAyE;IACzE,gCAAgC;IAChC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACvC,IAA0B,CAAC,GAAG,GAAG,KAAK,CAAC;IAC1C,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdoc-realm-schema.d.ts","sourceRoot":"","sources":["../../src/data/markdoc-realm-schema.ts"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE,eAAO,MAAM,oBAAoB,EAAE,
|
|
1
|
+
{"version":3,"file":"markdoc-realm-schema.d.ts","sourceRoot":"","sources":["../../src/data/markdoc-realm-schema.ts"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE,eAAO,MAAM,oBAAoB,EAAE,aA4vBlC,CAAC"}
|
|
@@ -62,9 +62,27 @@ export const MARKDOC_REALM_SCHEMA = {
|
|
|
62
62
|
default: 'start',
|
|
63
63
|
enum: ['start', 'center', 'end'],
|
|
64
64
|
},
|
|
65
|
+
badge: {
|
|
66
|
+
type: 'string',
|
|
67
|
+
},
|
|
68
|
+
badgeColor: {
|
|
69
|
+
type: 'string',
|
|
70
|
+
},
|
|
71
|
+
badgeIcon: {
|
|
72
|
+
type: 'string',
|
|
73
|
+
},
|
|
74
|
+
badgeIconRawContent: {
|
|
75
|
+
type: 'string',
|
|
76
|
+
},
|
|
77
|
+
cta: {
|
|
78
|
+
type: 'string',
|
|
79
|
+
},
|
|
65
80
|
icon: {
|
|
66
81
|
type: 'string',
|
|
67
82
|
},
|
|
83
|
+
iconColor: {
|
|
84
|
+
type: 'string',
|
|
85
|
+
},
|
|
68
86
|
iconPosition: {
|
|
69
87
|
type: 'string',
|
|
70
88
|
default: 'auto',
|
|
@@ -93,6 +111,10 @@ export const MARKDOC_REALM_SCHEMA = {
|
|
|
93
111
|
lineClamp: {
|
|
94
112
|
type: 'number',
|
|
95
113
|
},
|
|
114
|
+
linkIcon: {
|
|
115
|
+
type: 'string',
|
|
116
|
+
enum: ['arrow', 'chevron'],
|
|
117
|
+
},
|
|
96
118
|
title: {
|
|
97
119
|
type: 'string',
|
|
98
120
|
required: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdoc-realm-schema.js","sourceRoot":"","sources":["../../src/data/markdoc-realm-schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"markdoc-realm-schema.js","sourceRoot":"","sources":["../../src/data/markdoc-realm-schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link-fragments.d.ts","sourceRoot":"","sources":["../../../src/rules/token/link-fragments.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"link-fragments.d.ts","sourceRoot":"","sources":["../../../src/rules/token/link-fragments.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAwZ7C,eAAO,MAAM,aAAa,EAAE,SAe3B,CAAC"}
|
|
@@ -4,9 +4,10 @@
|
|
|
4
4
|
// and image targets must exist on disk, and a `file.md#anchor` fragment
|
|
5
5
|
// must exist in the target. Upstream never validates other files.
|
|
6
6
|
import { readFileSync, statSync } from 'node:fs';
|
|
7
|
+
import picomatch from 'picomatch';
|
|
7
8
|
import { dirname, extname, join, resolve, sep } from 'node:path';
|
|
8
9
|
import { filterByTypes, parseMarkdown } from '../../parser/index.js';
|
|
9
|
-
import { filterByPredicate, getHtmlAttributeRe, getHtmlTagInfo, isDocfxTab, toWellFormedString, } from './helpers.js';
|
|
10
|
+
import { clearHtmlCommentText, filterByPredicate, getHtmlAttributeRe, getHtmlTagInfo, isDocfxTab, toWellFormedString, } from './helpers.js';
|
|
10
11
|
/** Recursive-descendant type filter (any depth), matching upstream's `filterByTypes(tokens, types)` semantics -- distinct from `getDescendantsByType`'s single-type-per-depth path walk, which is the wrong shape here since `resourceDestinationString`/`definitionDestinationString` nest under a literal/raw alternation this call site doesn't want to spell out. */
|
|
11
12
|
function descendantsOfType(children, type) {
|
|
12
13
|
return filterByPredicate(children, (token) => token.type === type);
|
|
@@ -15,7 +16,7 @@ const idRe = getHtmlAttributeRe('id');
|
|
|
15
16
|
const nameRe = getHtmlAttributeRe('name');
|
|
16
17
|
const anchorRe = /\{(#[a-z\d]+(?:[-_][a-z\d]+)*)\}/gu;
|
|
17
18
|
const lineFragmentRe = /^#(?:L\d+(?:C\d+)?-L\d+(?:C\d+)?|L\d+)$/;
|
|
18
|
-
const childrenExclude = new Set(['image', 'reference', 'resource']);
|
|
19
|
+
const childrenExclude = new Set(['image', 'reference', 'resource', 'markdocTag']);
|
|
19
20
|
const tokensInclude = new Set(['characterEscapeValue', 'codeTextData', 'data', 'mathTextData']);
|
|
20
21
|
/**
|
|
21
22
|
* Converts a Markdown heading into an HTML fragment according to the rules
|
|
@@ -28,6 +29,11 @@ function convertHeadingToHTMLFragment(headingText) {
|
|
|
28
29
|
.join('');
|
|
29
30
|
return ('#' +
|
|
30
31
|
encodeURIComponent(toWellFormedString(inlineText
|
|
32
|
+
// Markdoc tag markers never render, so they never slug. With
|
|
33
|
+
// markdoc parsing on, the tag subtree is excluded above; with it
|
|
34
|
+
// off, the raw {% ... %} text is stripped here.
|
|
35
|
+
.replace(/\{%-?[\s\S]*?-?%\}/g, '')
|
|
36
|
+
.trim()
|
|
31
37
|
.toLowerCase()
|
|
32
38
|
// RegExp source with Ruby's \p{Word} expanded into its General Categories
|
|
33
39
|
// https://github.com/gjtorikian/html-pipeline/blob/main/lib/html/pipeline/toc_filter.rb
|
|
@@ -42,7 +48,60 @@ function unescapeStringTokenText(token) {
|
|
|
42
48
|
.join('');
|
|
43
49
|
}
|
|
44
50
|
/** Anchors a document exposes: heading slugs, `{#anchors}`, and HTML id/name anchors. */
|
|
45
|
-
|
|
51
|
+
// Mirrors the theme's client-side enhanceDetails (theme/src/core/utils/
|
|
52
|
+
// details.ts): a <details> without an explicit id gets one derived from its
|
|
53
|
+
// <summary> text -- whitespace collapsed to hyphens (leading and trailing
|
|
54
|
+
// included, exactly like the browser's textContent), lowercased, punctuation
|
|
55
|
+
// kept -- and a duplicate takes a -<index> suffix. Explicit ids never enter
|
|
56
|
+
// the duplicate set, matching the theme. Ids store URI-encoded, the form
|
|
57
|
+
// link lookups use. Matches inside code blocks are skipped: the theme only
|
|
58
|
+
// ids live elements, never rendered examples.
|
|
59
|
+
function collectDetailsAnchors(content, tree, fragments) {
|
|
60
|
+
const codeLines = new Set();
|
|
61
|
+
for (const block of filterByTypes(tree, ['codeFenced', 'codeIndented'])) {
|
|
62
|
+
for (let line = block.startLine; line <= block.endLine; line++)
|
|
63
|
+
codeLines.add(line);
|
|
64
|
+
}
|
|
65
|
+
const lineStarts = [0];
|
|
66
|
+
for (let offset = 0; offset < content.length; offset++) {
|
|
67
|
+
if (content[offset] === '\n')
|
|
68
|
+
lineStarts.push(offset + 1);
|
|
69
|
+
}
|
|
70
|
+
const lineOf = (offset) => {
|
|
71
|
+
let line = 0;
|
|
72
|
+
while (line + 1 < lineStarts.length && lineStarts[line + 1] <= offset)
|
|
73
|
+
line++;
|
|
74
|
+
return line + 1;
|
|
75
|
+
};
|
|
76
|
+
const setAnchor = (id) => fragments.set(`#${encodeURIComponent(id)}`, 0);
|
|
77
|
+
const generatedIds = new Set();
|
|
78
|
+
const detailsRe = /<details\b([^>]*)>/gi;
|
|
79
|
+
let index = 0;
|
|
80
|
+
let match;
|
|
81
|
+
while ((match = detailsRe.exec(content)) !== null) {
|
|
82
|
+
if (codeLines.has(lineOf(match.index)))
|
|
83
|
+
continue;
|
|
84
|
+
const explicitId = /\bid\s*=\s*["']([^"']+)["']/i.exec(match[1])?.[1];
|
|
85
|
+
if (explicitId) {
|
|
86
|
+
setAnchor(explicitId);
|
|
87
|
+
index++;
|
|
88
|
+
continue;
|
|
89
|
+
}
|
|
90
|
+
const closeIndex = content.indexOf('</details>', match.index);
|
|
91
|
+
const scope = content.slice(match.index, closeIndex === -1 ? undefined : closeIndex);
|
|
92
|
+
const summaryText = /<summary\b[^>]*>([\s\S]*?)<\/summary>/i
|
|
93
|
+
.exec(scope)?.[1]
|
|
94
|
+
?.replace(/<[^>]+>/g, '');
|
|
95
|
+
const generated = summaryText
|
|
96
|
+
? summaryText.replace(/\s+/g, '-').toLowerCase()
|
|
97
|
+
: `details-${index}`;
|
|
98
|
+
const id = generatedIds.has(generated) ? `${generated}-${index}` : generated;
|
|
99
|
+
generatedIds.add(id);
|
|
100
|
+
setAnchor(id);
|
|
101
|
+
index++;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
function collectFragments(tree, content) {
|
|
46
105
|
const fragments = new Map([['#top', 0]]);
|
|
47
106
|
for (const headingText of filterByTypes(tree, ['atxHeadingText', 'setextHeadingText'])) {
|
|
48
107
|
const fragment = convertHeadingToHTMLFragment(headingText);
|
|
@@ -74,6 +133,7 @@ function collectFragments(tree) {
|
|
|
74
133
|
}
|
|
75
134
|
}
|
|
76
135
|
}
|
|
136
|
+
collectDetailsAnchors(content, tree, fragments);
|
|
77
137
|
return fragments;
|
|
78
138
|
}
|
|
79
139
|
const SCHEME_RE = /^[a-z][a-z0-9+.-]*:/i;
|
|
@@ -95,7 +155,10 @@ function resolveTargetFile(absolutePath, markdoc) {
|
|
|
95
155
|
let fragments = null;
|
|
96
156
|
if (stats.isFile() && ['.md', '.markdown'].includes(extname(absolutePath).toLowerCase())) {
|
|
97
157
|
try {
|
|
98
|
-
|
|
158
|
+
const targetContent = readFileSync(absolutePath, 'utf8');
|
|
159
|
+
// Comment-cleared, matching the in-file path: a <details> inside an
|
|
160
|
+
// HTML comment never renders and must not produce an anchor.
|
|
161
|
+
fragments = collectFragments(parseMarkdown(targetContent, { markdoc }), clearHtmlCommentText(targetContent));
|
|
99
162
|
}
|
|
100
163
|
catch {
|
|
101
164
|
fragments = null;
|
|
@@ -163,7 +226,12 @@ function checkLinkFragments(ctx) {
|
|
|
163
226
|
const ignoredPattern = String(ctx.config.ignoredPattern ?? '');
|
|
164
227
|
const ignoredPatternRe = new RegExp(ignoredPattern || '^$');
|
|
165
228
|
const rootDir = rootDirFor(ctx.config.rootDir, ctx.filePath);
|
|
166
|
-
|
|
229
|
+
// Destinations to skip entirely -- routes a renderer generates from data,
|
|
230
|
+
// with no file on disk to validate against.
|
|
231
|
+
const ignoredTargets = Array.isArray(ctx.config.ignoredTargets)
|
|
232
|
+
? ctx.config.ignoredTargets
|
|
233
|
+
: [];
|
|
234
|
+
const fragments = collectFragments(ctx.tree, ctx.lines.join('\n'));
|
|
167
235
|
const baseDir = dirname(ctx.filePath);
|
|
168
236
|
const checkCrossFileDestination = (rawDestination, link, allowFragmentCheck) => {
|
|
169
237
|
if (rawDestination === '' ||
|
|
@@ -175,6 +243,14 @@ function checkLinkFragments(ctx) {
|
|
|
175
243
|
const isAbsolute = rawDestination.startsWith('/');
|
|
176
244
|
if (isAbsolute && rootDir === '')
|
|
177
245
|
return;
|
|
246
|
+
const destinationPath = rawDestination.split('#')[0].split('?')[0];
|
|
247
|
+
// Leading ./ and ../ segments never match a glob's `**`, so patterns
|
|
248
|
+
// also test against the destination with those segments removed.
|
|
249
|
+
const dotless = destinationPath.replace(/^(\.\.\/|\.\/)+/, '');
|
|
250
|
+
if (ignoredTargets.length > 0 &&
|
|
251
|
+
ignoredTargets.some((pattern) => picomatch.isMatch(destinationPath, pattern) || picomatch.isMatch(dotless, pattern))) {
|
|
252
|
+
return;
|
|
253
|
+
}
|
|
178
254
|
const hashIndex = rawDestination.indexOf('#');
|
|
179
255
|
const fragment = hashIndex === -1 ? '' : rawDestination.slice(hashIndex);
|
|
180
256
|
let targetPath = hashIndex === -1 ? rawDestination : rawDestination.slice(0, hashIndex);
|
|
@@ -297,6 +373,7 @@ export const linkFragments = {
|
|
|
297
373
|
ignoredPattern: '',
|
|
298
374
|
crossFile: false,
|
|
299
375
|
rootDir: '',
|
|
376
|
+
ignoredTargets: [],
|
|
300
377
|
},
|
|
301
378
|
check(ctx) {
|
|
302
379
|
checkLinkFragments(ctx);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link-fragments.js","sourceRoot":"","sources":["../../../src/rules/token/link-fragments.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"link-fragments.js","sourceRoot":"","sources":["../../../src/rules/token/link-fragments.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# ==============================================================================
|
|
2
|
+
# Appendix — candidates NOT shipped by recheck/technical-english (hand-maintained)
|
|
3
|
+
# ==============================================================================
|
|
4
|
+
# This file is appended verbatim to the generated example above by
|
|
5
|
+
# `pnpm examples:generate` (see scripts/generate-examples.mjs).
|
|
6
|
+
#
|
|
7
|
+
# Full detail and reasons: packages/recheck/presets/technical-english/PROVENANCE.md
|
|
8
|
+
#
|
|
9
|
+
# ------------------------------------------------------------------------------
|
|
10
|
+
# NOT SHIPPED — the STE approved-word dictionary
|
|
11
|
+
# ------------------------------------------------------------------------------
|
|
12
|
+
# The dictionary is part of the copyrighted standard; encoding it would
|
|
13
|
+
# reproduce the standard in part. For general word-choice checking, compose
|
|
14
|
+
# this preset with recheck/plain-language.
|
|
15
|
+
#
|
|
16
|
+
# ------------------------------------------------------------------------------
|
|
17
|
+
# NOT SHIPPED — noun clusters, present tense, one instruction per sentence
|
|
18
|
+
# ------------------------------------------------------------------------------
|
|
19
|
+
# Noun clusters need part-of-speech tagging; a tense rule fights legitimate
|
|
20
|
+
# `will` in changelogs and roadmaps; one-instruction-per-sentence is not
|
|
21
|
+
# reliably detectable (sentence length is the proxy).
|
|
22
|
+
#
|
|
23
|
+
# ------------------------------------------------------------------------------
|
|
24
|
+
# TIGHTEN for procedure-only content
|
|
25
|
+
# ------------------------------------------------------------------------------
|
|
26
|
+
# The shipped default is the descriptive-text bound (25 words). A project
|
|
27
|
+
# whose corpus is procedures overrides to the procedural bound:
|
|
28
|
+
#
|
|
29
|
+
# technical-english/sentence-length:
|
|
30
|
+
# assertions:
|
|
31
|
+
# length:
|
|
32
|
+
# unit: words
|
|
33
|
+
# max: 20
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
# ==============================================================================
|
|
2
|
+
# recheck/technical-english — ASD-STE100-inspired writing principles, as a config
|
|
3
|
+
# ==============================================================================
|
|
4
|
+
# Source: Publicly documented principles of ASD-STE100 Simplified
|
|
5
|
+
# Technical English. https://www.asd-ste100.org
|
|
6
|
+
# Notice: ASD-STE100 Simplified Technical English is a Copyright and
|
|
7
|
+
# a Trade Mark of ASD, Brussels, Belgium. This preset is an
|
|
8
|
+
# independent work; ASD and the STEMG do not review, approve,
|
|
9
|
+
# certify, or endorse it. It reproduces no part of the
|
|
10
|
+
# standard.
|
|
11
|
+
# Provenance: packages/recheck/presets/technical-english/PROVENANCE.md
|
|
12
|
+
#
|
|
13
|
+
# Generated file — do not hand-edit. Regenerate with `pnpm examples:generate`
|
|
14
|
+
# after changing src/config/presets/technical-english.ts or this file's
|
|
15
|
+
# appendix (examples/appendices/technical-english.appendix.yaml).
|
|
16
|
+
|
|
17
|
+
# ------------------------------------------------------------------------------
|
|
18
|
+
# What to paste
|
|
19
|
+
# ------------------------------------------------------------------------------
|
|
20
|
+
# Three rules: sentence length (max 25 words; the descriptive-text bound),
|
|
21
|
+
# paragraph length (max 6 sentences), and a passive-voice heuristic at
|
|
22
|
+
# info. For word-choice checking, compose with recheck/plain-language;
|
|
23
|
+
# the STE approved-word dictionary is deliberately NOT encoded (see the
|
|
24
|
+
# Notice above and PROVENANCE.md).
|
|
25
|
+
|
|
26
|
+
extends:
|
|
27
|
+
- recheck/technical-english
|
|
28
|
+
|
|
29
|
+
# ------------------------------------------------------------------------------
|
|
30
|
+
# How to tune it
|
|
31
|
+
# ------------------------------------------------------------------------------
|
|
32
|
+
# Your own rule keys always win over the preset's (`extends` resolves
|
|
33
|
+
# first, then your top-level keys are merged on top, per rule key).
|
|
34
|
+
#
|
|
35
|
+
# Tighten the sentence bound for procedure-only content (the standard
|
|
36
|
+
# recommends 20 words in procedures, 25 in descriptive text):
|
|
37
|
+
#
|
|
38
|
+
# technical-english/sentence-length:
|
|
39
|
+
# severity: warn
|
|
40
|
+
# scope: sentence
|
|
41
|
+
# assertions:
|
|
42
|
+
# length:
|
|
43
|
+
# unit: words
|
|
44
|
+
# max: 20
|
|
45
|
+
#
|
|
46
|
+
# The passive-voice heuristic ships at `info`; turn it off if it reads
|
|
47
|
+
# as noise for your corpus:
|
|
48
|
+
#
|
|
49
|
+
# technical-english/passive-voice:
|
|
50
|
+
# severity: off
|
|
51
|
+
#
|
|
52
|
+
# Silence one occurrence instead of the whole rule, with an inline HTML
|
|
53
|
+
# comment directive — works on any rule, from any preset:
|
|
54
|
+
#
|
|
55
|
+
# <!-- recheck-disable-next-line technical-english/sentence-length -->
|
|
56
|
+
|
|
57
|
+
# ------------------------------------------------------------------------------
|
|
58
|
+
# Full expansion (reference)
|
|
59
|
+
# ------------------------------------------------------------------------------
|
|
60
|
+
# This is what `extends: [recheck/technical-english]` resolves to today: all 3 rules,
|
|
61
|
+
# alphabetized by rule id, generated straight from the live preset (`pnpm
|
|
62
|
+
# examples:generate`). You do not need to copy any of it — the extends
|
|
63
|
+
# block above already gives you all of this. Read it to see exactly what
|
|
64
|
+
# you are adopting, or as a starting point if you would rather pin or fork
|
|
65
|
+
# specific rules into your own config instead of extending the preset.
|
|
66
|
+
#
|
|
67
|
+
# `fix: false` on every rule below means what it says: detection-only, no
|
|
68
|
+
# exceptions — see "How to tune it" above and PROVENANCE.md for why.
|
|
69
|
+
|
|
70
|
+
technical-english/paragraph-length:
|
|
71
|
+
severity: warn
|
|
72
|
+
message: Paragraph is %s %s long; ASD-STE100 recommends at most 6 sentences per paragraph (max %s).
|
|
73
|
+
link: https://www.asd-ste100.org
|
|
74
|
+
scope: paragraph
|
|
75
|
+
fix: false
|
|
76
|
+
assertions:
|
|
77
|
+
length:
|
|
78
|
+
unit: sentences
|
|
79
|
+
max: 6
|
|
80
|
+
technical-english/passive-voice:
|
|
81
|
+
severity: info
|
|
82
|
+
message: Prefer the active voice; ASD-STE100 recommends it ("%s").
|
|
83
|
+
link: https://www.asd-ste100.org
|
|
84
|
+
scope: sentence
|
|
85
|
+
fix: false
|
|
86
|
+
assertions:
|
|
87
|
+
pattern:
|
|
88
|
+
ignoreCase: true
|
|
89
|
+
tokens:
|
|
90
|
+
- \b(?:is|are|was|were|be|been|being)\s+(?:\w+ed|begun|broken|brought|built|chosen|done|drawn|driven|found|given|held|hidden|kept|known|left|lost|made|meant|paid|put|read|said|seen|sent|set|shown|taken|told|thrown|understood|written)\b
|
|
91
|
+
technical-english/sentence-length:
|
|
92
|
+
severity: warn
|
|
93
|
+
message: Sentence is %s %s long; ASD-STE100 recommends at most 20 words in procedures and 25 in descriptive text (max %s).
|
|
94
|
+
link: https://www.asd-ste100.org
|
|
95
|
+
scope: sentence
|
|
96
|
+
fix: false
|
|
97
|
+
assertions:
|
|
98
|
+
length:
|
|
99
|
+
unit: words
|
|
100
|
+
max: 25
|
|
101
|
+
|
|
102
|
+
# ==============================================================================
|
|
103
|
+
# Appendix — candidates NOT shipped by recheck/technical-english (hand-maintained)
|
|
104
|
+
# ==============================================================================
|
|
105
|
+
# This file is appended verbatim to the generated example above by
|
|
106
|
+
# `pnpm examples:generate` (see scripts/generate-examples.mjs).
|
|
107
|
+
#
|
|
108
|
+
# Full detail and reasons: packages/recheck/presets/technical-english/PROVENANCE.md
|
|
109
|
+
#
|
|
110
|
+
# ------------------------------------------------------------------------------
|
|
111
|
+
# NOT SHIPPED — the STE approved-word dictionary
|
|
112
|
+
# ------------------------------------------------------------------------------
|
|
113
|
+
# The dictionary is part of the copyrighted standard; encoding it would
|
|
114
|
+
# reproduce the standard in part. For general word-choice checking, compose
|
|
115
|
+
# this preset with recheck/plain-language.
|
|
116
|
+
#
|
|
117
|
+
# ------------------------------------------------------------------------------
|
|
118
|
+
# NOT SHIPPED — noun clusters, present tense, one instruction per sentence
|
|
119
|
+
# ------------------------------------------------------------------------------
|
|
120
|
+
# Noun clusters need part-of-speech tagging; a tense rule fights legitimate
|
|
121
|
+
# `will` in changelogs and roadmaps; one-instruction-per-sentence is not
|
|
122
|
+
# reliably detectable (sentence length is the proxy).
|
|
123
|
+
#
|
|
124
|
+
# ------------------------------------------------------------------------------
|
|
125
|
+
# TIGHTEN for procedure-only content
|
|
126
|
+
# ------------------------------------------------------------------------------
|
|
127
|
+
# The shipped default is the descriptive-text bound (25 words). A project
|
|
128
|
+
# whose corpus is procedures overrides to the procedural bound:
|
|
129
|
+
#
|
|
130
|
+
# technical-english/sentence-length:
|
|
131
|
+
# assertions:
|
|
132
|
+
# length:
|
|
133
|
+
# unit: words
|
|
134
|
+
# max: 20
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@redocly/recheck",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.0",
|
|
4
4
|
"description": "Content linting (configurable + built-in rules)",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"typescript": "6.0.3",
|
|
60
60
|
"vitest": "4.1.10",
|
|
61
61
|
"@redocly/portal": "0.68.3",
|
|
62
|
-
"@redocly/theme": "0.69.0-next.
|
|
62
|
+
"@redocly/theme": "0.69.0-next.2"
|
|
63
63
|
},
|
|
64
64
|
"scripts": {
|
|
65
65
|
"build": "tsgo && tsgo --noEmit -p tsconfig.typecheck.json",
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Provenance: `recheck/technical-english`
|
|
2
|
+
|
|
3
|
+
An original rule set that helps writers follow the principles of ASD-STE100 Simplified Technical English.
|
|
4
|
+
|
|
5
|
+
**ASD-STE100 Simplified Technical English is a Copyright and a Trade Mark of ASD, Brussels, Belgium.**
|
|
6
|
+
|
|
7
|
+
This preset is an independent work.
|
|
8
|
+
ASD and the ASD Simplified Technical English Maintenance Group (STEMG) do not review, validate, approve, certify, or endorse it, per their long-standing non-endorsement policy.
|
|
9
|
+
The preset reproduces no part of the standard: not its text, and not its dictionary.
|
|
10
|
+
Each rule implements a publicly documented writing principle in Recheck's own vocabulary and wording.
|
|
11
|
+
|
|
12
|
+
## The correspondence this rests on
|
|
13
|
+
|
|
14
|
+
Adam Altman asked the STEMG for permission on 2026-08-07 and again on 2026-08-19.
|
|
15
|
+
The STEMG replied on 2026-08-20: they endorse no tools by policy, they do not object to a factual reference to ASD-STE100 as the reference standard for a third-party rule set, any reference must carry the copyright and trademark statement above, and reproduction of the standard in whole or in part stays governed by its copyright and its Special Usage Rights section.
|
|
16
|
+
The full reply is preserved on issue #25886.
|
|
17
|
+
|
|
18
|
+
## What ships
|
|
19
|
+
|
|
20
|
+
| Rule | Principle | Default |
|
|
21
|
+
| --- | --- | --- |
|
|
22
|
+
| `technical-english/sentence-length` | Short sentences: at most 20 words in procedures, 25 in descriptive text | `warn`, max 25 (a linter cannot tell procedure from description; tighten to 20 for procedure-only content) |
|
|
23
|
+
| `technical-english/paragraph-length` | At most 6 sentences per paragraph | `warn` |
|
|
24
|
+
| `technical-english/passive-voice` | Use the active voice | `info` (heuristic: be-verb + participle; the irregular-participle list is ordinary linguistic knowledge) |
|
|
25
|
+
|
|
26
|
+
The numeric thresholds are factual claims about what the standard recommends, widely documented in public secondary material and ASD's own public pages.
|
|
27
|
+
Facts are not copyrightable expression; the rule messages state them in this project's own words.
|
|
28
|
+
|
|
29
|
+
## Deliberate omissions
|
|
30
|
+
|
|
31
|
+
- **The approved-word dictionary.**
|
|
32
|
+
The STE dictionary is part of the copyrighted standard; encoding it would reproduce the standard in part.
|
|
33
|
+
The Special Usage Rights section (Issue 9, Copyright notices page) was reviewed on 2026-08-20: it grants free reproduction rights only to a closed list of aerospace and defense organizations (ASD, AIA, AIAC, and ICCAIA member ecosystems, their customers, defense ministries, Airlines for America, airworthiness authorities, and universities for educational purposes).
|
|
34
|
+
Redocly is not in any of those categories, and a public npm package distributes past every one of them.
|
|
35
|
+
Outside that list, the copyright notice requires written authority from an ASD officer for any reproduction in whole or in part — so a dictionary rule stays out of scope unless ASD grants that written authority.
|
|
36
|
+
For general word-choice checking, compose with `recheck/plain-language`.
|
|
37
|
+
- **Noun-cluster limits (three-noun rule).** Needs part-of-speech tagging; a regex approximation would flag ordinary prose constantly.
|
|
38
|
+
- **Present-tense enforcement.** `will` is legitimate in changelogs, roadmaps, and promises.
|
|
39
|
+
- **One instruction per sentence.** Not reliably detectable; sentence length is the closest proxy.
|
|
40
|
+
|
|
41
|
+
## Composition
|
|
42
|
+
|
|
43
|
+
Pairs well with `recheck/plain-language` (word choice, public-domain source) and `recheck/markdown` (structure).
|
|
44
|
+
Expected overlap when stacked with a flagship preset: the flagships ship their own sentence-length rules with different sourced thresholds; the findings co-fire by design, the same posture `plain-language/paragraph-sentence-count` documents.
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: recheck-config
|
|
3
|
+
description: Use when you create or tune a recheck.yaml for a project — choose presets, set severities from measured counts, add exceptions, adopt a baseline, and validate the result.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Write and tune recheck.yaml
|
|
7
|
+
|
|
8
|
+
Configure recheck for a project the way its maintainers would: measure first, decide per rule, and record intent.
|
|
9
|
+
|
|
10
|
+
## Start a new config
|
|
11
|
+
|
|
12
|
+
1. Begin with the structural preset and validate:
|
|
13
|
+
|
|
14
|
+
```yaml
|
|
15
|
+
extends:
|
|
16
|
+
- recheck/markdown
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
npx recheck validate
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
2. Add prose rules deliberately, not wholesale.
|
|
24
|
+
`recheck/prose` is a small starter; `recheck/google` and `recheck/microsoft` are large style guides that need tuning before they help.
|
|
25
|
+
|
|
26
|
+
## Tune severities from measurements, not taste
|
|
27
|
+
|
|
28
|
+
1. Run the whole corpus and count findings per rule:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
npx recheck run docs --output json --annotations-limit 5000 --output-path findings.json
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
Group the findings by `ruleName` and look at real examples of each before deciding anything.
|
|
35
|
+
|
|
36
|
+
2. Decide per rule from the counts:
|
|
37
|
+
- `error` — enforce now; the corpus is clean or you fix it in the same change.
|
|
38
|
+
- `warn` — a worklist; visible, not blocking.
|
|
39
|
+
- `off` — decided against; keep a comment that says why, or the decision is lost.
|
|
40
|
+
|
|
41
|
+
3. Prefer fixing content over configuring around it.
|
|
42
|
+
Run `--fix` first; most structural findings repair themselves.
|
|
43
|
+
|
|
44
|
+
## Exceptions, in order of preference
|
|
45
|
+
|
|
46
|
+
1. Fix the content.
|
|
47
|
+
2. `exceptions.files` for generated or frozen content (archives, vendored docs) — with a comment naming the reason.
|
|
48
|
+
3. `exceptions.lines` for a recurring true positive that must stay as written.
|
|
49
|
+
4. An inline `<!-- recheck-disable-next-line rule-name -->` for a single line.
|
|
50
|
+
|
|
51
|
+
## Adopt strictness on a large corpus with a baseline
|
|
52
|
+
|
|
53
|
+
When the corpus has too many errors to fix at once, record them and gate only new ones:
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
npx recheck baseline
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Commit `recheck-baseline.yaml` and add `baseline: recheck-baseline.yaml` to the config.
|
|
60
|
+
Counts only step down: when findings get fixed, regenerate the baseline and commit the diff.
|
|
61
|
+
|
|
62
|
+
## Finish
|
|
63
|
+
|
|
64
|
+
- `npx recheck validate` must pass.
|
|
65
|
+
- Every `off` and every exception carries a comment with its reason.
|
|
66
|
+
- The config's README section or the project docs say how contributors run recheck locally.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: recheck-lint
|
|
3
|
+
description: Use when you write or edit markdown in a project that has a recheck.yaml — run recheck on the touched files before you commit them or hand them over, and fix what it finds.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Lint markdown with recheck before you commit it
|
|
7
|
+
|
|
8
|
+
This project lints markdown and prose with recheck.
|
|
9
|
+
Your markdown must pass it, the same as code must pass its tests.
|
|
10
|
+
|
|
11
|
+
## When this applies
|
|
12
|
+
|
|
13
|
+
A `recheck.yaml` (or `recheck.yml`) exists in the project root or above the files you touched.
|
|
14
|
+
If none exists, this skill does not apply.
|
|
15
|
+
|
|
16
|
+
## What to do
|
|
17
|
+
|
|
18
|
+
1. After you write or edit markdown files, run recheck on them:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
npx recheck run <file-or-directory>
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
2. If it reports errors, run the auto-fix first — most structural findings repair themselves:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
npx recheck run <file-or-directory> --fix
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
3. Fix the remaining errors by hand.
|
|
31
|
+
Read each message; the rule name links the finding to its intent.
|
|
32
|
+
|
|
33
|
+
4. Re-run until it reports no errors, and only then commit or output the content.
|
|
34
|
+
|
|
35
|
+
## Rules of conduct
|
|
36
|
+
|
|
37
|
+
- Fix content instead of suppressing findings.
|
|
38
|
+
Suppress only a true positive that must stay as written, with an inline directive on that one line:
|
|
39
|
+
|
|
40
|
+
```markdown
|
|
41
|
+
<!-- recheck-disable-next-line recheck/rule-name -->
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Never disable a rule project-wide to make your change pass, and never edit `recheck.yaml` to get past a finding.
|
|
45
|
+
- Warnings do not block you.
|
|
46
|
+
Leave them unless the task asks for cleanup.
|
|
47
|
+
- If the project has a baseline file (a `baseline:` key in `recheck.yaml`), old findings are budgeted; only new findings are yours to fix.
|
|
48
|
+
Do not regenerate the baseline to absorb findings your change introduced.
|
|
49
|
+
- A finding you believe is a false positive is worth reporting to the maintainer, not silently suppressing.
|