@remnic/core 9.3.660 → 9.3.662

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 (180) hide show
  1. package/dist/access-cli.js +10 -10
  2. package/dist/access-http.d.ts +5 -5
  3. package/dist/access-http.js +10 -10
  4. package/dist/access-mcp.d.ts +5 -5
  5. package/dist/access-mcp.js +9 -9
  6. package/dist/{access-service-D_nbpexW.d.ts → access-service-D0SLB4MH.d.ts} +2 -2
  7. package/dist/access-service.d.ts +5 -5
  8. package/dist/access-service.js +8 -8
  9. package/dist/action-confidence.d.ts +1 -1
  10. package/dist/active-memory-bridge.d.ts +1 -1
  11. package/dist/active-recall.d.ts +1 -1
  12. package/dist/behavior-learner.d.ts +1 -1
  13. package/dist/behavior-signals.d.ts +1 -1
  14. package/dist/bootstrap.d.ts +3 -3
  15. package/dist/briefing.d.ts +1 -1
  16. package/dist/buffer-surprise-report.d.ts +1 -1
  17. package/dist/buffer.d.ts +1 -1
  18. package/dist/calibration.d.ts +1 -1
  19. package/dist/causal-behavior.d.ts +1 -1
  20. package/dist/causal-consolidation.d.ts +1 -1
  21. package/dist/{chunk-7H7J3ZWN.js → chunk-2KDQI363.js} +2 -2
  22. package/dist/{chunk-R2EBP6CM.js → chunk-35HP3TGR.js} +5 -5
  23. package/dist/{chunk-FWIROLS6.js → chunk-44VFF3BB.js} +18 -16
  24. package/dist/chunk-44VFF3BB.js.map +1 -0
  25. package/dist/{chunk-OYXVENIS.js → chunk-4KDLCMLK.js} +3 -3
  26. package/dist/{chunk-MO77TWPS.js → chunk-5AYAZN45.js} +2 -2
  27. package/dist/{chunk-7PCZGNG2.js → chunk-6RHNCKHG.js} +113 -24
  28. package/dist/chunk-6RHNCKHG.js.map +1 -0
  29. package/dist/{chunk-RP2U54GG.js → chunk-DFAXGZKI.js} +2 -2
  30. package/dist/{chunk-6G5JEN55.js → chunk-FZC2WSDB.js} +2 -2
  31. package/dist/{chunk-2EVZ5EN6.js → chunk-HSCJYHYV.js} +6 -6
  32. package/dist/{chunk-B57QYSWN.js → chunk-TGOOJCGA.js} +109 -16
  33. package/dist/chunk-TGOOJCGA.js.map +1 -0
  34. package/dist/{chunk-UNLHHTKN.js → chunk-WOQIHC67.js} +10 -2
  35. package/dist/chunk-WOQIHC67.js.map +1 -0
  36. package/dist/{chunk-5PLUC5OB.js → chunk-WSQG37DV.js} +2 -2
  37. package/dist/{chunk-M3VYPE2H.js → chunk-YNQ6DFSV.js} +1 -1
  38. package/dist/chunk-YNQ6DFSV.js.map +1 -0
  39. package/dist/{chunk-256W7AXC.js → chunk-YYQRVNSV.js} +2 -2
  40. package/dist/{chunk-GRYAECRV.js → chunk-ZJH723NM.js} +2 -2
  41. package/dist/{cli-aYxSuPvP.d.ts → cli-C6twwe84.d.ts} +3 -3
  42. package/dist/cli.d.ts +5 -5
  43. package/dist/cli.js +13 -13
  44. package/dist/compounding/engine.d.ts +1 -1
  45. package/dist/compounding/preference-consolidator.d.ts +1 -1
  46. package/dist/compression-optimizer.d.ts +1 -1
  47. package/dist/config.d.ts +1 -1
  48. package/dist/connectors/codex-materialize-runner.d.ts +1 -1
  49. package/dist/connectors/codex-materialize.d.ts +1 -1
  50. package/dist/connectors/index.d.ts +1 -1
  51. package/dist/consolidation-provenance-check.d.ts +1 -1
  52. package/dist/consolidation-undo.d.ts +1 -1
  53. package/dist/contradiction/index.d.ts +1 -1
  54. package/dist/conversation-index/backend.d.ts +1 -1
  55. package/dist/conversation-index/chunker.d.ts +1 -1
  56. package/dist/conversation-index/faiss-adapter.d.ts +1 -1
  57. package/dist/conversation-index/indexer.d.ts +1 -1
  58. package/dist/conversation-index/search.d.ts +1 -1
  59. package/dist/day-summary.d.ts +1 -1
  60. package/dist/delinearize.d.ts +1 -1
  61. package/dist/direct-answer-wiring.d.ts +1 -1
  62. package/dist/direct-answer.d.ts +1 -1
  63. package/dist/embedding-fallback.d.ts +1 -1
  64. package/dist/enrichment/index.d.ts +1 -1
  65. package/dist/entity-retrieval.d.ts +1 -1
  66. package/dist/entity-schema.d.ts +1 -1
  67. package/dist/explicit-capture.d.ts +3 -3
  68. package/dist/extraction-judge-telemetry.d.ts +1 -1
  69. package/dist/extraction-judge-training.d.ts +1 -1
  70. package/dist/extraction-judge.d.ts +1 -1
  71. package/dist/extraction.d.ts +1 -1
  72. package/dist/fallback-llm.d.ts +1 -1
  73. package/dist/identity-continuity.d.ts +1 -1
  74. package/dist/importance.d.ts +1 -1
  75. package/dist/index.d.ts +8 -8
  76. package/dist/index.js +15 -15
  77. package/dist/intent.d.ts +1 -1
  78. package/dist/lcm/engine.d.ts +1 -1
  79. package/dist/lcm/index.d.ts +1 -1
  80. package/dist/lcm/tools.d.ts +1 -1
  81. package/dist/lifecycle.d.ts +1 -1
  82. package/dist/live-connectors-runner.d.ts +1 -1
  83. package/dist/local-llm.d.ts +1 -1
  84. package/dist/maintenance/memory-governance.d.ts +1 -1
  85. package/dist/mcp-memory-inspector-app.d.ts +5 -5
  86. package/dist/memory-action-policy.d.ts +1 -1
  87. package/dist/memory-cache.d.ts +1 -1
  88. package/dist/memory-lifecycle-ledger-utils.d.ts +1 -1
  89. package/dist/memory-projection-store.d.ts +1 -1
  90. package/dist/memory-provenance.d.ts +1 -1
  91. package/dist/memory-worth-outcomes.d.ts +1 -1
  92. package/dist/models-json.d.ts +1 -1
  93. package/dist/namespaces/migrate.d.ts +1 -1
  94. package/dist/namespaces/migrate.js +8 -8
  95. package/dist/namespaces/principal.d.ts +1 -1
  96. package/dist/namespaces/search.d.ts +1 -1
  97. package/dist/namespaces/search.js +7 -7
  98. package/dist/namespaces/storage.d.ts +1 -1
  99. package/dist/native-knowledge.d.ts +1 -1
  100. package/dist/operator-toolkit.d.ts +1 -1
  101. package/dist/operator-toolkit.js +9 -9
  102. package/dist/{orchestrator-D1wcmPNj.d.ts → orchestrator-Cg1UkvmO.d.ts} +2 -2
  103. package/dist/orchestrator.d.ts +3 -3
  104. package/dist/orchestrator.js +9 -9
  105. package/dist/patterns-cli.d.ts +1 -1
  106. package/dist/policy-runtime.d.ts +1 -1
  107. package/dist/qmd-recall-cache.d.ts +1 -1
  108. package/dist/qmd.d.ts +50 -2
  109. package/dist/qmd.js +8 -2
  110. package/dist/recall-disclosure-escalation.d.ts +1 -1
  111. package/dist/recall-explain-renderer.d.ts +2 -1
  112. package/dist/recall-planner-llm.d.ts +1 -1
  113. package/dist/recall-state.d.ts +17 -1
  114. package/dist/recall-state.js +1 -1
  115. package/dist/recall-tag-filter.d.ts +1 -1
  116. package/dist/recall-xray-cli.d.ts +1 -1
  117. package/dist/recall-xray-renderer.d.ts +1 -1
  118. package/dist/recall-xray.d.ts +1 -1
  119. package/dist/resolve-auth-token.d.ts +1 -1
  120. package/dist/retrieval-agents.d.ts +1 -1
  121. package/dist/retrieval-tiers.d.ts +1 -1
  122. package/dist/routing/engine.d.ts +1 -1
  123. package/dist/routing/store.d.ts +1 -1
  124. package/dist/search/embed-helper.d.ts +1 -1
  125. package/dist/search/factory.d.ts +1 -1
  126. package/dist/search/factory.js +6 -6
  127. package/dist/search/index.d.ts +1 -1
  128. package/dist/search/index.js +6 -6
  129. package/dist/search/lancedb-backend.d.ts +1 -1
  130. package/dist/search/lancedb-backend.js +2 -2
  131. package/dist/search/meilisearch-backend.d.ts +1 -1
  132. package/dist/search/meilisearch-backend.js +2 -2
  133. package/dist/search/noop-backend.d.ts +1 -1
  134. package/dist/search/orama-backend.d.ts +1 -1
  135. package/dist/search/orama-backend.js +2 -2
  136. package/dist/search/port.d.ts +21 -2
  137. package/dist/search/port.js +1 -1
  138. package/dist/search/remote-backend.d.ts +1 -1
  139. package/dist/{semantic-consolidation-MWOdNtSE.d.ts → semantic-consolidation-BICZvQ3C.d.ts} +1 -1
  140. package/dist/semantic-consolidation.d.ts +2 -2
  141. package/dist/semantic-rule-verifier.d.ts +1 -1
  142. package/dist/session-observer-bands.d.ts +1 -1
  143. package/dist/session-observer-state.d.ts +1 -1
  144. package/dist/shared-context/manager.d.ts +1 -1
  145. package/dist/signal.d.ts +1 -1
  146. package/dist/storage.d.ts +1 -1
  147. package/dist/summarizer.d.ts +1 -1
  148. package/dist/summary-snapshot.d.ts +1 -1
  149. package/dist/temporal-supersession.d.ts +1 -1
  150. package/dist/temporal-validity.d.ts +1 -1
  151. package/dist/threading.d.ts +1 -1
  152. package/dist/tier-migration.d.ts +1 -1
  153. package/dist/tier-routing.d.ts +1 -1
  154. package/dist/topics.d.ts +1 -1
  155. package/dist/transcript.d.ts +1 -1
  156. package/dist/{types-CgcCpUrf.d.ts → types-D96bCB3C.d.ts} +1 -1
  157. package/dist/types.d.ts +1 -1
  158. package/dist/utility-runtime.d.ts +1 -1
  159. package/package.json +3 -2
  160. package/scripts/build-with-heap.mjs +25 -0
  161. package/src/namespaces/search.ts +16 -0
  162. package/src/orchestrator.ts +144 -3
  163. package/src/qmd.ts +137 -18
  164. package/src/recall-state.ts +47 -21
  165. package/src/search/port.ts +25 -0
  166. package/dist/chunk-7PCZGNG2.js.map +0 -1
  167. package/dist/chunk-B57QYSWN.js.map +0 -1
  168. package/dist/chunk-FWIROLS6.js.map +0 -1
  169. package/dist/chunk-M3VYPE2H.js.map +0 -1
  170. package/dist/chunk-UNLHHTKN.js.map +0 -1
  171. /package/dist/{chunk-7H7J3ZWN.js.map → chunk-2KDQI363.js.map} +0 -0
  172. /package/dist/{chunk-R2EBP6CM.js.map → chunk-35HP3TGR.js.map} +0 -0
  173. /package/dist/{chunk-OYXVENIS.js.map → chunk-4KDLCMLK.js.map} +0 -0
  174. /package/dist/{chunk-MO77TWPS.js.map → chunk-5AYAZN45.js.map} +0 -0
  175. /package/dist/{chunk-RP2U54GG.js.map → chunk-DFAXGZKI.js.map} +0 -0
  176. /package/dist/{chunk-6G5JEN55.js.map → chunk-FZC2WSDB.js.map} +0 -0
  177. /package/dist/{chunk-2EVZ5EN6.js.map → chunk-HSCJYHYV.js.map} +0 -0
  178. /package/dist/{chunk-5PLUC5OB.js.map → chunk-WSQG37DV.js.map} +0 -0
  179. /package/dist/{chunk-256W7AXC.js.map → chunk-YYQRVNSV.js.map} +0 -0
  180. /package/dist/{chunk-GRYAECRV.js.map → chunk-ZJH723NM.js.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  createSearchBackend
3
- } from "./chunk-R2EBP6CM.js";
3
+ } from "./chunk-35HP3TGR.js";
4
4
  import {
5
5
  namespaceIdentityToken,
6
6
  normalizeNamespaceIdentity
@@ -43,6 +43,14 @@ var NamespaceSearchRouter = class {
43
43
  namespaces.map(async (namespace) => {
44
44
  const record = await this.backendRecordFor(namespace);
45
45
  if (!record.available || record.collectionState === "missing") {
46
+ try {
47
+ options.execution?.onDegradation?.({
48
+ backend: "qmd",
49
+ code: "backend_unavailable",
50
+ detail: record.collectionState === "missing" ? `namespace collection missing: ${namespace}` : `namespace backend unavailable: ${namespace}`
51
+ });
52
+ } catch {
53
+ }
46
54
  return { namespace, results: [] };
47
55
  }
48
56
  const backendLimit = backendSearchLimit(record, maxResults);
@@ -393,4 +401,4 @@ export {
393
401
  namespaceCollectionName,
394
402
  NamespaceSearchRouter
395
403
  };
396
- //# sourceMappingURL=chunk-UNLHHTKN.js.map
404
+ //# sourceMappingURL=chunk-WOQIHC67.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/namespaces/search.ts"],"sourcesContent":["import path from \"node:path\";\nimport type { PluginConfig, QmdSearchResult } from \"../types.js\";\nimport type {\n SearchBackend,\n SearchExecutionOptions,\n SearchQueryOptions,\n} from \"../search/port.js\";\nimport { createSearchBackend } from \"../search/factory.js\";\nimport { namespaceIdentityToken, normalizeNamespaceIdentity } from \"./identity.js\";\n\nconst NESTED_NAMESPACE_FILTER_OVERFETCH_FACTOR = 4;\nconst NESTED_NAMESPACE_FILTER_OVERFETCH_MIN = 50;\n\nexport function namespaceCollectionName(\n baseCollection: string,\n namespace: string,\n options?: {\n defaultNamespace?: string;\n useLegacyDefaultCollection?: boolean;\n },\n): string {\n const trimmed = normalizeNamespaceIdentity(namespace);\n const defaultNamespace = normalizeNamespaceIdentity(options?.defaultNamespace ?? \"\") || \"default\";\n if (\n options?.useLegacyDefaultCollection === true &&\n trimmed === defaultNamespace\n ) {\n return baseCollection;\n }\n\n return `${baseCollection}--${namespaceIdentityToken(trimmed || defaultNamespace)}`;\n}\n\ntype StorageRouterLike = {\n storageFor(namespace: string): Promise<{ dir: string }>;\n};\n\ntype NamespaceBackendRecord = {\n backend: SearchBackend;\n collection: string;\n memoryDir: string;\n available: boolean;\n collectionState: CollectionState;\n filtersNestedNamespaces: boolean;\n};\n\nexport interface NamespaceUpdateResult {\n backendCount: number;\n eligibleNamespaces: string[];\n}\n\nexport type CollectionState = \"present\" | \"missing\" | \"unknown\" | \"skipped\";\n\nexport interface NamespaceSearchHealth {\n collection: string;\n memoryDir: string;\n available: boolean;\n collectionState: CollectionState;\n debugStatus: string;\n installedVersion: string | null;\n supportedVersion: string | null;\n supported: boolean | null;\n upgradeAvailable: boolean | null;\n doctorAvailable: boolean | null;\n daemonMode: boolean | null;\n}\n\ntype NamespaceScopedSearchConfig = PluginConfig & {\n hostEmbeddingProviderScope?: string;\n};\n\ntype BackendRecordOptions = {\n autoCreateCollection: boolean;\n abortAsUnavailable: boolean;\n failOpenMissingGuardedCollection: boolean;\n};\n\nexport class NamespaceSearchRouter {\n private readonly cache = new Map<string, Promise<NamespaceBackendRecord>>();\n\n constructor(\n private readonly config: PluginConfig,\n private readonly storageRouter: StorageRouterLike,\n private readonly createBackend: (config: PluginConfig) => SearchBackend = createSearchBackend,\n ) {}\n\n async collectionForNamespace(namespace: string): Promise<string> {\n return (await this.backendRecordFor(namespace)).collection;\n }\n\n async searchAcrossNamespaces(options: {\n query: string;\n namespaces: string[];\n maxResults?: number;\n mode?: \"search\" | \"hybrid\" | \"bm25\" | \"vector\";\n searchOptions?: SearchQueryOptions;\n execution?: SearchExecutionOptions;\n }): Promise<QmdSearchResult[]> {\n const query = options.query.trim();\n if (!query) return [];\n const maxResults = Math.max(0, Math.floor(options.maxResults ?? this.config.qmdMaxResults));\n if (maxResults === 0) return [];\n\n const method = options.mode ?? \"search\";\n const namespaces = Array.from(new Set(options.namespaces.map((value) => value.trim()).filter(Boolean)));\n if (namespaces.length === 0) return [];\n\n const resultsByNamespace = await Promise.all(\n namespaces.map(async (namespace) => {\n const record = await this.backendRecordFor(namespace);\n if (!record.available || record.collectionState === \"missing\") {\n // A per-namespace backend that is unavailable (or missing its\n // collection) must report like any other QMD skip (#1536): its\n // empty contribution is otherwise indistinguishable from a true\n // no-matches for that namespace (codex round-5 review on #1544).\n try {\n options.execution?.onDegradation?.({\n backend: \"qmd\",\n code: \"backend_unavailable\",\n detail:\n record.collectionState === \"missing\"\n ? `namespace collection missing: ${namespace}`\n : `namespace backend unavailable: ${namespace}`,\n });\n } catch {\n // Observers must never break search.\n }\n return { namespace, results: [] as QmdSearchResult[] };\n }\n const backendLimit = backendSearchLimit(record, maxResults);\n let results: QmdSearchResult[];\n switch (method) {\n case \"hybrid\":\n results = await record.backend.hybridSearch(\n query,\n record.collection,\n backendLimit,\n options.execution,\n );\n break;\n case \"bm25\":\n results = await record.backend.bm25Search(\n query,\n record.collection,\n backendLimit,\n options.execution,\n );\n break;\n case \"vector\":\n results = await record.backend.vectorSearch(\n query,\n record.collection,\n backendLimit,\n options.execution,\n );\n break;\n default:\n results = await record.backend.search(\n query,\n record.collection,\n backendLimit,\n options.searchOptions,\n options.execution,\n );\n break;\n }\n results = filterNamespaceSubtreeResults(record, results);\n return { namespace, results };\n }),\n );\n\n return mergeNamespaceSearchResults(resultsByNamespace, maxResults);\n }\n\n /**\n * Update all namespace backends.\n * Returns the number of backends for which an update was attempted\n * (i.e., available and collection present). Callers can treat 0 as a\n * signal that no backend was eligible — useful for success-verification in\n * startup-sync when namespacesEnabled is true.\n */\n async updateNamespaces(\n namespaces: string[],\n execution?: SearchExecutionOptions,\n options?: { strict?: boolean },\n ): Promise<number> {\n return (await this.updateNamespacesDetailed(namespaces, execution, options)).backendCount;\n }\n\n async updateNamespacesDetailed(\n namespaces: string[],\n execution?: SearchExecutionOptions,\n options?: { strict?: boolean },\n ): Promise<NamespaceUpdateResult> {\n const unique = Array.from(new Set(namespaces.map((value) => value.trim()).filter(Boolean)));\n const eligible = (await Promise.all(\n unique.map(async (namespace) => {\n const record = await this.backendRecordFor(namespace);\n return record.available && record.collectionState !== \"missing\"\n ? { namespace, record }\n : null;\n }),\n )).filter((entry): entry is { namespace: string; record: NamespaceBackendRecord } => entry !== null);\n\n const globalEntry = eligible.find(({ record }) => record.backend.updatesAllCollections?.() === true);\n const scopedEntries = globalEntry\n ? eligible.filter(({ record }) => record.backend.updatesAllCollections?.() !== true)\n : eligible;\n\n await Promise.all([\n globalEntry\n ? updateBackendRecord(globalEntry.record, execution, options)\n : Promise.resolve(),\n ...scopedEntries.map(({ record }) => updateBackendRecord(record, execution, options)),\n ]);\n\n return {\n backendCount: (globalEntry ? 1 : 0) + scopedEntries.length,\n eligibleNamespaces: eligible.map(({ namespace }) => namespace),\n };\n }\n\n async embedNamespaces(namespaces: string[], options?: { strict?: boolean }): Promise<void> {\n const unique = Array.from(new Set(namespaces.map((value) => value.trim()).filter(Boolean)));\n await Promise.all(\n unique.map(async (namespace) => {\n const record = await this.backendRecordFor(namespace);\n if (!record.available || record.collectionState === \"missing\") return;\n await embedBackendRecord(record, options);\n }),\n );\n }\n\n async ensureNamespaceCollection(\n namespace: string,\n execution?: SearchExecutionOptions,\n ): Promise<\"present\" | \"missing\" | \"unknown\" | \"skipped\"> {\n const record = await this.backendRecordFor(namespace, execution);\n return record.collectionState;\n }\n\n async healthForNamespace(\n namespace: string,\n execution?: SearchExecutionOptions,\n ): Promise<NamespaceSearchHealth> {\n const key = namespace.trim() || this.config.defaultNamespace;\n const record = await this.createBackendRecordFor(\n key,\n execution,\n {\n autoCreateCollection: false,\n abortAsUnavailable: true,\n failOpenMissingGuardedCollection: false,\n },\n );\n try {\n const liveRecord = await this.liveCachedRecordForHealth(key, record, execution);\n const diagnosticBackend = liveRecord?.backend ?? record.backend;\n const versionStatus =\n \"getVersionStatus\" in diagnosticBackend &&\n typeof diagnosticBackend.getVersionStatus === \"function\"\n ? diagnosticBackend.getVersionStatus()\n : null;\n const daemonMode = daemonModeForBackend(diagnosticBackend);\n const collectionState =\n liveRecord?.collectionState === \"missing\"\n ? \"missing\"\n : record.collectionState;\n\n return {\n collection: record.collection,\n memoryDir: record.memoryDir,\n available: liveRecord?.available ?? record.available,\n collectionState,\n debugStatus: diagnosticBackend.debugStatus(),\n installedVersion: versionStatus?.installedVersion ?? null,\n supportedVersion: versionStatus?.supportedVersion ?? null,\n supported: versionStatus?.supported ?? null,\n upgradeAvailable: versionStatus?.upgradeAvailable ?? null,\n doctorAvailable: versionStatus?.capabilities?.doctor ?? null,\n daemonMode,\n };\n } finally {\n const dispose = (record.backend as { dispose?: () => void | Promise<void> }).dispose;\n await dispose?.call(record.backend);\n }\n }\n\n private async liveCachedRecordForHealth(\n key: string,\n disposableRecord: NamespaceBackendRecord,\n execution?: SearchExecutionOptions,\n ): Promise<NamespaceBackendRecord | null> {\n const pending = this.cache.get(key);\n if (!pending) return null;\n const cachedRecord = await awaitWithAbort(pending, execution?.signal).catch(() => null);\n if (!cachedRecord) return null;\n if (cachedRecord.collection !== disposableRecord.collection) return null;\n if (cachedRecord.memoryDir !== disposableRecord.memoryDir) return null;\n return cachedRecord;\n }\n\n /** Clear cached backend records so the next access re-probes availability. */\n clearCache(): void {\n this.cache.clear();\n }\n\n /** Release any per-namespace backend handles held by cached records. */\n async dispose(): Promise<void> {\n const pendingRecords = Array.from(this.cache.values());\n this.cache.clear();\n const settled = await Promise.allSettled(pendingRecords);\n await Promise.allSettled(\n settled.flatMap((entry) => {\n if (entry.status !== \"fulfilled\") return [];\n const dispose = (entry.value.backend as { dispose?: () => void | Promise<void> }).dispose;\n return dispose ? [dispose.call(entry.value.backend)] : [];\n }),\n );\n }\n\n private async backendRecordFor(\n namespace: string,\n execution?: SearchExecutionOptions,\n ): Promise<NamespaceBackendRecord> {\n const key = namespace.trim() || this.config.defaultNamespace;\n const existing = this.cache.get(key);\n if (existing) return await existing;\n\n const pending = this.createBackendRecordFor(key, execution, {\n autoCreateCollection: true,\n abortAsUnavailable: false,\n failOpenMissingGuardedCollection: true,\n }).catch((error) => {\n this.cache.delete(key);\n throw error;\n });\n\n this.cache.set(key, pending);\n return await pending;\n }\n\n private async createBackendRecordFor(\n namespace: string,\n execution: SearchExecutionOptions | undefined,\n options: BackendRecordOptions,\n ): Promise<NamespaceBackendRecord> {\n const key = namespace.trim() || this.config.defaultNamespace;\n const storage = await this.storageRouter.storageFor(key);\n const useLegacyDefaultCollection =\n key === this.config.defaultNamespace && storage.dir === this.config.memoryDir;\n const filtersNestedNamespaces =\n this.config.namespacesEnabled === true && useLegacyDefaultCollection;\n const rootHostEmbeddingScope =\n (this.config as NamespaceScopedSearchConfig).hostEmbeddingProviderScope ??\n this.config.memoryDir;\n const scopedConfig: NamespaceScopedSearchConfig = {\n ...this.config,\n memoryDir: storage.dir,\n hostEmbeddingProviderScope: rootHostEmbeddingScope,\n qmdCollection: namespaceCollectionName(this.config.qmdCollection, key, {\n defaultNamespace: this.config.defaultNamespace,\n useLegacyDefaultCollection,\n }),\n };\n\n const backend = this.createBackend(scopedConfig);\n try {\n const availabilityProbe =\n options.autoCreateCollection || typeof backend.checkAvailability !== \"function\"\n ? backend.probe()\n : backend.checkAvailability({ signal: execution?.signal });\n const available = await awaitWithAbort(availabilityProbe, execution?.signal).catch((error) => {\n if (error instanceof NamespaceSearchAbortError && !options.abortAsUnavailable) {\n throw error;\n }\n return false;\n });\n const collectionState = available\n ? await awaitWithAbort(\n this.collectionStateForBackend(backend, storage.dir, scopedConfig.qmdCollection, {\n autoCreate: options.autoCreateCollection,\n failOpenMissingGuardedCollection: options.failOpenMissingGuardedCollection,\n skipAutoCreate: filtersNestedNamespaces,\n execution,\n }),\n execution?.signal,\n ).catch((error) => {\n if (error instanceof NamespaceSearchAbortError && !options.abortAsUnavailable) {\n throw error;\n }\n return \"unknown\" as const;\n })\n : \"unknown\";\n return {\n backend,\n collection: scopedConfig.qmdCollection,\n memoryDir: storage.dir,\n available,\n collectionState,\n filtersNestedNamespaces,\n };\n } catch (error) {\n const dispose = (backend as { dispose?: () => void | Promise<void> }).dispose;\n if (dispose) {\n await Promise.resolve(dispose.call(backend)).catch(() => {});\n }\n throw error;\n }\n }\n\n private async collectionStateForBackend(\n backend: SearchBackend,\n memoryDir: string,\n collection: string,\n options: {\n autoCreate: boolean;\n failOpenMissingGuardedCollection: boolean;\n skipAutoCreate: boolean;\n execution?: SearchExecutionOptions;\n },\n ): Promise<CollectionState> {\n if (!options.autoCreate || options.skipAutoCreate) {\n if (!backend.checkCollection) return \"unknown\";\n const collectionState = await backend\n .checkCollection(collection, options.execution)\n .catch(() => \"unknown\" as const);\n return options.failOpenMissingGuardedCollection && collectionState === \"missing\"\n ? \"unknown\"\n : collectionState;\n }\n return await backend.ensureCollection(memoryDir, collection, options.execution).catch(() => \"unknown\" as const);\n }\n}\n\nclass NamespaceSearchAbortError extends Error {\n constructor() {\n super(\"operation aborted\");\n }\n}\n\nfunction awaitWithAbort<T>(operation: Promise<T>, signal?: AbortSignal): Promise<T> {\n if (!signal) return operation;\n if (signal.aborted) return Promise.reject(new NamespaceSearchAbortError());\n\n return new Promise<T>((resolve, reject) => {\n const onAbort = () => {\n signal.removeEventListener(\"abort\", onAbort);\n reject(new NamespaceSearchAbortError());\n };\n signal.addEventListener(\"abort\", onAbort, { once: true });\n operation.then(resolve, reject).finally(() => {\n signal.removeEventListener(\"abort\", onAbort);\n });\n });\n}\n\nfunction filterNamespaceSubtreeResults(\n record: NamespaceBackendRecord,\n results: QmdSearchResult[],\n): QmdSearchResult[] {\n if (!record.filtersNestedNamespaces) return results;\n return results.filter((result) =>\n !pathIsInsideNamespaceSubtree(record.memoryDir, record.collection, result.path)\n );\n}\n\nfunction backendSearchLimit(\n record: NamespaceBackendRecord,\n maxResults: number,\n): number {\n if (!record.filtersNestedNamespaces) return maxResults;\n return Math.max(\n maxResults,\n maxResults * NESTED_NAMESPACE_FILTER_OVERFETCH_FACTOR,\n NESTED_NAMESPACE_FILTER_OVERFETCH_MIN,\n );\n}\n\nasync function updateBackendRecord(\n record: NamespaceBackendRecord,\n execution?: SearchExecutionOptions,\n options?: { strict?: boolean },\n): Promise<void> {\n if (options?.strict === true) {\n if (\n record.backend.updatesAllCollections?.() === true &&\n typeof record.backend.updateStrict === \"function\"\n ) {\n await record.backend.updateStrict(execution);\n return;\n }\n if (typeof record.backend.updateCollectionStrict === \"function\") {\n await record.backend.updateCollectionStrict(record.collection, execution);\n return;\n }\n }\n await record.backend.update(execution);\n}\n\nasync function embedBackendRecord(\n record: NamespaceBackendRecord,\n options?: { strict?: boolean },\n): Promise<void> {\n if (options?.strict === true) {\n if (typeof record.backend.embedCollectionStrict === \"function\") {\n await record.backend.embedCollectionStrict(record.collection);\n return;\n }\n if (typeof record.backend.embedStrict === \"function\") {\n await record.backend.embedStrict();\n return;\n }\n }\n if (typeof record.backend.embedCollection === \"function\") {\n await record.backend.embedCollection(record.collection);\n return;\n }\n await record.backend.embed();\n}\n\nfunction daemonModeForBackend(backend: SearchBackend): boolean | null {\n return \"isDaemonMode\" in backend && typeof backend.isDaemonMode === \"function\"\n ? backend.isDaemonMode() === true\n : null;\n}\n\nfunction pathIsInsideNamespaceSubtree(\n memoryDir: string,\n collection: string,\n resultPath: string | undefined,\n): boolean {\n if (!resultPath) return false;\n const normalizedResultPath = normalizeQmdResultPath(resultPath, collection);\n const memoryRoot = path.resolve(memoryDir);\n const namespacesRoot = path.join(memoryRoot, \"namespaces\");\n const candidate = path.isAbsolute(normalizedResultPath)\n ? path.normalize(normalizedResultPath)\n : path.resolve(memoryRoot, normalizedResultPath);\n const relative = path.relative(namespacesRoot, candidate);\n return relative === \"\" || (!relative.startsWith(\"..\") && !path.isAbsolute(relative));\n}\n\nfunction normalizeQmdResultPath(resultPath: string, collection: string): string {\n let value = resultPath.trim();\n if (value.startsWith(\"qmd://\")) {\n try {\n const parsed = new URL(value);\n if (parsed.protocol === \"qmd:\" && parsed.hostname === collection) {\n value = decodeURIComponent(parsed.pathname.replace(/^\\/+/, \"\"));\n }\n } catch {\n const remainder = value.slice(\"qmd://\".length);\n const slashIndex = remainder.indexOf(\"/\");\n if (slashIndex !== -1) {\n value = remainder.slice(slashIndex + 1);\n }\n }\n }\n\n const collectionPrefix = `${collection}/`;\n if (value.startsWith(collectionPrefix)) {\n value = value.slice(collectionPrefix.length);\n }\n return value;\n}\n\nfunction mergeNamespaceSearchResults(\n lists: Array<{ namespace: string; results: QmdSearchResult[] }>,\n maxResults: number,\n): QmdSearchResult[] {\n const merged = new Map<string, QmdSearchResult>();\n\n for (const { namespace, results } of lists) {\n for (const result of results) {\n const key = `${namespace}\\0${result.path || result.docid}`;\n const existing = merged.get(key);\n if (!existing) {\n merged.set(key, result);\n continue;\n }\n if (result.score > existing.score) {\n merged.set(key, {\n ...result,\n snippet: existing.snippet || result.snippet || \"\",\n });\n }\n }\n }\n\n return [...merged.values()]\n .sort((a, b) => b.score - a.score)\n .slice(0, maxResults);\n}\n"],"mappings":"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","names":[]}
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-CINZGPSJ.js";
8
8
  import {
9
9
  resolveEnsureCollectionArgs
10
- } from "./chunk-M3VYPE2H.js";
10
+ } from "./chunk-YNQ6DFSV.js";
11
11
  import {
12
12
  log
13
13
  } from "./chunk-2ODBA7MQ.js";
@@ -491,4 +491,4 @@ function isMissingVectorProviderColumnError(err) {
491
491
  export {
492
492
  LanceDbBackend
493
493
  };
494
- //# sourceMappingURL=chunk-5PLUC5OB.js.map
494
+ //# sourceMappingURL=chunk-WSQG37DV.js.map
@@ -9,4 +9,4 @@ function resolveEnsureCollectionArgs(collectionOrExecution, execution) {
9
9
  export {
10
10
  resolveEnsureCollectionArgs
11
11
  };
12
- //# sourceMappingURL=chunk-M3VYPE2H.js.map
12
+ //# sourceMappingURL=chunk-YNQ6DFSV.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/search/port.ts"],"sourcesContent":["import type { QmdSearchResult } from \"../types.js\";\n\n/** Alias so consumers don't need to reference \"Qmd\" in a backend-agnostic context. */\nexport type SearchResult = QmdSearchResult;\n\nexport interface SearchQueryOptions {\n intent?: string;\n explain?: boolean;\n candidateLimit?: number;\n rerank?: boolean;\n chunkStrategy?: \"auto\" | \"regex\";\n structuredSearches?: Array<{ type: \"lex\" | \"vec\" | \"hyde\"; query: string }>;\n}\n\n/**\n * A search that returned empty (or partial) results because the backend was\n * unavailable, still loading, or timed out — cases that are otherwise\n * indistinguishable from a genuine \"no matches\" (issue #1536, CLAUDE.md\n * rule 34).\n */\nexport interface SearchDegradation {\n backend: \"qmd\";\n code:\n | \"backend_unavailable\"\n | \"daemon_timeout\"\n | \"daemon_loading\"\n | \"subprocess_error\"\n | \"deadline_exceeded\";\n detail?: string;\n}\n\nexport interface SearchExecutionOptions {\n signal?: AbortSignal;\n /**\n * Observer invoked when the backend degrades during this call (#1536).\n * Callers that need to distinguish empty-because-degraded from\n * empty-because-no-matches (recall x-ray, fallback decisions) pass a\n * collector here. Observer failures are swallowed by the notifier —\n * observability must never break search.\n */\n onDegradation?: (degradation: SearchDegradation) => void;\n}\n\nexport function resolveEnsureCollectionArgs(\n collectionOrExecution?: string | SearchExecutionOptions,\n execution?: SearchExecutionOptions,\n): { collection?: string; execution?: SearchExecutionOptions } {\n if (typeof collectionOrExecution === \"string\") {\n return { collection: collectionOrExecution, execution };\n }\n return { collection: undefined, execution: collectionOrExecution ?? execution };\n}\n\n/**\n * Abstract search backend interface.\n *\n * Implementations:\n * - QmdClient (default, local hybrid BM25+vector+reranking)\n * - OramaBackend (embedded, pure JS, hybrid FTS+vector)\n * - LanceDbBackend (embedded, native Arrow bindings, RRF reranking)\n * - MeilisearchBackend (server-based SDK, hybrid search)\n * - RemoteSearchBackend (HTTP REST adapter)\n * - NoopSearchBackend (graceful degradation)\n *\n * See docs/writing-a-search-backend.md for the implementation guide.\n */\nexport interface SearchBackend {\n // ── Lifecycle ──\n probe(): Promise<boolean>;\n /**\n * Optional non-mutating availability probe for health/readiness checks.\n * Implementations must avoid auto-upgrades, collection creation, daemon\n * startup, or any other runtime-modifying side effects.\n */\n checkAvailability?(execution?: SearchExecutionOptions): Promise<boolean>;\n isAvailable(): boolean;\n debugStatus(): string;\n\n // ── Search ──\n search(\n query: string,\n collection?: string,\n maxResults?: number,\n options?: SearchQueryOptions,\n execution?: SearchExecutionOptions,\n ): Promise<SearchResult[]>;\n searchGlobal(query: string, maxResults?: number, execution?: SearchExecutionOptions): Promise<SearchResult[]>;\n bm25Search(\n query: string,\n collection?: string,\n maxResults?: number,\n execution?: SearchExecutionOptions,\n ): Promise<SearchResult[]>;\n vectorSearch(\n query: string,\n collection?: string,\n maxResults?: number,\n execution?: SearchExecutionOptions,\n ): Promise<SearchResult[]>;\n hybridSearch(\n query: string,\n collection?: string,\n maxResults?: number,\n execution?: SearchExecutionOptions,\n ): Promise<SearchResult[]>;\n\n // ── Maintenance ──\n update(execution?: SearchExecutionOptions): Promise<void>;\n /**\n * Optional strict refresh used by callers that must know whether the backend\n * was actually refreshed before writing success markers. Ordinary update\n * calls remain fail-open for migration/maintenance resilience.\n */\n updateStrict?(execution?: SearchExecutionOptions): Promise<void>;\n updateCollection(collection: string, execution?: SearchExecutionOptions): Promise<void>;\n updateCollectionFromDir?(collection: string, memoryDir: string, execution?: SearchExecutionOptions): Promise<void>;\n /**\n * True when update() refreshes every indexed collection, not just this\n * backend's configured collection. Namespace routers use this to avoid\n * repeating the same expensive global update once per namespace.\n */\n updatesAllCollections?(): boolean;\n /**\n * Optional strict refresh used by callers that must know whether a collection\n * was actually refreshed before writing success markers. Ordinary update\n * calls remain fail-open for migration/maintenance resilience.\n */\n updateCollectionStrict?(collection: string, execution?: SearchExecutionOptions): Promise<void>;\n embed(): Promise<void>;\n /**\n * Optional strict embed used by callers that must know vectors were actually\n * refreshed before writing success markers.\n */\n embedStrict?(): Promise<void>;\n embedCollection(collection: string): Promise<void>;\n /**\n * Optional strict collection embed used by callers that must know vectors were\n * actually refreshed before writing success markers.\n */\n embedCollectionStrict?(collection: string): Promise<void>;\n\n // ── Collection management ──\n /**\n * Optional non-mutating collection probe. Backends that can distinguish a\n * missing collection from a transient probe failure should implement this so\n * callers can avoid auto-creating collections in unsafe layouts.\n */\n checkCollection?(\n collectionOrExecution?: string | SearchExecutionOptions,\n execution?: SearchExecutionOptions,\n ): Promise<\"present\" | \"missing\" | \"unknown\" | \"skipped\">;\n ensureCollection(\n memoryDir: string,\n execution?: SearchExecutionOptions,\n ): Promise<\"present\" | \"missing\" | \"unknown\" | \"skipped\">;\n ensureCollection(\n memoryDir: string,\n collection?: string,\n execution?: SearchExecutionOptions,\n ): Promise<\"present\" | \"missing\" | \"unknown\" | \"skipped\">;\n}\n"],"mappings":";AA2CO,SAAS,4BACd,uBACA,WAC6D;AAC7D,MAAI,OAAO,0BAA0B,UAAU;AAC7C,WAAO,EAAE,YAAY,uBAAuB,UAAU;AAAA,EACxD;AACA,SAAO,EAAE,YAAY,QAAW,WAAW,yBAAyB,UAAU;AAChF;","names":[]}
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-TBLGI2LT.js";
4
4
  import {
5
5
  namespaceCollectionName
6
- } from "./chunk-UNLHHTKN.js";
6
+ } from "./chunk-WOQIHC67.js";
7
7
  import {
8
8
  namespaceIdentityFromToken,
9
9
  namespaceIdentityToken
@@ -204,4 +204,4 @@ export {
204
204
  verifyNamespaces,
205
205
  runNamespaceMigration
206
206
  };
207
- //# sourceMappingURL=chunk-256W7AXC.js.map
207
+ //# sourceMappingURL=chunk-YYQRVNSV.js.map
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-CINZGPSJ.js";
8
8
  import {
9
9
  resolveEnsureCollectionArgs
10
- } from "./chunk-M3VYPE2H.js";
10
+ } from "./chunk-YNQ6DFSV.js";
11
11
  import {
12
12
  log
13
13
  } from "./chunk-2ODBA7MQ.js";
@@ -605,4 +605,4 @@ export {
605
605
  resolveOramaCollectionDbFilePath,
606
606
  OramaBackend
607
607
  };
608
- //# sourceMappingURL=chunk-GRYAECRV.js.map
608
+ //# sourceMappingURL=chunk-ZJH723NM.js.map
@@ -1,13 +1,13 @@
1
1
  import { CompoundingPromotionReport } from './compounding/engine.js';
2
2
  import { MigrateObservationsResult } from './maintenance/migrate-observations.js';
3
3
  import { MemoryGovernanceRunResult, MemoryGovernanceSummary, MemoryGovernanceMetrics, MemoryGovernanceQualityScore, MemoryGovernanceReviewQueueEntry, MemoryGovernanceAppliedAction, MemoryGovernanceTransitionReport, MemoryGovernanceManifest, MemoryGovernanceRestoreManifest, RestoreMemoryGovernanceRunResult } from './maintenance/memory-governance.js';
4
- import { h as MemoryStatus, g as MemoryFile, B as BehaviorSignalEvent, Z as QmdSearchResult, m as MemoryActionEvent, n as MemoryLifecycleEvent } from './types-CgcCpUrf.js';
4
+ import { h as MemoryStatus, g as MemoryFile, B as BehaviorSignalEvent, Q as QmdSearchResult, m as MemoryActionEvent, n as MemoryLifecycleEvent } from './types-D96bCB3C.js';
5
5
  import { RebuildMemoryProjectionResult, RepairMemoryProjectionResult, VerifyMemoryProjectionResult } from './maintenance/rebuild-memory-projection.js';
6
6
  import { RebuildMemoryLifecycleLedgerResult } from './maintenance/rebuild-memory-lifecycle-ledger.js';
7
7
  import { RebuildObservationsResult } from './maintenance/rebuild-observations.js';
8
8
  import { ArchiveObservationsResult } from './maintenance/archive-observations.js';
9
9
  import { Writable, Readable } from 'node:stream';
10
- import { O as Orchestrator } from './orchestrator-D1wcmPNj.js';
10
+ import { O as Orchestrator } from './orchestrator-Cg1UkvmO.js';
11
11
  import { ReplayRunSummary } from './replay/runner.js';
12
12
  import { ReplaySource, ReplayTurn } from './replay/types.js';
13
13
  import { b as BulkImportResult } from './types-ByK7T3L6.js';
@@ -16,7 +16,7 @@ import { WorkProjectStatus, WorkTaskStatus, WorkTaskPriority } from './work/type
16
16
  import { RoutePatternType } from './routing/engine.js';
17
17
  import { TailscaleSyncOptions } from './network/tailscale.js';
18
18
  import { DashboardStatus } from './dashboard-runtime.js';
19
- import { E as EngramAccessService } from './access-service-D_nbpexW.js';
19
+ import { E as EngramAccessService } from './access-service-D0SLB4MH.js';
20
20
  import { ResolveSecretRefFn } from './resolve-auth-token.js';
21
21
  import { CompatRunner, CompatReport } from './compat/types.js';
22
22
  import { EvalBaselineDeltaReport, EvalBaselineSnapshot, EvalCiGateReport, EvalBenchmarkPackSummary, EvalHarnessStatus, EvalStoredBaselineCiGateReport } from './evals.js';
package/dist/cli.d.ts CHANGED
@@ -1,13 +1,13 @@
1
1
  import './compounding/engine.js';
2
2
  import './maintenance/migrate-observations.js';
3
3
  import './maintenance/memory-governance.js';
4
- import './types-CgcCpUrf.js';
4
+ import './types-D96bCB3C.js';
5
5
  import './maintenance/rebuild-memory-projection.js';
6
6
  import './maintenance/rebuild-memory-lifecycle-ledger.js';
7
7
  import './maintenance/rebuild-observations.js';
8
8
  import './maintenance/archive-observations.js';
9
9
  import 'node:stream';
10
- import './orchestrator-D1wcmPNj.js';
10
+ import './orchestrator-Cg1UkvmO.js';
11
11
  import './replay/runner.js';
12
12
  import './replay/types.js';
13
13
  import './types-ByK7T3L6.js';
@@ -16,7 +16,7 @@ import './work/types.js';
16
16
  import './routing/engine.js';
17
17
  import './network/tailscale.js';
18
18
  import './dashboard-runtime.js';
19
- import './access-service-D_nbpexW.js';
19
+ import './access-service-D0SLB4MH.js';
20
20
  import './resolve-auth-token.js';
21
21
  import './compat/types.js';
22
22
  import './evals.js';
@@ -38,7 +38,7 @@ import './trust-zones.js';
38
38
  import './session-integrity.js';
39
39
  import './recall-state.js';
40
40
  import './policy-runtime.js';
41
- export { A as AccessHttpServeCliCommandOptions, a as ArchiveObservationsCliCommandOptions, B as BulkImportCliCommandOptions, C as CompatCliCommandOptions, b as ConnectorsRunCliOutputOptions, c as ConversationIndexHealthCliOrchestrator, D as DashboardStartCliCommandOptions, d as DedupeCandidate, E as ExactDedupePlan, G as GraphHealthCliCommandOptions, M as MemoryActionAuditCliCommandOptions, e as MemoryActionAuditCliNamespaceSummary, f as MemoryActionAuditCliReport, g as MemoryGovernanceCliCommandOptions, h as MemoryGovernanceReportCliCommandOptions, i as MemoryGovernanceRestoreCliCommandOptions, j as MemoryReviewDispositionCliCommandOptions, k as MemoryTimelineCliCommandOptions, l as MigrateCliOrchestrator, m as MigrateCliReport, n as MigrateObservationsCliCommandOptions, P as PolicyDiffCliReport, o as PolicyDiffEntry, q as PolicyRollbackCliReport, s as PolicyStatusCliReport, t as PolicyTuningCliOrchestrator, R as RebuildMemoryLifecycleLedgerCliCommandOptions, u as RebuildMemoryProjectionCliCommandOptions, v as RebuildObservationsCliCommandOptions, w as RepairMemoryProjectionCliCommandOptions, x as ReplayCliCommandOptions, y as ReplayCliOrchestrator, z as RouteCliCommandOptions, S as SessionIntegrityCliCommandOptions, F as SessionRepairCliCommandOptions, T as TailscaleStatusCliCommandOptions, H as TailscaleSyncCliCommandOptions, I as TierMigrationCliOrchestrator, J as TrainingExportCliCommandOptions, V as VerifyMemoryProjectionCliCommandOptions, W as WebDavServeCliCommandOptions, K as WorkProjectCliCommandOptions, L as WorkTaskCliCommandOptions, N as emitConnectorsRunCliResult, O as filterNormalMemorySearchResults, Q as hasDestructivePurgeFailures, U as isNormalRetrievalVisibleMemory, X as parseDurationToMs, Y as parseStrictCliDate, Z as planAggressiveDuplicateDeletions, _ as planExactDuplicateDeletions, $ as registerCli, a0 as resolveAccessPrincipalOverride, a1 as resolveMemoryDirForNamespace, a2 as runAbstractionNodeStatusCliCommand, a3 as runAccessHttpServeCliCommand, a4 as runAccessHttpStatusCliCommand, a5 as runAccessHttpStopCliCommand, a6 as runAccessMcpServeCliCommand, a7 as runArchiveObservationsCliCommand, a8 as runBenchmarkBaselineReportCliCommand, a9 as runBenchmarkBaselineSnapshotCliCommand, aa as runBenchmarkCiGateCliCommand, ab as runBenchmarkImportCliCommand, ac as runBenchmarkStatusCliCommand, ad as runBenchmarkStoredBaselineCiGateCliCommand, ae as runBenchmarkValidateCliCommand, r as runBulkImportCliCommand, af as runCausalTrajectoryStatusCliCommand, ag as runCommitmentLifecycleCliCommand, ah as runCommitmentRecordCliCommand, ai as runCommitmentSetStateCliCommand, aj as runCommitmentStatusCliCommand, ak as runCompatCliCommand, al as runCompoundingPromoteCliCommand, am as runConversationIndexHealthCliCommand, an as runConversationIndexInspectCliCommand, ao as runConversationIndexRebuildCliCommand, ap as runCueAnchorStatusCliCommand, aq as runDashboardStartCliCommand, ar as runDashboardStatusCliCommand, as as runDashboardStopCliCommand, at as runGraphHealthCliCommand, au as runHarmonicSearchCliCommand, av as runMemoryActionAuditCliCommand, aw as runMemoryGovernanceCliCommand, ax as runMemoryGovernanceReportCliCommand, ay as runMemoryGovernanceRestoreCliCommand, az as runMemoryReviewDispositionCliCommand, aA as runMemoryTimelineCliCommand, aB as runMigrateNormalizeFrontmatterCliCommand, aC as runMigrateObservationsCliCommand, aD as runMigrateRechunkCliCommand, aE as runMigrateReextractCliCommand, aF as runMigrateRescoreImportanceCliCommand, aG as runObjectiveStateStatusCliCommand, aH as runPolicyDiffCliCommand, aI as runPolicyRollbackCliCommand, aJ as runPolicyStatusCliCommand, aK as runRebuildMemoryLifecycleLedgerCliCommand, aL as runRebuildMemoryProjectionCliCommand, aM as runRebuildObservationsCliCommand, aN as runRepairMemoryProjectionCliCommand, aO as runReplayCliCommand, aP as runResumeBundleBuildCliCommand, aQ as runResumeBundleRecordCliCommand, aR as runResumeBundleStatusCliCommand, aS as runRouteCliCommand, aT as runSemanticRulePromoteCliCommand, aU as runSemanticRuleVerifyCliCommand, aV as runSessionCheckCliCommand, aW as runSessionRepairCliCommand, aX as runTailscaleStatusCliCommand, aY as runTailscaleSyncCliCommand, aZ as runTierMigrateCliCommand, a_ as runTierStatusCliCommand, a$ as runTrainingExportCliCommand, b0 as runTrustZoneDemoSeedCliCommand, b1 as runTrustZonePromoteCliCommand, b2 as runTrustZoneStatusCliCommand, b3 as runUtilityLearningCliCommand, b4 as runUtilityLearningStatusCliCommand, b5 as runUtilityTelemetryRecordCliCommand, b6 as runUtilityTelemetryStatusCliCommand, b7 as runVerifiedRecallSearchCliCommand, b8 as runVerifyMemoryProjectionCliCommand, b9 as runWebDavServeCliCommand, ba as runWebDavStopCliCommand, bb as runWorkProductRecallSearchCliCommand, bc as runWorkProductRecordCliCommand, bd as runWorkProductStatusCliCommand, be as runWorkProjectCliCommand, bf as runWorkTaskCliCommand } from './cli-aYxSuPvP.js';
41
+ export { A as AccessHttpServeCliCommandOptions, a as ArchiveObservationsCliCommandOptions, B as BulkImportCliCommandOptions, C as CompatCliCommandOptions, b as ConnectorsRunCliOutputOptions, c as ConversationIndexHealthCliOrchestrator, D as DashboardStartCliCommandOptions, d as DedupeCandidate, E as ExactDedupePlan, G as GraphHealthCliCommandOptions, M as MemoryActionAuditCliCommandOptions, e as MemoryActionAuditCliNamespaceSummary, f as MemoryActionAuditCliReport, g as MemoryGovernanceCliCommandOptions, h as MemoryGovernanceReportCliCommandOptions, i as MemoryGovernanceRestoreCliCommandOptions, j as MemoryReviewDispositionCliCommandOptions, k as MemoryTimelineCliCommandOptions, l as MigrateCliOrchestrator, m as MigrateCliReport, n as MigrateObservationsCliCommandOptions, P as PolicyDiffCliReport, o as PolicyDiffEntry, q as PolicyRollbackCliReport, s as PolicyStatusCliReport, t as PolicyTuningCliOrchestrator, R as RebuildMemoryLifecycleLedgerCliCommandOptions, u as RebuildMemoryProjectionCliCommandOptions, v as RebuildObservationsCliCommandOptions, w as RepairMemoryProjectionCliCommandOptions, x as ReplayCliCommandOptions, y as ReplayCliOrchestrator, z as RouteCliCommandOptions, S as SessionIntegrityCliCommandOptions, F as SessionRepairCliCommandOptions, T as TailscaleStatusCliCommandOptions, H as TailscaleSyncCliCommandOptions, I as TierMigrationCliOrchestrator, J as TrainingExportCliCommandOptions, V as VerifyMemoryProjectionCliCommandOptions, W as WebDavServeCliCommandOptions, K as WorkProjectCliCommandOptions, L as WorkTaskCliCommandOptions, N as emitConnectorsRunCliResult, O as filterNormalMemorySearchResults, Q as hasDestructivePurgeFailures, U as isNormalRetrievalVisibleMemory, X as parseDurationToMs, Y as parseStrictCliDate, Z as planAggressiveDuplicateDeletions, _ as planExactDuplicateDeletions, $ as registerCli, a0 as resolveAccessPrincipalOverride, a1 as resolveMemoryDirForNamespace, a2 as runAbstractionNodeStatusCliCommand, a3 as runAccessHttpServeCliCommand, a4 as runAccessHttpStatusCliCommand, a5 as runAccessHttpStopCliCommand, a6 as runAccessMcpServeCliCommand, a7 as runArchiveObservationsCliCommand, a8 as runBenchmarkBaselineReportCliCommand, a9 as runBenchmarkBaselineSnapshotCliCommand, aa as runBenchmarkCiGateCliCommand, ab as runBenchmarkImportCliCommand, ac as runBenchmarkStatusCliCommand, ad as runBenchmarkStoredBaselineCiGateCliCommand, ae as runBenchmarkValidateCliCommand, r as runBulkImportCliCommand, af as runCausalTrajectoryStatusCliCommand, ag as runCommitmentLifecycleCliCommand, ah as runCommitmentRecordCliCommand, ai as runCommitmentSetStateCliCommand, aj as runCommitmentStatusCliCommand, ak as runCompatCliCommand, al as runCompoundingPromoteCliCommand, am as runConversationIndexHealthCliCommand, an as runConversationIndexInspectCliCommand, ao as runConversationIndexRebuildCliCommand, ap as runCueAnchorStatusCliCommand, aq as runDashboardStartCliCommand, ar as runDashboardStatusCliCommand, as as runDashboardStopCliCommand, at as runGraphHealthCliCommand, au as runHarmonicSearchCliCommand, av as runMemoryActionAuditCliCommand, aw as runMemoryGovernanceCliCommand, ax as runMemoryGovernanceReportCliCommand, ay as runMemoryGovernanceRestoreCliCommand, az as runMemoryReviewDispositionCliCommand, aA as runMemoryTimelineCliCommand, aB as runMigrateNormalizeFrontmatterCliCommand, aC as runMigrateObservationsCliCommand, aD as runMigrateRechunkCliCommand, aE as runMigrateReextractCliCommand, aF as runMigrateRescoreImportanceCliCommand, aG as runObjectiveStateStatusCliCommand, aH as runPolicyDiffCliCommand, aI as runPolicyRollbackCliCommand, aJ as runPolicyStatusCliCommand, aK as runRebuildMemoryLifecycleLedgerCliCommand, aL as runRebuildMemoryProjectionCliCommand, aM as runRebuildObservationsCliCommand, aN as runRepairMemoryProjectionCliCommand, aO as runReplayCliCommand, aP as runResumeBundleBuildCliCommand, aQ as runResumeBundleRecordCliCommand, aR as runResumeBundleStatusCliCommand, aS as runRouteCliCommand, aT as runSemanticRulePromoteCliCommand, aU as runSemanticRuleVerifyCliCommand, aV as runSessionCheckCliCommand, aW as runSessionRepairCliCommand, aX as runTailscaleStatusCliCommand, aY as runTailscaleSyncCliCommand, aZ as runTierMigrateCliCommand, a_ as runTierStatusCliCommand, a$ as runTrainingExportCliCommand, b0 as runTrustZoneDemoSeedCliCommand, b1 as runTrustZonePromoteCliCommand, b2 as runTrustZoneStatusCliCommand, b3 as runUtilityLearningCliCommand, b4 as runUtilityLearningStatusCliCommand, b5 as runUtilityTelemetryRecordCliCommand, b6 as runUtilityTelemetryStatusCliCommand, b7 as runVerifiedRecallSearchCliCommand, b8 as runVerifyMemoryProjectionCliCommand, b9 as runWebDavServeCliCommand, ba as runWebDavStopCliCommand, bb as runWorkProductRecallSearchCliCommand, bc as runWorkProductRecordCliCommand, bd as runWorkProductStatusCliCommand, be as runWorkProjectCliCommand, bf as runWorkTaskCliCommand } from './cli-C6twwe84.js';
42
42
  import './connectors-cli-2iaQ5tX2.js';
43
43
  import './storage.js';
44
44
  import './page-versioning.js';
@@ -74,7 +74,7 @@ import './lcm/archive.js';
74
74
  import './lcm/summarizer.js';
75
75
  import './lcm/dag.js';
76
76
  import './lcm/queue.js';
77
- import './semantic-consolidation-MWOdNtSE.js';
77
+ import './semantic-consolidation-BICZvQ3C.js';
78
78
  import './connectors/codex-materialize.js';
79
79
  import './logger.js';
80
80
  import './conversation-index/backend.js';
package/dist/cli.js CHANGED
@@ -89,7 +89,7 @@ import {
89
89
  runWorkProductStatusCliCommand,
90
90
  runWorkProjectCliCommand,
91
91
  runWorkTaskCliCommand
92
- } from "./chunk-2EVZ5EN6.js";
92
+ } from "./chunk-HSCJYHYV.js";
93
93
  import "./chunk-MC4FJXPA.js";
94
94
  import "./chunk-LQHDIS7L.js";
95
95
  import "./chunk-7F7Z6MOS.js";
@@ -122,8 +122,8 @@ import "./chunk-QXHBWFR3.js";
122
122
  import "./chunk-TGQ2NTWH.js";
123
123
  import "./chunk-PEPHBH2W.js";
124
124
  import "./chunk-SXYCVRLK.js";
125
- import "./chunk-MO77TWPS.js";
126
- import "./chunk-256W7AXC.js";
125
+ import "./chunk-5AYAZN45.js";
126
+ import "./chunk-YYQRVNSV.js";
127
127
  import "./chunk-3T74IZB3.js";
128
128
  import "./chunk-HL4DB7TO.js";
129
129
  import "./chunk-YNDLCWXS.js";
@@ -166,7 +166,7 @@ import "./chunk-Z5LAYHGJ.js";
166
166
  import "./chunk-LBJBNWS2.js";
167
167
  import "./chunk-HQ6NIBL6.js";
168
168
  import "./chunk-OADWQ5CR.js";
169
- import "./chunk-OYXVENIS.js";
169
+ import "./chunk-4KDLCMLK.js";
170
170
  import "./chunk-SEDEKFYQ.js";
171
171
  import "./chunk-RKNJBZ55.js";
172
172
  import "./chunk-J64TK33U.js";
@@ -175,10 +175,10 @@ import "./chunk-42NQ7AVG.js";
175
175
  import "./chunk-TMSXWOBZ.js";
176
176
  import "./chunk-7RXCMVFQ.js";
177
177
  import "./chunk-7WV3F5DQ.js";
178
- import "./chunk-7H7J3ZWN.js";
178
+ import "./chunk-2KDQI363.js";
179
179
  import "./chunk-T4WDJPEZ.js";
180
180
  import "./chunk-D24OXEPB.js";
181
- import "./chunk-RP2U54GG.js";
181
+ import "./chunk-DFAXGZKI.js";
182
182
  import "./chunk-GDASG7NC.js";
183
183
  import "./chunk-GDB4J2H3.js";
184
184
  import "./chunk-DHGSZ3UD.js";
@@ -192,14 +192,14 @@ import "./chunk-5RIRL3XL.js";
192
192
  import "./chunk-JGSKJHF7.js";
193
193
  import "./chunk-FF4KLI5W.js";
194
194
  import "./chunk-2MXEVL75.js";
195
- import "./chunk-UNLHHTKN.js";
196
- import "./chunk-R2EBP6CM.js";
197
- import "./chunk-6G5JEN55.js";
195
+ import "./chunk-WOQIHC67.js";
196
+ import "./chunk-35HP3TGR.js";
197
+ import "./chunk-FZC2WSDB.js";
198
198
  import "./chunk-CYEPCZN5.js";
199
- import "./chunk-GRYAECRV.js";
199
+ import "./chunk-ZJH723NM.js";
200
200
  import "./chunk-JOASJWQR.js";
201
201
  import "./chunk-RN7MUWON.js";
202
- import "./chunk-5PLUC5OB.js";
202
+ import "./chunk-WSQG37DV.js";
203
203
  import "./chunk-Q4CAQGKQ.js";
204
204
  import "./chunk-CINZGPSJ.js";
205
205
  import "./chunk-ZFXCQPNO.js";
@@ -207,8 +207,8 @@ import "./chunk-7OGJQP7T.js";
207
207
  import "./chunk-E6ZDCOHM.js";
208
208
  import "./chunk-OIF36KGD.js";
209
209
  import "./chunk-7DTASS5T.js";
210
- import "./chunk-7PCZGNG2.js";
211
- import "./chunk-M3VYPE2H.js";
210
+ import "./chunk-6RHNCKHG.js";
211
+ import "./chunk-YNQ6DFSV.js";
212
212
  import "./chunk-BMFZLLNI.js";
213
213
  import "./chunk-CI7RKSRE.js";
214
214
  import "./chunk-6HMYUWXR.js";
@@ -1,5 +1,5 @@
1
1
  import { StorageManager } from '../storage.js';
2
- import { P as PluginConfig } from '../types-CgcCpUrf.js';
2
+ import { P as PluginConfig } from '../types-D96bCB3C.js';
3
3
  import { SharedFeedbackEntry } from '../shared-context/manager.js';
4
4
  import '../page-versioning.js';
5
5
  import '../consolidation-operator.js';
@@ -1,4 +1,4 @@
1
- import { M as MemoryCategory, g as MemoryFile } from '../types-CgcCpUrf.js';
1
+ import { M as MemoryCategory, g as MemoryFile } from '../types-D96bCB3C.js';
2
2
  import { LcmEngine } from '../lcm/engine.js';
3
3
  import '../types-ByK7T3L6.js';
4
4
  import '../index-DJ9QWMw-.js';
@@ -1,4 +1,4 @@
1
- import { a8 as CompressionGuidelineOptimizerEventCounts, a9 as CompressionGuidelineOptimizerActionSummary, aa as CompressionGuidelineOptimizerRuleUpdate, ab as MemoryActionType, m as MemoryActionEvent, C as CompressionGuidelineOptimizerState } from './types-CgcCpUrf.js';
1
+ import { a8 as CompressionGuidelineOptimizerEventCounts, a9 as CompressionGuidelineOptimizerActionSummary, aa as CompressionGuidelineOptimizerRuleUpdate, ab as MemoryActionType, m as MemoryActionEvent, C as CompressionGuidelineOptimizerState } from './types-D96bCB3C.js';
2
2
  import './types-ByK7T3L6.js';
3
3
  import './index-DJ9QWMw-.js';
4
4
 
package/dist/config.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { P as PluginConfig } from './types-CgcCpUrf.js';
1
+ import { P as PluginConfig } from './types-D96bCB3C.js';
2
2
  import './types-ByK7T3L6.js';
3
3
  import './index-DJ9QWMw-.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { P as PluginConfig, g as MemoryFile } from '../types-CgcCpUrf.js';
1
+ import { P as PluginConfig, g as MemoryFile } from '../types-D96bCB3C.js';
2
2
  import { RolloutSummaryInput, MaterializeResult } from './codex-materialize.js';
3
3
  import '../types-ByK7T3L6.js';
4
4
  import '../index-DJ9QWMw-.js';
@@ -1,4 +1,4 @@
1
- import { g as MemoryFile } from '../types-CgcCpUrf.js';
1
+ import { g as MemoryFile } from '../types-D96bCB3C.js';
2
2
  import '../types-ByK7T3L6.js';
3
3
  import '../index-DJ9QWMw-.js';
4
4
 
@@ -1,6 +1,6 @@
1
1
  export { MATERIALIZE_VERSION, MaterializeOptions, MaterializeResult, MemoryMdValidation, RolloutSummaryInput, SENTINEL_FILE, TMP_DIR, approximateTokenCount, describeMemoriesDir, ensureSentinel, materializeForNamespace, renderMemoryMd, renderMemorySummary, renderRawMemories, renderRolloutSummary, truncateToTokenBudget, validateMemoryMd } from './codex-materialize.js';
2
2
  export { RunMaterializeOptions, runCodexMaterialize } from './codex-materialize-runner.js';
3
- import { P as PluginConfig } from '../types-CgcCpUrf.js';
3
+ import { P as PluginConfig } from '../types-D96bCB3C.js';
4
4
  import '../types-ByK7T3L6.js';
5
5
  import '../index-DJ9QWMw-.js';
6
6
 
@@ -1,7 +1,7 @@
1
1
  import { StorageManager } from './storage.js';
2
2
  import './page-versioning.js';
3
3
  import './consolidation-operator.js';
4
- import './types-CgcCpUrf.js';
4
+ import './types-D96bCB3C.js';
5
5
  import './types-ByK7T3L6.js';
6
6
  import './index-DJ9QWMw-.js';
7
7
  import './memory-projection-store.js';
@@ -1,7 +1,7 @@
1
1
  import { StorageManager } from './storage.js';
2
2
  import { VersioningConfig } from './page-versioning.js';
3
3
  import './consolidation-operator.js';
4
- import './types-CgcCpUrf.js';
4
+ import './types-D96bCB3C.js';
5
5
  import './types-ByK7T3L6.js';
6
6
  import './index-DJ9QWMw-.js';
7
7
  import './memory-projection-store.js';
@@ -1,5 +1,5 @@
1
1
  import { StorageManager } from '../storage.js';
2
- import { h as MemoryStatus, P as PluginConfig, M as MemoryCategory } from '../types-CgcCpUrf.js';
2
+ import { h as MemoryStatus, P as PluginConfig, M as MemoryCategory } from '../types-D96bCB3C.js';
3
3
  import { S as SemanticDedupLookup } from '../semantic-DJR8_DMQ.js';
4
4
  import { LocalLlmClient } from '../local-llm.js';
5
5
  import { FallbackLlmClient } from '../fallback-llm.js';
@@ -1,7 +1,7 @@
1
1
  import { SearchBackend, SearchExecutionOptions } from '../search/port.js';
2
2
  import { ConversationChunk } from './chunker.js';
3
3
  import { C as ConversationSearchResult, F as FaissConversationIndexAdapter } from '../faiss-adapter-BHecI1fF.js';
4
- import '../types-CgcCpUrf.js';
4
+ import '../types-D96bCB3C.js';
5
5
  import '../types-ByK7T3L6.js';
6
6
  import '../index-DJ9QWMw-.js';
7
7
  import '../runtime/child-process.js';
@@ -1,4 +1,4 @@
1
- import { _ as TranscriptEntry } from '../types-CgcCpUrf.js';
1
+ import { _ as TranscriptEntry } from '../types-D96bCB3C.js';
2
2
  import '../types-ByK7T3L6.js';
3
3
  import '../index-DJ9QWMw-.js';
4
4
 
@@ -1,7 +1,7 @@
1
1
  import './chunker.js';
2
2
  export { b as FaissAdapterConfig, c as FaissAdapterError, F as FaissConversationIndexAdapter, d as FaissHealthResult, e as FaissInspectResult, f as failOpenFaissHealth, r as resolveDefaultFaissScriptPath } from '../faiss-adapter-BHecI1fF.js';
3
3
  import '../runtime/child-process.js';
4
- import '../types-CgcCpUrf.js';
4
+ import '../types-D96bCB3C.js';
5
5
  import '../types-ByK7T3L6.js';
6
6
  import '../index-DJ9QWMw-.js';
7
7
  import '../search/port.js';
@@ -1,7 +1,7 @@
1
1
  import { F as FaissConversationIndexAdapter } from '../faiss-adapter-BHecI1fF.js';
2
2
  import { ConversationChunk } from './chunker.js';
3
3
  import '../search/port.js';
4
- import '../types-CgcCpUrf.js';
4
+ import '../types-D96bCB3C.js';
5
5
  import '../types-ByK7T3L6.js';
6
6
  import '../index-DJ9QWMw-.js';
7
7
  import '../runtime/child-process.js';
@@ -1,6 +1,6 @@
1
1
  import '../search/port.js';
2
2
  export { C as ConversationSearchResult, s as searchConversationIndex, a as searchConversationIndexFaissFailOpen } from '../faiss-adapter-BHecI1fF.js';
3
- import '../types-CgcCpUrf.js';
3
+ import '../types-D96bCB3C.js';
4
4
  import '../types-ByK7T3L6.js';
5
5
  import '../index-DJ9QWMw-.js';
6
6
  import './chunker.js';
@@ -1,4 +1,4 @@
1
- import { P as PluginConfig, g as MemoryFile } from './types-CgcCpUrf.js';
1
+ import { P as PluginConfig, g as MemoryFile } from './types-D96bCB3C.js';
2
2
  import './types-ByK7T3L6.js';
3
3
  import './index-DJ9QWMw-.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { ac as EntityMention } from './types-CgcCpUrf.js';
1
+ import { ac as EntityMention } from './types-D96bCB3C.js';
2
2
  import './types-ByK7T3L6.js';
3
3
  import './index-DJ9QWMw-.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { g as MemoryFile, P as PluginConfig } from './types-CgcCpUrf.js';
1
+ import { g as MemoryFile, P as PluginConfig } from './types-D96bCB3C.js';
2
2
  import { TrustZoneName } from './trust-zones.js';
3
3
  import { T as Taxonomy } from './types-DJhqDJUV.js';
4
4
  import { DirectAnswerResult } from './direct-answer.js';
@@ -1,5 +1,5 @@
1
1
  import { TrustZoneName } from './trust-zones.js';
2
- import { g as MemoryFile } from './types-CgcCpUrf.js';
2
+ import { g as MemoryFile } from './types-D96bCB3C.js';
3
3
  import './types-ByK7T3L6.js';
4
4
  import './index-DJ9QWMw-.js';
5
5
 
@@ -1,4 +1,4 @@
1
- import { P as PluginConfig } from './types-CgcCpUrf.js';
1
+ import { P as PluginConfig } from './types-D96bCB3C.js';
2
2
  import './types-ByK7T3L6.js';
3
3
  import './index-DJ9QWMw-.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { M as MemoryCategory, a5 as ImportanceLevel } from '../types-CgcCpUrf.js';
1
+ import { M as MemoryCategory, a5 as ImportanceLevel } from '../types-D96bCB3C.js';
2
2
  import { LoggerBackend } from '../logger.js';
3
3
  import '../types-ByK7T3L6.js';
4
4
  import '../index-DJ9QWMw-.js';
@@ -1,5 +1,5 @@
1
1
  import { StorageManager } from './storage.js';
2
- import { P as PluginConfig, _ as TranscriptEntry } from './types-CgcCpUrf.js';
2
+ import { P as PluginConfig, _ as TranscriptEntry } from './types-D96bCB3C.js';
3
3
  import './page-versioning.js';
4
4
  import './consolidation-operator.js';
5
5
  import './memory-projection-store.js';
@@ -1,4 +1,4 @@
1
- import { ad as EntitySchemaDefinition, ae as EntitySchemaSectionDefinition, E as EntityStructuredSection } from './types-CgcCpUrf.js';
1
+ import { ad as EntitySchemaDefinition, ae as EntitySchemaSectionDefinition, E as EntityStructuredSection } from './types-D96bCB3C.js';
2
2
  import './types-ByK7T3L6.js';
3
3
  import './index-DJ9QWMw-.js';
4
4
 
@@ -1,5 +1,5 @@
1
- import { O as Orchestrator } from './orchestrator-D1wcmPNj.js';
2
- import { M as MemoryCategory, P as PluginConfig } from './types-CgcCpUrf.js';
1
+ import { O as Orchestrator } from './orchestrator-Cg1UkvmO.js';
2
+ import { M as MemoryCategory, P as PluginConfig } from './types-D96bCB3C.js';
3
3
  import './briefing.js';
4
4
  import './storage.js';
5
5
  import './page-versioning.js';
@@ -37,7 +37,7 @@ import './lcm/archive.js';
37
37
  import './lcm/summarizer.js';
38
38
  import './lcm/dag.js';
39
39
  import './lcm/queue.js';
40
- import './semantic-consolidation-MWOdNtSE.js';
40
+ import './semantic-consolidation-BICZvQ3C.js';
41
41
  import './connectors/codex-materialize.js';
42
42
  import './logger.js';
43
43
  import './conversation-index/backend.js';
@@ -1,5 +1,5 @@
1
1
  import { JudgeVerdictKind } from './extraction-judge.js';
2
- import './types-CgcCpUrf.js';
2
+ import './types-D96bCB3C.js';
3
3
  import './types-ByK7T3L6.js';
4
4
  import './index-DJ9QWMw-.js';
5
5
  import './local-llm.js';
@@ -1,5 +1,5 @@
1
1
  import { JudgeVerdictKind } from './extraction-judge.js';
2
- import './types-CgcCpUrf.js';
2
+ import './types-D96bCB3C.js';
3
3
  import './types-ByK7T3L6.js';
4
4
  import './index-DJ9QWMw-.js';
5
5
  import './local-llm.js';
@@ -1,4 +1,4 @@
1
- import { a5 as ImportanceLevel, P as PluginConfig } from './types-CgcCpUrf.js';
1
+ import { a5 as ImportanceLevel, P as PluginConfig } from './types-D96bCB3C.js';
2
2
  import { LocalLlmClient } from './local-llm.js';
3
3
  import { FallbackLlmClient } from './fallback-llm.js';
4
4
  import './types-ByK7T3L6.js';
@@ -1,6 +1,6 @@
1
1
  import { LocalLlmClient } from './local-llm.js';
2
2
  import { ContradictionVerificationResult, SuggestedLinks, MemorySummaryResult } from './schemas.js';
3
- import { P as PluginConfig, G as GatewayConfig, Y as BufferTurn, af as ExtractionResult, g as MemoryFile, ag as ConsolidationResult, ah as DaySummaryResult } from './types-CgcCpUrf.js';
3
+ import { P as PluginConfig, G as GatewayConfig, Z as BufferTurn, af as ExtractionResult, g as MemoryFile, ag as ConsolidationResult, ah as DaySummaryResult } from './types-D96bCB3C.js';
4
4
  import { ModelRegistry } from './model-registry.js';
5
5
  import { ProfilingCollector } from './profiling.js';
6
6
  import './types-ByK7T3L6.js';
@@ -1,4 +1,4 @@
1
- import { G as GatewayConfig, f as AgentPersonaModelConfig, P as PluginConfig } from './types-CgcCpUrf.js';
1
+ import { G as GatewayConfig, f as AgentPersonaModelConfig, P as PluginConfig } from './types-D96bCB3C.js';
2
2
  import { GetRuntimeAuthForModelFn, ResolveApiKeyFn } from './resolve-provider-secret.js';
3
3
  import './types-ByK7T3L6.js';
4
4
  import './index-DJ9QWMw-.js';
@@ -1,4 +1,4 @@
1
- import { q as ContinuityIncidentRecord, r as ContinuityIncidentCloseInput, p as ContinuityIncidentOpenInput, s as ContinuityImprovementLoop, u as ContinuityLoopReviewInput, t as ContinuityLoopUpsertInput } from './types-CgcCpUrf.js';
1
+ import { q as ContinuityIncidentRecord, r as ContinuityIncidentCloseInput, p as ContinuityIncidentOpenInput, s as ContinuityImprovementLoop, u as ContinuityLoopReviewInput, t as ContinuityLoopUpsertInput } from './types-D96bCB3C.js';
2
2
  import './types-ByK7T3L6.js';
3
3
  import './index-DJ9QWMw-.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { a5 as ImportanceLevel, g as MemoryFile, I as ImportanceScore, M as MemoryCategory } from './types-CgcCpUrf.js';
1
+ import { a5 as ImportanceLevel, g as MemoryFile, I as ImportanceScore, M as MemoryCategory } from './types-D96bCB3C.js';
2
2
  import './types-ByK7T3L6.js';
3
3
  import './index-DJ9QWMw-.js';
4
4