@remnic/core 9.43.0 → 9.44.0

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 (208) hide show
  1. package/dist/access-admin-ops-surface.d.ts +2 -2
  2. package/dist/access-admin-ops-surface.js +39 -39
  3. package/dist/access-authorization-probe.d.ts +2 -2
  4. package/dist/access-authorization-probe.js +40 -40
  5. package/dist/access-boundary.d.ts +2 -2
  6. package/dist/access-boundary.js +39 -39
  7. package/dist/access-cli.js +97 -95
  8. package/dist/access-cli.js.map +1 -1
  9. package/dist/access-extraction-force-flush.d.ts +2 -2
  10. package/dist/access-extraction-force-flush.js +39 -39
  11. package/dist/access-http-lcm-compaction.d.ts +2 -2
  12. package/dist/access-http-lifecycle-flush.d.ts +2 -2
  13. package/dist/access-http-query.d.ts +8 -0
  14. package/dist/access-http-query.js +179 -0
  15. package/dist/access-http.d.ts +2 -2
  16. package/dist/access-http.js +47 -46
  17. package/dist/access-identity-continuity-surface.d.ts +1 -1
  18. package/dist/access-identity-continuity-surface.js +39 -39
  19. package/dist/access-lcm-surface.d.ts +2 -2
  20. package/dist/access-lcm-surface.js +39 -39
  21. package/dist/access-mcp.d.ts +2 -2
  22. package/dist/access-mcp.js +43 -43
  23. package/dist/access-namespace-preflight.js +39 -39
  24. package/dist/access-observe-write-surface.d.ts +2 -2
  25. package/dist/access-observe-write-surface.js +39 -39
  26. package/dist/access-operations-batch.js +41 -41
  27. package/dist/access-operations.d.ts +2 -2
  28. package/dist/access-operations.js +42 -42
  29. package/dist/access-recall-concurrency.d.ts +2 -2
  30. package/dist/access-recall-concurrency.js +39 -39
  31. package/dist/access-recall-response.d.ts +2 -2
  32. package/dist/access-recall-response.js +39 -39
  33. package/dist/access-recall-surface.d.ts +2 -2
  34. package/dist/access-recall-surface.js +39 -39
  35. package/dist/{access-service-D1BkxwSf.d.ts → access-service-BCZJbX0f.d.ts} +12 -2
  36. package/dist/access-service-helpers.d.ts +2 -2
  37. package/dist/access-service.d.ts +2 -2
  38. package/dist/access-service.js +39 -39
  39. package/dist/access-surface-catalog.d.ts +2 -2
  40. package/dist/access-surface-catalog.js +5 -0
  41. package/dist/access-surface-catalog.js.map +1 -1
  42. package/dist/{auto-sync-UPTUVE4X.js → auto-sync-5OE5QOZB.js} +3 -3
  43. package/dist/bootstrap.d.ts +1 -1
  44. package/dist/briefing.js +8 -8
  45. package/dist/buffer.js +6 -6
  46. package/dist/causal-behavior.js +2 -2
  47. package/dist/causal-chain.js +2 -2
  48. package/dist/causal-consolidation.js +12 -12
  49. package/dist/causal-retrieval.js +2 -2
  50. package/dist/causal-trajectory-graph.js +2 -2
  51. package/dist/causal-trajectory.js +1 -1
  52. package/dist/{chunk-LEPOP46W.js → chunk-227UFSEQ.js} +4 -4
  53. package/dist/{chunk-BEQOZOYZ.js → chunk-2FTRRQKZ.js} +5 -5
  54. package/dist/{chunk-CMENJQ6I.js → chunk-2QR2RRH6.js} +2 -2
  55. package/dist/{chunk-3C2TGBDB.js → chunk-35IC3EVP.js} +2 -2
  56. package/dist/{chunk-L2DPF4DF.js → chunk-3SHB4YAW.js} +4 -4
  57. package/dist/{chunk-UV72DEZD.js → chunk-4B77XSG5.js} +5 -5
  58. package/dist/{chunk-GUQYMOPU.js → chunk-4LMA77JH.js} +5 -5
  59. package/dist/{chunk-AX2J2LC4.js → chunk-5ZE7QHTK.js} +2 -2
  60. package/dist/{chunk-YFHMW37V.js → chunk-6CZPDBJS.js} +5 -5
  61. package/dist/chunk-6ZYQ36IB.js +30 -0
  62. package/dist/chunk-6ZYQ36IB.js.map +1 -0
  63. package/dist/{chunk-QY66HJ4X.js → chunk-7PLHD7EO.js} +5 -5
  64. package/dist/{chunk-NRV4Y3PM.js → chunk-CAGPP5NB.js} +1 -1
  65. package/dist/{chunk-5TOV3D6U.js → chunk-CH2WTP6R.js} +6 -6
  66. package/dist/{chunk-YJHU5B3M.js → chunk-E6JYVPBK.js} +2 -2
  67. package/dist/{chunk-NF3U3MPG.js → chunk-ECK75GDJ.js} +2 -2
  68. package/dist/{chunk-NHRNYJPJ.js → chunk-EMC5GT4H.js} +7 -7
  69. package/dist/{chunk-5QZEVMLY.js → chunk-EUVPB5TA.js} +55 -37
  70. package/dist/chunk-EUVPB5TA.js.map +1 -0
  71. package/dist/{chunk-GS5UVGQK.js → chunk-G24HJJ67.js} +4 -4
  72. package/dist/{chunk-OEXKYYVH.js → chunk-HGFILS2Q.js} +6 -6
  73. package/dist/{chunk-BGXHVOBI.js → chunk-HLPD7B7P.js} +2 -2
  74. package/dist/{chunk-UP67AFRN.js → chunk-HXTUA7QM.js} +28 -28
  75. package/dist/chunk-HXTUA7QM.js.map +1 -0
  76. package/dist/{chunk-WGCTFGLW.js → chunk-I22U5YYD.js} +3 -3
  77. package/dist/{chunk-MSXWUXFE.js → chunk-IADUAH35.js} +2 -2
  78. package/dist/{chunk-JGXXPDM2.js → chunk-IXFI6E3Q.js} +3 -3
  79. package/dist/{chunk-ZVVASRUT.js → chunk-J43XN7N3.js} +90 -88
  80. package/dist/chunk-J43XN7N3.js.map +1 -0
  81. package/dist/{chunk-F2KMAFEB.js → chunk-JDDTNK5P.js} +2 -2
  82. package/dist/{chunk-KDXD2AM6.js → chunk-MUKLQDJP.js} +47 -47
  83. package/dist/{chunk-5N26WBPQ.js → chunk-MYFFOPO2.js} +5 -5
  84. package/dist/{chunk-Q53RLEW7.js → chunk-N7LPS4Z3.js} +2 -2
  85. package/dist/{chunk-EHKDORQN.js → chunk-NVRYW264.js} +9 -9
  86. package/dist/{chunk-MVW234LO.js → chunk-O4BADU6R.js} +2 -2
  87. package/dist/{chunk-ZERSIPFC.js → chunk-OHLNFI6Z.js} +17 -17
  88. package/dist/{chunk-AR2FSZBP.js → chunk-OPVOUBHT.js} +2 -2
  89. package/dist/{chunk-JDXDA5OO.js → chunk-OZL7KB6B.js} +2 -2
  90. package/dist/{chunk-4DYBLQZC.js → chunk-PJUHQC4T.js} +2 -2
  91. package/dist/{chunk-SEUSFKNS.js → chunk-PLQCPMJA.js} +14 -14
  92. package/dist/{chunk-MU7ZHSZE.js → chunk-PO5LSKQO.js} +2 -2
  93. package/dist/{chunk-ONHRRJZM.js → chunk-QJAQNXWI.js} +6 -6
  94. package/dist/{chunk-LZ5JKQCS.js → chunk-TRBIJS2T.js} +2 -2
  95. package/dist/{chunk-6GIMMNVK.js → chunk-U5SX74DV.js} +4 -4
  96. package/dist/{chunk-KPJQTSRJ.js → chunk-UUQLB2HJ.js} +2 -2
  97. package/dist/{chunk-JYIFGGEM.js → chunk-UZGJFIIG.js} +2 -2
  98. package/dist/{chunk-HNZKVLAN.js → chunk-W6ROK2KU.js} +2 -2
  99. package/dist/{chunk-EPQ76W5T.js → chunk-WMHO3WLC.js} +2 -2
  100. package/dist/{chunk-MBTPUVHZ.js → chunk-WUDWRUGK.js} +2 -2
  101. package/dist/{chunk-4VXGRIH6.js → chunk-WUNIWKY4.js} +5 -5
  102. package/dist/{chunk-BI6RE2ZS.js → chunk-WX6KOVVK.js} +2 -2
  103. package/dist/chunk-YUOKZ3LJ.js +24 -0
  104. package/dist/chunk-YUOKZ3LJ.js.map +1 -0
  105. package/dist/{cli-IUhV-lmk.d.ts → cli-U30A3jyx.d.ts} +2 -2
  106. package/dist/cli.d.ts +3 -3
  107. package/dist/cli.js +66 -65
  108. package/dist/compounding/engine.js +8 -8
  109. package/dist/connectors/codex-materialize-runner.js +8 -8
  110. package/dist/connectors/index.js +8 -8
  111. package/dist/convergence-refresh.d.ts +24 -0
  112. package/dist/convergence-refresh.js +74 -0
  113. package/dist/convergence-refresh.js.map +1 -0
  114. package/dist/conversation-index/backend.js +2 -2
  115. package/dist/corpus-watermark.js +19 -19
  116. package/dist/entity-retrieval.js +8 -8
  117. package/dist/explicit-capture.d.ts +1 -1
  118. package/dist/explicit-capture.js +3 -3
  119. package/dist/extraction.js +14 -14
  120. package/dist/{graph-edge-decay-Z6ENALU2.js → graph-edge-decay-GF3ZSGSP.js} +4 -4
  121. package/dist/graph-edge-decay-GF3ZSGSP.js.map +1 -0
  122. package/dist/graph-snapshot.js +3 -3
  123. package/dist/graph.js +2 -2
  124. package/dist/index.d.ts +4 -4
  125. package/dist/index.js +158 -156
  126. package/dist/lcm/index.js +3 -3
  127. package/dist/maintenance/memory-governance.js +9 -9
  128. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +8 -8
  129. package/dist/maintenance/rebuild-memory-projection.js +10 -10
  130. package/dist/mcp-memory-inspector-app.d.ts +2 -2
  131. package/dist/namespaces/migrate.js +18 -18
  132. package/dist/namespaces/search.js +9 -9
  133. package/dist/namespaces/storage.js +8 -8
  134. package/dist/offline-sync-impression-drain.js +4 -4
  135. package/dist/operator-doctor-corpus.js +20 -20
  136. package/dist/operator-toolkit.js +29 -29
  137. package/dist/orchestration/maintenance.js +15 -15
  138. package/dist/{orchestrator-fYTncnLy.d.ts → orchestrator-DUxbhhqO.d.ts} +1 -1
  139. package/dist/orchestrator.d.ts +1 -1
  140. package/dist/orchestrator.js +98 -96
  141. package/dist/qmd.js +4 -4
  142. package/dist/resume-bundles.js +1 -1
  143. package/dist/search/factory.js +8 -8
  144. package/dist/search/index.js +14 -14
  145. package/dist/semantic-consolidation.js +10 -10
  146. package/dist/semantic-rule-promotion.js +8 -8
  147. package/dist/semantic-rule-verifier.js +9 -9
  148. package/dist/source-agent-qualifier.js +13 -13
  149. package/dist/storage.js +7 -7
  150. package/dist/verified-recall.js +9 -9
  151. package/package.json +2 -2
  152. package/src/access-http-query.ts +25 -0
  153. package/src/access-http.test.ts +136 -0
  154. package/src/access-http.ts +26 -26
  155. package/src/access-service-offline-file-content.test.ts +40 -0
  156. package/src/access-service.ts +34 -0
  157. package/src/access-surface-catalog.ts +5 -0
  158. package/src/convergence-refresh.ts +28 -0
  159. package/src/orchestrator-convergence-refresh.test.ts +114 -0
  160. package/src/orchestrator.ts +5 -4
  161. package/dist/chunk-5QZEVMLY.js.map +0 -1
  162. package/dist/chunk-UP67AFRN.js.map +0 -1
  163. package/dist/chunk-ZVVASRUT.js.map +0 -1
  164. /package/dist/{graph-edge-decay-Z6ENALU2.js.map → access-http-query.js.map} +0 -0
  165. /package/dist/{auto-sync-UPTUVE4X.js.map → auto-sync-5OE5QOZB.js.map} +0 -0
  166. /package/dist/{chunk-LEPOP46W.js.map → chunk-227UFSEQ.js.map} +0 -0
  167. /package/dist/{chunk-BEQOZOYZ.js.map → chunk-2FTRRQKZ.js.map} +0 -0
  168. /package/dist/{chunk-CMENJQ6I.js.map → chunk-2QR2RRH6.js.map} +0 -0
  169. /package/dist/{chunk-3C2TGBDB.js.map → chunk-35IC3EVP.js.map} +0 -0
  170. /package/dist/{chunk-L2DPF4DF.js.map → chunk-3SHB4YAW.js.map} +0 -0
  171. /package/dist/{chunk-UV72DEZD.js.map → chunk-4B77XSG5.js.map} +0 -0
  172. /package/dist/{chunk-GUQYMOPU.js.map → chunk-4LMA77JH.js.map} +0 -0
  173. /package/dist/{chunk-AX2J2LC4.js.map → chunk-5ZE7QHTK.js.map} +0 -0
  174. /package/dist/{chunk-YFHMW37V.js.map → chunk-6CZPDBJS.js.map} +0 -0
  175. /package/dist/{chunk-QY66HJ4X.js.map → chunk-7PLHD7EO.js.map} +0 -0
  176. /package/dist/{chunk-NRV4Y3PM.js.map → chunk-CAGPP5NB.js.map} +0 -0
  177. /package/dist/{chunk-5TOV3D6U.js.map → chunk-CH2WTP6R.js.map} +0 -0
  178. /package/dist/{chunk-YJHU5B3M.js.map → chunk-E6JYVPBK.js.map} +0 -0
  179. /package/dist/{chunk-NF3U3MPG.js.map → chunk-ECK75GDJ.js.map} +0 -0
  180. /package/dist/{chunk-NHRNYJPJ.js.map → chunk-EMC5GT4H.js.map} +0 -0
  181. /package/dist/{chunk-GS5UVGQK.js.map → chunk-G24HJJ67.js.map} +0 -0
  182. /package/dist/{chunk-OEXKYYVH.js.map → chunk-HGFILS2Q.js.map} +0 -0
  183. /package/dist/{chunk-BGXHVOBI.js.map → chunk-HLPD7B7P.js.map} +0 -0
  184. /package/dist/{chunk-WGCTFGLW.js.map → chunk-I22U5YYD.js.map} +0 -0
  185. /package/dist/{chunk-MSXWUXFE.js.map → chunk-IADUAH35.js.map} +0 -0
  186. /package/dist/{chunk-JGXXPDM2.js.map → chunk-IXFI6E3Q.js.map} +0 -0
  187. /package/dist/{chunk-F2KMAFEB.js.map → chunk-JDDTNK5P.js.map} +0 -0
  188. /package/dist/{chunk-KDXD2AM6.js.map → chunk-MUKLQDJP.js.map} +0 -0
  189. /package/dist/{chunk-5N26WBPQ.js.map → chunk-MYFFOPO2.js.map} +0 -0
  190. /package/dist/{chunk-Q53RLEW7.js.map → chunk-N7LPS4Z3.js.map} +0 -0
  191. /package/dist/{chunk-EHKDORQN.js.map → chunk-NVRYW264.js.map} +0 -0
  192. /package/dist/{chunk-MVW234LO.js.map → chunk-O4BADU6R.js.map} +0 -0
  193. /package/dist/{chunk-ZERSIPFC.js.map → chunk-OHLNFI6Z.js.map} +0 -0
  194. /package/dist/{chunk-AR2FSZBP.js.map → chunk-OPVOUBHT.js.map} +0 -0
  195. /package/dist/{chunk-JDXDA5OO.js.map → chunk-OZL7KB6B.js.map} +0 -0
  196. /package/dist/{chunk-4DYBLQZC.js.map → chunk-PJUHQC4T.js.map} +0 -0
  197. /package/dist/{chunk-SEUSFKNS.js.map → chunk-PLQCPMJA.js.map} +0 -0
  198. /package/dist/{chunk-MU7ZHSZE.js.map → chunk-PO5LSKQO.js.map} +0 -0
  199. /package/dist/{chunk-ONHRRJZM.js.map → chunk-QJAQNXWI.js.map} +0 -0
  200. /package/dist/{chunk-LZ5JKQCS.js.map → chunk-TRBIJS2T.js.map} +0 -0
  201. /package/dist/{chunk-6GIMMNVK.js.map → chunk-U5SX74DV.js.map} +0 -0
  202. /package/dist/{chunk-KPJQTSRJ.js.map → chunk-UUQLB2HJ.js.map} +0 -0
  203. /package/dist/{chunk-JYIFGGEM.js.map → chunk-UZGJFIIG.js.map} +0 -0
  204. /package/dist/{chunk-HNZKVLAN.js.map → chunk-W6ROK2KU.js.map} +0 -0
  205. /package/dist/{chunk-EPQ76W5T.js.map → chunk-WMHO3WLC.js.map} +0 -0
  206. /package/dist/{chunk-MBTPUVHZ.js.map → chunk-WUDWRUGK.js.map} +0 -0
  207. /package/dist/{chunk-4VXGRIH6.js.map → chunk-WUNIWKY4.js.map} +0 -0
  208. /package/dist/{chunk-BI6RE2ZS.js.map → chunk-WX6KOVVK.js.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  runGraphEdgeDecayMaintenanceAcrossNamespaces
3
- } from "./chunk-HNZKVLAN.js";
3
+ } from "./chunk-W6ROK2KU.js";
4
4
  import {
5
5
  normalizeDreamsStatusWindowHours
6
6
  } from "./chunk-EQWEIIKQ.js";
@@ -28,13 +28,13 @@ import {
28
28
  defineOperation,
29
29
  parseNamespacePreflightWriteOp,
30
30
  resolveAuthorizedNamespaceWritablePreflight
31
- } from "./chunk-5QZEVMLY.js";
31
+ } from "./chunk-EUVPB5TA.js";
32
32
  import {
33
33
  projectTagProjectId
34
34
  } from "./chunk-BUE5E2HL.js";
35
35
  import {
36
36
  validateBriefingFormat
37
- } from "./chunk-3C2TGBDB.js";
37
+ } from "./chunk-35IC3EVP.js";
38
38
  import {
39
39
  enforceNamespaceAllowList,
40
40
  tokenCapabilityStore
@@ -494,4 +494,4 @@ defineOperation({ name: "graph_events", description: "SSE graph events.", schema
494
494
  defineOperation({ name: "chat_message", description: "Chat message.", schema: strictSchema({ message: S.str, chatSessionId: S.str }), handler: async (_i, _ctx) => ({ result: { ok: true } }) });
495
495
  defineOperation({ name: "chat_events", description: "SSE chat events.", schema: strictSchema({}), handler: async (_i, _ctx) => ({ result: { stream: "sse" } }) });
496
496
  defineOperation({ name: "adapters_status", description: "Adapter registry metadata (issue #1850 round 5). Marker op: the HTTP transport builds the response from its own adapterRegistry, but the op still must be registered so it appears in listRegisteredOperations and enforceTokenOp can gate it for scoped tokens.", schema: strictSchema({}), handler: async (_i, _ctx) => ({ result: { ok: true } }) });
497
- //# sourceMappingURL=chunk-GS5UVGQK.js.map
497
+ //# sourceMappingURL=chunk-G24HJJ67.js.map
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  BoxBuilder
3
3
  } from "./chunk-B7RWBZXW.js";
4
+ import {
5
+ countRecallTokenOverlap,
6
+ normalizeRecallTokens
7
+ } from "./chunk-ZBJMUXZH.js";
4
8
  import {
5
9
  StorageManager
6
- } from "./chunk-ZERSIPFC.js";
10
+ } from "./chunk-OHLNFI6Z.js";
7
11
  import {
8
12
  getCachedEpisodeMap,
9
13
  setCachedEpisodeMap
10
14
  } from "./chunk-XMMESCPD.js";
11
- import {
12
- countRecallTokenOverlap,
13
- normalizeRecallTokens
14
- } from "./chunk-ZBJMUXZH.js";
15
15
 
16
16
  // src/verified-recall.ts
17
17
  function createReadOnlyBoxBuilder(memoryDir) {
@@ -109,4 +109,4 @@ export {
109
109
  compareVerifiedEpisodeResults,
110
110
  searchVerifiedEpisodes
111
111
  };
112
- //# sourceMappingURL=chunk-OEXKYYVH.js.map
112
+ //# sourceMappingURL=chunk-HGFILS2Q.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  createSearchBackend
3
- } from "./chunk-EHKDORQN.js";
3
+ } from "./chunk-NVRYW264.js";
4
4
  import {
5
5
  namespaceIdentityToken,
6
6
  normalizeNamespaceIdentity
@@ -470,4 +470,4 @@ export {
470
470
  NamespaceSearchRouter,
471
471
  normalizeQmdResultPath
472
472
  };
473
- //# sourceMappingURL=chunk-BGXHVOBI.js.map
473
+ //# sourceMappingURL=chunk-HLPD7B7P.js.map
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  WearablesInputError
3
3
  } from "./chunk-V7IZKJI3.js";
4
- import {
5
- AdapterRegistry
6
- } from "./chunk-RKNJBZ55.js";
7
4
  import {
8
5
  WriteRateLimiter
9
6
  } from "./chunk-MKQBXQKU.js";
7
+ import {
8
+ AdapterRegistry
9
+ } from "./chunk-RKNJBZ55.js";
10
10
  import {
11
11
  EngramMcpServer,
12
12
  MCP_SUPPORTED_PROTOCOL_VERSIONS,
@@ -16,10 +16,10 @@ import {
16
16
  processChatMessage,
17
17
  sessionBelongsToPrincipal,
18
18
  subscribeChatTranscript
19
- } from "./chunk-4DYBLQZC.js";
19
+ } from "./chunk-PJUHQC4T.js";
20
20
  import {
21
21
  RelayMissionStoreError
22
- } from "./chunk-LZ5JKQCS.js";
22
+ } from "./chunk-TRBIJS2T.js";
23
23
  import {
24
24
  executeResolution,
25
25
  isValidResolutionVerb
@@ -38,15 +38,20 @@ import {
38
38
  import {
39
39
  respondLcmCompactionCapabilitiesHttp
40
40
  } from "./chunk-VCD4PSK2.js";
41
+ import {
42
+ nonEmptyQueryParam,
43
+ optionalQueryString,
44
+ positiveIntQueryParam
45
+ } from "./chunk-6ZYQ36IB.js";
41
46
  import {
42
47
  authorizationProbeNamespaces,
43
48
  probeOperationAuthorization
44
- } from "./chunk-YJHU5B3M.js";
49
+ } from "./chunk-E6JYVPBK.js";
45
50
  import {
46
51
  CorrectionContractError,
47
52
  getOperation,
48
53
  resolveQueryNamespaceWritablePreflight
49
- } from "./chunk-5QZEVMLY.js";
54
+ } from "./chunk-EUVPB5TA.js";
50
55
  import {
51
56
  isTrustZoneName
52
57
  } from "./chunk-JGSKJHF7.js";
@@ -1182,6 +1187,21 @@ var EngramAccessHttpServer = class {
1182
1187
  this.respondJson(res, 200, result);
1183
1188
  return;
1184
1189
  }
1190
+ if (req.method === "POST" && (pathname === "/engram/v1/offline-sync/convergence-complete" || pathname === "/remnic/v1/offline-sync/convergence-complete")) {
1191
+ this.enforceTokenOp("offline_sync_apply_file_content");
1192
+ const namespaceParams = parsed.searchParams.getAll("namespace").filter(Boolean);
1193
+ const requestedNamespaces = namespaceParams.length > 0 ? namespaceParams : [void 0];
1194
+ const namespaces = requestedNamespaces.map((namespace) => this.resolveNamespace(req, namespace)).filter((namespace) => namespace !== void 0);
1195
+ this.ensureWriteRateLimitAvailable(req);
1196
+ const result = await this.service.offlineSyncFinalizeConvergence({
1197
+ ...namespaces.length > 0 ? { namespaces } : {},
1198
+ principal: this.resolveRequestPrincipal(req),
1199
+ sourceId: this.readRequiredDecodedHeader(req, "x-remnic-source-id")
1200
+ });
1201
+ this.recordWriteRateLimitHit(req);
1202
+ this.respondJson(res, 200, result);
1203
+ return;
1204
+ }
1185
1205
  if (req.method === "POST" && (pathname === "/engram/v1/offline-sync/apply" || pathname === "/remnic/v1/offline-sync/apply")) {
1186
1206
  this.enforceTokenOp("offline_sync_apply");
1187
1207
  const body = await this.readValidatedBody(req, "offlineSyncApply", OFFLINE_SYNC_APPLY_MAX_BODY_BYTES);
@@ -3201,29 +3221,9 @@ var EngramAccessHttpServer = class {
3201
3221
  return false;
3202
3222
  }
3203
3223
  };
3204
- function optionalQueryString(value, label) {
3205
- if (value === void 0 || value === null || value === "") return void 0;
3206
- if (typeof value !== "string") {
3207
- throw new EngramAccessInputError(
3208
- `${label} must be a string (got ${JSON.stringify(value)})`
3209
- );
3210
- }
3211
- return value;
3212
- }
3213
- function nonEmptyQueryParam(value) {
3214
- return value !== null && value.length > 0 ? value : void 0;
3215
- }
3216
- function positiveIntQueryParam(value, label) {
3217
- if (value === null || value.length === 0) return void 0;
3218
- const parsed = Number(value);
3219
- if (!Number.isFinite(parsed) || parsed <= 0 || !Number.isInteger(parsed)) {
3220
- throw new EngramAccessInputError(`${label} expects a positive integer`);
3221
- }
3222
- return parsed;
3223
- }
3224
3224
 
3225
3225
  export {
3226
3226
  MeetingsInputError,
3227
3227
  EngramAccessHttpServer
3228
3228
  };
3229
- //# sourceMappingURL=chunk-UP67AFRN.js.map
3229
+ //# sourceMappingURL=chunk-HXTUA7QM.js.map