@remnic/core 9.25.4 → 9.25.5

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 (155) hide show
  1. package/dist/access-admin-ops-surface.d.ts +3 -2
  2. package/dist/access-admin-ops-surface.js +9 -8
  3. package/dist/access-authorization-probe.d.ts +10 -3
  4. package/dist/access-authorization-probe.js +12 -9
  5. package/dist/access-boundary.d.ts +6 -3
  6. package/dist/access-boundary.js +13 -10
  7. package/dist/access-cli.js +41 -40
  8. package/dist/access-cli.js.map +1 -1
  9. package/dist/access-http.d.ts +3 -2
  10. package/dist/access-http.js +16 -15
  11. package/dist/access-identity-continuity-surface.d.ts +2 -1
  12. package/dist/access-identity-continuity-surface.js +9 -8
  13. package/dist/access-lcm-surface.d.ts +3 -2
  14. package/dist/access-lcm-surface.js +9 -8
  15. package/dist/access-mcp-output-schemas.js +1 -1
  16. package/dist/access-mcp.d.ts +3 -2
  17. package/dist/access-mcp.js +13 -12
  18. package/dist/access-namespace-preflight.js +9 -8
  19. package/dist/access-observe-write-surface.d.ts +3 -2
  20. package/dist/access-observe-write-surface.js +9 -8
  21. package/dist/access-operations-batch.js +10 -9
  22. package/dist/access-operations.d.ts +6 -5
  23. package/dist/access-operations.js +11 -10
  24. package/dist/access-recall-concurrency.d.ts +3 -2
  25. package/dist/access-recall-concurrency.js +9 -8
  26. package/dist/access-recall-response.d.ts +4 -2
  27. package/dist/access-recall-response.js +9 -8
  28. package/dist/access-recall-surface.d.ts +3 -2
  29. package/dist/access-recall-surface.js +9 -8
  30. package/dist/access-schema.d.ts +76 -76
  31. package/dist/{access-service-BlNKWBC9.d.ts → access-service-BJQ22URi.d.ts} +4 -1
  32. package/dist/access-service.d.ts +3 -2
  33. package/dist/access-service.js +9 -8
  34. package/dist/access-surface-catalog.d.ts +3 -2
  35. package/dist/bootstrap.d.ts +2 -1
  36. package/dist/briefing.js +3 -3
  37. package/dist/causal-consolidation.js +4 -4
  38. package/dist/{chunk-GF22HWS2.js → chunk-2PHX3I5C.js} +7 -7
  39. package/dist/{chunk-3I35RLJW.js → chunk-32XTXKIA.js} +14 -13
  40. package/dist/chunk-32XTXKIA.js.map +1 -0
  41. package/dist/{chunk-LXKJNUND.js → chunk-37VPMR4E.js} +2 -2
  42. package/dist/{chunk-3CDMIR3C.js → chunk-3CHQZVAL.js} +2 -2
  43. package/dist/{chunk-U37RGPJT.js → chunk-5J7HJ7RT.js} +2 -2
  44. package/dist/{chunk-AGR7MGUX.js → chunk-7IGWPXVC.js} +2 -2
  45. package/dist/{chunk-FIGDB2HR.js → chunk-7KXQ44PA.js} +2 -2
  46. package/dist/chunk-AHVEHR6K.js +82 -0
  47. package/dist/chunk-AHVEHR6K.js.map +1 -0
  48. package/dist/{chunk-MNLZGCM2.js → chunk-AQ2ZQYDI.js} +3 -3
  49. package/dist/{chunk-TWCOYET2.js → chunk-B6JDYXL7.js} +2 -1
  50. package/dist/chunk-B6JDYXL7.js.map +1 -0
  51. package/dist/{chunk-RROMWDDC.js → chunk-BL4JHZSO.js} +49 -12
  52. package/dist/chunk-BL4JHZSO.js.map +1 -0
  53. package/dist/{chunk-JMDZDT24.js → chunk-D7MAWMMK.js} +18 -4
  54. package/dist/chunk-D7MAWMMK.js.map +1 -0
  55. package/dist/{chunk-TG2DJFH7.js → chunk-E5A6C4A5.js} +20 -20
  56. package/dist/{chunk-FDAPXLRC.js → chunk-FR75B4UU.js} +81 -55
  57. package/dist/chunk-FR75B4UU.js.map +1 -0
  58. package/dist/{chunk-DPYYSG6F.js → chunk-G6MGAE36.js} +7 -7
  59. package/dist/{chunk-GNFZFJBJ.js → chunk-IR4LGIH6.js} +2 -2
  60. package/dist/{chunk-MPDX5QMH.js → chunk-JA4HEXV7.js} +2 -2
  61. package/dist/{chunk-XTAAG4SQ.js → chunk-K4DP5KZA.js} +6 -6
  62. package/dist/{chunk-AT6DNUCM.js → chunk-NY6W6CJW.js} +2 -2
  63. package/dist/{chunk-NMGO2HAZ.js → chunk-OIE242WM.js} +2 -2
  64. package/dist/{chunk-SZN6XVFC.js → chunk-PS5OG75R.js} +2 -2
  65. package/dist/{chunk-VY6SDKWZ.js → chunk-SSYBI43M.js} +2 -2
  66. package/dist/{chunk-IE4HB6O5.js → chunk-TPYZ727G.js} +3 -3
  67. package/dist/{chunk-5ZGWA4AG.js → chunk-UMFLAACL.js} +6 -6
  68. package/dist/{chunk-THHPDPMS.js → chunk-UOURUMBN.js} +2 -2
  69. package/dist/{chunk-6LRTGCRV.js → chunk-VPSAVXHM.js} +3 -3
  70. package/dist/{chunk-AL4TZWI3.js → chunk-W33DEUKR.js} +2 -2
  71. package/dist/{chunk-W4ZDTHWZ.js → chunk-WIGBTWXA.js} +2 -2
  72. package/dist/{chunk-NVYCTASB.js → chunk-WSEA52RI.js} +2 -2
  73. package/dist/{chunk-LARPWF3S.js → chunk-ZPUFQGUF.js} +4 -4
  74. package/dist/{cli-Zc6UclD1.d.ts → cli-1W7cNjJJ.d.ts} +2 -2
  75. package/dist/cli.d.ts +4 -3
  76. package/dist/cli.js +28 -27
  77. package/dist/compounding/engine.js +3 -3
  78. package/dist/connectors/codex-materialize-runner.js +3 -3
  79. package/dist/connectors/index.js +3 -3
  80. package/dist/corpus-watermark.js +5 -5
  81. package/dist/entity-retrieval.js +3 -3
  82. package/dist/explicit-capture.d.ts +2 -1
  83. package/dist/{first-start-migration-LEXL3XYL.js → first-start-migration-BKNGOFED.js} +4 -4
  84. package/dist/index.d.ts +393 -392
  85. package/dist/index.js +73 -53
  86. package/dist/lcm/engine.js +3 -3
  87. package/dist/lcm/index.js +8 -8
  88. package/dist/maintenance/memory-governance.js +3 -3
  89. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +3 -3
  90. package/dist/maintenance/rebuild-memory-projection.js +4 -4
  91. package/dist/mcp-memory-inspector-app.d.ts +3 -2
  92. package/dist/namespaces/migrate.js +4 -4
  93. package/dist/namespaces/storage.js +3 -3
  94. package/dist/operator-doctor-corpus.js +6 -6
  95. package/dist/operator-toolkit.js +9 -9
  96. package/dist/orchestration/maintenance.js +8 -8
  97. package/dist/{orchestrator-BTGgoKli.d.ts → orchestrator-BtA1wC5K.d.ts} +2 -0
  98. package/dist/orchestrator.d.ts +2 -1
  99. package/dist/orchestrator.js +41 -40
  100. package/dist/recall-context-composition.d.ts +30 -0
  101. package/dist/recall-context-composition.js +24 -0
  102. package/dist/recall-context-composition.js.map +1 -0
  103. package/dist/schemas.d.ts +76 -76
  104. package/dist/semantic-consolidation.js +4 -4
  105. package/dist/semantic-rule-promotion.js +3 -3
  106. package/dist/semantic-rule-verifier.js +3 -3
  107. package/dist/shared-context/manager.d.ts +8 -8
  108. package/dist/storage.js +2 -2
  109. package/dist/transfer/types.d.ts +66 -66
  110. package/dist/verified-recall.js +3 -3
  111. package/package.json +2 -2
  112. package/src/access-authorization-probe.ts +30 -1
  113. package/src/access-boundary.ts +21 -0
  114. package/src/access-http.test.ts +86 -1
  115. package/src/access-http.ts +6 -6
  116. package/src/access-mcp-output-schemas.ts +1 -0
  117. package/src/access-recall-response.ts +18 -13
  118. package/src/access-recall-surface.ts +11 -1
  119. package/src/access-service.ts +3 -0
  120. package/src/index.ts +1 -1
  121. package/src/orchestration/orchestrator-helpers.ts +2 -0
  122. package/src/orchestration/recall-internal.ts +49 -49
  123. package/src/recall-context-composition.test.ts +90 -0
  124. package/src/recall-context-composition.ts +104 -0
  125. package/src/recall-curiosity-composition.test.ts +301 -0
  126. package/dist/chunk-3I35RLJW.js.map +0 -1
  127. package/dist/chunk-FDAPXLRC.js.map +0 -1
  128. package/dist/chunk-JMDZDT24.js.map +0 -1
  129. package/dist/chunk-RROMWDDC.js.map +0 -1
  130. package/dist/chunk-TWCOYET2.js.map +0 -1
  131. /package/dist/{chunk-GF22HWS2.js.map → chunk-2PHX3I5C.js.map} +0 -0
  132. /package/dist/{chunk-LXKJNUND.js.map → chunk-37VPMR4E.js.map} +0 -0
  133. /package/dist/{chunk-3CDMIR3C.js.map → chunk-3CHQZVAL.js.map} +0 -0
  134. /package/dist/{chunk-U37RGPJT.js.map → chunk-5J7HJ7RT.js.map} +0 -0
  135. /package/dist/{chunk-AGR7MGUX.js.map → chunk-7IGWPXVC.js.map} +0 -0
  136. /package/dist/{chunk-FIGDB2HR.js.map → chunk-7KXQ44PA.js.map} +0 -0
  137. /package/dist/{chunk-MNLZGCM2.js.map → chunk-AQ2ZQYDI.js.map} +0 -0
  138. /package/dist/{chunk-TG2DJFH7.js.map → chunk-E5A6C4A5.js.map} +0 -0
  139. /package/dist/{chunk-DPYYSG6F.js.map → chunk-G6MGAE36.js.map} +0 -0
  140. /package/dist/{chunk-GNFZFJBJ.js.map → chunk-IR4LGIH6.js.map} +0 -0
  141. /package/dist/{chunk-MPDX5QMH.js.map → chunk-JA4HEXV7.js.map} +0 -0
  142. /package/dist/{chunk-XTAAG4SQ.js.map → chunk-K4DP5KZA.js.map} +0 -0
  143. /package/dist/{chunk-AT6DNUCM.js.map → chunk-NY6W6CJW.js.map} +0 -0
  144. /package/dist/{chunk-NMGO2HAZ.js.map → chunk-OIE242WM.js.map} +0 -0
  145. /package/dist/{chunk-SZN6XVFC.js.map → chunk-PS5OG75R.js.map} +0 -0
  146. /package/dist/{chunk-VY6SDKWZ.js.map → chunk-SSYBI43M.js.map} +0 -0
  147. /package/dist/{chunk-IE4HB6O5.js.map → chunk-TPYZ727G.js.map} +0 -0
  148. /package/dist/{chunk-5ZGWA4AG.js.map → chunk-UMFLAACL.js.map} +0 -0
  149. /package/dist/{chunk-THHPDPMS.js.map → chunk-UOURUMBN.js.map} +0 -0
  150. /package/dist/{chunk-6LRTGCRV.js.map → chunk-VPSAVXHM.js.map} +0 -0
  151. /package/dist/{chunk-AL4TZWI3.js.map → chunk-W33DEUKR.js.map} +0 -0
  152. /package/dist/{chunk-W4ZDTHWZ.js.map → chunk-WIGBTWXA.js.map} +0 -0
  153. /package/dist/{chunk-NVYCTASB.js.map → chunk-WSEA52RI.js.map} +0 -0
  154. /package/dist/{chunk-LARPWF3S.js.map → chunk-ZPUFQGUF.js.map} +0 -0
  155. /package/dist/{first-start-migration-LEXL3XYL.js.map → first-start-migration-BKNGOFED.js.map} +0 -0
@@ -1,7 +1,8 @@
1
1
  import {
2
2
  OPERATION_NAMES,
3
- getOperation
4
- } from "./chunk-RROMWDDC.js";
3
+ getOperation,
4
+ operationRequiresAuthorizedNamespace
5
+ } from "./chunk-BL4JHZSO.js";
5
6
  import {
6
7
  assertOperationAuthorizationAllowed
7
8
  } from "./chunk-MZWSOLMT.js";
@@ -10,6 +11,12 @@ import {
10
11
  } from "./chunk-2Z24E5W2.js";
11
12
 
12
13
  // src/access-authorization-probe.ts
14
+ var UNRESOLVABLE_RESOURCE_OPERATIONS = /* @__PURE__ */ new Set([
15
+ "review_resolve",
16
+ "contradiction_detail",
17
+ "chat_message",
18
+ "chat_events"
19
+ ]);
13
20
  function probeOperationAuthorization(capabilities, requestedOperations) {
14
21
  const operations = [];
15
22
  for (const candidate of requestedOperations) {
@@ -31,8 +38,15 @@ function probeOperationAuthorization(capabilities, requestedOperations) {
31
38
  }
32
39
  return { authorized: true, operations };
33
40
  }
41
+ function authorizationProbeNamespaces(operations, requestedNamespace) {
42
+ const namespaceOperations = operations.filter(
43
+ (operation) => operationRequiresAuthorizedNamespace(operation) && !UNRESOLVABLE_RESOURCE_OPERATIONS.has(operation)
44
+ );
45
+ return namespaceOperations.length > 0 ? [requestedNamespace] : [];
46
+ }
34
47
 
35
48
  export {
36
- probeOperationAuthorization
49
+ probeOperationAuthorization,
50
+ authorizationProbeNamespaces
37
51
  };
38
- //# sourceMappingURL=chunk-JMDZDT24.js.map
52
+ //# sourceMappingURL=chunk-D7MAWMMK.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/access-authorization-probe.ts"],"sourcesContent":["import {\n getOperation,\n operationRequiresAuthorizedNamespace,\n OPERATION_NAMES,\n type OperationName,\n} from \"./access-boundary.js\";\nimport { EngramAccessInputError } from \"./access-errors.js\";\nimport {\n assertOperationAuthorizationAllowed,\n type TokenCapabilities,\n} from \"./access-token-capabilities.js\";\n\nconst UNRESOLVABLE_RESOURCE_OPERATIONS = new Set<OperationName>([\n \"review_resolve\",\n \"contradiction_detail\",\n \"chat_message\",\n \"chat_events\",\n]);\n\nexport interface AuthorizationProbeResponse {\n readonly authorized: true;\n readonly operations: readonly OperationName[];\n}\n\n/**\n * Verify that the presenting token may call every requested operation without\n * invoking any operation handler.\n */\nexport function probeOperationAuthorization(\n capabilities: TokenCapabilities | undefined | null,\n requestedOperations: readonly string[],\n): AuthorizationProbeResponse {\n const operations: OperationName[] = [];\n for (const candidate of requestedOperations) {\n if (!OPERATION_NAMES.includes(candidate as OperationName)) {\n throw new EngramAccessInputError(`unsupported operation: ${candidate}`);\n }\n const operation = candidate as OperationName;\n if (!operations.includes(operation)) operations.push(operation);\n }\n\n if (operations.length === 0) {\n throw new EngramAccessInputError(\"at least one operation is required\");\n }\n\n for (const operation of operations) {\n const boundOperation = getOperation(operation);\n if (!boundOperation) {\n throw new Error(`authorization probe operation is not registered: ${operation}`);\n }\n assertOperationAuthorizationAllowed(capabilities, boundOperation.spec);\n }\n\n return { authorized: true, operations };\n}\n\n/**\n * Resolve every namespace an authorization probe can verify from the request.\n * Resource-scoped routes resolve their stored target only after a resource id\n * is supplied, so probes validate only request-resolvable namespaces.\n */\nexport function authorizationProbeNamespaces(\n operations: readonly OperationName[],\n requestedNamespace: string | undefined,\n): readonly (string | undefined)[] {\n const namespaceOperations = operations.filter(\n (operation) =>\n operationRequiresAuthorizedNamespace(operation) &&\n !UNRESOLVABLE_RESOURCE_OPERATIONS.has(operation),\n );\n return namespaceOperations.length > 0 ? [requestedNamespace] : [];\n}\n"],"mappings":";;;;;;;;;;;;;AAYA,IAAM,mCAAmC,oBAAI,IAAmB;AAAA,EAC9D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAWM,SAAS,4BACd,cACA,qBAC4B;AAC5B,QAAM,aAA8B,CAAC;AACrC,aAAW,aAAa,qBAAqB;AAC3C,QAAI,CAAC,gBAAgB,SAAS,SAA0B,GAAG;AACzD,YAAM,IAAI,uBAAuB,0BAA0B,SAAS,EAAE;AAAA,IACxE;AACA,UAAM,YAAY;AAClB,QAAI,CAAC,WAAW,SAAS,SAAS,EAAG,YAAW,KAAK,SAAS;AAAA,EAChE;AAEA,MAAI,WAAW,WAAW,GAAG;AAC3B,UAAM,IAAI,uBAAuB,oCAAoC;AAAA,EACvE;AAEA,aAAW,aAAa,YAAY;AAClC,UAAM,iBAAiB,aAAa,SAAS;AAC7C,QAAI,CAAC,gBAAgB;AACnB,YAAM,IAAI,MAAM,oDAAoD,SAAS,EAAE;AAAA,IACjF;AACA,wCAAoC,cAAc,eAAe,IAAI;AAAA,EACvE;AAEA,SAAO,EAAE,YAAY,MAAM,WAAW;AACxC;AAOO,SAAS,6BACd,YACA,oBACiC;AACjC,QAAM,sBAAsB,WAAW;AAAA,IACrC,CAAC,cACC,qCAAqC,SAAS,KAC9C,CAAC,iCAAiC,IAAI,SAAS;AAAA,EACnD;AACA,SAAO,oBAAoB,SAAS,IAAI,CAAC,kBAAkB,IAAI,CAAC;AAClE;","names":[]}
@@ -1,3 +1,6 @@
1
+ import {
2
+ claudeReplayNormalizer
3
+ } from "./chunk-54BGIBCR.js";
1
4
  import {
2
5
  openclawReplayNormalizer
3
6
  } from "./chunk-H4CKS5B2.js";
@@ -5,8 +8,8 @@ import {
5
8
  chatgptReplayNormalizer
6
9
  } from "./chunk-MMACM5G2.js";
7
10
  import {
8
- claudeReplayNormalizer
9
- } from "./chunk-54BGIBCR.js";
11
+ exportJsonBundle
12
+ } from "./chunk-UP6MOYCB.js";
10
13
  import {
11
14
  exportSqlite
12
15
  } from "./chunk-BV2TIZ4F.js";
@@ -28,9 +31,6 @@ import {
28
31
  import {
29
32
  exportMarkdownBundle
30
33
  } from "./chunk-765K3SAT.js";
31
- import {
32
- exportJsonBundle
33
- } from "./chunk-UP6MOYCB.js";
34
34
  import {
35
35
  RoutingRulesStore
36
36
  } from "./chunk-XL24QQ63.js";
@@ -49,11 +49,14 @@ import {
49
49
  isReplaySource,
50
50
  normalizeReplaySessionKey
51
51
  } from "./chunk-AJVLDJU6.js";
52
+ import {
53
+ rebuildMemoryLifecycleLedger
54
+ } from "./chunk-UOURUMBN.js";
52
55
  import {
53
56
  rebuildMemoryProjection,
54
57
  repairMemoryProjection,
55
58
  verifyMemoryProjection
56
- } from "./chunk-IE4HB6O5.js";
59
+ } from "./chunk-TPYZ727G.js";
57
60
  import {
58
61
  rebuildObservations
59
62
  } from "./chunk-DX3XRGLH.js";
@@ -63,9 +66,6 @@ import {
63
66
  import {
64
67
  migrateObservations
65
68
  } from "./chunk-MNB5RMAY.js";
66
- import {
67
- rebuildMemoryLifecycleLedger
68
- } from "./chunk-THHPDPMS.js";
69
69
  import {
70
70
  getBulkImportSource,
71
71
  listBulkImportSources,
@@ -85,16 +85,16 @@ import {
85
85
  } from "./chunk-TERNBNJB.js";
86
86
  import {
87
87
  searchVerifiedEpisodes
88
- } from "./chunk-VY6SDKWZ.js";
88
+ } from "./chunk-SSYBI43M.js";
89
89
  import {
90
90
  ThreadingManager
91
91
  } from "./chunk-OJP3N7UK.js";
92
92
  import {
93
93
  promoteSemanticRuleFromMemory
94
- } from "./chunk-GNFZFJBJ.js";
94
+ } from "./chunk-IR4LGIH6.js";
95
95
  import {
96
96
  searchVerifiedSemanticRules
97
- } from "./chunk-LXKJNUND.js";
97
+ } from "./chunk-37VPMR4E.js";
98
98
  import {
99
99
  buildResumeBundleFromState,
100
100
  getResumeBundleStatus,
@@ -135,7 +135,7 @@ import {
135
135
  runOperatorInventory,
136
136
  runOperatorRepair,
137
137
  runOperatorSetup
138
- } from "./chunk-5ZGWA4AG.js";
138
+ } from "./chunk-UMFLAACL.js";
139
139
  import {
140
140
  analyzeSessionIntegrity,
141
141
  applySessionRepair,
@@ -206,7 +206,7 @@ import {
206
206
  import {
207
207
  EngramAccessHttpServer,
208
208
  MeetingsInputError
209
- } from "./chunk-3I35RLJW.js";
209
+ } from "./chunk-32XTXKIA.js";
210
210
  import {
211
211
  WearablesInputError
212
212
  } from "./chunk-V7IZKJI3.js";
@@ -219,13 +219,13 @@ import {
219
219
  createProductionChatLlmAdapter,
220
220
  loadChatSession,
221
221
  sessionBelongsToPrincipal
222
- } from "./chunk-6LRTGCRV.js";
222
+ } from "./chunk-VPSAVXHM.js";
223
223
  import {
224
224
  getAbstractionNodeStoreStatus
225
225
  } from "./chunk-OADWQ5CR.js";
226
226
  import {
227
227
  EngramAccessService
228
- } from "./chunk-RROMWDDC.js";
228
+ } from "./chunk-BL4JHZSO.js";
229
229
  import {
230
230
  WorkStorage
231
231
  } from "./chunk-GDB4J2H3.js";
@@ -248,7 +248,7 @@ import {
248
248
  readMemoryGovernanceRunArtifact,
249
249
  restoreMemoryGovernanceRun,
250
250
  runMemoryGovernance
251
- } from "./chunk-3CDMIR3C.js";
251
+ } from "./chunk-3CHQZVAL.js";
252
252
  import {
253
253
  getObjectiveStateStoreStatus
254
254
  } from "./chunk-6HMYUWXR.js";
@@ -256,7 +256,7 @@ import {
256
256
  listNamespaces,
257
257
  runNamespaceMigration,
258
258
  verifyNamespaces
259
- } from "./chunk-LARPWF3S.js";
259
+ } from "./chunk-ZPUFQGUF.js";
260
260
  import {
261
261
  renderQmdBacklogStatus
262
262
  } from "./chunk-IUM3VSHI.js";
@@ -271,7 +271,7 @@ import {
271
271
  } from "./chunk-443XCR34.js";
272
272
  import {
273
273
  meetingIdDate
274
- } from "./chunk-XTAAG4SQ.js";
274
+ } from "./chunk-K4DP5KZA.js";
275
275
  import {
276
276
  isValidTranscriptDate
277
277
  } from "./chunk-UHVXE24Y.js";
@@ -7976,4 +7976,4 @@ export {
7976
7976
  listMemoryMarkdownFilePaths,
7977
7977
  registerCli
7978
7978
  };
7979
- //# sourceMappingURL=chunk-TG2DJFH7.js.map
7979
+ //# sourceMappingURL=chunk-E5A6C4A5.js.map
@@ -13,7 +13,7 @@ import {
13
13
  import {
14
14
  ActivityStore,
15
15
  MaintenanceScheduler
16
- } from "./chunk-DPYYSG6F.js";
16
+ } from "./chunk-G6MGAE36.js";
17
17
  import {
18
18
  runPeerProfileReasoner
19
19
  } from "./chunk-I74SUMNI.js";
@@ -22,7 +22,7 @@ import {
22
22
  } from "./chunk-7HYPN2GC.js";
23
23
  import {
24
24
  LcmEngine
25
- } from "./chunk-GF22HWS2.js";
25
+ } from "./chunk-2PHX3I5C.js";
26
26
  import {
27
27
  chunkTranscriptEntries
28
28
  } from "./chunk-TECVW3JP.js";
@@ -32,7 +32,7 @@ import {
32
32
  import {
33
33
  CompoundingEngine,
34
34
  defaultTierMigrationCycleBudget
35
- } from "./chunk-U37RGPJT.js";
35
+ } from "./chunk-5J7HJ7RT.js";
36
36
  import {
37
37
  SharedContextManager
38
38
  } from "./chunk-JGUXPJUQ.js";
@@ -41,6 +41,9 @@ import {
41
41
  applyUtilityRankingRuntimeDelta,
42
42
  loadUtilityRuntimeValues
43
43
  } from "./chunk-LXOM6IQU.js";
44
+ import {
45
+ decideTierTransition
46
+ } from "./chunk-S75M5ZRK.js";
44
47
  import {
45
48
  TmtBuilder
46
49
  } from "./chunk-ECZU5BJH.js";
@@ -56,9 +59,6 @@ import {
56
59
  import {
57
60
  TierMigrationExecutor
58
61
  } from "./chunk-VOUOLGIP.js";
59
- import {
60
- decideTierTransition
61
- } from "./chunk-S75M5ZRK.js";
62
62
  import {
63
63
  HourlySummarizer
64
64
  } from "./chunk-FGBJBYWP.js";
@@ -69,6 +69,10 @@ import {
69
69
  import {
70
70
  SessionObserverState
71
71
  } from "./chunk-QFN4U7AG.js";
72
+ import {
73
+ buildResponseGuidanceRecallSection,
74
+ shouldRecallResponseGuidance
75
+ } from "./chunk-6TCXIRP5.js";
72
76
  import {
73
77
  mergeWithAgentResults,
74
78
  runDirectAgent,
@@ -104,10 +108,6 @@ import {
104
108
  reorderByRankedKeys,
105
109
  rerankLocalOrNoop
106
110
  } from "./chunk-LUDXM7MD.js";
107
- import {
108
- buildResponseGuidanceRecallSection,
109
- shouldRecallResponseGuidance
110
- } from "./chunk-6TCXIRP5.js";
111
111
  import {
112
112
  createRecallSectionMetricRecorder
113
113
  } from "./chunk-C3AKM55W.js";
@@ -204,7 +204,7 @@ import {
204
204
  buildEntityRecallSection,
205
205
  entityRecentTranscriptLookbackHours,
206
206
  readRecentEntityTranscriptEntries
207
- } from "./chunk-AT6DNUCM.js";
207
+ } from "./chunk-NY6W6CJW.js";
208
208
  import {
209
209
  buildEventOrderRecallSection,
210
210
  shouldRecallEventOrderEvidence
@@ -224,13 +224,13 @@ import {
224
224
  materializeAfterSemanticConsolidation,
225
225
  parseConsolidationResponse,
226
226
  parseOperatorAwareConsolidationResponse
227
- } from "./chunk-FIGDB2HR.js";
227
+ } from "./chunk-7KXQ44PA.js";
228
228
  import {
229
229
  builtInConnectorPackageSpecifier,
230
230
  ensureBuiltInWearableConnectors,
231
231
  getWearableConnector,
232
232
  listWearableConnectors
233
- } from "./chunk-TG2DJFH7.js";
233
+ } from "./chunk-E5A6C4A5.js";
234
234
  import {
235
235
  RoutingRulesStore
236
236
  } from "./chunk-XL24QQ63.js";
@@ -240,14 +240,14 @@ import {
240
240
  import {
241
241
  compareVerifiedEpisodeResults,
242
242
  searchVerifiedEpisodes
243
- } from "./chunk-VY6SDKWZ.js";
243
+ } from "./chunk-SSYBI43M.js";
244
244
  import {
245
245
  ThreadingManager
246
246
  } from "./chunk-OJP3N7UK.js";
247
247
  import {
248
248
  compareVerifiedSemanticRuleResults,
249
249
  searchVerifiedSemanticRules
250
- } from "./chunk-LXKJNUND.js";
250
+ } from "./chunk-37VPMR4E.js";
251
251
  import {
252
252
  searchWorkProductLedgerEntries
253
253
  } from "./chunk-ZRWB5D4H.js";
@@ -260,11 +260,11 @@ import {
260
260
  import {
261
261
  runNamespaceMaintenanceFanout,
262
262
  summarizeNamespaceMaintenanceHealth
263
- } from "./chunk-5ZGWA4AG.js";
263
+ } from "./chunk-UMFLAACL.js";
264
264
  import {
265
265
  NamespaceCatalog,
266
266
  planNamespaceMaintenance
267
- } from "./chunk-AGR7MGUX.js";
267
+ } from "./chunk-7IGWPXVC.js";
268
268
  import {
269
269
  searchHarmonicRetrieval
270
270
  } from "./chunk-AV5ZEH4M.js";
@@ -328,7 +328,7 @@ import {
328
328
  } from "./chunk-B7RWBZXW.js";
329
329
  import {
330
330
  MeetingsInputError
331
- } from "./chunk-3I35RLJW.js";
331
+ } from "./chunk-32XTXKIA.js";
332
332
  import {
333
333
  WearablesInputError,
334
334
  describeErrorForOperator
@@ -346,7 +346,7 @@ import {
346
346
  clusterByKey,
347
347
  createCorrectionService,
348
348
  detectPassiveCorrections
349
- } from "./chunk-RROMWDDC.js";
349
+ } from "./chunk-BL4JHZSO.js";
350
350
  import {
351
351
  importCapsule
352
352
  } from "./chunk-7CPOZH6Y.js";
@@ -364,6 +364,13 @@ import {
364
364
  listTrustZoneRecords,
365
365
  searchTrustZoneRecords
366
366
  } from "./chunk-JGSKJHF7.js";
367
+ import {
368
+ boundRecallContextComposition,
369
+ composeRecallContext,
370
+ contextBudgetForFooter,
371
+ formatCuriosityFooter,
372
+ selectCuriosityQuestion
373
+ } from "./chunk-AHVEHR6K.js";
367
374
  import {
368
375
  buildXraySnapshot
369
376
  } from "./chunk-X3SQYAPP.js";
@@ -388,6 +395,9 @@ import {
388
395
  import {
389
396
  shouldSkipImplicitExtraction
390
397
  } from "./chunk-IKMAO55B.js";
398
+ import {
399
+ NamespaceStorageRouter
400
+ } from "./chunk-WSEA52RI.js";
391
401
  import {
392
402
  NamespaceSearchRouter,
393
403
  namespaceCollectionName
@@ -399,9 +409,6 @@ import {
399
409
  import {
400
410
  NoopSearchBackend
401
411
  } from "./chunk-CYEPCZN5.js";
402
- import {
403
- NamespaceStorageRouter
404
- } from "./chunk-NVYCTASB.js";
405
412
  import {
406
413
  writeConversationChunks
407
414
  } from "./chunk-72A4L5JJ.js";
@@ -420,7 +427,7 @@ import {
420
427
  } from "./chunk-TBBDFYXW.js";
421
428
  import {
422
429
  buildChainFollowupGenerator
423
- } from "./chunk-SZN6XVFC.js";
430
+ } from "./chunk-PS5OG75R.js";
424
431
  import {
425
432
  ContentHashIndex,
426
433
  QmdResultResolver,
@@ -440,7 +447,10 @@ import {
440
447
  reconstructFusionInputs,
441
448
  selfDeps,
442
449
  serializeFusionDay
443
- } from "./chunk-XTAAG4SQ.js";
450
+ } from "./chunk-K4DP5KZA.js";
451
+ import {
452
+ buildRetiredFactTombstoneInputs
453
+ } from "./chunk-2QMKMVHH.js";
444
454
  import {
445
455
  bodyIsEscaped,
446
456
  decodeTranscriptBody,
@@ -451,9 +461,6 @@ import {
451
461
  saveSpeakerRegistry,
452
462
  speakerRegistryKey
453
463
  } from "./chunk-UHVXE24Y.js";
454
- import {
455
- buildRetiredFactTombstoneInputs
456
- } from "./chunk-2QMKMVHH.js";
457
464
  import {
458
465
  applyTemporalSupersession,
459
466
  normalizeSupersessionKey,
@@ -10267,21 +10274,15 @@ ${tmtNode.summary}`
10267
10274
  compoundingSection
10268
10275
  );
10269
10276
  }
10270
- if (this.deps.config.injectQuestions && this.deps.isRecallSectionEnabled("questions", true)) {
10271
- const questions = await profileStorage.readQuestions({
10272
- unresolvedOnly: true
10273
- });
10274
- if (questions.length > 0) {
10275
- const topQuestion = questions[0];
10276
- this.deps.appendRecallSection(
10277
- sectionBuckets,
10278
- "questions",
10279
- `## Open Question
10280
-
10281
- Something I've been curious about: ${topQuestion.question}
10282
-
10283
- _Context: ${topQuestion.context}_`
10284
- );
10277
+ let curiosityFooter, curiosityQuestionSelected = false, curiosityFooterTruncated = false;
10278
+ const topQuestion = this.deps.config.injectQuestions && this.deps.isRecallSectionEnabled("questions", true) ? selectCuriosityQuestion(await profileStorage.readQuestions({ unresolvedOnly: true })) : void 0;
10279
+ if (topQuestion) {
10280
+ curiosityQuestionSelected = true;
10281
+ const formattedFooter = formatCuriosityFooter(topQuestion);
10282
+ const questionMaxChars = this.deps.getRecallSectionMaxChars("questions");
10283
+ if (questionMaxChars !== 0) {
10284
+ curiosityFooter = typeof questionMaxChars === "number" ? this.deps.truncateRecallSectionToBudget(formattedFooter, questionMaxChars) : formattedFooter;
10285
+ curiosityFooterTruncated = curiosityFooter.length < formattedFooter.length;
10285
10286
  }
10286
10287
  }
10287
10288
  const phase2QuestionsDoneMs = Date.now() - recallStart;
@@ -10309,9 +10310,10 @@ _Context: ${topQuestion.context}_`
10309
10310
  recallPlan: timings.recallPlan,
10310
10311
  queryPolicy: timings.queryPolicy
10311
10312
  });
10313
+ const recallBudgetChars = this.deps.getRecallBudgetChars(options.budgetCharsOverride);
10312
10314
  const assembledRecall = this.deps.assembleRecallSections(
10313
10315
  sectionBuckets,
10314
- options.budgetCharsOverride
10316
+ contextBudgetForFooter(recallBudgetChars, curiosityFooter)
10315
10317
  );
10316
10318
  recalledMemoryIds = assembledRecall.includedMemoryIds;
10317
10319
  recalledMemoryPaths = assembledRecall.includedMemoryPaths;
@@ -10322,20 +10324,44 @@ _Context: ${topQuestion.context}_`
10322
10324
  assembledRecall.includedMemoryPaths,
10323
10325
  assembledRecall.includedMemoryNamespaces
10324
10326
  );
10325
- const context = assembledRecall.sections.length === 0 ? "" : assembledRecall.sections.join("\n\n---\n\n");
10326
- const sourcesUsed = this.deps.collectLastRecallSources(
10327
- sectionBuckets,
10328
- recallSource
10329
- );
10327
+ const recalledContext = assembledRecall.sections.join("\n\n---\n\n");
10328
+ const composition = boundRecallContextComposition({
10329
+ context: recalledContext,
10330
+ footer: curiosityFooter,
10331
+ maxChars: recallBudgetChars
10332
+ });
10333
+ const context = composeRecallContext(composition);
10334
+ try {
10335
+ const observerResult = options.onContextComposition?.(composition);
10336
+ if (observerResult && typeof observerResult.then === "function") {
10337
+ void Promise.resolve(observerResult).catch((err) => log.warn(
10338
+ "recall: context composition observer rejected",
10339
+ err
10340
+ ));
10341
+ }
10342
+ } catch (err) {
10343
+ log.warn("recall: context composition observer failed open", err);
10344
+ }
10345
+ const compositionTruncated = context.length < composeRecallContext({
10346
+ context: recalledContext,
10347
+ footer: curiosityFooter
10348
+ }).length;
10349
+ const includedSections = [...assembledRecall.includedIds];
10350
+ const omittedSections = [...assembledRecall.omittedIds];
10351
+ if (composition.footer && !includedSections.includes("questions")) includedSections.push("questions");
10352
+ else if (!composition.footer && curiosityQuestionSelected && !omittedSections.includes("questions"))
10353
+ omittedSections.push("questions");
10354
+ const sourcesUsed = this.deps.collectLastRecallSources(sectionBuckets, recallSource);
10355
+ if (composition.footer && !sourcesUsed.includes("questions")) sourcesUsed.push("questions");
10330
10356
  const budgetsApplied = this.deps.buildLastRecallBudgetSummary({
10331
10357
  requestedTopK,
10332
10358
  recallResultLimit,
10333
10359
  qmdFetchLimit,
10334
10360
  qmdHybridFetchLimit,
10335
- finalContextChars: assembledRecall.finalChars,
10336
- truncated: assembledRecall.truncated,
10337
- includedSections: assembledRecall.includedIds,
10338
- omittedSections: assembledRecall.omittedIds,
10361
+ finalContextChars: context.length,
10362
+ truncated: assembledRecall.truncated || compositionTruncated || curiosityFooterTruncated,
10363
+ includedSections,
10364
+ omittedSections,
10339
10365
  includedMemoryIds: assembledRecall.includedMemoryIds,
10340
10366
  includedMemoryPaths: assembledRecall.includedMemoryPaths,
10341
10367
  includedMemoryNamespaces: assembledRecall.includedMemoryNamespaces,
@@ -10461,7 +10487,7 @@ _Context: ${topQuestion.context}_`
10461
10487
  filters,
10462
10488
  budget: {
10463
10489
  chars: this.deps.getRecallBudgetChars(options.budgetCharsOverride),
10464
- used: assembledRecall.finalChars
10490
+ used: context.length
10465
10491
  },
10466
10492
  sessionKey,
10467
10493
  namespace: selfNamespace,
@@ -13452,7 +13478,7 @@ var OrchestratorInitCoordinator = class {
13452
13478
  if (signal.aborted) return;
13453
13479
  if (lifecycleCaps.lifecyclePolicy && resolveQmdCapabilities(this.deps.config).qmdTierMigration) {
13454
13480
  try {
13455
- const { runFirstStartMigration } = await import("./first-start-migration-LEXL3XYL.js");
13481
+ const { runFirstStartMigration } = await import("./first-start-migration-BKNGOFED.js");
13456
13482
  const result = await runFirstStartMigration({
13457
13483
  storage: this.deps.storage,
13458
13484
  config: this.deps.config,
@@ -25507,4 +25533,4 @@ export {
25507
25533
  blendGraphExpandedRecallScore,
25508
25534
  Orchestrator
25509
25535
  };
25510
- //# sourceMappingURL=chunk-FDAPXLRC.js.map
25536
+ //# sourceMappingURL=chunk-FR75B4UU.js.map