@lzehrung/codegraph-core 2.2.0 → 2.2.2

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 (49) hide show
  1. package/dist/documentLinks/check.d.ts.map +1 -1
  2. package/dist/documentLinks/check.js +4 -3
  3. package/dist/documentLinks/check.js.map +1 -1
  4. package/dist/indexer/build-cache/options.d.ts +15 -13
  5. package/dist/indexer/build-cache/options.d.ts.map +1 -1
  6. package/dist/indexer/build-cache/options.js +30 -38
  7. package/dist/indexer/build-cache/options.js.map +1 -1
  8. package/dist/indexer/build-cache/project-snapshot.d.ts.map +1 -1
  9. package/dist/indexer/build-cache/project-snapshot.js +103 -60
  10. package/dist/indexer/build-cache/project-snapshot.js.map +1 -1
  11. package/dist/indexer/build-index.d.ts.map +1 -1
  12. package/dist/indexer/build-index.js +43 -20
  13. package/dist/indexer/build-index.js.map +1 -1
  14. package/dist/indexer/imports.d.ts +4 -0
  15. package/dist/indexer/imports.d.ts.map +1 -1
  16. package/dist/indexer/imports.js +6 -5
  17. package/dist/indexer/imports.js.map +1 -1
  18. package/dist/indexer/locals-and-exports.d.ts.map +1 -1
  19. package/dist/indexer/locals-and-exports.js +10 -5
  20. package/dist/indexer/locals-and-exports.js.map +1 -1
  21. package/dist/indexer/navigation-references.d.ts +14 -1
  22. package/dist/indexer/navigation-references.d.ts.map +1 -1
  23. package/dist/indexer/navigation-references.js +29 -7
  24. package/dist/indexer/navigation-references.js.map +1 -1
  25. package/dist/indexer/navigation.d.ts.map +1 -1
  26. package/dist/indexer/navigation.js +72 -10
  27. package/dist/indexer/navigation.js.map +1 -1
  28. package/dist/indexer/types.d.ts +1 -0
  29. package/dist/indexer/types.d.ts.map +1 -1
  30. package/dist/languages/definitions/javascript.d.ts.map +1 -1
  31. package/dist/languages/definitions/javascript.js +1 -0
  32. package/dist/languages/definitions/javascript.js.map +1 -1
  33. package/dist/languages/definitions/typescript.d.ts.map +1 -1
  34. package/dist/languages/definitions/typescript.js +2 -0
  35. package/dist/languages/definitions/typescript.js.map +1 -1
  36. package/dist/languages/types.d.ts +4 -0
  37. package/dist/languages/types.d.ts.map +1 -1
  38. package/dist/languages.d.ts +1 -0
  39. package/dist/languages.d.ts.map +1 -1
  40. package/dist/languages.js +1 -0
  41. package/dist/languages.js.map +1 -1
  42. package/dist/util/projectFiles.js +1 -1
  43. package/dist/util/projectFiles.js.map +1 -1
  44. package/dist/util/resolution.d.ts.map +1 -1
  45. package/dist/util/resolution.js +2 -3
  46. package/dist/util/resolution.js.map +1 -1
  47. package/dist/worker/nativeWorkerPool.js +1 -1
  48. package/dist/worker/nativeWorkerPool.js.map +1 -1
  49. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/documentLinks/check.ts"],"names":[],"mappings":"AAKA,OAAO,EAAoB,KAAK,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AAE7F,KAAK,yBAAyB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,KAAK,EAAE,yBAAyB,CAAC;IACjC,GAAG,EAAE,yBAAyB,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG,cAAc,GAAG,mBAAmB,GAAG,kBAAkB,GAAG,cAAc,CAAC;AAExH,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,sBAAsB,CAAC;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,8BAA8B,CAAC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,aAAa,EAAE,CAAC,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE;QACP,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,eAAe,EAAE,MAAM,CAAC;QACxB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,QAAQ,EAAE,wBAAwB,EAAE,CAAC;CACtC,CAAC;AAYF,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,2BAA2B,GACtC,OAAO,CAAC,uBAAuB,CAAC,CAGlC;AAED,wBAAsB,yBAAyB,CAC7C,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,GACtB,OAAO,CAAC,uBAAuB,CAAC,CAgFlC"}
1
+ {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/documentLinks/check.ts"],"names":[],"mappings":"AAKA,OAAO,EAAoB,KAAK,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AAE7F,KAAK,yBAAyB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,KAAK,EAAE,yBAAyB,CAAC;IACjC,GAAG,EAAE,yBAAyB,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG,cAAc,GAAG,mBAAmB,GAAG,kBAAkB,GAAG,cAAc,CAAC;AAExH,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,sBAAsB,CAAC;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,8BAA8B,CAAC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,aAAa,EAAE,CAAC,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE;QACP,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,eAAe,EAAE,MAAM,CAAC;QACxB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,QAAQ,EAAE,wBAAwB,EAAE,CAAC;CACtC,CAAC;AAYF,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,2BAA2B,GACtC,OAAO,CAAC,uBAAuB,CAAC,CAGlC;AAED,wBAAsB,yBAAyB,CAC7C,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,GACtB,OAAO,CAAC,uBAAuB,CAAC,CAiFlC"}
@@ -2,7 +2,7 @@ import fsp from "node:fs/promises";
2
2
  import path from "node:path";
3
3
  import { extractMarkdownLinkOccurrences } from "./markdown.js";
4
4
  import { supportForFile } from "../languages.js";
5
- import { isFilePathWithinRoot, normalizePath, toProjectDisplayPath } from "../util/paths.js";
5
+ import { isFilePathWithinRoot, normalizePath, toProjectDisplayPath, toProjectRelativePath } from "../util/paths.js";
6
6
  import { listProjectFiles } from "../util/projectFiles.js";
7
7
  const URI_SCHEME = /^[A-Za-z][A-Za-z0-9+.-]*:/;
8
8
  const WINDOWS_ABSOLUTE_PATH = /^[A-Za-z]:[\\/]/;
@@ -15,8 +15,9 @@ export async function checkMarkdownLinksInFiles(projectRoot, files) {
15
15
  const realRoot = await fsp.realpath(root);
16
16
  const markdownFileCandidates = await Promise.all(Array.from(files, async (file) => {
17
17
  const absoluteFile = path.resolve(root, file);
18
- if (isFilePathWithinRoot(root, absoluteFile))
19
- return path.resolve(realRoot, path.relative(root, absoluteFile));
18
+ const relativeFile = toProjectRelativePath(root, absoluteFile);
19
+ if (relativeFile !== null)
20
+ return path.resolve(realRoot, relativeFile);
20
21
  try {
21
22
  return await fsp.realpath(absoluteFile);
22
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/documentLinks/check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/documentLinks/check.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,12 @@ import type { GraphBuildOptions } from "../../graphs/types.js";
4
4
  import type { BuildOptions } from "../types.js";
5
5
  export { normalizeLanguageExtensions } from "../../languages.js";
6
6
  export declare const CORE_ALGORITHM_EPOCH = 2;
7
+ /**
8
+ * Bump whenever a language behavior hook changes. Hook source text is deliberately
9
+ * not fingerprinted because bundling rewrites it; this epoch invalidates caches
10
+ * consistently across the CLI and library build shapes.
11
+ */
12
+ export declare const LANGUAGE_BEHAVIOR_EPOCH = 1;
7
13
  export type ManifestBuildOptions = {
8
14
  cache?: BuildOptions["cache"];
9
15
  cacheStrict?: boolean;
@@ -26,23 +32,19 @@ export type ManifestBuildOptions = {
26
32
  * covered by languageDefinitionFingerprintDescriptor above. Record exhaustiveness
27
33
  * makes adding a field to LanguageDefinition without descriptor coverage a
28
34
  * typecheck error, and the runtime check in tests/cache-invalidation.test.ts
29
- * rejects definition objects carrying keys outside this set. Coverage here means
30
- * the field participates in the fingerprint; if a future field genuinely cannot
31
- * affect indexing results, serialize a stable placeholder for it in the
32
- * descriptor and keep its entry below.
35
+ * rejects definition objects carrying keys outside this set. Function-valued
36
+ * behavior fields are intentionally covered by LANGUAGE_BEHAVIOR_EPOCH instead of
37
+ * source text; bump that epoch with every hook behavior change.
33
38
  */
34
39
  export declare const languageDefinitionFingerprintCoverage: Readonly<Record<keyof LanguageDefinition, true>>;
35
40
  /**
36
- * Changes whenever this package version or a loaded language definition changes.
37
- * The descriptor serializes every LanguageDefinition field (guarded by
38
- * languageDefinitionFingerprintCoverage): structure and graph queries, plus the
39
- * source text of every behavior hook, so editing a definition or its queries
40
- * cannot silently outlive an on-disk index. Changes to the code that interprets
41
- * definitions — the import resolver, the chunker, scope construction — are NOT
42
- * covered by this descriptor; they invalidate only via the package-version
43
- * component, so same-version installs and dev iteration must bump the version or
44
- * clear the cache for those to take effect.
41
+ * Changes whenever this package version, a declarative language definition field,
42
+ * or LANGUAGE_BEHAVIOR_EPOCH changes. Behavior-hook edits must bump that epoch.
43
+ *
44
+ * The optional epoch parameter exists for regression coverage of this declared
45
+ * cache-invalidation contract.
45
46
  */
47
+ export declare function getImplementationFingerprintForEpoch(languageBehaviorEpoch: number): string;
46
48
  export declare function getImplementationFingerprint(): string;
47
49
  export declare function clearImplementationFingerprintCache(): void;
48
50
  export declare function summarizeBuildOptions(opts?: BuildOptions): ManifestBuildOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/indexer/build-cache/options.ts"],"names":[],"mappings":"AAEA,OAAO,EAA+B,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE5F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAK/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEjE,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAEtC,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE;QACV,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,YAAY,EAAE,OAAO,CAAC;KACvB,CAAC;IACF,kBAAkB,CAAC,EAAE,oBAAoB,CAAC;CAC3C,CAAC;AA8EF;;;;;;;;;GASG;AACH,eAAO,MAAM,qCAAqC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,kBAAkB,EAAE,IAAI,CAAC,CAiBlG,CAAC;AAEF;;;;;;;;;;GAUG;AACH,wBAAgB,4BAA4B,IAAI,MAAM,CAerD;AAED,wBAAgB,mCAAmC,IAAI,IAAI,CAE1D;AAqDD,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE,YAAY,GAAG,oBAAoB,CAE/E;AAkDD,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,oBAAoB,GAAG,SAAS,EAC9C,WAAW,EAAE,YAAY,GAAG,SAAS,GACpC,MAAM,EAAE,CA+BV;AAED,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,iBAAiB,CAUjF;AAED,wBAAgB,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAmBvF"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/indexer/build-cache/options.ts"],"names":[],"mappings":"AAEA,OAAO,EAA+B,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE5F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAK/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEjE,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,IAAI,CAAC;AAEzC,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE;QACV,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,YAAY,EAAE,OAAO,CAAC;KACvB,CAAC;IACF,kBAAkB,CAAC,EAAE,oBAAoB,CAAC;CAC3C,CAAC;AAuDF;;;;;;;;GAQG;AACH,eAAO,MAAM,qCAAqC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,kBAAkB,EAAE,IAAI,CAAC,CAkBlG,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,oCAAoC,CAAC,qBAAqB,EAAE,MAAM,GAAG,MAAM,CAe1F;AAED,wBAAgB,4BAA4B,IAAI,MAAM,CAIrD;AAED,wBAAgB,mCAAmC,IAAI,IAAI,CAE1D;AAqDD,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE,YAAY,GAAG,oBAAoB,CAE/E;AAkDD,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,oBAAoB,GAAG,SAAS,EAC9C,WAAW,EAAE,YAAY,GAAG,SAAS,GACpC,MAAM,EAAE,CA+BV;AAED,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,iBAAiB,CAUjF;AAED,wBAAgB,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAmBvF"}
@@ -8,20 +8,16 @@ import {} from "../../util/projectFiles.js";
8
8
  import { getNativeRuntimeFingerprint } from "../../native/treeSitterNative.js";
9
9
  export { normalizeLanguageExtensions } from "../../languages.js";
10
10
  export const CORE_ALGORITHM_EPOCH = 2;
11
+ /**
12
+ * Bump whenever a language behavior hook changes. Hook source text is deliberately
13
+ * not fingerprinted because bundling rewrites it; this epoch invalidates caches
14
+ * consistently across the CLI and library build shapes.
15
+ */
16
+ export const LANGUAGE_BEHAVIOR_EPOCH = 1;
11
17
  let cachedImplementationFingerprint;
12
- function functionSource(value) {
13
- return typeof value === "function" ? Function.prototype.toString.call(value) : undefined;
14
- }
15
18
  function languageDefinitionFingerprintDescriptor(definition) {
16
19
  const native = definition.native;
17
- const nativeNormalizeQuery = functionSource(native?.normalizeQuery);
18
- const classifyDefinition = functionSource(definition.classifyDefinition);
19
- const isDeclarationName = functionSource(definition.isDeclarationName);
20
- const scopeDeclarationNames = definition.scopeDeclarationNames === "all" ? "all" : functionSource(definition.scopeDeclarationNames);
21
- const normalizeIdentifier = functionSource(definition.normalizeIdentifier);
22
- const createsBlockScope = functionSource(definition.createsBlockScope);
23
- const createsFunctionScope = functionSource(definition.createsFunctionScope);
24
- const isTypeOnly = functionSource(definition.isTypeOnly);
20
+ const scopeDeclarationNames = definition.scopeDeclarationNames === "all" ? "all" : undefined;
25
21
  return {
26
22
  id: definition.id,
27
23
  extensions: [...definition.extensions].sort(),
@@ -34,22 +30,17 @@ function languageDefinitionFingerprintDescriptor(definition) {
34
30
  native: {
35
31
  authoritativeKinds: [...(native.authoritativeKinds ?? [])].sort(),
36
32
  notes: [...(native.notes ?? [])],
37
- ...(nativeNormalizeQuery ? { normalizeQuery: nativeNormalizeQuery } : {}),
38
33
  },
39
34
  }
40
35
  : {}),
41
36
  behavior: {
42
- // Booleans serialize under the same defaults adaptDefinition applies, so the
43
- // fingerprint tracks effective behavior rather than incidental optionality.
37
+ // Function-valued behavior fields are covered by LANGUAGE_BEHAVIOR_EPOCH.
38
+ // Bundlers rewrite their source text, so hashing it would make equivalent
39
+ // CLI and library builds invalidate one another's caches.
44
40
  usesQueryDrivenLocals: definition.usesQueryDrivenLocals ?? false,
45
41
  membersAreImplicitlyInScope: definition.membersAreImplicitlyInScope ?? true,
46
- ...(classifyDefinition ? { classifyDefinition } : {}),
47
- ...(isDeclarationName ? { isDeclarationName } : {}),
42
+ supportsExportFromReferences: definition.supportsExportFromReferences ?? false,
48
43
  ...(scopeDeclarationNames ? { scopeDeclarationNames } : {}),
49
- ...(normalizeIdentifier ? { normalizeIdentifier } : {}),
50
- ...(createsBlockScope ? { createsBlockScope } : {}),
51
- ...(createsFunctionScope ? { createsFunctionScope } : {}),
52
- ...(isTypeOnly ? { isTypeOnly } : {}),
53
44
  },
54
45
  };
55
46
  }
@@ -58,10 +49,9 @@ function languageDefinitionFingerprintDescriptor(definition) {
58
49
  * covered by languageDefinitionFingerprintDescriptor above. Record exhaustiveness
59
50
  * makes adding a field to LanguageDefinition without descriptor coverage a
60
51
  * typecheck error, and the runtime check in tests/cache-invalidation.test.ts
61
- * rejects definition objects carrying keys outside this set. Coverage here means
62
- * the field participates in the fingerprint; if a future field genuinely cannot
63
- * affect indexing results, serialize a stable placeholder for it in the
64
- * descriptor and keep its entry below.
52
+ * rejects definition objects carrying keys outside this set. Function-valued
53
+ * behavior fields are intentionally covered by LANGUAGE_BEHAVIOR_EPOCH instead of
54
+ * source text; bump that epoch with every hook behavior change.
65
55
  */
66
56
  export const languageDefinitionFingerprintCoverage = {
67
57
  id: true,
@@ -69,6 +59,7 @@ export const languageDefinitionFingerprintCoverage = {
69
59
  structure: true,
70
60
  graph: true,
71
61
  usesQueryDrivenLocals: true,
62
+ supportsExportFromReferences: true,
72
63
  classifyDefinition: true,
73
64
  isDeclarationName: true,
74
65
  scopeDeclarationNames: true,
@@ -82,31 +73,32 @@ export const languageDefinitionFingerprintCoverage = {
82
73
  native: true,
83
74
  };
84
75
  /**
85
- * Changes whenever this package version or a loaded language definition changes.
86
- * The descriptor serializes every LanguageDefinition field (guarded by
87
- * languageDefinitionFingerprintCoverage): structure and graph queries, plus the
88
- * source text of every behavior hook, so editing a definition or its queries
89
- * cannot silently outlive an on-disk index. Changes to the code that interprets
90
- * definitions — the import resolver, the chunker, scope construction — are NOT
91
- * covered by this descriptor; they invalidate only via the package-version
92
- * component, so same-version installs and dev iteration must bump the version or
93
- * clear the cache for those to take effect.
76
+ * Changes whenever this package version, a declarative language definition field,
77
+ * or LANGUAGE_BEHAVIOR_EPOCH changes. Behavior-hook edits must bump that epoch.
78
+ *
79
+ * The optional epoch parameter exists for regression coverage of this declared
80
+ * cache-invalidation contract.
94
81
  */
95
- export function getImplementationFingerprint() {
96
- if (cachedImplementationFingerprint)
97
- return cachedImplementationFingerprint;
82
+ export function getImplementationFingerprintForEpoch(languageBehaviorEpoch) {
98
83
  const definitions = getAllLanguages()
99
84
  .map(languageDefinitionFingerprintDescriptor)
100
85
  .sort((left, right) => left.id.localeCompare(right.id));
101
86
  const hash = crypto.createHash("sha256");
102
- hash.update("codegraph-implementation-fingerprint-v2");
87
+ hash.update("codegraph-implementation-fingerprint-v3");
103
88
  hash.update("\0");
104
89
  hash.update(String(CORE_ALGORITHM_EPOCH));
105
90
  hash.update("\0");
91
+ hash.update(String(languageBehaviorEpoch));
92
+ hash.update("\0");
106
93
  hash.update(getCodegraphVersion());
107
94
  hash.update("\0");
108
95
  hash.update(JSON.stringify(definitions));
109
- cachedImplementationFingerprint = hash.digest("hex");
96
+ return hash.digest("hex");
97
+ }
98
+ export function getImplementationFingerprint() {
99
+ if (cachedImplementationFingerprint)
100
+ return cachedImplementationFingerprint;
101
+ cachedImplementationFingerprint = getImplementationFingerprintForEpoch(LANGUAGE_BEHAVIOR_EPOCH);
110
102
  return cachedImplementationFingerprint;
111
103
  }
112
104
  export function clearImplementationFingerprintCache() {
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/indexer/build-cache/options.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,2BAA2B,EAA6B,MAAM,oBAAoB,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAG9D,OAAO,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAoC,MAAM,4BAA4B,CAAC;AAC9E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAE/E,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEjE,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC;AA6CtC,IAAI,+BAAmD,CAAC;AAExD,SAAS,cAAc,CAAC,KAAc;IACpC,OAAO,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3F,CAAC;AAED,SAAS,uCAAuC,CAC9C,UAA8B;IAE9B,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IACjC,MAAM,oBAAoB,GAAG,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACpE,MAAM,kBAAkB,GAAG,cAAc,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;IACzE,MAAM,iBAAiB,GAAG,cAAc,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;IACvE,MAAM,qBAAqB,GACzB,UAAU,CAAC,qBAAqB,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;IACxG,MAAM,mBAAmB,GAAG,cAAc,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;IAC3E,MAAM,iBAAiB,GAAG,cAAc,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;IACvE,MAAM,oBAAoB,GAAG,cAAc,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAC7E,MAAM,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IACzD,OAAO;QACL,EAAE,EAAE,UAAU,CAAC,EAAE;QACjB,UAAU,EAAE,CAAC,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE;QAC7C,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,0BAA0B,EAAE,UAAU,CAAC,0BAA0B,IAAI,KAAK;QAC1E,GAAG,CAAC,MAAM;YACR,CAAC,CAAC;gBACE,MAAM,EAAE;oBACN,kBAAkB,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE;oBACjE,KAAK,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;oBAChC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC1E;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,QAAQ,EAAE;YACR,6EAA6E;YAC7E,4EAA4E;YAC5E,qBAAqB,EAAE,UAAU,CAAC,qBAAqB,IAAI,KAAK;YAChE,2BAA2B,EAAE,UAAU,CAAC,2BAA2B,IAAI,IAAI;YAC3E,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnD,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3D,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnD,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACtC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,qCAAqC,GAAqD;IACrG,EAAE,EAAE,IAAI;IACR,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,IAAI;IACf,KAAK,EAAE,IAAI;IACX,qBAAqB,EAAE,IAAI;IAC3B,kBAAkB,EAAE,IAAI;IACxB,iBAAiB,EAAE,IAAI;IACvB,qBAAqB,EAAE,IAAI;IAC3B,mBAAmB,EAAE,IAAI;IACzB,iBAAiB,EAAE,IAAI;IACvB,oBAAoB,EAAE,IAAI;IAC1B,2BAA2B,EAAE,IAAI;IACjC,0BAA0B,EAAE,IAAI;IAChC,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,IAAI;CACb,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,UAAU,4BAA4B;IAC1C,IAAI,+BAA+B;QAAE,OAAO,+BAA+B,CAAC;IAC5E,MAAM,WAAW,GAAG,eAAe,EAAE;SAClC,GAAG,CAAC,uCAAuC,CAAC;SAC5C,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1D,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,CAAC,MAAM,CAAC,yCAAyC,CAAC,CAAC;IACvD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAC1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClB,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC,CAAC;IACnC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;IACzC,+BAA+B,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACrD,OAAO,+BAA+B,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,mCAAmC;IACjD,+BAA+B,GAAG,SAAS,CAAC;AAC9C,CAAC;AAED,SAAS,6BAA6B,CAAC,IAA2B;IAChE,MAAM,kBAAkB,GAAG,2BAA2B,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;IACjF,OAAO;QACL,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,KAAK;QAC3B,WAAW,EAAE,IAAI,EAAE,WAAW,IAAI,IAAI;QACtC,eAAe,EAAE,IAAI,EAAE,eAAe,IAAI,IAAI;QAC9C,iBAAiB,EAAE,IAAI,EAAE,iBAAiB,IAAI,KAAK;QACnD,GAAG,CAAC,IAAI,EAAE,wBAAwB,CAAC,CAAC,CAAC,EAAE,wBAAwB,EAAE,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,GAAG,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC,CAAC,EAAE,yBAAyB,EAAE,IAAI,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzG,kBAAkB,EAAE,IAAI,EAAE,kBAAkB,IAAI,CAAC;QACjD,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtD,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,SAAuC;IACxE,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAC;IACjC,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACxE,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACnH,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACjH,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClG,MAAM,aAAa,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACjH,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,IAAI,IAAI,CAAC;IACpD,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,QAAQ,IAAI,CAAC,aAAa,IAAI,YAAY,EAAE,CAAC;QAC/F,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO;QACL,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChD,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3C,YAAY;KACb,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAmB;IAChD,MAAM,SAAS,GAAG,yBAAyB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC7D,MAAM,kBAAkB,GAAG,2BAA2B,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;IACjF,OAAO;QACL,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,KAAK;QAC3B,WAAW,EAAE,IAAI,EAAE,WAAW,IAAI,IAAI;QACtC,eAAe,EAAE,IAAI,EAAE,eAAe,IAAI,IAAI;QAC9C,iBAAiB,EAAE,IAAI,EAAE,iBAAiB,IAAI,KAAK;QACnD,wBAAwB,EAAE,2BAA2B,CAAC,IAAI,EAAE,MAAM,CAAC;QACnE,yBAAyB,EAAE,4BAA4B,EAAE;QACzD,kBAAkB,EAAE,oBAAoB;QACxC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAmB;IACvD,OAAO,qBAAqB,CAAC,IAAI,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAe;IAC5C,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC9C,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;YAAE,SAAS;QAClD,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACrB,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACvB,CAAC;IACD,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,iBAAiB,CAAC,CAAoB,EAAE,CAAoB;IACnE,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;IAClC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,+BAA+B,CACtC,CAAoC,EACpC,CAAoC;IAEpC,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAChD,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAChD,IAAI,WAAW,CAAC,YAAY,KAAK,WAAW,CAAC,YAAY;QAAE,OAAO,KAAK,CAAC;IACxE,IAAI,WAAW,CAAC,QAAQ,KAAK,WAAW,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChE,IAAI,WAAW,CAAC,aAAa,KAAK,WAAW,CAAC,aAAa;QAAE,OAAO,KAAK,CAAC;IAC1E,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,YAAY,IAAI,EAAE,EAAE,WAAW,CAAC,YAAY,IAAI,EAAE,CAAC;QAAE,OAAO,KAAK,CAAC;IACrG,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,WAAW,IAAI,EAAE,EAAE,WAAW,CAAC,WAAW,IAAI,EAAE,CAAC;QAAE,OAAO,KAAK,CAAC;IACnG,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,iCAAiC,CACxC,CAAqC,EACrC,CAAqC;IAErC,MAAM,WAAW,GAAG,2BAA2B,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACzD,MAAM,WAAW,GAAG,2BAA2B,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACzD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACpG,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,WAAW,CAAC,GAAG,CAAC;YAAE,OAAO,KAAK,CAAC;IAC1D,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,YAA8C,EAC9C,WAAqC;IAErC,IAAI,CAAC,YAAY;QAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrC,MAAM,kBAAkB,GAAG,6BAA6B,CAAC,YAAY,CAAC,CAAC;IACvE,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAC7D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,kBAAkB,CAAC,KAAK,KAAK,iBAAiB,CAAC,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9E,IAAI,kBAAkB,CAAC,WAAW,KAAK,iBAAiB,CAAC,WAAW,EAAE,CAAC;QACrE,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,kBAAkB,CAAC,eAAe,KAAK,iBAAiB,CAAC,eAAe,EAAE,CAAC;QAC7E,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,kBAAkB,CAAC,iBAAiB,KAAK,iBAAiB,CAAC,iBAAiB,EAAE,CAAC;QACjF,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAClC,CAAC;IACD,IAAI,kBAAkB,CAAC,wBAAwB,KAAK,iBAAiB,CAAC,wBAAwB,EAAE,CAAC;QAC/F,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvB,CAAC;IACD,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,IAAI,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,kBAAkB,IAAI,oBAAoB,CAAC,EAAE,CAAC;QACpH,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC9B,CAAC;IACD,IAAI,kBAAkB,CAAC,yBAAyB,KAAK,iBAAiB,CAAC,yBAAyB,EAAE,CAAC;QACjG,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC/B,CAAC;IACD,IAAI,CAAC,+BAA+B,CAAC,kBAAkB,CAAC,SAAS,EAAE,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;QAChG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1B,CAAC;IACD,IAAI,CAAC,iCAAiC,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACpH,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAwB;IAC5D,MAAM,eAAe,GAAG,wBAAwB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IACxE,MAAM,0BAA0B,GAAG,qBAAqB,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC;IAC3F,OAAO;QACL,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI;QAClB,GAAG,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,kBAAkB,EAAE,CAAC,CAAC,IAAI,EAAE,kBAAkB;QAC9C,uBAAuB,EAAE,CAAC,CAAC,IAAI,EAAE,uBAAuB;QACxD,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACvD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,CAAqB,EAAE,CAAqB;IAC5E,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1B,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3B,MAAM,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC7C,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IAC5D,IAAI,CAAC,CAAC,WAAW,CAAC,kBAAkB,KAAK,CAAC,CAAC,WAAW,CAAC,kBAAkB,EAAE,CAAC;QAC1E,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,CAAC,CAAC,WAAW,CAAC,uBAAuB,KAAK,CAAC,CAAC,WAAW,CAAC,uBAAuB,EAAE,CAAC;QACpF,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,0BAA0B,IAAI,EAAE,EAAE,WAAW,CAAC,0BAA0B,IAAI,EAAE,CAAC,EAAE,CAAC;QACnH,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,eAAe,IAAI,EAAE,EAAE,WAAW,CAAC,eAAe,IAAI,EAAE,CAAC,EAAE,CAAC;QAC7F,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/indexer/build-cache/options.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"project-snapshot.d.ts","sourceRoot":"","sources":["../../../src/indexer/build-cache/project-snapshot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project-snapshot.d.ts","sourceRoot":"","sources":["../../../src/indexer/build-cache/project-snapshot.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,WAAW,EAAoB,MAAM,2BAA2B,CAAC;AAO1E,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EAEZ,WAAW,EAEX,WAAW,EACX,YAAY,EAEZ,WAAW,EACZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAGL,KAAK,WAAW,EAIjB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAIvD,eAAO,MAAM,6BAA6B,IAAI,CAAC;AAC/C,eAAO,MAAM,8BAA8B,uBAAuB,CAAC;AAEnE,MAAM,MAAM,0BAA0B,GAAG;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB,EAAE,MAAM,CAAC;IAClC,uBAAuB,EAAE,MAAM,CAAC;IAChC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IACtD,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;CACrD,CAAC;AAwDF,KAAK,qBAAqB,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAcF,KAAK,qBAAqB,GAAG;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,GAAG,QAAQ,GAAG,UAAU,CAAC,KAAK,WAAW,GAAG,SAAS,CAAC;CAC/G,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,KAAK,EAAE,YAAY,CAAC;IACpB,cAAc,CAAC,EAAE,sBAAsB,CAAC;CACzC,CAAC;AAsBF,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,iBAAiB,CAAC,EAC/C,WAAW,CAAC,EAAE,MAAM,GACnB,MAAM,CAaR;AACD,wBAAgB,6BAA6B,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,MAAM,CAY5G;AAoWD,wBAAsB,2BAA2B,CAC/C,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,YAAY,GAAG,SAAS,EAC9B,eAAe,EAAE,WAAW,CAAC,MAAM,EAAE,iBAAiB,CAAC,EACvD,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC,CAyE5C;AACD;;;GAGG;AACH;;;;GAIG;AACH,MAAM,MAAM,2BAA2B,GAAG,IAAI,CAAC,aAAa,EAAE,KAAK,GAAG,QAAQ,CAAC,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC;AAEpH,wBAAsB,6BAA6B,CACjD,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,YAAY,GAAG,SAAS,EAC9B,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,2BAA2B,CAAC,EAChE,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,IAAI,CAAC,CAsD1C;AAED,wBAAsB,4BAA4B,CAChD,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,YAAY,GAAG,SAAS,EAC9B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAsCvC;AAyFD,wBAAsB,yBAAyB,CAC7C,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,YAAY,GAAG,SAAS,EAC9B,KAAK,EAAE,YAAY,EACnB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC,CA6Ef;AAeD,wBAAsB,gCAAgC,CACpD,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,YAAY,GAAG,SAAS,EAC9B,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,WAAW,GACjB,OAAO,CAAC,IAAI,CAAC,CAuCf;AAWD,wBAAsB,kCAAkC,CACtD,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,YAAY,GAAG,SAAS,EAC9B,KAAK,EAAE,YAAY,EACnB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CA6D7B"}
@@ -75,54 +75,56 @@ function transformHandle(root, value, toRelative) {
75
75
  return `${transformPath(root, file, toRelative)}${value.slice(separator)}`;
76
76
  }
77
77
  function transformModule(root, module, toRelative) {
78
- const copy = structuredClone(module);
79
78
  const file = (value) => transformPath(root, value, toRelative);
80
- copy.file = file(copy.file);
81
- for (const local of copy.locals)
82
- local.file = file(local.file);
83
- for (const entry of copy.exports) {
84
- if (entry.type === "local") {
85
- entry.target.file = file(entry.target.file);
86
- }
87
- else {
88
- transformPersistedExportFromModule(root, entry, toRelative);
89
- }
90
- }
91
- for (const binding of copy.imports) {
92
- if (typeof binding.resolved === "string")
93
- binding.resolved = file(binding.resolved);
94
- }
95
- return copy;
79
+ return {
80
+ ...module,
81
+ file: file(module.file),
82
+ locals: module.locals.map((local) => ({ ...local, file: file(local.file) })),
83
+ exports: module.exports.map((entry) => {
84
+ if (entry.type === "local") {
85
+ return { ...entry, target: { ...entry.target, file: file(entry.target.file) } };
86
+ }
87
+ const copy = { ...entry };
88
+ transformPersistedExportFromModule(root, copy, toRelative);
89
+ return copy;
90
+ }),
91
+ imports: module.imports.map((binding) => ({
92
+ ...binding,
93
+ ...(typeof binding.resolved === "string" ? { resolved: file(binding.resolved) } : {}),
94
+ })),
95
+ };
96
96
  }
97
97
  function transformSnapshotPaths(payload, root, toRelative) {
98
- const copy = structuredClone(payload);
99
- copy.graph.nodes = copy.graph.nodes.map((node) => transformPath(root, node, toRelative));
100
- copy.graph.edges = copy.graph.edges.map((edge) => ({
101
- ...edge,
102
- from: transformPath(root, edge.from, toRelative),
103
- to: edge.to.type === "file" ? { ...edge.to, path: transformPath(root, edge.to.path, toRelative) } : edge.to,
104
- }));
105
- copy.modules = copy.modules.map((module) => transformModule(root, module, toRelative));
106
- if (copy.projectFiles) {
107
- copy.projectFiles = copy.projectFiles.map((file) => ({
108
- ...file,
109
- path: transformPath(root, file.path, toRelative),
110
- projectRoot: transformPath(root, file.projectRoot, toRelative),
111
- }));
112
- }
113
- if (copy.bloomFilters) {
114
- const bloomFilters = {};
115
- for (const [file, filter] of Object.entries(copy.bloomFilters)) {
116
- bloomFilters[transformPath(root, file, toRelative)] = filter;
117
- }
118
- copy.bloomFilters = bloomFilters;
119
- }
120
- const fileSignatures = {};
121
- for (const [file, signature] of Object.entries(copy.fileSignatures ?? {})) {
122
- fileSignatures[transformPath(root, file, toRelative)] = signature;
123
- }
124
- copy.fileSignatures = fileSignatures;
125
- return copy;
98
+ const bloomFilters = payload.bloomFilters
99
+ ? Object.fromEntries(Object.entries(payload.bloomFilters).map(([file, filter]) => [transformPath(root, file, toRelative), filter]))
100
+ : undefined;
101
+ const fileSignatures = Object.fromEntries(Object.entries(payload.fileSignatures ?? {}).map(([file, signature]) => [
102
+ transformPath(root, file, toRelative),
103
+ signature,
104
+ ]));
105
+ return {
106
+ ...payload,
107
+ graph: {
108
+ nodes: payload.graph.nodes.map((node) => transformPath(root, node, toRelative)),
109
+ edges: payload.graph.edges.map((edge) => ({
110
+ ...edge,
111
+ from: transformPath(root, edge.from, toRelative),
112
+ to: edge.to.type === "file" ? { ...edge.to, path: transformPath(root, edge.to.path, toRelative) } : edge.to,
113
+ })),
114
+ },
115
+ modules: payload.modules.map((module) => transformModule(root, module, toRelative)),
116
+ ...(payload.projectFiles
117
+ ? {
118
+ projectFiles: payload.projectFiles.map((file) => ({
119
+ ...file,
120
+ path: transformPath(root, file.path, toRelative),
121
+ projectRoot: transformPath(root, file.projectRoot, toRelative),
122
+ })),
123
+ }
124
+ : {}),
125
+ ...(bloomFilters ? { bloomFilters } : {}),
126
+ fileSignatures,
127
+ };
126
128
  }
127
129
  function migrateProjectSnapshotPayload(value, currentRoot) {
128
130
  if (!value || typeof value !== "object" || Array.isArray(value))
@@ -256,6 +258,14 @@ function setBoundedSnapshotCache(cache, key, value) {
256
258
  cache.delete(oldestKey);
257
259
  }
258
260
  }
261
+ function freezeSnapshotPayload(value) {
262
+ if (!value || typeof value !== "object")
263
+ return value;
264
+ Object.freeze(value);
265
+ for (const child of Object.values(value))
266
+ freezeSnapshotPayload(child);
267
+ return value;
268
+ }
259
269
  function materializeDetailedSymbolGraph(payload) {
260
270
  const graph = structuredClone(payload);
261
271
  return {
@@ -276,6 +286,9 @@ function recordSnapshotCorruption(report, artifact, reason, logLevel) {
276
286
  }
277
287
  logWithLevel(logLevel, "warn", `Warning: Corrupt cache artifact ${artifact}: ${reason}`);
278
288
  }
289
+ function recordSnapshotInvalidation(artifact, reason, logLevel) {
290
+ logWithLevel(logLevel, "debug", `Cache artifact invalidated ${artifact}: ${reason}`);
291
+ }
279
292
  function isMissingArtifactError(error) {
280
293
  return !!error && typeof error === "object" && "code" in error && error.code === "ENOENT";
281
294
  }
@@ -302,20 +315,25 @@ function transformCachedProjectSnapshot(snapshotPath, identity, rawPayload, proj
302
315
  const cached = transformedSnapshotCache.get(snapshotPath);
303
316
  if (cached && cached.root === projectRoot && sameSnapshotFileIdentity(cached.identity, identity)) {
304
317
  setBoundedSnapshotCache(transformedSnapshotCache, snapshotPath, cached);
305
- return structuredClone(cached.payload);
318
+ return cached.payload;
306
319
  }
307
320
  const migratedPayload = migrateProjectSnapshotPayload(rawPayload, projectRoot);
308
321
  const payload = migratedPayload && typeof migratedPayload === "object" && !Array.isArray(migratedPayload)
309
322
  ? transformSnapshotPaths(migratedPayload, projectRoot, false)
310
323
  : migratedPayload;
311
- setBoundedSnapshotCache(transformedSnapshotCache, snapshotPath, { identity, root: projectRoot, payload });
312
- return structuredClone(payload);
324
+ const immutablePayload = freezeSnapshotPayload(payload);
325
+ setBoundedSnapshotCache(transformedSnapshotCache, snapshotPath, {
326
+ identity,
327
+ root: projectRoot,
328
+ payload: immutablePayload,
329
+ });
330
+ return immutablePayload;
313
331
  }
314
332
  function transformCachedProjectSnapshotModules(snapshotPath, identity, rawPayload, projectRoot) {
315
333
  const cached = transformedSnapshotModulesCache.get(snapshotPath);
316
334
  if (cached && cached.root === projectRoot && sameSnapshotFileIdentity(cached.identity, identity)) {
317
335
  setBoundedSnapshotCache(transformedSnapshotModulesCache, snapshotPath, cached);
318
- return structuredClone(cached.payload);
336
+ return cached.payload;
319
337
  }
320
338
  const migratedPayload = migrateProjectSnapshotPayload(rawPayload, projectRoot);
321
339
  if (!migratedPayload || typeof migratedPayload !== "object" || Array.isArray(migratedPayload)) {
@@ -325,7 +343,7 @@ function transformCachedProjectSnapshotModules(snapshotPath, identity, rawPayloa
325
343
  if (!Array.isArray(payload.modules) || !payload.fileSignatures || typeof payload.fileSignatures !== "object") {
326
344
  return migratedPayload;
327
345
  }
328
- const modules = structuredClone(payload.modules).map((module) => transformModule(projectRoot, module, false));
346
+ const modules = payload.modules.map((module) => transformModule(projectRoot, module, false));
329
347
  const fileSignatures = {};
330
348
  for (const [file, signature] of Object.entries(payload.fileSignatures)) {
331
349
  fileSignatures[transformPath(projectRoot, file, false)] = signature;
@@ -340,12 +358,13 @@ function transformCachedProjectSnapshotModules(snapshotPath, identity, rawPayloa
340
358
  modules,
341
359
  fileSignatures,
342
360
  };
361
+ const immutablePayload = freezeSnapshotPayload(transformed);
343
362
  setBoundedSnapshotCache(transformedSnapshotModulesCache, snapshotPath, {
344
363
  identity,
345
364
  root: projectRoot,
346
- payload: transformed,
365
+ payload: immutablePayload,
347
366
  });
348
- return structuredClone(transformed);
367
+ return immutablePayload;
349
368
  }
350
369
  function projectIndexManifestEntries(entries) {
351
370
  return new Map(Array.from(entries, ([file, entry]) => [
@@ -365,11 +384,15 @@ export async function tryLoadProjectIndexSnapshot(projectRoot, opts, manifestEnt
365
384
  const payload = transformCachedProjectSnapshot(projectSnapshotPath(projectRoot, opts), parsedSnapshot.identity, parsedSnapshot.payload, projectRoot);
366
385
  const nativeRuntimeFingerprint = getNativeRuntimeFingerprint(opts?.native);
367
386
  const implementationFingerprint = getImplementationFingerprint();
368
- if (!isProjectIndexSnapshotPayload(payload) ||
369
- payload.filesSignature !== filesSignature ||
387
+ if (!isProjectIndexSnapshotPayload(payload)) {
388
+ recordSnapshotCorruption(report, projectSnapshotPath(projectRoot, opts), "invalid project snapshot payload", opts?.logLevel);
389
+ return null;
390
+ }
391
+ if (payload.filesSignature !== filesSignature ||
370
392
  payload.nativeMode !== normalizedSnapshotNativeMode(opts?.native) ||
371
393
  payload.nativeRuntimeFingerprint !== nativeRuntimeFingerprint ||
372
394
  payload.implementationFingerprint !== implementationFingerprint) {
395
+ recordSnapshotInvalidation(projectSnapshotPath(projectRoot, opts), "project snapshot identity mismatch", opts?.logLevel);
373
396
  return null;
374
397
  }
375
398
  const graph = {
@@ -420,10 +443,14 @@ export async function tryLoadProjectSnapshotModules(projectRoot, opts, fileSigna
420
443
  const payload = transformCachedProjectSnapshotModules(projectSnapshotPath(projectRoot, opts), parsedSnapshot.identity, parsedSnapshot.payload, projectRoot);
421
444
  const nativeRuntimeFingerprint = getNativeRuntimeFingerprint(opts?.native);
422
445
  const implementationFingerprint = getImplementationFingerprint();
423
- if (!isProjectSnapshotModulesPayload(payload) ||
424
- payload.nativeMode !== normalizedSnapshotNativeMode(opts?.native) ||
446
+ if (!isProjectSnapshotModulesPayload(payload)) {
447
+ recordSnapshotCorruption(report, projectSnapshotPath(projectRoot, opts), "invalid project snapshot payload", opts?.logLevel);
448
+ return null;
449
+ }
450
+ if (payload.nativeMode !== normalizedSnapshotNativeMode(opts?.native) ||
425
451
  payload.nativeRuntimeFingerprint !== nativeRuntimeFingerprint ||
426
452
  payload.implementationFingerprint !== implementationFingerprint) {
453
+ recordSnapshotInvalidation(projectSnapshotPath(projectRoot, opts), "project snapshot identity mismatch", opts?.logLevel);
427
454
  return null;
428
455
  }
429
456
  const normalizedFileSignatures = new Map(Object.entries(payload.fileSignatures).map(([file, signature]) => [fileIdentityKey(file), signature]));
@@ -456,7 +483,17 @@ export async function tryLoadPersistedBloomFilters(projectRoot, opts, report) {
456
483
  if (sidecarBloom) {
457
484
  return createPersistedBloomFilters(sidecarBloom.bloomFilters, sidecarBloom.fileSignatures, projectRoot);
458
485
  }
459
- recordSnapshotCorruption(report, sidecarPath, "invalid bloom filter payload", opts?.logLevel);
486
+ const sidecar = sidecarParsed;
487
+ const identityMismatch = isUnknownRecord(sidecarParsed) &&
488
+ (sidecar.version !== BLOOM_FILTER_SNAPSHOT_VERSION ||
489
+ sidecar.implementationFingerprint !== getImplementationFingerprint() ||
490
+ typeof sidecar.projectSnapshotIdentity !== "string");
491
+ if (identityMismatch) {
492
+ recordSnapshotInvalidation(sidecarPath, "bloom filter identity mismatch", opts?.logLevel);
493
+ }
494
+ else {
495
+ recordSnapshotCorruption(report, sidecarPath, "invalid bloom filter payload", opts?.logLevel);
496
+ }
460
497
  }
461
498
  catch (error) {
462
499
  const isMissing = error && typeof error === "object" && "code" in error && error.code === "ENOENT";
@@ -693,12 +730,18 @@ export async function tryLoadDetailedSymbolGraphSnapshot(projectRoot, opts, inde
693
730
  graph: transformDetailedGraph(migratedPayload.graph, projectRoot, false),
694
731
  }
695
732
  : migratedPayload;
696
- if (!isDetailedSymbolGraphSnapshotPayload(payload) ||
697
- payload.implementationFingerprint !== getImplementationFingerprint() ||
698
- payload.projectSnapshotIdentity !== index.projectSnapshotIdentity) {
733
+ if (!isDetailedSymbolGraphSnapshotPayload(payload)) {
699
734
  recordSnapshotCorruption(report, snapshotPath, "invalid detailed symbol graph payload", opts?.logLevel);
700
735
  return null;
701
736
  }
737
+ if (payload.implementationFingerprint !== getImplementationFingerprint()) {
738
+ recordSnapshotInvalidation(snapshotPath, "implementation fingerprint mismatch", opts?.logLevel);
739
+ return null;
740
+ }
741
+ if (payload.projectSnapshotIdentity !== index.projectSnapshotIdentity) {
742
+ recordSnapshotInvalidation(snapshotPath, "project snapshot identity mismatch", opts?.logLevel);
743
+ return null;
744
+ }
702
745
  const graph = materializeDetailedSymbolGraph(payload.graph);
703
746
  if (!(await isDetailedSymbolGraphCompatibleWithProject(projectRoot, index, graph))) {
704
747
  recordSnapshotCorruption(report, snapshotPath, "detailed symbol graph does not match project", opts?.logLevel);