@kernlang/review 4.1.1-canary.228.1.41c150f2 → 4.5.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.
@@ -6,7 +6,7 @@
6
6
  *
7
7
  * Phase 3 of the review pipeline.
8
8
  */
9
- import type { Project } from 'ts-morph';
9
+ import { type Project } from 'ts-morph';
10
10
  import { type ReviewHealthBuilder } from './review-health.js';
11
11
  import type { InferResult, ReviewFinding } from './types.js';
12
12
  /**
@@ -9,6 +9,7 @@
9
9
  import { execFileSync } from 'child_process';
10
10
  import { existsSync } from 'fs';
11
11
  import { dirname, resolve } from 'path';
12
+ import { Node, SyntaxKind } from 'ts-morph';
12
13
  import { createProject, findTsConfig } from './inferrer.js';
13
14
  import { debugDetail } from './review-health.js';
14
15
  import { createFingerprint } from './types.js';
@@ -196,6 +197,11 @@ export function runTSCDiagnostics(project, options = {}, health) {
196
197
  // (451 files) emitted 1869 of these as errors — pure noise drowning real findings.
197
198
  // ts2792 — "Cannot find module X. Did you mean to set 'moduleResolution' to 'nodenext'?"
198
199
  // ts17004 — "Cannot use JSX unless the '--jsx' flag is provided"
200
+ // ts6142 — "Module 'X' was resolved to 'Y', but '--jsx' is not set." The
201
+ // import-a-.tsx-file twin of ts17004: same root cause (the host
202
+ // tsconfig's jsx option never applied — e.g. `extends: "expo/tsconfig.base"`
203
+ // is unresolvable without node_modules in the sparse clone), and it
204
+ // fires on EVERY .tsx import, so it dominated fitvt PR #19's noise.
199
205
  // ts2580 / ts2591 — "Cannot find name 'process'/'require'/'module'. Install @types/node?"
200
206
  // (TS emits 2580 when the name resolves via global lib shims, 2591 when it doesn't —
201
207
  // both point at the same user-side remedy, both are environmental from review's POV.)
@@ -212,14 +218,15 @@ export function runTSCDiagnostics(project, options = {}, health) {
212
218
  // the JSX global namespace from @types/react isn't reachable in the
213
219
  // sparse clone. Suppress unconditionally in review mode; the dev's IDE
214
220
  // sees the real shape via their installed node_modules.
215
- const isEnvironmentalNoise = code === 2792 || code === 17004 || code === 2580 || code === 2591 || code === 7026;
221
+ const isEnvironmentalNoise = code === 2792 || code === 17004 || code === 6142 || code === 2580 || code === 2591 || code === 7026;
216
222
  // TS2503 ("Cannot find namespace 'X'") is the same class for type-position
217
223
  // uses like `let x: NodeJS.Timeout` — the @types/node `NodeJS` namespace
218
224
  // isn't reachable. TS2584 ("Cannot find name 'console'. Do you need to
219
225
  // change your target library?") fires for `console` specifically and
220
226
  // belongs in the same noise class. Both are environmental, gated on
221
227
  // the same review-mode flag. Gemini + Codex caught these.
222
- const isNodeGlobalUnresolved = (code === 2304 || code === 2552 || code === 2503 || code === 2584) && isNodeGlobalCannotFindName(messageStr);
228
+ const isNodeGlobalUnresolved = (code === 2304 || code === 2552 || code === 2503 || code === 2584) &&
229
+ (isNodeGlobalCannotFindName(messageStr) || isWebRuntimeGlobalCannotFindName(messageStr));
223
230
  // TS2741 "Property 'children' is missing" on a JSX user-component call
224
231
  // site is environmental whenever the JSX global namespace is broken in
225
232
  // the same file. Without `JSX.ElementChildrenAttribute`, TS does not
@@ -248,6 +255,30 @@ export function runTSCDiagnostics(project, options = {}, health) {
248
255
  // that already lost an import to a noise-downgraded miss, so a genuine
249
256
  // `unknown`-handling bug in a cleanly-resolved file still surfaces.
250
257
  const isUnresolvedImportErosionCascade = UNRESOLVED_IMPORT_EROSION_CODES.has(code) && filesWithSuppressedModuleMiss.has(filePath);
258
+ // TS2307 whose (file, specifier) the collector already classified as a
259
+ // review-mode noise miss — including an absent RELATIVE sibling
260
+ // (`./x.helpers` not on disk in the sparse clone). Surfacing the raw
261
+ // "Cannot find module './x.helpers'" is itself a sparse-clone FP; the dev's
262
+ // local `tsc` (siblings present) resolves it. Unifies the raw-2307
263
+ // suppression with the same decisions that drive the TS2305 facade cascade
264
+ // and the TS18046/2571/2698 erosion cascade, so they stay consistent.
265
+ // Review mode only. NOTE: TS2322/TS2345 are deliberately NOT suppressed —
266
+ // an absent sibling erodes an import to `any`, which is assignable to
267
+ // everything and so emits no mismatch; the mechanism could not be
268
+ // reproduced, and blanket-suppressing the highest-value real-bug codes on
269
+ // an unproven cause was rejected.
270
+ const isCollectedModuleMiss = code === 2307 &&
271
+ suppressedModuleMisses.has(moduleMissKey(filePath, extractMissingModuleSpecifier(messageStr) ?? ''));
272
+ // TS2339 "Property 'kind' does not exist on type 'never'" can be a
273
+ // review-mode control-flow cascade around KERN's parseExpression value
274
+ // guards. The canonical compiler accepts these files, but ts-morph's
275
+ // sparse/ad-hoc Project can over-narrow the `parsed` variable after
276
+ // the array/record literal guards plus the record-array-field probe, then
277
+ // reports later `parsed.kind`/`parsed.callee` accesses as `never`.
278
+ // Suppress only that AST shape, and only when the parseExpression return
279
+ // type still has non-array/non-record variants; truly exhaustive branches
280
+ // remain real TS2339 findings even in review mode.
281
+ const isParserExpressionNeverCascade = isReviewModeParserExpressionNeverCascade(sourceFile, code, messageStr, start);
251
282
  if (options.downgradeProjectLoadingErrors &&
252
283
  (isLoadingNoise ||
253
284
  isEnvironmentalNoise ||
@@ -255,6 +286,8 @@ export function runTSCDiagnostics(project, options = {}, health) {
255
286
  isJsxChildrenInferenceNoise ||
256
287
  isBrokenJsxRuntimeNoise ||
257
288
  isUnresolvedImportErosionCascade ||
289
+ isCollectedModuleMiss ||
290
+ isParserExpressionNeverCascade ||
258
291
  isReviewModeModuleResolutionNoise(code, messageStr, filePath) ||
259
292
  isReviewModeGeneratedFacadeExportCascade(sourceFile, code, messageStr, suppressedModuleMisses))) {
260
293
  continue;
@@ -302,13 +335,37 @@ function collectReviewModeSuppressedModuleMisses(diagnostics) {
302
335
  const specifier = extractMissingModuleSpecifier(messageStr);
303
336
  if (!specifier)
304
337
  continue;
305
- if (isReviewModeModuleResolutionNoise(2307, messageStr, sourceFile.getFilePath())) {
338
+ if (isReviewModeModuleResolutionNoise(2307, messageStr, sourceFile.getFilePath()) ||
339
+ isAbsentRelativeSibling(sourceFile, specifier)) {
306
340
  keys.add(moduleMissKey(sourceFile.getFilePath(), specifier));
307
341
  files.add(sourceFile.getFilePath());
308
342
  }
309
343
  }
310
344
  return { keys, files };
311
345
  }
346
+ // True when `specifier` is a RELATIVE import/export (`./x`, `../x`) whose target
347
+ // resolves to no source file on disk — i.e. a sibling module absent from
348
+ // kern-guard's sparse clone (which checks out only the PR's changed files, so a
349
+ // screen split into sibling `./x.types` / `./x.helpers` / `./x.sections` modules
350
+ // loses those siblings). Distinguished from a bare/generated miss (handled by
351
+ // isReviewModeModuleResolutionNoise) and used ONLY in review mode.
352
+ //
353
+ // Trade-off, made explicit: a genuinely typo'd or deleted relative path is
354
+ // indistinguishable from a sparse-clone absence, so treating relative misses as
355
+ // noise means review no longer flags a broken relative import. This is
356
+ // consistent with the engine's standing philosophy — the dev's local
357
+ // `tsc --noEmit` / CI (siblings present) already catches a real broken path;
358
+ // review's value-add is KERN findings, not duplicating the compiler. Gated to
359
+ // relative specifiers only; bare/package and absolute misses are unaffected.
360
+ function isAbsentRelativeSibling(sourceFile, specifier) {
361
+ if (!specifier.startsWith('./') && !specifier.startsWith('../'))
362
+ return false;
363
+ const decls = [...sourceFile.getImportDeclarations(), ...sourceFile.getExportDeclarations()].filter((decl) => decl.getModuleSpecifierValue() === specifier);
364
+ if (decls.length === 0)
365
+ return false;
366
+ // Absent iff no matching decl resolves to a source file on disk.
367
+ return decls.every((decl) => !decl.getModuleSpecifierSourceFile());
368
+ }
312
369
  // Files where TS reports the JSX global namespace is broken — `@types/react`
313
370
  // is unreachable, so `JSX.IntrinsicElements` (the host-element shim) and
314
371
  // `JSX.ElementChildrenAttribute` (the children-routing pointer) are both
@@ -373,6 +430,175 @@ const BROKEN_JSX_RUNTIME_RE = /['"][^'"]*\/jsx-(?:dev-)?runtime['"]/;
373
430
  function isBrokenJsxRuntimeDiagnostic(message) {
374
431
  return BROKEN_JSX_RUNTIME_RE.test(message);
375
432
  }
433
+ function isReviewModeParserExpressionNeverCascade(sourceFile, code, message, start) {
434
+ if (code !== 2339 || start === undefined)
435
+ return false;
436
+ if (!/^Property ['"][^'"]+['"] does not exist on type ['"]never['"]\./.test(message))
437
+ return false;
438
+ const receiver = parserExpressionReceiverAt(sourceFile, start);
439
+ if (!receiver)
440
+ return false;
441
+ return (receiverHasPrecedingCall(receiver, 'isArrayLiteralExpression', start) &&
442
+ receiverHasPrecedingCall(receiver, 'isRecordLiteralExpression', start) &&
443
+ receiverHasPrecedingCall(receiver, 'evalRecordArrayFieldReferenceValue', start) &&
444
+ parseExpressionTypeHasRuntimeBranches(receiver.declaration) &&
445
+ siteHasRuntimeKindGuard(receiver, start));
446
+ }
447
+ function parserExpressionReceiverAt(sourceFile, propertyStart) {
448
+ const nodeAtDiagnostic = sourceFile.getDescendantAtPos(propertyStart);
449
+ const propertyAccess = Node.isPropertyAccessExpression(nodeAtDiagnostic)
450
+ ? nodeAtDiagnostic
451
+ : nodeAtDiagnostic?.getFirstAncestorByKind(SyntaxKind.PropertyAccessExpression);
452
+ if (!propertyAccess)
453
+ return undefined;
454
+ const receiver = propertyAccessRootIdentifier(propertyAccess);
455
+ if (!receiver)
456
+ return undefined;
457
+ const declaration = receiver
458
+ .getSymbol()
459
+ ?.getDeclarations()
460
+ .find((decl) => Node.isVariableDeclaration(decl));
461
+ if (!declaration)
462
+ return undefined;
463
+ const initializer = unwrapExpression(declaration.getInitializer());
464
+ if (!initializer || !Node.isCallExpression(initializer))
465
+ return undefined;
466
+ if (!isCallNamed(initializer, 'parseExpression'))
467
+ return undefined;
468
+ return { declaration, propertyAccess };
469
+ }
470
+ function propertyAccessRootIdentifier(propertyAccess) {
471
+ let expression = unwrapExpression(propertyAccess.getExpression());
472
+ while (expression && Node.isPropertyAccessExpression(expression)) {
473
+ expression = unwrapExpression(expression.getExpression());
474
+ }
475
+ return expression && Node.isIdentifier(expression) ? expression : undefined;
476
+ }
477
+ function receiverHasPrecedingCall(receiver, calleeName, propertyStart) {
478
+ const owner = nearestFunctionBoundary(receiver.propertyAccess);
479
+ const searchRoot = owner ?? receiver.propertyAccess.getSourceFile();
480
+ for (const call of searchRoot.getDescendantsOfKind(SyntaxKind.CallExpression)) {
481
+ if (call.getStart() <= receiver.declaration.getEnd() || call.getStart() >= propertyStart)
482
+ continue;
483
+ if (!sameOptionalNode(nearestFunctionBoundary(call), owner))
484
+ continue;
485
+ if (!isCallNamed(call, calleeName))
486
+ continue;
487
+ const firstArg = unwrapExpression(call.getArguments()[0]);
488
+ if (firstArg && Node.isIdentifier(firstArg) && identifierDeclares(firstArg, receiver.declaration))
489
+ return true;
490
+ }
491
+ return false;
492
+ }
493
+ function siteHasRuntimeKindGuard(receiver, propertyStart) {
494
+ const owner = nearestFunctionBoundary(receiver.propertyAccess);
495
+ for (const ancestor of receiver.propertyAccess.getAncestors()) {
496
+ if (owner && sameNode(ancestor, owner))
497
+ break;
498
+ if (Node.isIfStatement(ancestor)) {
499
+ const condition = ancestor.getExpression();
500
+ if (containsPosition(condition, propertyStart) || containsPosition(ancestor.getThenStatement(), propertyStart)) {
501
+ return conditionHasRuntimeKindGuard(condition, receiver.declaration);
502
+ }
503
+ }
504
+ if (Node.isConditionalExpression(ancestor)) {
505
+ const condition = ancestor.getCondition();
506
+ if (containsPosition(condition, propertyStart) || containsPosition(ancestor.getWhenTrue(), propertyStart)) {
507
+ return conditionHasRuntimeKindGuard(condition, receiver.declaration);
508
+ }
509
+ }
510
+ }
511
+ return false;
512
+ }
513
+ function conditionHasRuntimeKindGuard(condition, declaration) {
514
+ const candidates = Node.isBinaryExpression(condition)
515
+ ? [condition, ...condition.getDescendantsOfKind(SyntaxKind.BinaryExpression)]
516
+ : condition.getDescendantsOfKind(SyntaxKind.BinaryExpression);
517
+ return candidates.some((binary) => binaryIsRuntimeKindGuard(binary, declaration));
518
+ }
519
+ function binaryIsRuntimeKindGuard(binary, declaration) {
520
+ const operator = binary.getOperatorToken().getKind();
521
+ if (operator !== SyntaxKind.EqualsEqualsEqualsToken && operator !== SyntaxKind.EqualsEqualsToken)
522
+ return false;
523
+ const left = unwrapExpression(binary.getLeft());
524
+ const right = unwrapExpression(binary.getRight());
525
+ return ((isReceiverKindAccess(left, declaration) && isRuntimeKindLiteral(right)) ||
526
+ (isRuntimeKindLiteral(left) && isReceiverKindAccess(right, declaration)));
527
+ }
528
+ const PARSER_RUNTIME_KIND_GUARDS = new Set(['call', 'ident', 'new']);
529
+ function isReceiverKindAccess(expression, declaration) {
530
+ if (!expression || !Node.isPropertyAccessExpression(expression))
531
+ return false;
532
+ if (expression.getName() !== 'kind')
533
+ return false;
534
+ const receiver = propertyAccessRootIdentifier(expression);
535
+ return receiver !== undefined && identifierDeclares(receiver, declaration);
536
+ }
537
+ function isRuntimeKindLiteral(expression) {
538
+ return (expression !== undefined &&
539
+ Node.isStringLiteral(expression) &&
540
+ PARSER_RUNTIME_KIND_GUARDS.has(expression.getLiteralText()));
541
+ }
542
+ function containsPosition(node, position) {
543
+ return node.getStart() <= position && position < node.getEnd();
544
+ }
545
+ function parseExpressionTypeHasRuntimeBranches(declaration) {
546
+ const kinds = discriminantKindValues(declaration.getType(), declaration);
547
+ if (kinds.size === 0)
548
+ return false;
549
+ return [...kinds].some((kind) => kind !== 'arrayLit' && kind !== 'objectLit');
550
+ }
551
+ function discriminantKindValues(type, location) {
552
+ const values = new Set();
553
+ const members = type.isUnion() ? type.getUnionTypes() : [type];
554
+ for (const member of members) {
555
+ const kind = member.getProperty('kind');
556
+ if (!kind)
557
+ continue;
558
+ const kindType = kind.getTypeAtLocation(location);
559
+ const kindMembers = kindType.isUnion() ? kindType.getUnionTypes() : [kindType];
560
+ for (const kindMember of kindMembers) {
561
+ if (kindMember.isStringLiteral())
562
+ values.add(String(kindMember.getLiteralValue()));
563
+ }
564
+ }
565
+ return values;
566
+ }
567
+ function identifierDeclares(identifier, declaration) {
568
+ return (identifier.getSymbol()?.getDeclarations() ?? []).some((candidate) => sameNode(candidate, declaration));
569
+ }
570
+ function sameNode(a, b) {
571
+ return a.getSourceFile().getFilePath() === b.getSourceFile().getFilePath() && a.getStart() === b.getStart();
572
+ }
573
+ function sameOptionalNode(a, b) {
574
+ if (a === undefined || b === undefined)
575
+ return a === b;
576
+ return sameNode(a, b);
577
+ }
578
+ const FUNCTION_BOUNDARY_KINDS = new Set([
579
+ SyntaxKind.ArrowFunction,
580
+ SyntaxKind.Constructor,
581
+ SyntaxKind.FunctionDeclaration,
582
+ SyntaxKind.FunctionExpression,
583
+ SyntaxKind.GetAccessor,
584
+ SyntaxKind.MethodDeclaration,
585
+ SyntaxKind.SetAccessor,
586
+ ]);
587
+ function nearestFunctionBoundary(node) {
588
+ return node.getAncestors().find((ancestor) => FUNCTION_BOUNDARY_KINDS.has(ancestor.getKind()));
589
+ }
590
+ function isCallNamed(call, name) {
591
+ const expression = unwrapExpression(call.getExpression());
592
+ return expression !== undefined && Node.isIdentifier(expression) && expression.getText() === name;
593
+ }
594
+ function unwrapExpression(expression) {
595
+ let current = expression;
596
+ while (current &&
597
+ (Node.isParenthesizedExpression(current) || Node.isAsExpression(current) || Node.isTypeAssertion(current))) {
598
+ current = current.getExpression();
599
+ }
600
+ return current;
601
+ }
376
602
  function isReviewModeGeneratedFacadeExportCascade(sourceFile, code, message, suppressedModuleMisses) {
377
603
  if (code !== 2305 || suppressedModuleMisses.size === 0)
378
604
  return false;
@@ -469,6 +695,31 @@ function isNodeGlobalCannotFindName(message) {
469
695
  return false;
470
696
  return NODE_GLOBAL_NAMES.has(m[1]);
471
697
  }
698
+ // Names provided as globals/lib types by the React-Native/Expo and DOM ambient
699
+ // libs — unreachable in kern-guard's sparse clone (no node_modules, and the
700
+ // host tsconfig's `lib`/`extends` often doesn't apply). Same class as the
701
+ // @types/node globals: the dev's local `tsc` resolves them, review's ad-hoc
702
+ // Project can't, so `Cannot find name/namespace 'X'` is environmental noise.
703
+ // __DEV__ — the RN/Expo build-flag global (from `@types/react-native`).
704
+ // HeadersInit / RequestInit / ResponseInit / BodyInit / RequestInfo — DOM
705
+ // lib type aliases devs commonly annotate directly (fetch wrappers).
706
+ // Deliberately narrow: only names dev code types directly, so a genuine
707
+ // missing-symbol still surfaces.
708
+ const WEB_RUNTIME_GLOBAL_NAMES = new Set([
709
+ '__DEV__',
710
+ 'HeadersInit',
711
+ 'RequestInit',
712
+ 'ResponseInit',
713
+ 'BodyInit',
714
+ 'RequestInfo',
715
+ ]);
716
+ // The RN/Expo/DOM-lib counterpart of isNodeGlobalCannotFindName.
717
+ function isWebRuntimeGlobalCannotFindName(message) {
718
+ const m = message.match(/^Cannot find (?:name|namespace) '([^']+)'\.?/);
719
+ if (!m)
720
+ return false;
721
+ return WEB_RUNTIME_GLOBAL_NAMES.has(m[1]);
722
+ }
472
723
  function isReviewModeModuleResolutionNoise(code, message, importerFilePath) {
473
724
  if (code !== 2307)
474
725
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"external-tools.js","sourceRoot":"","sources":["../src/external-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"external-tools.js","sourceRoot":"","sources":["../src/external-tools.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -42,6 +42,7 @@ export { obligationsFromNorms, obligationsFromStructure, synthesizeObligations }
42
42
  export { applyReviewPolicyDefaults, getReviewPolicyProfile, inferReviewPolicy, type ReviewPolicyExplicitOptions, type ReviewPolicyProfile, } from './policy.js';
43
43
  export type { PublicApiMap, PublicApiOverrides } from './public-api.js';
44
44
  export { buildPublicApiMap, EMPTY_PUBLIC_API, expandPublicApiThroughReExports, isPublicApi, resolvePackageEntryFiles, resolveSpecifierToSrc, } from './public-api.js';
45
+ export { PYTHON_BUILTIN_EXCEPTIONS } from './python-builtin-exceptions.js';
45
46
  export { runQualityRules } from './quality-rules.js';
46
47
  export type { DroppedFinding, EntailmentJudgeInput, EntailmentJudgeResult, GroundingDropReason, GroundingPolicy, GroundResult, RuleCorpus, RuleText, } from './rag-grounding.js';
47
48
  export { countDropReasons, groundFindings, isGroundingEligible, OPERATIONAL_LLM_RULE_IDS } from './rag-grounding.js';
package/dist/index.js CHANGED
@@ -176,6 +176,7 @@ export { mineNorms } from './norm-miner.js';
176
176
  export { obligationsFromNorms, obligationsFromStructure, synthesizeObligations } from './obligations.js';
177
177
  export { applyReviewPolicyDefaults, getReviewPolicyProfile, inferReviewPolicy, } from './policy.js';
178
178
  export { buildPublicApiMap, EMPTY_PUBLIC_API, expandPublicApiThroughReExports, isPublicApi, resolvePackageEntryFiles, resolveSpecifierToSrc, } from './public-api.js';
179
+ export { PYTHON_BUILTIN_EXCEPTIONS } from './python-builtin-exceptions.js';
179
180
  export { runQualityRules } from './quality-rules.js';
180
181
  export { countDropReasons, groundFindings, isGroundingEligible, OPERATIONAL_LLM_RULE_IDS } from './rag-grounding.js';
181
182
  export { assignDefaultConfidence, calculateStats, checkEnforcement, dedup, formatEnforcement, formatReport, formatReportJSON, formatSARIF, formatSARIFWithMetadata, formatSARIFWithSuppressions, formatSummary, sortAndDedup, sortFindings, } from './reporter.js';