@nielspeter/eess-ts 0.6.0 → 0.8.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 (100) hide show
  1. package/README.md +1 -1
  2. package/dist/builders/class-rule-builder.d.ts +0 -7
  3. package/dist/builders/class-rule-builder.d.ts.map +1 -1
  4. package/dist/builders/class-rule-builder.js +27 -1
  5. package/dist/builders/class-rule-builder.js.map +1 -1
  6. package/dist/builders/cross-layer-builder.d.ts.map +1 -1
  7. package/dist/builders/cross-layer-builder.js +6 -8
  8. package/dist/builders/cross-layer-builder.js.map +1 -1
  9. package/dist/builders/slice-rule-builder.d.ts.map +1 -1
  10. package/dist/builders/slice-rule-builder.js +7 -1
  11. package/dist/builders/slice-rule-builder.js.map +1 -1
  12. package/dist/conditions/body-analysis-module.d.ts.map +1 -1
  13. package/dist/conditions/body-analysis-module.js +37 -4
  14. package/dist/conditions/body-analysis-module.js.map +1 -1
  15. package/dist/conditions/call.d.ts +4 -3
  16. package/dist/conditions/call.d.ts.map +1 -1
  17. package/dist/conditions/call.js +40 -17
  18. package/dist/conditions/call.js.map +1 -1
  19. package/dist/conditions/function.d.ts.map +1 -1
  20. package/dist/conditions/function.js +22 -8
  21. package/dist/conditions/function.js.map +1 -1
  22. package/dist/conditions/reverse-dependency.d.ts.map +1 -1
  23. package/dist/conditions/reverse-dependency.js +16 -14
  24. package/dist/conditions/reverse-dependency.js.map +1 -1
  25. package/dist/conditions/structural.d.ts.map +1 -1
  26. package/dist/conditions/structural.js +28 -11
  27. package/dist/conditions/structural.js.map +1 -1
  28. package/dist/core/disk-set.d.ts.map +1 -1
  29. package/dist/core/disk-set.js +37 -2
  30. package/dist/core/disk-set.js.map +1 -1
  31. package/dist/core/object-literal-functions.d.ts +4 -1
  32. package/dist/core/object-literal-functions.d.ts.map +1 -1
  33. package/dist/core/object-literal-functions.js +27 -5
  34. package/dist/core/object-literal-functions.js.map +1 -1
  35. package/dist/core/project-relative.d.ts +108 -0
  36. package/dist/core/project-relative.d.ts.map +1 -1
  37. package/dist/core/project-relative.js +179 -2
  38. package/dist/core/project-relative.js.map +1 -1
  39. package/dist/core/through-wrappers.d.ts +24 -0
  40. package/dist/core/through-wrappers.d.ts.map +1 -0
  41. package/dist/core/through-wrappers.js +36 -0
  42. package/dist/core/through-wrappers.js.map +1 -0
  43. package/dist/core/vacuity-diagnosis.d.ts.map +1 -1
  44. package/dist/core/vacuity-diagnosis.js +11 -3
  45. package/dist/core/vacuity-diagnosis.js.map +1 -1
  46. package/dist/helpers/body-traversal.d.ts +14 -14
  47. package/dist/helpers/body-traversal.d.ts.map +1 -1
  48. package/dist/helpers/body-traversal.js +111 -35
  49. package/dist/helpers/body-traversal.js.map +1 -1
  50. package/dist/helpers/callback-extractor.d.ts +6 -1
  51. package/dist/helpers/callback-extractor.d.ts.map +1 -1
  52. package/dist/helpers/callback-extractor.js +45 -10
  53. package/dist/helpers/callback-extractor.js.map +1 -1
  54. package/dist/helpers/global-binding.d.ts +11 -0
  55. package/dist/helpers/global-binding.d.ts.map +1 -0
  56. package/dist/helpers/global-binding.js +232 -0
  57. package/dist/helpers/global-binding.js.map +1 -0
  58. package/dist/index.d.ts +2 -2
  59. package/dist/index.d.ts.map +1 -1
  60. package/dist/index.js +2 -2
  61. package/dist/index.js.map +1 -1
  62. package/dist/models/arch-function.d.ts +2 -2
  63. package/dist/models/arch-function.d.ts.map +1 -1
  64. package/dist/models/arch-function.js +138 -41
  65. package/dist/models/arch-function.js.map +1 -1
  66. package/dist/models/slice.d.ts.map +1 -1
  67. package/dist/models/slice.js +20 -16
  68. package/dist/models/slice.js.map +1 -1
  69. package/dist/predicates/identity.d.ts +2 -1
  70. package/dist/predicates/identity.d.ts.map +1 -1
  71. package/dist/predicates/identity.js +37 -38
  72. package/dist/predicates/identity.js.map +1 -1
  73. package/dist/presets/agent-guardrails.d.ts.map +1 -1
  74. package/dist/presets/agent-guardrails.js +65 -14
  75. package/dist/presets/agent-guardrails.js.map +1 -1
  76. package/dist/presets/boundaries.js +58 -16
  77. package/dist/presets/boundaries.js.map +1 -1
  78. package/dist/presets/recommended.d.ts +29 -6
  79. package/dist/presets/recommended.d.ts.map +1 -1
  80. package/dist/presets/recommended.js +30 -11
  81. package/dist/presets/recommended.js.map +1 -1
  82. package/dist/rules/errors.d.ts +17 -0
  83. package/dist/rules/errors.d.ts.map +1 -1
  84. package/dist/rules/errors.js +48 -8
  85. package/dist/rules/errors.js.map +1 -1
  86. package/dist/rules/security.d.ts +6 -0
  87. package/dist/rules/security.d.ts.map +1 -1
  88. package/dist/rules/security.js +59 -5
  89. package/dist/rules/security.js.map +1 -1
  90. package/dist/smells/duplicate-bodies.d.ts +1 -1
  91. package/dist/smells/duplicate-bodies.d.ts.map +1 -1
  92. package/dist/smells/duplicate-bodies.js +12 -11
  93. package/dist/smells/duplicate-bodies.js.map +1 -1
  94. package/dist/smells/sibling-files.d.ts.map +1 -1
  95. package/dist/smells/sibling-files.js +16 -7
  96. package/dist/smells/sibling-files.js.map +1 -1
  97. package/dist/smells/smell-builder.d.ts.map +1 -1
  98. package/dist/smells/smell-builder.js +15 -1
  99. package/dist/smells/smell-builder.js.map +1 -1
  100. package/package.json +1 -1
@@ -1,6 +1,7 @@
1
1
  import { ArchConfigError } from '@nielspeter/eess';
2
2
  import { Node as NodeClass, Scope, SyntaxKind, } from 'ts-morph';
3
3
  import { collectObjectLiteralFunctions } from '../core/object-literal-functions.js';
4
+ import { throughWrappers } from '../core/through-wrappers.js';
4
5
  /**
5
6
  * Wrap a callable node as an `ArchFunction`, taking its name from the caller.
6
7
  *
@@ -24,7 +25,10 @@ export function fromCallableNode(node, getName) {
24
25
  getName,
25
26
  getSourceFile: () => node.getSourceFile(),
26
27
  isExported: () => false,
27
- isAsync: () => node.isAsync(),
28
+ // An accessor cannot be `async`, and ts-morph gives it no `isAsync` to ask (bug 0321).
29
+ isAsync: () => NodeClass.isGetAccessorDeclaration(node) || NodeClass.isSetAccessorDeclaration(node)
30
+ ? false
31
+ : node.isAsync(),
28
32
  getParameters: () => node.getParameters(),
29
33
  getReturnType: () => node.getReturnType(),
30
34
  getBody: () => node.getBody(),
@@ -87,8 +91,8 @@ export function fromFunctionInitializerDeclaration(decl) {
87
91
  */
88
92
  export function fromMethodDeclaration(method) {
89
93
  const parent = method.getParent();
90
- const className = NodeClass.isClassDeclaration(parent)
91
- ? (parent.getName() ?? '<anonymous>')
94
+ const className = NodeClass.isClassDeclaration(parent) || NodeClass.isClassExpression(parent)
95
+ ? classNameOf(parent)
92
96
  : '<anonymous>';
93
97
  return {
94
98
  getName: () => {
@@ -142,14 +146,7 @@ function accessOf(scope) {
142
146
  * A variable's initializer and a class property's value are read this way (bugs 0306, 0315).
143
147
  */
144
148
  export function functionValueOf(node) {
145
- let current = node;
146
- while (NodeClass.isParenthesizedExpression(current) ||
147
- NodeClass.isAsExpression(current) ||
148
- NodeClass.isTypeAssertion(current) ||
149
- NodeClass.isSatisfiesExpression(current) ||
150
- NodeClass.isNonNullExpression(current)) {
151
- current = current.getExpression();
152
- }
149
+ const current = throughWrappers(node);
153
150
  return NodeClass.isArrowFunction(current) || NodeClass.isFunctionExpression(current)
154
151
  ? current
155
152
  : undefined;
@@ -160,11 +157,11 @@ export function functionValueOf(node) {
160
157
  * is; reported at the member, and read through `fn` — the member itself, or the property's function.
161
158
  */
162
159
  function fromClassMember(cls, member, name, fn) {
163
- const className = cls.getName() ?? '<anonymous>';
160
+ const className = classNameOf(cls);
164
161
  return {
165
162
  getName: () => `${className}.${name}`,
166
163
  getSourceFile: () => member.getSourceFile(),
167
- isExported: () => cls.isExported(),
164
+ isExported: () => (NodeClass.isClassDeclaration(cls) ? cls.isExported() : false),
168
165
  isAsync: () => NodeClass.isArrowFunction(fn) || NodeClass.isFunctionExpression(fn) ? fn.isAsync() : false,
169
166
  getParameters: () => fn.getParameters(),
170
167
  getReturnType: () => fn.getReturnType(),
@@ -181,6 +178,14 @@ function fromClassMember(cls, member, name, fn) {
181
178
  * getter and its setter share a name, and a metric's identity keys on the function's name. Each
182
179
  * property whose value is a function, as `Class.handler`.
183
180
  */
181
+ /**
182
+ * The name a class's members are reported under: the class's own, else the binding that holds it —
183
+ * `const Expr = class { m() {} }` reports `Expr.m` — else `<anonymous>`, as a default-exported
184
+ * class's members have read since bug 0315.
185
+ */
186
+ function classNameOf(cls) {
187
+ return cls.getName() ?? owningBindingName(cls) ?? '<anonymous>';
188
+ }
184
189
  function classMemberFunctions(cls) {
185
190
  const members = [];
186
191
  for (const ctor of cls.getConstructors()) {
@@ -222,32 +227,29 @@ export function collectFunctions(sourceFile, options) {
222
227
  const includeMethods = options?.includeMethods ?? true;
223
228
  const includeObjectLiteralFunctions = options?.includeObjectLiteralFunctions ?? false;
224
229
  const functions = [];
225
- // Pattern 1: FunctionDeclarations
226
- for (const fn of sourceFile.getFunctions()) {
227
- functions.push(fromFunctionDeclaration(fn));
228
- }
229
- // Pattern 2: const arrow functions
230
- for (const varDecl of sourceFile.getVariableDeclarations()) {
231
- // ArrowFunction and FunctionExpression both. `const a = function () {}` is
232
- // an ordinary shape and was collected by nothing — bug 0224 measured `eval`
233
- // passing the `recommended` floor inside one, because the element never
234
- // reached the rule at all. (Distinct from the concise-arrow half of that
235
- // bug, which was a traversal gap, not a collection gap.)
236
- // Read through parentheses, `as`, `<T>`, `satisfies` and `!` too: `const f = ((x) => …) as F` is
237
- // the same function, and was collected by nothing (bug 0315).
238
- if (functionValueOf(varDecl.getInitializer()) !== undefined) {
239
- functions.push(fromFunctionInitializerDeclaration(varDecl));
240
- }
241
- }
242
- // Pattern 3: class members — each class's methods, then its other function members, which no
243
- // function rule read before bug 0315.
244
- if (includeMethods) {
245
- for (const cls of sourceFile.getClasses()) {
246
- for (const method of cls.getMethods()) {
247
- functions.push(fromMethodDeclaration(method));
248
- }
249
- functions.push(...classMemberFunctions(cls));
250
- }
230
+ // Patterns 1 to 3 run over the file AND over every namespace body in it (bug 0321). A namespace
231
+ // is a scope that holds the same declarations a file does, and `getFunctions()`,
232
+ // `getVariableDeclarations()` and `getClasses()` answer only for the node they are asked. So
233
+ // `export namespace N { export function g() { eval('…') } }` — an ordinary function, in an
234
+ // ordinary place — reached no function rule at all, and the `recommended` floor with it.
235
+ //
236
+ // A namespace inside a FUNCTION is left out: everything in it is already part of that function's
237
+ // body, and collecting it again would report one `eval` twice.
238
+ collectFromScope(sourceFile, functions, includeMethods);
239
+ for (const namespace of namespaceScopes(sourceFile)) {
240
+ // Qualified by the namespace path — `N.Inner.m`, not `Inner.m`. Two namespaces in one file may
241
+ // hold a class of the same name, and an unqualified name would make the violation ambiguous,
242
+ // `.excluding()` hit both, and one accepted finding silently accept the other — bug 0010's
243
+ // collision, which the object-literal collection already prefixes against.
244
+ //
245
+ // The prefix does not remove every collision, and the new one is worth naming: in one file
246
+ // `class Expr { m() {} }`, `const Expr = class { m() {} }` and `namespace Expr { function m() {} }`
247
+ // all report as `Expr.m`. Name-based identity cannot tell them apart, here or on the
248
+ // object-literal path.
249
+ const prefix = namespacePathOf(namespace);
250
+ const collected = [];
251
+ collectFromScope(namespace, collected, includeMethods);
252
+ functions.push(...collected.map((fn) => qualifiedBy(prefix, fn)));
251
253
  }
252
254
  // Pattern 4: object-literal function property values (opt-in, proposal 016).
253
255
  // Collect from top-level object literals only; the shared traversal recurses
@@ -266,7 +268,7 @@ export function collectFunctions(sourceFile, options) {
266
268
  // findings collapsing to 2 identities). The documented example
267
269
  // (`routes["/x"].GET`) always implied this prefix; the code never added it.
268
270
  const owner = owningBindingName(root);
269
- for (const found of collectObjectLiteralFunctions(root)) {
271
+ for (const found of collectObjectLiteralFunctions(root, { includeAccessors: true })) {
270
272
  const keyPath = owner === undefined ? found.keyPath : [owner, ...found.keyPath];
271
273
  const fn = fromObjectLiteralFunction(found.node, keyPath);
272
274
  if (fn)
@@ -276,6 +278,98 @@ export function collectFunctions(sourceFile, options) {
276
278
  }
277
279
  return functions;
278
280
  }
281
+ /**
282
+ * Every namespace body in a file that holds code and is not inside a function, innermost ones
283
+ * included — the scopes bug 0321 added beside the file itself.
284
+ *
285
+ * `ModuleDeclaration` is three declarations wearing one node kind: `namespace N {}`,
286
+ * `declare module 'virtual:mod' {}` and `declare global {}`. Only the first holds code. Taking all
287
+ * three collected subjects that DECLARE rather than run — `global.gf`, and `'virtual:mod'.mg`,
288
+ * whose element name carries a quote and a colon — and an adopter rule about function names
289
+ * reported them. An ambient `declare namespace` is the same: a description, not code.
290
+ */
291
+ function namespaceScopes(sourceFile) {
292
+ if (sourceFile.isDeclarationFile())
293
+ return [];
294
+ return (sourceFile
295
+ .getDescendantsOfKind(SyntaxKind.ModuleDeclaration)
296
+ // AMBIENT is the whole test, and it is the only one that can fail. `declare global {}` and
297
+ // `declare module 'virtual:mod' {}` both carry the keyword, so both go; `namespace N {}` and the
298
+ // legacy `module N {}` both hold code, and both stay. Filtering by `ModuleDeclarationKind`
299
+ // instead dropped the legacy spelling — a false green measured while closing the ambient one —
300
+ // and the two extra filters that briefly guarded the other forms could not be made to fail, so
301
+ // they are not here.
302
+ .filter((namespace) => !namespace.hasDeclareKeyword())
303
+ .filter((namespace) => !isInsideAFunction(namespace)));
304
+ }
305
+ /** The dotted path of a namespace, outermost first: `N` for `N`, `A.B` for `namespace A { namespace B {} }`. */
306
+ function namespacePathOf(namespace) {
307
+ const names = [];
308
+ for (const node of [namespace, ...namespace.getAncestors()]) {
309
+ if (NodeClass.isModuleDeclaration(node))
310
+ names.unshift(node.getName());
311
+ }
312
+ return names.join('.');
313
+ }
314
+ /** The same function, reported under a qualified name. */
315
+ function qualifiedBy(prefix, fn) {
316
+ return {
317
+ ...fn,
318
+ getName: () => {
319
+ const name = fn.getName();
320
+ return name === undefined ? undefined : `${prefix}.${name}`;
321
+ },
322
+ };
323
+ }
324
+ /** Whether a node lies inside a function's body, where an enclosing function already reads it. */
325
+ function isInsideAFunction(node) {
326
+ return node
327
+ .getAncestors()
328
+ .some((ancestor) => NodeClass.isFunctionDeclaration(ancestor) ||
329
+ NodeClass.isFunctionExpression(ancestor) ||
330
+ NodeClass.isArrowFunction(ancestor) ||
331
+ NodeClass.isMethodDeclaration(ancestor) ||
332
+ NodeClass.isConstructorDeclaration(ancestor) ||
333
+ NodeClass.isGetAccessorDeclaration(ancestor) ||
334
+ NodeClass.isSetAccessorDeclaration(ancestor));
335
+ }
336
+ /** Patterns 1 to 3 over one scope — a file, or a namespace body in it (bug 0321). */
337
+ function collectFromScope(scope, functions, includeMethods) {
338
+ // Pattern 1: FunctionDeclarations
339
+ for (const fn of scope.getFunctions()) {
340
+ functions.push(fromFunctionDeclaration(fn));
341
+ }
342
+ // Pattern 2: const arrow functions
343
+ for (const varDecl of scope.getVariableDeclarations()) {
344
+ // ArrowFunction and FunctionExpression both. `const a = function () {}` is
345
+ // an ordinary shape and was collected by nothing — bug 0224 measured `eval`
346
+ // passing the `recommended` floor inside one, because the element never
347
+ // reached the rule at all. (Distinct from the concise-arrow half of that
348
+ // bug, which was a traversal gap, not a collection gap.)
349
+ // Read through parentheses, `as`, `<T>`, `satisfies` and `!` too: `const f = ((x) => …) as F` is
350
+ // the same function, and was collected by nothing (bug 0315).
351
+ if (functionValueOf(varDecl.getInitializer()) !== undefined) {
352
+ functions.push(fromFunctionInitializerDeclaration(varDecl));
353
+ }
354
+ }
355
+ // Pattern 3: class members — each class's methods, then its other function members, which no
356
+ // function rule read before bug 0315. A class EXPRESSION holds the same members as a
357
+ // declaration, so `const Expr = class { m() {…} }` is read too, its members named by the binding
358
+ // that holds it (bug 0321). One held by anything else — passed to a call, chosen by a
359
+ // conditional — stays out, with the inline functions bug 0315 left out on purpose.
360
+ if (includeMethods) {
361
+ const classExpressions = scope
362
+ .getVariableDeclarations()
363
+ .map((varDecl) => throughWrappers(varDecl.getInitializer()))
364
+ .filter((initializer) => NodeClass.isClassExpression(initializer));
365
+ for (const cls of [...scope.getClasses(), ...classExpressions]) {
366
+ for (const method of cls.getMethods()) {
367
+ functions.push(fromMethodDeclaration(method));
368
+ }
369
+ functions.push(...classMemberFunctions(cls));
370
+ }
371
+ }
372
+ }
279
373
  /**
280
374
  * The name of the binding an object literal is assigned to, if any.
281
375
  *
@@ -319,7 +413,10 @@ export function fromObjectLiteralFunction(node, keyPath) {
319
413
  const name = qualifiedName(keyPath);
320
414
  if (NodeClass.isArrowFunction(node) ||
321
415
  NodeClass.isFunctionExpression(node) ||
322
- NodeClass.isMethodDeclaration(node)) {
416
+ NodeClass.isMethodDeclaration(node) ||
417
+ // An object literal's accessors, the counterpart of the class accessors bug 0315 collected.
418
+ NodeClass.isGetAccessorDeclaration(node) ||
419
+ NodeClass.isSetAccessorDeclaration(node)) {
323
420
  return fromCallableNode(node, () => name);
324
421
  }
325
422
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"arch-function.js","sourceRoot":"","sources":["../../src/models/arch-function.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"arch-function.js","sourceRoot":"","sources":["../../src/models/arch-function.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"slice.d.ts","sourceRoot":"","sources":["../../src/models/slice.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAErD;;;GAGG;AACH,MAAM,WAAW,KAAK;IACpB,8EAA8E;IAC9E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,2CAA2C;IAC3C,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,CAAA;CAC7B;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AA+FpD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,EAAE,CAkC7E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,GAAG,KAAK,EAAE,CA0C9F"}
1
+ {"version":3,"file":"slice.d.ts","sourceRoot":"","sources":["../../src/models/slice.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAErD;;;GAGG;AACH,MAAM,WAAW,KAAK;IACpB,8EAA8E;IAC9E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,2CAA2C;IAC3C,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,CAAA;CAC7B;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AA+FpD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,EAAE,CAwC7E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,GAAG,KAAK,EAAE,CAuC9F"}
@@ -1,5 +1,4 @@
1
- import picomatch from 'picomatch';
2
- import { isProjectRelative, relativeToRoot } from '../core/project-relative.js';
1
+ import { matchesPath, pathGlobMatcher } from '../core/project-relative.js';
3
2
  /**
4
3
  * Characters that make a segment non-literal for prefix purposes.
5
4
  *
@@ -121,12 +120,18 @@ export function resolveByMatching(project, glob) {
121
120
  // discovery guard fire instead (ADR-008).
122
121
  if (baseDir === '')
123
122
  return [];
124
- const isMatch = picomatch(fullGlob);
123
+ const matcher = pathGlobMatcher(fullGlob);
125
124
  const sourceFiles = project.getSourceFiles();
126
125
  const sliceMap = new Map();
127
126
  for (const sf of sourceFiles) {
128
127
  const filePath = sf.getFilePath();
129
- if (!isMatch(filePath))
128
+ // The root-relative view too — bug 0339. `parseMatchingGlob` prefixes
129
+ // `'**\/'`, so `fullGlob` is exactly the shape that read only the absolute
130
+ // path: picomatch's default `dot: false` stops `**` crossing a project path
131
+ // segment beginning with `.`, every slice went missing, and the discovery
132
+ // guard blamed the author's glob. The slice NAME is still located in the
133
+ // absolute path below — `baseDir` occurs in both views identically.
134
+ if (!matchesPath(matcher, sf, filePath, project.tsConfigPath))
130
135
  continue;
131
136
  // Extract the slice name: the first directory segment after baseDir
132
137
  const baseDirIdx = filePath.indexOf(baseDir);
@@ -168,14 +173,7 @@ export function resolveByDefinition(project, definition) {
168
173
  const entries = Object.entries(definition);
169
174
  const matchers = entries.map(([name, glob]) => ({
170
175
  name,
171
- isMatch: picomatch(glob),
172
- // Bug 0033. A project-relative glob matched nothing here while the path
173
- // predicates and `matching()` both accepted one — so `layers: { api:
174
- // 'src/api/**' }` failed beside a `shared: ['src/shared/**']` that worked,
175
- // in the same preset call. Same rule as the predicates (plan 0067 C):
176
- // relative means **from the project root**, which is narrower and more
177
- // accurate than the `'**/src/api/**'` the old advice prescribed.
178
- relative: isProjectRelative(glob),
176
+ matcher: pathGlobMatcher(glob),
179
177
  files: [],
180
178
  }));
181
179
  for (const sf of sourceFiles) {
@@ -184,11 +182,17 @@ export function resolveByDefinition(project, definition) {
184
182
  // file belongs to one of them (bug 0035). `project.tsConfigPath` is only
185
183
  // the fallback, for a project built without `project()`/`workspace()` —
186
184
  // an in-memory test double, where ts-morph records no config path either.
187
- const fromRoot = relativeToRoot(sf, filePath, project.tsConfigPath);
185
+ //
186
+ // Bug 0033. A project-relative glob matched nothing here while the path
187
+ // predicates and `matching()` both accepted one — so `layers: { api:
188
+ // 'src/api/**' }` failed beside a `shared: ['src/shared/**']` that worked,
189
+ // in the same preset call. Same rule as the predicates (plan 0067 C):
190
+ // relative means **from the project root**, which is narrower and more
191
+ // accurate than the `'**/src/api/**'` the old advice prescribed. Since bug
192
+ // 0339 a `'**\/'`-led glob reads that view too, so the anchored spelling
193
+ // resolves from a project path holding a dot-segment.
188
194
  for (const matcher of matchers) {
189
- const hit = matcher.isMatch(filePath) ||
190
- (matcher.relative && fromRoot !== undefined && matcher.isMatch(fromRoot));
191
- if (hit) {
195
+ if (matchesPath(matcher.matcher, sf, filePath, project.tsConfigPath)) {
192
196
  matcher.files.push(sf);
193
197
  break; // first match wins
194
198
  }
@@ -1 +1 @@
1
- {"version":3,"file":"slice.js","sourceRoot":"","sources":["../../src/models/slice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slice.js","sourceRoot":"","sources":["../../src/models/slice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AA6B1E;;;;;;;;;GASG;AACH,MAAM,cAAc,GAAG,MAAM,CAAA;AAqB7B;;;;;;;;;;;;GAYG;AACH,SAAS,iBAAiB,CAAC,IAAY;IACrC,IAAI,UAAU,GAAG,IAAI,CAAA;IACrB,2EAA2E;IAC3E,+EAA+E;IAC/E,8DAA8D;IAC9D,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACnE,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACtF,CAAC;IAED,iFAAiF;IACjF,iFAAiF;IACjF,iFAAiF;IACjF,gFAAgF;IAChF,+EAA+E;IAC/E,EAAE;IACF,+EAA+E;IAC/E,kFAAkF;IAClF,gFAAgF;IAChF,wEAAwE;IACxE,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC5C,MAAM,kBAAkB,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;QAC1F,2EAA2E;QAC3E,2EAA2E;QAC3E,8EAA8E;QAC9E,iEAAiE;QACjE,UAAU,GAAG,kBAAkB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,GAAG,GAAG,CAAA;IACnE,CAAC;IAED,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,KAAK,EAAE,CAAC,CAAA;IAE1E,iFAAiF;IACjF,8EAA8E;IAC9E,2EAA2E;IAC3E,yEAAyE;IACzE,mEAAmE;IACnE,MAAM,WAAW,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;IACjF,MAAM,cAAc,GAAG,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAChG,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;IAE/E,8EAA8E;IAC9E,iFAAiF;IACjF,+EAA+E;IAC/E,2EAA2E;IAC3E,MAAM,QAAQ,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,MAAM,CAAA;IAExF,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAA;AAC9B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAA;AACxC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAA;AACzC,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAoB,EAAE,IAAY;IAClE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAErD,+EAA+E;IAC/E,gFAAgF;IAChF,8EAA8E;IAC9E,6EAA6E;IAC7E,2EAA2E;IAC3E,0CAA0C;IAC1C,IAAI,OAAO,KAAK,EAAE;QAAE,OAAO,EAAE,CAAA;IAC7B,MAAM,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAA;IACzC,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,EAAE,CAAA;IAC5C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAwB,CAAA;IAEhD,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,EAAE,CAAC,WAAW,EAAE,CAAA;QACjC,sEAAsE;QACtE,2EAA2E;QAC3E,4EAA4E;QAC5E,0EAA0E;QAC1E,yEAAyE;QACzE,oEAAoE;QACpE,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC;YAAE,SAAQ;QAEvE,oEAAoE;QACpE,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC5C,IAAI,UAAU,KAAK,CAAC,CAAC;YAAE,SAAQ;QAC/B,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;QAChE,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS;YAAE,SAAQ;QAExB,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACxC,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACnB,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAC/B,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;AACjF,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAoB,EAAE,UAA2B;IACnF,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,EAAE,CAAA;IAC5C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IAC1C,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAC1B,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAIX,EAAE,CAAC,CAAC;QACJ,IAAI;QACJ,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC;QAC9B,KAAK,EAAE,EAAE;KACV,CAAC,CACH,CAAA;IAED,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,EAAE,CAAC,WAAW,EAAE,CAAA;QACjC,yEAAyE;QACzE,yEAAyE;QACzE,wEAAwE;QACxE,0EAA0E;QAC1E,EAAE;QACF,wEAAwE;QACxE,qEAAqE;QACrE,2EAA2E;QAC3E,sEAAsE;QACtE,uEAAuE;QACvE,2EAA2E;QAC3E,yEAAyE;QACzE,sDAAsD;QACtD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,IAAI,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;gBACrE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBACtB,MAAK,CAAC,mBAAmB;YAC3B,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;AAC7D,CAAC"}
@@ -28,7 +28,8 @@ export declare function haveNameStartingWith<T extends Named>(prefix: string): P
28
28
  export declare function haveNameEndingWith<T extends Named>(suffix: string): Predicate<T>;
29
29
  /**
30
30
  * Matches elements that reside in a file matching the given glob.
31
- * The glob is matched against the absolute file path using picomatch.
31
+ * The glob is matched against the absolute file path and, since bug 0339, the
32
+ * path named from the project root — see `core/project-relative.ts`.
32
33
  *
33
34
  * @example
34
35
  * resideInFile('** /routes.ts') // matches /abs/path/src/routes.ts
@@ -1 +1 @@
1
- {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../src/predicates/identity.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAIjD,iGAAiG;AACjG,MAAM,WAAW,KAAK;IACpB,OAAO,IAAI,MAAM,GAAG,SAAS,CAAA;CAC9B;AAED,yDAAyD;AACzD,MAAM,WAAW,OAAO;IACtB,aAAa,IAAI,UAAU,CAAA;CAC5B;AAED,qGAAqG;AACrG,MAAM,WAAW,UAAU;IACzB,UAAU,IAAI,OAAO,CAAA;CACtB;AAID;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CASxF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAQlF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAQhF;AAID;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAkB1E;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CA2B5E;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,CAcpE;AAID;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,CAKhE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,CAKnE"}
1
+ {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../src/predicates/identity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAIjD,iGAAiG;AACjG,MAAM,WAAW,KAAK;IACpB,OAAO,IAAI,MAAM,GAAG,SAAS,CAAA;CAC9B;AAED,yDAAyD;AACzD,MAAM,WAAW,OAAO;IACtB,aAAa,IAAI,UAAU,CAAA;CAC5B;AAED,qGAAqG;AACrG,MAAM,WAAW,UAAU;IACzB,UAAU,IAAI,OAAO,CAAA;CACtB;AAID;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CASxF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAQlF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAQhF;AAID;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CA4B1E;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAyB5E;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,CAWpE;AAID;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,CAKhE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,CAKnE"}
@@ -1,6 +1,5 @@
1
- import picomatch from 'picomatch';
2
1
  import { globNode } from '@nielspeter/eess';
3
- import { isProjectRelative, relativeToRoot } from '../core/project-relative.js';
2
+ import { isProjectRelative, matchesPath, pathGlobMatcher } from '../core/project-relative.js';
4
3
  // --- Name predicates ---
5
4
  /**
6
5
  * Matches elements whose name matches the given pattern.
@@ -44,30 +43,39 @@ export function haveNameEndingWith(suffix) {
44
43
  // --- File & Folder predicates ---
45
44
  /**
46
45
  * Matches elements that reside in a file matching the given glob.
47
- * The glob is matched against the absolute file path using picomatch.
46
+ * The glob is matched against the absolute file path and, since bug 0339, the
47
+ * path named from the project root — see `core/project-relative.ts`.
48
48
  *
49
49
  * @example
50
50
  * resideInFile('** /routes.ts') // matches /abs/path/src/routes.ts
51
51
  * resideInFile('** /src/*.ts') // matches any .ts file directly in src/
52
52
  */
53
53
  export function resideInFile(glob) {
54
- const isMatch = picomatch(glob);
55
- const relative = isProjectRelative(glob);
54
+ const matcher = pathGlobMatcher(glob);
56
55
  return {
57
56
  // `base: 'normalized'` when the glob is project-relative — the anchor check
58
57
  // in `syntacticFault` calls an unanchored glob dead against absolute paths,
59
58
  // and it stops being dead exactly when it starts working (plan 0067 C).
60
- globs: globNode({ glob, kind: 'file-path', base: relative ? 'normalized' : 'absolute' }),
59
+ //
60
+ // Deliberately NOT `readsRootRelativePath`, which is the wider population
61
+ // this predicate matches against since bug 0339 — but the reason is inertness,
62
+ // not reachability. The two differ only by `'**\/'`-led globs, and
63
+ // `syntacticFault`'s single base-sensitive branch is
64
+ // `base === 'absolute' && !isAnchored(glob)`, which such a glob never reaches.
65
+ // So declaring the wider population would change no verdict, and
66
+ // `base: 'absolute'` stays reachable either way — `'*/x/**'` still declares it
67
+ // and still trips `unanchored`. (An earlier version of this comment claimed
68
+ // the wider predicate would make that fault dead code. It would not; the
69
+ // decision is right and the stated reason was wrong.)
70
+ globs: globNode({
71
+ glob,
72
+ kind: 'file-path',
73
+ base: isProjectRelative(glob) ? 'normalized' : 'absolute',
74
+ }),
61
75
  description: `reside in file matching "${glob}"`,
62
76
  test: (element) => {
63
77
  const sourceFile = element.getSourceFile();
64
- const filePath = sourceFile.getFilePath();
65
- if (isMatch(filePath))
66
- return true;
67
- if (!relative)
68
- return false;
69
- const fromRoot = relativeToRoot(sourceFile, filePath);
70
- return fromRoot !== undefined && isMatch(fromRoot);
78
+ return matchesPath(matcher, sourceFile, sourceFile.getFilePath());
71
79
  },
72
80
  };
73
81
  }
@@ -80,8 +88,7 @@ export function resideInFile(glob) {
80
88
  * resideInFolder('** /src/services/**')
81
89
  */
82
90
  export function resideInFolder(glob) {
83
- const isMatch = picomatch(glob);
84
- const relative = isProjectRelative(glob);
91
+ const matcher = pathGlobMatcher(glob);
85
92
  return {
86
93
  // `parent-dir`, not `file-path`: the test below reads the directory
87
94
  // portion, so this glob is matched against the immediate parent and
@@ -89,23 +96,20 @@ export function resideInFolder(glob) {
89
96
  globs: globNode({
90
97
  glob,
91
98
  kind: 'parent-dir',
92
- base: relative ? 'normalized' : 'absolute',
99
+ base: isProjectRelative(glob) ? 'normalized' : 'absolute',
93
100
  }),
94
101
  description: `reside in folder matching "${glob}"`,
95
102
  test: (element) => {
96
103
  const sourceFile = element.getSourceFile();
97
104
  const filePath = sourceFile.getFilePath();
98
105
  const dirPath = filePath.substring(0, filePath.lastIndexOf('/'));
99
- if (isMatch(dirPath))
100
- return true;
101
- // Project-relative: the same directory, named from the project root
102
- // (plan 0067 C). `'src/domain/**'` means that folder AT THE ROOT, which
103
- // is narrower and more accurate than the `'**/src/domain/**'` the old
104
- // advice prescribed.
105
- if (!relative)
106
- return false;
107
- const fromRoot = relativeToRoot(sourceFile, dirPath);
108
- return fromRoot !== undefined && isMatch(fromRoot);
106
+ // The same directory, named from the project root, as well as absolutely
107
+ // (plan 0067 C; bug 0339 extended it to the `'**\/'`-led spelling, which
108
+ // is the one that could not match from a project path holding a
109
+ // dot-segment). `'src/domain/**'` means that folder AT THE ROOT, which is
110
+ // narrower and more accurate than the `'**/src/domain/**'` the old advice
111
+ // prescribed.
112
+ return matchesPath(matcher, sourceFile, dirPath);
109
113
  },
110
114
  };
111
115
  }
@@ -130,20 +134,15 @@ export function resideInFolder(glob) {
130
134
  * modules(p).that().havePathMatching('** /services/*.ts')
131
135
  */
132
136
  export function havePathMatching(glob) {
133
- const isMatch = picomatch(glob);
134
- const relative = isProjectRelative(glob);
137
+ const matcher = pathGlobMatcher(glob);
135
138
  return {
136
- globs: globNode({ glob, kind: 'file-path', base: relative ? 'normalized' : 'absolute' }),
139
+ globs: globNode({
140
+ glob,
141
+ kind: 'file-path',
142
+ base: isProjectRelative(glob) ? 'normalized' : 'absolute',
143
+ }),
137
144
  description: `have path matching "${glob}"`,
138
- test: (sourceFile) => {
139
- const filePath = sourceFile.getFilePath();
140
- if (isMatch(filePath))
141
- return true;
142
- if (!relative)
143
- return false;
144
- const fromRoot = relativeToRoot(sourceFile, filePath);
145
- return fromRoot !== undefined && isMatch(fromRoot);
146
- },
145
+ test: (sourceFile) => matchesPath(matcher, sourceFile, sourceFile.getFilePath()),
147
146
  };
148
147
  }
149
148
  // --- Export predicates ---
@@ -1 +1 @@
1
- {"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/predicates/identity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/predicates/identity.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"agent-guardrails.d.ts","sourceRoot":"","sources":["../../src/presets/agent-guardrails.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAmBrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAYpD;;;;;GAKG;AACH,KAAK,qBAAqB,GACtB,gCAAgC,MAAM,EAAE,GACxC,gCAAgC,GAChC,uBAAuB,GACvB,8BAA8B,GAC9B,4BAA4B,GAC5B,uCAAuC,CAAA;AAE3C,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB,CAAC,qBAAqB,CAAC;IACtF,oDAAoD;IACpD,GAAG,EAAE,MAAM,CAAA;IACX,sFAAsF;IACtF,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B;;;;;;;;;;;;;;;;;;OAkBG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;CACrB;AAkFD;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAC7B,CAAC,EAAE,WAAW,EACd,OAAO,EAAE,sBAAsB,GAAG;IAAE,MAAM,EAAE,UAAU,CAAA;CAAE,GACvD,eAAe,EAAE,CAAA;AACpB,wBAAgB,eAAe,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,sBAAsB,GAAG,aAAa,CAAA"}
1
+ {"version":3,"file":"agent-guardrails.d.ts","sourceRoot":"","sources":["../../src/presets/agent-guardrails.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAoBrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAYpD;;;;;GAKG;AACH,KAAK,qBAAqB,GACtB,gCAAgC,MAAM,EAAE,GACxC,gCAAgC,GAChC,uBAAuB,GACvB,8BAA8B,GAC9B,4BAA4B,GAC5B,uCAAuC,CAAA;AAE3C,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB,CAAC,qBAAqB,CAAC;IACtF,oDAAoD;IACpD,GAAG,EAAE,MAAM,CAAA;IACX,sFAAsF;IACtF,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B;;;;;;;;;;;;;;;;;;OAkBG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;CACrB;AAuGD;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAC7B,CAAC,EAAE,WAAW,EACd,OAAO,EAAE,sBAAsB,GAAG;IAAE,MAAM,EAAE,UAAU,CAAA;CAAE,GACvD,eAAe,EAAE,CAAA;AACpB,wBAAgB,eAAe,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,sBAAsB,GAAG,aAAa,CAAA"}