@indexnetwork/protocol 22.0.0-rc.499.1 → 64.0.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 (561) hide show
  1. package/CHANGELOG.md +1841 -0
  2. package/IMPLEMENTATION.md +140 -181
  3. package/README.md +16 -20
  4. package/STABILITY.md +16 -11
  5. package/dist/{intents/intent.module.d.ts → capabilities/intents.d.ts} +182 -192
  6. package/dist/capabilities/intents.js +88 -0
  7. package/dist/capabilities/negotiations.d.ts +17 -0
  8. package/dist/capabilities/negotiations.js +16 -0
  9. package/dist/{networks/network.module.d.ts → capabilities/networks.d.ts} +33 -169
  10. package/dist/{networks/network.module.js → capabilities/networks.js} +6 -17
  11. package/dist/index.d.ts +57 -134
  12. package/dist/index.js +41 -105
  13. package/dist/internal/agents/agent.repository.port.d.ts +59 -0
  14. package/dist/internal/agents/agent.repository.port.js +7 -0
  15. package/dist/internal/agents/agent.types.d.ts +35 -0
  16. package/dist/{agents → internal/agents}/agent.types.js +1 -6
  17. package/dist/{intents → internal/intents}/graph/intent.graph.d.ts +142 -151
  18. package/dist/{intents → internal/intents}/graph/intent.graph.execute.d.ts +5 -1
  19. package/dist/{intents → internal/intents}/graph/intent.graph.execute.js +165 -46
  20. package/dist/internal/intents/graph/intent.graph.infer.d.ts +78 -0
  21. package/dist/internal/intents/graph/intent.graph.infer.js +122 -0
  22. package/dist/internal/intents/graph/intent.graph.js +108 -0
  23. package/dist/{intents → internal/intents}/graph/intent.graph.reconcile.d.ts +18 -9
  24. package/dist/internal/intents/graph/intent.graph.reconcile.js +173 -0
  25. package/dist/internal/intents/graph/intent.graph.shared.d.ts +55 -0
  26. package/dist/{intents → internal/intents}/graph/intent.graph.shared.js +25 -70
  27. package/dist/{intents → internal/intents}/graph/intent.graph.state.d.ts +96 -32
  28. package/dist/{intents → internal/intents}/graph/intent.graph.state.js +42 -31
  29. package/dist/internal/intents/intent.admission.d.ts +16 -0
  30. package/dist/internal/intents/intent.admission.js +30 -0
  31. package/dist/{intents → internal/intents}/intent.inferrer.d.ts +1 -40
  32. package/dist/{intents → internal/intents}/intent.inferrer.js +13 -49
  33. package/dist/internal/intents/intent.preparer.d.ts +52 -0
  34. package/dist/internal/intents/intent.preparer.js +87 -0
  35. package/dist/{intents → internal/intents}/intent.verifier.d.ts +3 -36
  36. package/dist/{intents → internal/intents}/intent.verifier.js +0 -17
  37. package/dist/{networks → internal/networks}/indexer.graph.d.ts +15 -200
  38. package/dist/{networks → internal/networks}/indexer.graph.js +19 -128
  39. package/dist/{networks → internal/networks}/indexer.state.d.ts +8 -63
  40. package/dist/internal/networks/indexer.state.js +70 -0
  41. package/dist/{networks → internal/networks}/membership.graph.d.ts +6 -6
  42. package/dist/{networks → internal/networks}/membership.graph.js +3 -3
  43. package/dist/{networks → internal/networks}/membership.state.d.ts +2 -2
  44. package/dist/{networks → internal/networks}/membership.state.js +2 -2
  45. package/dist/{networks → internal/networks}/network.graph.d.ts +9 -22
  46. package/dist/{networks → internal/networks}/network.graph.js +13 -27
  47. package/dist/{networks → internal/networks}/network.recommender.d.ts +2 -2
  48. package/dist/{networks → internal/networks}/network.recommender.js +2 -2
  49. package/dist/{networks → internal/networks}/network.state.d.ts +4 -7
  50. package/dist/{networks → internal/networks}/network.state.js +4 -4
  51. package/dist/internal/opportunities/negotiation-context.loader.d.ts +26 -0
  52. package/dist/internal/opportunities/negotiation-context.loader.js +36 -0
  53. package/dist/{opportunities → internal/opportunities}/opportunity.actor.d.ts +1 -1
  54. package/dist/{opportunities → internal/opportunities}/opportunity.actor.js +7 -1
  55. package/dist/internal/opportunities/opportunity.counterparties.d.ts +17 -0
  56. package/dist/internal/opportunities/opportunity.counterparties.js +19 -0
  57. package/dist/internal/opportunities/opportunity.events.d.ts +38 -0
  58. package/dist/internal/opportunities/opportunity.events.js +94 -0
  59. package/dist/{opportunities → internal/opportunities}/opportunity.feed-selection.d.ts +3 -9
  60. package/dist/internal/opportunities/opportunity.feed-selection.js +40 -0
  61. package/dist/internal/opportunities/opportunity.graph.modes.d.ts +39 -0
  62. package/dist/internal/opportunities/opportunity.graph.modes.js +138 -0
  63. package/dist/{opportunities → internal/opportunities}/opportunity.labels.d.ts +2 -3
  64. package/dist/internal/opportunities/opportunity.labels.js +9 -0
  65. package/dist/{opportunities → internal/opportunities}/opportunity.presentation.d.ts +17 -86
  66. package/dist/{opportunities → internal/opportunities}/opportunity.presentation.js +54 -447
  67. package/dist/{opportunities → internal/opportunities}/opportunity.update-admission.d.ts +2 -2
  68. package/dist/internal/opportunities/opportunity.utils.d.ts +105 -0
  69. package/dist/internal/opportunities/opportunity.utils.js +165 -0
  70. package/dist/{opportunities → internal/opportunities}/radar/radar.graph.d.ts +17 -17
  71. package/dist/{opportunities → internal/opportunities}/radar/radar.graph.js +41 -161
  72. package/dist/{opportunities → internal/opportunities}/radar/radar.state.d.ts +4 -11
  73. package/dist/{shared → internal/shared}/agent/model-signal.d.ts +1 -1
  74. package/dist/{shared → internal/shared}/agent/model-signal.js +1 -1
  75. package/dist/{shared → internal/shared}/agent/model.config.d.ts +28 -86
  76. package/dist/{shared → internal/shared}/agent/model.config.js +58 -69
  77. package/dist/internal/shared/agent/model.resolver.d.ts +33 -0
  78. package/dist/{shared → internal/shared}/agent/model.resolver.js +18 -33
  79. package/dist/internal/shared/agent/scope.d.ts +20 -0
  80. package/dist/internal/shared/agent/scope.js +24 -0
  81. package/dist/internal/shared/assignment/network-assignment.policy.d.ts +23 -0
  82. package/dist/internal/shared/assignment/network-assignment.policy.js +28 -0
  83. package/dist/{shared → internal/shared}/observability/log.d.ts +3 -6
  84. package/dist/{shared → internal/shared}/observability/log.js +9 -18
  85. package/dist/{shared → internal/shared}/observability/protocol.logger.d.ts +1 -1
  86. package/dist/{shared → internal/shared}/observability/protocol.logger.js +1 -1
  87. package/dist/internal/shared/observability/request-context.d.ts +29 -0
  88. package/dist/internal/shared/observability/request-context.js +17 -0
  89. package/dist/{shared → internal/shared}/utils/social-label.d.ts +2 -2
  90. package/dist/{shared → internal/shared}/utils/social-label.js +1 -1
  91. package/dist/platform/database/capabilities.d.ts +59 -0
  92. package/dist/{shared/interfaces/database.entities.d.ts → platform/database/entities.d.ts} +81 -121
  93. package/dist/{shared/interfaces/database.identity-queries.d.ts → platform/database/identity-queries.d.ts} +55 -20
  94. package/dist/platform/database/member-queries.d.ts +55 -0
  95. package/dist/platform/database/member-queries.js +4 -0
  96. package/dist/platform/database/negotiation.d.ts +38 -0
  97. package/dist/{shared/interfaces/database.network-queries.d.ts → platform/database/network-queries.d.ts} +66 -67
  98. package/dist/platform/database/network-queries.js +4 -0
  99. package/dist/{shared/interfaces/database.opportunity-queries.d.ts → platform/database/opportunity-queries.d.ts} +25 -109
  100. package/dist/{shared/interfaces/database.port.d.ts → platform/database/port.d.ts} +52 -117
  101. package/dist/{shared/interfaces/database.port.js → platform/database/port.js} +3 -5
  102. package/dist/platform/database.d.ts +23 -0
  103. package/dist/{shared/interfaces/database.interface.js → platform/database.js} +1 -1
  104. package/dist/{shared/interfaces/cache.interface.d.ts → platform/discovery/cache.d.ts} +2 -4
  105. package/dist/{shared/interfaces/cache.interface.js → platform/discovery/cache.js} +1 -1
  106. package/dist/platform/discovery/embedder.d.ts +31 -0
  107. package/dist/platform/runtime/errors.d.ts +6 -0
  108. package/dist/platform/runtime/errors.js +9 -0
  109. package/dist/platform/runtime/follow-up.d.ts +36 -0
  110. package/dist/platform/runtime/follow-up.js +4 -0
  111. package/dist/platform/runtime/observability.d.ts +34 -0
  112. package/dist/protocol/core.d.ts +11 -0
  113. package/dist/protocol/discovery.rules.d.ts +21 -0
  114. package/dist/protocol/discovery.rules.js +29 -0
  115. package/dist/protocol/negotiation.constants.d.ts +3 -0
  116. package/dist/protocol/negotiation.constants.js +3 -0
  117. package/dist/protocol/negotiation.rules.d.ts +73 -0
  118. package/dist/protocol/negotiation.rules.js +68 -0
  119. package/dist/protocol/protocol.prompt.d.ts +13 -0
  120. package/dist/protocol/protocol.prompt.js +190 -0
  121. package/dist/{shared → protocol}/schemas/discovery-question.schema.d.ts +13 -13
  122. package/dist/{shared → protocol}/schemas/discovery-question.schema.js +2 -2
  123. package/dist/{shared → protocol}/schemas/identity.schema.d.ts +4 -4
  124. package/dist/{shared → protocol}/schemas/identity.schema.js +4 -4
  125. package/dist/{shared → protocol}/schemas/network-assignment.schema.d.ts +11 -20
  126. package/dist/{shared → protocol}/schemas/network-assignment.schema.js +2 -9
  127. package/dist/protocol/schemas/underspecification.schema.d.ts +9 -0
  128. package/dist/protocol/schemas/underspecification.schema.js +12 -0
  129. package/package.json +7 -15
  130. package/dist/agents/agent.dispatcher.port.d.ts +0 -25
  131. package/dist/agents/agent.module.d.ts +0 -19
  132. package/dist/agents/agent.module.js +0 -11
  133. package/dist/agents/agent.repository.port.d.ts +0 -118
  134. package/dist/agents/agent.repository.port.js +0 -10
  135. package/dist/agents/agent.tools.d.ts +0 -16
  136. package/dist/agents/agent.tools.js +0 -351
  137. package/dist/agents/agent.tools.port.d.ts +0 -22
  138. package/dist/agents/agent.tools.port.js +0 -18
  139. package/dist/agents/agent.types.d.ts +0 -76
  140. package/dist/chat/chat-streaming.types.d.ts +0 -618
  141. package/dist/chat/chat-streaming.types.js +0 -297
  142. package/dist/chat/chat.agent.d.ts +0 -292
  143. package/dist/chat/chat.agent.js +0 -1010
  144. package/dist/chat/chat.graph.d.ts +0 -424
  145. package/dist/chat/chat.graph.js +0 -257
  146. package/dist/chat/chat.interrupt.classifier.d.ts +0 -25
  147. package/dist/chat/chat.interrupt.classifier.js +0 -64
  148. package/dist/chat/chat.persona.d.ts +0 -39
  149. package/dist/chat/chat.prompt.d.ts +0 -4
  150. package/dist/chat/chat.prompt.js +0 -12
  151. package/dist/chat/chat.prompt.modules.d.ts +0 -30
  152. package/dist/chat/chat.prompt.modules.js +0 -40
  153. package/dist/chat/chat.question-dedup.d.ts +0 -14
  154. package/dist/chat/chat.question-dedup.js +0 -17
  155. package/dist/chat/chat.state.d.ts +0 -135
  156. package/dist/chat/chat.state.js +0 -120
  157. package/dist/chat/chat.streamer.d.ts +0 -64
  158. package/dist/chat/chat.streamer.js +0 -217
  159. package/dist/chat/chat.suggester.d.ts +0 -23
  160. package/dist/chat/chat.suggester.js +0 -95
  161. package/dist/chat/chat.summarizer.d.ts +0 -20
  162. package/dist/chat/chat.summarizer.js +0 -97
  163. package/dist/chat/chat.title.generator.d.ts +0 -19
  164. package/dist/chat/chat.title.generator.js +0 -66
  165. package/dist/chat/chat.tools.d.ts +0 -5
  166. package/dist/chat/chat.tools.js +0 -62
  167. package/dist/chat/chat.utils.d.ts +0 -41
  168. package/dist/chat/chat.utils.js +0 -88
  169. package/dist/chat/negotiator.persona.d.ts +0 -74
  170. package/dist/chat/negotiator.persona.js +0 -154
  171. package/dist/chat/negotiator.prompt.d.ts +0 -45
  172. package/dist/chat/negotiator.prompt.js +0 -160
  173. package/dist/chat/negotiator.tools.d.ts +0 -42
  174. package/dist/chat/negotiator.tools.js +0 -134
  175. package/dist/chat/onboarding.persona.d.ts +0 -28
  176. package/dist/chat/onboarding.persona.js +0 -86
  177. package/dist/chat/onboarding.prompt.d.ts +0 -6
  178. package/dist/chat/onboarding.prompt.js +0 -63
  179. package/dist/chat/signal.persona.d.ts +0 -47
  180. package/dist/chat/signal.persona.js +0 -319
  181. package/dist/chat/signal.prompt.d.ts +0 -39
  182. package/dist/chat/signal.prompt.js +0 -136
  183. package/dist/contacts/contact.module.d.ts +0 -8
  184. package/dist/contacts/contact.module.js +0 -6
  185. package/dist/contacts/contact.repository.port.d.ts +0 -21
  186. package/dist/contacts/contact.repository.port.js +0 -12
  187. package/dist/contacts/contact.tools.d.ts +0 -17
  188. package/dist/contacts/contact.tools.js +0 -108
  189. package/dist/contacts/contact.tools.port.d.ts +0 -20
  190. package/dist/contacts/contact.tools.port.js +0 -16
  191. package/dist/contacts/contact.types.d.ts +0 -24
  192. package/dist/contacts/contact.types.js +0 -8
  193. package/dist/contexts/context.generator.d.ts +0 -95
  194. package/dist/contexts/context.generator.js +0 -127
  195. package/dist/contexts/context.module.d.ts +0 -13
  196. package/dist/contexts/context.module.js +0 -12
  197. package/dist/contexts/context.tools.port.d.ts +0 -9
  198. package/dist/discovery/hyde.documents.d.ts +0 -9
  199. package/dist/discovery/hyde.documents.js +0 -49
  200. package/dist/discovery/hyde.env.d.ts +0 -8
  201. package/dist/discovery/hyde.env.js +0 -9
  202. package/dist/discovery/hyde.frame.d.ts +0 -150
  203. package/dist/discovery/hyde.frame.js +0 -107
  204. package/dist/discovery/hyde.generator.d.ts +0 -38
  205. package/dist/discovery/hyde.generator.js +0 -103
  206. package/dist/discovery/hyde.graph.d.ts +0 -209
  207. package/dist/discovery/hyde.graph.js +0 -482
  208. package/dist/discovery/hyde.state.d.ts +0 -70
  209. package/dist/discovery/hyde.state.js +0 -85
  210. package/dist/discovery/hyde.strategies.d.ts +0 -17
  211. package/dist/discovery/hyde.strategies.js +0 -34
  212. package/dist/discovery/hyde.validator.d.ts +0 -78
  213. package/dist/discovery/hyde.validator.js +0 -48
  214. package/dist/discovery/index.d.ts +0 -26
  215. package/dist/discovery/index.js +0 -19
  216. package/dist/discovery/lens.inferrer.d.ts +0 -214
  217. package/dist/discovery/lens.inferrer.js +0 -152
  218. package/dist/enrichment/enrichment.generator.d.ts +0 -68
  219. package/dist/enrichment/enrichment.generator.js +0 -95
  220. package/dist/enrichment/enrichment.graph.d.ts +0 -544
  221. package/dist/enrichment/enrichment.graph.js +0 -695
  222. package/dist/enrichment/enrichment.state.d.ts +0 -141
  223. package/dist/enrichment/enrichment.state.js +0 -115
  224. package/dist/enrichment/enrichment.tools.context-read.d.ts +0 -10
  225. package/dist/enrichment/enrichment.tools.context-read.js +0 -353
  226. package/dist/enrichment/enrichment.tools.context-write.d.ts +0 -9
  227. package/dist/enrichment/enrichment.tools.context-write.js +0 -417
  228. package/dist/enrichment/enrichment.tools.d.ts +0 -13
  229. package/dist/enrichment/enrichment.tools.helpers.d.ts +0 -139
  230. package/dist/enrichment/enrichment.tools.helpers.js +0 -234
  231. package/dist/enrichment/enrichment.tools.js +0 -153
  232. package/dist/intents/graph/intent.graph.infer.d.ts +0 -44
  233. package/dist/intents/graph/intent.graph.infer.js +0 -97
  234. package/dist/intents/graph/intent.graph.js +0 -134
  235. package/dist/intents/graph/intent.graph.reconcile.js +0 -274
  236. package/dist/intents/graph/intent.graph.shared.d.ts +0 -68
  237. package/dist/intents/intake/intake.orchestrator.d.ts +0 -203
  238. package/dist/intents/intake/intake.orchestrator.js +0 -255
  239. package/dist/intents/intake/intake.pack.generator.d.ts +0 -57
  240. package/dist/intents/intake/intake.pack.generator.js +0 -90
  241. package/dist/intents/intent.clarifier.d.ts +0 -51
  242. package/dist/intents/intent.clarifier.js +0 -201
  243. package/dist/intents/intent.indexer.d.ts +0 -82
  244. package/dist/intents/intent.indexer.js +0 -170
  245. package/dist/intents/intent.module.js +0 -103
  246. package/dist/intents/intent.proposal.d.ts +0 -37
  247. package/dist/intents/intent.proposal.js +0 -14
  248. package/dist/intents/intent.reconciler.d.ts +0 -105
  249. package/dist/intents/intent.reconciler.js +0 -186
  250. package/dist/intents/intent.tools.d.ts +0 -27
  251. package/dist/intents/intent.tools.js +0 -808
  252. package/dist/maintenance/maintenance.graph.d.ts +0 -239
  253. package/dist/maintenance/maintenance.graph.js +0 -199
  254. package/dist/maintenance/maintenance.state.d.ts +0 -35
  255. package/dist/maintenance/maintenance.state.js +0 -55
  256. package/dist/mcp/elicitation.builder.d.ts +0 -53
  257. package/dist/mcp/elicitation.builder.js +0 -74
  258. package/dist/mcp/elicitation.dispatcher.d.ts +0 -36
  259. package/dist/mcp/elicitation.dispatcher.js +0 -86
  260. package/dist/mcp/mcp.authorization-policy.d.ts +0 -252
  261. package/dist/mcp/mcp.authorization-policy.js +0 -535
  262. package/dist/mcp/mcp.server.d.ts +0 -90
  263. package/dist/mcp/mcp.server.js +0 -631
  264. package/dist/negotiations/insight.generator.d.ts +0 -31
  265. package/dist/negotiations/insight.generator.js +0 -105
  266. package/dist/negotiations/negotiation.agent.d.ts +0 -130
  267. package/dist/negotiations/negotiation.agent.js +0 -396
  268. package/dist/negotiations/negotiation.answer-consumption.d.ts +0 -223
  269. package/dist/negotiations/negotiation.answer-consumption.js +0 -275
  270. package/dist/negotiations/negotiation.attribution.d.ts +0 -91
  271. package/dist/negotiations/negotiation.attribution.js +0 -109
  272. package/dist/negotiations/negotiation.candidates.d.ts +0 -83
  273. package/dist/negotiations/negotiation.candidates.js +0 -162
  274. package/dist/negotiations/negotiation.client-dm.d.ts +0 -50
  275. package/dist/negotiations/negotiation.client-dm.js +0 -66
  276. package/dist/negotiations/negotiation.consultation-policy.d.ts +0 -95
  277. package/dist/negotiations/negotiation.consultation-policy.js +0 -159
  278. package/dist/negotiations/negotiation.deadlock.contracts.d.ts +0 -10
  279. package/dist/negotiations/negotiation.deadlock.d.ts +0 -87
  280. package/dist/negotiations/negotiation.deadlock.js +0 -150
  281. package/dist/negotiations/negotiation.detail-reader.d.ts +0 -94
  282. package/dist/negotiations/negotiation.detail-reader.js +0 -91
  283. package/dist/negotiations/negotiation.expected-speaker.d.ts +0 -33
  284. package/dist/negotiations/negotiation.expected-speaker.js +0 -59
  285. package/dist/negotiations/negotiation.graph.d.ts +0 -694
  286. package/dist/negotiations/negotiation.graph.finalize.d.ts +0 -5
  287. package/dist/negotiations/negotiation.graph.finalize.js +0 -403
  288. package/dist/negotiations/negotiation.graph.init.d.ts +0 -54
  289. package/dist/negotiations/negotiation.graph.init.js +0 -256
  290. package/dist/negotiations/negotiation.graph.js +0 -94
  291. package/dist/negotiations/negotiation.graph.screen.d.ts +0 -23
  292. package/dist/negotiations/negotiation.graph.screen.js +0 -108
  293. package/dist/negotiations/negotiation.graph.shared.d.ts +0 -111
  294. package/dist/negotiations/negotiation.graph.shared.js +0 -168
  295. package/dist/negotiations/negotiation.graph.turn.d.ts +0 -134
  296. package/dist/negotiations/negotiation.graph.turn.js +0 -662
  297. package/dist/negotiations/negotiation.hermes-contract.d.ts +0 -31
  298. package/dist/negotiations/negotiation.hermes-contract.js +0 -72
  299. package/dist/negotiations/negotiation.intent-snapshot-provenance.d.ts +0 -21
  300. package/dist/negotiations/negotiation.intent-snapshot-provenance.js +0 -28
  301. package/dist/negotiations/negotiation.lifecycle-narration.d.ts +0 -18
  302. package/dist/negotiations/negotiation.lifecycle-narration.js +0 -87
  303. package/dist/negotiations/negotiation.memory.d.ts +0 -65
  304. package/dist/negotiations/negotiation.memory.js +0 -83
  305. package/dist/negotiations/negotiation.module.d.ts +0 -36
  306. package/dist/negotiations/negotiation.module.js +0 -23
  307. package/dist/negotiations/negotiation.protocol.d.ts +0 -1018
  308. package/dist/negotiations/negotiation.protocol.js +0 -224
  309. package/dist/negotiations/negotiation.question-safety.d.ts +0 -52
  310. package/dist/negotiations/negotiation.question-safety.js +0 -119
  311. package/dist/negotiations/negotiation.reflect.d.ts +0 -194
  312. package/dist/negotiations/negotiation.reflect.js +0 -145
  313. package/dist/negotiations/negotiation.scope.d.ts +0 -41
  314. package/dist/negotiations/negotiation.scope.js +0 -39
  315. package/dist/negotiations/negotiation.screen.contracts.d.ts +0 -88
  316. package/dist/negotiations/negotiation.screen.contracts.js +0 -58
  317. package/dist/negotiations/negotiation.screen.d.ts +0 -78
  318. package/dist/negotiations/negotiation.screen.js +0 -112
  319. package/dist/negotiations/negotiation.stall-gap.d.ts +0 -83
  320. package/dist/negotiations/negotiation.stall-gap.js +0 -152
  321. package/dist/negotiations/negotiation.stance.contracts.d.ts +0 -123
  322. package/dist/negotiations/negotiation.stance.contracts.js +0 -317
  323. package/dist/negotiations/negotiation.state.d.ts +0 -597
  324. package/dist/negotiations/negotiation.state.js +0 -286
  325. package/dist/negotiations/negotiation.summarizer.d.ts +0 -25
  326. package/dist/negotiations/negotiation.summarizer.js +0 -101
  327. package/dist/negotiations/negotiation.task-lock-policy.d.ts +0 -10
  328. package/dist/negotiations/negotiation.task-lock-policy.js +0 -22
  329. package/dist/negotiations/negotiation.tools.d.ts +0 -18
  330. package/dist/negotiations/negotiation.tools.js +0 -842
  331. package/dist/negotiations/negotiation.tools.port.d.ts +0 -17
  332. package/dist/negotiations/negotiation.turn-cap.d.ts +0 -9
  333. package/dist/negotiations/negotiation.turn-cap.js +0 -12
  334. package/dist/networks/indexer.state.js +0 -112
  335. package/dist/networks/network.tools.d.ts +0 -36
  336. package/dist/networks/network.tools.js +0 -594
  337. package/dist/opportunities/delivery-card.cache.d.ts +0 -25
  338. package/dist/opportunities/delivery-card.cache.js +0 -43
  339. package/dist/opportunities/discovery.env.d.ts +0 -20
  340. package/dist/opportunities/discovery.env.js +0 -109
  341. package/dist/opportunities/discriminator/discriminator.adjustments.d.ts +0 -90
  342. package/dist/opportunities/discriminator/discriminator.adjustments.js +0 -141
  343. package/dist/opportunities/discriminator/discriminator.assigner.d.ts +0 -78
  344. package/dist/opportunities/discriminator/discriminator.assigner.js +0 -153
  345. package/dist/opportunities/discriminator/discriminator.env.d.ts +0 -103
  346. package/dist/opportunities/discriminator/discriminator.env.js +0 -103
  347. package/dist/opportunities/discriminator/discriminator.miner.d.ts +0 -114
  348. package/dist/opportunities/discriminator/discriminator.miner.js +0 -228
  349. package/dist/opportunities/discriminator/discriminator.push.d.ts +0 -13
  350. package/dist/opportunities/discriminator/discriminator.push.js +0 -19
  351. package/dist/opportunities/discriminator/discriminator.question.d.ts +0 -58
  352. package/dist/opportunities/discriminator/discriminator.question.js +0 -155
  353. package/dist/opportunities/discriminator/discriminator.scorer.d.ts +0 -32
  354. package/dist/opportunities/discriminator/discriminator.scorer.js +0 -105
  355. package/dist/opportunities/discriminator/discriminator.shadow.d.ts +0 -32
  356. package/dist/opportunities/discriminator/discriminator.shadow.js +0 -90
  357. package/dist/opportunities/discriminator/discriminator.types.d.ts +0 -93
  358. package/dist/opportunities/discriminator/discriminator.types.js +0 -18
  359. package/dist/opportunities/negotiation-context.loader.d.ts +0 -59
  360. package/dist/opportunities/negotiation-context.loader.js +0 -90
  361. package/dist/opportunities/negotiation-evidence/negotiation-evidence.env.d.ts +0 -43
  362. package/dist/opportunities/negotiation-evidence/negotiation-evidence.env.js +0 -44
  363. package/dist/opportunities/negotiation-evidence/negotiation-evidence.extractor.d.ts +0 -24
  364. package/dist/opportunities/negotiation-evidence/negotiation-evidence.extractor.js +0 -188
  365. package/dist/opportunities/negotiation-evidence/negotiation-evidence.miner.d.ts +0 -26
  366. package/dist/opportunities/negotiation-evidence/negotiation-evidence.miner.js +0 -112
  367. package/dist/opportunities/negotiation-evidence/negotiation-evidence.shadow.d.ts +0 -19
  368. package/dist/opportunities/negotiation-evidence/negotiation-evidence.shadow.js +0 -61
  369. package/dist/opportunities/negotiation-evidence/negotiation-evidence.types.d.ts +0 -191
  370. package/dist/opportunities/negotiation-evidence/negotiation-evidence.types.js +0 -18
  371. package/dist/opportunities/negotiation-evidence/negotiation-evidence.verifier.d.ts +0 -34
  372. package/dist/opportunities/negotiation-evidence/negotiation-evidence.verifier.js +0 -91
  373. package/dist/opportunities/negotiation-summary.builder.d.ts +0 -37
  374. package/dist/opportunities/negotiation-summary.builder.js +0 -66
  375. package/dist/opportunities/opportunity.discovery-negotiation-summary.d.ts +0 -14
  376. package/dist/opportunities/opportunity.discovery-negotiation-summary.js +0 -46
  377. package/dist/opportunities/opportunity.enricher.d.ts +0 -71
  378. package/dist/opportunities/opportunity.enricher.js +0 -280
  379. package/dist/opportunities/opportunity.evaluator.d.ts +0 -289
  380. package/dist/opportunities/opportunity.evaluator.js +0 -516
  381. package/dist/opportunities/opportunity.evidence.d.ts +0 -22
  382. package/dist/opportunities/opportunity.evidence.js +0 -87
  383. package/dist/opportunities/opportunity.existing-negotiation.d.ts +0 -79
  384. package/dist/opportunities/opportunity.existing-negotiation.js +0 -118
  385. package/dist/opportunities/opportunity.feed-selection.js +0 -96
  386. package/dist/opportunities/opportunity.graph.d.ts +0 -1611
  387. package/dist/opportunities/opportunity.graph.discovery-strategies.d.ts +0 -109
  388. package/dist/opportunities/opportunity.graph.discovery-strategies.js +0 -451
  389. package/dist/opportunities/opportunity.graph.discovery.d.ts +0 -69
  390. package/dist/opportunities/opportunity.graph.discovery.js +0 -397
  391. package/dist/opportunities/opportunity.graph.evaluation.d.ts +0 -82
  392. package/dist/opportunities/opportunity.graph.evaluation.js +0 -608
  393. package/dist/opportunities/opportunity.graph.js +0 -193
  394. package/dist/opportunities/opportunity.graph.modes.d.ts +0 -538
  395. package/dist/opportunities/opportunity.graph.modes.js +0 -538
  396. package/dist/opportunities/opportunity.graph.negotiate.d.ts +0 -109
  397. package/dist/opportunities/opportunity.graph.negotiate.js +0 -392
  398. package/dist/opportunities/opportunity.graph.persist-node.d.ts +0 -93
  399. package/dist/opportunities/opportunity.graph.persist-node.js +0 -765
  400. package/dist/opportunities/opportunity.graph.prep.d.ts +0 -150
  401. package/dist/opportunities/opportunity.graph.prep.js +0 -381
  402. package/dist/opportunities/opportunity.graph.shared.d.ts +0 -173
  403. package/dist/opportunities/opportunity.graph.shared.js +0 -199
  404. package/dist/opportunities/opportunity.introducer-feature.d.ts +0 -2
  405. package/dist/opportunities/opportunity.introducer-feature.js +0 -4
  406. package/dist/opportunities/opportunity.introducer.d.ts +0 -77
  407. package/dist/opportunities/opportunity.introducer.js +0 -99
  408. package/dist/opportunities/opportunity.labels.js +0 -10
  409. package/dist/opportunities/opportunity.lifecycle.d.ts +0 -63
  410. package/dist/opportunities/opportunity.lifecycle.js +0 -181
  411. package/dist/opportunities/opportunity.module.d.ts +0 -54
  412. package/dist/opportunities/opportunity.module.js +0 -39
  413. package/dist/opportunities/opportunity.newborn-stamping.d.ts +0 -41
  414. package/dist/opportunities/opportunity.newborn-stamping.js +0 -81
  415. package/dist/opportunities/opportunity.owner-approval.d.ts +0 -118
  416. package/dist/opportunities/opportunity.owner-approval.js +0 -34
  417. package/dist/opportunities/opportunity.owner-provenance.d.ts +0 -6
  418. package/dist/opportunities/opportunity.owner-provenance.js +0 -28
  419. package/dist/opportunities/opportunity.persist.d.ts +0 -58
  420. package/dist/opportunities/opportunity.persist.js +0 -145
  421. package/dist/opportunities/opportunity.persistence-admission.d.ts +0 -39
  422. package/dist/opportunities/opportunity.persistence-admission.js +0 -59
  423. package/dist/opportunities/opportunity.state.d.ts +0 -451
  424. package/dist/opportunities/opportunity.state.js +0 -256
  425. package/dist/opportunities/opportunity.tools.cards.d.ts +0 -138
  426. package/dist/opportunities/opportunity.tools.cards.js +0 -212
  427. package/dist/opportunities/opportunity.tools.d.ts +0 -12
  428. package/dist/opportunities/opportunity.tools.js +0 -236
  429. package/dist/opportunities/opportunity.tools.list.d.ts +0 -10
  430. package/dist/opportunities/opportunity.tools.list.js +0 -489
  431. package/dist/opportunities/opportunity.tools.port.d.ts +0 -16
  432. package/dist/opportunities/opportunity.utils.d.ts +0 -217
  433. package/dist/opportunities/opportunity.utils.js +0 -395
  434. package/dist/opportunities/outcome/outcome.env.d.ts +0 -60
  435. package/dist/opportunities/outcome/outcome.env.js +0 -63
  436. package/dist/opportunities/outcome/outcome.hypotheses.d.ts +0 -29
  437. package/dist/opportunities/outcome/outcome.hypotheses.js +0 -117
  438. package/dist/opportunities/outcome/outcome.shadow.d.ts +0 -56
  439. package/dist/opportunities/outcome/outcome.shadow.js +0 -87
  440. package/dist/opportunities/outcome/outcome.types.d.ts +0 -110
  441. package/dist/opportunities/outcome/outcome.types.js +0 -26
  442. package/dist/opportunities/radar/radar.health.d.ts +0 -31
  443. package/dist/opportunities/radar/radar.health.js +0 -75
  444. package/dist/premises/premise.analyzer.d.ts +0 -35
  445. package/dist/premises/premise.analyzer.js +0 -115
  446. package/dist/premises/premise.decomposer.d.ts +0 -69
  447. package/dist/premises/premise.decomposer.js +0 -213
  448. package/dist/premises/premise.graph.d.ts +0 -345
  449. package/dist/premises/premise.graph.js +0 -278
  450. package/dist/premises/premise.indexer.d.ts +0 -35
  451. package/dist/premises/premise.indexer.js +0 -86
  452. package/dist/premises/premise.state.d.ts +0 -67
  453. package/dist/premises/premise.state.js +0 -94
  454. package/dist/premises/premise.tools.d.ts +0 -3
  455. package/dist/premises/premise.tools.js +0 -248
  456. package/dist/questions/question.env.d.ts +0 -27
  457. package/dist/questions/question.env.js +0 -27
  458. package/dist/questions/question.input.d.ts +0 -107
  459. package/dist/questions/question.module.d.ts +0 -30
  460. package/dist/questions/question.module.js +0 -28
  461. package/dist/questions/question.schema.d.ts +0 -1529
  462. package/dist/questions/question.schema.js +0 -420
  463. package/dist/shared/agent/activity-projection.d.ts +0 -271
  464. package/dist/shared/agent/activity-projection.js +0 -254
  465. package/dist/shared/agent/canonical-guidance.d.ts +0 -30
  466. package/dist/shared/agent/canonical-guidance.js +0 -246
  467. package/dist/shared/agent/model.resolver.d.ts +0 -48
  468. package/dist/shared/agent/tool.factory.d.ts +0 -17
  469. package/dist/shared/agent/tool.factory.js +0 -221
  470. package/dist/shared/agent/tool.helpers.d.ts +0 -482
  471. package/dist/shared/agent/tool.helpers.js +0 -232
  472. package/dist/shared/agent/tool.registry.d.ts +0 -25
  473. package/dist/shared/agent/tool.registry.js +0 -76
  474. package/dist/shared/agent/tool.runtime.d.ts +0 -28
  475. package/dist/shared/agent/tool.runtime.js +0 -194
  476. package/dist/shared/agent/tool.scope.d.ts +0 -44
  477. package/dist/shared/agent/tool.scope.js +0 -50
  478. package/dist/shared/agent/utility.tools.d.ts +0 -15
  479. package/dist/shared/agent/utility.tools.js +0 -322
  480. package/dist/shared/assignment/network-assignment.policy.d.ts +0 -61
  481. package/dist/shared/assignment/network-assignment.policy.js +0 -105
  482. package/dist/shared/interfaces/agent-dispatcher.interface.d.ts +0 -100
  483. package/dist/shared/interfaces/agent-dispatcher.interface.js +0 -12
  484. package/dist/shared/interfaces/auth.interface.d.ts +0 -37
  485. package/dist/shared/interfaces/auth.interface.js +0 -1
  486. package/dist/shared/interfaces/chat-message-writer.interface.d.ts +0 -18
  487. package/dist/shared/interfaces/chat-message-writer.interface.js +0 -1
  488. package/dist/shared/interfaces/chat-session.interface.d.ts +0 -23
  489. package/dist/shared/interfaces/chat-session.interface.js +0 -18
  490. package/dist/shared/interfaces/chat-summary.interface.d.ts +0 -16
  491. package/dist/shared/interfaces/chat-summary.interface.js +0 -1
  492. package/dist/shared/interfaces/database.capabilities.d.ts +0 -100
  493. package/dist/shared/interfaces/database.interface.d.ts +0 -16
  494. package/dist/shared/interfaces/database.member-queries.d.ts +0 -219
  495. package/dist/shared/interfaces/database.member-queries.js +0 -4
  496. package/dist/shared/interfaces/database.negotiation.d.ts +0 -329
  497. package/dist/shared/interfaces/database.negotiation.js +0 -26
  498. package/dist/shared/interfaces/database.network-queries.js +0 -4
  499. package/dist/shared/interfaces/database.opportunity-queries.js +0 -4
  500. package/dist/shared/interfaces/delivery-ledger.interface.d.ts +0 -40
  501. package/dist/shared/interfaces/delivery-ledger.interface.js +0 -5
  502. package/dist/shared/interfaces/embedder.interface.d.ts +0 -92
  503. package/dist/shared/interfaces/embedder.interface.js +0 -4
  504. package/dist/shared/interfaces/enrichment-run.interface.d.ts +0 -62
  505. package/dist/shared/interfaces/enrichment-run.interface.js +0 -1
  506. package/dist/shared/interfaces/enrichment.interface.js +0 -1
  507. package/dist/shared/interfaces/negotiation-events.interface.d.ts +0 -77
  508. package/dist/shared/interfaces/negotiation-events.interface.js +0 -6
  509. package/dist/shared/interfaces/negotiation-summary.interface.d.ts +0 -25
  510. package/dist/shared/interfaces/negotiation-summary.interface.js +0 -1
  511. package/dist/shared/interfaces/negotiator-memory.interface.d.ts +0 -58
  512. package/dist/shared/interfaces/negotiator-memory.interface.js +0 -11
  513. package/dist/shared/interfaces/queue.interface.d.ts +0 -23
  514. package/dist/shared/interfaces/queue.interface.js +0 -4
  515. package/dist/shared/interfaces/scraper.interface.js +0 -1
  516. package/dist/shared/interfaces/tool-request-context.interface.d.ts +0 -11
  517. package/dist/shared/interfaces/tool-request-context.interface.js +0 -1
  518. package/dist/shared/observability/request-context.d.ts +0 -27
  519. package/dist/shared/observability/request-context.js +0 -6
  520. package/dist/shared/schemas/mcp-auth.schema.d.ts +0 -87
  521. package/dist/shared/schemas/mcp-auth.schema.js +0 -56
  522. package/dist/shared/schemas/negotiation-digest.schema.d.ts +0 -58
  523. package/dist/shared/schemas/negotiation-digest.schema.js +0 -38
  524. package/dist/shared/schemas/negotiation-state.schema.d.ts +0 -343
  525. package/dist/shared/schemas/negotiation-state.schema.js +0 -81
  526. package/dist/shared/schemas/question-block.fixture.d.ts +0 -12
  527. package/dist/shared/schemas/question-block.fixture.js +0 -39
  528. package/dist/shared/schemas/question-block.schema.d.ts +0 -111
  529. package/dist/shared/schemas/question-block.schema.js +0 -124
  530. package/dist/shared/schemas/structured-question.schema.d.ts +0 -66
  531. package/dist/shared/schemas/structured-question.schema.js +0 -31
  532. package/dist/shared/schemas/underspecification.schema.d.ts +0 -13
  533. package/dist/shared/schemas/underspecification.schema.js +0 -16
  534. /package/dist/{opportunities → internal/opportunities}/opportunity.update-admission.js +0 -0
  535. /package/dist/{opportunities → internal/opportunities}/radar/radar.state.js +0 -0
  536. /package/dist/{shared → internal/shared}/network/metadata.renderer.d.ts +0 -0
  537. /package/dist/{shared → internal/shared}/network/metadata.renderer.js +0 -0
  538. /package/dist/{shared → internal/shared}/observability/debug-meta.sanitizer.d.ts +0 -0
  539. /package/dist/{shared → internal/shared}/observability/debug-meta.sanitizer.js +0 -0
  540. /package/dist/{shared → internal/shared}/observability/performance.d.ts +0 -0
  541. /package/dist/{shared → internal/shared}/observability/performance.js +0 -0
  542. /package/dist/{shared → internal/shared}/observability/trace.d.ts +0 -0
  543. /package/dist/{shared → internal/shared}/observability/trace.js +0 -0
  544. /package/dist/{shared → internal/shared}/utils/claim-safety.d.ts +0 -0
  545. /package/dist/{shared → internal/shared}/utils/claim-safety.js +0 -0
  546. /package/dist/{shared → internal/shared}/utils/telegram-handle.d.ts +0 -0
  547. /package/dist/{shared → internal/shared}/utils/telegram-handle.js +0 -0
  548. /package/dist/{shared/interfaces/database.capabilities.js → platform/database/capabilities.js} +0 -0
  549. /package/dist/{shared/interfaces/database.entities.js → platform/database/entities.js} +0 -0
  550. /package/dist/{shared/interfaces/database.identity-queries.js → platform/database/identity-queries.js} +0 -0
  551. /package/dist/{agents/agent.dispatcher.port.js → platform/database/negotiation.js} +0 -0
  552. /package/dist/{chat/chat.persona.js → platform/database/opportunity-queries.js} +0 -0
  553. /package/dist/{contexts/context.tools.port.js → platform/discovery/embedder.js} +0 -0
  554. /package/dist/{shared/interfaces/scraper.interface.d.ts → platform/discovery/scraper.d.ts} +0 -0
  555. /package/dist/{negotiations/negotiation.deadlock.contracts.js → platform/discovery/scraper.js} +0 -0
  556. /package/dist/{shared/interfaces/enrichment.interface.d.ts → platform/enrichment/ports.d.ts} +0 -0
  557. /package/dist/{negotiations/negotiation.tools.port.js → platform/enrichment/ports.js} +0 -0
  558. /package/dist/{opportunities/opportunity.tools.port.js → platform/runtime/observability.js} +0 -0
  559. /package/dist/{questions/question.input.js → protocol/core.js} +0 -0
  560. /package/dist/{shared → protocol}/schemas/chat-context.schema.d.ts +0 -0
  561. /package/dist/{shared → protocol}/schemas/chat-context.schema.js +0 -0
@@ -1,108 +0,0 @@
1
- /**
2
- * contacts — createContactTools canonical implementation.
3
- *
4
- * Creates contact management tools for the chat agent. Enables listing,
5
- * removing, and searching the user's personal network.
6
- *
7
- * Contacts are established by accepting an opportunity — opportunity accept
8
- * and start-chat write the mutual `contact` memberships. There is no import or
9
- * manual-add path, and no ghost users: every contact is a real account.
10
- */
11
- import { z } from 'zod';
12
- import { success, error } from '../shared/agent/tool.helpers.js';
13
- import { protocolLogger } from '../shared/observability/protocol.logger.js';
14
- const logger = protocolLogger('ChatTools:Contact');
15
- /**
16
- * Creates contact management tools for the chat agent.
17
- * Enables listing, searching, and removing entries in the user's network.
18
- */
19
- export function createContactTools(defineTool, deps) {
20
- const { contactService } = deps;
21
- const list_contacts = defineTool({
22
- name: 'list_contacts',
23
- description: "Lists all contacts in the authenticated user's personal network. Contacts are people the user has " +
24
- "accepted an opportunity with, stored as members of their personal network.\n\n" +
25
- "**When to use:** To see who's in the user's network, find a contact's userId for other operations, " +
26
- "or check if a specific person is already a contact.\n\n" +
27
- "**Returns:** Array of contacts, each with userId (use with read_user_contexts), name, email, and avatar URL. " +
28
- "Use read_user_contexts(userId) to get the full profile. " +
29
- "Approved signals are matched in the background; list_opportunities only reviews persisted results.",
30
- querySchema: z.object({
31
- limit: z.number().optional().describe('Maximum number of contacts to return. Omit to return all contacts. Use for large networks to paginate results.'),
32
- }),
33
- handler: async ({ context, query }) => {
34
- try {
35
- let contacts = await contactService.listContacts(context.userId);
36
- if (query.limit && query.limit > 0) {
37
- contacts = contacts.slice(0, query.limit);
38
- }
39
- return success({
40
- count: contacts.length,
41
- contacts: contacts.map(c => ({
42
- userId: c.userId,
43
- name: c.user.name,
44
- email: c.user.email,
45
- avatar: c.user.avatar,
46
- })),
47
- });
48
- }
49
- catch (err) {
50
- logger.error('Failed to list contacts', { err });
51
- return error('Failed to list contacts. Please try again.');
52
- }
53
- },
54
- });
55
- const remove_contact = defineTool({
56
- name: 'remove_contact',
57
- description: "Removes a contact from the authenticated user's personal network. The contact relationship is deleted — " +
58
- "the person is no longer a member of the user's personal network and their signals are no longer eligible for matching there.\n\n" +
59
- "**When to use:** When the user wants to remove someone from their network (e.g. 'remove John from my contacts').\n\n" +
60
- "**Note:** This only removes the contact relationship. If the contact is a real user (not a ghost), " +
61
- "they still exist on the platform and their approved signals may remain eligible in shared networks.\n\n" +
62
- "**Returns:** Confirmation that the contact was removed.",
63
- querySchema: z.object({
64
- contactUserId: z.string().describe('The userId of the contact to remove. Get this from list_contacts results.'),
65
- }),
66
- handler: async ({ context, query }) => {
67
- try {
68
- await contactService.removeContact(context.userId, query.contactUserId);
69
- return success({ removed: true, message: 'Contact removed from your network.' });
70
- }
71
- catch (err) {
72
- logger.error('Failed to remove contact', { err });
73
- return error('Failed to remove contact. Please try again.');
74
- }
75
- },
76
- });
77
- const search_contacts = defineTool({
78
- name: 'search_contacts',
79
- description: "Searches the authenticated user's personal network by name or email (case-insensitive substring). " +
80
- "Use when the user refers to a contact by partial name or email and you need their userId for another tool " +
81
- "(e.g. read_user_contexts).\n\n" +
82
- "**When to use:** Before list_contacts when the network is large — returns only matching contacts, bounded by limit.\n\n" +
83
- "**Returns:** Array of matching contacts: userId, name, email, avatar.",
84
- querySchema: z.object({
85
- query: z.string().trim().min(1).describe('Free-text query matched against contact name and email (case-insensitive, substring).'),
86
- limit: z.number().int().positive().max(100).optional().describe('Maximum rows to return. Defaults to 25.'),
87
- }),
88
- handler: async ({ context, query }) => {
89
- try {
90
- const rows = await contactService.searchContacts(context.userId, query.query, query.limit ?? 25);
91
- return success({
92
- count: rows.length,
93
- contacts: rows.map(r => ({
94
- userId: r.contactId,
95
- name: r.name,
96
- email: r.email,
97
- avatar: r.avatar,
98
- })),
99
- });
100
- }
101
- catch (err) {
102
- logger.error('Failed to search contacts', { err });
103
- return error('Failed to search contacts. Please try again.');
104
- }
105
- },
106
- });
107
- return [list_contacts, remove_contact, search_contacts];
108
- }
@@ -1,20 +0,0 @@
1
- /**
2
- * contacts — ContactToolDeps tool host port.
3
- *
4
- * Narrow port type consumed by createContactTools. The host provides a
5
- * ContactServiceAdapter.
6
- *
7
- * NOTE: This type is intentionally defined inline rather than derived from
8
- * ToolRegistryCompositionDeps, keeping the capability port independent from
9
- * the all-capability composition contract.
10
- *
11
- * Its shape remains structurally equivalent to the matching
12
- * ToolRegistryCompositionDeps fields.
13
- *
14
- * This root-level contract keeps the capability dependency surface compact.
15
- */
16
- import type { ContactServiceAdapter } from "./contact.repository.port.js";
17
- /** Host capabilities consumed by contact tools. */
18
- export type ContactToolDeps = {
19
- contactService: ContactServiceAdapter;
20
- };
@@ -1,16 +0,0 @@
1
- /**
2
- * contacts — ContactToolDeps tool host port.
3
- *
4
- * Narrow port type consumed by createContactTools. The host provides a
5
- * ContactServiceAdapter.
6
- *
7
- * NOTE: This type is intentionally defined inline rather than derived from
8
- * ToolRegistryCompositionDeps, keeping the capability port independent from
9
- * the all-capability composition contract.
10
- *
11
- * Its shape remains structurally equivalent to the matching
12
- * ToolRegistryCompositionDeps fields.
13
- *
14
- * This root-level contract keeps the capability dependency surface compact.
15
- */
16
- export {};
@@ -1,24 +0,0 @@
1
- /**
2
- * contacts — pure contact entity value types.
3
- *
4
- * No application logic, no LLM calls, no cross-capability imports.
5
- *
6
- * Canonical contact types for the contacts capability.
7
- */
8
- /** Contact with user details, as returned by listContacts. */
9
- export interface ContactEntry {
10
- userId: string;
11
- user: {
12
- id: string;
13
- name: string;
14
- email: string;
15
- avatar: string | null;
16
- };
17
- }
18
- /** Flat contact row returned by searchContacts. */
19
- export interface ContactSearchResult {
20
- contactId: string;
21
- name: string;
22
- email: string;
23
- avatar: string | null;
24
- }
@@ -1,8 +0,0 @@
1
- /**
2
- * contacts — pure contact entity value types.
3
- *
4
- * No application logic, no LLM calls, no cross-capability imports.
5
- *
6
- * Canonical contact types for the contacts capability.
7
- */
8
- export {};
@@ -1,95 +0,0 @@
1
- /**
2
- * User Context Generator
3
- *
4
- * Synthesizes context paragraphs from user premises for storage in the
5
- * user_contexts table. Two scopes:
6
- * - network-scoped: who the person is through the lens of a given network
7
- * - global (networkId = null): a cohesive, network-agnostic identity paragraph
8
- * that replaces the legacy synthesized user_profile projection.
9
- * Each scope supports cold-start (all premises at once) and incremental
10
- * (single premise change applied to an existing context).
11
- * Returns { text, embedding } for storage.
12
- */
13
- import type { EmbeddingGenerator } from "../shared/interfaces/embedder.interface.js";
14
- /** Input for cold-start context generation from a full set of premises. */
15
- export interface UserContextInput {
16
- premises: Array<{
17
- text: string;
18
- }>;
19
- networkPrompt: string | null;
20
- networkTitle: string;
21
- }
22
- /** Input for incremental context update from a single premise change. */
23
- export interface IncrementalContextInput {
24
- currentContext: string;
25
- changeType: 'added' | 'updated' | 'retracted' | 'expired';
26
- premiseText: string;
27
- previousPremiseText?: string;
28
- networkPrompt: string | null;
29
- networkTitle: string;
30
- }
31
- /** Input for cold-start global (network-agnostic) context generation. */
32
- export interface GlobalContextInput {
33
- premises: Array<{
34
- text: string;
35
- }>;
36
- }
37
- /** Input for incremental global context update from a single premise change. */
38
- export interface GlobalIncrementalContextInput {
39
- currentContext: string;
40
- changeType: 'added' | 'updated' | 'retracted' | 'expired';
41
- premiseText: string;
42
- previousPremiseText?: string;
43
- }
44
- /** Generated context paragraph with its embedding vector. */
45
- export interface UserContextResult {
46
- text: string;
47
- embedding: number[];
48
- }
49
- /**
50
- * Generates network-scoped context paragraphs from user premises.
51
- * Uses LLM synthesis to produce focused context and an embedding vector.
52
- */
53
- export declare class UserContextGenerator {
54
- private embeddingGenerator;
55
- private model;
56
- constructor(embeddingGenerator: EmbeddingGenerator);
57
- /**
58
- * Generate a context paragraph from the full set of premises (cold-start).
59
- *
60
- * @param input - Premises, network prompt, and network title
61
- * @returns Synthesized context text with embedding vector
62
- */
63
- generateColdStart(input: UserContextInput): Promise<UserContextResult>;
64
- /**
65
- * Update an existing context paragraph after a single premise change.
66
- *
67
- * @param input - Current context, change details, network metadata
68
- * @returns Updated context text with embedding vector
69
- */
70
- generateIncremental(input: IncrementalContextInput): Promise<UserContextResult>;
71
- /**
72
- * Generate a global (network-agnostic) identity paragraph from the full set
73
- * of premises (cold-start). This is the profile-replacing projection stored
74
- * as the user's global user_context row (networkId = null).
75
- *
76
- * @param input - The user's active premises
77
- * @returns Synthesized global identity text with embedding vector
78
- */
79
- generateGlobalColdStart(input: GlobalContextInput): Promise<UserContextResult>;
80
- /**
81
- * Update the global identity paragraph after a single premise change.
82
- *
83
- * @param input - Current global context and change details
84
- * @returns Updated global identity text with embedding vector
85
- */
86
- generateGlobalIncremental(input: GlobalIncrementalContextInput): Promise<UserContextResult>;
87
- /** Normalize an LLM message content into a plain string. */
88
- private extractText;
89
- /** Format the network context header for LLM prompts. */
90
- private formatNetworkContext;
91
- /** Describe the premise change for the incremental prompt. */
92
- private describeChange;
93
- /** Generate embedding from text, normalizing the return type. */
94
- private embed;
95
- }
@@ -1,127 +0,0 @@
1
- /**
2
- * User Context Generator
3
- *
4
- * Synthesizes context paragraphs from user premises for storage in the
5
- * user_contexts table. Two scopes:
6
- * - network-scoped: who the person is through the lens of a given network
7
- * - global (networkId = null): a cohesive, network-agnostic identity paragraph
8
- * that replaces the legacy synthesized user_profile projection.
9
- * Each scope supports cold-start (all premises at once) and incremental
10
- * (single premise change applied to an existing context).
11
- * Returns { text, embedding } for storage.
12
- */
13
- import { HumanMessage, SystemMessage } from "@langchain/core/messages";
14
- import { createResilientModel } from "../shared/agent/model.config.js";
15
- import { getAbortSignalConfig, invokeWithAbortSignal } from "../shared/agent/model-signal.js";
16
- const COLD_START_SYSTEM_PROMPT = `You synthesize user context paragraphs for community matching. Given a list of premises (atomic facts about a person) and a network description, write a focused paragraph (3-6 sentences) that captures who this person is through the lens of that network's purpose. Highlight what is most relevant to the network. Write in third person. Be specific and concrete, not generic.`;
17
- const INCREMENTAL_SYSTEM_PROMPT = `You maintain user context paragraphs for community matching. You will receive the current context paragraph, a change that occurred, and the network description. Update the context paragraph to reflect the change while preserving all other information. Keep the same style: 3-6 sentences, third person, specific and concrete. For retractions/expirations, remove the relevant information. For additions/updates, integrate the new information naturally.`;
18
- const GLOBAL_COLD_START_SYSTEM_PROMPT = `You synthesize a person's global identity profile from premises (atomic facts about them). Write a cohesive paragraph (4-8 sentences) capturing who this person is overall — their identity, work, expertise, and interests — independent of any single community or network. This is their canonical self-description, not lensed toward any particular purpose. Write in third person. Be specific and concrete, not generic. Do not invent facts beyond the premises.`;
19
- const GLOBAL_INCREMENTAL_SYSTEM_PROMPT = `You maintain a person's global identity profile. You will receive the current profile paragraph and a change that occurred. Update the paragraph to reflect the change while preserving all other information. Keep the same style: 4-8 sentences, third person, specific and concrete, network-agnostic. For retractions/expirations, remove the relevant information. For additions/updates, integrate the new information naturally.`;
20
- /**
21
- * Generates network-scoped context paragraphs from user premises.
22
- * Uses LLM synthesis to produce focused context and an embedding vector.
23
- */
24
- export class UserContextGenerator {
25
- constructor(embeddingGenerator) {
26
- this.embeddingGenerator = embeddingGenerator;
27
- this.model = createResilientModel('userContextGenerator');
28
- }
29
- /**
30
- * Generate a context paragraph from the full set of premises (cold-start).
31
- *
32
- * @param input - Premises, network prompt, and network title
33
- * @returns Synthesized context text with embedding vector
34
- */
35
- async generateColdStart(input) {
36
- const premiseBlock = input.premises.map(p => `- ${p.text}`).join('\n');
37
- const networkContext = this.formatNetworkContext(input.networkPrompt, input.networkTitle);
38
- const response = await invokeWithAbortSignal(this.model, [
39
- new SystemMessage(COLD_START_SYSTEM_PROMPT),
40
- new HumanMessage(`${networkContext}\n\nPremises:\n${premiseBlock}\n\nWrite a focused context paragraph for this person in this network.`),
41
- ]);
42
- const text = this.extractText(response.content);
43
- const embedding = await this.embed(text);
44
- return { text, embedding };
45
- }
46
- /**
47
- * Update an existing context paragraph after a single premise change.
48
- *
49
- * @param input - Current context, change details, network metadata
50
- * @returns Updated context text with embedding vector
51
- */
52
- async generateIncremental(input) {
53
- const networkContext = this.formatNetworkContext(input.networkPrompt, input.networkTitle);
54
- const changeDescription = this.describeChange(input);
55
- const response = await invokeWithAbortSignal(this.model, [
56
- new SystemMessage(INCREMENTAL_SYSTEM_PROMPT),
57
- new HumanMessage(`${networkContext}\n\nCurrent context:\n${input.currentContext}\n\nChange:\n${changeDescription}\n\nWrite the updated context paragraph.`),
58
- ]);
59
- const text = this.extractText(response.content);
60
- const embedding = await this.embed(text);
61
- return { text, embedding };
62
- }
63
- /**
64
- * Generate a global (network-agnostic) identity paragraph from the full set
65
- * of premises (cold-start). This is the profile-replacing projection stored
66
- * as the user's global user_context row (networkId = null).
67
- *
68
- * @param input - The user's active premises
69
- * @returns Synthesized global identity text with embedding vector
70
- */
71
- async generateGlobalColdStart(input) {
72
- const premiseBlock = input.premises.map(p => `- ${p.text}`).join('\n');
73
- const response = await invokeWithAbortSignal(this.model, [
74
- new SystemMessage(GLOBAL_COLD_START_SYSTEM_PROMPT),
75
- new HumanMessage(`Premises:\n${premiseBlock}\n\nWrite a cohesive global identity paragraph for this person.`),
76
- ]);
77
- const text = this.extractText(response.content);
78
- const embedding = await this.embed(text);
79
- return { text, embedding };
80
- }
81
- /**
82
- * Update the global identity paragraph after a single premise change.
83
- *
84
- * @param input - Current global context and change details
85
- * @returns Updated global identity text with embedding vector
86
- */
87
- async generateGlobalIncremental(input) {
88
- const changeDescription = this.describeChange(input);
89
- const response = await invokeWithAbortSignal(this.model, [
90
- new SystemMessage(GLOBAL_INCREMENTAL_SYSTEM_PROMPT),
91
- new HumanMessage(`Current profile:\n${input.currentContext}\n\nChange:\n${changeDescription}\n\nWrite the updated global identity paragraph.`),
92
- ]);
93
- const text = this.extractText(response.content);
94
- const embedding = await this.embed(text);
95
- return { text, embedding };
96
- }
97
- /** Normalize an LLM message content into a plain string. */
98
- extractText(content) {
99
- return typeof content === 'string'
100
- ? content
101
- : String(content ?? '').trim();
102
- }
103
- /** Format the network context header for LLM prompts. */
104
- formatNetworkContext(prompt, title) {
105
- return prompt
106
- ? `Network "${title}": ${prompt}`
107
- : `Network: ${title}`;
108
- }
109
- /** Describe the premise change for the incremental prompt. */
110
- describeChange(input) {
111
- switch (input.changeType) {
112
- case 'added':
113
- return `A new fact was learned about this person:\n"${input.premiseText}"`;
114
- case 'updated':
115
- return `A fact was updated.\nOld: "${input.previousPremiseText}"\nNew: "${input.premiseText}"`;
116
- case 'retracted':
117
- return `A fact was retracted (no longer true):\n"${input.premiseText}"`;
118
- case 'expired':
119
- return `A fact has expired (time-bound, no longer current):\n"${input.premiseText}"`;
120
- }
121
- }
122
- /** Generate embedding from text, normalizing the return type. */
123
- async embed(text) {
124
- const result = await this.embeddingGenerator.generate(text, undefined, getAbortSignalConfig());
125
- return Array.isArray(result[0]) ? result[0] : result;
126
- }
127
- }
@@ -1,13 +0,0 @@
1
- /**
2
- * contexts — the capability's sole cross-capability surface.
3
- *
4
- * Enrichment, premises, generated participant context, and HyDE representations
5
- * are one capability; only orchestration entry points and the read-model
6
- * generator cross its edge.
7
- */
8
- export { createEnrichmentTools } from "../enrichment/enrichment.tools.js";
9
- export { createPremiseTools } from "../premises/premise.tools.js";
10
- export { EnrichmentGraphFactory } from "../enrichment/enrichment.graph.js";
11
- export { PremiseGraphFactory } from "../premises/premise.graph.js";
12
- export { UserContextGenerator } from "./context.generator.js";
13
- export type { EnrichmentToolDeps, PremiseToolDeps } from "./context.tools.port.js";
@@ -1,12 +0,0 @@
1
- /**
2
- * contexts — the capability's sole cross-capability surface.
3
- *
4
- * Enrichment, premises, generated participant context, and HyDE representations
5
- * are one capability; only orchestration entry points and the read-model
6
- * generator cross its edge.
7
- */
8
- export { createEnrichmentTools } from "../enrichment/enrichment.tools.js";
9
- export { createPremiseTools } from "../premises/premise.tools.js";
10
- export { EnrichmentGraphFactory } from "../enrichment/enrichment.graph.js";
11
- export { PremiseGraphFactory } from "../premises/premise.graph.js";
12
- export { UserContextGenerator } from "./context.generator.js";
@@ -1,9 +0,0 @@
1
- import type { ToolRegistryCompositionDeps } from "../shared/agent/tool.helpers.js";
2
- /** Host capabilities consumed by enrichment and premise-derived identity tools. */
3
- export type EnrichmentToolDeps = Pick<ToolRegistryCompositionDeps, "userDb" | "systemDb" | "enricher" | "grantDefaultSystemPermissions" | "reportToolError" | "getUserContextText" | "enrichmentRuns" | "enrichmentRunQueue"> & {
4
- graphs: Pick<ToolRegistryCompositionDeps["graphs"], "profile">;
5
- };
6
- /** Host capabilities consumed by premise mutation tools. */
7
- export type PremiseToolDeps = Pick<ToolRegistryCompositionDeps, "database"> & {
8
- graphs: Pick<ToolRegistryCompositionDeps["graphs"], "premise">;
9
- };
@@ -1,9 +0,0 @@
1
- import type { HydeDocument } from '../shared/interfaces/database.interface.js';
2
- import { type HydeGenerationMode } from './hyde.env.js';
3
- /** Hash source text without persisting the source itself in frame metadata. */
4
- export declare function computeHydeSourceTextHash(sourceText: string): string;
5
- /**
6
- * Select persisted documents that belong to the currently active generation
7
- * mode and, for frame-v1, the newest generation marker group.
8
- */
9
- export declare function selectHydeDocumentsForGeneration(documents: HydeDocument[], mode: HydeGenerationMode, sourceText: string): HydeDocument[];
@@ -1,49 +0,0 @@
1
- import { createHash } from 'crypto';
2
- import { HYDE_FRAME_GENERATION_VERSION } from './hyde.env.js';
3
- /** Hash source text without persisting the source itself in frame metadata. */
4
- export function computeHydeSourceTextHash(sourceText) {
5
- return createHash('sha256').update(sourceText).digest('hex');
6
- }
7
- function isFrameStrategy(strategy) {
8
- return strategy.startsWith(`${HYDE_FRAME_GENERATION_VERSION}:`);
9
- }
10
- function hasFrameMetadataForSource(document, sourceTextHash) {
11
- const context = document.context;
12
- return isFrameStrategy(document.strategy)
13
- && context?.hydeGenerationVersion === HYDE_FRAME_GENERATION_VERSION
14
- && context.validationStatus === 'valid'
15
- && typeof context.lensLabel === 'string'
16
- && context.lensLabel.length > 0
17
- && typeof context.frameFingerprint === 'string'
18
- && context.frameFingerprint.length > 0
19
- && context.sourceTextHash === sourceTextHash
20
- && typeof context.generatedAt === 'string'
21
- && Number.isFinite(Date.parse(context.generatedAt));
22
- }
23
- /**
24
- * Select persisted documents that belong to the currently active generation
25
- * mode and, for frame-v1, the newest generation marker group.
26
- */
27
- export function selectHydeDocumentsForGeneration(documents, mode, sourceText) {
28
- if (mode === 'legacy') {
29
- return documents.filter((document) => !isFrameStrategy(document.strategy)
30
- && document.context?.hydeGenerationVersion !== HYDE_FRAME_GENERATION_VERSION);
31
- }
32
- const sourceTextHash = computeHydeSourceTextHash(sourceText);
33
- const eligible = documents.filter((document) => hasFrameMetadataForSource(document, sourceTextHash));
34
- let newestGeneratedAt;
35
- let newestTimestamp = Number.NEGATIVE_INFINITY;
36
- for (const document of eligible) {
37
- const generatedAt = document.context?.generatedAt;
38
- if (typeof generatedAt !== 'string')
39
- continue;
40
- const timestamp = Date.parse(generatedAt);
41
- if (timestamp > newestTimestamp) {
42
- newestTimestamp = timestamp;
43
- newestGeneratedAt = generatedAt;
44
- }
45
- }
46
- return newestGeneratedAt
47
- ? eligible.filter((document) => document.context?.generatedAt === newestGeneratedAt)
48
- : [];
49
- }
@@ -1,8 +0,0 @@
1
- /** HyDE generation modes. */
2
- export declare const HYDE_FRAME_GENERATION_VERSION: "frame-v1";
3
- export type HydeGenerationMode = 'legacy' | typeof HYDE_FRAME_GENERATION_VERSION;
4
- /**
5
- * Resolve the HyDE generation mode from the feature flag.
6
- * Only the exact literal `true` enables frame-constrained generation.
7
- */
8
- export declare function getHydeGenerationMode(value?: string | undefined): HydeGenerationMode;
@@ -1,9 +0,0 @@
1
- /** HyDE generation modes. */
2
- export const HYDE_FRAME_GENERATION_VERSION = 'frame-v1';
3
- /**
4
- * Resolve the HyDE generation mode from the feature flag.
5
- * Only the exact literal `true` enables frame-constrained generation.
6
- */
7
- export function getHydeGenerationMode(value = process.env.HYDE_FRAME_CONSTRAINTS_ENABLED) {
8
- return value === 'true' ? HYDE_FRAME_GENERATION_VERSION : 'legacy';
9
- }