neotoma 0.19.0 → 0.21.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 (314) hide show
  1. package/dist/actions.d.ts +58 -0
  2. package/dist/actions.d.ts.map +1 -1
  3. package/dist/actions.js +222 -70
  4. package/dist/actions.js.map +1 -1
  5. package/dist/cli/commands/db_migrate_env_split.d.ts.map +1 -1
  6. package/dist/cli/commands/db_migrate_env_split.js +5 -10
  7. package/dist/cli/commands/db_migrate_env_split.js.map +1 -1
  8. package/dist/cli/index.d.ts +14 -0
  9. package/dist/cli/index.d.ts.map +1 -1
  10. package/dist/cli/index.js +350 -129
  11. package/dist/cli/index.js.map +1 -1
  12. package/dist/cli/instance_scripts.d.ts +104 -0
  13. package/dist/cli/instance_scripts.d.ts.map +1 -0
  14. package/dist/cli/instance_scripts.js +189 -0
  15. package/dist/cli/instance_scripts.js.map +1 -0
  16. package/dist/cli/instance_skills.d.ts +85 -0
  17. package/dist/cli/instance_skills.d.ts.map +1 -0
  18. package/dist/cli/instance_skills.js +199 -0
  19. package/dist/cli/instance_skills.js.map +1 -0
  20. package/dist/cli/instance_skills_client.d.ts +75 -0
  21. package/dist/cli/instance_skills_client.d.ts.map +1 -0
  22. package/dist/cli/instance_skills_client.js +141 -0
  23. package/dist/cli/instance_skills_client.js.map +1 -0
  24. package/dist/cli/instance_skills_sync.d.ts +72 -0
  25. package/dist/cli/instance_skills_sync.d.ts.map +1 -0
  26. package/dist/cli/instance_skills_sync.js +147 -0
  27. package/dist/cli/instance_skills_sync.js.map +1 -0
  28. package/dist/cli/skills_mirror.d.ts +26 -0
  29. package/dist/cli/skills_mirror.d.ts.map +1 -1
  30. package/dist/cli/skills_mirror.js +10 -2
  31. package/dist/cli/skills_mirror.js.map +1 -1
  32. package/dist/config.d.ts +5 -0
  33. package/dist/config.d.ts.map +1 -1
  34. package/dist/config.js +23 -0
  35. package/dist/config.js.map +1 -1
  36. package/dist/docs/developer/cli_agent_instructions.md +39 -0
  37. package/dist/docs/developer/cli_reference.md +42 -0
  38. package/dist/docs/developer/mcp/instructions.md +4 -2
  39. package/dist/docs/developer/schema_initialization.md +64 -9
  40. package/dist/docs/infrastructure/deployment.md +13 -5
  41. package/dist/docs/infrastructure/multi_tenant_deployment_topology.md +10 -3
  42. package/dist/docs/operations/configuration.md +13 -0
  43. package/dist/docs/skills/skill_strategy.md +129 -40
  44. package/dist/docs/subsystems/errors.md +3 -0
  45. package/dist/docs/testing/automated_test_catalog.md +42 -16
  46. package/dist/inspector/assets/{access_policies-6-6DPI39.js → access_policies-B0S0qvu_.js} +1 -1
  47. package/dist/inspector/assets/{agent_badge-CXSO0sXJ.js → agent_badge-BkdvFESY.js} +1 -1
  48. package/dist/inspector/assets/{agent_detail-Cr7iqdye.js → agent_detail-DP0gQW2Q.js} +1 -1
  49. package/dist/inspector/assets/{agent_filter-DQvQyxMp.js → agent_filter-COKVxYFV.js} +1 -1
  50. package/dist/inspector/assets/{agent_grant_detail-DRRM7KWw.js → agent_grant_detail-Dx9XnxQF.js} +1 -1
  51. package/dist/inspector/assets/{agent_grant_form-DNfWiVBQ.js → agent_grant_form-c_cKOS1t.js} +1 -1
  52. package/dist/inspector/assets/{agent_grants-BWgOPiOe.js → agent_grants-2kUpLoVa.js} +1 -1
  53. package/dist/inspector/assets/{agents-CPLAQelS.js → agents-CGacc5go.js} +1 -1
  54. package/dist/inspector/assets/{api_not_configured_state-DHesochj.js → api_not_configured_state-D3-Y7f4P.js} +1 -1
  55. package/dist/inspector/assets/{attribution_card-CCINKjRY.js → attribution_card-DHSwBDvm.js} +1 -1
  56. package/dist/inspector/assets/{attribution_summary-Dkwz1aNS.js → attribution_summary-BDb76qdA.js} +1 -1
  57. package/dist/inspector/assets/{bundles-f-bRlQYm.js → bundles-BrZCSKdE.js} +1 -1
  58. package/dist/inspector/assets/{card-18-eZw0x.js → card-HLZ7P9gv.js} +1 -1
  59. package/dist/inspector/assets/{checkbox-DUu6AMCH.js → checkbox-X0LhUk54.js} +1 -1
  60. package/dist/inspector/assets/{compliance-C1iqMRYK.js → compliance-B-vHY0Mj.js} +1 -1
  61. package/dist/inspector/assets/{confirm-dialog-KIPuwTQR.js → confirm-dialog-BZhGXjGp.js} +1 -1
  62. package/dist/inspector/assets/{conversation_common-aPvd5zmX.js → conversation_common-CqwsnXcN.js} +1 -1
  63. package/dist/inspector/assets/{conversation_detail-nJDDMCfc.js → conversation_detail-BmH4sCju.js} +1 -1
  64. package/dist/inspector/assets/{copy_id_button-BwaRGKNA.js → copy_id_button-CDok7EQV.js} +1 -1
  65. package/dist/inspector/assets/{copyable_code_block-DDi03yAz.js → copyable_code_block-j3QB0aQg.js} +1 -1
  66. package/dist/inspector/assets/{corrections-Dz2v9ju9.js → corrections-BnjNBaly.js} +1 -1
  67. package/dist/inspector/assets/{dashboard-CZOdnoJJ.js → dashboard-BulD_nUh.js} +1 -1
  68. package/dist/inspector/assets/{data-table-5i_gqEfj.js → data-table-B-mxpOia.js} +1 -1
  69. package/dist/inspector/assets/{design-BdKBUVmX.js → design-DnQ02ply.js} +2 -2
  70. package/dist/inspector/assets/{dialog-CNJoZoQS.js → dialog-CsNugp51.js} +1 -1
  71. package/dist/inspector/assets/{docs-sXzc0LTz.js → docs-BSpGmuZ2.js} +1 -1
  72. package/dist/inspector/assets/{docs_page_layout-CGg8ubQX.js → docs_page_layout-Ej9dnRro.js} +1 -1
  73. package/dist/inspector/assets/{embed_graph-BpLLD_vX.js → embed_graph-Dbg37Xuy.js} +1 -1
  74. package/dist/inspector/assets/{empty_state-DNk61WLW.js → empty_state-Y44G8LC3.js} +1 -1
  75. package/dist/inspector/assets/entities-DkBCXibK.js +5 -0
  76. package/dist/inspector/assets/{entity_correct-CfSggXgT.js → entity_correct-CSa6U1Nk.js} +2 -2
  77. package/dist/inspector/assets/{entity_history-CGila0eu.js → entity_history-CxmrR_9X.js} +1 -1
  78. package/dist/inspector/assets/{entity_history_sections-CXYX1gph.js → entity_history_sections-DEWV31Ot.js} +1 -1
  79. package/dist/inspector/assets/{entity_link-DUdsaj-A.js → entity_link-oDivxz85.js} +1 -1
  80. package/dist/inspector/assets/entity_relationships_by_type-DY0Ld1rw.js +1 -0
  81. package/dist/inspector/assets/{entity_segment_page-DRYjT1AU.js → entity_segment_page-WT6IOAC6.js} +1 -1
  82. package/dist/inspector/assets/{entity_table_column_toggle-DwwHY7Y8.js → entity_table_column_toggle-CBgWmzQl.js} +1 -1
  83. package/dist/inspector/assets/{entity_timeline-B4XYY56n.js → entity_timeline-Dq38UOgV.js} +1 -1
  84. package/dist/inspector/assets/{entity_types-ByB2PWZM.js → entity_types-CN-WOauu.js} +1 -1
  85. package/dist/inspector/assets/{faq-B-PEHwkf.js → faq-SK87sez6.js} +1 -1
  86. package/dist/inspector/assets/{graph_auto_fit-ClZnIOoR.js → graph_auto_fit-BMOrV_D2.js} +1 -1
  87. package/dist/inspector/assets/{graph_explorer-C-Xo8VWP.js → graph_explorer-DEu_WyZ2.js} +1 -1
  88. package/dist/inspector/assets/{home-D1UVMr6_.js → home-kfu3wSXt.js} +1 -1
  89. package/dist/inspector/assets/{index-MnCv_KTr.js → index-CnTUFeBn.js} +1 -1
  90. package/dist/inspector/assets/{index-C6fxoS_Z.js → index-D6jp2NN2.js} +1588 -1588
  91. package/dist/inspector/assets/{index-Cp0BQ57U.js → index-afk3dCXk.js} +1 -1
  92. package/dist/inspector/assets/interpretations-8w33Il_Q.js +1 -0
  93. package/dist/inspector/assets/{interpretations-DG5kUN-V.js → interpretations-DbtcIPBS.js} +1 -1
  94. package/dist/inspector/assets/{issue_author_attribution-D7_vwrHJ.js → issue_author_attribution-C_Uvk4F5.js} +1 -1
  95. package/dist/inspector/assets/{issue_detail-DKYUwKt_.js → issue_detail-Ct1G2hyw.js} +1 -1
  96. package/dist/inspector/assets/{issues-DcSMjt-p.js → issues-CUiar649.js} +1 -1
  97. package/dist/inspector/assets/{json_viewer-BKa7wwrs.js → json_viewer-DPC1DsaT.js} +1 -1
  98. package/dist/inspector/assets/{label-BO-aVMjO.js → label-BQ8-xKUC.js} +1 -1
  99. package/dist/inspector/assets/{live_relative_time-Dx00M9I6.js → live_relative_time-D1kEqQ4i.js} +1 -1
  100. package/dist/inspector/assets/{mobile_filter_popover-I9fJvTGr.js → mobile_filter_popover-Bvj6GSAo.js} +1 -1
  101. package/dist/inspector/assets/{not_found-DuCJouBh.js → not_found-0bIlvlSX.js} +1 -1
  102. package/dist/inspector/assets/{oauth_callback-w0kyGAb4.js → oauth_callback-BWXd9Wge.js} +1 -1
  103. package/dist/inspector/assets/{oauth_signin-3LQrxsKz.js → oauth_signin-CZO_QVYB.js} +1 -1
  104. package/dist/inspector/assets/{observations-Bq6mvl5m.js → observations-CikFMfEg.js} +1 -1
  105. package/dist/inspector/assets/{page_shell-BoTb5of6.js → page_shell-BosAA9Zi.js} +1 -1
  106. package/dist/inspector/assets/{pagination-BJtT1Wgy.js → pagination-9hSWjJSM.js} +1 -1
  107. package/dist/inspector/assets/{peer_detail-BM1jhSS2.js → peer_detail-BkQDnYWW.js} +1 -1
  108. package/dist/inspector/assets/{peers-CYSx-jAx.js → peers-BCBT6Ylr.js} +1 -1
  109. package/dist/inspector/assets/{pin_primitive_button-BdAR3e5K.js → pin_primitive_button-DDwdBrpd.js} +1 -1
  110. package/dist/inspector/assets/{recent_activity-Dio9UBCA.js → recent_activity-D8ZzUMMQ.js} +1 -1
  111. package/dist/inspector/assets/{recent_conversations-Be7S63h9.js → recent_conversations-DCgvsODD.js} +1 -1
  112. package/dist/inspector/assets/recent_conversations-Drio7WK-.js +1 -0
  113. package/dist/inspector/assets/{recent_records_feed-ZxHjVjQ6.js → recent_records_feed-BtPgzGjQ.js} +1 -1
  114. package/dist/inspector/assets/record_activity-OPIQqbxs.js +1 -0
  115. package/dist/inspector/assets/{relationship_detail-i9rsGxA6.js → relationship_detail-Bib84abm.js} +1 -1
  116. package/dist/inspector/assets/{relationship_panel_groups-CXFlrRHU.js → relationship_panel_groups-DLZtyWmB.js} +1 -1
  117. package/dist/inspector/assets/relationships-C6AMAVnt.js +1 -0
  118. package/dist/inspector/assets/{relationships-DqAzfnlB.js → relationships-CbmaLg1w.js} +1 -1
  119. package/dist/inspector/assets/{sandbox-Cn4vq2Pz.js → sandbox-CDn_AfpW.js} +1 -1
  120. package/dist/inspector/assets/{schema_detail-BdORXewP.js → schema_detail-rdHCdMiO.js} +1 -1
  121. package/dist/inspector/assets/{schemas-HYsBtoHT.js → schemas-BGFS1NIU.js} +2 -2
  122. package/dist/inspector/assets/search-D0mISNIp.js +1 -0
  123. package/dist/inspector/assets/{segmented_control-CHJO5zMt.js → segmented_control-Dh4asumQ.js} +1 -1
  124. package/dist/inspector/assets/{select-DFzP9laV.js → select-CGgVNBJP.js} +1 -1
  125. package/dist/inspector/assets/{settings-Bm0jNa4p.js → settings-WrB7DH64.js} +1 -1
  126. package/dist/inspector/assets/{source_content-PwVSPaIU.js → source_content-CdneU5cC.js} +1 -1
  127. package/dist/inspector/assets/{source_content_open_button-C7NKRG7q.js → source_content_open_button-DdwQmqei.js} +1 -1
  128. package/dist/inspector/assets/{source_detail-C2D885Zy.js → source_detail-BGV8BTSk.js} +5 -5
  129. package/dist/inspector/assets/source_link-3OE0LIxN.js +1 -0
  130. package/dist/inspector/assets/{sources-BvGo5OZp.js → sources-MQzjTQPU.js} +1 -1
  131. package/dist/inspector/assets/{subscriptions-BGYmtTLV.js → subscriptions-DSSlZgxQ.js} +1 -1
  132. package/dist/inspector/assets/{switch-DkusEYsE.js → switch-CE4bL5sC.js} +1 -1
  133. package/dist/inspector/assets/{tabs-hkbPHxT0.js → tabs-ZrN5u0Y9.js} +1 -1
  134. package/dist/inspector/assets/{textarea-BhC7xtLk.js → textarea-CBYe0AAK.js} +1 -1
  135. package/dist/inspector/assets/{timeline-DmjoODDd.js → timeline-Ad0NUrF_.js} +1 -1
  136. package/dist/inspector/assets/{timeline-CHi-lYcV.js → timeline-uLYAndU3.js} +1 -1
  137. package/dist/inspector/assets/{timeline_event_detail-BfKrsQih.js → timeline_event_detail-BfgHJ0XR.js} +1 -1
  138. package/dist/inspector/assets/{turn_detail-DGj1lT0k.js → turn_detail-CUBCiCcq.js} +1 -1
  139. package/dist/inspector/assets/{turns-CHfOIg9X.js → turns-B1PAnWxV.js} +1 -1
  140. package/dist/inspector/assets/use_agents-Kr_qThpq.js +1 -0
  141. package/dist/inspector/assets/{use_entities-DeIlqnzx.js → use_entities-zE9adlzL.js} +1 -1
  142. package/dist/inspector/assets/use_interpretations-CD0-ZgOr.js +1 -0
  143. package/dist/inspector/assets/{use_mutations-CQ3_5Ppg.js → use_mutations-D4WoExI4.js} +1 -1
  144. package/dist/inspector/assets/use_peers-k2UDs1Pi.js +1 -0
  145. package/dist/inspector/assets/{use_relationships-Dbtmx8X8.js → use_relationships-DVVjD-SH.js} +1 -1
  146. package/dist/inspector/assets/{use_stats-OyHBzetJ.js → use_stats-Cmjbd4x1.js} +1 -1
  147. package/dist/inspector/assets/{use_timeline-FINsibXm.js → use_timeline-De1q_UCR.js} +1 -1
  148. package/dist/inspector/assets/{use_turns-D4AhGAvM.js → use_turns-B4g1lTlJ.js} +1 -1
  149. package/dist/inspector/assets/{world_time_event_timeline-F0elR7Vc.js → world_time_event_timeline-CLue1xiu.js} +1 -1
  150. package/dist/inspector/index.html +1 -1
  151. package/dist/openclaw_entry.js +2 -2
  152. package/dist/openclaw_entry.js.map +1 -1
  153. package/dist/repositories/db/connection.d.ts +47 -0
  154. package/dist/repositories/db/connection.d.ts.map +1 -0
  155. package/dist/repositories/db/connection.js +153 -0
  156. package/dist/repositories/db/connection.js.map +1 -0
  157. package/dist/repositories/db/driver.d.ts +85 -0
  158. package/dist/repositories/db/driver.d.ts.map +1 -0
  159. package/dist/repositories/db/driver.js +89 -0
  160. package/dist/repositories/db/driver.js.map +1 -0
  161. package/dist/repositories/libsql/libsql_driver.d.ts +62 -0
  162. package/dist/repositories/libsql/libsql_driver.d.ts.map +1 -0
  163. package/dist/repositories/libsql/libsql_driver.js +170 -0
  164. package/dist/repositories/libsql/libsql_driver.js.map +1 -0
  165. package/dist/repositories/sqlite/local_db_adapter.d.ts +23 -0
  166. package/dist/repositories/sqlite/local_db_adapter.d.ts.map +1 -1
  167. package/dist/repositories/sqlite/local_db_adapter.js +192 -46
  168. package/dist/repositories/sqlite/local_db_adapter.js.map +1 -1
  169. package/dist/repositories/sqlite/sqlite_client.d.ts +6 -11
  170. package/dist/repositories/sqlite/sqlite_client.d.ts.map +1 -1
  171. package/dist/repositories/sqlite/sqlite_client.js +116 -129
  172. package/dist/repositories/sqlite/sqlite_client.js.map +1 -1
  173. package/dist/repositories/sqlite/sqlite_driver.d.ts +20 -0
  174. package/dist/repositories/sqlite/sqlite_driver.d.ts.map +1 -1
  175. package/dist/repositories/sqlite/sqlite_driver.js +129 -6
  176. package/dist/repositories/sqlite/sqlite_driver.js.map +1 -1
  177. package/dist/repositories/worker/worker_file_database.d.ts +81 -0
  178. package/dist/repositories/worker/worker_file_database.d.ts.map +1 -0
  179. package/dist/repositories/worker/worker_file_database.js +403 -0
  180. package/dist/repositories/worker/worker_file_database.js.map +1 -0
  181. package/dist/seed_schemas_entry.d.ts +14 -6
  182. package/dist/seed_schemas_entry.d.ts.map +1 -1
  183. package/dist/seed_schemas_entry.js +41 -32
  184. package/dist/seed_schemas_entry.js.map +1 -1
  185. package/dist/server.d.ts.map +1 -1
  186. package/dist/server.js +64 -6
  187. package/dist/server.js.map +1 -1
  188. package/dist/services/agents_directory.d.ts +4 -4
  189. package/dist/services/agents_directory.d.ts.map +1 -1
  190. package/dist/services/agents_directory.js +8 -8
  191. package/dist/services/agents_directory.js.map +1 -1
  192. package/dist/services/compliance/scorecard.d.ts +1 -1
  193. package/dist/services/compliance/scorecard.d.ts.map +1 -1
  194. package/dist/services/compliance/scorecard.js +4 -4
  195. package/dist/services/compliance/scorecard.js.map +1 -1
  196. package/dist/services/conversation_turn.d.ts +4 -4
  197. package/dist/services/conversation_turn.d.ts.map +1 -1
  198. package/dist/services/conversation_turn.js +21 -21
  199. package/dist/services/conversation_turn.js.map +1 -1
  200. package/dist/services/entity_cursor.d.ts +57 -0
  201. package/dist/services/entity_cursor.d.ts.map +1 -0
  202. package/dist/services/entity_cursor.js +104 -0
  203. package/dist/services/entity_cursor.js.map +1 -0
  204. package/dist/services/entity_merge.d.ts +5 -3
  205. package/dist/services/entity_merge.d.ts.map +1 -1
  206. package/dist/services/entity_merge.js +21 -19
  207. package/dist/services/entity_merge.js.map +1 -1
  208. package/dist/services/entity_queries.d.ts +48 -1
  209. package/dist/services/entity_queries.d.ts.map +1 -1
  210. package/dist/services/entity_queries.js +91 -2
  211. package/dist/services/entity_queries.js.map +1 -1
  212. package/dist/services/entity_query_limits.d.ts +20 -0
  213. package/dist/services/entity_query_limits.d.ts.map +1 -0
  214. package/dist/services/entity_query_limits.js +25 -0
  215. package/dist/services/entity_query_limits.js.map +1 -0
  216. package/dist/services/entity_semantic_search.js +1 -1
  217. package/dist/services/entity_semantic_search.js.map +1 -1
  218. package/dist/services/entity_snapshot_embedding.js +1 -1
  219. package/dist/services/entity_snapshot_embedding.js.map +1 -1
  220. package/dist/services/interpretation.d.ts.map +1 -1
  221. package/dist/services/interpretation.js +17 -0
  222. package/dist/services/interpretation.js.map +1 -1
  223. package/dist/services/issues/issue_operations.d.ts +4 -0
  224. package/dist/services/issues/issue_operations.d.ts.map +1 -1
  225. package/dist/services/issues/issue_operations.js +18 -0
  226. package/dist/services/issues/issue_operations.js.map +1 -1
  227. package/dist/services/issues/neotoma_client.d.ts.map +1 -1
  228. package/dist/services/issues/neotoma_client.js +10 -5
  229. package/dist/services/issues/neotoma_client.js.map +1 -1
  230. package/dist/services/local_auth.d.ts +9 -9
  231. package/dist/services/local_auth.d.ts.map +1 -1
  232. package/dist/services/local_auth.js +48 -36
  233. package/dist/services/local_auth.js.map +1 -1
  234. package/dist/services/local_entity_embedding.d.ts +4 -4
  235. package/dist/services/local_entity_embedding.d.ts.map +1 -1
  236. package/dist/services/local_entity_embedding.js +38 -21
  237. package/dist/services/local_entity_embedding.js.map +1 -1
  238. package/dist/services/mcp_auth.js +5 -5
  239. package/dist/services/mcp_auth.js.map +1 -1
  240. package/dist/services/mcp_oauth.d.ts.map +1 -1
  241. package/dist/services/mcp_oauth.js +70 -58
  242. package/dist/services/mcp_oauth.js.map +1 -1
  243. package/dist/services/oauth_key_gate.d.ts +15 -1
  244. package/dist/services/oauth_key_gate.d.ts.map +1 -1
  245. package/dist/services/oauth_key_gate.js +42 -3
  246. package/dist/services/oauth_key_gate.js.map +1 -1
  247. package/dist/services/raw_storage.d.ts +9 -0
  248. package/dist/services/raw_storage.d.ts.map +1 -1
  249. package/dist/services/raw_storage.js +32 -19
  250. package/dist/services/raw_storage.js.map +1 -1
  251. package/dist/services/recent_conversations.d.ts +3 -3
  252. package/dist/services/recent_conversations.d.ts.map +1 -1
  253. package/dist/services/recent_conversations.js +17 -17
  254. package/dist/services/recent_conversations.js.map +1 -1
  255. package/dist/services/recent_record_activity.d.ts +2 -2
  256. package/dist/services/recent_record_activity.d.ts.map +1 -1
  257. package/dist/services/recent_record_activity.js +5 -5
  258. package/dist/services/recent_record_activity.js.map +1 -1
  259. package/dist/services/sandbox/sessions.d.ts +7 -7
  260. package/dist/services/sandbox/sessions.d.ts.map +1 -1
  261. package/dist/services/sandbox/sessions.js +50 -41
  262. package/dist/services/sandbox/sessions.js.map +1 -1
  263. package/dist/services/schema_registry.d.ts +12 -0
  264. package/dist/services/schema_registry.d.ts.map +1 -1
  265. package/dist/services/schema_registry.js +19 -0
  266. package/dist/services/schema_registry.js.map +1 -1
  267. package/dist/services/schema_registry_bootstrap.d.ts +71 -0
  268. package/dist/services/schema_registry_bootstrap.d.ts.map +1 -0
  269. package/dist/services/schema_registry_bootstrap.js +108 -0
  270. package/dist/services/schema_registry_bootstrap.js.map +1 -0
  271. package/dist/services/snapshot_computation.d.ts +18 -0
  272. package/dist/services/snapshot_computation.d.ts.map +1 -1
  273. package/dist/services/snapshot_computation.js +27 -3
  274. package/dist/services/snapshot_computation.js.map +1 -1
  275. package/dist/services/subscriptions/event_log.d.ts +10 -9
  276. package/dist/services/subscriptions/event_log.d.ts.map +1 -1
  277. package/dist/services/subscriptions/event_log.js +21 -20
  278. package/dist/services/subscriptions/event_log.js.map +1 -1
  279. package/dist/services/subscriptions/install_subscription_bridge.d.ts.map +1 -1
  280. package/dist/services/subscriptions/install_subscription_bridge.js +5 -5
  281. package/dist/services/subscriptions/install_subscription_bridge.js.map +1 -1
  282. package/dist/services/subscriptions/subscription_bridge.js +1 -1
  283. package/dist/services/subscriptions/subscription_bridge.js.map +1 -1
  284. package/dist/shared/action_handlers/entity_handlers.d.ts +10 -1
  285. package/dist/shared/action_handlers/entity_handlers.d.ts.map +1 -1
  286. package/dist/shared/action_handlers/entity_handlers.js +9 -2
  287. package/dist/shared/action_handlers/entity_handlers.js.map +1 -1
  288. package/dist/shared/action_schemas.d.ts +115 -46
  289. package/dist/shared/action_schemas.d.ts.map +1 -1
  290. package/dist/shared/action_schemas.js +155 -2
  291. package/dist/shared/action_schemas.js.map +1 -1
  292. package/dist/shared/entity_display_name.d.ts +11 -1
  293. package/dist/shared/entity_display_name.d.ts.map +1 -1
  294. package/dist/shared/entity_display_name.js +24 -5
  295. package/dist/shared/entity_display_name.js.map +1 -1
  296. package/dist/shared/openapi_types.d.ts +132 -6
  297. package/dist/shared/openapi_types.d.ts.map +1 -1
  298. package/dist/tool_definitions.d.ts.map +1 -1
  299. package/dist/tool_definitions.js +36 -6
  300. package/dist/tool_definitions.js.map +1 -1
  301. package/docs/developer/mcp/instructions.md +4 -2
  302. package/openapi.yaml +179 -5
  303. package/package.json +4 -1
  304. package/dist/inspector/assets/entities-Cexhp3qr.js +0 -5
  305. package/dist/inspector/assets/entity_relationships_by_type-B_PH1APK.js +0 -1
  306. package/dist/inspector/assets/interpretations-BCs9qtw0.js +0 -1
  307. package/dist/inspector/assets/recent_conversations-iJTSJf5e.js +0 -1
  308. package/dist/inspector/assets/record_activity-BmMC7Q7l.js +0 -1
  309. package/dist/inspector/assets/relationships-DvWtOU7W.js +0 -1
  310. package/dist/inspector/assets/search-LzJnqvTB.js +0 -1
  311. package/dist/inspector/assets/source_link-6lMlhQnK.js +0 -1
  312. package/dist/inspector/assets/use_agents-6sUtEOpZ.js +0 -1
  313. package/dist/inspector/assets/use_interpretations-DvfzvGu3.js +0 -1
  314. package/dist/inspector/assets/use_peers-CW3OAs41.js +0 -1
package/dist/actions.d.ts CHANGED
@@ -2,6 +2,7 @@ import express from "express";
2
2
  import { type GuestIdentity } from "./services/access_policy.js";
3
3
  import { type AgentIdentity } from "./crypto/agent_identity.js";
4
4
  import { type NeotomaSandboxModeName } from "./services/sandbox_mode.js";
5
+ import { OAuthKeySessionStore } from "./services/oauth_key_gate.js";
5
6
  import { type StoreInterpretationInput } from "./shared/action_schemas.js";
6
7
  /** Exposed for the /me route and any other surface that needs the boot-time mode verdict. */
7
8
  export declare function getResolvedServerMode(): NeotomaSandboxModeName | null;
@@ -76,6 +77,51 @@ export declare function isTrustedProxyIP(ip: string, env?: NodeJS.ProcessEnv): b
76
77
  * entirely and remains valid for single-host deployments without a tunnel.
77
78
  */
78
79
  export declare function isLocalRequest(req: express.Request): boolean;
80
+ /** Exported for tests asserting the cookie maxAge and the server-side session
81
+ * expiry agree — the invariant setOAuthKeySessionCookie's docstring names. */
82
+ export declare const oauthKeySessions: OAuthKeySessionStore;
83
+ /**
84
+ * Lifetime of a SIGN-IN session (Google). Distinct from the key-entry gate's
85
+ * short default: a user who signs in expects to stay signed in, whereas the
86
+ * key-entry gate deliberately closes fast. Reusing the 15-minute gate TTL for
87
+ * sign-in is what logged hosted-instance users out every quarter hour (#2005).
88
+ *
89
+ * Override with NEOTOMA_SIGN_IN_SESSION_TTL_MIN (minutes). Default 7 days.
90
+ */
91
+ export declare const DEFAULT_SIGN_IN_SESSION_TTL_MIN: number;
92
+ /** Upper bound for the sign-in TTL override: 365 days in minutes. A value past
93
+ * this is a typo (an extra zero), not an intent — without a ceiling,
94
+ * "9999999999999" yields a ~19-million-year session. Mirrors the low-end
95
+ * guard rather than guarding only one side (#2007 qa lens). */
96
+ export declare const MAX_SIGN_IN_SESSION_TTL_MIN: number;
97
+ /**
98
+ * Parse NEOTOMA_SIGN_IN_SESSION_TTL_MIN into milliseconds. Exported (and pure)
99
+ * so the override's precedence and malformed-input behavior are directly
100
+ * testable — a silently-wrong TTL here reintroduces exactly the desync class
101
+ * this change fixes.
102
+ *
103
+ * Precedence: an integer within (0, MAX_SIGN_IN_SESSION_TTL_MIN] wins.
104
+ * Everything else — unset, non-numeric, zero, negative, or above the ceiling —
105
+ * falls back to the 7-day default rather than producing a degenerate session.
106
+ *
107
+ * Note on parseInt semantics, deliberately kept: "7.5" truncates to 7 minutes
108
+ * and "1e10" parses as 1 minute (parseInt stops at the 'e'). Both are accepted
109
+ * as-is because they are in-range integers after parsing; the fallback exists
110
+ * for values that are absent, unparseable, or out of range, not to second-guess
111
+ * a caller who wrote a decimal. Asserted in tests so the behavior is documented
112
+ * rather than incidental.
113
+ */
114
+ export declare function resolveSignInSessionTtlMs(raw: string | undefined): number;
115
+ /**
116
+ * Issue an OAuth key-session cookie. `ttlMs` covers BOTH the server-side
117
+ * session and the cookie's own maxAge — they must agree, or the browser keeps
118
+ * presenting a cookie the server has already forgotten (or vice versa).
119
+ * Omit it for the short key-entry gate; pass SIGN_IN_SESSION_TTL_MS for
120
+ * sign-in (#2005).
121
+ */
122
+ export declare function setOAuthKeySessionCookie(req: express.Request, res: express.Response, ttlMs?: number): string;
123
+ /** Resolve the local-auth user_id a Google-verified session (if any) mapped to this request. */
124
+ export declare function getGoogleVerifiedUserId(req: express.Request): string | undefined;
79
125
  /**
80
126
  * Derive the canonical `@authority` the AAuth profile requires (AAuth §10.3.1).
81
127
  * We trust explicit configuration first, then fall back to the host the
@@ -111,6 +157,18 @@ export declare function routeAllowsLocalIssueWriteFallback(req: Pick<express.Req
111
157
  export declare function routeConsumesGuestWriteBudget(req: Pick<express.Request, "method" | "path">): boolean;
112
158
  /** Exported for unit tests: guest-rate-limit key precedence is thumbprint -> guest token -> IP. */
113
159
  export declare function guestWriteRateLimitKey(req: express.Request): string;
160
+ /**
161
+ * Issue *submission* is the one route a third party may reach with no identity
162
+ * at all: the guest access token is minted BY the submit, so requiring one to
163
+ * perform it is a chicken-and-egg that closes the inbox to first contact.
164
+ *
165
+ * Deliberately submit-only. `add_message` stays authenticated: by the time a
166
+ * reporter has a thread to append to, they hold the token returned by their
167
+ * submit, so anonymity buys nothing there — and letting an unidentified caller
168
+ * write into an existing thread is a strictly wider blast radius than letting
169
+ * them open a new one. The token is what proves "I opened this thread".
170
+ */
171
+ export declare function routeAcceptsAnonymousIssueSubmit(req: Pick<express.Request, "method" | "path">): boolean;
114
172
  /**
115
173
  * Derive a userId for a guest principal from the validated token grant.
116
174
  *
@@ -1 +1 @@
1
- {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}