sadrazam 0.1.9 → 0.1.11

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/CHANGELOG.md CHANGED
@@ -2,6 +2,27 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## v0.1.11
6
+
7
+ ### Added
8
+ - `--max-show-issues <count>` to limit displayed finding items in text, markdown, JSON, and TOON output without changing scan results or exit behavior
9
+ - `unresolved-imports` findings for definitely unresolved local-style imports, including relative imports, absolute path imports, `package.json#imports`, and configured local aliases
10
+
11
+ ### Changed
12
+ - JSON and TOON findings include `totalItems` and `omittedItems` metadata when `--max-show-issues` truncates displayed items
13
+ - Documentation site now uses Astro Starlight instead of VitePress
14
+
15
+ ## v0.1.10
16
+
17
+ ### Added
18
+ - OXC-backed source parsing for JavaScript and TypeScript import/export analysis, with regex fallback for sources OXC cannot parse
19
+ - OXC-backed local resolution for TypeScript source extension aliases and `package.json#imports` specifiers
20
+ - Parser backend counts in workspace summaries so JSON and TOON consumers can see OXC versus fallback coverage
21
+
22
+ ### Fixed
23
+ - Ignore import, require, and export syntax that appears inside comments or string literals
24
+ - Treat package import specifiers resolved to local source files as local imports instead of missing packages
25
+
5
26
  ## v0.1.9
6
27
 
7
28
  ### Added
package/README.md CHANGED
@@ -137,6 +137,12 @@ Explain findings of one type:
137
137
  npx sadrazam . --explain unused-files
138
138
  ```
139
139
 
140
+ Limit displayed items per finding without changing the scan result or exit code:
141
+
142
+ ```bash
143
+ npx sadrazam . --max-show-issues 10
144
+ ```
145
+
140
146
  ---
141
147
 
142
148
  ## 🧠 AI Mode (Optional)
@@ -158,9 +164,11 @@ AI will:
158
164
  ## ⚙️ Features
159
165
 
160
166
  - unused dependency detection
167
+ - unresolved local import detection
161
168
  - unused file + export detection
162
169
  - monorepo & workspace support
163
170
  - TypeScript path alias support
171
+ - OXC-backed parser and local resolver
164
172
  - script-aware scanning
165
173
  - CommonJS + modern import support
166
174
  - safe auto-fix
package/dist/config.d.ts CHANGED
@@ -12,6 +12,7 @@ export interface SadrazamConfig {
12
12
  cache?: boolean;
13
13
  watch?: boolean;
14
14
  trace?: string;
15
+ maxShowIssues?: number;
15
16
  ignorePackages?: string[];
16
17
  allowUnusedDependencies?: string[];
17
18
  allowUnusedDevDependencies?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGhE,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;IACnC,0BAA0B,CAAC,EAAE,MAAM,EAAE,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,6BAA6B,CAAC,EAAE,MAAM,EAAE,CAAC;IACzC,MAAM,CAAC,EAAE;QACP,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;KACzB,CAAC;IACF,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACpC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;KACvC,CAAC;IACF,aAAa,CAAC,EAAE;QACd,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;KAC3B,CAAC;IACF,SAAS,CAAC,EAAE;QACV,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;KAC1B,CAAC;IACF,EAAE,CAAC,EAAE;QACH,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,cAAc,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB;AAQD,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAoBxF"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGhE,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;IACnC,0BAA0B,CAAC,EAAE,MAAM,EAAE,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,6BAA6B,CAAC,EAAE,MAAM,EAAE,CAAC;IACzC,MAAM,CAAC,EAAE;QACP,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;KACzB,CAAC;IACF,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACpC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;KACvC,CAAC;IACF,aAAa,CAAC,EAAE;QACd,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;KAC3B,CAAC;IACF,SAAS,CAAC,EAAE;QACV,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;KAC1B,CAAC;IACF,EAAE,CAAC,EAAE;QACH,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,cAAc,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB;AAQD,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAoBxF"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAmD7E,MAAM,gBAAgB,GAAG,CAAC,eAAe,CAAC,CAAC;AAE3C,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,QAAgB;IACvD,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAE7C,KAAK,MAAM,QAAQ,IAAI,gBAAgB,EAAE,CAAC;QACxC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAEnD,IAAI,MAAM,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACjC,OAAO;gBACL,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAmB;gBACxE,MAAM,EAAE,UAAU;aACnB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,WAAW,GAAG,CAAC,MAAM,eAAe,CAAC,WAAW,CAAC,CAA4B,CAAC;IACpF,OAAO;QACL,MAAM,EAAE,WAAW,CAAC,QAAQ,IAAI,EAAE;QAClC,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,WAAW,WAAW,CAAC,CAAC,CAAC,UAAU;KACtE,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,QAAgB;IACxC,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAoD7E,MAAM,gBAAgB,GAAG,CAAC,eAAe,CAAC,CAAC;AAE3C,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,QAAgB;IACvD,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAE7C,KAAK,MAAM,QAAQ,IAAI,gBAAgB,EAAE,CAAC;QACxC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAEnD,IAAI,MAAM,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACjC,OAAO;gBACL,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAmB;gBACxE,MAAM,EAAE,UAAU;aACnB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,WAAW,GAAG,CAAC,MAAM,eAAe,CAAC,WAAW,CAAC,CAA4B,CAAC;IACpF,OAAO;QACL,MAAM,EAAE,WAAW,CAAC,QAAQ,IAAI,EAAE;QAClC,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,WAAW,WAAW,CAAC,CAAC,CAAC,UAAU;KACtE,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,QAAgB;IACxC,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"findings.d.ts","sourceRoot":"","sources":["../src/findings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5C,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,uBAAuB,EAAE,MAAM,EAAE,CAAC;IAClC,0BAA0B,EAAE,MAAM,EAAE,CAAC;IACrC,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,6BAA6B,EAAE,MAAM,EAAE,CAAC;IACxC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE;QACb,eAAe,EAAE,MAAM,EAAE,CAAC;QAC1B,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,cAAc,EAAE,MAAM,EAAE,CAAC;KAC1B,CAAC;CACH;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE,YAAY,EACnB,UAAU,EAAE,OAAO,GAClB,aAAa,EAAE,CAgEjB"}
1
+ {"version":3,"file":"findings.d.ts","sourceRoot":"","sources":["../src/findings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5C,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,uBAAuB,EAAE,MAAM,EAAE,CAAC;IAClC,0BAA0B,EAAE,MAAM,EAAE,CAAC;IACrC,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,6BAA6B,EAAE,MAAM,EAAE,CAAC;IACxC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE;QACb,eAAe,EAAE,MAAM,EAAE,CAAC;QAC1B,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,cAAc,EAAE,MAAM,EAAE,CAAC;KAC1B,CAAC;CACH;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE,YAAY,EACnB,UAAU,EAAE,OAAO,GAClB,aAAa,EAAE,CAqEjB"}
package/dist/findings.js CHANGED
@@ -8,6 +8,11 @@ export function getActiveFindings(result, rules, production) {
8
8
  ...rules.ignorePackages,
9
9
  ]),
10
10
  },
11
+ {
12
+ type: "unresolved-imports",
13
+ title: "Unresolved local imports",
14
+ items: result.unresolvedImports,
15
+ },
11
16
  {
12
17
  type: "unused-dependencies",
13
18
  title: "Unused dependencies",
@@ -80,6 +85,9 @@ function getPatternsForFinding(type, preprocessors) {
80
85
  if (type === "unused-exports") {
81
86
  return preprocessors.exportPatterns;
82
87
  }
88
+ if (type === "unresolved-imports") {
89
+ return [];
90
+ }
83
91
  return preprocessors.packagePatterns;
84
92
  }
85
93
  function matchesPattern(value, pattern) {
@@ -1 +1 @@
1
- {"version":3,"file":"findings.js","sourceRoot":"","sources":["../src/findings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"findings.js","sourceRoot":"","sources":["../src/findings.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"importParser.d.ts","sourceRoot":"","sources":["../src/importParser.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EACA,QAAQ,GACR,eAAe,GACf,aAAa,GACb,gBAAgB,GAChB,SAAS,GACT,iBAAiB,CAAC;CACvB;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,CAW3D"}
1
+ {"version":3,"file":"importParser.d.ts","sourceRoot":"","sources":["../src/importParser.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EACA,QAAQ,GACR,eAAe,GACf,aAAa,GACb,gBAAgB,GAChB,SAAS,GACT,iBAAiB,CAAC;CACvB;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,CAY3D"}
@@ -1,3 +1,4 @@
1
+ import { createJavaScriptCodeMask, isCodeMatch } from "./sourceSanitizer.js";
1
2
  const IMPORT_RE = /\bimport\s+(?:type\s+)?(?:[^"'`]+?\s+from\s+)?["'`]([^"'`]+)["'`]/g;
2
3
  const IMPORT_EQUALS_RE = /\bimport\s+[\w*\s{},]+\s*=\s*require\s*\(\s*["'`]([^"'`]+)["'`]\s*\)/g;
3
4
  const DYNAMIC_IMPORT_RE = /\bimport\s*\(\s*["'`]([^"'`]+)["'`]\s*\)/g;
@@ -6,16 +7,20 @@ const REQUIRE_RESOLVE_RE = /\brequire\.resolve\s*\(\s*["'`]([^"'`]+)["'`]\s*\)/g
6
7
  const EXPORT_FROM_RE = /\bexport\s+(?:\*|{[^}]+})\s+from\s+["'`]([^"'`]+)["'`]/g;
7
8
  export function parseImports(source) {
8
9
  const matches = [];
9
- collectMatches(matches, source, IMPORT_RE, "import");
10
- collectMatches(matches, source, IMPORT_EQUALS_RE, "import-equals");
11
- collectMatches(matches, source, EXPORT_FROM_RE, "export-from");
12
- collectMatches(matches, source, DYNAMIC_IMPORT_RE, "dynamic-import");
13
- collectMatches(matches, source, REQUIRE_RE, "require");
14
- collectMatches(matches, source, REQUIRE_RESOLVE_RE, "require-resolve");
10
+ const codeMask = createJavaScriptCodeMask(source);
11
+ collectMatches(matches, source, codeMask, IMPORT_RE, "import");
12
+ collectMatches(matches, source, codeMask, IMPORT_EQUALS_RE, "import-equals");
13
+ collectMatches(matches, source, codeMask, EXPORT_FROM_RE, "export-from");
14
+ collectMatches(matches, source, codeMask, DYNAMIC_IMPORT_RE, "dynamic-import");
15
+ collectMatches(matches, source, codeMask, REQUIRE_RE, "require");
16
+ collectMatches(matches, source, codeMask, REQUIRE_RESOLVE_RE, "require-resolve");
15
17
  return dedupe(matches);
16
18
  }
17
- function collectMatches(matches, source, pattern, kind) {
19
+ function collectMatches(matches, source, codeMask, pattern, kind) {
18
20
  for (const match of source.matchAll(pattern)) {
21
+ if (!isCodeMatch(match, codeMask)) {
22
+ continue;
23
+ }
19
24
  const specifier = match[1]?.trim();
20
25
  if (specifier) {
21
26
  matches.push({ specifier, kind });
@@ -1 +1 @@
1
- {"version":3,"file":"importParser.js","sourceRoot":"","sources":["../src/importParser.ts"],"names":[],"mappings":"AAAA,MAAM,SAAS,GACb,oEAAoE,CAAC;AACvE,MAAM,gBAAgB,GAAG,uEAAuE,CAAC;AACjG,MAAM,iBAAiB,GAAG,2CAA2C,CAAC;AACtE,MAAM,UAAU,GAAG,4CAA4C,CAAC;AAChE,MAAM,kBAAkB,GAAG,qDAAqD,CAAC;AACjF,MAAM,cAAc,GAAG,yDAAyD,CAAC;AAajF,MAAM,UAAU,YAAY,CAAC,MAAc;IACzC,MAAM,OAAO,GAAmB,EAAE,CAAC;IAEnC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACrD,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC;IACnE,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;IAC/D,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;IACrE,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IACvD,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,iBAAiB,CAAC,CAAC;IAEvE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,cAAc,CACrB,OAAuB,EACvB,MAAc,EACd,OAAe,EACf,IAA0B;IAE1B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7C,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QAEnC,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CAAC,KAAqB;IACnC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAE/B,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3B,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QAE7C,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"importParser.js","sourceRoot":"","sources":["../src/importParser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAE7E,MAAM,SAAS,GACb,oEAAoE,CAAC;AACvE,MAAM,gBAAgB,GAAG,uEAAuE,CAAC;AACjG,MAAM,iBAAiB,GAAG,2CAA2C,CAAC;AACtE,MAAM,UAAU,GAAG,4CAA4C,CAAC;AAChE,MAAM,kBAAkB,GAAG,qDAAqD,CAAC;AACjF,MAAM,cAAc,GAAG,yDAAyD,CAAC;AAajF,MAAM,UAAU,YAAY,CAAC,MAAc;IACzC,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAElD,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC/D,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC;IAC7E,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;IACzE,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;IAC/E,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IACjE,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,kBAAkB,EAAE,iBAAiB,CAAC,CAAC;IAEjF,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,cAAc,CACrB,OAAuB,EACvB,MAAc,EACd,QAAmB,EACnB,OAAe,EACf,IAA0B;IAE1B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC;YAClC,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QAEnC,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CAAC,KAAqB;IACnC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAE/B,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3B,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QAE7C,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC"}
package/dist/index.js CHANGED
@@ -7,7 +7,7 @@ import { Command } from "commander";
7
7
  import fg from "fast-glob";
8
8
  import pc from "picocolors";
9
9
  import { generateAiSummary } from "./aiClient.js";
10
- import { resolveCatalogEntryFiles, resolveCatalogInputs, resolveCatalogPackageNames } from "./catalog.js";
10
+ import { resolveCatalogInputs, resolveCatalogPackageNames } from "./catalog.js";
11
11
  import { applyAutoFixes } from "./autoFix.js";
12
12
  import { resolveAiConfig, SUPPORTED_AI_PROVIDERS } from "./aiConfig.js";
13
13
  import { getConfigurationHints } from "./configHints.js";
@@ -36,6 +36,7 @@ const EMPTY_MEMORY = {
36
36
  };
37
37
  const SUPPORTED_FINDING_TYPES = [
38
38
  "missing",
39
+ "unresolved-imports",
39
40
  "unused-dependencies",
40
41
  "unused-devDependencies",
41
42
  "misplaced-devDependencies",
@@ -65,6 +66,7 @@ program
65
66
  .option("--trace <package>", "trace where a package is treated as used")
66
67
  .option("--trace-export <target>", "trace where an export is treated as used (relativePath:exportName)")
67
68
  .option("--explain <type>", `explain findings for a given type (${SUPPORTED_FINDING_TYPES.join(", ")})`)
69
+ .option("--max-show-issues <count>", "limit displayed issue items per finding")
68
70
  .option("--ignore-packages <names>", "comma-separated package names to ignore in findings")
69
71
  .option("--allow-unused-dependencies <names>", "comma-separated dependency allowlist")
70
72
  .option("--allow-unused-dev-dependencies <names>", "comma-separated devDependency allowlist")
@@ -89,6 +91,7 @@ Examples:
89
91
  AI_PROVIDER=openai AI_TOKEN=... sadrazam . --ai
90
92
  sadrazam . --explain unused-files
91
93
  sadrazam . --explain unused-dependencies
94
+ sadrazam . --max-show-issues 5
92
95
  `)
93
96
  .action(async (target, options) => {
94
97
  const targetDir = path.resolve(target);
@@ -213,6 +216,7 @@ async function runScanCommand(targetDir, rawOptions, runtimeOptions = {}) {
213
216
  ...(mergedOptions.trace ? { trace: String(mergedOptions.trace) } : {}),
214
217
  ...(mergedOptions.traceExport ? { traceExport: String(mergedOptions.traceExport) } : {}),
215
218
  ...(explain ? { explain } : {}),
219
+ ...(mergedOptions.maxShowIssues ? { maxShowIssues: mergedOptions.maxShowIssues } : {}),
216
220
  ...(aiSummary ? { aiSummary } : {}),
217
221
  ...(aiConfig
218
222
  ? {
@@ -393,6 +397,7 @@ function mergeCliWithConfig(rawOptions, config) {
393
397
  trace: asOptionalString(rawOptions.trace) ?? config.trace,
394
398
  traceExport: asOptionalString(rawOptions.traceExport),
395
399
  explain: asOptionalString(rawOptions.explain),
400
+ maxShowIssues: parsePositiveIntegerOption(rawOptions.maxShowIssues ?? config.maxShowIssues, "--max-show-issues"),
396
401
  ignorePackages: asOptionalString(rawOptions.ignorePackages) ?? config.ignorePackages?.join(","),
397
402
  allowUnusedDependencies: asOptionalString(rawOptions.allowUnusedDependencies) ?? config.allowUnusedDependencies?.join(","),
398
403
  allowUnusedDevDependencies: asOptionalString(rawOptions.allowUnusedDevDependencies) ?? config.allowUnusedDevDependencies?.join(","),
@@ -404,6 +409,18 @@ function mergeCliWithConfig(rawOptions, config) {
404
409
  function asOptionalString(value) {
405
410
  return typeof value === "string" && value.trim() ? value : undefined;
406
411
  }
412
+ function parsePositiveIntegerOption(value, optionName) {
413
+ if (value === undefined || value === null || value === "") {
414
+ return undefined;
415
+ }
416
+ if (typeof value === "number" && Number.isInteger(value) && value > 0) {
417
+ return value;
418
+ }
419
+ if (typeof value === "string" && /^[1-9]\d*$/.test(value.trim())) {
420
+ return Number(value.trim());
421
+ }
422
+ throw new Error(`${optionName} expects a positive integer.`);
423
+ }
407
424
  function roundMs(value) {
408
425
  return Number(value.toFixed(1));
409
426
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { FileSymbols } from "./symbolParser.js";
2
+ export declare function parseFileSymbolsWithOxc(source: string, ignoredExportNames?: string[], filename?: string): FileSymbols | null;
3
+ //# sourceMappingURL=oxcParser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oxcParser.d.ts","sourceRoot":"","sources":["../src/oxcParser.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,mBAAmB,CAAC;AAErE,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,kBAAkB,GAAE,MAAM,EAAO,EACjC,QAAQ,SAAe,GACtB,WAAW,GAAG,IAAI,CAiFpB"}
@@ -0,0 +1,188 @@
1
+ import { parseSync } from "oxc-parser";
2
+ export function parseFileSymbolsWithOxc(source, ignoredExportNames = [], filename = "source.tsx") {
3
+ let result;
4
+ try {
5
+ result = parseSync(filename, source, { sourceType: "unambiguous" });
6
+ }
7
+ catch {
8
+ return null;
9
+ }
10
+ if (result.errors.some((error) => error.severity === "Error")) {
11
+ return null;
12
+ }
13
+ const allSpecifiers = new Set();
14
+ const references = [];
15
+ const exportedNames = new Set();
16
+ for (const staticImport of result.module.staticImports) {
17
+ const specifier = staticImport.moduleRequest.value.trim();
18
+ if (!specifier) {
19
+ continue;
20
+ }
21
+ allSpecifiers.add(specifier);
22
+ if (staticImport.entries.length === 0) {
23
+ continue;
24
+ }
25
+ references.push({
26
+ specifier,
27
+ importedNames: parseOxcImportNames(staticImport.entries),
28
+ usesAllExports: staticImport.entries.some((entry) => entry.importName.kind === "NamespaceObject"),
29
+ });
30
+ }
31
+ for (const dynamicImport of result.module.dynamicImports) {
32
+ const specifier = readModuleRequest(source, dynamicImport.moduleRequest);
33
+ if (specifier) {
34
+ allSpecifiers.add(specifier);
35
+ references.push({ specifier, importedNames: [], usesAllExports: true });
36
+ }
37
+ }
38
+ for (const staticExport of result.module.staticExports) {
39
+ for (const entry of staticExport.entries) {
40
+ if (entry.moduleRequest) {
41
+ const specifier = entry.moduleRequest.value.trim();
42
+ if (!specifier) {
43
+ continue;
44
+ }
45
+ allSpecifiers.add(specifier);
46
+ references.push({
47
+ specifier,
48
+ importedNames: parseOxcExportImportNames(entry.importName),
49
+ usesAllExports: entry.importName.kind === "All"
50
+ || entry.importName.kind === "AllButDefault",
51
+ });
52
+ continue;
53
+ }
54
+ const exportName = parseOxcExportName(entry.exportName);
55
+ if (exportName) {
56
+ exportedNames.add(exportName);
57
+ }
58
+ }
59
+ }
60
+ collectCommonJsReferences(result.program, allSpecifiers, references);
61
+ return {
62
+ allSpecifiers: [...allSpecifiers].sort(),
63
+ localReferences: dedupeReferences(references),
64
+ exportedNames: [...exportedNames].sort(),
65
+ ignoredExportNames,
66
+ };
67
+ }
68
+ function parseOxcImportNames(entries) {
69
+ const names = new Set();
70
+ for (const entry of entries) {
71
+ if (entry.importName.kind === "Default") {
72
+ names.add("default");
73
+ }
74
+ else if (entry.importName.kind === "Name" && entry.importName.name) {
75
+ names.add(entry.importName.name);
76
+ }
77
+ }
78
+ return [...names].sort();
79
+ }
80
+ function parseOxcExportImportNames(importName) {
81
+ return importName.kind === "Name" && importName.name ? [importName.name] : [];
82
+ }
83
+ function parseOxcExportName(exportName) {
84
+ if (exportName.kind === "Default") {
85
+ return "default";
86
+ }
87
+ return exportName.kind === "Name" ? exportName.name : null;
88
+ }
89
+ function collectCommonJsReferences(program, allSpecifiers, references) {
90
+ visitNode(program, (node) => {
91
+ const importEqualsSpecifier = getImportEqualsSpecifier(node);
92
+ if (importEqualsSpecifier) {
93
+ allSpecifiers.add(importEqualsSpecifier);
94
+ references.push({ specifier: importEqualsSpecifier, importedNames: [], usesAllExports: true });
95
+ return;
96
+ }
97
+ if (node.type !== "CallExpression") {
98
+ return;
99
+ }
100
+ const specifier = getRequireCallSpecifier(node);
101
+ if (specifier) {
102
+ allSpecifiers.add(specifier);
103
+ references.push({ specifier, importedNames: [], usesAllExports: true });
104
+ }
105
+ });
106
+ }
107
+ function getImportEqualsSpecifier(node) {
108
+ if (node.type !== "TSImportEqualsDeclaration") {
109
+ return null;
110
+ }
111
+ const moduleReference = node.moduleReference;
112
+ if (!isRecord(moduleReference) || moduleReference.type !== "TSExternalModuleReference") {
113
+ return null;
114
+ }
115
+ return getStringLiteralValue(moduleReference.expression);
116
+ }
117
+ function getRequireCallSpecifier(node) {
118
+ const args = Array.isArray(node.arguments) ? node.arguments : [];
119
+ const specifier = getStringLiteralValue(args[0]);
120
+ if (!specifier) {
121
+ return null;
122
+ }
123
+ const callee = node.callee;
124
+ if (isIdentifier(callee, "require")) {
125
+ return specifier;
126
+ }
127
+ if (!isRecord(callee) || callee.type !== "MemberExpression" || callee.computed !== false) {
128
+ return null;
129
+ }
130
+ return isIdentifier(callee.object, "require") && isIdentifier(callee.property, "resolve")
131
+ ? specifier
132
+ : null;
133
+ }
134
+ function readModuleRequest(source, span) {
135
+ return unquoteStringLiteral(source.slice(span.start, span.end).trim());
136
+ }
137
+ function getStringLiteralValue(node) {
138
+ return isRecord(node) && node.type === "Literal" && typeof node.value === "string"
139
+ ? node.value
140
+ : null;
141
+ }
142
+ function unquoteStringLiteral(value) {
143
+ if (value.length < 2) {
144
+ return null;
145
+ }
146
+ const quote = value[0];
147
+ const endQuote = value[value.length - 1];
148
+ if ((quote !== "\"" && quote !== "'" && quote !== "`") || quote !== endQuote) {
149
+ return null;
150
+ }
151
+ return value.slice(1, -1);
152
+ }
153
+ function visitNode(node, visitor) {
154
+ if (!isRecord(node)) {
155
+ return;
156
+ }
157
+ visitor(node);
158
+ for (const [key, value] of Object.entries(node)) {
159
+ if (key === "type" || key === "start" || key === "end") {
160
+ continue;
161
+ }
162
+ if (Array.isArray(value)) {
163
+ for (const item of value) {
164
+ visitNode(item, visitor);
165
+ }
166
+ continue;
167
+ }
168
+ visitNode(value, visitor);
169
+ }
170
+ }
171
+ function dedupeReferences(references) {
172
+ const seen = new Set();
173
+ return references.filter((reference) => {
174
+ const key = `${reference.specifier}:${reference.usesAllExports}:${reference.importedNames.join(",")}`;
175
+ if (seen.has(key)) {
176
+ return false;
177
+ }
178
+ seen.add(key);
179
+ return true;
180
+ });
181
+ }
182
+ function isIdentifier(node, name) {
183
+ return isRecord(node) && node.type === "Identifier" && node.name === name;
184
+ }
185
+ function isRecord(value) {
186
+ return typeof value === "object" && value !== null;
187
+ }
188
+ //# sourceMappingURL=oxcParser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oxcParser.js","sourceRoot":"","sources":["../src/oxcParser.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,13 @@ import type { ScanMemory, ScanResult } from "./scan.js";
2
2
  import type { WorkspaceTarget } from "./workspaceFinder.js";
3
3
  export declare const SUPPORTED_REPORTERS: readonly ["text", "json", "toon", "markdown", "sarif"];
4
4
  export type ReporterType = (typeof SUPPORTED_REPORTERS)[number];
5
- export type FindingType = "missing" | "unused-dependencies" | "unused-devDependencies" | "misplaced-devDependencies" | "unused-files" | "unused-exports";
5
+ export type FindingType = "missing" | "unresolved-imports" | "unused-dependencies" | "unused-devDependencies" | "misplaced-devDependencies" | "unused-files" | "unused-exports";
6
6
  export interface ActiveFinding {
7
7
  type: FindingType;
8
8
  title: string;
9
9
  items: string[];
10
+ totalItems?: number;
11
+ omittedItems?: number;
10
12
  }
11
13
  export interface ReportWorkspace {
12
14
  workspace: WorkspaceTarget;
@@ -27,6 +29,7 @@ export interface RenderReportInput {
27
29
  strict: boolean;
28
30
  include: FindingType[];
29
31
  exclude: FindingType[];
32
+ maxShowIssues?: number;
30
33
  workspaces: ReportWorkspace[];
31
34
  trace?: string;
32
35
  traceExport?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"reporters.d.ts","sourceRoot":"","sources":["../src/reporters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reporters.d.ts","sourceRoot":"","sources":["../src/reporters.ts"],"names":[],"mappings":"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"}