archprint 0.15.0 → 0.16.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.
Files changed (175) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/README.md +40 -24
  3. package/dist/cli/adopted-rules.d.ts +2 -0
  4. package/dist/cli/adopted-rules.d.ts.map +1 -1
  5. package/dist/cli/adopted-rules.js +5 -0
  6. package/dist/cli/adopted-rules.js.map +1 -1
  7. package/dist/cli/allow.d.ts.map +1 -1
  8. package/dist/cli/allow.js +5 -23
  9. package/dist/cli/allow.js.map +1 -1
  10. package/dist/cli/check-evaluate.d.ts +2 -1
  11. package/dist/cli/check-evaluate.d.ts.map +1 -1
  12. package/dist/cli/check-evaluate.js +7 -2
  13. package/dist/cli/check-evaluate.js.map +1 -1
  14. package/dist/cli/check-locate.d.ts.map +1 -1
  15. package/dist/cli/check-locate.js +4 -2
  16. package/dist/cli/check-locate.js.map +1 -1
  17. package/dist/cli/check.js +2 -2
  18. package/dist/cli/check.js.map +1 -1
  19. package/dist/cli/eslint-check.d.ts +6 -0
  20. package/dist/cli/eslint-check.d.ts.map +1 -0
  21. package/dist/cli/eslint-check.js +160 -0
  22. package/dist/cli/eslint-check.js.map +1 -0
  23. package/dist/cli/generate.d.ts +3 -6
  24. package/dist/cli/generate.d.ts.map +1 -1
  25. package/dist/cli/generate.js +42 -65
  26. package/dist/cli/generate.js.map +1 -1
  27. package/dist/cli/layout.d.ts +14 -1
  28. package/dist/cli/layout.d.ts.map +1 -1
  29. package/dist/cli/layout.js +48 -14
  30. package/dist/cli/layout.js.map +1 -1
  31. package/dist/cli/program.d.ts +0 -1
  32. package/dist/cli/program.d.ts.map +1 -1
  33. package/dist/cli/program.js +52 -76
  34. package/dist/cli/program.js.map +1 -1
  35. package/dist/cli/ratchet.d.ts +24 -0
  36. package/dist/cli/ratchet.d.ts.map +1 -0
  37. package/dist/cli/ratchet.js +43 -0
  38. package/dist/cli/ratchet.js.map +1 -0
  39. package/dist/cli/report.d.ts +8 -4
  40. package/dist/cli/report.d.ts.map +1 -1
  41. package/dist/cli/report.js +50 -34
  42. package/dist/cli/report.js.map +1 -1
  43. package/dist/cli/rule-ref.d.ts +10 -0
  44. package/dist/cli/rule-ref.d.ts.map +1 -0
  45. package/dist/cli/rule-ref.js +18 -0
  46. package/dist/cli/rule-ref.js.map +1 -0
  47. package/dist/cli/scan.d.ts.map +1 -1
  48. package/dist/cli/scan.js +4 -4
  49. package/dist/cli/scan.js.map +1 -1
  50. package/dist/cli/summary.d.ts +7 -0
  51. package/dist/cli/summary.d.ts.map +1 -1
  52. package/dist/cli/summary.js +60 -2
  53. package/dist/cli/summary.js.map +1 -1
  54. package/dist/detector/orphan-detector.d.ts +8 -6
  55. package/dist/detector/orphan-detector.d.ts.map +1 -1
  56. package/dist/detector/orphan-detector.js +74 -15
  57. package/dist/detector/orphan-detector.js.map +1 -1
  58. package/dist/detector/pattern-detector.d.ts +2 -0
  59. package/dist/detector/pattern-detector.d.ts.map +1 -1
  60. package/dist/detector/pattern-detector.js +5 -0
  61. package/dist/detector/pattern-detector.js.map +1 -1
  62. package/dist/detector/stories-isolation-detector.d.ts +1 -0
  63. package/dist/detector/stories-isolation-detector.d.ts.map +1 -1
  64. package/dist/detector/stories-isolation-detector.js +1 -1
  65. package/dist/detector/stories-isolation-detector.js.map +1 -1
  66. package/dist/generator/app-isolation-emitters.d.ts +3 -1
  67. package/dist/generator/app-isolation-emitters.d.ts.map +1 -1
  68. package/dist/generator/app-isolation-emitters.js +9 -4
  69. package/dist/generator/app-isolation-emitters.js.map +1 -1
  70. package/dist/generator/console-isolation-emitters.d.ts +2 -6
  71. package/dist/generator/console-isolation-emitters.d.ts.map +1 -1
  72. package/dist/generator/console-isolation-emitters.js +3 -2
  73. package/dist/generator/console-isolation-emitters.js.map +1 -1
  74. package/dist/generator/deep-relative-emitters.d.ts +2 -16
  75. package/dist/generator/deep-relative-emitters.d.ts.map +1 -1
  76. package/dist/generator/deep-relative-emitters.js +6 -20
  77. package/dist/generator/deep-relative-emitters.js.map +1 -1
  78. package/dist/generator/depcruise-exempt.d.ts +17 -2
  79. package/dist/generator/depcruise-exempt.d.ts.map +1 -1
  80. package/dist/generator/depcruise-exempt.js +18 -4
  81. package/dist/generator/depcruise-exempt.js.map +1 -1
  82. package/dist/generator/dependency-internals-emitters.d.ts +1 -1
  83. package/dist/generator/dependency-internals-emitters.d.ts.map +1 -1
  84. package/dist/generator/dependency-internals-emitters.js +2 -2
  85. package/dist/generator/dependency-internals-emitters.js.map +1 -1
  86. package/dist/generator/entry-purity-emitters.d.ts +1 -1
  87. package/dist/generator/entry-purity-emitters.d.ts.map +1 -1
  88. package/dist/generator/entry-purity-emitters.js +3 -3
  89. package/dist/generator/entry-purity-emitters.js.map +1 -1
  90. package/dist/generator/env-access-emitters.d.ts +2 -2
  91. package/dist/generator/env-access-emitters.d.ts.map +1 -1
  92. package/dist/generator/env-access-emitters.js +3 -11
  93. package/dist/generator/env-access-emitters.js.map +1 -1
  94. package/dist/generator/eslint-app-emitter.d.ts +1 -0
  95. package/dist/generator/eslint-app-emitter.d.ts.map +1 -1
  96. package/dist/generator/eslint-app-emitter.js +1 -22
  97. package/dist/generator/eslint-app-emitter.js.map +1 -1
  98. package/dist/generator/eslint-family-rules.d.ts +23 -0
  99. package/dist/generator/eslint-family-rules.d.ts.map +1 -0
  100. package/dist/generator/eslint-family-rules.js +35 -0
  101. package/dist/generator/eslint-family-rules.js.map +1 -0
  102. package/dist/generator/eslint-plugin-emitter.d.ts +2 -0
  103. package/dist/generator/eslint-plugin-emitter.d.ts.map +1 -1
  104. package/dist/generator/eslint-plugin-emitter.js +21 -0
  105. package/dist/generator/eslint-plugin-emitter.js.map +1 -1
  106. package/dist/generator/eslint-preset-emitter.d.ts +2 -1
  107. package/dist/generator/eslint-preset-emitter.d.ts.map +1 -1
  108. package/dist/generator/eslint-preset-emitter.js +13 -10
  109. package/dist/generator/eslint-preset-emitter.js.map +1 -1
  110. package/dist/generator/eslint-scope.d.ts +0 -11
  111. package/dist/generator/eslint-scope.d.ts.map +1 -1
  112. package/dist/generator/eslint-scope.js +0 -44
  113. package/dist/generator/eslint-scope.js.map +1 -1
  114. package/dist/generator/feature-slice-emitters.d.ts +3 -1
  115. package/dist/generator/feature-slice-emitters.d.ts.map +1 -1
  116. package/dist/generator/feature-slice-emitters.js +9 -4
  117. package/dist/generator/feature-slice-emitters.js.map +1 -1
  118. package/dist/generator/layer-emitters.d.ts.map +1 -1
  119. package/dist/generator/layer-emitters.js +1 -4
  120. package/dist/generator/layer-emitters.js.map +1 -1
  121. package/dist/generator/phantom-dependency-emitters.d.ts +1 -1
  122. package/dist/generator/phantom-dependency-emitters.d.ts.map +1 -1
  123. package/dist/generator/phantom-dependency-emitters.js +2 -2
  124. package/dist/generator/phantom-dependency-emitters.js.map +1 -1
  125. package/dist/generator/public-api-emitters.d.ts +2 -1
  126. package/dist/generator/public-api-emitters.d.ts.map +1 -1
  127. package/dist/generator/public-api-emitters.js +8 -5
  128. package/dist/generator/public-api-emitters.js.map +1 -1
  129. package/dist/generator/role-layering-emitters.d.ts +3 -1
  130. package/dist/generator/role-layering-emitters.d.ts.map +1 -1
  131. package/dist/generator/role-layering-emitters.js +15 -8
  132. package/dist/generator/role-layering-emitters.js.map +1 -1
  133. package/dist/generator/server-client-emitters.d.ts.map +1 -1
  134. package/dist/generator/server-client-emitters.js +1 -4
  135. package/dist/generator/server-client-emitters.js.map +1 -1
  136. package/dist/generator/stories-isolation-emitters.d.ts +3 -2
  137. package/dist/generator/stories-isolation-emitters.d.ts.map +1 -1
  138. package/dist/generator/stories-isolation-emitters.js +5 -2
  139. package/dist/generator/stories-isolation-emitters.js.map +1 -1
  140. package/dist/generator/test-isolation-emitters.d.ts +4 -3
  141. package/dist/generator/test-isolation-emitters.d.ts.map +1 -1
  142. package/dist/generator/test-isolation-emitters.js +8 -17
  143. package/dist/generator/test-isolation-emitters.js.map +1 -1
  144. package/dist/generator/ui-data-isolation-emitters.d.ts +3 -1
  145. package/dist/generator/ui-data-isolation-emitters.d.ts.map +1 -1
  146. package/dist/generator/ui-data-isolation-emitters.js +6 -2
  147. package/dist/generator/ui-data-isolation-emitters.js.map +1 -1
  148. package/dist/generator/workspace-package-emitters.d.ts +2 -2
  149. package/dist/generator/workspace-package-emitters.d.ts.map +1 -1
  150. package/dist/generator/workspace-package-emitters.js +6 -15
  151. package/dist/generator/workspace-package-emitters.js.map +1 -1
  152. package/dist/index.d.ts +4 -3
  153. package/dist/index.d.ts.map +1 -1
  154. package/dist/index.js +3 -3
  155. package/dist/index.js.map +1 -1
  156. package/dist/mcp/remote/server.d.ts +2 -2
  157. package/dist/mcp/remote/server.d.ts.map +1 -1
  158. package/dist/mcp/remote/server.js +8 -2
  159. package/dist/mcp/remote/server.js.map +1 -1
  160. package/dist/mcp/server.d.ts +2 -2
  161. package/dist/mcp/server.d.ts.map +1 -1
  162. package/dist/mcp/server.js +2 -2
  163. package/dist/mcp/server.js.map +1 -1
  164. package/dist/mcp/tools.d.ts.map +1 -1
  165. package/dist/mcp/tools.js +4 -4
  166. package/dist/mcp/tools.js.map +1 -1
  167. package/dist/scanner/file-walker.d.ts +4 -0
  168. package/dist/scanner/file-walker.d.ts.map +1 -1
  169. package/dist/scanner/file-walker.js +33 -2
  170. package/dist/scanner/file-walker.js.map +1 -1
  171. package/dist/scanner/usage-scanner.d.ts +2 -0
  172. package/dist/scanner/usage-scanner.d.ts.map +1 -1
  173. package/dist/scanner/usage-scanner.js +25 -8
  174. package/dist/scanner/usage-scanner.js.map +1 -1
  175. package/package.json +2 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # archprint
2
2
 
3
+ ## 0.16.0
4
+
5
+ ### Minor Changes
6
+
7
+ - `archprint generate` no longer adds a new break to an adopted rule's exceptions. Earlier, each run rebuilt the exceptions from the current code, so a violation that had been merged (`check` only warns unless `--fail-on new`) became a permanent exception the next time anyone ran `generate`, without a word. On a small repo the same slip could drop the rule instead. Each adopted rule now records its exceptions in `.archprint/config.json`. When a file breaks an adopted rule and was not one of them, `generate` stops, names the rule and the file, and writes nothing, so the rules already in `.archprint/` stay in force. Fix the file, or accept it with `archprint allow <rule> <file> --reason "..."`. When an exception is fixed, the next `generate` enforces the rule on that file and lists it. Rules adopted by an earlier version have their current exceptions recorded on the first run, which lists every one. A forbidden-import (AP-) rule adopted from a full scan and regenerated with `--fast`, or the other way round, has its exceptions measured again and listed rather than compared, because the two scans see different imports. `generate --reset` starts afresh.
8
+ - `generate --check` now runs through your repo's own ESLint. It used the copy of ESLint that came with archprint, which `npx archprint` does not install, so under `npx` it failed with "Cannot find package 'eslint'". It now loads ESLint from your repo (version 9 or later) and exits with code 2 and a clear message when there is none. Once the rules are wired, it lints through your ESLint config, the one your editor and CI run, instead of the generated rules on their own, and names any generated rule that config turns off, downgrades to a warning or overrides for some files, with an example file. If your ESLint config fails to load, the check stops with exit code 2 and the error instead of passing. Before wiring, it checks the generated rules on their own, says so, and uses your repo's TypeScript parser.
9
+ - `archprint explain`, the `archprint_explain` MCP tool and `archprint allow` now accept a rule by any of its names: its id (`no-lib-to-components`, the one `generate --rules` takes), its label (`lib !-> components`), or its ESLint name (`archprint/no-lib-to-components`, or `archprint/no-ui-layer-in-server-entry` for `AP-002`), in any case and spacing. `generate --rules` accepts the ESLint name too. Earlier, `archprint_explain` took only the label and `archprint explain` only the forbidden-import (AP-) ids, so the name ESLint printed was rejected. `archprint explain` now explains every rule `scan` lists, with its evidence, the files that break it and how to adopt it. Each rule in `scan --json` and `archprint_scan` now carries its `id`.
10
+ - The test-isolation, import-style, console-isolation, env-access and workspace-package rules in `.archprint/eslint.mjs` now run under their own names (`archprint/test-isolation`, `archprint/import-style`, `archprint/console-isolation`, `archprint/env-access`, `archprint/workspace-package`) instead of ESLint's `no-restricted-imports`, `no-console` and `no-restricted-properties`. ESLint keeps one setting per core rule for each file, so a repo that configured one of those rules itself, for a folder or the whole project, silently replaced archprint's rule there (or the other way round). Both now apply side by side. Each rule counts imports the way the scan does: test-isolation and workspace-package ignore type-only imports, and all three import rules check `import()` calls. Run `archprint generate` to refresh the file. If you silenced an archprint finding with an `eslint-disable` comment naming the core rule, rename it to the `archprint/` name. Rule ids in `config.json`, `check` and `allow` are unchanged.
11
+ - `archprint generate` now keeps the rules you adopted on every run, not only with `--only` or `--rules`. Earlier, a plain run (including `generate --check`) reset `.archprint/` to the default rule set, so rules you had adopted with `--rules`, such as layer boundaries, disappeared without a word. A plain run now refreshes the adopted rules alongside the defaults and says which it kept. To start again from the default set, pass the new `--reset` flag: it lists every adopted rule it removes. `init --force` does the same. `generate --check` on its own now checks the rules already in `.archprint/` and writes nothing; with other flags it generates first, as before.
12
+ - `archprint init` no longer edits your `README.md` unless you pass `--readme`, the same flag `generate` takes. The README section it writes now lists each adopted rule with this repo's evidence (for example "`AP-001`: A request handler must not import the database client directly (45 of 45 files it applies to follow it)"), plus what your code follows that no rule enforces and what is held for review. It no longer carries the "% of comparable repos" figures or the "Worth adopting" list; those stay in the terminal output and in `archprint recommend`. `init` now ends by listing every file it wrote or changed.
13
+ - `archprint scan` reports far fewer false orphan modules, and lists the files only tests import separately. A file now counts as used when anything references it: a type-only import, an `export ... from` through a barrel, an `import()` call, or a tool config that names it (such as Vitest's `setupFiles`). Next.js metadata files (`robots`, `sitemap`, `manifest`, `opengraph-image`, `twitter-image`, `icon`, `apple-icon`), `proxy` and `instrumentation-client` at the app root, and Storybook stories are recognized as entries. Production files that only their own tests import, which is dead code the tests keep alive, now come first, under "Imported only by tests". On five open-source Next.js apps the orphan list shrank from 389 to 246 files without listing any file the earlier version did not. `detectOrphans` in the library API no longer takes an options argument, and its result adds `testOnly`.
14
+
15
+ ### Patch Changes
16
+
17
+ - The generated dependency-cruiser rules now exempt exactly the files a rule tolerates. Earlier, an exemption matched any path ending the same way, so in a monorepo the exempted `src/lib/legacy.ts` of `apps/web` also silenced a new break at `apps/api/src/lib/legacy.ts` when dependency-cruiser checked both apps, and within one app it also exempted, say, `src/lib/legacy.ts` when only `lib/legacy.ts` was meant. An exemption still applies whether dependency-cruiser runs from the repository root or inside the app. Run `archprint generate` to refresh `.archprint/dependency-cruiser.json`.
18
+ - Fixed three ways the generated dependency-cruiser rules could be wrong. The role-layering, feature-slice, app-isolation, stories-isolation and UI/data rules did not exempt the files they were inferred with, so adopting one could fail dependency-cruiser straight away on code that already broke it. Those rules, the public-API rules and test isolation also ignored `archprint allow`, so an allowed file kept failing in dependency-cruiser. All of them now exempt both. For an app below the repository root, such as `apps/web`, the public-API, feature-slice and app-isolation rules matched paths without the app's folder, so dependency-cruiser, which reports `apps/web/src/...`, never applied them. They now include it. Run `archprint generate` to refresh `.archprint/dependency-cruiser.json`. `archprint allow` now says to regenerate for these rules too, instead of telling you to edit dependency-cruiser's config by hand.
19
+ - `archprint check` now gives console-isolation and env-access findings a line number: the line of the first `console.*` call or `process.env` read in the file. Earlier, those findings carried no line, so `--format github` annotated the whole file instead of the line.
20
+
3
21
  ## 0.15.0
4
22
 
5
23
  ### Minor Changes
package/README.md CHANGED
@@ -153,7 +153,7 @@ archprint explain AP-002 apps/web
153
153
  # Structural-inference rules are held for review; add --include-structural to emit them too.
154
154
  archprint generate apps/web
155
155
 
156
- # Confirm the generated rules pass on your repo before wiring
156
+ # Confirm the generated rules pass on your repo before wiring (on its own, --check writes nothing)
157
157
  archprint generate apps/web --check
158
158
 
159
159
  # Generate a single rule by id after reviewing it (including a SUGGEST rule)
@@ -213,7 +213,10 @@ that could be wrong is enforced without you opting in.
213
213
 
214
214
  Generated rules are green by construction: each one lets through the few known exception files it was inferred
215
215
  from, so adopting it keeps your lint green while new violations are still caught, and a self-consistency check
216
- refuses to write a rule whose evidence does not hold together. To run the generated rules against your code before
216
+ refuses to write a rule whose evidence does not hold together. The exceptions are recorded with the rule in
217
+ `.archprint/config.json` and only shrink: when you fix one, the next `generate` enforces the rule there too and
218
+ says so, and a file that breaks an adopted rule later is never added to its exceptions. `generate` stops instead,
219
+ names the file, and writes nothing until you fix it or accept it with `archprint allow` and a reason. To run the generated rules against your code before
217
220
  connecting them, use `archprint generate --check`.
218
221
 
219
222
  ## What it can detect
@@ -270,34 +273,43 @@ format.
270
273
  never re-infers a rule), the exceptions you allowed with a reason, what is enforced, followed but only reported,
271
274
  held for review, and worth adopting, and the list of managed outputs `eject` removes.
272
275
  - **`.archprint/eslint.mjs`** (when ESLint is present): one self-contained ESLint flat-config file that inlines
273
- every inferred ESLint rule (marker-based forbidden imports, `no-restricted-imports` import-style boundaries,
274
- console isolation, and, when you include structural rules and do not use dependency-cruiser, layer boundaries,
275
- undeclared (phantom) dependencies, the server/client boundary, package internals and entry purity)
276
+ every inferred ESLint rule (marker-based forbidden imports, import style, test isolation, console isolation,
277
+ and, when you include structural rules and do not use dependency-cruiser, env access, workspace package APIs,
278
+ layer boundaries, undeclared (phantom) dependencies, the server/client boundary, package internals and entry
279
+ purity)
276
280
  and needs no extra plugins: it adds rules to your existing ESLint setup, which already parses your TypeScript.
277
281
  So you can commit it, publish it, or hand it to another repo and adopt it in one line
278
282
  (`import archprint from './.archprint/eslint.mjs'`). Layer boundaries are the exception: they find your app
279
283
  relative to the file, so they only apply where it was generated. It self-ignores `**/.archprint/**`. The
280
- forbidden-import (AP-) rules and those structural rules ship as a generated local eslint plugin inside it, so
281
- wiring the eslint config enforces them too, no extra install.
284
+ rules ship as a generated local eslint plugin inside it, so wiring the eslint config enforces them too, no extra
285
+ install. Each rule has its own name, `archprint/<rule id>` (for example `archprint/test-isolation` or
286
+ `archprint/no-lib-to-app`), so your own settings for core rules such as `no-console` or `no-restricted-imports`
287
+ never replace archprint's, and archprint's never replace yours.
282
288
  - **`.archprint/dependency-cruiser.json`** (when dependency-cruiser is present): one `forbidden` ruleset with the
283
289
  mechanical boundaries (public-API deep-import, test-isolation); the review-held ones (layer, role-layering,
284
290
  feature-slice, app-isolation, entry-purity, dependency-internals, phantom deps, server/client) are added only with
285
291
  `--include-structural`, after you review them.
286
- - **A managed section in your `README.md`** summarizing what is enforced now, followed but only reported, held for
287
- review, and worth adopting (written by `init`, or `generate --readme`), plus a managed `.prettierignore` entry so
288
- the generated files stay out of your formatter.
292
+ - **A managed `.prettierignore` entry** so the generated files stay out of your formatter, and, only when you pass
293
+ `--readme` to `init` or `generate`, a managed section in your `README.md` listing each adopted rule with this
294
+ repo's evidence (for example "45 of 45 files it applies to follow it"), what your code follows but no rule
295
+ enforces, and what is held for review.
289
296
 
290
297
  `--expand` additionally writes the granular artifacts inside `.archprint/`: the per-family ESLint and
291
298
  dependency-cruiser JSON, per-rule cards (`.md`) with passing and failing fixtures, the eslint-plugin-boundaries
292
299
  element-types config, ts-arch tests, and the Mermaid and Graphviz DOT layer graph.
293
300
 
294
- **Staying in sync, and leaving cleanly.** Re-running `generate` (or `init`) refreshes `.archprint/` and drops any
295
- rule the evidence no longer supports, so the output never drifts from the code. `wire` inserts a single managed
301
+ **Staying in sync, and leaving cleanly.** Re-running `generate` refreshes `.archprint/`: it keeps every rule you
302
+ adopted, names any the evidence no longer supports and drops it, so the output never drifts from the code.
303
+ `generate --reset` (and `init --force`) start again from the default rule set and list the adopted rules they
304
+ remove. `wire` inserts a single managed
296
305
  reference into each enforcement tool your repo uses (a flat eslint config, a `.dependency-cruiser.json`), one that
297
306
  survives those regenerations; for a config it cannot safely edit (a JS dependency-cruiser config, say), it prints
298
307
  the exact snippet to paste. `eject` removes Archprint's files and every wired reference, restoring each config
299
- exactly. `generate --check` runs the generated ESLint rules against your repo and reports whether they pass, so you
300
- can confirm before wiring. Upgrading from 0.5.x? `archprint migrate` moves an older `archprint-rules/` setup to
308
+ exactly. `generate --check` runs the generated ESLint rules against your repo with your own ESLint (version 9 or
309
+ later, installed in the repo) and reports whether they pass; on its own it checks the rules already generated and
310
+ writes nothing. Once they are wired, it lints through your ESLint config, the one your editor and CI run, and names
311
+ any generated rule that config turns off or overrides for some files. Before wiring, it checks the rules on their
312
+ own. Upgrading from 0.5.x? `archprint migrate` moves an older `archprint-rules/` setup to
301
313
  this layout and rewires your configs in place.
302
314
 
303
315
  ## Use in CI
@@ -390,8 +402,8 @@ jobs:
390
402
  what architecture rules your repo already follows, with the evidence, before it writes code. It exposes four
391
403
  read-only tools: `archprint_scan`, `archprint_recommend`, `archprint_explain`, and `archprint_check`. Each rule
392
404
  comes back stated in plain words, with its evidence, the files that break it, and whether archprint enforces it,
393
- holds it for review, or only reports it. `archprint_explain` takes any rule label from the scan (for example
394
- `AP-002` or `env-access`). `archprint_check` reports the adopted rules the agent's current change breaks,
405
+ holds it for review, or only reports it. `archprint_explain` takes any rule from the scan by its id, label or
406
+ ESLint name (for example `AP-002`, `env-access`, `no-lib-to-app`, `lib !-> app` or `archprint/no-lib-to-app`). `archprint_check` reports the adopted rules the agent's current change breaks,
395
407
  uncommitted edits included, so it can fix them before it finishes. Point Claude Desktop, Claude Code, Cursor, or
396
408
  any MCP client at it:
397
409
 
@@ -480,25 +492,28 @@ reachability) and knip (dead code); rather than compete, it writes the rules it
480
492
  ## Commands
481
493
 
482
494
  - **`archprint init [path]`**: zero-config setup. Detects the stack, enforces the rules the code already follows,
483
- and writes `.archprint/` plus a managed README section. Options: `--expand`, `--include-structural`,
484
- `--out <dir>`, `--fast`, `--force`.
495
+ writes `.archprint/`, and lists every file it wrote or changed. Options: `--readme` (also add a managed section
496
+ to `README.md`), `--expand`, `--include-structural`, `--out <dir>`, `--fast`, `--force`.
485
497
  - **`archprint scan [path]`**: reports the rules the repo already follows, with evidence. Changes nothing.
486
498
  `--deep` resolves through barrels and aliases.
487
- - **`archprint explain <id> [path]`**: shows the gate breakdown for one rule, with a codeframe per exception plus
488
- how to fix, when not to use it, and how to enforce it.
499
+ - **`archprint explain <rule> [path]`**: shows the evidence behind one rule, named by its id, label or ESLint name
500
+ (`AP-002`, `no-lib-to-app`, `"lib !-> app"`, `archprint/no-lib-to-app`): its gate, the files that break it, and how
501
+ to adopt it. For the forbidden-import (AP-) rules it adds a codeframe per exception, how to fix, and when not to
502
+ use it.
489
503
  - **`archprint recommend [path]`**: recommends a rule set from the repo's evidence and detected stack (works on a
490
504
  fresh repo too), and names the installed tool that will enforce each rule it can write.
491
505
  - **`archprint generate [path]`**: writes the auto-trusted mechanical rules to `.archprint/` for the linters your
492
506
  repo uses; structural rules are held for review. `--emit <eslint|dependency-cruiser|all>` forces the format,
493
507
  `--only <family>` and `--rules <ids>` adopt one family or the rules they name (such as `AP-002`, `import-style`
494
- or the layer rule `no-lib-to-app`) and keep the rules you adopted before, `--check` runs the generated rules against your repo,
508
+ or the layer rule `no-lib-to-app`), every run keeps the rules you adopted before and `--reset` returns to the
509
+ default set, `--check` runs the generated rules against your repo (writing nothing when passed on its own),
495
510
  `--readme` adds the README section, `--expand` also writes the per-family files, cards, fixtures and graph, and
496
511
  `--rule <id>` emits one reviewed rule. Also `--include-structural`, `--no-graph`, `--out <dir>`, `--fast`.
497
512
  - **`archprint check [path]`**: reports the violations of your adopted rules that a change introduces, compared
498
513
  with `--base <branch or commit>`. Warning only unless `--fail-on new`. `--format text|json|github`,
499
514
  `--out <dir>`. See [Use in CI](#use-in-ci).
500
- - **`archprint allow <rule> <file> --reason "..."`**: accepts one adopted rule being broken in one file, with a
501
- reason, recorded in `.archprint/config.json`. `check` stops counting it and lists it in the pull request;
515
+ - **`archprint allow <rule> <file> --reason "..."`**: accepts one adopted rule (by id or ESLint name) being broken
516
+ in one file, with a reason, recorded in `.archprint/config.json`. `check` stops counting it and lists it in the pull request;
502
517
  `generate` stops the generated rules flagging it. `--remove` takes it back out.
503
518
  - **`archprint wire`**: references the generated rules from the enforcement tools your repo uses (flat eslint
504
519
  config, `.dependency-cruiser.json`) through a managed, reversible reference. `--out <dir>`, `--dry-run`.
@@ -565,7 +580,8 @@ Without dependency-cruiser, each boundary becomes an ESLint rule in `.archprint/
565
580
  exempts the files that already break the boundary, so your lint stays green, and it catches a new import across
566
581
  the boundary, by relative path or alias. `archprint check` reports a new break in a pull request, and
567
582
  `archprint allow` records a justified exception. `--rules` adds the rules it names to the ones you adopted before,
568
- so you can adopt boundaries one run at a time; a plain `archprint generate` resets to the default rule set. If your CI pins archprint (for example the GitHub Action's `archprint-version`), use 0.13.0
583
+ so you can adopt boundaries one run at a time, and a plain `archprint generate` keeps them too (`--reset` returns to
584
+ the default rule set). If your CI pins archprint (for example the GitHub Action's `archprint-version`), use 0.13.0
569
585
  or later there first. The [rules reference](https://tommkruix.github.io/archprint/rules#layer-boundaries-review)
570
586
  says exactly which imports and files the rule reads.
571
587
 
@@ -17,6 +17,8 @@ interface RuleBase {
17
17
  statement: string;
18
18
  mode: ResolutionMode;
19
19
  evidence: AdoptionEvidence;
20
+ /** The known breaks recorded when the rule was written; `generate` only shrinks the list. Absent in older configs. */
21
+ exceptions?: string[];
20
22
  }
21
23
  export interface ForbiddenImportRule extends RuleBase {
22
24
  family: 'forbidden-imports';
@@ -1 +1 @@
1
- {"version":3,"file":"adopted-rules.d.ts","sourceRoot":"","sources":["../../src/cli/adopted-rules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adopted-rules.d.ts","sourceRoot":"","sources":["../../src/cli/adopted-rules.ts"],"names":[],"mappings":"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"}
@@ -251,6 +251,11 @@ function validateRule(rule, file) {
251
251
  if (candidate.mode !== 'deep' && candidate.mode !== 'fast') {
252
252
  return invalid(`rule ${candidate.id} has no valid resolution mode`);
253
253
  }
254
+ const { exceptions } = candidate;
255
+ if (exceptions !== undefined &&
256
+ !(Array.isArray(exceptions) && exceptions.every((item) => typeof item === 'string'))) {
257
+ return invalid(`rule ${candidate.id} has exceptions that are not a list of paths`);
258
+ }
254
259
  if (candidate.family === 'forbidden-imports') {
255
260
  const markers = candidate.forbidden;
256
261
  if (!Array.isArray(markers) || !Array.isArray(candidate.roles)) {
@@ -1 +1 @@
1
- {"version":3,"file":"adopted-rules.js","sourceRoot":"","sources":["../../src/cli/adopted-rules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adopted-rules.js","sourceRoot":"","sources":["../../src/cli/adopted-rules.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"allow.d.ts","sourceRoot":"","sources":["../../src/cli/allow.ts"],"names":[],"mappings":"AAaA,qBAAa,UAAW,SAAQ,KAAK;CAAG;AAExC,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AA0BD,wBAAgB,QAAQ,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CAgDtD"}
1
+ {"version":3,"file":"allow.d.ts","sourceRoot":"","sources":["../../src/cli/allow.ts"],"names":[],"mappings":"AAcA,qBAAa,UAAW,SAAQ,KAAK;CAAG;AAExC,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAQD,wBAAgB,QAAQ,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CA6CtD"}
package/dist/cli/allow.js CHANGED
@@ -4,27 +4,12 @@ import { assertRealDirectory, ownedPath } from '../generator/owned-paths.js';
4
4
  import { readAdoptedRules } from './adopted-rules.js';
5
5
  import { allowKey, readAllowed, writeAllowed, } from './allowed-exceptions.js';
6
6
  import { readConfig } from './archprint-config.js';
7
+ import { findRule } from './rule-ref.js';
7
8
  import { evaluateRules } from './check-evaluate.js';
8
9
  export class AllowError extends Error {
9
10
  }
10
- const GENERATED_FOR_EITHER_ENFORCER = new Set([
11
- 'layer',
12
- 'phantom-deps',
13
- 'server-client',
14
- ]);
15
- /** Families whose generated dependency-cruiser rules do not read the allowed list. */
16
- const UNEXEMPTED_BY_GENERATE = new Set([
17
- 'public-api',
18
- 'role-layering',
19
- 'feature-slice',
20
- 'app-isolation',
21
- 'stories-isolation',
22
- 'ui-data',
23
- ]);
24
- /** What to run so the generated rules follow the change; nothing when regenerating would not change them. */
25
- const regenerateHint = (rule) => rule.family === 'cycles' || UNEXEMPTED_BY_GENERATE.has(rule.family)
26
- ? ''
27
- : ` Run archprint generate to update the ${GENERATED_FOR_EITHER_ENFORCER.has(rule.family) ? 'generated' : 'ESLint'} rules.`;
11
+ /** What to run so the generated rules follow the change; cycles have no generated rule. */
12
+ const regenerateHint = (rule) => rule.family === 'cycles' ? '' : ' Run archprint generate to update the generated rules.';
28
13
  const toPosix = (value) => value.split(path.sep).join('/');
29
14
  export function runAllow(options) {
30
15
  const outDir = path.resolve(options.cwd, options.out);
@@ -34,7 +19,7 @@ export function runAllow(options) {
34
19
  if (config === null || adopted === null) {
35
20
  throw new AllowError('No adopted rules here. Run archprint init (or generate) first.');
36
21
  }
37
- const rule = adopted.find((candidate) => candidate.id === options.rule);
22
+ const rule = findRule(options.rule, adopted);
38
23
  if (rule === undefined) {
39
24
  const known = adopted.map((candidate) => candidate.id).join(', ');
40
25
  throw new AllowError(`No adopted rule "${options.rule}". Adopted rules: ${known || 'none'}.`);
@@ -68,9 +53,6 @@ export function runAllow(options) {
68
53
  }
69
54
  const entry = { rule: rule.id, file, reason };
70
55
  writeAllowed(outDir, [...others, entry]);
71
- const lint = UNEXEMPTED_BY_GENERATE.has(rule.family)
72
- ? ' dependency-cruiser does not read this list, so add the exception there too if you use it.'
73
- : regenerateHint(rule);
74
- return `Allowed ${rule.id} in ${file}. archprint check accepts it now.${lint}`;
56
+ return `Allowed ${rule.id} in ${file}. archprint check accepts it now.${regenerateHint(rule)}`;
75
57
  }
76
58
  //# sourceMappingURL=allow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"allow.js","sourceRoot":"","sources":["../../src/cli/allow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"allow.js","sourceRoot":"","sources":["../../src/cli/allow.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { AdoptedRule } from './adopted-rules.js';
2
- export type SubjectKind = 'specifier' | 'target' | 'file';
2
+ /** What a finding names: an import as written, the file an import resolves to, or what a file reads (`console`, `process.env`). */
3
+ export type SubjectKind = 'specifier' | 'target' | 'usage';
3
4
  export interface Finding {
4
5
  ruleId: string;
5
6
  file: string;
@@ -1 +1 @@
1
- {"version":3,"file":"check-evaluate.d.ts","sourceRoot":"","sources":["../../src/cli/check-evaluate.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,WAAW,EAAuC,MAAM,oBAAoB,CAAC;AAE3F,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE1D,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,WAAW,CAAC;CACnB;AAiDD,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,WAAW,EAAE,GAAG,OAAO,EAAE,CAmKtF"}
1
+ {"version":3,"file":"check-evaluate.d.ts","sourceRoot":"","sources":["../../src/cli/check-evaluate.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,WAAW,EAAuC,MAAM,oBAAoB,CAAC;AAE3F,mIAAmI;AACnI,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE3D,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,WAAW,CAAC;CACnB;AAiDD,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,WAAW,EAAE,GAAG,OAAO,EAAE,CAwKtF"}
@@ -75,7 +75,7 @@ export function evaluateRules(appDir, rules) {
75
75
  }
76
76
  for (const rule of byFamily('console-isolation')) {
77
77
  for (const violation of detectConsoleIsolation(appDir).violations) {
78
- findings.push({ ruleId: rule.id, file: violation.file, subject: '', kind: 'file' });
78
+ findings.push({ ruleId: rule.id, file: violation.file, subject: 'console', kind: 'usage' });
79
79
  }
80
80
  }
81
81
  for (const rule of byFamily('cycles')) {
@@ -130,7 +130,12 @@ export function evaluateRules(appDir, rules) {
130
130
  }
131
131
  for (const rule of byFamily('env-access')) {
132
132
  for (const violation of detectEnvAccess(appDir).violations) {
133
- findings.push({ ruleId: rule.id, file: violation.file, subject: '', kind: 'file' });
133
+ findings.push({
134
+ ruleId: rule.id,
135
+ file: violation.file,
136
+ subject: 'process.env',
137
+ kind: 'usage',
138
+ });
134
139
  }
135
140
  }
136
141
  for (const rule of byFamily('workspace-package-api')) {
@@ -1 +1 @@
1
- {"version":3,"file":"check-evaluate.js","sourceRoot":"","sources":["../../src/cli/check-evaluate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check-evaluate.js","sourceRoot":"","sources":["../../src/cli/check-evaluate.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"check-locate.d.ts","sourceRoot":"","sources":["../../src/cli/check-locate.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAInD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,GAAG,IAAI,CAmBrF"}
1
+ {"version":3,"file":"check-locate.d.ts","sourceRoot":"","sources":["../../src/cli/check-locate.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAInD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,GAAG,IAAI,CAqBrF"}
@@ -2,15 +2,17 @@ import * as path from 'node:path';
2
2
  import { importLocations } from '../scanner/file-walker.js';
3
3
  import { buildAliasEntries } from '../scanner/import-graph.js';
4
4
  import { resolveFirstPartyImport } from '../scanner/resolve-import.js';
5
+ import { usageLines } from '../scanner/usage-scanner.js';
5
6
  const toPosix = (value) => value.split(path.sep).join('/');
6
7
  export function createLineLocator(appDir) {
7
8
  const aliases = buildAliasEntries(appDir);
8
9
  return (finding) => {
9
- if (finding.kind === 'file')
10
- return null;
11
10
  const absolute = path.join(appDir, finding.file);
12
11
  let locations;
13
12
  try {
13
+ if (finding.kind === 'usage') {
14
+ return usageLines(absolute, finding.subject)[0] ?? null;
15
+ }
14
16
  locations = importLocations(absolute);
15
17
  }
16
18
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"check-locate.js","sourceRoot":"","sources":["../../src/cli/check-locate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAGvE,MAAM,OAAO,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE3E,MAAM,UAAU,iBAAiB,CAAC,MAAc;IAC9C,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM;YAAE,OAAO,IAAI,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,SAAS,CAAC;QACd,IAAI,CAAC;YACH,SAAS,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC5C,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW;gBAAE,OAAO,QAAQ,CAAC,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC;YAChF,MAAM,QAAQ,GAAG,uBAAuB,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAChF,OAAO,QAAQ,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC;QAC3F,CAAC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrE,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/C,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"check-locate.js","sourceRoot":"","sources":["../../src/cli/check-locate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAqB,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAG5E,MAAM,OAAO,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE3E,MAAM,UAAU,iBAAiB,CAAC,MAAc;IAC9C,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,SAAS,CAAC;QACd,IAAI,CAAC;YACH,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC7B,OAAO,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,OAAuB,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;YAC1E,CAAC;YACD,SAAS,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC5C,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW;gBAAE,OAAO,QAAQ,CAAC,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC;YAChF,MAAM,QAAQ,GAAG,uBAAuB,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAChF,OAAO,QAAQ,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC;QAC3F,CAAC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrE,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/C,CAAC,CAAC;AACJ,CAAC"}
package/dist/cli/check.js CHANGED
@@ -192,7 +192,7 @@ export function findingMessage(rule) {
192
192
  const { conforming, total, floor } = rule.evidence;
193
193
  return `${sentence(rule.statement)}. When this rule was adopted, ${conforming} of ${total} files it applies to followed it (confidence ${Math.round(floor * 100)}%).`;
194
194
  }
195
- const describeSubject = (finding) => finding.kind === 'file' ? '' : ` (${finding.subject})`;
195
+ const describeSubject = (finding) => finding.kind === 'usage' ? '' : ` (${finding.subject})`;
196
196
  const ruleIds = (rules) => rules.map((rule) => rule.id).join(', ');
197
197
  const rulesRemovedMessage = (result) => `This change removes the adopted rules in ${result.missingFile}, so the ${result.removed.length} rule(s) adopted on the base commit are no longer checked: ${ruleIds(result.removed)}.`;
198
198
  export function renderCheckText(result) {
@@ -246,7 +246,7 @@ export function checkReport(result) {
246
246
  rule: finding.rule.id,
247
247
  file: finding.file,
248
248
  line: finding.line,
249
- subject: finding.kind === 'file' ? null : finding.subject,
249
+ subject: finding.kind === 'usage' ? null : finding.subject,
250
250
  message: findingMessage(finding.rule),
251
251
  });
252
252
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/cli/check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/cli/check.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Lints the repo with the generated rules through the repo's own ESLint and config, the setup its developers and
3
+ * CI run, and reports any rule that config turns off. Before the rules are wired, it lints them on their own.
4
+ */
5
+ export declare function runEslintCheck(appDir: string, outDir: string): Promise<void>;
6
+ //# sourceMappingURL=eslint-check.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eslint-check.d.ts","sourceRoot":"","sources":["../../src/cli/eslint-check.ts"],"names":[],"mappings":"AAwHA;;;GAGG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuElF"}