chatlab-cli 0.36.0 → 0.36.2

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 (200) hide show
  1. package/README.md +7 -7
  2. package/dist/{chat-command-SXW67RF7.mjs → chat-command-SEV6N3AR.mjs} +10 -10
  3. package/dist/chat-command-SEV6N3AR.mjs.map +1 -0
  4. package/dist/{chunk-UNIKQFI5.mjs → chunk-6E46U4H2.mjs} +2 -2
  5. package/dist/{chunk-AAGDVTP2.mjs → chunk-6EZPD3XJ.mjs} +2 -2
  6. package/dist/{chunk-VDWI4A4U.mjs → chunk-CH5YAZ4Q.mjs} +2 -2
  7. package/dist/{chunk-JHON5FN7.mjs → chunk-HWIXK7SU.mjs} +8 -3
  8. package/dist/chunk-HWIXK7SU.mjs.map +1 -0
  9. package/dist/{chunk-U2NXHIJK.mjs → chunk-TJ3NOBVI.mjs} +3 -3
  10. package/dist/{chunk-OWOEWZIC.mjs → chunk-TRGR3KKJ.mjs} +84 -28
  11. package/dist/chunk-TRGR3KKJ.mjs.map +1 -0
  12. package/dist/{chunk-GVW3BDGZ.mjs → chunk-TWH422HC.mjs} +3 -3
  13. package/dist/{chunk-4YPNYQSP.mjs → chunk-VREVDZ4Q.mjs} +390 -96
  14. package/dist/chunk-VREVDZ4Q.mjs.map +1 -0
  15. package/dist/{chunk-XDF6PMVZ.mjs → chunk-VUYWUHWW.mjs} +2 -2
  16. package/dist/{chunk-BSGLH6G3.mjs → chunk-WJQOXOMR.mjs} +147 -80
  17. package/dist/chunk-WJQOXOMR.mjs.map +1 -0
  18. package/dist/{chunk-CNEWMCGX.mjs → chunk-WRBFV2GX.mjs} +57 -57
  19. package/dist/chunk-WRBFV2GX.mjs.map +1 -0
  20. package/dist/{chunk-LZGOIRLV.mjs → chunk-YUH3H3QW.mjs} +9 -5
  21. package/dist/chunk-YUH3H3QW.mjs.map +1 -0
  22. package/dist/cli.mjs +9 -9
  23. package/dist/contacts-worker.mjs +2 -2
  24. package/dist/global-insight-worker.mjs +1 -1
  25. package/dist/{http-LVOGJFDL.mjs → http-237XYNRT.mjs} +12 -12
  26. package/dist/{import-7OU57ZHM.mjs → import-R2E2TFAK.mjs} +7 -7
  27. package/dist/index.mjs +12 -12
  28. package/dist/{mcp-CUKHTTII.mjs → mcp-BED4AARV.mjs} +8 -8
  29. package/dist/people-relationships-worker.mjs +2 -2
  30. package/dist/semantic-index-worker.mjs +1 -1
  31. package/dist/{service-KZTHBDQ5.mjs → service-ZAHXRSFD.mjs} +6 -6
  32. package/dist/service-ZAHXRSFD.mjs.map +1 -0
  33. package/dist/{src-LORFXAUE.mjs → src-AYMALWU5.mjs} +10 -6
  34. package/dist/{stream-import-7YUWIAD6.mjs → stream-import-RXNSOOYH.mjs} +7 -7
  35. package/dist/{undici-MU5I3L6Q.mjs → undici-UGXDRJLV.mjs} +193 -193
  36. package/dist/undici-UGXDRJLV.mjs.map +1 -0
  37. package/dist/{update-checker-3N7HQEP2.mjs → update-checker-UL2FBLXH.mjs} +3 -5
  38. package/dist/{update-checker-3N7HQEP2.mjs.map → update-checker-UL2FBLXH.mjs.map} +1 -1
  39. package/dist/{worker-runtime-GQ5SY7E3.mjs → worker-runtime-JGAZU7MC.mjs} +5 -5
  40. package/dist-cli-web/assets/AISettingsTab-VgI7PiJd.js +1 -0
  41. package/dist-cli-web/assets/AboutTab-DCM1-glA.js +1 -0
  42. package/dist-cli-web/assets/ActionToolsPanel-BTGgwXVD.css +1 -0
  43. package/dist-cli-web/assets/ActionToolsPanel.vue_vue_type_script_setup_true_lang-a7RMjjve.js +112 -0
  44. package/dist-cli-web/assets/{Alert-DJzXKcec.js → Alert-D-egBWcb.js} +1 -1
  45. package/dist-cli-web/assets/ApiSettingsTab-Co3LWf1f.js +2 -0
  46. package/dist-cli-web/assets/BatchManageTab-2LrckmQm.js +1 -0
  47. package/dist-cli-web/assets/{BufferResource-DY3P-dGs.js → BufferResource-BE2_2bZK.js} +1 -1
  48. package/dist-cli-web/assets/{CanvasRenderer-As2MJTWZ.js → CanvasRenderer-DDKdvEYQ.js} +1 -1
  49. package/dist-cli-web/assets/ChatRecordDrawer-DRhztqLG.js +1 -0
  50. package/dist-cli-web/assets/{ChatRecordWorkspace-CVDPBmcl.js → ChatRecordWorkspace-DqUI4QiU.js} +1 -1
  51. package/dist-cli-web/assets/{Checkbox-4F1WAuVF.js → Checkbox-EfpQmv4A.js} +1 -1
  52. package/dist-cli-web/assets/DataDirCleanupNotice-BYIiR58J.js +1 -0
  53. package/dist-cli-web/assets/DatePicker.vue_vue_type_script_setup_true_lang-sPDoPzZ9.js +1 -0
  54. package/dist-cli-web/assets/{DebugToolsPanel-BLU6SY8a.js → DebugToolsPanel-BIHA6jw4.js} +1 -1
  55. package/dist-cli-web/assets/EChart.vue_vue_type_script_setup_true_lang-DryMSoCz.js +1 -0
  56. package/dist-cli-web/assets/EChartBar.vue_vue_type_script_setup_true_lang-BdFW-hvt.js +1 -0
  57. package/dist-cli-web/assets/{EChartLine.vue_vue_type_script_setup_true_lang-BYhukELX.js → EChartLine.vue_vue_type_script_setup_true_lang-C69Kdw9X.js} +1 -1
  58. package/dist-cli-web/assets/{EChartWordcloud-C16xh7Tx.js → EChartWordcloud-DM7UEHdK.js} +1 -1
  59. package/dist-cli-web/assets/{Filter-BEtPORqF.js → Filter-kO4dIDJ2.js} +1 -1
  60. package/dist-cli-web/assets/GlobalTaskBar-BZS_h0zC.js +1 -0
  61. package/dist-cli-web/assets/GroupRelationshipGalaxyView--WIaHx_F.js +1 -0
  62. package/dist-cli-web/assets/{Label-Dgl3ghzT.js → Label-CIuDXyeM.js} +1 -1
  63. package/dist-cli-web/assets/LoadingState.vue_vue_type_script_setup_true_lang-B_7VHxTx.js +1 -0
  64. package/dist-cli-web/assets/MessageExportModal-BQsIpyxv.js +1 -0
  65. package/dist-cli-web/assets/{PageHeader-CL9AFfvl.js → PageHeader-DxhQHF_0.js} +1 -1
  66. package/dist-cli-web/assets/{PageTabs.vue_vue_type_script_setup_true_lang-C22kOxIK.js → PageTabs.vue_vue_type_script_setup_true_lang-Cgungbjl.js} +1 -1
  67. package/dist-cli-web/assets/{RelationshipGalaxyCanvas-BnkcrIpk.js → RelationshipGalaxyCanvas-Cod1JX9m.js} +14 -14
  68. package/dist-cli-web/assets/RelationshipGalaxyThreeCanvas-CCasBcBQ.css +1 -0
  69. package/dist-cli-web/assets/RelationshipGalaxyThreeCanvas-CkefzeFJ.js +4168 -0
  70. package/dist-cli-web/assets/{RenderTargetSystem-CPwnC2X3.js → RenderTargetSystem-SuQ7cbze.js} +1 -1
  71. package/dist-cli-web/assets/RovingFocusItem-psoFYxrC.js +1 -0
  72. package/dist-cli-web/assets/{ScreenCaptureModal-ByKxzNQe.js → ScreenCaptureModal-D4r9ixKh.js} +1 -1
  73. package/dist-cli-web/assets/SectionTabs.vue_vue_type_script_setup_true_lang-v_7aRBgM.js +1 -0
  74. package/dist-cli-web/assets/{Select-jVtfc_xc.js → Select-CxurgslB.js} +1 -1
  75. package/dist-cli-web/assets/SettingsModal-BFkxzo0Y.css +1 -0
  76. package/dist-cli-web/assets/SettingsModal-DBZucuf6.js +2 -0
  77. package/dist-cli-web/assets/{StorageTab-QdcDqA6Q.js → StorageTab-DhSJ-0Ir.js} +1 -1
  78. package/dist-cli-web/assets/{Switch-DYHM64k9.js → Switch-3D81G6uV.js} +1 -1
  79. package/dist-cli-web/assets/Tabs-Bnm_Q7yW.js +1 -0
  80. package/dist-cli-web/assets/{Tabs-B6Nzq2NQ.js → Tabs-DB603EEu.js} +1 -1
  81. package/dist-cli-web/assets/{ThemeCard.vue_vue_type_script_setup_true_lang-Bsq7gpC0.js → ThemeCard.vue_vue_type_script_setup_true_lang-BDTdkH5i.js} +1 -1
  82. package/dist-cli-web/assets/TimeSelect.vue_vue_type_script_setup_true_lang-Cjz8Wpg-.js +1 -0
  83. package/dist-cli-web/assets/{VisuallyHiddenInput-IQpmK9yR.js → VisuallyHiddenInput-Bo_XwaLu.js} +1 -1
  84. package/dist-cli-web/assets/{WebGLRenderer-8JHbnkTc.js → WebGLRenderer-D1x9WZRj.js} +1 -1
  85. package/dist-cli-web/assets/{WebGPURenderer-CLWfB4CC.js → WebGPURenderer-37Nw-tLm.js} +1 -1
  86. package/dist-cli-web/assets/aiChat-BCzYQeZq.js +8 -0
  87. package/dist-cli-web/assets/{browserAll-Cin6ghNg.js → browserAll-CWrz_-4U.js} +1 -1
  88. package/dist-cli-web/assets/{cli-web-D7IBc3AX.js → cli-web-C-8N0CJh.js} +1 -1
  89. package/dist-cli-web/assets/{fetch-2QEQPA9q.js → fetch-6pcVxB9h.js} +1 -1
  90. package/dist-cli-web/assets/{fetch-CuUeyk0N.js → fetch-B69OkB6B.js} +1 -1
  91. package/dist-cli-web/assets/{fetch-1NiXh-_B.js → fetch-BGmCCyzz.js} +1 -1
  92. package/dist-cli-web/assets/{fetch-C8tTTsCm.js → fetch-CFpLXWTe.js} +1 -1
  93. package/dist-cli-web/assets/{fetch-B7kuohCt.js → fetch-CgA1peJD.js} +1 -1
  94. package/dist-cli-web/assets/{fetch-OnnCjzee.js → fetch-CkXgOxcu.js} +1 -1
  95. package/dist-cli-web/assets/{fetch-BR71C0K9.js → fetch-DPSWt6yX.js} +1 -1
  96. package/dist-cli-web/assets/{fetch-Bk-7vxHV.js → fetch-DZ6OF-xW.js} +1 -1
  97. package/dist-cli-web/assets/{fetch-_CN1EVMt.js → fetch-Du-wU0OO.js} +1 -1
  98. package/dist-cli-web/assets/fetch-Gu4qQjUB.js +1 -0
  99. package/dist-cli-web/assets/{fetch-B2agy1hy.js → fetch-qd2FgBWQ.js} +1 -1
  100. package/dist-cli-web/assets/{fetch-DPRDSI39.js → fetch-z9M9FcIC.js} +1 -1
  101. package/dist-cli-web/assets/host-CWsAWKgy.js +1 -0
  102. package/dist-cli-web/assets/host-D8zlA62K.js +1 -0
  103. package/dist-cli-web/assets/index-BGd4ZfhO.js +2 -0
  104. package/dist-cli-web/assets/index-BYZF1ngN.js +1 -0
  105. package/dist-cli-web/assets/index-BcuwlCin.css +1 -0
  106. package/dist-cli-web/assets/index-BnaLj2dx.css +1 -0
  107. package/dist-cli-web/assets/index-Bq5q3kSU.js +36 -0
  108. package/dist-cli-web/assets/index-CPR3jdC2.js +137 -0
  109. package/dist-cli-web/assets/index-D3AjvaOX.js +1 -0
  110. package/dist-cli-web/assets/index-DAitScUA.js +1 -0
  111. package/dist-cli-web/assets/index-DBSMWAJ0.js +1 -0
  112. package/dist-cli-web/assets/index-DTn9htw-.js +64 -0
  113. package/dist-cli-web/assets/index-DV_rWxcH.js +1 -0
  114. package/dist-cli-web/assets/index-DxhAGqYM.css +1 -0
  115. package/dist-cli-web/assets/{index-Colc58j-.js → index-Dy0fRMDf.js} +1 -1
  116. package/dist-cli-web/assets/index-Dz_ddyZS.css +1 -0
  117. package/dist-cli-web/assets/index-I0mIcDpE.css +1 -0
  118. package/dist-cli-web/assets/{index-BIHFuCJK.js → index-a7CT8DQm.js} +1 -1
  119. package/dist-cli-web/assets/index-onwNShRw.js +2 -0
  120. package/dist-cli-web/assets/index-v6DlL4ue.js +1 -0
  121. package/dist-cli-web/assets/{people-page-header-DNPjaSt4.js → people-page-header-Czt9e1jv.js} +1 -1
  122. package/dist-cli-web/assets/{prompt-BgywZQ_g.js → prompt-DGazz143.js} +1 -1
  123. package/dist-cli-web/assets/{semantic-index-config-builder-bji_UxYE.js → semantic-index-config-builder-BkFHzIUy.js} +1 -1
  124. package/dist-cli-web/assets/service-BMqwB74f.js +1 -0
  125. package/dist-cli-web/assets/{service-DpU9fa-l.js → service-CAp0YJoS.js} +1 -1
  126. package/dist-cli-web/assets/service-CUQ8iHdS.js +1 -0
  127. package/dist-cli-web/assets/{useFormControl-De24E2zT.js → useFormControl-DcSMUc2d.js} +1 -1
  128. package/dist-cli-web/assets/useTable-Clmq3sge.js +1 -0
  129. package/dist-cli-web/assets/useToast-YAHDkKDN.js +1 -0
  130. package/dist-cli-web/assets/{vendor-echarts-DfAMQxdr.js → vendor-echarts-hTLhTs52.js} +5 -5
  131. package/dist-cli-web/assets/{vendor-echarts-wordcloud-BsaEJTPY.js → vendor-echarts-wordcloud-B8CF_NgP.js} +1 -1
  132. package/dist-cli-web/assets/{vendor-zrender-PFmZe1EY.js → vendor-zrender-D8psf1AA.js} +2 -2
  133. package/dist-cli-web/assets/{webworkerAll-BRnv6GvJ.js → webworkerAll-CvSp2Y8j.js} +1 -1
  134. package/dist-cli-web/index.html +2 -2
  135. package/package.json +4 -4
  136. package/dist/chat-command-SXW67RF7.mjs.map +0 -1
  137. package/dist/chunk-4YPNYQSP.mjs.map +0 -1
  138. package/dist/chunk-BSGLH6G3.mjs.map +0 -1
  139. package/dist/chunk-CNEWMCGX.mjs.map +0 -1
  140. package/dist/chunk-JHON5FN7.mjs.map +0 -1
  141. package/dist/chunk-LZGOIRLV.mjs.map +0 -1
  142. package/dist/chunk-OWOEWZIC.mjs.map +0 -1
  143. package/dist/service-KZTHBDQ5.mjs.map +0 -1
  144. package/dist/undici-MU5I3L6Q.mjs.map +0 -1
  145. package/dist-cli-web/assets/AISettingsTab-BmhNcUEh.js +0 -1
  146. package/dist-cli-web/assets/AboutTab-CFklrZt8.js +0 -1
  147. package/dist-cli-web/assets/ActionToolsPanel-Dp-ojXjO.css +0 -1
  148. package/dist-cli-web/assets/ActionToolsPanel.vue_vue_type_script_setup_true_lang-B-dIPvcs.js +0 -110
  149. package/dist-cli-web/assets/ApiSettingsTab-DvDm421U.js +0 -2
  150. package/dist-cli-web/assets/BatchManageTab-DhIDH3Q1.js +0 -1
  151. package/dist-cli-web/assets/ChatRecordDrawer-DHdas7Jp.js +0 -1
  152. package/dist-cli-web/assets/DataDirCleanupNotice-jebQ9il3.js +0 -1
  153. package/dist-cli-web/assets/DatePicker.vue_vue_type_script_setup_true_lang-Cal624eP.js +0 -1
  154. package/dist-cli-web/assets/EChart.vue_vue_type_script_setup_true_lang-CsgJ-Xn3.js +0 -1
  155. package/dist-cli-web/assets/GlobalTaskBar-BvNmFO7q.js +0 -1
  156. package/dist-cli-web/assets/GroupRelationshipGalaxyView-DEUIrvgz.js +0 -1
  157. package/dist-cli-web/assets/LoadingState.vue_vue_type_script_setup_true_lang-CwDIA0UP.js +0 -1
  158. package/dist-cli-web/assets/MessageExportModal-DYjhBuzO.js +0 -1
  159. package/dist-cli-web/assets/RelationshipGalaxyThreeCanvas-CqdqveEJ.js +0 -4108
  160. package/dist-cli-web/assets/RelationshipGalaxyThreeCanvas-TYGOUDiv.css +0 -1
  161. package/dist-cli-web/assets/RovingFocusItem-j33Nsbbn.js +0 -1
  162. package/dist-cli-web/assets/SectionTabs.vue_vue_type_script_setup_true_lang-C6EHKB_i.js +0 -1
  163. package/dist-cli-web/assets/SettingsModal-CjVax3I6.css +0 -1
  164. package/dist-cli-web/assets/SettingsModal-Dg27piEO.js +0 -2
  165. package/dist-cli-web/assets/Tabs-CRZdCcU4.js +0 -1
  166. package/dist-cli-web/assets/TimeSelect.vue_vue_type_script_setup_true_lang-BLpQds4F.js +0 -1
  167. package/dist-cli-web/assets/aiChat-4JvxWGXZ.js +0 -8
  168. package/dist-cli-web/assets/base-D6fxqD_X.js +0 -1
  169. package/dist-cli-web/assets/dateFormat-Bu4-Ux3L.js +0 -1
  170. package/dist-cli-web/assets/index-B4J99zv3.css +0 -1
  171. package/dist-cli-web/assets/index-BBeqtL8d.css +0 -1
  172. package/dist-cli-web/assets/index-BCEk6ZpL.js +0 -64
  173. package/dist-cli-web/assets/index-BUz_Vl9U.js +0 -2
  174. package/dist-cli-web/assets/index-BWZIoPV3.css +0 -1
  175. package/dist-cli-web/assets/index-BYQV3OA5.js +0 -1
  176. package/dist-cli-web/assets/index-CVVv_6qu.js +0 -2
  177. package/dist-cli-web/assets/index-CacwXQL4.js +0 -1
  178. package/dist-cli-web/assets/index-DImo7TQN.js +0 -1
  179. package/dist-cli-web/assets/index-DV9zQVPV.js +0 -137
  180. package/dist-cli-web/assets/index-DXKS-q-w.css +0 -1
  181. package/dist-cli-web/assets/index-DZc5A4_J.js +0 -1
  182. package/dist-cli-web/assets/index-DkWTvE7d.js +0 -36
  183. package/dist-cli-web/assets/index-DmEn0PAI.js +0 -1
  184. package/dist-cli-web/assets/index-b9eEQeVt.js +0 -1
  185. package/dist-cli-web/assets/index-waDxab2e.css +0 -1
  186. package/dist-cli-web/assets/insight-time-range-MJxLEu6o.js +0 -1
  187. package/dist-cli-web/assets/useTable-C7BH94MF.js +0 -1
  188. package/dist-cli-web/assets/useToast-CxhJkhXK.js +0 -1
  189. /package/dist/{chunk-UNIKQFI5.mjs.map → chunk-6E46U4H2.mjs.map} +0 -0
  190. /package/dist/{chunk-AAGDVTP2.mjs.map → chunk-6EZPD3XJ.mjs.map} +0 -0
  191. /package/dist/{chunk-VDWI4A4U.mjs.map → chunk-CH5YAZ4Q.mjs.map} +0 -0
  192. /package/dist/{chunk-U2NXHIJK.mjs.map → chunk-TJ3NOBVI.mjs.map} +0 -0
  193. /package/dist/{chunk-GVW3BDGZ.mjs.map → chunk-TWH422HC.mjs.map} +0 -0
  194. /package/dist/{chunk-XDF6PMVZ.mjs.map → chunk-VUYWUHWW.mjs.map} +0 -0
  195. /package/dist/{http-LVOGJFDL.mjs.map → http-237XYNRT.mjs.map} +0 -0
  196. /package/dist/{import-7OU57ZHM.mjs.map → import-R2E2TFAK.mjs.map} +0 -0
  197. /package/dist/{mcp-CUKHTTII.mjs.map → mcp-BED4AARV.mjs.map} +0 -0
  198. /package/dist/{src-LORFXAUE.mjs.map → src-AYMALWU5.mjs.map} +0 -0
  199. /package/dist/{stream-import-7YUWIAD6.mjs.map → stream-import-RXNSOOYH.mjs.map} +0 -0
  200. /package/dist/{worker-runtime-GQ5SY7E3.mjs.map → worker-runtime-JGAZU7MC.mjs.map} +0 -0
@@ -21,7 +21,7 @@ import {
21
21
  setCache,
22
22
  shouldEnableContactsEntry,
23
23
  shouldScopeContactToSession
24
- } from "./chunk-OWOEWZIC.mjs";
24
+ } from "./chunk-TRGR3KKJ.mjs";
25
25
 
26
26
  // ../../packages/node-runtime/src/services/contacts/facts-cache.ts
27
27
  var CONTACTS_FACTS_FORMAT_VERSION = 1;
@@ -517,4 +517,4 @@ export {
517
517
  computeContactsSnapshot,
518
518
  createEmptyContactsDiagnostics
519
519
  };
520
- //# sourceMappingURL=chunk-XDF6PMVZ.mjs.map
520
+ //# sourceMappingURL=chunk-VUYWUHWW.mjs.map
@@ -11,14 +11,14 @@ import {
11
11
  getServerAiLogger,
12
12
  getSkillManagerCore,
13
13
  initServerAiLogger
14
- } from "./chunk-LZGOIRLV.mjs";
14
+ } from "./chunk-YUH3H3QW.mjs";
15
15
  import {
16
16
  AGENT_TOOL_REGISTRY,
17
17
  CoreDataProvider
18
- } from "./chunk-JHON5FN7.mjs";
18
+ } from "./chunk-HWIXK7SU.mjs";
19
19
  import {
20
20
  resolveCliLocalEmbeddingRuntimeConfig
21
- } from "./chunk-UNIKQFI5.mjs";
21
+ } from "./chunk-6E46U4H2.mjs";
22
22
  import {
23
23
  analyzeIncrementalImport,
24
24
  analyzeNewImport,
@@ -26,10 +26,10 @@ import {
26
26
  autoImportBatch,
27
27
  incrementalImport,
28
28
  streamImport
29
- } from "./chunk-GVW3BDGZ.mjs";
29
+ } from "./chunk-TWH422HC.mjs";
30
30
  import {
31
31
  assertCliDataDirCompatible
32
- } from "./chunk-VDWI4A4U.mjs";
32
+ } from "./chunk-CH5YAZ4Q.mjs";
33
33
  import {
34
34
  getVersion
35
35
  } from "./chunk-5ADKYYNA.mjs";
@@ -62,7 +62,7 @@ import {
62
62
  isDictDownloaded,
63
63
  segmentText,
64
64
  serializeChatLabToJsonl
65
- } from "./chunk-U2NXHIJK.mjs";
65
+ } from "./chunk-TJ3NOBVI.mjs";
66
66
  import {
67
67
  ArchiveImportError,
68
68
  ArchiveImportSourceManager,
@@ -70,6 +70,7 @@ import {
70
70
  ImportIdempotencyCache,
71
71
  ImportInProgressError,
72
72
  MergeSessionCache,
73
+ NavigationLayoutValidationError,
73
74
  PARSER_FORMAT_IDS,
74
75
  SEMANTIC_INDEX_CONFIG_FILE,
75
76
  SemanticIndexConfigStore,
@@ -77,6 +78,7 @@ import {
77
78
  createChatLabTempDir,
78
79
  createContactsService,
79
80
  createGlobalInsightService,
81
+ createNavigationLayoutService,
80
82
  createPeopleRelationshipsService,
81
83
  createTimeInvestmentService,
82
84
  detectAllFormats,
@@ -100,10 +102,11 @@ import {
100
102
  session_service_exports,
101
103
  streamParseFileInfo,
102
104
  summary_service_exports
103
- } from "./chunk-4YPNYQSP.mjs";
105
+ } from "./chunk-VREVDZ4Q.mjs";
104
106
  import {
105
107
  AIChatManager,
106
108
  ALL_MIGRATIONS,
109
+ ANNUAL_SUMMARY_PLUGIN_ID,
107
110
  BUILTIN_MODELS,
108
111
  BUILTIN_PROVIDERS,
109
112
  BUILTIN_TOOL_CATALOG,
@@ -114,6 +117,7 @@ import {
114
117
  GROUP_RELATIONSHIP_GALAXY_ALGORITHM_VERSION,
115
118
  MigrationRunner,
116
119
  POS_TAG_DEFINITIONS,
120
+ TIME_INVESTMENT_PLUGIN_ID,
117
121
  appLogger,
118
122
  assertValidTopicDayKey,
119
123
  buildPiModel,
@@ -174,7 +178,7 @@ import {
174
178
  validateApiKey,
175
179
  verifyCliDataPath,
176
180
  writeConfigField
177
- } from "./chunk-OWOEWZIC.mjs";
181
+ } from "./chunk-TRGR3KKJ.mjs";
178
182
 
179
183
  // src/http/index.ts
180
184
  import * as fs11 from "fs";
@@ -800,6 +804,11 @@ function registerRestRoutes(server2, ctx) {
800
804
  registerImportRoutes(server2, ctx);
801
805
  }
802
806
 
807
+ // ../../packages/http-routes/src/plugins/node.ts
808
+ function registerNodePlugins(server2, context, plugins) {
809
+ for (const plugin of plugins) plugin.registerHttpRoutes(server2, context);
810
+ }
811
+
803
812
  // ../../packages/http-routes/src/routes/web/ai-agent-stream.ts
804
813
  var activeAgentAborts = /* @__PURE__ */ new Map();
805
814
  function registerAiAgentStreamRoutes(server2, ctx) {
@@ -1962,7 +1971,9 @@ function registerAnalyticsRoutes(server2, ctx) {
1962
1971
  async (request) => {
1963
1972
  const id = request.params.id;
1964
1973
  const filter = parseTimeFilter(request.query);
1965
- return cached("repeat", id, { ...filter }, () => getRepeatAnalysis(adapter.ensureReadonly(id), filter));
1974
+ return cached("repeat", id, { ...filter }, () => getRepeatAnalysis(adapter.ensureReadonly(id), filter), {
1975
+ extraVersion: "originator-id-v1"
1976
+ });
1966
1977
  }
1967
1978
  );
1968
1979
  }
@@ -2329,69 +2340,6 @@ function registerExportRoutes(server2, ctx) {
2329
2340
  });
2330
2341
  }
2331
2342
 
2332
- // ../../packages/http-routes/src/routes/web/global-insight.ts
2333
- function registerGlobalInsightRoutes(server2, ctx) {
2334
- let preferences = ctx.preferencesManager;
2335
- const getExcludedSessionIds = () => {
2336
- preferences ??= new PreferencesManager(ctx.pathProvider.getSystemDir());
2337
- return preferences.load().ownerExcludedSessionIds;
2338
- };
2339
- const service = ctx.globalInsightService ?? createGlobalInsightService({
2340
- adapter: ctx.sessionAdapter,
2341
- pathProvider: ctx.pathProvider,
2342
- runtimeIdentity: ctx.runtimeIdentity,
2343
- nativeBinding: ctx.nativeBinding,
2344
- getExcludedSessionIds
2345
- });
2346
- const timeInvestmentService = ctx.timeInvestmentService ?? createTimeInvestmentService({
2347
- adapter: ctx.sessionAdapter,
2348
- pathProvider: ctx.pathProvider,
2349
- runtimeIdentity: ctx.runtimeIdentity,
2350
- nativeBinding: ctx.nativeBinding,
2351
- getExcludedSessionIds
2352
- });
2353
- server2.addHook("onClose", async () => {
2354
- await Promise.all([service.close(), timeInvestmentService.close()]);
2355
- });
2356
- server2.get("/_web/global-insight/annual-summary", async (request) => {
2357
- return service.getAnnualSummary({
2358
- ...parseRange(request.query),
2359
- acceptStale: isTruthy2(request.query.acceptStale)
2360
- });
2361
- });
2362
- server2.post(
2363
- "/_web/global-insight/annual-summary/recompute",
2364
- async (request) => service.startRecompute(parseRange(request.query))
2365
- );
2366
- server2.get(
2367
- "/_web/global-insight/time-investment",
2368
- async (request) => timeInvestmentService.getTimeInvestment({
2369
- ...parseRange(request.query),
2370
- acceptStale: isTruthy2(request.query.acceptStale)
2371
- })
2372
- );
2373
- server2.post(
2374
- "/_web/global-insight/time-investment/recompute",
2375
- async (request) => timeInvestmentService.startRecompute(parseRange(request.query))
2376
- );
2377
- }
2378
- function parseRange(query) {
2379
- const mode = query.mode === "recent" ? "recent" : "year";
2380
- return {
2381
- mode,
2382
- year: parseInteger(query.year),
2383
- days: query.days === "365" ? 365 : void 0
2384
- };
2385
- }
2386
- function parseInteger(value) {
2387
- if (!value) return void 0;
2388
- const parsed = Number(value);
2389
- return Number.isInteger(parsed) ? parsed : void 0;
2390
- }
2391
- function isTruthy2(value) {
2392
- return value === "1" || value === "true" || value === "yes";
2393
- }
2394
-
2395
2343
  // ../../packages/http-routes/src/routes/web/logs.ts
2396
2344
  function registerLogRoutes(server2) {
2397
2345
  server2.post("/_web/logs/report", async (req, reply) => {
@@ -2484,6 +2432,27 @@ function isHttpClientError(error) {
2484
2432
  return error instanceof Error && "statusCode" in error && typeof error.statusCode === "number" && error.statusCode >= 400 && error.statusCode < 500;
2485
2433
  }
2486
2434
 
2435
+ // ../../packages/http-routes/src/routes/web/navigation-layout.ts
2436
+ function registerNavigationLayoutRoutes(server2, context) {
2437
+ const service = context.navigationLayoutService ?? createNavigationLayoutService(context.pathProvider.getSystemDir());
2438
+ server2.get("/_web/navigation-layout", async () => service.load());
2439
+ server2.put("/_web/navigation-layout", async (request, reply) => {
2440
+ try {
2441
+ const layout = service.save(request.body);
2442
+ return { status: "saved", layout };
2443
+ } catch (error) {
2444
+ if (error instanceof NavigationLayoutValidationError) {
2445
+ return reply.code(400).send({ error: "INVALID_NAVIGATION_LAYOUT" });
2446
+ }
2447
+ throw error;
2448
+ }
2449
+ });
2450
+ server2.delete("/_web/navigation-layout", async () => {
2451
+ service.reset();
2452
+ return { status: "missing", layout: null };
2453
+ });
2454
+ }
2455
+
2487
2456
  // ../../packages/http-routes/src/routes/web/merge.ts
2488
2457
  import * as fs4 from "fs";
2489
2458
  import * as path6 from "path";
@@ -2749,7 +2718,7 @@ function registerPeopleRelationshipsRoutes(server2, ctx) {
2749
2718
  });
2750
2719
  server2.get("/_web/people/relationships", async (request) => {
2751
2720
  return service.getGraph({
2752
- acceptStale: isTruthy3(request.query.acceptStale),
2721
+ acceptStale: isTruthy2(request.query.acceptStale),
2753
2722
  timeRangePreset: parseContactsTimeRangePreset2(request.query.timeRange),
2754
2723
  graphScope: parsePeopleRelationshipsGraphScope(request.query.scope),
2755
2724
  query: request.query.q
@@ -2766,14 +2735,14 @@ function registerPeopleRelationshipsRoutes(server2, ctx) {
2766
2735
  "/_web/people/relationships/:key/neighborhood",
2767
2736
  async (request) => {
2768
2737
  return service.getNeighborhood(request.params.key, {
2769
- acceptStale: isTruthy3(request.query.acceptStale),
2738
+ acceptStale: isTruthy2(request.query.acceptStale),
2770
2739
  timeRangePreset: parseContactsTimeRangePreset2(request.query.timeRange),
2771
2740
  graphScope: parsePeopleRelationshipsGraphScope(request.query.scope)
2772
2741
  });
2773
2742
  }
2774
2743
  );
2775
2744
  }
2776
- function isTruthy3(value) {
2745
+ function isTruthy2(value) {
2777
2746
  return value === "1" || value === "true" || value === "yes";
2778
2747
  }
2779
2748
  function parseContactsTimeRangePreset2(value) {
@@ -3006,7 +2975,8 @@ function registerWebRoutes(server2, ctx, options) {
3006
2975
  registerMemberRoutes(server2, resolvedCtx);
3007
2976
  registerContactsRoutes(server2, resolvedCtx);
3008
2977
  registerPeopleRelationshipsRoutes(server2, resolvedCtx);
3009
- registerGlobalInsightRoutes(server2, resolvedCtx);
2978
+ registerNavigationLayoutRoutes(server2, resolvedCtx);
2979
+ registerNodePlugins(server2, resolvedCtx, options?.nodePlugins ?? []);
3010
2980
  registerPreferencesRoutes(server2, resolvedCtx);
3011
2981
  registerAnalyticsRoutes(server2, resolvedCtx);
3012
2982
  registerSqlRoutes(server2, resolvedCtx);
@@ -3026,6 +2996,100 @@ function registerSharedRoutes(server2, ctx, options) {
3026
2996
  registerWebRoutes(server2, ctx, options);
3027
2997
  }
3028
2998
 
2999
+ // ../../packages/http-routes/src/plugins/builtin/annual-summary/index.ts
3000
+ var annualSummaryNodePlugin = {
3001
+ id: ANNUAL_SUMMARY_PLUGIN_ID,
3002
+ registerHttpRoutes(server2, context) {
3003
+ let preferences = context.preferencesManager;
3004
+ const getExcludedSessionIds = () => {
3005
+ preferences ??= new PreferencesManager(context.pathProvider.getSystemDir());
3006
+ return preferences.load().ownerExcludedSessionIds;
3007
+ };
3008
+ const service = context.globalInsightService ?? createGlobalInsightService({
3009
+ adapter: context.sessionAdapter,
3010
+ pathProvider: context.pathProvider,
3011
+ runtimeIdentity: context.runtimeIdentity,
3012
+ nativeBinding: context.nativeBinding,
3013
+ getExcludedSessionIds
3014
+ });
3015
+ server2.addHook("onClose", () => service.close());
3016
+ server2.get(
3017
+ "/_web/global-insight/annual-summary",
3018
+ async (request) => service.getAnnualSummary({
3019
+ ...parseRange(request.query),
3020
+ acceptStale: isTruthy3(request.query.acceptStale)
3021
+ })
3022
+ );
3023
+ server2.post(
3024
+ "/_web/global-insight/annual-summary/recompute",
3025
+ async (request) => service.startRecompute(parseRange(request.query))
3026
+ );
3027
+ }
3028
+ };
3029
+ function parseRange(query) {
3030
+ const mode = query.mode === "recent" ? "recent" : "year";
3031
+ return {
3032
+ mode,
3033
+ year: parseInteger(query.year),
3034
+ days: query.days === "365" ? 365 : void 0
3035
+ };
3036
+ }
3037
+ function parseInteger(value) {
3038
+ if (!value) return void 0;
3039
+ const parsed = Number(value);
3040
+ return Number.isInteger(parsed) ? parsed : void 0;
3041
+ }
3042
+ function isTruthy3(value) {
3043
+ return value === "1" || value === "true" || value === "yes";
3044
+ }
3045
+
3046
+ // ../../packages/http-routes/src/plugins/builtin/time-investment/index.ts
3047
+ var timeInvestmentNodePlugin = {
3048
+ id: TIME_INVESTMENT_PLUGIN_ID,
3049
+ registerHttpRoutes(server2, context) {
3050
+ let preferences = context.preferencesManager;
3051
+ const getExcludedSessionIds = () => {
3052
+ preferences ??= new PreferencesManager(context.pathProvider.getSystemDir());
3053
+ return preferences.load().ownerExcludedSessionIds;
3054
+ };
3055
+ const service = context.timeInvestmentService ?? createTimeInvestmentService({
3056
+ adapter: context.sessionAdapter,
3057
+ pathProvider: context.pathProvider,
3058
+ runtimeIdentity: context.runtimeIdentity,
3059
+ nativeBinding: context.nativeBinding,
3060
+ getExcludedSessionIds
3061
+ });
3062
+ server2.addHook("onClose", () => service.close());
3063
+ server2.get(
3064
+ "/_web/global-insight/time-investment",
3065
+ async (request) => service.getTimeInvestment({
3066
+ ...parseRange2(request.query),
3067
+ acceptStale: isTruthy4(request.query.acceptStale)
3068
+ })
3069
+ );
3070
+ server2.post(
3071
+ "/_web/global-insight/time-investment/recompute",
3072
+ async (request) => service.startRecompute(parseRange2(request.query))
3073
+ );
3074
+ }
3075
+ };
3076
+ function parseRange2(query) {
3077
+ const mode = query.mode === "recent" ? "recent" : "year";
3078
+ return {
3079
+ mode,
3080
+ year: parseInteger2(query.year),
3081
+ days: query.days === "365" ? 365 : void 0
3082
+ };
3083
+ }
3084
+ function parseInteger2(value) {
3085
+ if (!value) return void 0;
3086
+ const parsed = Number(value);
3087
+ return Number.isInteger(parsed) ? parsed : void 0;
3088
+ }
3089
+ function isTruthy4(value) {
3090
+ return value === "1" || value === "true" || value === "yes";
3091
+ }
3092
+
3029
3093
  // ../../packages/http-routes/src/routes/web/automation.ts
3030
3094
  function requireAutomation(ctx) {
3031
3095
  return ctx.automation ?? null;
@@ -3699,10 +3763,10 @@ function registerWebRoutes2(server2, dbManager2, options) {
3699
3763
  const resolvedPathProvider = options?.pathProvider ?? fallbackPathProvider;
3700
3764
  const ai = options?.aiContext;
3701
3765
  const cliStreamImport = async (dm, filePath) => {
3702
- const { streamImport: streamImport2 } = await import("./stream-import-7YUWIAD6.mjs");
3766
+ const { streamImport: streamImport2 } = await import("./stream-import-RXNSOOYH.mjs");
3703
3767
  const result = await streamImport2(dm, filePath);
3704
3768
  if (!result.success) {
3705
- const { IMPORT_IN_PROGRESS_ERROR_KEY: IMPORT_IN_PROGRESS_ERROR_KEY2, ImportInProgressError: ImportInProgressError2 } = await import("./src-LORFXAUE.mjs");
3769
+ const { IMPORT_IN_PROGRESS_ERROR_KEY: IMPORT_IN_PROGRESS_ERROR_KEY2, ImportInProgressError: ImportInProgressError2 } = await import("./src-AYMALWU5.mjs");
3706
3770
  if (result.error === IMPORT_IN_PROGRESS_ERROR_KEY2) throw new ImportInProgressError2();
3707
3771
  throw new Error(result.error || "Import failed");
3708
3772
  }
@@ -3768,7 +3832,10 @@ function registerWebRoutes2(server2, dbManager2, options) {
3768
3832
  runAgentStream: ai.runAgentStream
3769
3833
  }
3770
3834
  },
3771
- ai ? { requireAi: true } : void 0
3835
+ {
3836
+ nodePlugins: [annualSummaryNodePlugin, timeInvestmentNodePlugin],
3837
+ ...ai && { requireAi: true }
3838
+ }
3772
3839
  );
3773
3840
  registerImportRoutes2(server2, dbManager2);
3774
3841
  server2.get("/_web/system/check-update", async () => {
@@ -4878,4 +4945,4 @@ export {
4878
4945
  startHttpServer,
4879
4946
  stopHttpServer
4880
4947
  };
4881
- //# sourceMappingURL=chunk-BSGLH6G3.mjs.map
4948
+ //# sourceMappingURL=chunk-WJQOXOMR.mjs.map