@remnic/core 9.3.649 → 9.3.651

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 (176) hide show
  1. package/dist/access-cli.js +36 -35
  2. package/dist/access-cli.js.map +1 -1
  3. package/dist/access-http.d.ts +2 -2
  4. package/dist/access-http.js +16 -16
  5. package/dist/access-mcp.d.ts +2 -2
  6. package/dist/access-mcp.js +15 -15
  7. package/dist/access-schema.js +3 -3
  8. package/dist/{access-service-DFXIlGvZ.d.ts → access-service-DIZRHQ7Q.d.ts} +255 -2
  9. package/dist/access-service.d.ts +2 -2
  10. package/dist/access-service.js +13 -13
  11. package/dist/{auto-sync-54QQHOG5.js → auto-sync-5CJBJMPZ.js} +5 -5
  12. package/dist/bootstrap.d.ts +1 -1
  13. package/dist/briefing.js +3 -3
  14. package/dist/calibration.js +2 -2
  15. package/dist/{capsule-crypto-GWVG7LGC.js → capsule-crypto-7FJQINUR.js} +2 -2
  16. package/dist/causal-consolidation.js +6 -6
  17. package/dist/{chunk-OWHERGF2.js → chunk-2NLLXCJG.js} +2 -2
  18. package/dist/{chunk-OAZ5MFUB.js → chunk-3XGWCZ63.js} +45 -28
  19. package/dist/chunk-3XGWCZ63.js.map +1 -0
  20. package/dist/{chunk-QKE4LHNR.js → chunk-4HYSMH7D.js} +2 -2
  21. package/dist/{chunk-NMIOW7XG.js → chunk-4PTKFBST.js} +2 -2
  22. package/dist/{chunk-DDRNDPX4.js → chunk-4SKKVWLQ.js} +2 -2
  23. package/dist/chunk-5FOCXX5E.js +34 -0
  24. package/dist/chunk-5FOCXX5E.js.map +1 -0
  25. package/dist/{chunk-XUGVP7ZU.js → chunk-5WSDHTBO.js} +166 -47
  26. package/dist/chunk-5WSDHTBO.js.map +1 -0
  27. package/dist/{chunk-WPCCNSWO.js → chunk-6UKL6IXM.js} +4 -4
  28. package/dist/{chunk-DB5A3NHS.js → chunk-7LWRCOP7.js} +9 -2
  29. package/dist/chunk-7LWRCOP7.js.map +1 -0
  30. package/dist/{chunk-APJQ6UEA.js → chunk-AGNBY3VG.js} +4 -4
  31. package/dist/{chunk-4BISW7RX.js → chunk-AJE7FJVE.js} +2 -2
  32. package/dist/{chunk-ZXWAQFDE.js → chunk-CFOCZPIQ.js} +2 -2
  33. package/dist/{chunk-NT5TINK5.js → chunk-DHGSZ3UD.js} +2 -2
  34. package/dist/{chunk-OTC2KOZ2.js → chunk-EHQLDFSH.js} +2 -2
  35. package/dist/{chunk-AMACWKM4.js → chunk-IJHLC5CH.js} +2 -2
  36. package/dist/{chunk-OR7R6M5Z.js → chunk-IVYSVAC6.js} +2 -2
  37. package/dist/{chunk-UMKPSD35.js → chunk-JF7SFXTG.js} +2 -2
  38. package/dist/{chunk-MCYT2RNT.js → chunk-KJDKZVF3.js} +3 -3
  39. package/dist/{chunk-BUKK5SWA.js → chunk-KQAFEZQX.js} +2 -2
  40. package/dist/{chunk-PQFUUXWK.js → chunk-KWM33SPU.js} +2 -2
  41. package/dist/{chunk-A3BS64GV.js → chunk-LCC5EZTT.js} +4 -4
  42. package/dist/{chunk-ZT6R3WR3.js → chunk-LFTLXOFX.js} +4 -4
  43. package/dist/{chunk-CNRZ6WJU.js → chunk-MF32AL7N.js} +5 -5
  44. package/dist/{chunk-6GIKAUTN.js → chunk-MMJANTJX.js} +33 -2
  45. package/dist/{chunk-6GIKAUTN.js.map → chunk-MMJANTJX.js.map} +1 -1
  46. package/dist/{chunk-D6WVJIS3.js → chunk-ORGWWNJG.js} +2 -2
  47. package/dist/{chunk-Z3PZRDLW.js → chunk-PRQXUSQV.js} +2 -2
  48. package/dist/{chunk-VWT3F4IV.js → chunk-PS3SYNHP.js} +12 -4
  49. package/dist/chunk-PS3SYNHP.js.map +1 -0
  50. package/dist/{chunk-IMWFHBG2.js → chunk-QWRC7GIO.js} +2 -2
  51. package/dist/{chunk-FQYFMIKG.js → chunk-RKN5J4RO.js} +26 -26
  52. package/dist/{chunk-FUXV6HSO.js → chunk-RSS2KWN6.js} +5 -5
  53. package/dist/{chunk-U3GQ33JC.js → chunk-SLTKP5WJ.js} +2 -2
  54. package/dist/{chunk-5ETA6OAS.js → chunk-SLYD3AH4.js} +617 -89
  55. package/dist/chunk-SLYD3AH4.js.map +1 -0
  56. package/dist/{chunk-6NKAQ74D.js → chunk-UU6MVCJ6.js} +1 -1
  57. package/dist/chunk-UU6MVCJ6.js.map +1 -0
  58. package/dist/{chunk-WEPMT6SC.js → chunk-V25ZAOSB.js} +5 -5
  59. package/dist/{chunk-UMTG2BN2.js → chunk-V4UDXYGG.js} +2 -2
  60. package/dist/{chunk-RRRCNIPK.js → chunk-WJK75OCH.js} +4 -4
  61. package/dist/{chunk-UVYI6VIX.js → chunk-X7Y7WX73.js} +1 -1
  62. package/dist/{chunk-OZKZ2TRP.js → chunk-XBIACVCO.js} +9 -2
  63. package/dist/chunk-XBIACVCO.js.map +1 -0
  64. package/dist/{chunk-ALUZN7BE.js → chunk-XMN6MMTU.js} +2 -2
  65. package/dist/{chunk-A4BTPHIN.js → chunk-Y7NWBBHV.js} +6 -6
  66. package/dist/{chunk-M75TBFKQ.js → chunk-Z2OXSMZK.js} +2 -2
  67. package/dist/{cli-DrL2Nv4j.d.ts → cli-BG4ybtJr.d.ts} +2 -2
  68. package/dist/cli.d.ts +3 -3
  69. package/dist/cli.js +31 -31
  70. package/dist/compounding/engine.js +3 -3
  71. package/dist/connectors/codex-materialize-runner.js +3 -3
  72. package/dist/connectors/index.js +3 -3
  73. package/dist/entity-retrieval.js +3 -3
  74. package/dist/event-order-recall.js +1 -1
  75. package/dist/explicit-capture.d.ts +1 -1
  76. package/dist/explicit-cue-recall.d.ts +7 -0
  77. package/dist/explicit-cue-recall.js +2 -1
  78. package/dist/extraction-judge.js +3 -3
  79. package/dist/extraction.js +3 -3
  80. package/dist/fallback-llm.js +2 -2
  81. package/dist/focused-list-recall.d.ts +6 -0
  82. package/dist/focused-list-recall.js +2 -1
  83. package/dist/index.d.ts +4 -4
  84. package/dist/index.js +84 -83
  85. package/dist/index.js.map +1 -1
  86. package/dist/lcm/engine.js +2 -2
  87. package/dist/lcm/index.js +5 -5
  88. package/dist/lcm-fallback-read.d.ts +71 -0
  89. package/dist/lcm-fallback-read.js +10 -0
  90. package/dist/lcm-fallback-read.js.map +1 -0
  91. package/dist/maintenance/memory-governance.js +3 -3
  92. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +3 -3
  93. package/dist/maintenance/rebuild-memory-projection.js +4 -4
  94. package/dist/mcp-memory-inspector-app.d.ts +2 -2
  95. package/dist/namespaces/migrate.js +7 -7
  96. package/dist/namespaces/search.js +3 -3
  97. package/dist/namespaces/storage.js +3 -3
  98. package/dist/operator-toolkit.js +9 -9
  99. package/dist/{orchestrator-DEQW9j0Z.d.ts → orchestrator-CX-oqwJq.d.ts} +58 -0
  100. package/dist/orchestrator.d.ts +1 -1
  101. package/dist/orchestrator.js +30 -29
  102. package/dist/recall-planner-llm.js +2 -2
  103. package/dist/response-guidance-recall.d.ts +6 -0
  104. package/dist/response-guidance-recall.js +2 -1
  105. package/dist/schemas.d.ts +22 -22
  106. package/dist/search/factory.js +2 -2
  107. package/dist/search/index.js +4 -4
  108. package/dist/semantic-consolidation.js +4 -4
  109. package/dist/semantic-rule-promotion.js +3 -3
  110. package/dist/semantic-rule-verifier.js +3 -3
  111. package/dist/storage.js +2 -2
  112. package/dist/summarizer.js +3 -3
  113. package/dist/targeted-fact-recall.d.ts +6 -0
  114. package/dist/targeted-fact-recall.js +2 -1
  115. package/dist/transfer/backup.js +2 -2
  116. package/dist/transfer/capsule-export.js +2 -2
  117. package/dist/transfer/capsule-import.js +2 -2
  118. package/dist/transfer/import-sqlite.js +2 -2
  119. package/dist/transfer/types.d.ts +12 -12
  120. package/dist/verified-recall.js +3 -3
  121. package/package.json +1 -1
  122. package/src/access-service-lcm-forgery.test.ts +410 -0
  123. package/src/access-service-observe-lcm-parity.test.ts +1397 -0
  124. package/src/access-service-observe-scope.test.ts +599 -0
  125. package/src/access-service-raw-excerpt-read-gate.test.ts +443 -0
  126. package/src/access-service.ts +1270 -113
  127. package/src/coding/coding-namespace.test.ts +44 -0
  128. package/src/coding/coding-namespace.ts +163 -0
  129. package/src/event-order-recall.ts +8 -0
  130. package/src/explicit-cue-recall.ts +70 -29
  131. package/src/focused-list-recall.ts +23 -1
  132. package/src/lcm-fallback-read.ts +113 -0
  133. package/src/orchestrator.ts +331 -26
  134. package/src/response-guidance-recall.ts +21 -1
  135. package/src/targeted-fact-recall.ts +24 -3
  136. package/dist/chunk-5ETA6OAS.js.map +0 -1
  137. package/dist/chunk-6NKAQ74D.js.map +0 -1
  138. package/dist/chunk-DB5A3NHS.js.map +0 -1
  139. package/dist/chunk-OAZ5MFUB.js.map +0 -1
  140. package/dist/chunk-OZKZ2TRP.js.map +0 -1
  141. package/dist/chunk-VWT3F4IV.js.map +0 -1
  142. package/dist/chunk-XUGVP7ZU.js.map +0 -1
  143. /package/dist/{auto-sync-54QQHOG5.js.map → auto-sync-5CJBJMPZ.js.map} +0 -0
  144. /package/dist/{capsule-crypto-GWVG7LGC.js.map → capsule-crypto-7FJQINUR.js.map} +0 -0
  145. /package/dist/{chunk-OWHERGF2.js.map → chunk-2NLLXCJG.js.map} +0 -0
  146. /package/dist/{chunk-QKE4LHNR.js.map → chunk-4HYSMH7D.js.map} +0 -0
  147. /package/dist/{chunk-NMIOW7XG.js.map → chunk-4PTKFBST.js.map} +0 -0
  148. /package/dist/{chunk-DDRNDPX4.js.map → chunk-4SKKVWLQ.js.map} +0 -0
  149. /package/dist/{chunk-WPCCNSWO.js.map → chunk-6UKL6IXM.js.map} +0 -0
  150. /package/dist/{chunk-APJQ6UEA.js.map → chunk-AGNBY3VG.js.map} +0 -0
  151. /package/dist/{chunk-4BISW7RX.js.map → chunk-AJE7FJVE.js.map} +0 -0
  152. /package/dist/{chunk-ZXWAQFDE.js.map → chunk-CFOCZPIQ.js.map} +0 -0
  153. /package/dist/{chunk-NT5TINK5.js.map → chunk-DHGSZ3UD.js.map} +0 -0
  154. /package/dist/{chunk-OTC2KOZ2.js.map → chunk-EHQLDFSH.js.map} +0 -0
  155. /package/dist/{chunk-AMACWKM4.js.map → chunk-IJHLC5CH.js.map} +0 -0
  156. /package/dist/{chunk-OR7R6M5Z.js.map → chunk-IVYSVAC6.js.map} +0 -0
  157. /package/dist/{chunk-UMKPSD35.js.map → chunk-JF7SFXTG.js.map} +0 -0
  158. /package/dist/{chunk-MCYT2RNT.js.map → chunk-KJDKZVF3.js.map} +0 -0
  159. /package/dist/{chunk-BUKK5SWA.js.map → chunk-KQAFEZQX.js.map} +0 -0
  160. /package/dist/{chunk-PQFUUXWK.js.map → chunk-KWM33SPU.js.map} +0 -0
  161. /package/dist/{chunk-A3BS64GV.js.map → chunk-LCC5EZTT.js.map} +0 -0
  162. /package/dist/{chunk-ZT6R3WR3.js.map → chunk-LFTLXOFX.js.map} +0 -0
  163. /package/dist/{chunk-CNRZ6WJU.js.map → chunk-MF32AL7N.js.map} +0 -0
  164. /package/dist/{chunk-D6WVJIS3.js.map → chunk-ORGWWNJG.js.map} +0 -0
  165. /package/dist/{chunk-Z3PZRDLW.js.map → chunk-PRQXUSQV.js.map} +0 -0
  166. /package/dist/{chunk-IMWFHBG2.js.map → chunk-QWRC7GIO.js.map} +0 -0
  167. /package/dist/{chunk-FQYFMIKG.js.map → chunk-RKN5J4RO.js.map} +0 -0
  168. /package/dist/{chunk-FUXV6HSO.js.map → chunk-RSS2KWN6.js.map} +0 -0
  169. /package/dist/{chunk-U3GQ33JC.js.map → chunk-SLTKP5WJ.js.map} +0 -0
  170. /package/dist/{chunk-WEPMT6SC.js.map → chunk-V25ZAOSB.js.map} +0 -0
  171. /package/dist/{chunk-UMTG2BN2.js.map → chunk-V4UDXYGG.js.map} +0 -0
  172. /package/dist/{chunk-RRRCNIPK.js.map → chunk-WJK75OCH.js.map} +0 -0
  173. /package/dist/{chunk-UVYI6VIX.js.map → chunk-X7Y7WX73.js.map} +0 -0
  174. /package/dist/{chunk-ALUZN7BE.js.map → chunk-XMN6MMTU.js.map} +0 -0
  175. /package/dist/{chunk-A4BTPHIN.js.map → chunk-Y7NWBBHV.js.map} +0 -0
  176. /package/dist/{chunk-M75TBFKQ.js.map → chunk-Z2OXSMZK.js.map} +0 -0
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  LcmEngine,
3
3
  extractLcmConfig
4
- } from "../chunk-WEPMT6SC.js";
4
+ } from "../chunk-V25ZAOSB.js";
5
+ import "../chunk-MAV46GWQ.js";
5
6
  import "../chunk-5VDJMYTF.js";
6
7
  import "../chunk-HP5FMB6L.js";
7
8
  import "../chunk-7N4KAIGN.js";
8
9
  import "../chunk-TPDBFYEG.js";
9
10
  import "../chunk-KCYE2MZM.js";
10
- import "../chunk-MAV46GWQ.js";
11
11
  import "../chunk-4RA3C3EV.js";
12
12
  import "../chunk-CI7RKSRE.js";
13
13
  import "../chunk-6KYMPV2O.js";
package/dist/lcm/index.js CHANGED
@@ -5,7 +5,11 @@ import {
5
5
  import {
6
6
  LcmEngine,
7
7
  extractLcmConfig
8
- } from "../chunk-WEPMT6SC.js";
8
+ } from "../chunk-V25ZAOSB.js";
9
+ import {
10
+ ensureLcmStateDir,
11
+ openLcmDatabase
12
+ } from "../chunk-MAV46GWQ.js";
9
13
  import {
10
14
  LcmSummarizer
11
15
  } from "../chunk-5VDJMYTF.js";
@@ -20,10 +24,6 @@ import "../chunk-TPDBFYEG.js";
20
24
  import {
21
25
  assembleCompressedHistory
22
26
  } from "../chunk-KCYE2MZM.js";
23
- import {
24
- ensureLcmStateDir,
25
- openLcmDatabase
26
- } from "../chunk-MAV46GWQ.js";
27
27
  import "../chunk-4RA3C3EV.js";
28
28
  import "../chunk-CI7RKSRE.js";
29
29
  import "../chunk-6KYMPV2O.js";
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Shared helper for reading LCM-backed recall sections across the ordered,
3
+ * read-authorized fallback key set (#1505 codex P2 "Merge LCM fallback reads
4
+ * instead of short-circuiting").
5
+ *
6
+ * Background: a branch-scoped session archives its LCM rows under whichever
7
+ * coding-overlay namespace was effective at write time, so its evidence can be
8
+ * split across the primary overlay key AND the project / root fallback keys.
9
+ * Normal QMD/file recall already searches the primary namespace PLUS
10
+ * `codingOverlay.readFallbacks` and MERGES the rows. The LCM read path must do
11
+ * the same: query EVERY authorized read key and merge the candidate evidence
12
+ * into each section's existing dedupe + rank + budget pass, instead of stopping
13
+ * at the first key that happens to yield a (possibly weak) hit.
14
+ *
15
+ * Each section already owns a section-appropriate dedupe (a `seen` set or a
16
+ * `rankAndDedupe…` step), so the fan-out only needs to resolve the ordered,
17
+ * deduped read-key set and UNION the per-key candidates into that existing
18
+ * pipeline — the budget is then applied exactly once to the union. Centralizing
19
+ * the key-set resolution here (rather than re-implementing per builder) follows
20
+ * CLAUDE.md rule 22 (scope resolution must be deduplicated).
21
+ */
22
+ /** A recall section's LCM read target: either a single key or an ordered set. */
23
+ interface LcmReadSessionTarget {
24
+ /**
25
+ * The single LCM read `session_id` (pre-#1505 behavior). `undefined` means a
26
+ * sessionless, archive-wide read with no `session_id` filter.
27
+ */
28
+ sessionId?: string;
29
+ /**
30
+ * The ordered, read-authorized LCM read key set (primary overlay key first,
31
+ * then project / root fallbacks) the orchestrator derived from the same
32
+ * readable namespace set normal recall searches. When present and non-empty,
33
+ * it supersedes `sessionId`.
34
+ */
35
+ sessionIds?: readonly (string | undefined)[];
36
+ }
37
+ /**
38
+ * Resolve the ordered, deduped set of LCM read `session_id`s a recall section
39
+ * must query.
40
+ *
41
+ * When `sessionIds` is provided (the #1505 fallback unification), it is used
42
+ * verbatim, deduped while preserving first-seen order so the caller queries
43
+ * keys in priority order (primary overlay → fallbacks) without re-querying an
44
+ * identical key (e.g. when two namespaces both collapse to the default store).
45
+ * Otherwise the section reads under the single `sessionId`, so the result is
46
+ * `[sessionId]` — byte-for-byte the pre-#1505 single-key behavior, including a
47
+ * single `undefined` for a sessionless archive-wide read.
48
+ */
49
+ declare function resolveLcmReadSessionIds(target: LcmReadSessionTarget): Array<string | undefined>;
50
+ /**
51
+ * Run a per-key LCM `gather` across the resolved read-key set with FAULT
52
+ * ISOLATION across keys (#1505 codex P2 review follow-up).
53
+ *
54
+ * A recall section that reads every key in a bare `for…await` loop loses the
55
+ * WHOLE section if any one key throws (e.g. a `SqliteError` from a corrupt or
56
+ * locked fallback index) — even when the primary overlay key already gathered
57
+ * evidence. The pre-#1505 first-non-empty read never had this problem: it
58
+ * returned the primary key's non-empty result without ever touching a failing
59
+ * fallback. This helper restores that resilience for the merged path: when more
60
+ * than one key is read, a per-key failure is contained so the other keys'
61
+ * evidence survives (best-effort recall — a total failure degrades to an empty
62
+ * section, which the orchestrator already treats as "no evidence").
63
+ *
64
+ * SINGLE-KEY is byte-for-byte the pre-#1505 behavior: the gather runs directly,
65
+ * so a failure PROPAGATES exactly as before (the caller / orchestrator catch
66
+ * still logs it). Fault isolation only engages once there is a fallback key that
67
+ * could fail independently of the primary.
68
+ */
69
+ declare function gatherAcrossReadSessions(sessionIds: ReadonlyArray<string | undefined>, gather: (sessionId: string | undefined) => Promise<void>): Promise<void>;
70
+
71
+ export { type LcmReadSessionTarget, gatherAcrossReadSessions, resolveLcmReadSessionIds };
@@ -0,0 +1,10 @@
1
+ import {
2
+ gatherAcrossReadSessions,
3
+ resolveLcmReadSessionIds
4
+ } from "./chunk-5FOCXX5E.js";
5
+ import "./chunk-PZ5AY32C.js";
6
+ export {
7
+ gatherAcrossReadSessions,
8
+ resolveLcmReadSessionIds
9
+ };
10
+ //# sourceMappingURL=lcm-fallback-read.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -7,17 +7,17 @@ import {
7
7
  readMemoryGovernanceRunArtifact,
8
8
  restoreMemoryGovernanceRun,
9
9
  runMemoryGovernance
10
- } from "../chunk-UMTG2BN2.js";
11
- import "../chunk-A4BTPHIN.js";
10
+ } from "../chunk-V4UDXYGG.js";
11
+ import "../chunk-Y7NWBBHV.js";
12
12
  import "../chunk-M7XQSUBB.js";
13
13
  import "../chunk-5UZXUTVO.js";
14
14
  import "../chunk-J6A3CX5N.js";
15
15
  import "../chunk-C43KEWEV.js";
16
+ import "../chunk-CPPS65WS.js";
16
17
  import "../chunk-RULE4VG5.js";
17
18
  import "../chunk-SCU65EZI.js";
18
19
  import "../chunk-MB5RSUW6.js";
19
20
  import "../chunk-6KYMPV2O.js";
20
- import "../chunk-CPPS65WS.js";
21
21
  import "../chunk-DM2T26WE.js";
22
22
  import "../chunk-LDXUBPMO.js";
23
23
  import "../chunk-FVQJYWH7.js";
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  backupExistingLedger,
3
3
  rebuildMemoryLifecycleLedger
4
- } from "../chunk-PQFUUXWK.js";
4
+ } from "../chunk-KWM33SPU.js";
5
5
  import "../chunk-KJTKLXTH.js";
6
6
  import "../chunk-SFQ6QNL7.js";
7
- import "../chunk-A4BTPHIN.js";
7
+ import "../chunk-Y7NWBBHV.js";
8
8
  import "../chunk-M7XQSUBB.js";
9
9
  import "../chunk-5UZXUTVO.js";
10
10
  import "../chunk-J6A3CX5N.js";
11
11
  import "../chunk-C43KEWEV.js";
12
+ import "../chunk-CPPS65WS.js";
12
13
  import "../chunk-RULE4VG5.js";
13
14
  import "../chunk-SCU65EZI.js";
14
15
  import "../chunk-MB5RSUW6.js";
15
16
  import "../chunk-6KYMPV2O.js";
16
- import "../chunk-CPPS65WS.js";
17
17
  import "../chunk-DM2T26WE.js";
18
18
  import "../chunk-LDXUBPMO.js";
19
19
  import "../chunk-FVQJYWH7.js";
@@ -3,21 +3,21 @@ import {
3
3
  rebuildMemoryProjection,
4
4
  repairMemoryProjection,
5
5
  verifyMemoryProjection
6
- } from "../chunk-MCYT2RNT.js";
6
+ } from "../chunk-KJDKZVF3.js";
7
7
  import "../chunk-KJTKLXTH.js";
8
8
  import "../chunk-SFQ6QNL7.js";
9
9
  import "../chunk-BEUDU7Y4.js";
10
- import "../chunk-UMTG2BN2.js";
11
- import "../chunk-A4BTPHIN.js";
10
+ import "../chunk-V4UDXYGG.js";
11
+ import "../chunk-Y7NWBBHV.js";
12
12
  import "../chunk-M7XQSUBB.js";
13
13
  import "../chunk-5UZXUTVO.js";
14
14
  import "../chunk-J6A3CX5N.js";
15
15
  import "../chunk-C43KEWEV.js";
16
+ import "../chunk-CPPS65WS.js";
16
17
  import "../chunk-RULE4VG5.js";
17
18
  import "../chunk-SCU65EZI.js";
18
19
  import "../chunk-MB5RSUW6.js";
19
20
  import "../chunk-6KYMPV2O.js";
20
- import "../chunk-CPPS65WS.js";
21
21
  import "../chunk-DM2T26WE.js";
22
22
  import "../chunk-LDXUBPMO.js";
23
23
  import "../chunk-FVQJYWH7.js";
@@ -1,4 +1,4 @@
1
- import { a as EngramAccessRecallResponse } from './access-service-DFXIlGvZ.js';
1
+ import { a as EngramAccessRecallResponse } from './access-service-DIZRHQ7Q.js';
2
2
  import { ActionConfidenceRequest } from './access-schema.js';
3
3
  import { RecallXraySnapshot } from './recall-xray.js';
4
4
  import { ActionConfidenceResult } from './action-confidence.js';
@@ -20,7 +20,7 @@ import './user-model.js';
20
20
  import './recall-audit-anomaly.js';
21
21
  import './recall-audit.js';
22
22
  import './explicit-capture.js';
23
- import './orchestrator-DEQW9j0Z.js';
23
+ import './orchestrator-CX-oqwJq.js';
24
24
  import './briefing.js';
25
25
  import './buffer.js';
26
26
  import './search/port.js';
@@ -2,16 +2,16 @@ import {
2
2
  listNamespaces,
3
3
  runNamespaceMigration,
4
4
  verifyNamespaces
5
- } from "../chunk-RRRCNIPK.js";
6
- import "../chunk-D6WVJIS3.js";
7
- import "../chunk-NMIOW7XG.js";
8
- import "../chunk-WPCCNSWO.js";
5
+ } from "../chunk-WJK75OCH.js";
6
+ import "../chunk-ORGWWNJG.js";
7
+ import "../chunk-4PTKFBST.js";
8
+ import "../chunk-6UKL6IXM.js";
9
+ import "../chunk-TQUWNX7C.js";
9
10
  import "../chunk-CYEPCZN5.js";
10
11
  import "../chunk-76QTEJ2Q.js";
11
12
  import "../chunk-JOASJWQR.js";
12
13
  import "../chunk-RN7MUWON.js";
13
14
  import "../chunk-FOVPSMGI.js";
14
- import "../chunk-TQUWNX7C.js";
15
15
  import "../chunk-Q4CAQGKQ.js";
16
16
  import "../chunk-CINZGPSJ.js";
17
17
  import "../chunk-ZFXCQPNO.js";
@@ -23,16 +23,16 @@ import "../chunk-I4COC5XW.js";
23
23
  import "../chunk-QT4THOLT.js";
24
24
  import "../chunk-O75CRYGF.js";
25
25
  import "../chunk-3ONXXHQO.js";
26
- import "../chunk-A4BTPHIN.js";
26
+ import "../chunk-Y7NWBBHV.js";
27
27
  import "../chunk-M7XQSUBB.js";
28
28
  import "../chunk-5UZXUTVO.js";
29
29
  import "../chunk-J6A3CX5N.js";
30
30
  import "../chunk-C43KEWEV.js";
31
+ import "../chunk-CPPS65WS.js";
31
32
  import "../chunk-RULE4VG5.js";
32
33
  import "../chunk-SCU65EZI.js";
33
34
  import "../chunk-MB5RSUW6.js";
34
35
  import "../chunk-6KYMPV2O.js";
35
- import "../chunk-CPPS65WS.js";
36
36
  import "../chunk-DM2T26WE.js";
37
37
  import "../chunk-LDXUBPMO.js";
38
38
  import "../chunk-FVQJYWH7.js";
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  NamespaceSearchRouter,
3
3
  namespaceCollectionName
4
- } from "../chunk-NMIOW7XG.js";
5
- import "../chunk-WPCCNSWO.js";
4
+ } from "../chunk-4PTKFBST.js";
5
+ import "../chunk-6UKL6IXM.js";
6
+ import "../chunk-TQUWNX7C.js";
6
7
  import "../chunk-CYEPCZN5.js";
7
8
  import "../chunk-76QTEJ2Q.js";
8
9
  import "../chunk-JOASJWQR.js";
9
10
  import "../chunk-RN7MUWON.js";
10
11
  import "../chunk-FOVPSMGI.js";
11
- import "../chunk-TQUWNX7C.js";
12
12
  import "../chunk-Q4CAQGKQ.js";
13
13
  import "../chunk-CINZGPSJ.js";
14
14
  import "../chunk-ZFXCQPNO.js";
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  NamespaceStorageRouter
3
- } from "../chunk-D6WVJIS3.js";
3
+ } from "../chunk-ORGWWNJG.js";
4
4
  import "../chunk-ZFXCQPNO.js";
5
- import "../chunk-A4BTPHIN.js";
5
+ import "../chunk-Y7NWBBHV.js";
6
6
  import "../chunk-M7XQSUBB.js";
7
7
  import "../chunk-5UZXUTVO.js";
8
8
  import "../chunk-J6A3CX5N.js";
9
9
  import "../chunk-C43KEWEV.js";
10
+ import "../chunk-CPPS65WS.js";
10
11
  import "../chunk-RULE4VG5.js";
11
12
  import "../chunk-SCU65EZI.js";
12
13
  import "../chunk-MB5RSUW6.js";
13
14
  import "../chunk-6KYMPV2O.js";
14
- import "../chunk-CPPS65WS.js";
15
15
  import "../chunk-DM2T26WE.js";
16
16
  import "../chunk-LDXUBPMO.js";
17
17
  import "../chunk-FVQJYWH7.js";
@@ -11,11 +11,11 @@ import {
11
11
  summarizeMemoryWorthLegacyCounters,
12
12
  summarizeObservationThroughput,
13
13
  summarizeTierDistribution
14
- } from "./chunk-ZT6R3WR3.js";
15
- import "./chunk-RRRCNIPK.js";
14
+ } from "./chunk-LFTLXOFX.js";
15
+ import "./chunk-WJK75OCH.js";
16
16
  import "./chunk-AL4RAJL5.js";
17
17
  import "./chunk-YBPYIAA5.js";
18
- import "./chunk-D6WVJIS3.js";
18
+ import "./chunk-ORGWWNJG.js";
19
19
  import "./chunk-KFY3SGN7.js";
20
20
  import "./chunk-CMTINOFS.js";
21
21
  import "./chunk-BEUDU7Y4.js";
@@ -25,15 +25,15 @@ import "./chunk-C63WC454.js";
25
25
  import "./chunk-PHK3HARR.js";
26
26
  import "./chunk-NDAH7BJ5.js";
27
27
  import "./chunk-Z5LAYHGJ.js";
28
- import "./chunk-UMTG2BN2.js";
29
- import "./chunk-NMIOW7XG.js";
30
- import "./chunk-WPCCNSWO.js";
28
+ import "./chunk-V4UDXYGG.js";
29
+ import "./chunk-4PTKFBST.js";
30
+ import "./chunk-6UKL6IXM.js";
31
+ import "./chunk-TQUWNX7C.js";
31
32
  import "./chunk-CYEPCZN5.js";
32
33
  import "./chunk-76QTEJ2Q.js";
33
34
  import "./chunk-JOASJWQR.js";
34
35
  import "./chunk-RN7MUWON.js";
35
36
  import "./chunk-FOVPSMGI.js";
36
- import "./chunk-TQUWNX7C.js";
37
37
  import "./chunk-Q4CAQGKQ.js";
38
38
  import "./chunk-CINZGPSJ.js";
39
39
  import "./chunk-ZFXCQPNO.js";
@@ -48,16 +48,16 @@ import "./chunk-3ONXXHQO.js";
48
48
  import "./chunk-Y56J7CXW.js";
49
49
  import "./chunk-2LSZVONP.js";
50
50
  import "./chunk-DEUNUKTD.js";
51
- import "./chunk-A4BTPHIN.js";
51
+ import "./chunk-Y7NWBBHV.js";
52
52
  import "./chunk-M7XQSUBB.js";
53
53
  import "./chunk-5UZXUTVO.js";
54
54
  import "./chunk-J6A3CX5N.js";
55
55
  import "./chunk-C43KEWEV.js";
56
+ import "./chunk-CPPS65WS.js";
56
57
  import "./chunk-RULE4VG5.js";
57
58
  import "./chunk-SCU65EZI.js";
58
59
  import "./chunk-MB5RSUW6.js";
59
60
  import "./chunk-6KYMPV2O.js";
60
- import "./chunk-CPPS65WS.js";
61
61
  import "./chunk-DM2T26WE.js";
62
62
  import "./chunk-LDXUBPMO.js";
63
63
  import "./chunk-FVQJYWH7.js";
@@ -996,6 +996,42 @@ declare class Orchestrator {
996
996
  clearRecallWorkspaceOverride(sessionKey: string): void;
997
997
  resolvePrincipal(sessionKey?: string): string | undefined;
998
998
  resolveSelfNamespace(sessionKey?: string): string;
999
+ /**
1000
+ * Effective namespace a same-session LCM/structured-history READER must use
1001
+ * to find what the access `observe` surface WROTE (#1495 thread 2).
1002
+ *
1003
+ * This MUST mirror the `observe` scope plan's write-namespace resolution, NOT
1004
+ * `resolveSelfNamespace`: when no coding overlay applies, `observe` archives
1005
+ * under `config.defaultNamespace` (an unqualified observed turn is NOT moved
1006
+ * to the principal self namespace — identical to
1007
+ * `resolveCodingScopedWriteNamespace`/`memory_store`, rule 39). Only when a
1008
+ * coding overlay actually changes the namespace does the writer (and so the
1009
+ * reader) use the overlaid `project-*` namespace. Returning the self base for
1010
+ * the no-overlay case would prefix the read key with a namespace the writer
1011
+ * never used, so the reader would miss its own evidence.
1012
+ *
1013
+ * Honours the access-surface `principalOverride` (#1505 thread 2, codex): when
1014
+ * a recall supplies an authenticated principal NOT encoded in the raw
1015
+ * `sessionKey`, `observe` archived LCM under THAT principal's base namespace.
1016
+ * Deriving the base from `resolvePrincipal(sessionKey)` alone could fall back
1017
+ * to `default`, so principal `alice` observing `sess-1` would write under
1018
+ * `alice` but READ under `default`. Threading the override here keeps the read
1019
+ * base identical to the write base.
1020
+ *
1021
+ * READ-AUTHORIZATION gate (#1505 round 3, codex P2 "Gate LCM recall keys by
1022
+ * readable namespaces"): the overlay LCM read key is a `<principal>-project-*`
1023
+ * sub-namespace of the principal SELF base. The normal recall namespace set
1024
+ * below only substitutes the coding overlay when the principal SELF base is
1025
+ * actually in the readable recall set (`recallNamespacesForPrincipal` — gated
1026
+ * by `defaultRecallNamespaces.includes("self")` AND `canReadNamespace`). If a
1027
+ * principal can WRITE but not READ its self namespace (or `defaultRecall-
1028
+ * Namespaces` omits `self`), QMD/file recall never touches those overlay rows,
1029
+ * so neither may the LCM read key. When the self base is NOT readable, fall
1030
+ * back to the default store — exactly what an unqualified, unauthorized recall
1031
+ * resolves to — rather than injecting overlay rows the rest of recall excludes
1032
+ * (rule 42 read/write parity; rule 48 least-privilege).
1033
+ */
1034
+ private lcmReadNamespaceForSession;
999
1035
  /**
1000
1036
  * Attach a coding-agent context to a session (issue #569). Called by the
1001
1037
  * Claude Code / Codex / Cursor connectors at session start after
@@ -1400,6 +1436,28 @@ declare class Orchestrator {
1400
1436
  deadlineMs?: number;
1401
1437
  archiveLcm?: boolean;
1402
1438
  abortSignal?: AbortSignal;
1439
+ /**
1440
+ * Pin extraction writes to this namespace instead of deriving one from
1441
+ * `defaultNamespaceForPrincipal(resolvePrincipal(sessionKey))` + the
1442
+ * coding overlay (#1495). The access `observe` surface resolves a single
1443
+ * effective scope plan and passes its `writeNamespace` here so the
1444
+ * extracted memories land in the SAME namespace as LCM archival,
1445
+ * objective-state snapshots, and project-scoped recall — without relying
1446
+ * on re-deriving the namespace from a namespace-prefixed session key.
1447
+ * Same hook bulk-import uses (#460).
1448
+ */
1449
+ writeNamespaceOverride?: string;
1450
+ /**
1451
+ * Pin the provenance PRINCIPAL instead of deriving it from
1452
+ * `resolvePrincipal(turn.sessionKey)` (#1495 thread 1). The access
1453
+ * `observe` surface authenticates the caller at the transport layer and
1454
+ * passes its resolved principal here so extracted-memory provenance uses
1455
+ * the SAME identity the surface authorized — independent of storage
1456
+ * routing (`writeNamespaceOverride`) and of whatever `resolvePrincipal`
1457
+ * would parse from the raw session key. Mirrors the recall path's
1458
+ * `principalOverride` (issue #570 PR 4).
1459
+ */
1460
+ principalOverride?: string;
1403
1461
  }): Promise<void>;
1404
1462
  /**
1405
1463
  * Return the namespace that `ingestBulkImportBatch` writes into (#460).
@@ -7,7 +7,7 @@ import './summarizer.js';
7
7
  import './local-llm.js';
8
8
  import './fallback-llm.js';
9
9
  import './live-connectors-runner.js';
10
- export { L as BulkImportBatchIngestResult, M as BulkImportBatchPartialFailureError, N as GraphRecallRankedResult, Q as GraphRecallShadowComparison, G as GraphRecallSnapshot, I as IntentDebugSnapshot, O as Orchestrator, T as QmdRecallSnapshot, U as RecallInvocationOptions, V as RecallModeDecision, X as appendMemoryToGraphContext, Y as blendGraphExpandedRecallScore, Z as buildCompressionGuidelinesMarkdown, _ as buildMemoryPathById, $ as computeArtifactCandidateFetchLimit, a0 as computeArtifactRecallLimit, a1 as computeQmdHybridFetchLimit, a2 as dedupeEntitySynthesisEvidenceEntries, q as defaultWorkspaceDir, a3 as deriveTopicsFromExtraction, a4 as filterRecallCandidates, a5 as formatCompressionGuidelinesForRecall, a6 as graphPathRelativeToStorage, a7 as hasIdentityRecoveryIntent, a8 as isArtifactMemoryPath, a9 as lifecycleRecallScoreAdjustment, aa as mergeArtifactRecallCandidates, ab as mergeGraphExpandedResults, ac as resolveEffectiveIdentityInjectionMode, ad as resolveEffectiveRecallMode, ae as resolvePersistedMemoryRelativePath, af as resolveRecallModeDecision, ag as resolveRecallModeDecisionAsync, ah as resolveRecentThreadMemoryPaths, A as sanitizeSessionKeyForFilename, ai as shouldFilterLifecycleRecallCandidate, aj as summarizeGraphShadowComparison } from './orchestrator-DEQW9j0Z.js';
10
+ export { L as BulkImportBatchIngestResult, M as BulkImportBatchPartialFailureError, N as GraphRecallRankedResult, Q as GraphRecallShadowComparison, G as GraphRecallSnapshot, I as IntentDebugSnapshot, O as Orchestrator, T as QmdRecallSnapshot, U as RecallInvocationOptions, V as RecallModeDecision, X as appendMemoryToGraphContext, Y as blendGraphExpandedRecallScore, Z as buildCompressionGuidelinesMarkdown, _ as buildMemoryPathById, $ as computeArtifactCandidateFetchLimit, a0 as computeArtifactRecallLimit, a1 as computeQmdHybridFetchLimit, a2 as dedupeEntitySynthesisEvidenceEntries, q as defaultWorkspaceDir, a3 as deriveTopicsFromExtraction, a4 as filterRecallCandidates, a5 as formatCompressionGuidelinesForRecall, a6 as graphPathRelativeToStorage, a7 as hasIdentityRecoveryIntent, a8 as isArtifactMemoryPath, a9 as lifecycleRecallScoreAdjustment, aa as mergeArtifactRecallCandidates, ab as mergeGraphExpandedResults, ac as resolveEffectiveIdentityInjectionMode, ad as resolveEffectiveRecallMode, ae as resolvePersistedMemoryRelativePath, af as resolveRecallModeDecision, ag as resolveRecallModeDecisionAsync, ah as resolveRecentThreadMemoryPaths, A as sanitizeSessionKeyForFilename, ai as shouldFilterLifecycleRecallCandidate, aj as summarizeGraphShadowComparison } from './orchestrator-CX-oqwJq.js';
11
11
  import './model-registry.js';
12
12
  import './relevance.js';
13
13
  import './negative.js';
@@ -28,35 +28,35 @@ import {
28
28
  sanitizeSessionKeyForFilename,
29
29
  shouldFilterLifecycleRecallCandidate,
30
30
  summarizeGraphShadowComparison
31
- } from "./chunk-XUGVP7ZU.js";
32
- import "./chunk-DDRNDPX4.js";
31
+ } from "./chunk-5WSDHTBO.js";
32
+ import "./chunk-4SKKVWLQ.js";
33
33
  import "./chunk-7HYPN2GC.js";
34
34
  import "./chunk-666A3MOW.js";
35
35
  import "./chunk-HHLLAQGZ.js";
36
36
  import "./chunk-UWK5OXUJ.js";
37
- import "./chunk-WEPMT6SC.js";
37
+ import "./chunk-V25ZAOSB.js";
38
+ import "./chunk-MAV46GWQ.js";
38
39
  import "./chunk-5VDJMYTF.js";
39
40
  import "./chunk-HP5FMB6L.js";
40
41
  import "./chunk-7N4KAIGN.js";
41
42
  import "./chunk-TPDBFYEG.js";
42
43
  import "./chunk-KCYE2MZM.js";
43
- import "./chunk-MAV46GWQ.js";
44
44
  import "./chunk-TECVW3JP.js";
45
45
  import "./chunk-T2PO5MUF.js";
46
- import "./chunk-Z3PZRDLW.js";
46
+ import "./chunk-PRQXUSQV.js";
47
47
  import "./chunk-DRD2Q7HQ.js";
48
48
  import "./chunk-LXOM6IQU.js";
49
49
  import "./chunk-VOUOLGIP.js";
50
50
  import "./chunk-S75M5ZRK.js";
51
51
  import "./chunk-ECZU5BJH.js";
52
52
  import "./chunk-UHGBNIOS.js";
53
- import "./chunk-IMWFHBG2.js";
53
+ import "./chunk-QWRC7GIO.js";
54
54
  import "./chunk-XJNBEDFE.js";
55
- import "./chunk-VWT3F4IV.js";
55
+ import "./chunk-PS3SYNHP.js";
56
56
  import "./chunk-YTWNKQ2G.js";
57
57
  import "./chunk-MDYG7VI7.js";
58
58
  import "./chunk-MHQC2WU2.js";
59
- import "./chunk-OZKZ2TRP.js";
59
+ import "./chunk-XBIACVCO.js";
60
60
  import "./chunk-6GC5SGFE.js";
61
61
  import "./chunk-MGN7VHWQ.js";
62
62
  import "./chunk-5IZL4DCV.js";
@@ -76,17 +76,18 @@ import "./chunk-H63EDPFJ.js";
76
76
  import "./chunk-PD6O7AXF.js";
77
77
  import "./chunk-YAZNBMNF.js";
78
78
  import "./chunk-7YX23JBA.js";
79
- import "./chunk-M75TBFKQ.js";
80
- import "./chunk-U3GQ33JC.js";
79
+ import "./chunk-Z2OXSMZK.js";
80
+ import "./chunk-SLTKP5WJ.js";
81
81
  import "./chunk-4RA3C3EV.js";
82
82
  import "./chunk-ROZJACKP.js";
83
83
  import "./chunk-54V4BZWP.js";
84
84
  import "./chunk-XZ4WBBB5.js";
85
85
  import "./chunk-H3HDXD3U.js";
86
- import "./chunk-DB5A3NHS.js";
87
- import "./chunk-ALUZN7BE.js";
88
- import "./chunk-6NKAQ74D.js";
89
- import "./chunk-OAZ5MFUB.js";
86
+ import "./chunk-7LWRCOP7.js";
87
+ import "./chunk-XMN6MMTU.js";
88
+ import "./chunk-UU6MVCJ6.js";
89
+ import "./chunk-3XGWCZ63.js";
90
+ import "./chunk-5FOCXX5E.js";
90
91
  import "./chunk-PYPOFEMK.js";
91
92
  import "./chunk-WLEB7WCG.js";
92
93
  import "./chunk-VEWZZM3H.js";
@@ -95,24 +96,24 @@ import "./chunk-6HEM6HTQ.js";
95
96
  import "./chunk-XCAZF7KQ.js";
96
97
  import "./chunk-3PG3H5TD.js";
97
98
  import "./chunk-OD4FM2U7.js";
98
- import "./chunk-ZXWAQFDE.js";
99
- import "./chunk-OR7R6M5Z.js";
99
+ import "./chunk-CFOCZPIQ.js";
100
+ import "./chunk-IVYSVAC6.js";
100
101
  import "./chunk-LN4YGHTM.js";
101
102
  import "./chunk-JLNBQWZ2.js";
102
103
  import "./chunk-2PRQG7PV.js";
103
104
  import "./chunk-X6IRLNOO.js";
104
105
  import "./chunk-2F6NP3NT.js";
105
106
  import "./chunk-TERNBNJB.js";
106
- import "./chunk-UMKPSD35.js";
107
+ import "./chunk-JF7SFXTG.js";
107
108
  import "./chunk-W4RVMTHR.js";
108
- import "./chunk-4BISW7RX.js";
109
+ import "./chunk-AJE7FJVE.js";
109
110
  import "./chunk-ZRWB5D4H.js";
110
111
  import "./chunk-AGRPGAKR.js";
111
112
  import "./chunk-S4DDLTPX.js";
112
113
  import "./chunk-SFQ6QNL7.js";
113
- import "./chunk-D6WVJIS3.js";
114
- import "./chunk-KFY3SGN7.js";
115
114
  import "./chunk-33JBK2XP.js";
115
+ import "./chunk-ORGWWNJG.js";
116
+ import "./chunk-KFY3SGN7.js";
116
117
  import "./chunk-TQNRI55H.js";
117
118
  import "./chunk-6GUG4YNM.js";
118
119
  import "./chunk-JXS5PDQ7.js";
@@ -127,10 +128,10 @@ import "./chunk-3UXOZBHV.js";
127
128
  import "./chunk-P4BC54KI.js";
128
129
  import "./chunk-UQ7RN5HK.js";
129
130
  import "./chunk-IBTZEBUD.js";
130
- import "./chunk-A3BS64GV.js";
131
+ import "./chunk-LCC5EZTT.js";
131
132
  import "./chunk-B5XMS73R.js";
132
- import "./chunk-7SI52C65.js";
133
133
  import "./chunk-L2EXJQJP.js";
134
+ import "./chunk-7SI52C65.js";
134
135
  import "./chunk-RK6F44Y6.js";
135
136
  import "./chunk-NDAH7BJ5.js";
136
137
  import "./chunk-Z5LAYHGJ.js";
@@ -141,19 +142,19 @@ import "./chunk-H3FZVNRN.js";
141
142
  import "./chunk-HQ6NIBL6.js";
142
143
  import "./chunk-OADWQ5CR.js";
143
144
  import "./chunk-7WV3F5DQ.js";
144
- import "./chunk-6GIKAUTN.js";
145
+ import "./chunk-MMJANTJX.js";
145
146
  import "./chunk-5RIRL3XL.js";
146
147
  import "./chunk-JGSKJHF7.js";
147
148
  import "./chunk-FF4KLI5W.js";
148
149
  import "./chunk-BEMWL2FZ.js";
149
- import "./chunk-NMIOW7XG.js";
150
- import "./chunk-WPCCNSWO.js";
150
+ import "./chunk-4PTKFBST.js";
151
+ import "./chunk-6UKL6IXM.js";
152
+ import "./chunk-TQUWNX7C.js";
151
153
  import "./chunk-CYEPCZN5.js";
152
154
  import "./chunk-76QTEJ2Q.js";
153
155
  import "./chunk-JOASJWQR.js";
154
156
  import "./chunk-RN7MUWON.js";
155
157
  import "./chunk-FOVPSMGI.js";
156
- import "./chunk-TQUWNX7C.js";
157
158
  import "./chunk-Q4CAQGKQ.js";
158
159
  import "./chunk-CINZGPSJ.js";
159
160
  import "./chunk-ZFXCQPNO.js";
@@ -174,17 +175,17 @@ import "./chunk-3ONXXHQO.js";
174
175
  import "./chunk-Y56J7CXW.js";
175
176
  import "./chunk-2LSZVONP.js";
176
177
  import "./chunk-DEUNUKTD.js";
177
- import "./chunk-AMACWKM4.js";
178
- import "./chunk-A4BTPHIN.js";
178
+ import "./chunk-IJHLC5CH.js";
179
+ import "./chunk-Y7NWBBHV.js";
179
180
  import "./chunk-M7XQSUBB.js";
180
181
  import "./chunk-5UZXUTVO.js";
181
182
  import "./chunk-J6A3CX5N.js";
182
183
  import "./chunk-C43KEWEV.js";
184
+ import "./chunk-CPPS65WS.js";
183
185
  import "./chunk-RULE4VG5.js";
184
186
  import "./chunk-SCU65EZI.js";
185
187
  import "./chunk-MB5RSUW6.js";
186
188
  import "./chunk-6KYMPV2O.js";
187
- import "./chunk-CPPS65WS.js";
188
189
  import "./chunk-DM2T26WE.js";
189
190
  import "./chunk-LDXUBPMO.js";
190
191
  import "./chunk-FVQJYWH7.js";
@@ -5,10 +5,10 @@ import {
5
5
  FallbackLlmClient,
6
6
  fallbackLlmRuntimeContextFromConfig,
7
7
  gatewayTaskChainOptions
8
- } from "./chunk-A3BS64GV.js";
8
+ } from "./chunk-LCC5EZTT.js";
9
9
  import "./chunk-B5XMS73R.js";
10
- import "./chunk-7SI52C65.js";
11
10
  import "./chunk-L2EXJQJP.js";
11
+ import "./chunk-7SI52C65.js";
12
12
  import "./chunk-RK6F44Y6.js";
13
13
  import "./chunk-RGMVMVMF.js";
14
14
  import "./chunk-EYIEWJNI.js";
@@ -3,6 +3,12 @@ import { ExplicitCueRecallEngine } from './explicit-cue-recall.js';
3
3
  interface ResponseGuidanceRecallOptions {
4
4
  engine: ExplicitCueRecallEngine | null | undefined;
5
5
  sessionId?: string;
6
+ /**
7
+ * Ordered, read-authorized LCM read key set (primary overlay → project/root
8
+ * fallbacks). When present, evidence is gathered across EVERY key and merged
9
+ * under this section's budget (#1505 codex P2). Falls back to `sessionId`.
10
+ */
11
+ sessionIds?: readonly (string | undefined)[];
6
12
  query: string;
7
13
  maxChars: number;
8
14
  maxItemChars?: number;
@@ -1,7 +1,8 @@
1
1
  import {
2
2
  buildResponseGuidanceRecallSection,
3
3
  shouldRecallResponseGuidance
4
- } from "./chunk-OZKZ2TRP.js";
4
+ } from "./chunk-XBIACVCO.js";
5
+ import "./chunk-5FOCXX5E.js";
5
6
  import "./chunk-PYPOFEMK.js";
6
7
  import "./chunk-PZ5AY32C.js";
7
8
  export {