@remnic/core 9.3.691 → 9.3.693

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 (113) hide show
  1. package/dist/access-boundary.d.ts +6 -5
  2. package/dist/access-boundary.js +12 -12
  3. package/dist/access-cli.js +71 -18
  4. package/dist/access-cli.js.map +1 -1
  5. package/dist/access-http.d.ts +5 -4
  6. package/dist/access-http.js +16 -16
  7. package/dist/access-mcp.d.ts +7 -4
  8. package/dist/access-mcp.js +15 -15
  9. package/dist/access-operations.d.ts +12 -6
  10. package/dist/access-operations.js +16 -14
  11. package/dist/access-schema.js +3 -3
  12. package/dist/{access-service-CKnFdxH-.d.ts → access-service-DxCpgyVW.d.ts} +96 -2
  13. package/dist/access-service.d.ts +5 -4
  14. package/dist/access-service.js +11 -11
  15. package/dist/access-surface-catalog.d.ts +5 -4
  16. package/dist/access-surface-catalog.js +2 -0
  17. package/dist/access-surface-catalog.js.map +1 -1
  18. package/dist/bootstrap.d.ts +4 -3
  19. package/dist/{chunk-QNG35H27.js → chunk-4IQNAOP3.js} +5 -141
  20. package/dist/chunk-4IQNAOP3.js.map +1 -0
  21. package/dist/{chunk-VH2DHBHG.js → chunk-5HGPDRQZ.js} +2 -2
  22. package/dist/chunk-5HGPDRQZ.js.map +1 -0
  23. package/dist/chunk-6C2BMUZA.js +444 -0
  24. package/dist/chunk-6C2BMUZA.js.map +1 -0
  25. package/dist/{chunk-UUMYB3FR.js → chunk-6ZNIUGXB.js} +10 -10
  26. package/dist/{chunk-IPJD7WJH.js → chunk-E6BOD3UJ.js} +2 -2
  27. package/dist/{chunk-TJ5IIQIR.js → chunk-F7BVJ3IE.js} +40 -369
  28. package/dist/chunk-F7BVJ3IE.js.map +1 -0
  29. package/dist/{chunk-D3DNGQNQ.js → chunk-FM7KLRKN.js} +2 -2
  30. package/dist/{chunk-7MOTEVAA.js → chunk-HRUULBBV.js} +3 -1
  31. package/dist/chunk-HRUULBBV.js.map +1 -0
  32. package/dist/chunk-HXNMDPHN.js +149 -0
  33. package/dist/chunk-HXNMDPHN.js.map +1 -0
  34. package/dist/{chunk-7UVDIWLL.js → chunk-JNKH2XWQ.js} +36 -6
  35. package/dist/chunk-JNKH2XWQ.js.map +1 -0
  36. package/dist/{chunk-IPLYGWQF.js → chunk-KQAFEZQX.js} +5 -5
  37. package/dist/{chunk-OOO7ZKOD.js → chunk-KYH53EFD.js} +3 -3
  38. package/dist/{chunk-LQ6JI4VH.js → chunk-LD53WPMU.js} +4 -4
  39. package/dist/{chunk-KO6OL4I7.js → chunk-MQTPUPLP.js} +297 -17
  40. package/dist/chunk-MQTPUPLP.js.map +1 -0
  41. package/dist/{chunk-TSGREOYY.js → chunk-RHWFMBO5.js} +33 -6
  42. package/dist/chunk-RHWFMBO5.js.map +1 -0
  43. package/dist/{chunk-5CEJH5ZN.js → chunk-TAPSNIMA.js} +4 -4
  44. package/dist/{chunk-K7I24ZO2.js → chunk-THKNO6OX.js} +22 -21
  45. package/dist/{chunk-K7I24ZO2.js.map → chunk-THKNO6OX.js.map} +1 -1
  46. package/dist/{chunk-QLRYXOAD.js → chunk-UDJLF3BO.js} +2 -2
  47. package/dist/{chunk-NCRDCTEJ.js → chunk-WYB44HHV.js} +21 -7
  48. package/dist/chunk-WYB44HHV.js.map +1 -0
  49. package/dist/{chunk-WRFKZEO6.js → chunk-YQGHW5ML.js} +4 -4
  50. package/dist/{cli-CrSW_KRq.d.ts → cli-DoQsv4ut.d.ts} +2 -2
  51. package/dist/cli.d.ts +6 -5
  52. package/dist/cli.js +26 -25
  53. package/dist/contradiction/index.js +4 -4
  54. package/dist/explicit-capture.d.ts +4 -3
  55. package/dist/index.d.ts +6 -5
  56. package/dist/index.js +33 -31
  57. package/dist/index.js.map +1 -1
  58. package/dist/mcp-memory-inspector-app.d.ts +5 -4
  59. package/dist/namespaces/migrate.js +8 -8
  60. package/dist/namespaces/search.js +7 -7
  61. package/dist/operator-toolkit.js +11 -10
  62. package/dist/orchestration/maintenance.d.ts +112 -0
  63. package/dist/orchestration/maintenance.js +39 -0
  64. package/dist/orchestration/maintenance.js.map +1 -0
  65. package/dist/{orchestrator-DvswGK76.d.ts → orchestrator-CNJCYjZ1.d.ts} +9 -33
  66. package/dist/orchestrator.d.ts +2 -1
  67. package/dist/orchestrator.js +13 -11
  68. package/dist/schemas.d.ts +28 -28
  69. package/dist/search/factory.js +6 -6
  70. package/dist/search/index.js +11 -11
  71. package/dist/search/lancedb-backend.js +2 -2
  72. package/dist/search/meilisearch-backend.js +2 -2
  73. package/dist/search/orama-backend.js +2 -2
  74. package/dist/transfer/autodetect.js +1 -1
  75. package/dist/transfer/backup.js +1 -1
  76. package/dist/transfer/capsule-export.js +2 -2
  77. package/dist/transfer/types.d.ts +12 -12
  78. package/package.json +12 -2
  79. package/src/access-boundary.ts +2 -1
  80. package/src/access-cli.ts +65 -2
  81. package/src/access-http.ts +20 -0
  82. package/src/access-mcp.ts +29 -0
  83. package/src/access-operations.ts +46 -0
  84. package/src/access-service.ts +55 -0
  85. package/src/access-surface-catalog.test.ts +1 -1
  86. package/src/access-surface-catalog.ts +2 -0
  87. package/src/cli.ts +1 -0
  88. package/src/coding/coding-namespace.ts +1 -1
  89. package/src/coding/session-delta-surfaces.test.ts +383 -0
  90. package/src/coding/session-delta-surfaces.ts +325 -0
  91. package/src/coding/session-delta.test.ts +411 -0
  92. package/src/coding/session-delta.ts +442 -0
  93. package/src/orchestration/maintenance.test.ts +738 -0
  94. package/src/orchestration/maintenance.ts +557 -0
  95. package/src/orchestrator-flush.test.ts +0 -599
  96. package/src/orchestrator.ts +33 -419
  97. package/dist/chunk-7MOTEVAA.js.map +0 -1
  98. package/dist/chunk-7UVDIWLL.js.map +0 -1
  99. package/dist/chunk-KO6OL4I7.js.map +0 -1
  100. package/dist/chunk-NCRDCTEJ.js.map +0 -1
  101. package/dist/chunk-QNG35H27.js.map +0 -1
  102. package/dist/chunk-TJ5IIQIR.js.map +0 -1
  103. package/dist/chunk-TSGREOYY.js.map +0 -1
  104. package/dist/chunk-VH2DHBHG.js.map +0 -1
  105. /package/dist/{chunk-UUMYB3FR.js.map → chunk-6ZNIUGXB.js.map} +0 -0
  106. /package/dist/{chunk-IPJD7WJH.js.map → chunk-E6BOD3UJ.js.map} +0 -0
  107. /package/dist/{chunk-D3DNGQNQ.js.map → chunk-FM7KLRKN.js.map} +0 -0
  108. /package/dist/{chunk-IPLYGWQF.js.map → chunk-KQAFEZQX.js.map} +0 -0
  109. /package/dist/{chunk-OOO7ZKOD.js.map → chunk-KYH53EFD.js.map} +0 -0
  110. /package/dist/{chunk-LQ6JI4VH.js.map → chunk-LD53WPMU.js.map} +0 -0
  111. /package/dist/{chunk-5CEJH5ZN.js.map → chunk-TAPSNIMA.js.map} +0 -0
  112. /package/dist/{chunk-QLRYXOAD.js.map → chunk-UDJLF3BO.js.map} +0 -0
  113. /package/dist/{chunk-WRFKZEO6.js.map → chunk-YQGHW5ML.js.map} +0 -0
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  EngramMcpServer
3
- } from "./chunk-TSGREOYY.js";
3
+ } from "./chunk-RHWFMBO5.js";
4
4
  import "./chunk-T4WDJPEZ.js";
5
5
  import "./chunk-D24OXEPB.js";
6
- import "./chunk-7UVDIWLL.js";
7
- import "./chunk-QLRYXOAD.js";
8
- import "./chunk-VH2DHBHG.js";
9
- import "./chunk-KO6OL4I7.js";
6
+ import "./chunk-JNKH2XWQ.js";
7
+ import "./chunk-UDJLF3BO.js";
8
+ import "./chunk-5HGPDRQZ.js";
9
+ import "./chunk-MQTPUPLP.js";
10
10
  import "./chunk-GDASG7NC.js";
11
11
  import "./chunk-GDB4J2H3.js";
12
12
  import "./chunk-ARV3AUOM.js";
@@ -14,7 +14,7 @@ import "./chunk-2D27ODNX.js";
14
14
  import "./chunk-SOBJ6NEY.js";
15
15
  import "./chunk-BT7NVCML.js";
16
16
  import "./chunk-H7XKCNR6.js";
17
- import "./chunk-7MOTEVAA.js";
17
+ import "./chunk-HRUULBBV.js";
18
18
  import "./chunk-RS25QOKZ.js";
19
19
  import "./chunk-JGSKJHF7.js";
20
20
  import "./chunk-FF4KLI5W.js";
@@ -23,16 +23,16 @@ import "./chunk-BMFZLLNI.js";
23
23
  import "./chunk-CI7RKSRE.js";
24
24
  import "./chunk-6HMYUWXR.js";
25
25
  import "./chunk-SAC5V6JT.js";
26
- import "./chunk-IPJD7WJH.js";
27
- import "./chunk-UUMYB3FR.js";
28
- import "./chunk-5CEJH5ZN.js";
29
- import "./chunk-WRFKZEO6.js";
30
- import "./chunk-CYEPCZN5.js";
31
- import "./chunk-LQ6JI4VH.js";
26
+ import "./chunk-E6BOD3UJ.js";
27
+ import "./chunk-6ZNIUGXB.js";
32
28
  import "./chunk-SANZHXY2.js";
33
- import "./chunk-AER6MT24.js";
34
29
  import "./chunk-EHISUJFN.js";
30
+ import "./chunk-TAPSNIMA.js";
31
+ import "./chunk-YQGHW5ML.js";
32
+ import "./chunk-CYEPCZN5.js";
33
+ import "./chunk-LD53WPMU.js";
35
34
  import "./chunk-CINZGPSJ.js";
35
+ import "./chunk-AER6MT24.js";
36
36
  import "./chunk-ZFXCQPNO.js";
37
37
  import "./chunk-DCWIQFNA.js";
38
38
  import "./chunk-XBZQRZ6G.js";
@@ -74,10 +74,10 @@ import "./chunk-FVQJYWH7.js";
74
74
  import "./chunk-G7D6GZ5J.js";
75
75
  import "./chunk-VF4XKTX3.js";
76
76
  import "./chunk-RGMVMVMF.js";
77
- import "./chunk-IPLYGWQF.js";
78
- import "./chunk-J4EB7DNW.js";
77
+ import "./chunk-KQAFEZQX.js";
79
78
  import "./chunk-WEHSQBFR.js";
80
79
  import "./chunk-X7Y7WX73.js";
80
+ import "./chunk-J4EB7DNW.js";
81
81
  import "./chunk-BJMBJZ2Y.js";
82
82
  import "./chunk-UKJAGEXH.js";
83
83
  import "./chunk-FP2373TW.js";
@@ -1,6 +1,6 @@
1
1
  import { OperationName, BoundOperation } from './access-boundary.js';
2
2
  import { MemoryStoreRequest } from './access-schema.js';
3
- import { A as ArchitectureSurfaceRequest, a as ArchitectureSurfaceResponse, D as DecisionSurfaceRequest, b as DecisionSurfaceResponse, E as EngramAccessMemoryResponse, c as EngramAccessWriteResponse } from './access-service-CKnFdxH-.js';
3
+ import { A as ArchitectureSurfaceRequest, a as ArchitectureSurfaceResponse, D as DecisionSurfaceRequest, b as DecisionSurfaceResponse, c as DeltaSurfaceRequest, d as DeltaSurfaceResponse, E as EngramAccessMemoryResponse, e as EngramAccessWriteResponse } from './access-service-DxCpgyVW.js';
4
4
  import 'zod';
5
5
  import './storage.js';
6
6
  import './page-versioning.js';
@@ -23,7 +23,7 @@ import './user-model.js';
23
23
  import './recall-audit-anomaly.js';
24
24
  import './recall-audit.js';
25
25
  import './explicit-capture.js';
26
- import './orchestrator-DvswGK76.js';
26
+ import './orchestrator-CNJCYjZ1.js';
27
27
  import './briefing.js';
28
28
  import './buffer.js';
29
29
  import './transcript.js';
@@ -33,6 +33,9 @@ import './model-registry.js';
33
33
  import './local-llm.js';
34
34
  import './fallback-llm.js';
35
35
  import './resolve-provider-secret.js';
36
+ import './orchestration/maintenance.js';
37
+ import './namespaces/search.js';
38
+ import './catalog-BEWLjdOr.js';
36
39
  import './live-connectors-runner.js';
37
40
  import './framework-CNDn2164.js';
38
41
  import './relevance.js';
@@ -55,8 +58,6 @@ import './conversation-index/backend.js';
55
58
  import './conversation-index/chunker.js';
56
59
  import './faiss-adapter-BHecI1fF.js';
57
60
  import './runtime/child-process.js';
58
- import './catalog-BEWLjdOr.js';
59
- import './namespaces/search.js';
60
61
  import './shared-context/manager.js';
61
62
  import './compounding/engine.js';
62
63
  import './policy-runtime.js';
@@ -129,11 +130,16 @@ type CodingArchitectureOutput = {
129
130
  result: ArchitectureSurfaceResponse;
130
131
  };
131
132
  declare const codingArchitectureOperation: BoundOperation<ArchitectureSurfaceRequest, CodingArchitectureOutput>;
133
+ type CodingDeltaInput = DeltaSurfaceRequest;
134
+ type CodingDeltaOutput = {
135
+ result: DeltaSurfaceResponse;
136
+ };
137
+ declare const codingDeltaOperation: BoundOperation<DeltaSurfaceRequest, CodingDeltaOutput>;
132
138
  /**
133
139
  * The canonical short names (no `engram.`/`remnic.` prefix) of the operations
134
140
  * the boundary owns today. The fitness test treats this set as the migrated
135
141
  * set; everything else on a surface is unmigrated and counted by the ratchet.
136
142
  */
137
- declare const REGISTERED_OPERATIONS: readonly [OperationName, OperationName, OperationName, OperationName, OperationName];
143
+ declare const REGISTERED_OPERATIONS: readonly [OperationName, OperationName, OperationName, OperationName, OperationName, OperationName];
138
144
 
139
- export { type CodingArchitectureInput, type CodingArchitectureOutput, type CodingDecisionInput, type CodingDecisionOutput, type MemoryGetInput, type MemoryGetOutput, type MemorySearchInput, type MemorySearchOutput, type MemoryStoreInput, type MemoryStoreOutput, REGISTERED_OPERATIONS, codingArchitectureOperation, codingDecisionOperation, memoryGetOperation, memorySearchOperation, memoryStoreOperation };
145
+ export { type CodingArchitectureInput, type CodingArchitectureOutput, type CodingDecisionInput, type CodingDecisionOutput, type CodingDeltaInput, type CodingDeltaOutput, type MemoryGetInput, type MemoryGetOutput, type MemorySearchInput, type MemorySearchOutput, type MemoryStoreInput, type MemoryStoreOutput, REGISTERED_OPERATIONS, codingArchitectureOperation, codingDecisionOperation, codingDeltaOperation, memoryGetOperation, memorySearchOperation, memoryStoreOperation };
@@ -2,13 +2,14 @@ import {
2
2
  REGISTERED_OPERATIONS,
3
3
  codingArchitectureOperation,
4
4
  codingDecisionOperation,
5
+ codingDeltaOperation,
5
6
  memoryGetOperation,
6
7
  memorySearchOperation,
7
8
  memoryStoreOperation
8
- } from "./chunk-7UVDIWLL.js";
9
- import "./chunk-QLRYXOAD.js";
10
- import "./chunk-VH2DHBHG.js";
11
- import "./chunk-KO6OL4I7.js";
9
+ } from "./chunk-JNKH2XWQ.js";
10
+ import "./chunk-UDJLF3BO.js";
11
+ import "./chunk-5HGPDRQZ.js";
12
+ import "./chunk-MQTPUPLP.js";
12
13
  import "./chunk-GDASG7NC.js";
13
14
  import "./chunk-GDB4J2H3.js";
14
15
  import "./chunk-ARV3AUOM.js";
@@ -16,7 +17,7 @@ import "./chunk-2D27ODNX.js";
16
17
  import "./chunk-SOBJ6NEY.js";
17
18
  import "./chunk-BT7NVCML.js";
18
19
  import "./chunk-H7XKCNR6.js";
19
- import "./chunk-7MOTEVAA.js";
20
+ import "./chunk-HRUULBBV.js";
20
21
  import "./chunk-RS25QOKZ.js";
21
22
  import "./chunk-JGSKJHF7.js";
22
23
  import "./chunk-FF4KLI5W.js";
@@ -25,16 +26,16 @@ import "./chunk-BMFZLLNI.js";
25
26
  import "./chunk-CI7RKSRE.js";
26
27
  import "./chunk-6HMYUWXR.js";
27
28
  import "./chunk-SAC5V6JT.js";
28
- import "./chunk-IPJD7WJH.js";
29
- import "./chunk-UUMYB3FR.js";
30
- import "./chunk-5CEJH5ZN.js";
31
- import "./chunk-WRFKZEO6.js";
32
- import "./chunk-CYEPCZN5.js";
33
- import "./chunk-LQ6JI4VH.js";
29
+ import "./chunk-E6BOD3UJ.js";
30
+ import "./chunk-6ZNIUGXB.js";
34
31
  import "./chunk-SANZHXY2.js";
35
- import "./chunk-AER6MT24.js";
36
32
  import "./chunk-EHISUJFN.js";
33
+ import "./chunk-TAPSNIMA.js";
34
+ import "./chunk-YQGHW5ML.js";
35
+ import "./chunk-CYEPCZN5.js";
36
+ import "./chunk-LD53WPMU.js";
37
37
  import "./chunk-CINZGPSJ.js";
38
+ import "./chunk-AER6MT24.js";
38
39
  import "./chunk-ZFXCQPNO.js";
39
40
  import "./chunk-DCWIQFNA.js";
40
41
  import "./chunk-XBZQRZ6G.js";
@@ -76,10 +77,10 @@ import "./chunk-FVQJYWH7.js";
76
77
  import "./chunk-G7D6GZ5J.js";
77
78
  import "./chunk-VF4XKTX3.js";
78
79
  import "./chunk-RGMVMVMF.js";
79
- import "./chunk-IPLYGWQF.js";
80
- import "./chunk-J4EB7DNW.js";
80
+ import "./chunk-KQAFEZQX.js";
81
81
  import "./chunk-WEHSQBFR.js";
82
82
  import "./chunk-X7Y7WX73.js";
83
+ import "./chunk-J4EB7DNW.js";
83
84
  import "./chunk-BJMBJZ2Y.js";
84
85
  import "./chunk-UKJAGEXH.js";
85
86
  import "./chunk-FP2373TW.js";
@@ -114,6 +115,7 @@ export {
114
115
  REGISTERED_OPERATIONS,
115
116
  codingArchitectureOperation,
116
117
  codingDecisionOperation,
118
+ codingDeltaOperation,
117
119
  memoryGetOperation,
118
120
  memorySearchOperation,
119
121
  memoryStoreOperation
@@ -25,11 +25,11 @@ import {
25
25
  trustZoneDemoSeedRequestSchema,
26
26
  trustZonePromoteRequestSchema,
27
27
  validateRequest
28
- } from "./chunk-QLRYXOAD.js";
29
- import "./chunk-IPLYGWQF.js";
30
- import "./chunk-J4EB7DNW.js";
28
+ } from "./chunk-UDJLF3BO.js";
29
+ import "./chunk-KQAFEZQX.js";
31
30
  import "./chunk-WEHSQBFR.js";
32
31
  import "./chunk-X7Y7WX73.js";
32
+ import "./chunk-J4EB7DNW.js";
33
33
  import "./chunk-BJMBJZ2Y.js";
34
34
  import "./chunk-UKJAGEXH.js";
35
35
  import "./chunk-FP2373TW.js";
@@ -6,7 +6,7 @@ import { AnomalyDetectorResult } from './recall-audit-anomaly.js';
6
6
  import { ExplicitCaptureInput } from './explicit-capture.js';
7
7
  import { BudgetDecision } from './cross-namespace-budget.js';
8
8
  import { readMemoryGovernanceRunArtifact } from './maintenance/memory-governance.js';
9
- import { O as Orchestrator, I as IntentDebugSnapshot, G as GraphRecallSnapshot, P as PatternReinforcementResult, W as WearablesService } from './orchestrator-DvswGK76.js';
9
+ import { O as Orchestrator, I as IntentDebugSnapshot, G as GraphRecallSnapshot, P as PatternReinforcementResult, W as WearablesService } from './orchestrator-CNJCYjZ1.js';
10
10
  import { LiveConnectorsRunSummary } from './live-connectors-runner.js';
11
11
  import { LastRecallSnapshot } from './recall-state.js';
12
12
  import { GraphSnapshotRequest, GraphSnapshotResponse } from './graph-snapshot.js';
@@ -219,6 +219,90 @@ type ArchitectureSurfaceResponse = {
219
219
  buildCode?: string;
220
220
  };
221
221
 
222
+ /** Persisted marker: the HEAD we last computed a delta against, and when. */
223
+ interface LastSeenState {
224
+ /** HEAD SHA at the time of the last delta. */
225
+ head: string;
226
+ /** ISO timestamp of the last delta computation. */
227
+ at: string;
228
+ }
229
+
230
+ /**
231
+ * Session-delta surface contract + handler (issue #1548 Track A PR 4).
232
+ *
233
+ * The single shared implementation behind the MCP, HTTP, and CLI
234
+ * session-delta surfaces. All three transports dispatch through the
235
+ * `coding_delta` boundary operation, which calls {@link handleCodingDelta}
236
+ * via the service delegate.
237
+ *
238
+ * Gate (rule 39): `codingKnowledge.enabled + sessionDelta + coding
239
+ * context` — one predicate, identical on every surface. The tools/list
240
+ * visibility gate checks conditions 1–2 only (config-level).
241
+ *
242
+ * Persistence (rule 25): the new last-seen-head marker is written AFTER
243
+ * the delta is computed from the old one. State writes use temp-file-then-
244
+ * rename (rule 54) via the pure module's `writeLastSeenState`.
245
+ *
246
+ * Subcommand: `get` — computes the delta against the persisted last-seen
247
+ * head and updates the marker in the same call (so the NEXT session sees
248
+ * this one as the baseline). Read-only semantically, but it mutates the
249
+ * state file: it is therefore NOT counted against the write-quota (the
250
+ * state file is operator-side bookkeeping, not user memory content — the
251
+ * same way `calibration.ts` writes are uncounted).
252
+ */
253
+
254
+ declare const DELTA_SUBCOMMANDS: readonly ["get"];
255
+ type DeltaSubcommand = (typeof DELTA_SUBCOMMANDS)[number];
256
+ /** Canonical surface request — one shape for all three transports. */
257
+ interface DeltaSurfaceRequest {
258
+ subcommand: DeltaSubcommand;
259
+ sessionKey?: string;
260
+ namespace?: string;
261
+ }
262
+ /**
263
+ * Surface response. Mirrors {@link SessionDeltaResult} but flattened for
264
+ * transport: every outcome carries `nextState` so callers can observe the
265
+ * new marker even on failure (the head still advanced).
266
+ */
267
+ type DeltaSurfaceResponse = {
268
+ subcommand: "get";
269
+ ok: true;
270
+ /** A real delta was computed. */
271
+ kind: "changed";
272
+ delta: {
273
+ commits: ReadonlyArray<{
274
+ sha: string;
275
+ subject: string;
276
+ }>;
277
+ touchedFiles: readonly string[];
278
+ summaryLine: string;
279
+ };
280
+ nextState: LastSeenState;
281
+ } | {
282
+ subcommand: "get";
283
+ ok: true;
284
+ /** Prior head equals current — no changes. */
285
+ kind: "unchanged";
286
+ nextState: LastSeenState;
287
+ } | {
288
+ subcommand: "get";
289
+ ok: true;
290
+ /** No prior state — first session for this namespace. */
291
+ kind: "first_run";
292
+ nextState: LastSeenState;
293
+ } | {
294
+ subcommand: "get";
295
+ /**
296
+ * Delta unavailable. `code` is one of `unreachable_head` (force-push/
297
+ * rebase erased the prior head) or `git_failed` (invoker error). The
298
+ * state file is still advanced when `nextState` is present.
299
+ */
300
+ ok: false;
301
+ code: "unreachable_head" | "git_failed";
302
+ detail: string;
303
+ nextState?: LastSeenState;
304
+ };
305
+
222
306
  /**
223
307
  * Procedural memory stats surface (issue #567 PR 5/5).
224
308
  *
@@ -1257,6 +1341,16 @@ declare class EngramAccessService {
1257
1341
  * Namespace resolution uses the SAME coding-scoped path as decision records.
1258
1342
  */
1259
1343
  codingArchitecture(request: ArchitectureSurfaceRequest, authenticatedPrincipal?: string): Promise<ArchitectureSurfaceResponse>;
1344
+ /** Whether the coding_delta tool should appear in tools/list (rule 39). */
1345
+ get sessionDeltaSurfaceVisible(): boolean;
1346
+ /**
1347
+ * Thin delegate — handler logic in coding/session-delta-surfaces.ts (#1548 PR4).
1348
+ * All three surfaces (MCP/HTTP/CLI) arrive here via the boundary operation.
1349
+ * Namespace resolution uses the SAME coding-scoped read path as the other
1350
+ * coding surfaces; the delta state file lives under
1351
+ * `<memoryDir>/state/coding-knowledge/<namespace>.json`.
1352
+ */
1353
+ codingDelta(request: DeltaSurfaceRequest, authenticatedPrincipal?: string): Promise<DeltaSurfaceResponse>;
1260
1354
  memoryBrowse(request?: EngramAccessMemoryBrowseRequest): Promise<EngramAccessMemoryBrowseResponse>;
1261
1355
  memoryTimeline(memoryId: string, namespace?: string, limit?: number, principal?: string): Promise<EngramAccessTimelineResponse>;
1262
1356
  entityList(options?: {
@@ -2023,4 +2117,4 @@ declare class EngramAccessService {
2023
2117
  }): Promise<Awaited<ReturnType<WearablesService["transcriptMemories"]>>>;
2024
2118
  }
2025
2119
 
2026
- export { type EngramAccessOfflineSyncSnapshotStreamResponse as $, type ArchitectureSurfaceRequest as A, type EngramAccessLcmSearchRequest as B, type CodingScopedWriteInput as C, type DecisionSurfaceRequest as D, type EngramAccessMemoryResponse as E, type EngramAccessLcmSearchResponse as F, type EngramAccessLcmStatusResponse as G, type EngramAccessMaintenanceResponse as H, type EngramAccessMemoryBrowseRequest as I, type EngramAccessMemoryBrowseResponse as J, type EngramAccessMemoryRecord as K, type EngramAccessMemoryStoreRequest as L, type EngramAccessMemorySummary as M, type EngramAccessObserveMessage as N, type EngramAccessObserveRequest as O, type ProcedureStatsConfigSnapshot as P, type EngramAccessObserveResponse as Q, type EngramAccessOfflineSyncApplyFileContentRequest as R, type EngramAccessOfflineSyncApplyFileContentResponse as S, type EngramAccessOfflineSyncApplyRequest as T, type EngramAccessOfflineSyncApplyResponse as U, type EngramAccessOfflineSyncFileContentRequest as V, type EngramAccessOfflineSyncFileContentResponse as W, type EngramAccessOfflineSyncFilesRequest as X, type EngramAccessOfflineSyncFilesResponse as Y, type EngramAccessOfflineSyncSnapshotRequest as Z, type EngramAccessOfflineSyncSnapshotResponse as _, type ArchitectureSurfaceResponse as a, type EngramAccessQmdCollectionState as a0, type EngramAccessQmdHealthResponse as a1, type EngramAccessQualityResponse as a2, type EngramAccessRecallExplainRequest as a3, type EngramAccessRecallExplainResponse as a4, type EngramAccessRecallRequest as a5, type EngramAccessReviewDispositionRequest as a6, type EngramAccessReviewDispositionResponse as a7, type EngramAccessReviewQueueResponse as a8, type EngramAccessScopeDebug as a9, type EngramAccessSetCodingContextRequest as aa, type EngramAccessSuggestionSubmitRequest as ab, type EngramAccessTimelineResponse as ac, type EngramAccessTrustZoneBrowseRequest as ad, type EngramAccessTrustZoneBrowseResponse as ae, type EngramAccessTrustZoneDemoSeedRequest as af, type EngramAccessTrustZoneDemoSeedResponse as ag, type EngramAccessTrustZonePromoteRequest as ah, type EngramAccessTrustZonePromoteResponse as ai, type EngramAccessTrustZoneRecordSummary as aj, type EngramAccessTrustZoneStatusResponse as ak, type EngramAccessWriteEnvelope as al, type MemoryScopePlan as am, shapeMemorySummary as an, type DecisionSurfaceResponse as b, type EngramAccessWriteResponse as c, EngramAccessService as d, type EngramAccessRecallResponse as e, EngramAccessInputError as f, type ProcedureStatsRecent as g, type ProcedureStatsReport as h, type ProcedureStatusCounts as i, computeProcedureStats as j, formatProcedureStatsText as k, ENGRAM_ACCESS_WRITE_SCHEMA_VERSION as l, type EngramAccessActionConfidenceRequest as m, type EngramAccessActionConfidenceResponse as n, type EngramAccessBriefingRequest as o, type EngramAccessBriefingResponse as p, type EngramAccessCapsuleListResponse as q, type EngramAccessDaySummaryRequest as r, type EngramAccessEntityListResponse as s, type EngramAccessEntityResponse as t, type EngramAccessEntitySummary as u, type EngramAccessHealthResponse as v, type EngramAccessLcmCompactionFlushRequest as w, type EngramAccessLcmCompactionFlushResponse as x, type EngramAccessLcmCompactionRecordRequest as y, type EngramAccessLcmCompactionRecordResponse as z };
2120
+ export { type EngramAccessOfflineSyncSnapshotRequest as $, type ArchitectureSurfaceRequest as A, type EngramAccessLcmCompactionRecordRequest as B, type CodingScopedWriteInput as C, type DecisionSurfaceRequest as D, type EngramAccessMemoryResponse as E, type EngramAccessLcmCompactionRecordResponse as F, type EngramAccessLcmSearchRequest as G, type EngramAccessLcmSearchResponse as H, type EngramAccessLcmStatusResponse as I, type EngramAccessMaintenanceResponse as J, type EngramAccessMemoryBrowseRequest as K, type EngramAccessMemoryBrowseResponse as L, type EngramAccessMemoryRecord as M, type EngramAccessMemoryStoreRequest as N, type EngramAccessMemorySummary as O, type ProcedureStatsConfigSnapshot as P, type EngramAccessObserveMessage as Q, type EngramAccessObserveRequest as R, type EngramAccessObserveResponse as S, type EngramAccessOfflineSyncApplyFileContentRequest as T, type EngramAccessOfflineSyncApplyFileContentResponse as U, type EngramAccessOfflineSyncApplyRequest as V, type EngramAccessOfflineSyncApplyResponse as W, type EngramAccessOfflineSyncFileContentRequest as X, type EngramAccessOfflineSyncFileContentResponse as Y, type EngramAccessOfflineSyncFilesRequest as Z, type EngramAccessOfflineSyncFilesResponse as _, type ArchitectureSurfaceResponse as a, type EngramAccessOfflineSyncSnapshotResponse as a0, type EngramAccessOfflineSyncSnapshotStreamResponse as a1, type EngramAccessQmdCollectionState as a2, type EngramAccessQmdHealthResponse as a3, type EngramAccessQualityResponse as a4, type EngramAccessRecallExplainRequest as a5, type EngramAccessRecallExplainResponse as a6, type EngramAccessRecallRequest as a7, type EngramAccessReviewDispositionRequest as a8, type EngramAccessReviewDispositionResponse as a9, type EngramAccessReviewQueueResponse as aa, type EngramAccessScopeDebug as ab, type EngramAccessSetCodingContextRequest as ac, type EngramAccessSuggestionSubmitRequest as ad, type EngramAccessTimelineResponse as ae, type EngramAccessTrustZoneBrowseRequest as af, type EngramAccessTrustZoneBrowseResponse as ag, type EngramAccessTrustZoneDemoSeedRequest as ah, type EngramAccessTrustZoneDemoSeedResponse as ai, type EngramAccessTrustZonePromoteRequest as aj, type EngramAccessTrustZonePromoteResponse as ak, type EngramAccessTrustZoneRecordSummary as al, type EngramAccessTrustZoneStatusResponse as am, type EngramAccessWriteEnvelope as an, type MemoryScopePlan as ao, shapeMemorySummary as ap, type DecisionSurfaceResponse as b, type DeltaSurfaceRequest as c, type DeltaSurfaceResponse as d, type EngramAccessWriteResponse as e, EngramAccessService as f, type EngramAccessRecallResponse as g, EngramAccessInputError as h, type ProcedureStatsRecent as i, type ProcedureStatsReport as j, type ProcedureStatusCounts as k, computeProcedureStats as l, formatProcedureStatsText as m, ENGRAM_ACCESS_WRITE_SCHEMA_VERSION as n, type EngramAccessActionConfidenceRequest as o, type EngramAccessActionConfidenceResponse as p, type EngramAccessBriefingRequest as q, type EngramAccessBriefingResponse as r, type EngramAccessCapsuleListResponse as s, type EngramAccessDaySummaryRequest as t, type EngramAccessEntityListResponse as u, type EngramAccessEntityResponse as v, type EngramAccessEntitySummary as w, type EngramAccessHealthResponse as x, type EngramAccessLcmCompactionFlushRequest as y, type EngramAccessLcmCompactionFlushResponse as z };
@@ -1,13 +1,13 @@
1
1
  import './storage.js';
2
2
  import './types-B1VHaf2w.js';
3
- export { C as CodingScopedWriteInput, l as ENGRAM_ACCESS_WRITE_SCHEMA_VERSION, m as EngramAccessActionConfidenceRequest, n as EngramAccessActionConfidenceResponse, o as EngramAccessBriefingRequest, p as EngramAccessBriefingResponse, q as EngramAccessCapsuleListResponse, r as EngramAccessDaySummaryRequest, s as EngramAccessEntityListResponse, t as EngramAccessEntityResponse, u as EngramAccessEntitySummary, v as EngramAccessHealthResponse, f as EngramAccessInputError, w as EngramAccessLcmCompactionFlushRequest, x as EngramAccessLcmCompactionFlushResponse, y as EngramAccessLcmCompactionRecordRequest, z as EngramAccessLcmCompactionRecordResponse, B as EngramAccessLcmSearchRequest, F as EngramAccessLcmSearchResponse, G as EngramAccessLcmStatusResponse, H as EngramAccessMaintenanceResponse, I as EngramAccessMemoryBrowseRequest, J as EngramAccessMemoryBrowseResponse, K as EngramAccessMemoryRecord, E as EngramAccessMemoryResponse, L as EngramAccessMemoryStoreRequest, M as EngramAccessMemorySummary, N as EngramAccessObserveMessage, O as EngramAccessObserveRequest, Q as EngramAccessObserveResponse, R as EngramAccessOfflineSyncApplyFileContentRequest, S as EngramAccessOfflineSyncApplyFileContentResponse, T as EngramAccessOfflineSyncApplyRequest, U as EngramAccessOfflineSyncApplyResponse, V as EngramAccessOfflineSyncFileContentRequest, W as EngramAccessOfflineSyncFileContentResponse, X as EngramAccessOfflineSyncFilesRequest, Y as EngramAccessOfflineSyncFilesResponse, Z as EngramAccessOfflineSyncSnapshotRequest, _ as EngramAccessOfflineSyncSnapshotResponse, $ as EngramAccessOfflineSyncSnapshotStreamResponse, a0 as EngramAccessQmdCollectionState, a1 as EngramAccessQmdHealthResponse, a2 as EngramAccessQualityResponse, a3 as EngramAccessRecallExplainRequest, a4 as EngramAccessRecallExplainResponse, a5 as EngramAccessRecallRequest, e as EngramAccessRecallResponse, a6 as EngramAccessReviewDispositionRequest, a7 as EngramAccessReviewDispositionResponse, a8 as EngramAccessReviewQueueResponse, a9 as EngramAccessScopeDebug, d as EngramAccessService, aa as EngramAccessSetCodingContextRequest, ab as EngramAccessSuggestionSubmitRequest, ac as EngramAccessTimelineResponse, ad as EngramAccessTrustZoneBrowseRequest, ae as EngramAccessTrustZoneBrowseResponse, af as EngramAccessTrustZoneDemoSeedRequest, ag as EngramAccessTrustZoneDemoSeedResponse, ah as EngramAccessTrustZonePromoteRequest, ai as EngramAccessTrustZonePromoteResponse, aj as EngramAccessTrustZoneRecordSummary, ak as EngramAccessTrustZoneStatusResponse, al as EngramAccessWriteEnvelope, c as EngramAccessWriteResponse, am as MemoryScopePlan, an as shapeMemorySummary } from './access-service-CKnFdxH-.js';
3
+ export { C as CodingScopedWriteInput, n as ENGRAM_ACCESS_WRITE_SCHEMA_VERSION, o as EngramAccessActionConfidenceRequest, p as EngramAccessActionConfidenceResponse, q as EngramAccessBriefingRequest, r as EngramAccessBriefingResponse, s as EngramAccessCapsuleListResponse, t as EngramAccessDaySummaryRequest, u as EngramAccessEntityListResponse, v as EngramAccessEntityResponse, w as EngramAccessEntitySummary, x as EngramAccessHealthResponse, h as EngramAccessInputError, y as EngramAccessLcmCompactionFlushRequest, z as EngramAccessLcmCompactionFlushResponse, B as EngramAccessLcmCompactionRecordRequest, F as EngramAccessLcmCompactionRecordResponse, G as EngramAccessLcmSearchRequest, H as EngramAccessLcmSearchResponse, I as EngramAccessLcmStatusResponse, J as EngramAccessMaintenanceResponse, K as EngramAccessMemoryBrowseRequest, L as EngramAccessMemoryBrowseResponse, M as EngramAccessMemoryRecord, E as EngramAccessMemoryResponse, N as EngramAccessMemoryStoreRequest, O as EngramAccessMemorySummary, Q as EngramAccessObserveMessage, R as EngramAccessObserveRequest, S as EngramAccessObserveResponse, T as EngramAccessOfflineSyncApplyFileContentRequest, U as EngramAccessOfflineSyncApplyFileContentResponse, V as EngramAccessOfflineSyncApplyRequest, W as EngramAccessOfflineSyncApplyResponse, X as EngramAccessOfflineSyncFileContentRequest, Y as EngramAccessOfflineSyncFileContentResponse, Z as EngramAccessOfflineSyncFilesRequest, _ as EngramAccessOfflineSyncFilesResponse, $ as EngramAccessOfflineSyncSnapshotRequest, a0 as EngramAccessOfflineSyncSnapshotResponse, a1 as EngramAccessOfflineSyncSnapshotStreamResponse, a2 as EngramAccessQmdCollectionState, a3 as EngramAccessQmdHealthResponse, a4 as EngramAccessQualityResponse, a5 as EngramAccessRecallExplainRequest, a6 as EngramAccessRecallExplainResponse, a7 as EngramAccessRecallRequest, g as EngramAccessRecallResponse, a8 as EngramAccessReviewDispositionRequest, a9 as EngramAccessReviewDispositionResponse, aa as EngramAccessReviewQueueResponse, ab as EngramAccessScopeDebug, f as EngramAccessService, ac as EngramAccessSetCodingContextRequest, ad as EngramAccessSuggestionSubmitRequest, ae as EngramAccessTimelineResponse, af as EngramAccessTrustZoneBrowseRequest, ag as EngramAccessTrustZoneBrowseResponse, ah as EngramAccessTrustZoneDemoSeedRequest, ai as EngramAccessTrustZoneDemoSeedResponse, aj as EngramAccessTrustZonePromoteRequest, ak as EngramAccessTrustZonePromoteResponse, al as EngramAccessTrustZoneRecordSummary, am as EngramAccessTrustZoneStatusResponse, an as EngramAccessWriteEnvelope, e as EngramAccessWriteResponse, ao as MemoryScopePlan, ap as shapeMemorySummary } from './access-service-DxCpgyVW.js';
4
4
  import './recall-explain-renderer.js';
5
5
  import './types-2NoBoRBM.js';
6
6
  import './recall-audit-anomaly.js';
7
7
  import './explicit-capture.js';
8
8
  import './cross-namespace-budget.js';
9
9
  import './maintenance/memory-governance.js';
10
- import './orchestrator-DvswGK76.js';
10
+ import './orchestrator-CNJCYjZ1.js';
11
11
  import './live-connectors-runner.js';
12
12
  import './recall-state.js';
13
13
  import './graph-snapshot.js';
@@ -41,6 +41,9 @@ import './session-integrity.js';
41
41
  import './summarizer.js';
42
42
  import './model-registry.js';
43
43
  import './resolve-provider-secret.js';
44
+ import './orchestration/maintenance.js';
45
+ import './namespaces/search.js';
46
+ import './catalog-BEWLjdOr.js';
44
47
  import './framework-CNDn2164.js';
45
48
  import './relevance.js';
46
49
  import './negative.js';
@@ -61,8 +64,6 @@ import './conversation-index/backend.js';
61
64
  import './conversation-index/chunker.js';
62
65
  import './faiss-adapter-BHecI1fF.js';
63
66
  import './runtime/child-process.js';
64
- import './catalog-BEWLjdOr.js';
65
- import './namespaces/search.js';
66
67
  import './shared-context/manager.js';
67
68
  import 'zod';
68
69
  import './compounding/engine.js';
@@ -3,7 +3,7 @@ import {
3
3
  EngramAccessInputError,
4
4
  EngramAccessService,
5
5
  shapeMemorySummary
6
- } from "./chunk-KO6OL4I7.js";
6
+ } from "./chunk-MQTPUPLP.js";
7
7
  import "./chunk-GDASG7NC.js";
8
8
  import "./chunk-GDB4J2H3.js";
9
9
  import "./chunk-ARV3AUOM.js";
@@ -11,7 +11,7 @@ import "./chunk-2D27ODNX.js";
11
11
  import "./chunk-SOBJ6NEY.js";
12
12
  import "./chunk-BT7NVCML.js";
13
13
  import "./chunk-H7XKCNR6.js";
14
- import "./chunk-7MOTEVAA.js";
14
+ import "./chunk-HRUULBBV.js";
15
15
  import "./chunk-RS25QOKZ.js";
16
16
  import "./chunk-JGSKJHF7.js";
17
17
  import "./chunk-FF4KLI5W.js";
@@ -20,16 +20,16 @@ import "./chunk-BMFZLLNI.js";
20
20
  import "./chunk-CI7RKSRE.js";
21
21
  import "./chunk-6HMYUWXR.js";
22
22
  import "./chunk-SAC5V6JT.js";
23
- import "./chunk-IPJD7WJH.js";
24
- import "./chunk-UUMYB3FR.js";
25
- import "./chunk-5CEJH5ZN.js";
26
- import "./chunk-WRFKZEO6.js";
27
- import "./chunk-CYEPCZN5.js";
28
- import "./chunk-LQ6JI4VH.js";
23
+ import "./chunk-E6BOD3UJ.js";
24
+ import "./chunk-6ZNIUGXB.js";
29
25
  import "./chunk-SANZHXY2.js";
30
- import "./chunk-AER6MT24.js";
31
26
  import "./chunk-EHISUJFN.js";
27
+ import "./chunk-TAPSNIMA.js";
28
+ import "./chunk-YQGHW5ML.js";
29
+ import "./chunk-CYEPCZN5.js";
30
+ import "./chunk-LD53WPMU.js";
32
31
  import "./chunk-CINZGPSJ.js";
32
+ import "./chunk-AER6MT24.js";
33
33
  import "./chunk-ZFXCQPNO.js";
34
34
  import "./chunk-DCWIQFNA.js";
35
35
  import "./chunk-XBZQRZ6G.js";
@@ -71,10 +71,10 @@ import "./chunk-FVQJYWH7.js";
71
71
  import "./chunk-G7D6GZ5J.js";
72
72
  import "./chunk-VF4XKTX3.js";
73
73
  import "./chunk-RGMVMVMF.js";
74
- import "./chunk-IPLYGWQF.js";
75
- import "./chunk-J4EB7DNW.js";
74
+ import "./chunk-KQAFEZQX.js";
76
75
  import "./chunk-WEHSQBFR.js";
77
76
  import "./chunk-X7Y7WX73.js";
77
+ import "./chunk-J4EB7DNW.js";
78
78
  import "./chunk-BJMBJZ2Y.js";
79
79
  import "./chunk-UKJAGEXH.js";
80
80
  import "./chunk-FP2373TW.js";
@@ -1,6 +1,6 @@
1
1
  import { OperationName } from './access-boundary.js';
2
2
  import 'zod';
3
- import './access-service-CKnFdxH-.js';
3
+ import './access-service-DxCpgyVW.js';
4
4
  import './storage.js';
5
5
  import './page-versioning.js';
6
6
  import './consolidation-operator.js';
@@ -22,7 +22,7 @@ import './user-model.js';
22
22
  import './recall-audit-anomaly.js';
23
23
  import './recall-audit.js';
24
24
  import './explicit-capture.js';
25
- import './orchestrator-DvswGK76.js';
25
+ import './orchestrator-CNJCYjZ1.js';
26
26
  import './briefing.js';
27
27
  import './buffer.js';
28
28
  import './transcript.js';
@@ -32,6 +32,9 @@ import './model-registry.js';
32
32
  import './local-llm.js';
33
33
  import './fallback-llm.js';
34
34
  import './resolve-provider-secret.js';
35
+ import './orchestration/maintenance.js';
36
+ import './namespaces/search.js';
37
+ import './catalog-BEWLjdOr.js';
35
38
  import './live-connectors-runner.js';
36
39
  import './framework-CNDn2164.js';
37
40
  import './relevance.js';
@@ -54,8 +57,6 @@ import './conversation-index/backend.js';
54
57
  import './conversation-index/chunker.js';
55
58
  import './faiss-adapter-BHecI1fF.js';
56
59
  import './runtime/child-process.js';
57
- import './catalog-BEWLjdOr.js';
58
- import './namespaces/search.js';
59
60
  import './shared-context/manager.js';
60
61
  import './compounding/engine.js';
61
62
  import './policy-runtime.js';
@@ -27,6 +27,7 @@ var MCP_TOOLS = [
27
27
  { tool: "memory_store", operation: "memory_store" },
28
28
  { tool: "coding_decision", operation: "coding_decision" },
29
29
  { tool: "coding_architecture", operation: "coding_architecture" },
30
+ { tool: "coding_delta", operation: "coding_delta" },
30
31
  { tool: "suggestion_submit", operation: null },
31
32
  { tool: "entity_get", operation: null },
32
33
  { tool: "review_queue_list", operation: null },
@@ -117,6 +118,7 @@ var HTTP_ROUTES = [
117
118
  { method: "POST", pathname: "/engram/v1/memories", operation: "memory_store" },
118
119
  { method: "POST", pathname: "/engram/v1/coding/decisions", operation: "coding_decision" },
119
120
  { method: "POST", pathname: "/engram/v1/coding/architecture", operation: "coding_architecture" },
121
+ { method: "POST", pathname: "/engram/v1/coding/delta", operation: "coding_delta" },
120
122
  { method: "POST", pathname: "/engram/v1/suggestions", operation: null },
121
123
  { method: "GET", pathname: "/engram/v1/memories", operation: null },
122
124
  { method: "GET", pathname: "/engram/v1/memories/:id", operation: "memory_get" },
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/access-surface-catalog.ts"],"sourcesContent":["/**\n * Static inventory of every handler on the MCP and HTTP access surfaces, with\n * its migration status against the access boundary (issue #1525).\n *\n * The fitness test (`access-surface-catalog.test.ts`) walks this catalog,\n * checks each entry against the live registry, and counts unmigrated handlers.\n * The ratchet (`scripts/check-ratchets.mjs`) reads this file and counts\n * `operation: null` entries so the unmigrated count can only decrease.\n *\n * WHEN MIGRATING A HANDLER (follow-up PRs):\n * 1. Add the operation to `access-operations.ts` via `defineOperation`.\n * 2. Flip its entry here from `operation: null` to `operation: \"<name>\"`.\n * 3. Delete the surface-local validation the handler used to do.\n * 4. Run `node scripts/check-ratchets.mjs --update` to ratchet the count\n * down — the improvement is recorded in `scripts/ratchet-baseline.json`.\n *\n * WHEN ADDING A NEW HANDLER:\n * 1. Add the entry here with `operation: null` (the fitness test will fail\n * until you either migrate it or acknowledge it as unmigrated).\n * 2. Migrate it in the same PR if it carries user input — the boundary's\n * whole point is that no new handler bypasses it.\n */\n\nimport type { OperationName } from \"./access-boundary.js\";\n\n/**\n * One row per MCP tool, keyed by the canonical SHORT name (no `engram.`/\n * `remnic.` prefix — both aliases dispatch to the same operation). The name\n * MUST match the tool's short suffix as advertised by `tools/list`.\n */\nexport interface McpToolEntry {\n readonly tool: string;\n readonly operation: OperationName | null;\n}\n\n/**\n * One row per HTTP route that invokes an access-service method. Routes that\n * only serve static assets, SSE streams, or admin console HTML are excluded —\n * they don't carry user-validated request envelopes into the facade.\n */\nexport interface HttpRouteEntry {\n readonly method: \"GET\" | \"POST\" | \"PUT\" | \"PATCH\" | \"DELETE\";\n readonly pathname: string;\n readonly operation: OperationName | null;\n}\n\n// Each tool below corresponds 1:1 to an `engram.*` definition in\n// `EngramMcpServer.tools` (access-mcp.ts). The fitness test asserts the live\n// `tools/list` response matches this list by short name, so a new tool cannot\n// land without either migrating it or acknowledging the unmigrated count.\nexport const MCP_TOOLS: readonly McpToolEntry[] = [\n { tool: \"recall\", operation: null },\n { tool: \"recall_explain\", operation: null },\n { tool: \"set_coding_context\", operation: null },\n { tool: \"recall_tier_explain\", operation: null },\n { tool: \"recall_xray\", operation: null },\n { tool: \"wearables_status\", operation: null },\n { tool: \"wearables_sync\", operation: null },\n { tool: \"transcript_day\", operation: null },\n { tool: \"transcript_search\", operation: null },\n { tool: \"transcript_memories\", operation: null },\n { tool: \"action_confidence\", operation: null },\n { tool: \"chatgpt_memory_inspector\", operation: null },\n { tool: \"day_summary\", operation: null },\n { tool: \"capsule_export\", operation: null },\n { tool: \"capsule_import\", operation: null },\n { tool: \"capsule_list\", operation: null },\n { tool: \"memory_governance_run\", operation: null },\n { tool: \"procedure_mining_run\", operation: null },\n { tool: \"pattern_reinforcement_run\", operation: null },\n { tool: \"procedural_stats\", operation: null },\n { tool: \"memory_get\", operation: \"memory_get\" },\n { tool: \"memory_timeline\", operation: null },\n { tool: \"memory_store\", operation: \"memory_store\" },\n { tool: \"coding_decision\", operation: \"coding_decision\" },\n { tool: \"coding_architecture\", operation: \"coding_architecture\" },\n { tool: \"suggestion_submit\", operation: null },\n { tool: \"entity_get\", operation: null },\n { tool: \"review_queue_list\", operation: null },\n { tool: \"observe\", operation: null },\n { tool: \"lcm_search\", operation: null },\n { tool: \"lcm_compaction_flush\", operation: null },\n { tool: \"lcm_compaction_record\", operation: null },\n { tool: \"continuity_audit_generate\", operation: null },\n { tool: \"continuity_incident_open\", operation: null },\n { tool: \"continuity_incident_close\", operation: null },\n { tool: \"continuity_incident_list\", operation: null },\n { tool: \"continuity_loop_add_or_update\", operation: null },\n { tool: \"continuity_loop_review\", operation: null },\n { tool: \"identity_anchor_get\", operation: null },\n { tool: \"identity_anchor_update\", operation: null },\n { tool: \"memory_identity\", operation: null },\n { tool: \"work_task\", operation: null },\n { tool: \"work_project\", operation: null },\n { tool: \"work_board\", operation: null },\n { tool: \"shared_context_write_output\", operation: null },\n { tool: \"shared_feedback_record\", operation: null },\n { tool: \"shared_priorities_append\", operation: null },\n { tool: \"shared_context_cross_signals_run\", operation: null },\n { tool: \"shared_context_curate_daily\", operation: null },\n { tool: \"compounding_weekly_synthesize\", operation: null },\n { tool: \"compounding_promote_candidate\", operation: null },\n { tool: \"compression_guidelines_optimize\", operation: null },\n { tool: \"compression_guidelines_activate\", operation: null },\n { tool: \"memory_search\", operation: \"memory_search\" },\n { tool: \"memory_profile\", operation: null },\n { tool: \"memory_entities_list\", operation: null },\n { tool: \"memory_questions\", operation: null },\n { tool: \"memory_last_recall\", operation: null },\n { tool: \"memory_intent_debug\", operation: null },\n { tool: \"memory_qmd_debug\", operation: null },\n { tool: \"memory_graph_explain\", operation: null },\n { tool: \"graph_snapshot\", operation: null },\n { tool: \"memory_feedback\", operation: null },\n { tool: \"memory_promote\", operation: null },\n { tool: \"memory_outcome\", operation: null },\n { tool: \"memory_action_apply\", operation: null },\n { tool: \"context_checkpoint\", operation: null },\n { tool: \"briefing\", operation: null },\n { tool: \"review_list\", operation: null },\n { tool: \"review_resolve\", operation: null },\n { tool: \"contradiction_scan_run\", operation: null },\n { tool: \"memory_summarize_hourly\", operation: null },\n { tool: \"conversation_index_update\", operation: null },\n { tool: \"profiling_report\", operation: null },\n { tool: \"graph_edge_decay_run\", operation: null },\n { tool: \"live_connectors_run\", operation: null },\n { tool: \"peer_list\", operation: null },\n { tool: \"peer_get\", operation: null },\n { tool: \"peer_set\", operation: null },\n { tool: \"peer_delete\", operation: null },\n { tool: \"peer_profile_get\", operation: null },\n { tool: \"peer_forget\", operation: null },\n { tool: \"console_state\", operation: null },\n { tool: \"dreams_status\", operation: null },\n { tool: \"dreams_run\", operation: null },\n];\n\n// Each route below corresponds 1:1 to a service-invoking route branch in\n// `EngramAccessHttpServer.handle` (access-http.ts). Pathname patterns use\n// `:param` for path segments. The fitness test asserts each entry resolves\n// against the catalog so a new service route cannot land without either\n// migrating it or acknowledging the unmigrated count. Infrastructure probes\n// (health, adapters, the /mcp delegate, admin console, SSE-only endpoints)\n// carry no user request envelope and are intentionally excluded.\nexport const HTTP_ROUTES: readonly HttpRouteEntry[] = [\n { method: \"POST\", pathname: \"/engram/v1/recall\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/coding-context\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/capsules/export\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/capsules/import\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/offline-sync/snapshot\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/offline-sync/snapshot-stream\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/offline-sync/snapshot\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/offline-sync/files\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/offline-sync/file-content\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/offline-sync/apply-file-content\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/offline-sync/apply\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/recall/explain\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/action-confidence\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/recall/tier-explain\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/recall/xray\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/wearables/status\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/wearables/sync\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/wearables/transcript\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/wearables/transcripts/search\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/wearables/memories\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/observe\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/lcm/search\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/lcm/compaction/flush\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/lcm/compaction/record\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/lcm/status\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/memories\", operation: \"memory_store\" },\n { method: \"POST\", pathname: \"/engram/v1/coding/decisions\", operation: \"coding_decision\" },\n { method: \"POST\", pathname: \"/engram/v1/coding/architecture\", operation: \"coding_architecture\" },\n { method: \"POST\", pathname: \"/engram/v1/suggestions\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/memories\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/memories/:id\", operation: \"memory_get\" },\n { method: \"GET\", pathname: \"/engram/v1/memories/:id/timeline\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/entities\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/entities/:id\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/review-queue\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/maintenance\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/quality\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/trust-zones/status\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/procedural/stats\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/trust-zones/records\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/review-disposition\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/trust-zones/promote\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/trust-zones/demo-seed\", operation: null },\n { method: \"POST\", pathname: \"/v1/citations/observed\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/review/contradictions\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/review/contradictions/:id\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/review/resolve\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/graph/snapshot\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/contradiction-scan\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/graph/events\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/console/state\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/peers\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/peers/:id/profile\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/peers/:id\", operation: null },\n { method: \"PUT\", pathname: \"/engram/v1/peers/:id\", operation: null },\n { method: \"DELETE\", pathname: \"/engram/v1/peers/:id\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/dreams/status\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/dreams/run\", operation: null },\n];\n\n/**\n * Total unmigrated-handler count across both surfaces. The ratchet baseline\n * tracks this number; it may only decrease. `access-surface-catalog.test.ts`\n * recomputes it from the live catalog and asserts equality, so a catalog edit\n * without a baseline bump (or, ideally, a migration) fails the gate.\n */\nexport function countUnmigratedHandlers(): number {\n let count = 0;\n for (const entry of MCP_TOOLS) {\n if (entry.operation === null) count += 1;\n }\n for (const entry of HTTP_ROUTES) {\n if (entry.operation === null) count += 1;\n }\n return count;\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/access-surface-catalog.ts"],"sourcesContent":["/**\n * Static inventory of every handler on the MCP and HTTP access surfaces, with\n * its migration status against the access boundary (issue #1525).\n *\n * The fitness test (`access-surface-catalog.test.ts`) walks this catalog,\n * checks each entry against the live registry, and counts unmigrated handlers.\n * The ratchet (`scripts/check-ratchets.mjs`) reads this file and counts\n * `operation: null` entries so the unmigrated count can only decrease.\n *\n * WHEN MIGRATING A HANDLER (follow-up PRs):\n * 1. Add the operation to `access-operations.ts` via `defineOperation`.\n * 2. Flip its entry here from `operation: null` to `operation: \"<name>\"`.\n * 3. Delete the surface-local validation the handler used to do.\n * 4. Run `node scripts/check-ratchets.mjs --update` to ratchet the count\n * down — the improvement is recorded in `scripts/ratchet-baseline.json`.\n *\n * WHEN ADDING A NEW HANDLER:\n * 1. Add the entry here with `operation: null` (the fitness test will fail\n * until you either migrate it or acknowledge it as unmigrated).\n * 2. Migrate it in the same PR if it carries user input — the boundary's\n * whole point is that no new handler bypasses it.\n */\n\nimport type { OperationName } from \"./access-boundary.js\";\n\n/**\n * One row per MCP tool, keyed by the canonical SHORT name (no `engram.`/\n * `remnic.` prefix — both aliases dispatch to the same operation). The name\n * MUST match the tool's short suffix as advertised by `tools/list`.\n */\nexport interface McpToolEntry {\n readonly tool: string;\n readonly operation: OperationName | null;\n}\n\n/**\n * One row per HTTP route that invokes an access-service method. Routes that\n * only serve static assets, SSE streams, or admin console HTML are excluded —\n * they don't carry user-validated request envelopes into the facade.\n */\nexport interface HttpRouteEntry {\n readonly method: \"GET\" | \"POST\" | \"PUT\" | \"PATCH\" | \"DELETE\";\n readonly pathname: string;\n readonly operation: OperationName | null;\n}\n\n// Each tool below corresponds 1:1 to an `engram.*` definition in\n// `EngramMcpServer.tools` (access-mcp.ts). The fitness test asserts the live\n// `tools/list` response matches this list by short name, so a new tool cannot\n// land without either migrating it or acknowledging the unmigrated count.\nexport const MCP_TOOLS: readonly McpToolEntry[] = [\n { tool: \"recall\", operation: null },\n { tool: \"recall_explain\", operation: null },\n { tool: \"set_coding_context\", operation: null },\n { tool: \"recall_tier_explain\", operation: null },\n { tool: \"recall_xray\", operation: null },\n { tool: \"wearables_status\", operation: null },\n { tool: \"wearables_sync\", operation: null },\n { tool: \"transcript_day\", operation: null },\n { tool: \"transcript_search\", operation: null },\n { tool: \"transcript_memories\", operation: null },\n { tool: \"action_confidence\", operation: null },\n { tool: \"chatgpt_memory_inspector\", operation: null },\n { tool: \"day_summary\", operation: null },\n { tool: \"capsule_export\", operation: null },\n { tool: \"capsule_import\", operation: null },\n { tool: \"capsule_list\", operation: null },\n { tool: \"memory_governance_run\", operation: null },\n { tool: \"procedure_mining_run\", operation: null },\n { tool: \"pattern_reinforcement_run\", operation: null },\n { tool: \"procedural_stats\", operation: null },\n { tool: \"memory_get\", operation: \"memory_get\" },\n { tool: \"memory_timeline\", operation: null },\n { tool: \"memory_store\", operation: \"memory_store\" },\n { tool: \"coding_decision\", operation: \"coding_decision\" },\n { tool: \"coding_architecture\", operation: \"coding_architecture\" },\n { tool: \"coding_delta\", operation: \"coding_delta\" },\n { tool: \"suggestion_submit\", operation: null },\n { tool: \"entity_get\", operation: null },\n { tool: \"review_queue_list\", operation: null },\n { tool: \"observe\", operation: null },\n { tool: \"lcm_search\", operation: null },\n { tool: \"lcm_compaction_flush\", operation: null },\n { tool: \"lcm_compaction_record\", operation: null },\n { tool: \"continuity_audit_generate\", operation: null },\n { tool: \"continuity_incident_open\", operation: null },\n { tool: \"continuity_incident_close\", operation: null },\n { tool: \"continuity_incident_list\", operation: null },\n { tool: \"continuity_loop_add_or_update\", operation: null },\n { tool: \"continuity_loop_review\", operation: null },\n { tool: \"identity_anchor_get\", operation: null },\n { tool: \"identity_anchor_update\", operation: null },\n { tool: \"memory_identity\", operation: null },\n { tool: \"work_task\", operation: null },\n { tool: \"work_project\", operation: null },\n { tool: \"work_board\", operation: null },\n { tool: \"shared_context_write_output\", operation: null },\n { tool: \"shared_feedback_record\", operation: null },\n { tool: \"shared_priorities_append\", operation: null },\n { tool: \"shared_context_cross_signals_run\", operation: null },\n { tool: \"shared_context_curate_daily\", operation: null },\n { tool: \"compounding_weekly_synthesize\", operation: null },\n { tool: \"compounding_promote_candidate\", operation: null },\n { tool: \"compression_guidelines_optimize\", operation: null },\n { tool: \"compression_guidelines_activate\", operation: null },\n { tool: \"memory_search\", operation: \"memory_search\" },\n { tool: \"memory_profile\", operation: null },\n { tool: \"memory_entities_list\", operation: null },\n { tool: \"memory_questions\", operation: null },\n { tool: \"memory_last_recall\", operation: null },\n { tool: \"memory_intent_debug\", operation: null },\n { tool: \"memory_qmd_debug\", operation: null },\n { tool: \"memory_graph_explain\", operation: null },\n { tool: \"graph_snapshot\", operation: null },\n { tool: \"memory_feedback\", operation: null },\n { tool: \"memory_promote\", operation: null },\n { tool: \"memory_outcome\", operation: null },\n { tool: \"memory_action_apply\", operation: null },\n { tool: \"context_checkpoint\", operation: null },\n { tool: \"briefing\", operation: null },\n { tool: \"review_list\", operation: null },\n { tool: \"review_resolve\", operation: null },\n { tool: \"contradiction_scan_run\", operation: null },\n { tool: \"memory_summarize_hourly\", operation: null },\n { tool: \"conversation_index_update\", operation: null },\n { tool: \"profiling_report\", operation: null },\n { tool: \"graph_edge_decay_run\", operation: null },\n { tool: \"live_connectors_run\", operation: null },\n { tool: \"peer_list\", operation: null },\n { tool: \"peer_get\", operation: null },\n { tool: \"peer_set\", operation: null },\n { tool: \"peer_delete\", operation: null },\n { tool: \"peer_profile_get\", operation: null },\n { tool: \"peer_forget\", operation: null },\n { tool: \"console_state\", operation: null },\n { tool: \"dreams_status\", operation: null },\n { tool: \"dreams_run\", operation: null },\n];\n\n// Each route below corresponds 1:1 to a service-invoking route branch in\n// `EngramAccessHttpServer.handle` (access-http.ts). Pathname patterns use\n// `:param` for path segments. The fitness test asserts each entry resolves\n// against the catalog so a new service route cannot land without either\n// migrating it or acknowledging the unmigrated count. Infrastructure probes\n// (health, adapters, the /mcp delegate, admin console, SSE-only endpoints)\n// carry no user request envelope and are intentionally excluded.\nexport const HTTP_ROUTES: readonly HttpRouteEntry[] = [\n { method: \"POST\", pathname: \"/engram/v1/recall\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/coding-context\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/capsules/export\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/capsules/import\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/offline-sync/snapshot\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/offline-sync/snapshot-stream\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/offline-sync/snapshot\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/offline-sync/files\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/offline-sync/file-content\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/offline-sync/apply-file-content\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/offline-sync/apply\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/recall/explain\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/action-confidence\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/recall/tier-explain\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/recall/xray\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/wearables/status\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/wearables/sync\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/wearables/transcript\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/wearables/transcripts/search\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/wearables/memories\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/observe\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/lcm/search\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/lcm/compaction/flush\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/lcm/compaction/record\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/lcm/status\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/memories\", operation: \"memory_store\" },\n { method: \"POST\", pathname: \"/engram/v1/coding/decisions\", operation: \"coding_decision\" },\n { method: \"POST\", pathname: \"/engram/v1/coding/architecture\", operation: \"coding_architecture\" },\n { method: \"POST\", pathname: \"/engram/v1/coding/delta\", operation: \"coding_delta\" },\n { method: \"POST\", pathname: \"/engram/v1/suggestions\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/memories\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/memories/:id\", operation: \"memory_get\" },\n { method: \"GET\", pathname: \"/engram/v1/memories/:id/timeline\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/entities\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/entities/:id\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/review-queue\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/maintenance\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/quality\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/trust-zones/status\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/procedural/stats\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/trust-zones/records\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/review-disposition\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/trust-zones/promote\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/trust-zones/demo-seed\", operation: null },\n { method: \"POST\", pathname: \"/v1/citations/observed\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/review/contradictions\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/review/contradictions/:id\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/review/resolve\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/graph/snapshot\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/contradiction-scan\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/graph/events\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/console/state\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/peers\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/peers/:id/profile\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/peers/:id\", operation: null },\n { method: \"PUT\", pathname: \"/engram/v1/peers/:id\", operation: null },\n { method: \"DELETE\", pathname: \"/engram/v1/peers/:id\", operation: null },\n { method: \"GET\", pathname: \"/engram/v1/dreams/status\", operation: null },\n { method: \"POST\", pathname: \"/engram/v1/dreams/run\", operation: null },\n];\n\n/**\n * Total unmigrated-handler count across both surfaces. The ratchet baseline\n * tracks this number; it may only decrease. `access-surface-catalog.test.ts`\n * recomputes it from the live catalog and asserts equality, so a catalog edit\n * without a baseline bump (or, ideally, a migration) fails the gate.\n */\nexport function countUnmigratedHandlers(): number {\n let count = 0;\n for (const entry of MCP_TOOLS) {\n if (entry.operation === null) count += 1;\n }\n for (const entry of HTTP_ROUTES) {\n if (entry.operation === null) count += 1;\n }\n return count;\n}\n"],"mappings":";;;AAkDO,IAAM,YAAqC;AAAA,EAChD,EAAE,MAAM,UAAU,WAAW,KAAK;AAAA,EAClC,EAAE,MAAM,kBAAkB,WAAW,KAAK;AAAA,EAC1C,EAAE,MAAM,sBAAsB,WAAW,KAAK;AAAA,EAC9C,EAAE,MAAM,uBAAuB,WAAW,KAAK;AAAA,EAC/C,EAAE,MAAM,eAAe,WAAW,KAAK;AAAA,EACvC,EAAE,MAAM,oBAAoB,WAAW,KAAK;AAAA,EAC5C,EAAE,MAAM,kBAAkB,WAAW,KAAK;AAAA,EAC1C,EAAE,MAAM,kBAAkB,WAAW,KAAK;AAAA,EAC1C,EAAE,MAAM,qBAAqB,WAAW,KAAK;AAAA,EAC7C,EAAE,MAAM,uBAAuB,WAAW,KAAK;AAAA,EAC/C,EAAE,MAAM,qBAAqB,WAAW,KAAK;AAAA,EAC7C,EAAE,MAAM,4BAA4B,WAAW,KAAK;AAAA,EACpD,EAAE,MAAM,eAAe,WAAW,KAAK;AAAA,EACvC,EAAE,MAAM,kBAAkB,WAAW,KAAK;AAAA,EAC1C,EAAE,MAAM,kBAAkB,WAAW,KAAK;AAAA,EAC1C,EAAE,MAAM,gBAAgB,WAAW,KAAK;AAAA,EACxC,EAAE,MAAM,yBAAyB,WAAW,KAAK;AAAA,EACjD,EAAE,MAAM,wBAAwB,WAAW,KAAK;AAAA,EAChD,EAAE,MAAM,6BAA6B,WAAW,KAAK;AAAA,EACrD,EAAE,MAAM,oBAAoB,WAAW,KAAK;AAAA,EAC5C,EAAE,MAAM,cAAc,WAAW,aAAa;AAAA,EAC9C,EAAE,MAAM,mBAAmB,WAAW,KAAK;AAAA,EAC3C,EAAE,MAAM,gBAAgB,WAAW,eAAe;AAAA,EAClD,EAAE,MAAM,mBAAmB,WAAW,kBAAkB;AAAA,EACxD,EAAE,MAAM,uBAAuB,WAAW,sBAAsB;AAAA,EAChE,EAAE,MAAM,gBAAgB,WAAW,eAAe;AAAA,EAClD,EAAE,MAAM,qBAAqB,WAAW,KAAK;AAAA,EAC7C,EAAE,MAAM,cAAc,WAAW,KAAK;AAAA,EACtC,EAAE,MAAM,qBAAqB,WAAW,KAAK;AAAA,EAC7C,EAAE,MAAM,WAAW,WAAW,KAAK;AAAA,EACnC,EAAE,MAAM,cAAc,WAAW,KAAK;AAAA,EACtC,EAAE,MAAM,wBAAwB,WAAW,KAAK;AAAA,EAChD,EAAE,MAAM,yBAAyB,WAAW,KAAK;AAAA,EACjD,EAAE,MAAM,6BAA6B,WAAW,KAAK;AAAA,EACrD,EAAE,MAAM,4BAA4B,WAAW,KAAK;AAAA,EACpD,EAAE,MAAM,6BAA6B,WAAW,KAAK;AAAA,EACrD,EAAE,MAAM,4BAA4B,WAAW,KAAK;AAAA,EACpD,EAAE,MAAM,iCAAiC,WAAW,KAAK;AAAA,EACzD,EAAE,MAAM,0BAA0B,WAAW,KAAK;AAAA,EAClD,EAAE,MAAM,uBAAuB,WAAW,KAAK;AAAA,EAC/C,EAAE,MAAM,0BAA0B,WAAW,KAAK;AAAA,EAClD,EAAE,MAAM,mBAAmB,WAAW,KAAK;AAAA,EAC3C,EAAE,MAAM,aAAa,WAAW,KAAK;AAAA,EACrC,EAAE,MAAM,gBAAgB,WAAW,KAAK;AAAA,EACxC,EAAE,MAAM,cAAc,WAAW,KAAK;AAAA,EACtC,EAAE,MAAM,+BAA+B,WAAW,KAAK;AAAA,EACvD,EAAE,MAAM,0BAA0B,WAAW,KAAK;AAAA,EAClD,EAAE,MAAM,4BAA4B,WAAW,KAAK;AAAA,EACpD,EAAE,MAAM,oCAAoC,WAAW,KAAK;AAAA,EAC5D,EAAE,MAAM,+BAA+B,WAAW,KAAK;AAAA,EACvD,EAAE,MAAM,iCAAiC,WAAW,KAAK;AAAA,EACzD,EAAE,MAAM,iCAAiC,WAAW,KAAK;AAAA,EACzD,EAAE,MAAM,mCAAmC,WAAW,KAAK;AAAA,EAC3D,EAAE,MAAM,mCAAmC,WAAW,KAAK;AAAA,EAC3D,EAAE,MAAM,iBAAiB,WAAW,gBAAgB;AAAA,EACpD,EAAE,MAAM,kBAAkB,WAAW,KAAK;AAAA,EAC1C,EAAE,MAAM,wBAAwB,WAAW,KAAK;AAAA,EAChD,EAAE,MAAM,oBAAoB,WAAW,KAAK;AAAA,EAC5C,EAAE,MAAM,sBAAsB,WAAW,KAAK;AAAA,EAC9C,EAAE,MAAM,uBAAuB,WAAW,KAAK;AAAA,EAC/C,EAAE,MAAM,oBAAoB,WAAW,KAAK;AAAA,EAC5C,EAAE,MAAM,wBAAwB,WAAW,KAAK;AAAA,EAChD,EAAE,MAAM,kBAAkB,WAAW,KAAK;AAAA,EAC1C,EAAE,MAAM,mBAAmB,WAAW,KAAK;AAAA,EAC3C,EAAE,MAAM,kBAAkB,WAAW,KAAK;AAAA,EAC1C,EAAE,MAAM,kBAAkB,WAAW,KAAK;AAAA,EAC1C,EAAE,MAAM,uBAAuB,WAAW,KAAK;AAAA,EAC/C,EAAE,MAAM,sBAAsB,WAAW,KAAK;AAAA,EAC9C,EAAE,MAAM,YAAY,WAAW,KAAK;AAAA,EACpC,EAAE,MAAM,eAAe,WAAW,KAAK;AAAA,EACvC,EAAE,MAAM,kBAAkB,WAAW,KAAK;AAAA,EAC1C,EAAE,MAAM,0BAA0B,WAAW,KAAK;AAAA,EAClD,EAAE,MAAM,2BAA2B,WAAW,KAAK;AAAA,EACnD,EAAE,MAAM,6BAA6B,WAAW,KAAK;AAAA,EACrD,EAAE,MAAM,oBAAoB,WAAW,KAAK;AAAA,EAC5C,EAAE,MAAM,wBAAwB,WAAW,KAAK;AAAA,EAChD,EAAE,MAAM,uBAAuB,WAAW,KAAK;AAAA,EAC/C,EAAE,MAAM,aAAa,WAAW,KAAK;AAAA,EACrC,EAAE,MAAM,YAAY,WAAW,KAAK;AAAA,EACpC,EAAE,MAAM,YAAY,WAAW,KAAK;AAAA,EACpC,EAAE,MAAM,eAAe,WAAW,KAAK;AAAA,EACvC,EAAE,MAAM,oBAAoB,WAAW,KAAK;AAAA,EAC5C,EAAE,MAAM,eAAe,WAAW,KAAK;AAAA,EACvC,EAAE,MAAM,iBAAiB,WAAW,KAAK;AAAA,EACzC,EAAE,MAAM,iBAAiB,WAAW,KAAK;AAAA,EACzC,EAAE,MAAM,cAAc,WAAW,KAAK;AACxC;AASO,IAAM,cAAyC;AAAA,EACpD,EAAE,QAAQ,QAAQ,UAAU,qBAAqB,WAAW,KAAK;AAAA,EACjE,EAAE,QAAQ,QAAQ,UAAU,6BAA6B,WAAW,KAAK;AAAA,EACzE,EAAE,QAAQ,QAAQ,UAAU,8BAA8B,WAAW,KAAK;AAAA,EAC1E,EAAE,QAAQ,QAAQ,UAAU,8BAA8B,WAAW,KAAK;AAAA,EAC1E,EAAE,QAAQ,OAAO,UAAU,oCAAoC,WAAW,KAAK;AAAA,EAC/E,EAAE,QAAQ,OAAO,UAAU,2CAA2C,WAAW,KAAK;AAAA,EACtF,EAAE,QAAQ,QAAQ,UAAU,oCAAoC,WAAW,KAAK;AAAA,EAChF,EAAE,QAAQ,QAAQ,UAAU,iCAAiC,WAAW,KAAK;AAAA,EAC7E,EAAE,QAAQ,QAAQ,UAAU,wCAAwC,WAAW,KAAK;AAAA,EACpF,EAAE,QAAQ,QAAQ,UAAU,8CAA8C,WAAW,KAAK;AAAA,EAC1F,EAAE,QAAQ,QAAQ,UAAU,iCAAiC,WAAW,KAAK;AAAA,EAC7E,EAAE,QAAQ,QAAQ,UAAU,6BAA6B,WAAW,KAAK;AAAA,EACzE,EAAE,QAAQ,QAAQ,UAAU,gCAAgC,WAAW,KAAK;AAAA,EAC5E,EAAE,QAAQ,OAAO,UAAU,kCAAkC,WAAW,KAAK;AAAA,EAC7E,EAAE,QAAQ,OAAO,UAAU,0BAA0B,WAAW,KAAK;AAAA,EACrE,EAAE,QAAQ,OAAO,UAAU,+BAA+B,WAAW,KAAK;AAAA,EAC1E,EAAE,QAAQ,QAAQ,UAAU,6BAA6B,WAAW,KAAK;AAAA,EACzE,EAAE,QAAQ,OAAO,UAAU,mCAAmC,WAAW,KAAK;AAAA,EAC9E,EAAE,QAAQ,OAAO,UAAU,2CAA2C,WAAW,KAAK;AAAA,EACtF,EAAE,QAAQ,OAAO,UAAU,iCAAiC,WAAW,KAAK;AAAA,EAC5E,EAAE,QAAQ,QAAQ,UAAU,sBAAsB,WAAW,KAAK;AAAA,EAClE,EAAE,QAAQ,QAAQ,UAAU,yBAAyB,WAAW,KAAK;AAAA,EACrE,EAAE,QAAQ,QAAQ,UAAU,mCAAmC,WAAW,KAAK;AAAA,EAC/E,EAAE,QAAQ,QAAQ,UAAU,oCAAoC,WAAW,KAAK;AAAA,EAChF,EAAE,QAAQ,OAAO,UAAU,yBAAyB,WAAW,KAAK;AAAA,EACpE,EAAE,QAAQ,QAAQ,UAAU,uBAAuB,WAAW,eAAe;AAAA,EAC7E,EAAE,QAAQ,QAAQ,UAAU,+BAA+B,WAAW,kBAAkB;AAAA,EACxF,EAAE,QAAQ,QAAQ,UAAU,kCAAkC,WAAW,sBAAsB;AAAA,EAC/F,EAAE,QAAQ,QAAQ,UAAU,2BAA2B,WAAW,eAAe;AAAA,EACjF,EAAE,QAAQ,QAAQ,UAAU,0BAA0B,WAAW,KAAK;AAAA,EACtE,EAAE,QAAQ,OAAO,UAAU,uBAAuB,WAAW,KAAK;AAAA,EAClE,EAAE,QAAQ,OAAO,UAAU,2BAA2B,WAAW,aAAa;AAAA,EAC9E,EAAE,QAAQ,OAAO,UAAU,oCAAoC,WAAW,KAAK;AAAA,EAC/E,EAAE,QAAQ,OAAO,UAAU,uBAAuB,WAAW,KAAK;AAAA,EAClE,EAAE,QAAQ,OAAO,UAAU,2BAA2B,WAAW,KAAK;AAAA,EACtE,EAAE,QAAQ,OAAO,UAAU,2BAA2B,WAAW,KAAK;AAAA,EACtE,EAAE,QAAQ,OAAO,UAAU,0BAA0B,WAAW,KAAK;AAAA,EACrE,EAAE,QAAQ,OAAO,UAAU,sBAAsB,WAAW,KAAK;AAAA,EACjE,EAAE,QAAQ,OAAO,UAAU,iCAAiC,WAAW,KAAK;AAAA,EAC5E,EAAE,QAAQ,OAAO,UAAU,+BAA+B,WAAW,KAAK;AAAA,EAC1E,EAAE,QAAQ,OAAO,UAAU,kCAAkC,WAAW,KAAK;AAAA,EAC7E,EAAE,QAAQ,QAAQ,UAAU,iCAAiC,WAAW,KAAK;AAAA,EAC7E,EAAE,QAAQ,QAAQ,UAAU,kCAAkC,WAAW,KAAK;AAAA,EAC9E,EAAE,QAAQ,QAAQ,UAAU,oCAAoC,WAAW,KAAK;AAAA,EAChF,EAAE,QAAQ,QAAQ,UAAU,0BAA0B,WAAW,KAAK;AAAA,EACtE,EAAE,QAAQ,OAAO,UAAU,oCAAoC,WAAW,KAAK;AAAA,EAC/E,EAAE,QAAQ,OAAO,UAAU,wCAAwC,WAAW,KAAK;AAAA,EACnF,EAAE,QAAQ,QAAQ,UAAU,6BAA6B,WAAW,KAAK;AAAA,EACzE,EAAE,QAAQ,OAAO,UAAU,6BAA6B,WAAW,KAAK;AAAA,EACxE,EAAE,QAAQ,QAAQ,UAAU,iCAAiC,WAAW,KAAK;AAAA,EAC7E,EAAE,QAAQ,OAAO,UAAU,2BAA2B,WAAW,KAAK;AAAA,EACtE,EAAE,QAAQ,OAAO,UAAU,4BAA4B,WAAW,KAAK;AAAA,EACvE,EAAE,QAAQ,OAAO,UAAU,oBAAoB,WAAW,KAAK;AAAA,EAC/D,EAAE,QAAQ,OAAO,UAAU,gCAAgC,WAAW,KAAK;AAAA,EAC3E,EAAE,QAAQ,OAAO,UAAU,wBAAwB,WAAW,KAAK;AAAA,EACnE,EAAE,QAAQ,OAAO,UAAU,wBAAwB,WAAW,KAAK;AAAA,EACnE,EAAE,QAAQ,UAAU,UAAU,wBAAwB,WAAW,KAAK;AAAA,EACtE,EAAE,QAAQ,OAAO,UAAU,4BAA4B,WAAW,KAAK;AAAA,EACvE,EAAE,QAAQ,QAAQ,UAAU,yBAAyB,WAAW,KAAK;AACvE;AAQO,SAAS,0BAAkC;AAChD,MAAI,QAAQ;AACZ,aAAW,SAAS,WAAW;AAC7B,QAAI,MAAM,cAAc,KAAM,UAAS;AAAA,EACzC;AACA,aAAW,SAAS,aAAa;AAC/B,QAAI,MAAM,cAAc,KAAM,UAAS;AAAA,EACzC;AACA,SAAO;AACT;","names":[]}
@@ -1,5 +1,5 @@
1
1
  import { P as PluginConfig } from './types-2NoBoRBM.js';
2
- import { O as Orchestrator } from './orchestrator-DvswGK76.js';
2
+ import { O as Orchestrator } from './orchestrator-CNJCYjZ1.js';
3
3
  import './types-ByK7T3L6.js';
4
4
  import './index-DJ9QWMw-.js';
5
5
  import './briefing.js';
@@ -20,6 +20,9 @@ import './model-registry.js';
20
20
  import './local-llm.js';
21
21
  import './fallback-llm.js';
22
22
  import './resolve-provider-secret.js';
23
+ import './orchestration/maintenance.js';
24
+ import './namespaces/search.js';
25
+ import './catalog-BEWLjdOr.js';
23
26
  import './live-connectors-runner.js';
24
27
  import './framework-CNDn2164.js';
25
28
  import './relevance.js';
@@ -46,8 +49,6 @@ import './conversation-index/backend.js';
46
49
  import './conversation-index/chunker.js';
47
50
  import './faiss-adapter-BHecI1fF.js';
48
51
  import './runtime/child-process.js';
49
- import './catalog-BEWLjdOr.js';
50
- import './namespaces/search.js';
51
52
  import './shared-context/manager.js';
52
53
  import 'zod';
53
54
  import './compounding/engine.js';