@skillcap/gdh 0.26.6 → 0.26.8

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 (82) hide show
  1. package/INSTALL-BUNDLE.json +1 -1
  2. package/RELEASE-SPAN-UPDATE-CONTRACTS.json +121 -0
  3. package/node_modules/@gdh/adapters/dist/index.d.ts.map +1 -1
  4. package/node_modules/@gdh/adapters/dist/index.js +72 -3
  5. package/node_modules/@gdh/adapters/dist/index.js.map +1 -1
  6. package/node_modules/@gdh/adapters/dist/self-update-mechanics.d.ts +4 -2
  7. package/node_modules/@gdh/adapters/dist/self-update-mechanics.d.ts.map +1 -1
  8. package/node_modules/@gdh/adapters/dist/self-update-mechanics.js +4 -2
  9. package/node_modules/@gdh/adapters/dist/self-update-mechanics.js.map +1 -1
  10. package/node_modules/@gdh/adapters/dist/skill-rendering.js +10 -10
  11. package/node_modules/@gdh/adapters/dist/skill-rendering.js.map +1 -1
  12. package/node_modules/@gdh/adapters/dist/templates/authoring-hook.js.tpl +148 -39
  13. package/node_modules/@gdh/adapters/package.json +8 -8
  14. package/node_modules/@gdh/authoring/dist/authoring-state-store.d.ts +3 -0
  15. package/node_modules/@gdh/authoring/dist/authoring-state-store.d.ts.map +1 -0
  16. package/node_modules/@gdh/authoring/dist/authoring-state-store.js +19 -0
  17. package/node_modules/@gdh/authoring/dist/authoring-state-store.js.map +1 -0
  18. package/node_modules/@gdh/authoring/dist/diagnostics-broker-contract.d.ts +15 -21
  19. package/node_modules/@gdh/authoring/dist/diagnostics-broker-contract.d.ts.map +1 -1
  20. package/node_modules/@gdh/authoring/dist/diagnostics-broker-contract.js +22 -37
  21. package/node_modules/@gdh/authoring/dist/diagnostics-broker-contract.js.map +1 -1
  22. package/node_modules/@gdh/authoring/dist/diagnostics-broker.d.ts.map +1 -1
  23. package/node_modules/@gdh/authoring/dist/diagnostics-broker.js +121 -15
  24. package/node_modules/@gdh/authoring/dist/diagnostics-broker.js.map +1 -1
  25. package/node_modules/@gdh/authoring/dist/lsp-broker-snapshot.d.ts +28 -0
  26. package/node_modules/@gdh/authoring/dist/lsp-broker-snapshot.d.ts.map +1 -0
  27. package/node_modules/@gdh/authoring/dist/lsp-broker-snapshot.js +67 -0
  28. package/node_modules/@gdh/authoring/dist/lsp-broker-snapshot.js.map +1 -0
  29. package/node_modules/@gdh/authoring/dist/lsp-test-server.test-utils.d.ts +1 -0
  30. package/node_modules/@gdh/authoring/dist/lsp-test-server.test-utils.d.ts.map +1 -1
  31. package/node_modules/@gdh/authoring/dist/lsp-test-server.test-utils.js +3 -0
  32. package/node_modules/@gdh/authoring/dist/lsp-test-server.test-utils.js.map +1 -1
  33. package/node_modules/@gdh/authoring/dist/lsp-warmup.d.ts.map +1 -1
  34. package/node_modules/@gdh/authoring/dist/lsp-warmup.js +2 -1
  35. package/node_modules/@gdh/authoring/dist/lsp-warmup.js.map +1 -1
  36. package/node_modules/@gdh/authoring/dist/lsp.d.ts.map +1 -1
  37. package/node_modules/@gdh/authoring/dist/lsp.js +11 -73
  38. package/node_modules/@gdh/authoring/dist/lsp.js.map +1 -1
  39. package/node_modules/@gdh/authoring/dist/project.d.ts.map +1 -1
  40. package/node_modules/@gdh/authoring/dist/project.js +24 -8
  41. package/node_modules/@gdh/authoring/dist/project.js.map +1 -1
  42. package/node_modules/@gdh/authoring/dist/scene-resource.d.ts.map +1 -1
  43. package/node_modules/@gdh/authoring/dist/scene-resource.js +73 -29
  44. package/node_modules/@gdh/authoring/dist/scene-resource.js.map +1 -1
  45. package/node_modules/@gdh/authoring/package.json +2 -2
  46. package/node_modules/@gdh/cli/dist/index.js +5 -5
  47. package/node_modules/@gdh/cli/dist/index.js.map +1 -1
  48. package/node_modules/@gdh/cli/dist/migrate.d.ts.map +1 -1
  49. package/node_modules/@gdh/cli/dist/migrate.js +3 -2
  50. package/node_modules/@gdh/cli/dist/migrate.js.map +1 -1
  51. package/node_modules/@gdh/cli/package.json +10 -10
  52. package/node_modules/@gdh/core/dist/index.d.ts +24 -22
  53. package/node_modules/@gdh/core/dist/index.d.ts.map +1 -1
  54. package/node_modules/@gdh/core/dist/index.js +10 -8
  55. package/node_modules/@gdh/core/dist/index.js.map +1 -1
  56. package/node_modules/@gdh/core/dist/migrations/entries/s2c2_to_s2c3_rules_schema_v2_to_v3.d.ts.map +1 -1
  57. package/node_modules/@gdh/core/dist/migrations/entries/s2c2_to_s2c3_rules_schema_v2_to_v3.js +8 -4
  58. package/node_modules/@gdh/core/dist/migrations/entries/s2c2_to_s2c3_rules_schema_v2_to_v3.js.map +1 -1
  59. package/node_modules/@gdh/core/package.json +1 -1
  60. package/node_modules/@gdh/docs/dist/agent-contract.d.ts.map +1 -1
  61. package/node_modules/@gdh/docs/dist/agent-contract.js +1 -2
  62. package/node_modules/@gdh/docs/dist/agent-contract.js.map +1 -1
  63. package/node_modules/@gdh/docs/dist/guidance.d.ts.map +1 -1
  64. package/node_modules/@gdh/docs/dist/guidance.js +8 -100
  65. package/node_modules/@gdh/docs/dist/guidance.js.map +1 -1
  66. package/node_modules/@gdh/docs/dist/rules.js +3 -3
  67. package/node_modules/@gdh/docs/dist/rules.js.map +1 -1
  68. package/node_modules/@gdh/docs/dist/templates/guidance/authoring-and-validation.md.tpl +16 -103
  69. package/node_modules/@gdh/docs/dist/templates/guidance/project-surfaces.md.tpl +6 -11
  70. package/node_modules/@gdh/docs/package.json +2 -2
  71. package/node_modules/@gdh/mcp/dist/index.d.ts.map +1 -1
  72. package/node_modules/@gdh/mcp/dist/index.js +37 -4
  73. package/node_modules/@gdh/mcp/dist/index.js.map +1 -1
  74. package/node_modules/@gdh/mcp/package.json +8 -8
  75. package/node_modules/@gdh/observability/package.json +2 -2
  76. package/node_modules/@gdh/runtime/package.json +2 -2
  77. package/node_modules/@gdh/scan/package.json +3 -3
  78. package/node_modules/@gdh/verify/package.json +7 -7
  79. package/package.json +11 -11
  80. package/node_modules/@gdh/docs/dist/templates/guidance/gdh-glossary.md.tpl +0 -34
  81. package/node_modules/@gdh/docs/dist/templates/guidance/persistence-semantics.md.tpl +0 -24
  82. package/node_modules/@gdh/docs/dist/templates/guidance/project-migration.md.tpl +0 -19
@@ -0,0 +1,28 @@
1
+ import type { GdhAuthoringDiagnostic, GdhDiagnosticsFileCollectionReason, GdhDiagnosticsFileCollectionState } from "@gdh/core";
2
+ export interface BrokerFileEntry {
3
+ readonly uri: string;
4
+ readonly filePath: string;
5
+ readonly contentHash?: string;
6
+ readonly collectionState?: GdhDiagnosticsFileCollectionState;
7
+ readonly collectionReason?: GdhDiagnosticsFileCollectionReason | null;
8
+ readonly lastUpdatedAt: string;
9
+ readonly diagnostics: readonly GdhAuthoringDiagnostic[];
10
+ }
11
+ export interface BrokerSnapshot {
12
+ readonly schemaVersion: 1;
13
+ readonly lspInstanceId: string;
14
+ readonly capturedAt: string;
15
+ readonly requestedFiles: readonly string[];
16
+ readonly files: readonly BrokerFileEntry[];
17
+ }
18
+ export declare function readBrokerSnapshot(targetPath: string): Promise<BrokerSnapshot | null>;
19
+ /**
20
+ * Check whether a broker snapshot can prove diagnostics for the requested
21
+ * current file contents. Legacy snapshots without collection state are rejected
22
+ * instead of treated as clean.
23
+ */
24
+ export declare function extractBrokerDiagnosticsIfFresh(snapshot: BrokerSnapshot, currentInstanceId: string, requestedUris: readonly string[], currentContentHashesByUri: ReadonlyMap<string, string>): {
25
+ readonly diagnostics: readonly GdhAuthoringDiagnostic[];
26
+ readonly fileUris: readonly string[];
27
+ } | null;
28
+ //# sourceMappingURL=lsp-broker-snapshot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lsp-broker-snapshot.d.ts","sourceRoot":"","sources":["../src/lsp-broker-snapshot.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,sBAAsB,EACtB,kCAAkC,EAClC,iCAAiC,EAClC,MAAM,WAAW,CAAC;AAQnB,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,eAAe,CAAC,EAAE,iCAAiC,CAAC;IAC7D,QAAQ,CAAC,gBAAgB,CAAC,EAAE,kCAAkC,GAAG,IAAI,CAAC;IACtE,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,SAAS,sBAAsB,EAAE,CAAC;CACzD;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C,QAAQ,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,CAAC;CAC5C;AAED,wBAAsB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAY3F;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,cAAc,EACxB,iBAAiB,EAAE,MAAM,EACzB,aAAa,EAAE,SAAS,MAAM,EAAE,EAChC,yBAAyB,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GACrD;IAAE,QAAQ,CAAC,WAAW,EAAE,SAAS,sBAAsB,EAAE,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,GAAG,IAAI,CA8C1G"}
@@ -0,0 +1,67 @@
1
+ import fs from "node:fs/promises";
2
+ import path from "node:path";
3
+ import { classifyDiagnosticsFreshness, DIAGNOSTICS_BROKER_DEFAULT_FRESHNESS_STALE_AFTER_MS, resolveDiagnosticsBrokerPaths, } from "./diagnostics-broker-contract.js";
4
+ export async function readBrokerSnapshot(targetPath) {
5
+ const paths = resolveDiagnosticsBrokerPaths(path.resolve(targetPath));
6
+ try {
7
+ const raw = await fs.readFile(paths.snapshotPath, "utf8");
8
+ const parsed = JSON.parse(raw);
9
+ if (typeof parsed !== "object" || parsed === null || parsed.schemaVersion !== 1) {
10
+ return null;
11
+ }
12
+ return parsed;
13
+ }
14
+ catch {
15
+ return null;
16
+ }
17
+ }
18
+ /**
19
+ * Check whether a broker snapshot can prove diagnostics for the requested
20
+ * current file contents. Legacy snapshots without collection state are rejected
21
+ * instead of treated as clean.
22
+ */
23
+ export function extractBrokerDiagnosticsIfFresh(snapshot, currentInstanceId, requestedUris, currentContentHashesByUri) {
24
+ if (snapshot.lspInstanceId !== currentInstanceId) {
25
+ return null;
26
+ }
27
+ const fileByUri = new Map(snapshot.files.map((f) => [f.uri, f]));
28
+ const nowMs = Date.now();
29
+ const coveredDiagnostics = [];
30
+ const coveredUris = [];
31
+ for (const uri of requestedUris) {
32
+ const file = fileByUri.get(uri);
33
+ if (file === undefined) {
34
+ return null;
35
+ }
36
+ if (typeof file.contentHash !== "string" || file.contentHash.length === 0) {
37
+ return null;
38
+ }
39
+ if (currentContentHashesByUri.get(uri) !== file.contentHash) {
40
+ return null;
41
+ }
42
+ if (file.collectionState !== "checked") {
43
+ return null;
44
+ }
45
+ const freshness = classifyDiagnosticsFreshness({
46
+ fileSnapshot: {
47
+ uri: file.uri,
48
+ filePath: file.filePath,
49
+ collectionState: file.collectionState,
50
+ collectionReason: file.collectionReason ?? null,
51
+ diagnostics: file.diagnostics,
52
+ freshness: "fresh",
53
+ lastUpdatedAt: file.lastUpdatedAt,
54
+ lspInstanceId: snapshot.lspInstanceId,
55
+ },
56
+ nowMs,
57
+ staleAfterMs: DIAGNOSTICS_BROKER_DEFAULT_FRESHNESS_STALE_AFTER_MS,
58
+ });
59
+ if (freshness !== "fresh") {
60
+ return null;
61
+ }
62
+ coveredDiagnostics.push(...file.diagnostics);
63
+ coveredUris.push(uri);
64
+ }
65
+ return { diagnostics: coveredDiagnostics, fileUris: coveredUris };
66
+ }
67
+ //# sourceMappingURL=lsp-broker-snapshot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lsp-broker-snapshot.js","sourceRoot":"","sources":["../src/lsp-broker-snapshot.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ export interface FakeLspServerScenario {
18
18
  readonly diagnostics?: readonly FakeLspDiagnostic[];
19
19
  readonly publishDelayMs?: number;
20
20
  readonly publishUri?: string;
21
+ readonly suppressDiagnostics?: boolean;
21
22
  readonly malformedPayload?: boolean;
22
23
  readonly closeAfterInitialize?: boolean;
23
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"lsp-test-server.test-utils.d.ts","sourceRoot":"","sources":["../src/lsp-test-server.test-utils.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE;QACd,QAAQ,CAAC,KAAK,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC;QACtE,QAAQ,CAAC,GAAG,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC;KACrE,CAAC;IACF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,UAAU,CAAC,EAAE,IAAI,GAAG,OAAO,GAAG,MAAM,CAAC;IAC9C,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACpD,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;CACzC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,QAAQ,CAAC,gBAAgB,EAAE,SAAS,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;IACxE,QAAQ,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,CACtB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,KAC/D,OAAO,CAAC,IAAI,CAAC,CAAC;CACpB;AAUD,wBAAsB,kBAAkB,CACtC,QAAQ,GAAE,qBAA0B,GACnC,OAAO,CAAC,aAAa,CAAC,CAgIxB"}
1
+ {"version":3,"file":"lsp-test-server.test-utils.d.ts","sourceRoot":"","sources":["../src/lsp-test-server.test-utils.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE;QACd,QAAQ,CAAC,KAAK,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC;QACtE,QAAQ,CAAC,GAAG,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC;KACrE,CAAC;IACF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,UAAU,CAAC,EAAE,IAAI,GAAG,OAAO,GAAG,MAAM,CAAC;IAC9C,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACpD,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;CACzC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,QAAQ,CAAC,gBAAgB,EAAE,SAAS,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;IACxE,QAAQ,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,CACtB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,KAC/D,OAAO,CAAC,IAAI,CAAC,CAAC;CACpB;AAUD,wBAAsB,kBAAkB,CACtC,QAAQ,GAAE,qBAA0B,GACnC,OAAO,CAAC,aAAa,CAAC,CAgIxB"}
@@ -131,6 +131,9 @@ function handleMessage(socket, message, scenario) {
131
131
  return;
132
132
  }
133
133
  if (method === "textDocument/didOpen") {
134
+ if (scenario.suppressDiagnostics) {
135
+ return;
136
+ }
134
137
  const publish = () => {
135
138
  if (scenario.malformedPayload) {
136
139
  writeRawFrame(socket, Buffer.from("{bad-json", "utf8"));
@@ -1 +1 @@
1
- {"version":3,"file":"lsp-test-server.test-utils.js","sourceRoot":"","sources":["../src/lsp-test-server.test-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lsp-test-server.test-utils.js","sourceRoot":"","sources":["../src/lsp-test-server.test-utils.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"lsp-warmup.d.ts","sourceRoot":"","sources":["../src/lsp-warmup.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EACV,2BAA2B,EAC3B,wBAAwB,EACxB,gBAAgB,EACjB,MAAM,WAAW,CAAC;AAiKnB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE;IAC5C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAChD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB,GAAG,OAAO,CAAC,2BAA2B,CAAC,CA+CvC"}
1
+ {"version":3,"file":"lsp-warmup.d.ts","sourceRoot":"","sources":["../src/lsp-warmup.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EACV,2BAA2B,EAC3B,wBAAwB,EACxB,gBAAgB,EACjB,MAAM,WAAW,CAAC;AAkKnB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE;IAC5C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAChD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB,GAAG,OAAO,CAAC,2BAA2B,CAAC,CA+CvC"}
@@ -23,6 +23,7 @@ import { randomUUID } from "node:crypto";
23
23
  import fs from "node:fs/promises";
24
24
  import path from "node:path";
25
25
  import { getManagedLspStatus } from "./lsp.js";
26
+ import { writeJsonFileAtomically } from "./authoring-state-store.js";
26
27
  // ─── Lock metadata schema ────────────────────────────────────────────────────
27
28
  // Matches the lifecycle-lock schema in lsp.ts so a single inspector can read
28
29
  // either lock without branching on placement.
@@ -101,7 +102,7 @@ async function tryAcquireManagedLspStateLockOnce(stateRootPath, owner) {
101
102
  };
102
103
  try {
103
104
  await fs.mkdir(lockPath);
104
- await fs.writeFile(metadataPath, JSON.stringify(record, null, 2), "utf8");
105
+ await writeJsonFileAtomically(metadataPath, record);
105
106
  return { lockId: record.lockId, stateRootPath };
106
107
  }
107
108
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"lsp-warmup.js","sourceRoot":"","sources":["../src/lsp-warmup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lsp-warmup.js","sourceRoot":"","sources":["../src/lsp-warmup.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"lsp.d.ts","sourceRoot":"","sources":["../src/lsp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lsp.d.ts","sourceRoot":"","sources":["../src/lsp.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,8 @@ import { fileURLToPath, pathToFileURL } from "node:url";
8
8
  import { GDH_MANAGED_LSP_MIN_GODOT_VERSION, GDH_MANAGED_LSP_SURFACE_VERSION, resolveConfiguredGodotEditorBin, } from "@gdh/core";
9
9
  import { connectGodotLspClient, GdhLspClientError, } from "./lsp-client.js";
10
10
  import { summarizeBlockingDiagnostics } from "./diagnostics-summary.js";
11
- import { classifyDiagnosticsFreshness, DIAGNOSTICS_BROKER_DEFAULT_FRESHNESS_STALE_AFTER_MS, resolveDiagnosticsBrokerPaths, } from "./diagnostics-broker-contract.js";
11
+ import { readBrokerSnapshot, extractBrokerDiagnosticsIfFresh } from "./lsp-broker-snapshot.js";
12
+ import { writeJsonFileAtomically } from "./authoring-state-store.js";
12
13
  const LSP_INSTANCE_SCHEMA_VERSION = 2;
13
14
  const LSP_LEASE_SCHEMA_VERSION = 1;
14
15
  const LSP_STATE_LOCK_SCHEMA_VERSION = 1;
@@ -36,70 +37,7 @@ class GdhManagedLspStateLockError extends Error {
36
37
  }
37
38
  }
38
39
  const testFakeRegistry = new Map();
39
- async function readBrokerSnapshot(targetPath) {
40
- const paths = resolveDiagnosticsBrokerPaths(path.resolve(targetPath));
41
- try {
42
- const raw = await fs.readFile(paths.snapshotPath, "utf8");
43
- const parsed = JSON.parse(raw);
44
- if (typeof parsed !== "object" || parsed === null || parsed.schemaVersion !== 1) {
45
- return null;
46
- }
47
- return parsed;
48
- }
49
- catch {
50
- return null;
51
- }
52
- }
53
- /**
54
- * Check if the broker snapshot is fresh enough to use for a post_edit check
55
- * on the requested changed files.
56
- *
57
- * Returns the matching diagnostics if all conditions are met:
58
- * - schemaVersion is 1
59
- * - lspInstanceId matches the current instance
60
- * - All requested file URIs are covered and individually fresh
61
- *
62
- * Returns null otherwise (fall through to direct LSP check).
63
- */
64
- function extractBrokerDiagnosticsIfFresh(snapshot, currentInstanceId, requestedUris, currentContentHashesByUri) {
65
- if (snapshot.lspInstanceId !== currentInstanceId) {
66
- return null;
67
- }
68
- const fileByUri = new Map(snapshot.files.map((f) => [f.uri, f]));
69
- const nowMs = Date.now();
70
- const coveredDiagnostics = [];
71
- const coveredUris = [];
72
- for (const uri of requestedUris) {
73
- const file = fileByUri.get(uri);
74
- if (file === undefined) {
75
- return null; // Requested URI not in broker — fall through.
76
- }
77
- if (typeof file.contentHash !== "string" || file.contentHash.length === 0) {
78
- return null; // Pre-content-hash snapshots cannot prove current file content.
79
- }
80
- if (currentContentHashesByUri.get(uri) !== file.contentHash) {
81
- return null; // Snapshot was captured for different file content.
82
- }
83
- const freshness = classifyDiagnosticsFreshness({
84
- fileSnapshot: {
85
- uri: file.uri,
86
- filePath: file.filePath,
87
- diagnostics: file.diagnostics,
88
- freshness: "fresh", // will be recomputed
89
- lastUpdatedAt: file.lastUpdatedAt,
90
- lspInstanceId: snapshot.lspInstanceId,
91
- },
92
- nowMs,
93
- staleAfterMs: DIAGNOSTICS_BROKER_DEFAULT_FRESHNESS_STALE_AFTER_MS,
94
- });
95
- if (freshness !== "fresh") {
96
- return null; // Any stale file causes fallthrough.
97
- }
98
- coveredDiagnostics.push(...file.diagnostics);
99
- coveredUris.push(uri);
100
- }
101
- return { diagnostics: coveredDiagnostics, fileUris: coveredUris };
102
- }
40
+ // ─── Broker Snapshot (lightweight, no circular import) ────────────────────────
103
41
  export async function getManagedLspStatus(input) {
104
42
  const worktree = resolveWorktreeIdentity(input.targetPath, input.status, input.projectConfig);
105
43
  const lspCapability = input.status.capabilities.find((capability) => capability.id === "authoring.lsp");
@@ -1388,7 +1326,7 @@ async function acquireManagedLspStateLock(worktree, owner) {
1388
1326
  };
1389
1327
  try {
1390
1328
  await fs.mkdir(lockPath);
1391
- await fs.writeFile(metadataPath, JSON.stringify(record, null, 2), "utf8");
1329
+ await writeJsonFileAtomically(metadataPath, record);
1392
1330
  return {
1393
1331
  lockId: record.lockId,
1394
1332
  owner,
@@ -1463,10 +1401,10 @@ async function withLease(worktree, owner, callback) {
1463
1401
  acquiredAt: new Date().toISOString(),
1464
1402
  };
1465
1403
  const nextLeases = [...activeLeases, lease];
1466
- await fs.writeFile(leasesPath, JSON.stringify({
1404
+ await writeJsonFileAtomically(leasesPath, {
1467
1405
  schemaVersion: LSP_LEASE_SCHEMA_VERSION,
1468
1406
  activeLeases: nextLeases,
1469
- }, null, 2), "utf8");
1407
+ });
1470
1408
  try {
1471
1409
  return await callback(lease, nextLeases.length);
1472
1410
  }
@@ -1476,10 +1414,10 @@ async function withLease(worktree, owner, callback) {
1476
1414
  await fs.rm(leasesPath, { force: true });
1477
1415
  }
1478
1416
  else {
1479
- await fs.writeFile(leasesPath, JSON.stringify({
1417
+ await writeJsonFileAtomically(leasesPath, {
1480
1418
  schemaVersion: LSP_LEASE_SCHEMA_VERSION,
1481
1419
  activeLeases: remainingLeases,
1482
- }, null, 2), "utf8");
1420
+ });
1483
1421
  }
1484
1422
  }
1485
1423
  }
@@ -1512,7 +1450,7 @@ async function readPersistedInstance(worktree) {
1512
1450
  }
1513
1451
  async function persistInstance(worktree, record) {
1514
1452
  await fs.mkdir(worktree.stateRootPath, { recursive: true });
1515
- await fs.writeFile(path.join(worktree.stateRootPath, "lsp-instance.json"), JSON.stringify(record, null, 2), "utf8");
1453
+ await writeJsonFileAtomically(path.join(worktree.stateRootPath, "lsp-instance.json"), record);
1516
1454
  }
1517
1455
  function validatePersistedInstanceIdentity(instance, expectedIdentity) {
1518
1456
  const identity = instance.identity;
@@ -1685,13 +1623,13 @@ async function cleanupPersistedInstance(worktree, instance, reason, options = {}
1685
1623
  await fs.rm(path.join(worktree.stateRootPath, "lsp-instance.json"), {
1686
1624
  force: true,
1687
1625
  });
1688
- await fs.writeFile(path.join(worktree.stateRootPath, "lsp-cleanup.json"), JSON.stringify({
1626
+ await writeJsonFileAtomically(path.join(worktree.stateRootPath, "lsp-cleanup.json"), {
1689
1627
  cleanedAt: new Date().toISOString(),
1690
1628
  reason,
1691
1629
  instanceId: instance.instanceId,
1692
1630
  killedPid,
1693
1631
  killReason,
1694
- }, null, 2), "utf8");
1632
+ });
1695
1633
  return { killedPid, killReason };
1696
1634
  }
1697
1635
  async function launchManagedInstance(worktree, projectPath) {