@component-compass/cli 0.0.3 → 0.0.4

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 (101) hide show
  1. package/dist/cli.js +1 -1
  2. package/dist/commands/init.js +1 -3
  3. package/dist/commands/init.js.map +1 -1
  4. package/dist/commands/scan.d.ts +12 -1
  5. package/dist/commands/scan.js +158 -55
  6. package/dist/commands/scan.js.map +1 -1
  7. package/dist/config/loader.js +5 -9
  8. package/dist/config/loader.js.map +1 -1
  9. package/dist/config/schema.d.ts +2 -15
  10. package/dist/config/schema.js.map +1 -1
  11. package/dist/envelope/index.d.ts +0 -9
  12. package/dist/envelope/index.js +1 -46
  13. package/dist/envelope/index.js.map +1 -1
  14. package/dist/identity.d.ts +11 -15
  15. package/dist/identity.js +29 -20
  16. package/dist/identity.js.map +1 -1
  17. package/dist/index.d.ts +2 -0
  18. package/dist/index.js +1 -0
  19. package/dist/index.js.map +1 -1
  20. package/dist/local-index/detect-react.d.ts +2 -1
  21. package/dist/local-index/detect-react.js +135 -115
  22. package/dist/local-index/detect-react.js.map +1 -1
  23. package/dist/local-index/detect-vue.d.ts +15 -1
  24. package/dist/local-index/detect-vue.js +130 -107
  25. package/dist/local-index/detect-vue.js.map +1 -1
  26. package/dist/local-index/detect-wc.d.ts +7 -1
  27. package/dist/local-index/detect-wc.js +56 -60
  28. package/dist/local-index/detect-wc.js.map +1 -1
  29. package/dist/local-index/index.d.ts +11 -6
  30. package/dist/local-index/index.js +25 -27
  31. package/dist/local-index/index.js.map +1 -1
  32. package/dist/manifest/barrel-parser.d.ts +10 -0
  33. package/dist/manifest/barrel-parser.js +11 -0
  34. package/dist/manifest/barrel-parser.js.map +1 -1
  35. package/dist/manifest/derived-manifest-stub.d.ts +15 -6
  36. package/dist/manifest/derived-manifest-stub.js +43 -7
  37. package/dist/manifest/derived-manifest-stub.js.map +1 -1
  38. package/dist/manifest/lazy-resolver.d.ts +42 -16
  39. package/dist/manifest/lazy-resolver.js +122 -49
  40. package/dist/manifest/lazy-resolver.js.map +1 -1
  41. package/dist/occurrences.js +20 -4
  42. package/dist/occurrences.js.map +1 -1
  43. package/dist/parse-by-ext.d.ts +21 -0
  44. package/dist/parse-by-ext.js +53 -0
  45. package/dist/parse-by-ext.js.map +1 -0
  46. package/dist/reporter/index.d.ts +5 -21
  47. package/dist/reporter/index.js +6 -52
  48. package/dist/reporter/index.js.map +1 -1
  49. package/dist/reporter/stdout.js +4 -4
  50. package/dist/reporter/stdout.js.map +1 -1
  51. package/dist/rollup.d.ts +5 -4
  52. package/dist/rollup.js +7 -4
  53. package/dist/rollup.js.map +1 -1
  54. package/dist/scan/cem-index.d.ts +38 -0
  55. package/dist/scan/cem-index.js +139 -0
  56. package/dist/scan/cem-index.js.map +1 -0
  57. package/dist/scan/git-mtime.d.ts +2 -0
  58. package/dist/scan/git-mtime.js +22 -0
  59. package/dist/scan/git-mtime.js.map +1 -0
  60. package/dist/scan/meta.d.ts +5 -0
  61. package/dist/scan/meta.js +58 -0
  62. package/dist/scan/meta.js.map +1 -0
  63. package/dist/scan/stamp-deprecated.d.ts +16 -0
  64. package/dist/scan/stamp-deprecated.js +33 -0
  65. package/dist/scan/stamp-deprecated.js.map +1 -0
  66. package/dist/scan/stamp-version.d.ts +18 -0
  67. package/dist/scan/stamp-version.js +94 -0
  68. package/dist/scan/stamp-version.js.map +1 -0
  69. package/dist/seeds.d.ts +18 -18
  70. package/dist/seeds.js +82 -45
  71. package/dist/seeds.js.map +1 -1
  72. package/dist/types.d.ts +2 -5
  73. package/dist/util/git.d.ts +8 -0
  74. package/dist/util/git.js +73 -0
  75. package/dist/util/git.js.map +1 -1
  76. package/dist/util/progress.d.ts +21 -0
  77. package/dist/util/progress.js +54 -0
  78. package/dist/util/progress.js.map +1 -0
  79. package/dist/walker/files.d.ts +1 -0
  80. package/dist/walker/files.js +11 -5
  81. package/dist/walker/files.js.map +1 -1
  82. package/dist/workspace/find-owning-package.d.ts +6 -0
  83. package/dist/workspace/find-owning-package.js +22 -2
  84. package/dist/workspace/find-owning-package.js.map +1 -1
  85. package/dist/workspace/index.d.ts +1 -1
  86. package/dist/workspace/index.js +1 -1
  87. package/dist/workspace/index.js.map +1 -1
  88. package/package.json +13 -7
  89. package/schema/config.schema.json +2 -24
  90. package/dist/commands/no-deps-diagnostic.d.ts +0 -15
  91. package/dist/commands/no-deps-diagnostic.js +0 -23
  92. package/dist/commands/no-deps-diagnostic.js.map +0 -1
  93. package/dist/config/tag-rules.d.ts +0 -2
  94. package/dist/config/tag-rules.js +0 -34
  95. package/dist/config/tag-rules.js.map +0 -1
  96. package/dist/local-index/walker.d.ts +0 -11
  97. package/dist/local-index/walker.js +0 -47
  98. package/dist/local-index/walker.js.map +0 -1
  99. package/dist/manifest/diagnostic-filter.d.ts +0 -13
  100. package/dist/manifest/diagnostic-filter.js +0 -36
  101. package/dist/manifest/diagnostic-filter.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"barrel-parser.js","sourceRoot":"","sources":["../../src/manifest/barrel-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"barrel-parser.js","sourceRoot":"","sources":["../../src/manifest/barrel-parser.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,18 @@
1
1
  import type { DerivedLeafPayload } from "@component-compass/plugin-core";
2
2
  /**
3
- * Phase 4 hook for extracting `derived` manifest data from leaf source when
4
- * no authored manifest exists. Phase 1 ships the contract only — extractor
5
- * implementations live in `manifest-react` / `manifest-vue` and land in
6
- * Phase 4. Until then this returns null and `components[].manifest` stays
7
- * null for any leaf without an authored manifest.
3
+ * Phase 4 hook: extract derived manifest data from leaf source when no
4
+ * authored manifest (CEM / CCM) exists.
5
+ *
6
+ * Fires only for workspace packages those whose realpath resolves outside
7
+ * `node_modules`. Published packages with only a `dist/` tree are skipped;
8
+ * both extractor implementations return `null` in that case.
9
+ *
10
+ * The extractor to run is inferred from the package's source content:
11
+ * - `.vue` files present in `src/` → manifest-vue extractor
12
+ * - Otherwise → manifest-react extractor (handles TS/JS source)
13
+ *
14
+ * Pre-MVP: source-mapping config (no source-mapping paradigm for publishing
15
+ * packages without source — pre-MVP scope) is out of scope. Only source that
16
+ * lives at the default `src/` path is walked.
8
17
  */
9
- export declare function extractDerivedManifest(_leafPackageDir: string): DerivedLeafPayload | null;
18
+ export declare function extractDerivedManifest(leafPackageDir: string): DerivedLeafPayload | null;
@@ -1,11 +1,47 @@
1
+ import { extractReactManifestSync } from "@component-compass/manifest-react";
2
+ import { extractVueManifestSync } from "@component-compass/manifest-vue";
3
+ import { readdirSync, existsSync } from "node:fs";
4
+ import { join } from "node:path";
1
5
  /**
2
- * Phase 4 hook for extracting `derived` manifest data from leaf source when
3
- * no authored manifest exists. Phase 1 ships the contract only — extractor
4
- * implementations live in `manifest-react` / `manifest-vue` and land in
5
- * Phase 4. Until then this returns null and `components[].manifest` stays
6
- * null for any leaf without an authored manifest.
6
+ * Phase 4 hook: extract derived manifest data from leaf source when no
7
+ * authored manifest (CEM / CCM) exists.
8
+ *
9
+ * Fires only for workspace packages those whose realpath resolves outside
10
+ * `node_modules`. Published packages with only a `dist/` tree are skipped;
11
+ * both extractor implementations return `null` in that case.
12
+ *
13
+ * The extractor to run is inferred from the package's source content:
14
+ * - `.vue` files present in `src/` → manifest-vue extractor
15
+ * - Otherwise → manifest-react extractor (handles TS/JS source)
16
+ *
17
+ * Pre-MVP: source-mapping config (no source-mapping paradigm for publishing
18
+ * packages without source — pre-MVP scope) is out of scope. Only source that
19
+ * lives at the default `src/` path is walked.
7
20
  */
8
- export function extractDerivedManifest(_leafPackageDir) {
9
- return null;
21
+ export function extractDerivedManifest(leafPackageDir) {
22
+ const srcDir = join(leafPackageDir, "src");
23
+ if (existsSync(srcDir) && hasVueSources(srcDir)) {
24
+ return extractVueManifestSync(leafPackageDir);
25
+ }
26
+ return extractReactManifestSync(leafPackageDir);
27
+ }
28
+ function hasVueSources(dir) {
29
+ let entries;
30
+ try {
31
+ entries = readdirSync(dir, { withFileTypes: true });
32
+ }
33
+ catch {
34
+ return false;
35
+ }
36
+ for (const entry of entries) {
37
+ const name = entry.name;
38
+ if (entry.isFile() && name.endsWith(".vue"))
39
+ return true;
40
+ if (entry.isDirectory()) {
41
+ if (hasVueSources(join(dir, name)))
42
+ return true;
43
+ }
44
+ }
45
+ return false;
10
46
  }
11
47
  //# sourceMappingURL=derived-manifest-stub.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"derived-manifest-stub.js","sourceRoot":"","sources":["../../src/manifest/derived-manifest-stub.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,eAAuB;IAC5D,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"derived-manifest-stub.js","sourceRoot":"","sources":["../../src/manifest/derived-manifest-stub.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAe,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,sBAAsB,CAAC,cAAsB;IAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAC3C,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;QAChD,OAAO,sBAAsB,CAAC,cAAc,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,wBAAwB,CAAC,cAAc,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,aAAa,CAAC,GAAW;IAChC,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAa,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAc,CAAC;QAClC,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,IAAI,CAAC;QACzD,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAC;QAClD,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1,15 +1,14 @@
1
1
  import { type IndexedComponent, type LazyResolverHit, type ManifestRef, type Diagnostic, type DiagnosticCollector } from "@component-compass/plugin-core";
2
2
  import type { ResolveImport } from "../walker/resolve-import.js";
3
- import type { WorkspaceGraph } from "../workspace/types.js";
4
3
  export type CreateLazyResolverOptions = {
5
4
  resolveImport: ResolveImport;
6
5
  /**
7
- * Anchor for `warmRoots`-style eager loads. Optional — `resolveLazyManifest`
6
+ * Anchor for eager loads via `.warm()`. Optional — `resolveLazyManifest`
8
7
  * itself never reads it (resolution is anchored on the calling file). When
9
- * absent, `warmRoots` falls back to `process.cwd()`.
8
+ * absent, `.warm()` falls back to `process.cwd()`.
10
9
  */
11
10
  repoRoot?: string;
12
- /** Phase 4 hook; defaults to the no-op stub. */
11
+ /** Derived-manifest extractor; defaults to the workspace-scoped impl from derived-manifest-stub.ts. */
13
12
  extractDerivedManifest?: (leafPackageDir: string) => import("@component-compass/plugin-core").DerivedLeafPayload | null;
14
13
  /**
15
14
  * Optional shared diagnostic collector. If absent, the resolver creates
@@ -17,28 +16,55 @@ export type CreateLazyResolverOptions = {
17
16
  */
18
17
  collector?: DiagnosticCollector;
19
18
  /**
20
- * Workspace graph for the current scan. When provided, imports whose
21
- * importer and target both fall inside the workspace graph short-circuit
22
- * to `null` so the parser's local-detection pipeline classifies them —
23
- * sibling workspace packages are consumer-owned source, not vendor.
24
- * Omitted in unit tests that don't exercise workspace-locality.
19
+ * Glob patterns identifying packages whose manifests should be loaded.
20
+ * When set, the resolver loads manifests only for matching packages —
21
+ * non-matching packages still get identity resolution (`leafPackage` +
22
+ * `modulePath`) but `matched` is always null. When omitted or empty,
23
+ * manifest enrichment is fully disabled; identity resolution still runs.
24
+ * Use `["**"]` to enrich every package the resolver reaches (the
25
+ * single-star pattern `*` won't match scoped names like `@scope/pkg`
26
+ * because picomatch's `*` doesn't cross `/`).
25
27
  */
26
- workspaceGraph?: WorkspaceGraph;
28
+ manifestPatterns?: readonly string[];
27
29
  };
28
30
  export interface LazyResolver {
29
31
  resolveLazyManifest(fromFile: string, specifier: string, exportName: string): LazyResolverHit | null;
30
- lookupByTag(tagName: string): Extract<IndexedComponent, {
31
- kind: "custom-element";
32
- }> | null;
33
32
  snapshotComponents(): IndexedComponent[];
34
33
  snapshotManifestRefs(): ManifestRef[];
34
+ /**
35
+ * Returns the set of package names whose enrichment came from the derived
36
+ * extractor (no authored CEM/CCM was found). Used by scan.ts to label
37
+ * `enrichmentSource: "derived"` on the snapshot entries for these packages.
38
+ */
39
+ snapshotDerivedPackages(): Set<string>;
35
40
  diagnostics(): Diagnostic[];
36
41
  /**
37
42
  * Eagerly load each named package's root CEM/CCM (if present) so the
38
43
  * `byTag` cache covers tag-only consumers (HTML / Vue templates with no
39
- * JS-side import to prime the resolver). No barrel walking — just a single
40
- * leaf-load per package, mirroring the resolver's terminal-load step.
44
+ * JS-side import to prime the resolver). Returns a `WarmedResolver` that
45
+ * adds `lookupByTag` the only way to obtain it. No barrel walking; just
46
+ * one leaf-load per package, mirroring the resolver's terminal-load step.
47
+ */
48
+ warm(packageNames: string[]): WarmedResolver;
49
+ /**
50
+ * Test-only hook: number of times the named barrel path was passed through
51
+ * the parse step. The resolver caches parsed barrel ASTs per absolute path,
52
+ * so on the happy path this is 1 regardless of how many import resolutions
53
+ * traverse the same barrel. Underscore-prefixed because production callers
54
+ * shouldn't depend on it.
41
55
  */
42
- warmRoots(packageNames: string[]): void;
56
+ _barrelParseCount(absPath: string): number;
57
+ }
58
+ export interface WarmedResolver extends LazyResolver {
59
+ /**
60
+ * Tag-only lookup against the CEM index loaded during `warm(...)` (and any
61
+ * subsequent `resolveLazyManifest` calls that walked into eligible
62
+ * packages). Returns null when no matching custom-element has been indexed,
63
+ * including for resolvers constructed without any `manifestPatterns`
64
+ * (identity-only mode — `warm(...)` is then a structural no-op).
65
+ */
66
+ lookupByTag(tagName: string): Extract<IndexedComponent, {
67
+ kind: "custom-element";
68
+ }> | null;
43
69
  }
44
70
  export declare function createLazyResolver(opts: CreateLazyResolverOptions): LazyResolver;
@@ -1,10 +1,11 @@
1
1
  import { existsSync, readFileSync, statSync } from "node:fs";
2
2
  import { createRequire } from "node:module";
3
- import { dirname, join, resolve as pathResolve } from "node:path";
3
+ import { dirname, extname, isAbsolute, join, relative, resolve as pathResolve } from "node:path";
4
+ import picomatch from "picomatch";
5
+ import { parse as babelParse } from "@babel/parser";
4
6
  import { validateManifest, createDiagnosticCollector, } from "@component-compass/plugin-core";
5
- import { parseBarrelTopLevelDetailed } from "./barrel-parser.js";
7
+ import { parseBarrelTopLevelDetailed, parseBarrelTopLevelDetailedFromAst, } from "./barrel-parser.js";
6
8
  import { extractDerivedManifest as extractDerivedManifestStub } from "./derived-manifest-stub.js";
7
- import { findOwningPackage } from "../workspace/find-owning-package.js";
8
9
  /**
9
10
  * Hard ceiling on re-export hops a single resolution may walk. Real chains
10
11
  * top out around 10 hops (deep barrel piles); 32 is a pathological-input
@@ -16,13 +17,49 @@ const MAX_REEXPORT_HOPS = 32;
16
17
  export function createLazyResolver(opts) {
17
18
  const { resolveImport } = opts;
18
19
  const extractDerived = opts.extractDerivedManifest ?? extractDerivedManifestStub;
20
+ const repoRoot = opts.repoRoot;
21
+ // Repo-root-relative POSIX path for output stability (so manifestRef.path
22
+ // and diagnostic.resolvedFile hash/diff identically across machines).
23
+ // Falls back to the absolute path when no repoRoot was provided (legacy
24
+ // callers / unit tests).
25
+ const toRelPath = (abs) => repoRoot && isAbsolute(abs) ? relative(repoRoot, abs).replace(/\\/g, "/") : abs;
26
+ // `manifestPatterns` is the per-package gate for manifest IO (CEM/CCM loads,
27
+ // byTag indexing, snapshot views). Undefined or empty array disables manifest
28
+ // enrichment entirely; identity resolution (`leafPackage` + `modulePath`)
29
+ // runs independently. Use `['**']` to opt every package into enrichment —
30
+ // `'*'` won't match scoped names like `@scope/pkg` since picomatch's `*`
31
+ // doesn't cross `/`.
32
+ const manifestPatterns = opts.manifestPatterns ?? [];
33
+ const manifestMatchers = manifestPatterns.map((p) => picomatch(p));
34
+ const isManifestEligible = (pkgName) => manifestMatchers.length > 0 && manifestMatchers.some((m) => m(pkgName));
19
35
  // (absoluteFilePath::exportName) → cached hit (or null for negative cache).
20
36
  const hitCache = new Map();
21
37
  // tagName → custom-element entry (populated as authored manifests load).
22
38
  const byTag = new Map();
23
39
  // Leaf packages whose authored manifest has been loaded.
24
40
  const visitedLeafs = new Map();
41
+ // Packages whose enrichment came from the derived extractor (not an authored CEM/CCM).
42
+ const derivedPackages = new Set();
25
43
  const collector = opts.collector ?? createDiagnosticCollector();
44
+ // Parsed barrel AST per absolute path. Deep re-export chains (PIE-shaped
45
+ // monorepos: `pie-webc` → `pie-button` → leaf) revisit the same barrel
46
+ // many times across one scan; caching the parsed AST collapses the cost to
47
+ // one parse per file regardless of fan-in.
48
+ const barrelAstCache = new Map();
49
+ const barrelParseCounts = new Map();
50
+ function parsedBarrel(absPath, source) {
51
+ const hit = barrelAstCache.get(absPath);
52
+ if (hit)
53
+ return hit;
54
+ const ext = extname(absPath).toLowerCase();
55
+ const plugins = ["typescript", "decorators-legacy", "classProperties"];
56
+ if (ext !== ".ts")
57
+ plugins.push("jsx");
58
+ const ast = babelParse(source, { sourceType: "module", plugins, errorRecovery: true });
59
+ barrelAstCache.set(absPath, ast);
60
+ barrelParseCounts.set(absPath, (barrelParseCounts.get(absPath) ?? 0) + 1);
61
+ return ast;
62
+ }
26
63
  function loadLeafManifest(leafPackage, leafDir) {
27
64
  const cached = visitedLeafs.get(leafPackage);
28
65
  if (cached)
@@ -77,6 +114,9 @@ export function createLazyResolver(opts) {
77
114
  if (c.kind === "custom-element")
78
115
  byTag.set(c.tagName, c);
79
116
  }
117
+ // Mark this package as derived so `snapshotDerivedPackages()` can
118
+ // inform the caller (scan.ts) to label its enrichmentSource correctly.
119
+ derivedPackages.add(leafPackage);
80
120
  // `path: ""` filters this entry out of `snapshotManifestRefs()`. The
81
121
  // resolver-internal `source` is `ManifestSource` ("cem" | "react" |
82
122
  // "vue"); "react" is a placeholder here — the artifact-facing
@@ -84,13 +124,13 @@ export function createLazyResolver(opts) {
84
124
  // `OutputManifest.source` (added in Task 8), not this internal field.
85
125
  visitedLeafs.set(leafPackage, {
86
126
  components,
87
- manifestRef: { source: "react", package: leafPackage, path: "", version: pkgVersion ?? null },
127
+ manifestRef: { source: "react", packageName: leafPackage, path: "", version: pkgVersion ?? null },
88
128
  });
89
129
  return components;
90
130
  }
91
131
  visitedLeafs.set(leafPackage, {
92
132
  components: [],
93
- manifestRef: { source: "cem", package: leafPackage, path: "", version: pkgVersion ?? null },
133
+ manifestRef: { source: "cem", packageName: leafPackage, path: "", version: pkgVersion ?? null },
94
134
  });
95
135
  return [];
96
136
  }
@@ -103,8 +143,8 @@ export function createLazyResolver(opts) {
103
143
  components,
104
144
  manifestRef: {
105
145
  source: manifestSource,
106
- package: leafPackage,
107
- path: manifestPath,
146
+ packageName: leafPackage,
147
+ path: toRelPath(manifestPath),
108
148
  version: pkgVersion ?? null,
109
149
  },
110
150
  });
@@ -163,21 +203,20 @@ export function createLazyResolver(opts) {
163
203
  const initialAbs = resolveImport(fromFile, specifier);
164
204
  if (!initialAbs)
165
205
  return null;
166
- // Workspace-membership short-circuit: if both the importer and the
167
- // resolved target live inside any workspace package of this repo, the
168
- // import is a consumer-internal sibling reference (e.g. `@proton/atoms`
169
- // imported from `applications/account`). Treat as local so the parser's
170
- // local-detection pipeline owns identity. Yarn/pnpm install workspace
171
- // packages as symlinks under node_modules; findOwningPackage is
172
- // realpath-aware so both the direct path and the symlinked node_modules
173
- // path map back to the workspace.
174
- if (opts.workspaceGraph) {
175
- const fromOwning = findOwningPackage(opts.workspaceGraph, fromFile);
176
- const initialOwning = findOwningPackage(opts.workspaceGraph, initialAbs);
177
- if (fromOwning && initialOwning) {
178
- return null;
179
- }
180
- }
206
+ // Workspace identity rule: workspace packages that carry a `name` field in
207
+ // their package.json get external-style identity (packageName + exportName
208
+ // keys), making them cross-repo joinable just like node_modules deps.
209
+ // findPackageRoot skips package.json files without a `name` field, so
210
+ // any package it returns is guaranteed to carry an identity key.
211
+ //
212
+ // When the resolved target lands inside a named workspace package, fall
213
+ // through to the normal resolution path the lazy resolver will walk the
214
+ // re-export chain and emit { leafPackage, modulePath } exactly as it does
215
+ // for node_modules packages.
216
+ //
217
+ // (Previously this block returned null for both-in-workspace imports,
218
+ // delegating to the local-detection pipeline. That's gone: workspace
219
+ // packages are treated as opaque external packages, not inlined locals.)
181
220
  // Resolved file lives in the same package as the importer (e.g.
182
221
  // `../components/Foo.vue` from a sibling file in the consumer repo).
183
222
  // The lazy resolver's contract is "external packages are opaque tuples";
@@ -209,7 +248,7 @@ export function createLazyResolver(opts) {
209
248
  collector.emit({
210
249
  code: "cycle-detected",
211
250
  severity: "warning",
212
- filePath: currentAbs,
251
+ filePath: toRelPath(currentAbs),
213
252
  exportName: currentExport,
214
253
  ...(cyclePkg !== undefined ? { packageName: cyclePkg } : {}),
215
254
  });
@@ -220,18 +259,23 @@ export function createLazyResolver(opts) {
220
259
  const source = safeReadFile(currentAbs);
221
260
  if (source === null)
222
261
  break;
223
- const { reExports, unsupported } = parseBarrelTopLevelDetailed(source);
224
- const unsupportedPkg = unsupported.length > 0 ? findPackageRoot(currentAbs)?.name : undefined;
225
- for (const u of unsupported) {
226
- collector.emit({
227
- code: "barrel-unsupported-form",
228
- severity: "info",
229
- filePath: currentAbs,
230
- form: u.form,
231
- ...(u.line !== undefined ? { line: u.line } : {}),
232
- ...(unsupportedPkg !== undefined ? { packageName: unsupportedPkg } : {}),
233
- });
262
+ let parsed;
263
+ try {
264
+ const ast = parsedBarrel(currentAbs, source);
265
+ parsed = parseBarrelTopLevelDetailedFromAst(ast);
266
+ }
267
+ catch {
268
+ // parseByExt throws on unrecoverable syntax — fall back to the
269
+ // source-level shim, which swallows parse errors and returns empty
270
+ // arrays so the chain terminates gracefully on garbage files.
271
+ parsed = parseBarrelTopLevelDetailed(source);
234
272
  }
273
+ const { reExports } = parsed;
274
+ // unsupported barrel forms (try/switch-wrapped, dynamic re-exports etc.)
275
+ // are silently treated as terminal — the resolver returns identity from
276
+ // the current file and the parser falls back to opaque emission. The
277
+ // former barrel-unsupported-form info diagnostic was deleted as never
278
+ // user-actionable (2026-05-14 resolver-identity-decouple spec).
235
279
  if (reExports.length === 0)
236
280
  break; // terminal
237
281
  // Find the re-export that carries `currentExport`.
@@ -249,7 +293,7 @@ export function createLazyResolver(opts) {
249
293
  collector.emit({
250
294
  code: "chain-too-deep",
251
295
  severity: "warning",
252
- filePath: currentAbs,
296
+ filePath: toRelPath(currentAbs),
253
297
  exportName: currentExport,
254
298
  depth: MAX_REEXPORT_HOPS,
255
299
  ...(deepPkg !== undefined ? { packageName: deepPkg } : {}),
@@ -267,18 +311,23 @@ export function createLazyResolver(opts) {
267
311
  hitCache.set(cacheKey, null);
268
312
  return null;
269
313
  }
314
+ const modulePath = relative(pkg.dir, currentAbs).replace(/\\/g, "/");
315
+ // Per-package manifest gate. Identity is now computed; if the package
316
+ // is excluded by manifestPatterns (or no patterns set), short-circuit to
317
+ // identity-only emission. Caller gets {leafPackage, modulePath, matched:
318
+ // null}; parser falls back to opaque opportunistic emission with manifest: null.
319
+ if (!isManifestEligible(pkg.name)) {
320
+ const identityOnlyHit = {
321
+ leafPackage: pkg.name,
322
+ modulePath,
323
+ matched: null,
324
+ };
325
+ hitCache.set(cacheKey, identityOnlyHit);
326
+ return identityOnlyHit;
327
+ }
270
328
  const components = loadLeafManifest(pkg.name, pkg.dir);
271
329
  const matched = matchInLeaf(components, chainSpecifiers, currentExport);
272
- if (!matched && components.length === 0) {
273
- // Untraceable + no manifest at all; surface diagnostic.
274
- collector.emit({
275
- code: "untraceable-barrel",
276
- severity: "info",
277
- packageName: pkg.name,
278
- resolvedFile: currentAbs,
279
- });
280
- }
281
- const hit = { leafPackage: pkg.name, matched };
330
+ const hit = { leafPackage: pkg.name, modulePath, matched };
282
331
  hitCache.set(cacheKey, hit);
283
332
  return hit;
284
333
  }
@@ -299,7 +348,10 @@ export function createLazyResolver(opts) {
299
348
  }
300
349
  return out;
301
350
  }
302
- function warmRoots(packageNames) {
351
+ function snapshotDerivedPackages() {
352
+ return new Set(derivedPackages);
353
+ }
354
+ function eagerLoadRoots(packageNames) {
303
355
  // Anchor at <repoRoot>/_ so Node's resolution walks up through
304
356
  // <repoRoot>/node_modules and parents, mirroring resolve-import.ts.
305
357
  const anchor = pathResolve(opts.repoRoot ?? process.cwd(), "_");
@@ -307,6 +359,12 @@ export function createLazyResolver(opts) {
307
359
  for (const name of packageNames) {
308
360
  if (visitedLeafs.has(name))
309
361
  continue;
362
+ // Honour the per-package manifest gate. Packages excluded by
363
+ // manifestPatterns don't get their CEM eagerly loaded — keeps the
364
+ // byTag map empty for them so HTML/Vue-template tag lookups also
365
+ // return null.
366
+ if (!isManifestEligible(name))
367
+ continue;
310
368
  try {
311
369
  const pkgJsonPath = requireFromRepo.resolve(`${name}/package.json`);
312
370
  loadLeafManifest(name, dirname(pkgJsonPath));
@@ -317,14 +375,29 @@ export function createLazyResolver(opts) {
317
375
  }
318
376
  }
319
377
  }
320
- return {
378
+ // The factory returns a LazyResolver. `lookupByTag` is captured in a closure
379
+ // and only attached when the caller goes through `.warm(...)` to obtain a
380
+ // WarmedResolver. Calling `.warm([])` on an identity-only resolver returns a
381
+ // structurally-valid WarmedResolver whose `lookupByTag` always returns null
382
+ // (the byTag map stays empty when no manifestPatterns match).
383
+ const base = {
321
384
  resolveLazyManifest,
322
- lookupByTag,
323
385
  snapshotComponents,
324
386
  snapshotManifestRefs,
387
+ snapshotDerivedPackages,
325
388
  diagnostics: () => collector.drain(),
326
- warmRoots,
389
+ warm(packageNames) {
390
+ eagerLoadRoots(packageNames);
391
+ return {
392
+ ...base,
393
+ lookupByTag,
394
+ };
395
+ },
396
+ _barrelParseCount(absPath) {
397
+ return barrelParseCounts.get(absPath) ?? 0;
398
+ },
327
399
  };
400
+ return base;
328
401
  }
329
402
  // ---------------------------------------------------------------------------
330
403
  // Helpers
@@ -1 +1 @@
1
- {"version":3,"file":"lazy-resolver.js","sourceRoot":"","sources":["../../src/manifest/lazy-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lazy-resolver.js","sourceRoot":"","sources":["../../src/manifest/lazy-resolver.ts"],"names":[],"mappings":"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"}
@@ -34,16 +34,32 @@ function normaliseLocalFilePath(c, repoRoot) {
34
34
  source: { type: "local", filePath: relative(repoRoot, fp).replace(/\\/g, "/") },
35
35
  };
36
36
  }
37
+ /**
38
+ * Convert an absolute scan-time path into a repo-root-relative POSIX path so
39
+ * outputs (and the occurrenceId hash that includes the path) are stable
40
+ * across machines. Paths outside the repo come back with `..` prefix and are
41
+ * still stable as long as cwd is. Absolute paths with no repoRoot context
42
+ * pass through unchanged (test/legacy callers that don't pass repoRoot).
43
+ */
44
+ function toRelativePath(absPath, repoRoot) {
45
+ if (!repoRoot || !isAbsolute(absPath))
46
+ return absPath;
47
+ return relative(repoRoot, absPath).replace(/\\/g, "/");
48
+ }
37
49
  export function parseResultsToOccurrences(results, captureValues, repoRoot = "") {
38
50
  const out = [];
39
51
  for (const result of results) {
40
52
  // First pass: compute (final componentId hash, occurrenceId) for every
41
53
  // parser-emitted occurrence in THIS ParseResult. Indexes align with
42
54
  // result.occurrences, so parentRef indices resolve correctly in pass two.
55
+ // filePath is normalised to repo-root-relative BEFORE hashing so the
56
+ // occurrenceId is identical across machines (Ben's laptop, CI, contributor
57
+ // forks).
43
58
  const computed = result.occurrences.map((occ) => {
44
59
  const componentId = computeStableIdFromComponentId(occ.componentId);
45
- const occurrenceId = computeOccurrenceId(componentId, occ.loc.file, occ.loc.line, occ.loc.column);
46
- return { componentId, occurrenceId };
60
+ const relPath = toRelativePath(occ.loc.file, repoRoot);
61
+ const occurrenceId = computeOccurrenceId(componentId, relPath, occ.loc.line, occ.loc.column);
62
+ return { componentId, occurrenceId, relPath };
47
63
  });
48
64
  // Second pass: project to OutputOccurrence, resolving parentRef.
49
65
  for (let i = 0; i < result.occurrences.length; i++) {
@@ -51,7 +67,7 @@ export function parseResultsToOccurrences(results, captureValues, repoRoot = "")
51
67
  const meta = computed[i];
52
68
  if (!occ || !meta)
53
69
  continue;
54
- const { componentId, occurrenceId } = meta;
70
+ const { componentId, occurrenceId, relPath } = meta;
55
71
  const props = {};
56
72
  for (const p of occ.props) {
57
73
  if (p.isDynamic) {
@@ -68,7 +84,7 @@ export function parseResultsToOccurrences(results, captureValues, repoRoot = "")
68
84
  }
69
85
  const output = {
70
86
  componentId,
71
- filePath: occ.loc.file,
87
+ filePath: relPath,
72
88
  line: occ.loc.line,
73
89
  column: occ.loc.column,
74
90
  via: occ.via,