@descent-vtt/spec-guard 0.4.0 → 0.5.1

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.
Files changed (49) hide show
  1. package/CHANGELOG.md +283 -150
  2. package/README.md +868 -644
  3. package/dist/cli.d.ts +8 -1
  4. package/dist/cli.d.ts.map +1 -1
  5. package/dist/cli.js +40 -7
  6. package/dist/cli.js.map +1 -1
  7. package/dist/comments.d.ts +23 -4
  8. package/dist/comments.d.ts.map +1 -1
  9. package/dist/comments.js +75 -27
  10. package/dist/comments.js.map +1 -1
  11. package/dist/engine.d.ts +126 -6
  12. package/dist/engine.d.ts.map +1 -1
  13. package/dist/engine.js +301 -154
  14. package/dist/engine.js.map +1 -1
  15. package/dist/glob.d.ts +11 -1
  16. package/dist/glob.d.ts.map +1 -1
  17. package/dist/glob.js +20 -5
  18. package/dist/glob.js.map +1 -1
  19. package/dist/imports.d.ts +28 -4
  20. package/dist/imports.d.ts.map +1 -1
  21. package/dist/imports.js +46 -8
  22. package/dist/imports.js.map +1 -1
  23. package/dist/index.d.ts +11 -8
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +7 -5
  26. package/dist/index.js.map +1 -1
  27. package/dist/parser.d.ts +12 -1
  28. package/dist/parser.d.ts.map +1 -1
  29. package/dist/parser.js +39 -26
  30. package/dist/parser.js.map +1 -1
  31. package/dist/polyglot.d.ts +139 -0
  32. package/dist/polyglot.d.ts.map +1 -0
  33. package/dist/polyglot.js +548 -0
  34. package/dist/polyglot.js.map +1 -0
  35. package/dist/reporter.d.ts +41 -0
  36. package/dist/reporter.d.ts.map +1 -1
  37. package/dist/reporter.js +154 -1
  38. package/dist/reporter.js.map +1 -1
  39. package/dist/runner.d.ts +54 -2
  40. package/dist/runner.d.ts.map +1 -1
  41. package/dist/runner.js +321 -73
  42. package/dist/runner.js.map +1 -1
  43. package/dist/text.d.ts +34 -0
  44. package/dist/text.d.ts.map +1 -0
  45. package/dist/text.js +80 -0
  46. package/dist/text.js.map +1 -0
  47. package/dist/types.d.ts +76 -2
  48. package/dist/types.d.ts.map +1 -1
  49. package/package.json +73 -73
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
package/dist/text.d.ts ADDED
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Offset arithmetic shared by everything that reads source files.
3
+ *
4
+ * These three functions are the entire vocabulary spec-guard needs for talking
5
+ * about positions in a file, and they live here rather than in whichever module
6
+ * needed them first. That is not tidiness: a second copy of "which line is this
7
+ * offset on" is a second chance to be off by one, and a report that points at
8
+ * the wrong line is worse than one that points nowhere.
9
+ */
10
+ /** Offsets at which each line begins. Index 0 is line 1. */
11
+ export declare function lineStarts(source: string): number[];
12
+ /**
13
+ * Resolves an offset to a 1-based line and column, in O(log n).
14
+ *
15
+ * The search is half-open - `high` is one past the last candidate - and narrows
16
+ * until exactly one candidate is left. Written with an inclusive `high` it
17
+ * needed a `- 1` that could be perturbed without changing any answer, because
18
+ * an out-of-range probe reads `undefined`, compares false, and converges anyway.
19
+ * There is no arithmetic here that a wrong value would leave working.
20
+ */
21
+ export declare function locate(starts: readonly number[], index: number): {
22
+ line: number;
23
+ column: number;
24
+ };
25
+ /**
26
+ * Blanks out the given ranges, preserving every other byte and every newline.
27
+ *
28
+ * Offsets survive masking, which is the point: a keyword found at offset 400 of
29
+ * the masked text is at offset 400 of the original, so it can be reported at
30
+ * the line and column a human will find it on. Newlines are kept for the same
31
+ * reason.
32
+ */
33
+ export declare function maskRanges(source: string, ranges: Iterable<readonly [number, number]>): string;
34
+ //# sourceMappingURL=text.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../src/text.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,4DAA4D;AAC5D,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAUnD;AAED;;;;;;;;GAQG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CASjG;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CA8B9F"}
package/dist/text.js ADDED
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Offset arithmetic shared by everything that reads source files.
3
+ *
4
+ * These three functions are the entire vocabulary spec-guard needs for talking
5
+ * about positions in a file, and they live here rather than in whichever module
6
+ * needed them first. That is not tidiness: a second copy of "which line is this
7
+ * offset on" is a second chance to be off by one, and a report that points at
8
+ * the wrong line is worse than one that points nowhere.
9
+ */
10
+ /** Offsets at which each line begins. Index 0 is line 1. */
11
+ export function lineStarts(source) {
12
+ const starts = [0];
13
+ // Driven by indexOf rather than a character loop. Same answer, one less
14
+ // bound to get wrong - `index < source.length` reads past the end harmlessly
15
+ // when loosened, so nothing could ever fail on it - and it hands the scan to
16
+ // the engine's own memchr instead of walking UTF-16 units in JavaScript.
17
+ for (let at = source.indexOf('\n'); at !== -1; at = source.indexOf('\n', at + 1)) {
18
+ starts.push(at + 1);
19
+ }
20
+ return starts;
21
+ }
22
+ /**
23
+ * Resolves an offset to a 1-based line and column, in O(log n).
24
+ *
25
+ * The search is half-open - `high` is one past the last candidate - and narrows
26
+ * until exactly one candidate is left. Written with an inclusive `high` it
27
+ * needed a `- 1` that could be perturbed without changing any answer, because
28
+ * an out-of-range probe reads `undefined`, compares false, and converges anyway.
29
+ * There is no arithmetic here that a wrong value would leave working.
30
+ */
31
+ export function locate(starts, index) {
32
+ let low = 0;
33
+ let high = starts.length;
34
+ while (high - low > 1) {
35
+ const mid = (low + high) >> 1;
36
+ if (starts[mid] <= index)
37
+ low = mid;
38
+ else
39
+ high = mid;
40
+ }
41
+ return { line: low + 1, column: index - starts[low] + 1 };
42
+ }
43
+ /**
44
+ * Blanks out the given ranges, preserving every other byte and every newline.
45
+ *
46
+ * Offsets survive masking, which is the point: a keyword found at offset 400 of
47
+ * the masked text is at offset 400 of the original, so it can be reported at
48
+ * the line and column a human will find it on. Newlines are kept for the same
49
+ * reason.
50
+ */
51
+ export function maskRanges(source, ranges) {
52
+ // Built from slices rather than a character array. The obvious version -
53
+ // source.split(''), blank in place, join('') - allocates one string object
54
+ // per character in the file, and measured at roughly half the throughput of
55
+ // this on a 1 MB source. Both are O(n); only one of them is fast.
56
+ // Sorted because the cursor only moves forward: an out-of-order range would
57
+ // be clamped away and silently never masked.
58
+ const sorted = [...ranges].sort((a, b) => a[0] - b[0]);
59
+ const parts = [];
60
+ let cursor = 0;
61
+ for (const [start, end] of sorted) {
62
+ const from = Math.max(start, cursor);
63
+ const to = Math.min(end, source.length);
64
+ // No guard on the degenerate cases, because there is nothing left for one
65
+ // to do. An empty range, an inverted one and a range already inside one
66
+ // that has been masked all produce two empty or already-emitted slices,
67
+ // and advancing the cursor to the furthest point reached - rather than to
68
+ // `to`, which can lie behind it - is what stops it moving backwards and
69
+ // duplicating the text between. The special case used to be a branch whose
70
+ // only distinguishing input was one nothing produces; now it is arithmetic.
71
+ parts.push(source.slice(cursor, from));
72
+ // No `u` flag: the replacement walks UTF-16 code units, so a surrogate pair
73
+ // becomes two spaces and every later offset still lands where it did.
74
+ parts.push(source.slice(from, to).replace(/[^\n]/g, ' '));
75
+ cursor = Math.max(from, to);
76
+ }
77
+ parts.push(source.slice(cursor));
78
+ return parts.join('');
79
+ }
80
+ //# sourceMappingURL=text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.js","sourceRoot":"","sources":["../src/text.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,4DAA4D;AAC5D,MAAM,UAAU,UAAU,CAAC,MAAc;IACvC,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IACnB,wEAAwE;IACxE,6EAA6E;IAC7E,6EAA6E;IAC7E,yEAAyE;IACzE,KAAK,IAAI,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;QACjF,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IACtB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,MAAM,CAAC,MAAyB,EAAE,KAAa;IAC7D,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;IACzB,OAAO,IAAI,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAK,MAAM,CAAC,GAAG,CAAY,IAAI,KAAK;YAAE,GAAG,GAAG,GAAG,CAAC;;YAC3C,IAAI,GAAG,GAAG,CAAC;IAClB,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,GAAI,MAAM,CAAC,GAAG,CAAY,GAAG,CAAC,EAAE,CAAC;AACxE,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CAAC,MAAc,EAAE,MAA2C;IACpF,yEAAyE;IACzE,2EAA2E;IAC3E,4EAA4E;IAC5E,kEAAkE;IAClE,4EAA4E;IAC5E,6CAA6C;IAC7C,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,KAAK,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,MAAM,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACrC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QACxC,0EAA0E;QAC1E,wEAAwE;QACxE,wEAAwE;QACxE,0EAA0E;QAC1E,wEAAwE;QACxE,2EAA2E;QAC3E,4EAA4E;QAC5E,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QACvC,4EAA4E;QAC5E,sEAAsE;QACtE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;QAC1D,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IACjC,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC"}
package/dist/types.d.ts CHANGED
@@ -76,6 +76,31 @@ export interface SearchOptions {
76
76
  /** Absolute file paths to exclude from results (the spec files themselves). */
77
77
  excludeFiles: ReadonlySet<string>;
78
78
  }
79
+ /**
80
+ * One line of a debt baseline: a file that is allowed to violate, and by how
81
+ * much.
82
+ *
83
+ * Counts, not line numbers. A line number is invalidated by every edit above
84
+ * it, which would turn the baseline into a file nobody can keep current; a
85
+ * per-file count survives refactoring and still catches the two cases that
86
+ * matter - a new file starting to violate, and an existing one violating more.
87
+ * What it does not catch is a violation moving within a file it already
88
+ * covers, and ADR-0009 says so rather than implying otherwise.
89
+ */
90
+ export interface BaselineEntry {
91
+ /** Path relative to the root, forward slashes. */
92
+ path: string;
93
+ /** How many matches this file is allowed to contribute. */
94
+ declared: number;
95
+ }
96
+ /** How strictly the baseline has to match reality. */
97
+ export type RatchetMode = 'two-sided' | 'one-way';
98
+ /** A baseline entry that claims more violations than the code has. */
99
+ export interface StaleBaselineEntry {
100
+ path: string;
101
+ declared: number;
102
+ found: number;
103
+ }
79
104
  /** Inclusive bounds an actual count must satisfy. */
80
105
  export interface Bounds {
81
106
  min?: number;
@@ -101,10 +126,18 @@ export interface SearchResult {
101
126
  commentMatches: number;
102
127
  /** Files whose language has no known comment syntax, so nothing was excluded. */
103
128
  unclassifiedFiles: number;
104
- /** What was not inspected, and why. Never empty for a reason nobody stated. */
105
- scope: ScopeLedger;
106
129
  /** Up to `maxSnippets` match locations, in file order. */
107
130
  matches: MatchLocation[];
131
+ /**
132
+ * How many matches each matching file holds.
133
+ *
134
+ * Uncapped, unlike `matches`, because a baseline has to be evaluated against
135
+ * every file that matched rather than the first few - a ratchet that only saw
136
+ * the first five violations would let the sixth through.
137
+ */
138
+ fileCounts: ReadonlyMap<string, number>;
139
+ /** What was not inspected, and why. Never empty for a reason nobody stated. */
140
+ scope: ScopeLedger;
108
141
  /** Engine that produced this result. */
109
142
  engine: EngineName;
110
143
  }
@@ -127,8 +160,29 @@ export interface Assertion {
127
160
  search?: SearchOptions;
128
161
  /** Present on the import assertions. */
129
162
  imports?: ImportQuery;
163
+ /**
164
+ * Known violations that do not count. Empty when the directive declared none.
165
+ *
166
+ * Always present rather than optional: `baseline ?? []` at the two places
167
+ * that read it was a branch nothing could reach, because resolution always
168
+ * fills this in. An unreachable fallback is indistinguishable from a
169
+ * reachable one when you are reading the code.
170
+ */
171
+ baseline: readonly BaselineEntry[];
172
+ /** Whether a baseline entry that no longer matches fails the run. */
173
+ ratchet: RatchetMode;
130
174
  /** Targets that do not exist on disk. */
131
175
  missingTargets: string[];
176
+ /**
177
+ * Tolerate a scope containing no files.
178
+ *
179
+ * Off by default. An assertion over an empty scope passes without inspecting
180
+ * anything, which is indistinguishable in a report from an assertion that
181
+ * inspected a thousand files and found nothing - and one of those two is a
182
+ * lie. Set by `allow-empty="true"` for the rules where covering nothing yet
183
+ * is the honest state of the world.
184
+ */
185
+ allowEmpty: boolean;
132
186
  }
133
187
  export interface AssertionResult {
134
188
  ok: boolean;
@@ -156,6 +210,26 @@ export interface AssertionResult {
156
210
  unclassifiedFiles: number;
157
211
  /** What this assertion did not inspect, and why. */
158
212
  scope: ScopeLedger;
213
+ /**
214
+ * Matches excluded because a baseline entry accounted for them.
215
+ *
216
+ * Reported for the same reason `commentMatches` is: this is the other way an
217
+ * assertion can pass without the code being clean, and a reader is entitled
218
+ * to know it happened.
219
+ */
220
+ baselinedMatches: number;
221
+ /** Baseline entries that claim more violations than the code has. */
222
+ staleBaseline: StaleBaselineEntry[];
223
+ /**
224
+ * How many matches each matching file holds, in file order.
225
+ *
226
+ * The raw material for writing a baseline, which is why it is not capped the
227
+ * way `matches` is.
228
+ */
229
+ fileMatches: Array<{
230
+ file: string;
231
+ count: number;
232
+ }>;
159
233
  engine?: EngineName;
160
234
  durationMs: number;
161
235
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE3D;;;;;GAKG;AAEH,0DAA0D;AAC1D,MAAM,MAAM,aAAa,GACrB,gBAAgB,GAChB,cAAc,GACd,gBAAgB,GAChB,uBAAuB,GACvB,qBAAqB,CAAC;AAE1B,oDAAoD;AACpD,MAAM,WAAW,WAAW;IAC1B,2DAA2D;IAC3D,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,mEAAmE;IACnE,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,yDAAyD;AACzD,MAAM,WAAW,cAAc;IAC7B,sCAAsC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,0EAA0E;IAC1E,YAAY,EAAE,MAAM,CAAC;IACrB,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,oEAAoE;AACpE,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC7C,QAAQ,EAAE,cAAc,CAAC;IACzB,uDAAuD;IACvD,GAAG,EAAE,MAAM,CAAC;CACb;AAED,gFAAgF;AAChF,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,cAAc,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,MAAM,EAAE,cAAc,EAAE,CAAC;CAC1B;AAED,sEAAsE;AACtE,MAAM,WAAW,aAAa;IAC5B,0EAA0E;IAC1E,KAAK,EAAE,OAAO,CAAC;IACf,iEAAiE;IACjE,IAAI,EAAE,OAAO,CAAC;IACd,iCAAiC;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,wEAAwE;IACxE,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB;;;OAGG;IACH,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB;;;;;OAKG;IACH,cAAc,EAAE,OAAO,CAAC;IACxB;;;;;;OAMG;IACH,KAAK,EAAE,WAAW,CAAC;IACnB,+EAA+E;IAC/E,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACnC;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,aAAa;IAC5B,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,sDAAsD;AACtD,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,SAAS,CAAC;AAElD,sEAAsE;AACtE,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,qDAAqD;AACrD,MAAM,WAAW,MAAM;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,yDAAyD;AACzD,MAAM,WAAW,aAAa;IAC5B,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,cAAc,EAAE,MAAM,CAAC;IACvB,iFAAiF;IACjF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,0DAA0D;IAC1D,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB;;;;;;OAMG;IACH,UAAU,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,+EAA+E;IAC/E,KAAK,EAAE,WAAW,CAAC;IACnB,wCAAwC;IACxC,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,YAAY,CAAC;AAElD,kDAAkD;AAClD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,EAAE,cAAc,CAAC;IACzB,4DAA4D;IAC5D,WAAW,EAAE,MAAM,CAAC;IACpB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6BAA6B;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sDAAsD;IACtD,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,8DAA8D;IAC9D,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,wCAAwC;IACxC,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB;;;;;;;OAOG;IACH,QAAQ,EAAE,SAAS,aAAa,EAAE,CAAC;IACnC,qEAAqE;IACrE,OAAO,EAAE,WAAW,CAAC;IACrB,yCAAyC;IACzC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB;;;;;;;;OAQG;IACH,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,EAAE,cAAc,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,MAAM,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB;;;;OAIG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB,mFAAmF;IACnF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oDAAoD;IACpD,KAAK,EAAE,WAAW,CAAC;IACnB;;;;;;OAMG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB,qEAAqE;IACrE,aAAa,EAAE,kBAAkB,EAAE,CAAC;IACpC;;;;;OAKG;IACH,WAAW,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpD,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,qEAAqE;IACrE,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,UAAU,CAAC;IACpB,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,oEAAoE;IACpE,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,kDAAkD;IAClD,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB"}
package/package.json CHANGED
@@ -1,73 +1,73 @@
1
- {
2
- "name": "@descent-vtt/spec-guard",
3
- "version": "0.4.0",
4
- "description": "Executable architecture assertions for Markdown specs & ADRs.",
5
- "keywords": [
6
- "adr",
7
- "architecture",
8
- "documentation",
9
- "drift",
10
- "lint",
11
- "markdown",
12
- "ripgrep",
13
- "spec"
14
- ],
15
- "license": "MIT",
16
- "type": "module",
17
- "engines": {
18
- "node": ">=22"
19
- },
20
- "bin": {
21
- "spec-guard": "bin/spec-guard.js"
22
- },
23
- "main": "./dist/index.js",
24
- "types": "./dist/index.d.ts",
25
- "exports": {
26
- ".": {
27
- "types": "./dist/index.d.ts",
28
- "default": "./dist/index.js"
29
- },
30
- "./package.json": "./package.json"
31
- },
32
- "files": [
33
- "bin",
34
- "dist",
35
- "CHANGELOG.md",
36
- "README.md",
37
- "LICENSE"
38
- ],
39
- "publishConfig": {
40
- "access": "public"
41
- },
42
- "scripts": {
43
- "build": "tsc -p tsconfig.build.json",
44
- "clean": "node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"",
45
- "lint": "tsc -p tsconfig.json --noEmit",
46
- "test": "vitest run",
47
- "test:watch": "vitest",
48
- "test:coverage": "vitest run --coverage",
49
- "test:mutation": "stryker run",
50
- "selfcheck": "node ./bin/spec-guard.js \"docs/**/*.md\" \"README.md\" --verbose",
51
- "prepublishOnly": "npm run clean && npm run build"
52
- },
53
- "devDependencies": {
54
- "@stryker-mutator/core": "^10.0.0",
55
- "@stryker-mutator/vitest-runner": "^10.0.0",
56
- "@types/node": "^26.4.1",
57
- "@vitest/coverage-v8": "^4.1.11",
58
- "@vscode/ripgrep": "^1.18.0",
59
- "typescript": "^7.0.2",
60
- "vitest": "^4.1.11"
61
- },
62
- "repository": {
63
- "type": "git",
64
- "url": "git+https://github.com/DescentVTT/spec-guard.git"
65
- },
66
- "bugs": {
67
- "url": "https://github.com/DescentVTT/spec-guard/issues"
68
- },
69
- "homepage": "https://github.com/DescentVTT/spec-guard#readme",
70
- "overrides": {
71
- "qs": "^6.16.0"
72
- }
73
- }
1
+ {
2
+ "name": "@descent-vtt/spec-guard",
3
+ "version": "0.5.1",
4
+ "description": "Executable architecture assertions for Markdown specs & ADRs.",
5
+ "keywords": [
6
+ "adr",
7
+ "architecture",
8
+ "documentation",
9
+ "drift",
10
+ "lint",
11
+ "markdown",
12
+ "ripgrep",
13
+ "spec"
14
+ ],
15
+ "license": "MIT",
16
+ "type": "module",
17
+ "engines": {
18
+ "node": ">=22"
19
+ },
20
+ "bin": {
21
+ "spec-guard": "bin/spec-guard.js"
22
+ },
23
+ "main": "./dist/index.js",
24
+ "types": "./dist/index.d.ts",
25
+ "exports": {
26
+ ".": {
27
+ "types": "./dist/index.d.ts",
28
+ "default": "./dist/index.js"
29
+ },
30
+ "./package.json": "./package.json"
31
+ },
32
+ "files": [
33
+ "bin",
34
+ "dist",
35
+ "CHANGELOG.md",
36
+ "README.md",
37
+ "LICENSE"
38
+ ],
39
+ "publishConfig": {
40
+ "access": "public"
41
+ },
42
+ "scripts": {
43
+ "build": "tsc -p tsconfig.build.json",
44
+ "clean": "node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"",
45
+ "lint": "tsc -p tsconfig.json --noEmit",
46
+ "test": "vitest run",
47
+ "test:watch": "vitest",
48
+ "test:coverage": "vitest run --coverage",
49
+ "test:mutation": "stryker run",
50
+ "selfcheck": "node ./bin/spec-guard.js \"docs/**/*.md\" \"README.md\" --verbose",
51
+ "prepublishOnly": "npm run clean && npm run build"
52
+ },
53
+ "devDependencies": {
54
+ "@stryker-mutator/core": "^10.0.0",
55
+ "@stryker-mutator/vitest-runner": "^10.0.0",
56
+ "@types/node": "^26.4.1",
57
+ "@vitest/coverage-v8": "^4.1.11",
58
+ "@vscode/ripgrep": "^1.18.0",
59
+ "typescript": "^7.0.2",
60
+ "vitest": "^4.1.11"
61
+ },
62
+ "repository": {
63
+ "type": "git",
64
+ "url": "git+https://github.com/DescentVTT/spec-guard.git"
65
+ },
66
+ "bugs": {
67
+ "url": "https://github.com/DescentVTT/spec-guard/issues"
68
+ },
69
+ "homepage": "https://github.com/DescentVTT/spec-guard#readme",
70
+ "overrides": {
71
+ "qs": "^6.16.0"
72
+ }
73
+ }