@indexnetwork/protocol 0.3.2 → 0.4.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 (578) hide show
  1. package/dist/chat/chat-streaming.types.d.ts.map +1 -0
  2. package/dist/chat/chat-streaming.types.js.map +1 -0
  3. package/dist/{agents → chat}/chat.agent.d.ts +2 -2
  4. package/dist/chat/chat.agent.d.ts.map +1 -0
  5. package/dist/{agents → chat}/chat.agent.js +7 -7
  6. package/dist/chat/chat.agent.js.map +1 -0
  7. package/dist/{graphs → chat}/chat.graph.d.ts +43 -43
  8. package/dist/chat/chat.graph.d.ts.map +1 -0
  9. package/dist/{graphs → chat}/chat.graph.js +6 -6
  10. package/dist/chat/chat.graph.js.map +1 -0
  11. package/dist/{agents → chat}/chat.prompt.d.ts +1 -1
  12. package/dist/chat/chat.prompt.d.ts.map +1 -0
  13. package/dist/chat/chat.prompt.js.map +1 -0
  14. package/dist/{agents → chat}/chat.prompt.modules.d.ts +1 -1
  15. package/dist/chat/chat.prompt.modules.d.ts.map +1 -0
  16. package/dist/chat/chat.prompt.modules.js.map +1 -0
  17. package/dist/{states → chat}/chat.state.d.ts +1 -1
  18. package/dist/chat/chat.state.d.ts.map +1 -0
  19. package/dist/chat/chat.state.js.map +1 -0
  20. package/dist/{streamers → chat}/chat.streamer.d.ts +1 -1
  21. package/dist/chat/chat.streamer.d.ts.map +1 -0
  22. package/dist/{streamers → chat}/chat.streamer.js +2 -2
  23. package/dist/chat/chat.streamer.js.map +1 -0
  24. package/dist/{agents/suggestion.generator.d.ts → chat/chat.suggester.d.ts} +2 -2
  25. package/dist/chat/chat.suggester.d.ts.map +1 -0
  26. package/dist/{agents/suggestion.generator.js → chat/chat.suggester.js} +4 -4
  27. package/dist/chat/chat.suggester.js.map +1 -0
  28. package/dist/chat/chat.title.generator.d.ts.map +1 -0
  29. package/dist/{agents → chat}/chat.title.generator.js +3 -3
  30. package/dist/chat/chat.title.generator.js.map +1 -0
  31. package/dist/chat/chat.utils.d.ts.map +1 -0
  32. package/dist/chat/chat.utils.js.map +1 -0
  33. package/dist/{graphs → chat}/tests/chat.graph.mocks.d.ts +3 -3
  34. package/dist/chat/tests/chat.graph.mocks.d.ts.map +1 -0
  35. package/dist/chat/tests/chat.graph.mocks.js.map +1 -0
  36. package/dist/{agents/invite.generator.d.ts → contact/contact.inviter.d.ts} +1 -1
  37. package/dist/contact/contact.inviter.d.ts.map +1 -0
  38. package/dist/{agents/invite.generator.js → contact/contact.inviter.js} +2 -2
  39. package/dist/contact/contact.inviter.js.map +1 -0
  40. package/dist/{tools → contact}/contact.tools.d.ts +1 -1
  41. package/dist/contact/contact.tools.d.ts.map +1 -0
  42. package/dist/contact/contact.tools.js +130 -0
  43. package/dist/contact/contact.tools.js.map +1 -0
  44. package/dist/index.d.ts +61 -59
  45. package/dist/index.d.ts.map +1 -1
  46. package/dist/index.js +39 -39
  47. package/dist/index.js.map +1 -1
  48. package/dist/{tools → integration}/integration.tools.d.ts +1 -1
  49. package/dist/integration/integration.tools.d.ts.map +1 -0
  50. package/dist/{tools → integration}/integration.tools.js +13 -11
  51. package/dist/integration/integration.tools.js.map +1 -0
  52. package/dist/{agents → intent}/intent.clarifier.d.ts.map +1 -1
  53. package/dist/{agents → intent}/intent.clarifier.js +3 -3
  54. package/dist/{agents → intent}/intent.clarifier.js.map +1 -1
  55. package/dist/{graphs → intent}/intent.graph.d.ts +10 -10
  56. package/dist/{graphs → intent}/intent.graph.d.ts.map +1 -1
  57. package/dist/{graphs → intent}/intent.graph.js +7 -7
  58. package/dist/{graphs → intent}/intent.graph.js.map +1 -1
  59. package/dist/{agents → intent}/intent.indexer.d.ts.map +1 -1
  60. package/dist/{agents → intent}/intent.indexer.js +3 -3
  61. package/dist/{agents → intent}/intent.indexer.js.map +1 -1
  62. package/dist/intent/intent.inferrer.d.ts.map +1 -0
  63. package/dist/{agents → intent}/intent.inferrer.js +4 -9
  64. package/dist/intent/intent.inferrer.js.map +1 -0
  65. package/dist/{agents → intent}/intent.reconciler.d.ts.map +1 -1
  66. package/dist/{agents → intent}/intent.reconciler.js +3 -3
  67. package/dist/{agents → intent}/intent.reconciler.js.map +1 -1
  68. package/dist/{states → intent}/intent.state.d.ts +4 -4
  69. package/dist/{states → intent}/intent.state.d.ts.map +1 -1
  70. package/dist/{states → intent}/intent.state.js.map +1 -1
  71. package/dist/{tools → intent}/intent.tools.d.ts +1 -1
  72. package/dist/intent/intent.tools.d.ts.map +1 -0
  73. package/dist/{tools → intent}/intent.tools.js +115 -26
  74. package/dist/intent/intent.tools.js.map +1 -0
  75. package/dist/{agents → intent}/intent.verifier.d.ts.map +1 -1
  76. package/dist/{agents → intent}/intent.verifier.js +3 -3
  77. package/dist/{agents → intent}/intent.verifier.js.map +1 -1
  78. package/dist/{graphs → maintenance}/maintenance.graph.d.ts +6 -6
  79. package/dist/maintenance/maintenance.graph.d.ts.map +1 -0
  80. package/dist/{graphs → maintenance}/maintenance.graph.js +5 -5
  81. package/dist/maintenance/maintenance.graph.js.map +1 -0
  82. package/dist/{states → maintenance}/maintenance.state.d.ts +2 -2
  83. package/dist/maintenance/maintenance.state.d.ts.map +1 -0
  84. package/dist/maintenance/maintenance.state.js.map +1 -0
  85. package/dist/mcp/mcp.server.d.ts +2 -2
  86. package/dist/mcp/mcp.server.d.ts.map +1 -1
  87. package/dist/mcp/mcp.server.js +5 -4
  88. package/dist/mcp/mcp.server.js.map +1 -1
  89. package/dist/{graphs → negotiation}/negotiation.graph.d.ts +50 -14
  90. package/dist/negotiation/negotiation.graph.d.ts.map +1 -0
  91. package/dist/{graphs → negotiation}/negotiation.graph.js +51 -9
  92. package/dist/negotiation/negotiation.graph.js.map +1 -0
  93. package/dist/negotiation/negotiation.insights.generator.d.ts.map +1 -0
  94. package/dist/{agents → negotiation}/negotiation.insights.generator.js +3 -3
  95. package/dist/negotiation/negotiation.insights.generator.js.map +1 -0
  96. package/dist/{agents → negotiation}/negotiation.proposer.d.ts +1 -1
  97. package/dist/negotiation/negotiation.proposer.d.ts.map +1 -0
  98. package/dist/{agents → negotiation}/negotiation.proposer.js +2 -2
  99. package/dist/negotiation/negotiation.proposer.js.map +1 -0
  100. package/dist/{agents → negotiation}/negotiation.responder.d.ts +1 -1
  101. package/dist/negotiation/negotiation.responder.d.ts.map +1 -0
  102. package/dist/{agents → negotiation}/negotiation.responder.js +2 -2
  103. package/dist/negotiation/negotiation.responder.js.map +1 -0
  104. package/dist/{states → negotiation}/negotiation.state.d.ts +12 -0
  105. package/dist/negotiation/negotiation.state.d.ts.map +1 -0
  106. package/dist/{states → negotiation}/negotiation.state.js +16 -0
  107. package/dist/negotiation/negotiation.state.js.map +1 -0
  108. package/dist/negotiation/negotiation.tools.d.ts +7 -0
  109. package/dist/negotiation/negotiation.tools.d.ts.map +1 -0
  110. package/dist/negotiation/negotiation.tools.js +547 -0
  111. package/dist/negotiation/negotiation.tools.js.map +1 -0
  112. package/dist/{graphs/intent_network.graph.d.ts → network/indexer/indexer.graph.d.ts} +5 -5
  113. package/dist/network/indexer/indexer.graph.d.ts.map +1 -0
  114. package/dist/{graphs/intent_network.graph.js → network/indexer/indexer.graph.js} +5 -5
  115. package/dist/network/indexer/indexer.graph.js.map +1 -0
  116. package/dist/{states/intent_network.state.d.ts → network/indexer/indexer.state.d.ts} +2 -2
  117. package/dist/network/indexer/indexer.state.d.ts.map +1 -0
  118. package/dist/{states/intent_network.state.js → network/indexer/indexer.state.js} +1 -1
  119. package/dist/network/indexer/indexer.state.js.map +1 -0
  120. package/dist/{graphs/network_membership.graph.d.ts → network/membership/membership.graph.d.ts} +2 -2
  121. package/dist/network/membership/membership.graph.d.ts.map +1 -0
  122. package/dist/{graphs/network_membership.graph.js → network/membership/membership.graph.js} +4 -4
  123. package/dist/network/membership/membership.graph.js.map +1 -0
  124. package/dist/{states/network_membership.state.d.ts → network/membership/membership.state.d.ts} +1 -1
  125. package/dist/network/membership/membership.state.d.ts.map +1 -0
  126. package/dist/{states/network_membership.state.js → network/membership/membership.state.js} +1 -1
  127. package/dist/network/membership/membership.state.js.map +1 -0
  128. package/dist/{graphs → network}/network.graph.d.ts +1 -1
  129. package/dist/network/network.graph.d.ts.map +1 -0
  130. package/dist/{graphs → network}/network.graph.js +3 -3
  131. package/dist/network/network.graph.js.map +1 -0
  132. package/dist/network/network.state.d.ts.map +1 -0
  133. package/dist/network/network.state.js.map +1 -0
  134. package/dist/{tools → network}/network.tools.d.ts +1 -1
  135. package/dist/network/network.tools.d.ts.map +1 -0
  136. package/dist/{tools → network}/network.tools.js +67 -23
  137. package/dist/network/network.tools.js.map +1 -0
  138. package/dist/{agents/home.categorizer.d.ts → opportunity/feed/feed.categorizer.d.ts} +2 -2
  139. package/dist/opportunity/feed/feed.categorizer.d.ts.map +1 -0
  140. package/dist/{agents/home.categorizer.js → opportunity/feed/feed.categorizer.js} +5 -5
  141. package/dist/opportunity/feed/feed.categorizer.js.map +1 -0
  142. package/dist/{graphs/home.graph.d.ts → opportunity/feed/feed.graph.d.ts} +15 -15
  143. package/dist/opportunity/feed/feed.graph.d.ts.map +1 -0
  144. package/dist/{graphs/home.graph.js → opportunity/feed/feed.graph.js} +10 -10
  145. package/dist/opportunity/feed/feed.graph.js.map +1 -0
  146. package/dist/opportunity/feed/feed.health.d.ts.map +1 -0
  147. package/dist/{support → opportunity/feed}/feed.health.js +1 -1
  148. package/dist/opportunity/feed/feed.health.js.map +1 -0
  149. package/dist/{states/home.state.d.ts → opportunity/feed/feed.state.d.ts} +3 -3
  150. package/dist/opportunity/feed/feed.state.d.ts.map +1 -0
  151. package/dist/{states/home.state.js → opportunity/feed/feed.state.js} +1 -1
  152. package/dist/opportunity/feed/feed.state.js.map +1 -0
  153. package/dist/{support → opportunity}/opportunity.discover.d.ts +4 -4
  154. package/dist/opportunity/opportunity.discover.d.ts.map +1 -0
  155. package/dist/{support → opportunity}/opportunity.discover.js +4 -4
  156. package/dist/opportunity/opportunity.discover.js.map +1 -0
  157. package/dist/{support → opportunity}/opportunity.enricher.d.ts +3 -3
  158. package/dist/opportunity/opportunity.enricher.d.ts.map +1 -0
  159. package/dist/{support → opportunity}/opportunity.enricher.js +1 -1
  160. package/dist/opportunity/opportunity.enricher.js.map +1 -0
  161. package/dist/{agents → opportunity}/opportunity.evaluator.d.ts +2 -2
  162. package/dist/opportunity/opportunity.evaluator.d.ts.map +1 -0
  163. package/dist/{agents → opportunity}/opportunity.evaluator.js +4 -4
  164. package/dist/opportunity/opportunity.evaluator.js.map +1 -0
  165. package/dist/{graphs → opportunity}/opportunity.graph.d.ts +34 -34
  166. package/dist/opportunity/opportunity.graph.d.ts.map +1 -0
  167. package/dist/{graphs → opportunity}/opportunity.graph.js +14 -12
  168. package/dist/opportunity/opportunity.graph.js.map +1 -0
  169. package/dist/{support/introducer.discovery.d.ts → opportunity/opportunity.introducer.d.ts} +1 -1
  170. package/dist/opportunity/opportunity.introducer.d.ts.map +1 -0
  171. package/dist/{support/introducer.discovery.js → opportunity/opportunity.introducer.js} +2 -2
  172. package/dist/opportunity/opportunity.introducer.js.map +1 -0
  173. package/dist/{support/opportunity.constants.d.ts → opportunity/opportunity.labels.d.ts} +1 -1
  174. package/dist/opportunity/opportunity.labels.d.ts.map +1 -0
  175. package/dist/{support/opportunity.constants.js → opportunity/opportunity.labels.js} +1 -1
  176. package/dist/opportunity/opportunity.labels.js.map +1 -0
  177. package/dist/{support → opportunity}/opportunity.persist.d.ts +2 -2
  178. package/dist/opportunity/opportunity.persist.d.ts.map +1 -0
  179. package/dist/{support → opportunity}/opportunity.persist.js +1 -1
  180. package/dist/opportunity/opportunity.persist.js.map +1 -0
  181. package/dist/{support/opportunity.card-text.d.ts → opportunity/opportunity.presentation.d.ts} +33 -4
  182. package/dist/opportunity/opportunity.presentation.d.ts.map +1 -0
  183. package/dist/{support/opportunity.card-text.js → opportunity/opportunity.presentation.js} +164 -6
  184. package/dist/opportunity/opportunity.presentation.js.map +1 -0
  185. package/dist/{agents → opportunity}/opportunity.presenter.d.ts +2 -2
  186. package/dist/opportunity/opportunity.presenter.d.ts.map +1 -0
  187. package/dist/{agents → opportunity}/opportunity.presenter.js +5 -5
  188. package/dist/opportunity/opportunity.presenter.js.map +1 -0
  189. package/dist/{states → opportunity}/opportunity.state.d.ts +5 -5
  190. package/dist/opportunity/opportunity.state.d.ts.map +1 -0
  191. package/dist/opportunity/opportunity.state.js.map +1 -0
  192. package/dist/{tools → opportunity}/opportunity.tools.d.ts +2 -2
  193. package/dist/opportunity/opportunity.tools.d.ts.map +1 -0
  194. package/dist/{tools → opportunity}/opportunity.tools.js +56 -32
  195. package/dist/opportunity/opportunity.tools.js.map +1 -0
  196. package/dist/{support → opportunity}/opportunity.utils.d.ts +1 -1
  197. package/dist/opportunity/opportunity.utils.d.ts.map +1 -0
  198. package/dist/{support → opportunity}/opportunity.utils.js +1 -1
  199. package/dist/opportunity/opportunity.utils.js.map +1 -0
  200. package/dist/{support/profile.enrichment-display-name.d.ts → profile/profile.enricher.d.ts} +1 -1
  201. package/dist/profile/profile.enricher.d.ts.map +1 -0
  202. package/dist/{support/profile.enrichment-display-name.js → profile/profile.enricher.js} +1 -1
  203. package/dist/profile/profile.enricher.js.map +1 -0
  204. package/dist/profile/profile.generator.d.ts.map +1 -0
  205. package/dist/{agents → profile}/profile.generator.js +3 -3
  206. package/dist/profile/profile.generator.js.map +1 -0
  207. package/dist/{graphs → profile}/profile.graph.d.ts +6 -6
  208. package/dist/profile/profile.graph.d.ts.map +1 -0
  209. package/dist/{graphs → profile}/profile.graph.js +7 -7
  210. package/dist/profile/profile.graph.js.map +1 -0
  211. package/dist/profile/profile.hyde.generator.d.ts.map +1 -0
  212. package/dist/{agents → profile}/profile.hyde.generator.js +3 -3
  213. package/dist/profile/profile.hyde.generator.js.map +1 -0
  214. package/dist/{states → profile}/profile.state.d.ts +2 -2
  215. package/dist/profile/profile.state.d.ts.map +1 -0
  216. package/dist/profile/profile.state.js.map +1 -0
  217. package/dist/profile/profile.tools.d.ts +3 -0
  218. package/dist/profile/profile.tools.d.ts.map +1 -0
  219. package/dist/{tools → profile}/profile.tools.js +53 -21
  220. package/dist/profile/profile.tools.js.map +1 -0
  221. package/dist/shared/agent/model.config.d.ts.map +1 -0
  222. package/dist/shared/agent/model.config.js.map +1 -0
  223. package/dist/{streamers → shared/agent}/response.streamer.d.ts +1 -1
  224. package/dist/shared/agent/response.streamer.d.ts.map +1 -0
  225. package/dist/{streamers → shared/agent}/response.streamer.js +2 -2
  226. package/dist/shared/agent/response.streamer.js.map +1 -0
  227. package/dist/shared/agent/tests/llm-assert.d.ts.map +1 -0
  228. package/dist/shared/agent/tests/llm-assert.js.map +1 -0
  229. package/dist/{tools/index.d.ts → shared/agent/tool.factory.d.ts} +1 -1
  230. package/dist/shared/agent/tool.factory.d.ts.map +1 -0
  231. package/dist/{tools/index.js → shared/agent/tool.factory.js} +34 -23
  232. package/dist/shared/agent/tool.factory.js.map +1 -0
  233. package/dist/{tools → shared/agent}/tool.helpers.d.ts +25 -3
  234. package/dist/shared/agent/tool.helpers.d.ts.map +1 -0
  235. package/dist/shared/agent/tool.helpers.js.map +1 -0
  236. package/dist/shared/agent/tool.registry.d.ts.map +1 -0
  237. package/dist/{tools → shared/agent}/tool.registry.js +11 -7
  238. package/dist/shared/agent/tool.registry.js.map +1 -0
  239. package/dist/shared/agent/utility.tools.d.ts.map +1 -0
  240. package/dist/shared/agent/utility.tools.js +276 -0
  241. package/dist/shared/agent/utility.tools.js.map +1 -0
  242. package/dist/shared/hyde/hyde.generator.d.ts.map +1 -0
  243. package/dist/{agents → shared/hyde}/hyde.generator.js +3 -3
  244. package/dist/shared/hyde/hyde.generator.js.map +1 -0
  245. package/dist/{graphs → shared/hyde}/hyde.graph.d.ts +9 -9
  246. package/dist/shared/hyde/hyde.graph.d.ts.map +1 -0
  247. package/dist/{graphs → shared/hyde}/hyde.graph.js +5 -5
  248. package/dist/shared/hyde/hyde.graph.js.map +1 -0
  249. package/dist/{states → shared/hyde}/hyde.state.d.ts +2 -2
  250. package/dist/shared/hyde/hyde.state.d.ts.map +1 -0
  251. package/dist/shared/hyde/hyde.state.js.map +1 -0
  252. package/dist/shared/hyde/hyde.strategies.d.ts.map +1 -0
  253. package/dist/shared/hyde/hyde.strategies.js.map +1 -0
  254. package/dist/shared/hyde/lens.inferrer.d.ts.map +1 -0
  255. package/dist/{agents → shared/hyde}/lens.inferrer.js +3 -3
  256. package/dist/shared/hyde/lens.inferrer.js.map +1 -0
  257. package/dist/shared/interfaces/auth.interface.d.ts.map +1 -0
  258. package/dist/shared/interfaces/auth.interface.js.map +1 -0
  259. package/dist/shared/interfaces/cache.interface.d.ts.map +1 -0
  260. package/dist/shared/interfaces/cache.interface.js.map +1 -0
  261. package/dist/shared/interfaces/chat-session.interface.d.ts.map +1 -0
  262. package/dist/shared/interfaces/chat-session.interface.js.map +1 -0
  263. package/dist/shared/interfaces/contact.interface.d.ts.map +1 -0
  264. package/dist/shared/interfaces/contact.interface.js.map +1 -0
  265. package/dist/{interfaces → shared/interfaces}/database.interface.d.ts +53 -1
  266. package/dist/shared/interfaces/database.interface.d.ts.map +1 -0
  267. package/dist/shared/interfaces/database.interface.js.map +1 -0
  268. package/dist/{interfaces → shared/interfaces}/embedder.interface.d.ts +1 -1
  269. package/dist/shared/interfaces/embedder.interface.d.ts.map +1 -0
  270. package/dist/shared/interfaces/embedder.interface.js.map +1 -0
  271. package/dist/shared/interfaces/enrichment.interface.d.ts.map +1 -0
  272. package/dist/shared/interfaces/enrichment.interface.js.map +1 -0
  273. package/dist/shared/interfaces/integration.interface.d.ts.map +1 -0
  274. package/dist/shared/interfaces/integration.interface.js.map +1 -0
  275. package/dist/shared/interfaces/negotiation-events.interface.d.ts +58 -0
  276. package/dist/shared/interfaces/negotiation-events.interface.d.ts.map +1 -0
  277. package/dist/shared/interfaces/negotiation-events.interface.js +7 -0
  278. package/dist/shared/interfaces/negotiation-events.interface.js.map +1 -0
  279. package/dist/shared/interfaces/queue.interface.d.ts.map +1 -0
  280. package/dist/shared/interfaces/queue.interface.js.map +1 -0
  281. package/dist/shared/interfaces/scraper.interface.d.ts.map +1 -0
  282. package/dist/shared/interfaces/scraper.interface.js.map +1 -0
  283. package/dist/shared/interfaces/storage.interface.d.ts.map +1 -0
  284. package/dist/shared/interfaces/storage.interface.js.map +1 -0
  285. package/dist/shared/interfaces/webhook.interface.d.ts +25 -0
  286. package/dist/shared/interfaces/webhook.interface.d.ts.map +1 -0
  287. package/dist/shared/interfaces/webhook.interface.js +2 -0
  288. package/dist/shared/interfaces/webhook.interface.js.map +1 -0
  289. package/dist/shared/observability/debug-meta.sanitizer.d.ts.map +1 -0
  290. package/dist/shared/observability/debug-meta.sanitizer.js.map +1 -0
  291. package/dist/shared/observability/log.d.ts.map +1 -0
  292. package/dist/shared/observability/log.js.map +1 -0
  293. package/dist/shared/observability/performance.d.ts.map +1 -0
  294. package/dist/shared/observability/performance.js.map +1 -0
  295. package/dist/shared/observability/protocol.logger.d.ts.map +1 -0
  296. package/dist/shared/observability/protocol.logger.js.map +1 -0
  297. package/dist/shared/observability/request-context.d.ts.map +1 -0
  298. package/dist/shared/observability/request-context.js.map +1 -0
  299. package/dist/shared/ui/lucide.icon-catalog.d.ts.map +1 -0
  300. package/dist/shared/ui/lucide.icon-catalog.js.map +1 -0
  301. package/dist/webhook/webhook.tools.d.ts +7 -0
  302. package/dist/webhook/webhook.tools.d.ts.map +1 -0
  303. package/dist/webhook/webhook.tools.js +127 -0
  304. package/dist/webhook/webhook.tools.js.map +1 -0
  305. package/package.json +1 -1
  306. package/dist/agents/chat.agent.d.ts.map +0 -1
  307. package/dist/agents/chat.agent.js.map +0 -1
  308. package/dist/agents/chat.prompt.d.ts.map +0 -1
  309. package/dist/agents/chat.prompt.js.map +0 -1
  310. package/dist/agents/chat.prompt.modules.d.ts.map +0 -1
  311. package/dist/agents/chat.prompt.modules.js.map +0 -1
  312. package/dist/agents/chat.title.generator.d.ts.map +0 -1
  313. package/dist/agents/chat.title.generator.js.map +0 -1
  314. package/dist/agents/home.categorizer.d.ts.map +0 -1
  315. package/dist/agents/home.categorizer.js.map +0 -1
  316. package/dist/agents/hyde.generator.d.ts.map +0 -1
  317. package/dist/agents/hyde.generator.js.map +0 -1
  318. package/dist/agents/hyde.strategies.d.ts.map +0 -1
  319. package/dist/agents/hyde.strategies.js.map +0 -1
  320. package/dist/agents/intent.inferrer.d.ts.map +0 -1
  321. package/dist/agents/intent.inferrer.js.map +0 -1
  322. package/dist/agents/invite.generator.d.ts.map +0 -1
  323. package/dist/agents/invite.generator.js.map +0 -1
  324. package/dist/agents/lens.inferrer.d.ts.map +0 -1
  325. package/dist/agents/lens.inferrer.js.map +0 -1
  326. package/dist/agents/model.config.d.ts.map +0 -1
  327. package/dist/agents/model.config.js.map +0 -1
  328. package/dist/agents/negotiation.insights.generator.d.ts.map +0 -1
  329. package/dist/agents/negotiation.insights.generator.js.map +0 -1
  330. package/dist/agents/negotiation.proposer.d.ts.map +0 -1
  331. package/dist/agents/negotiation.proposer.js.map +0 -1
  332. package/dist/agents/negotiation.responder.d.ts.map +0 -1
  333. package/dist/agents/negotiation.responder.js.map +0 -1
  334. package/dist/agents/opportunity.evaluator.d.ts.map +0 -1
  335. package/dist/agents/opportunity.evaluator.js.map +0 -1
  336. package/dist/agents/opportunity.presenter.d.ts.map +0 -1
  337. package/dist/agents/opportunity.presenter.js.map +0 -1
  338. package/dist/agents/profile.generator.d.ts.map +0 -1
  339. package/dist/agents/profile.generator.js.map +0 -1
  340. package/dist/agents/profile.hyde.generator.d.ts.map +0 -1
  341. package/dist/agents/profile.hyde.generator.js.map +0 -1
  342. package/dist/agents/suggestion.generator.d.ts.map +0 -1
  343. package/dist/agents/suggestion.generator.js.map +0 -1
  344. package/dist/graphs/chat.graph.d.ts.map +0 -1
  345. package/dist/graphs/chat.graph.js.map +0 -1
  346. package/dist/graphs/home.graph.d.ts.map +0 -1
  347. package/dist/graphs/home.graph.js.map +0 -1
  348. package/dist/graphs/hyde.graph.d.ts.map +0 -1
  349. package/dist/graphs/hyde.graph.js.map +0 -1
  350. package/dist/graphs/index.graph.d.ts +0 -620
  351. package/dist/graphs/index.graph.d.ts.map +0 -1
  352. package/dist/graphs/index.graph.js +0 -226
  353. package/dist/graphs/index.graph.js.map +0 -1
  354. package/dist/graphs/index_membership.graph.d.ts +0 -250
  355. package/dist/graphs/index_membership.graph.d.ts.map +0 -1
  356. package/dist/graphs/index_membership.graph.js +0 -204
  357. package/dist/graphs/index_membership.graph.js.map +0 -1
  358. package/dist/graphs/intent_index.graph.d.ts +0 -396
  359. package/dist/graphs/intent_index.graph.d.ts.map +0 -1
  360. package/dist/graphs/intent_index.graph.js +0 -331
  361. package/dist/graphs/intent_index.graph.js.map +0 -1
  362. package/dist/graphs/intent_network.graph.d.ts.map +0 -1
  363. package/dist/graphs/intent_network.graph.js.map +0 -1
  364. package/dist/graphs/maintenance.graph.d.ts.map +0 -1
  365. package/dist/graphs/maintenance.graph.js.map +0 -1
  366. package/dist/graphs/negotiation.graph.d.ts.map +0 -1
  367. package/dist/graphs/negotiation.graph.js.map +0 -1
  368. package/dist/graphs/network.graph.d.ts.map +0 -1
  369. package/dist/graphs/network.graph.js.map +0 -1
  370. package/dist/graphs/network_membership.graph.d.ts.map +0 -1
  371. package/dist/graphs/network_membership.graph.js.map +0 -1
  372. package/dist/graphs/opportunity.graph.d.ts.map +0 -1
  373. package/dist/graphs/opportunity.graph.js.map +0 -1
  374. package/dist/graphs/profile.graph.d.ts.map +0 -1
  375. package/dist/graphs/profile.graph.js.map +0 -1
  376. package/dist/graphs/tests/chat.graph.mocks.d.ts.map +0 -1
  377. package/dist/graphs/tests/chat.graph.mocks.js.map +0 -1
  378. package/dist/interfaces/auth.interface.d.ts.map +0 -1
  379. package/dist/interfaces/auth.interface.js.map +0 -1
  380. package/dist/interfaces/cache.interface.d.ts.map +0 -1
  381. package/dist/interfaces/cache.interface.js.map +0 -1
  382. package/dist/interfaces/chat-session.interface.d.ts.map +0 -1
  383. package/dist/interfaces/chat-session.interface.js.map +0 -1
  384. package/dist/interfaces/contact.interface.d.ts.map +0 -1
  385. package/dist/interfaces/contact.interface.js.map +0 -1
  386. package/dist/interfaces/database.interface.d.ts.map +0 -1
  387. package/dist/interfaces/database.interface.js.map +0 -1
  388. package/dist/interfaces/embedder.interface.d.ts.map +0 -1
  389. package/dist/interfaces/embedder.interface.js.map +0 -1
  390. package/dist/interfaces/enrichment.interface.d.ts.map +0 -1
  391. package/dist/interfaces/enrichment.interface.js.map +0 -1
  392. package/dist/interfaces/integration.interface.d.ts.map +0 -1
  393. package/dist/interfaces/integration.interface.js.map +0 -1
  394. package/dist/interfaces/queue.interface.d.ts.map +0 -1
  395. package/dist/interfaces/queue.interface.js.map +0 -1
  396. package/dist/interfaces/scraper.interface.d.ts.map +0 -1
  397. package/dist/interfaces/scraper.interface.js.map +0 -1
  398. package/dist/interfaces/storage.interface.d.ts.map +0 -1
  399. package/dist/interfaces/storage.interface.js.map +0 -1
  400. package/dist/states/chat.state.d.ts.map +0 -1
  401. package/dist/states/chat.state.js.map +0 -1
  402. package/dist/states/home.state.d.ts.map +0 -1
  403. package/dist/states/home.state.js.map +0 -1
  404. package/dist/states/hyde.state.d.ts.map +0 -1
  405. package/dist/states/hyde.state.js.map +0 -1
  406. package/dist/states/index.state.d.ts +0 -179
  407. package/dist/states/index.state.d.ts.map +0 -1
  408. package/dist/states/index.state.js +0 -56
  409. package/dist/states/index.state.js.map +0 -1
  410. package/dist/states/index_membership.state.d.ts +0 -77
  411. package/dist/states/index_membership.state.d.ts.map +0 -1
  412. package/dist/states/index_membership.state.js +0 -43
  413. package/dist/states/index_membership.state.js.map +0 -1
  414. package/dist/states/intent_index.state.d.ts +0 -148
  415. package/dist/states/intent_index.state.d.ts.map +0 -1
  416. package/dist/states/intent_index.state.js +0 -100
  417. package/dist/states/intent_index.state.js.map +0 -1
  418. package/dist/states/intent_network.state.d.ts.map +0 -1
  419. package/dist/states/intent_network.state.js.map +0 -1
  420. package/dist/states/maintenance.state.d.ts.map +0 -1
  421. package/dist/states/maintenance.state.js.map +0 -1
  422. package/dist/states/negotiation.state.d.ts.map +0 -1
  423. package/dist/states/negotiation.state.js.map +0 -1
  424. package/dist/states/network.state.d.ts.map +0 -1
  425. package/dist/states/network.state.js.map +0 -1
  426. package/dist/states/network_membership.state.d.ts.map +0 -1
  427. package/dist/states/network_membership.state.js.map +0 -1
  428. package/dist/states/opportunity.state.d.ts.map +0 -1
  429. package/dist/states/opportunity.state.js.map +0 -1
  430. package/dist/states/profile.state.d.ts.map +0 -1
  431. package/dist/states/profile.state.js.map +0 -1
  432. package/dist/streamers/chat.streamer.d.ts.map +0 -1
  433. package/dist/streamers/chat.streamer.js.map +0 -1
  434. package/dist/streamers/index.d.ts +0 -3
  435. package/dist/streamers/index.d.ts.map +0 -1
  436. package/dist/streamers/index.js +0 -3
  437. package/dist/streamers/index.js.map +0 -1
  438. package/dist/streamers/response.streamer.d.ts.map +0 -1
  439. package/dist/streamers/response.streamer.js.map +0 -1
  440. package/dist/support/chat.utils.d.ts.map +0 -1
  441. package/dist/support/chat.utils.js.map +0 -1
  442. package/dist/support/debug-meta.sanitizer.d.ts.map +0 -1
  443. package/dist/support/debug-meta.sanitizer.js.map +0 -1
  444. package/dist/support/feed.health.d.ts.map +0 -1
  445. package/dist/support/feed.health.js.map +0 -1
  446. package/dist/support/introducer.discovery.d.ts.map +0 -1
  447. package/dist/support/introducer.discovery.js.map +0 -1
  448. package/dist/support/log.d.ts.map +0 -1
  449. package/dist/support/log.js.map +0 -1
  450. package/dist/support/lucide.icon-catalog.d.ts.map +0 -1
  451. package/dist/support/lucide.icon-catalog.js.map +0 -1
  452. package/dist/support/opportunity.card-text.d.ts.map +0 -1
  453. package/dist/support/opportunity.card-text.js.map +0 -1
  454. package/dist/support/opportunity.constants.d.ts.map +0 -1
  455. package/dist/support/opportunity.constants.js.map +0 -1
  456. package/dist/support/opportunity.discover.d.ts.map +0 -1
  457. package/dist/support/opportunity.discover.js.map +0 -1
  458. package/dist/support/opportunity.enricher.d.ts.map +0 -1
  459. package/dist/support/opportunity.enricher.js.map +0 -1
  460. package/dist/support/opportunity.persist.d.ts.map +0 -1
  461. package/dist/support/opportunity.persist.js.map +0 -1
  462. package/dist/support/opportunity.presentation.d.ts +0 -21
  463. package/dist/support/opportunity.presentation.d.ts.map +0 -1
  464. package/dist/support/opportunity.presentation.js +0 -75
  465. package/dist/support/opportunity.presentation.js.map +0 -1
  466. package/dist/support/opportunity.sanitize.d.ts +0 -18
  467. package/dist/support/opportunity.sanitize.d.ts.map +0 -1
  468. package/dist/support/opportunity.sanitize.js +0 -89
  469. package/dist/support/opportunity.sanitize.js.map +0 -1
  470. package/dist/support/opportunity.utils.d.ts.map +0 -1
  471. package/dist/support/opportunity.utils.js.map +0 -1
  472. package/dist/support/performance.d.ts.map +0 -1
  473. package/dist/support/performance.js.map +0 -1
  474. package/dist/support/profile.enrichment-display-name.d.ts.map +0 -1
  475. package/dist/support/profile.enrichment-display-name.js.map +0 -1
  476. package/dist/support/protocol.logger.d.ts.map +0 -1
  477. package/dist/support/protocol.logger.js.map +0 -1
  478. package/dist/support/request-context.d.ts.map +0 -1
  479. package/dist/support/request-context.js.map +0 -1
  480. package/dist/support/tests/llm-assert.d.ts.map +0 -1
  481. package/dist/support/tests/llm-assert.js.map +0 -1
  482. package/dist/tools/contact.tools.d.ts.map +0 -1
  483. package/dist/tools/contact.tools.js +0 -115
  484. package/dist/tools/contact.tools.js.map +0 -1
  485. package/dist/tools/index.d.ts.map +0 -1
  486. package/dist/tools/index.js.map +0 -1
  487. package/dist/tools/index.tools.d.ts +0 -3
  488. package/dist/tools/index.tools.d.ts.map +0 -1
  489. package/dist/tools/index.tools.js +0 -423
  490. package/dist/tools/index.tools.js.map +0 -1
  491. package/dist/tools/integration.tools.d.ts.map +0 -1
  492. package/dist/tools/integration.tools.js.map +0 -1
  493. package/dist/tools/intent.tools.d.ts.map +0 -1
  494. package/dist/tools/intent.tools.js.map +0 -1
  495. package/dist/tools/network.tools.d.ts.map +0 -1
  496. package/dist/tools/network.tools.js.map +0 -1
  497. package/dist/tools/opportunity.tools.d.ts.map +0 -1
  498. package/dist/tools/opportunity.tools.js.map +0 -1
  499. package/dist/tools/profile.tools.d.ts +0 -3
  500. package/dist/tools/profile.tools.d.ts.map +0 -1
  501. package/dist/tools/profile.tools.js.map +0 -1
  502. package/dist/tools/tool.helpers.d.ts.map +0 -1
  503. package/dist/tools/tool.helpers.js.map +0 -1
  504. package/dist/tools/tool.registry.d.ts.map +0 -1
  505. package/dist/tools/tool.registry.js.map +0 -1
  506. package/dist/tools/utility.tools.d.ts.map +0 -1
  507. package/dist/tools/utility.tools.js +0 -107
  508. package/dist/tools/utility.tools.js.map +0 -1
  509. package/dist/types/chat-streaming.types.d.ts.map +0 -1
  510. package/dist/types/chat-streaming.types.js.map +0 -1
  511. /package/dist/{types → chat}/chat-streaming.types.d.ts +0 -0
  512. /package/dist/{types → chat}/chat-streaming.types.js +0 -0
  513. /package/dist/{agents → chat}/chat.prompt.js +0 -0
  514. /package/dist/{agents → chat}/chat.prompt.modules.js +0 -0
  515. /package/dist/{states → chat}/chat.state.js +0 -0
  516. /package/dist/{agents → chat}/chat.title.generator.d.ts +0 -0
  517. /package/dist/{support → chat}/chat.utils.d.ts +0 -0
  518. /package/dist/{support → chat}/chat.utils.js +0 -0
  519. /package/dist/{graphs → chat}/tests/chat.graph.mocks.js +0 -0
  520. /package/dist/{agents → intent}/intent.clarifier.d.ts +0 -0
  521. /package/dist/{agents → intent}/intent.indexer.d.ts +0 -0
  522. /package/dist/{agents → intent}/intent.inferrer.d.ts +0 -0
  523. /package/dist/{agents → intent}/intent.reconciler.d.ts +0 -0
  524. /package/dist/{states → intent}/intent.state.js +0 -0
  525. /package/dist/{agents → intent}/intent.verifier.d.ts +0 -0
  526. /package/dist/{states → maintenance}/maintenance.state.js +0 -0
  527. /package/dist/{agents → negotiation}/negotiation.insights.generator.d.ts +0 -0
  528. /package/dist/{states → network}/network.state.d.ts +0 -0
  529. /package/dist/{states → network}/network.state.js +0 -0
  530. /package/dist/{support → opportunity/feed}/feed.health.d.ts +0 -0
  531. /package/dist/{states → opportunity}/opportunity.state.js +0 -0
  532. /package/dist/{agents → profile}/profile.generator.d.ts +0 -0
  533. /package/dist/{agents → profile}/profile.hyde.generator.d.ts +0 -0
  534. /package/dist/{states → profile}/profile.state.js +0 -0
  535. /package/dist/{agents → shared/agent}/model.config.d.ts +0 -0
  536. /package/dist/{agents → shared/agent}/model.config.js +0 -0
  537. /package/dist/{support → shared/agent}/tests/llm-assert.d.ts +0 -0
  538. /package/dist/{support → shared/agent}/tests/llm-assert.js +0 -0
  539. /package/dist/{tools → shared/agent}/tool.helpers.js +0 -0
  540. /package/dist/{tools → shared/agent}/tool.registry.d.ts +0 -0
  541. /package/dist/{tools → shared/agent}/utility.tools.d.ts +0 -0
  542. /package/dist/{agents → shared/hyde}/hyde.generator.d.ts +0 -0
  543. /package/dist/{states → shared/hyde}/hyde.state.js +0 -0
  544. /package/dist/{agents → shared/hyde}/hyde.strategies.d.ts +0 -0
  545. /package/dist/{agents → shared/hyde}/hyde.strategies.js +0 -0
  546. /package/dist/{agents → shared/hyde}/lens.inferrer.d.ts +0 -0
  547. /package/dist/{interfaces → shared/interfaces}/auth.interface.d.ts +0 -0
  548. /package/dist/{interfaces → shared/interfaces}/auth.interface.js +0 -0
  549. /package/dist/{interfaces → shared/interfaces}/cache.interface.d.ts +0 -0
  550. /package/dist/{interfaces → shared/interfaces}/cache.interface.js +0 -0
  551. /package/dist/{interfaces → shared/interfaces}/chat-session.interface.d.ts +0 -0
  552. /package/dist/{interfaces → shared/interfaces}/chat-session.interface.js +0 -0
  553. /package/dist/{interfaces → shared/interfaces}/contact.interface.d.ts +0 -0
  554. /package/dist/{interfaces → shared/interfaces}/contact.interface.js +0 -0
  555. /package/dist/{interfaces → shared/interfaces}/database.interface.js +0 -0
  556. /package/dist/{interfaces → shared/interfaces}/embedder.interface.js +0 -0
  557. /package/dist/{interfaces → shared/interfaces}/enrichment.interface.d.ts +0 -0
  558. /package/dist/{interfaces → shared/interfaces}/enrichment.interface.js +0 -0
  559. /package/dist/{interfaces → shared/interfaces}/integration.interface.d.ts +0 -0
  560. /package/dist/{interfaces → shared/interfaces}/integration.interface.js +0 -0
  561. /package/dist/{interfaces → shared/interfaces}/queue.interface.d.ts +0 -0
  562. /package/dist/{interfaces → shared/interfaces}/queue.interface.js +0 -0
  563. /package/dist/{interfaces → shared/interfaces}/scraper.interface.d.ts +0 -0
  564. /package/dist/{interfaces → shared/interfaces}/scraper.interface.js +0 -0
  565. /package/dist/{interfaces → shared/interfaces}/storage.interface.d.ts +0 -0
  566. /package/dist/{interfaces → shared/interfaces}/storage.interface.js +0 -0
  567. /package/dist/{support → shared/observability}/debug-meta.sanitizer.d.ts +0 -0
  568. /package/dist/{support → shared/observability}/debug-meta.sanitizer.js +0 -0
  569. /package/dist/{support → shared/observability}/log.d.ts +0 -0
  570. /package/dist/{support → shared/observability}/log.js +0 -0
  571. /package/dist/{support → shared/observability}/performance.d.ts +0 -0
  572. /package/dist/{support → shared/observability}/performance.js +0 -0
  573. /package/dist/{support → shared/observability}/protocol.logger.d.ts +0 -0
  574. /package/dist/{support → shared/observability}/protocol.logger.js +0 -0
  575. /package/dist/{support → shared/observability}/request-context.d.ts +0 -0
  576. /package/dist/{support → shared/observability}/request-context.js +0 -0
  577. /package/dist/{support → shared/ui}/lucide.icon-catalog.d.ts +0 -0
  578. /package/dist/{support → shared/ui}/lucide.icon-catalog.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opportunity.persist.d.ts","sourceRoot":"","sources":["../../src/opportunity/opportunity.persist.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,qBAAqB,EACrB,WAAW,EACX,iBAAiB,EAClB,MAAM,4CAA4C,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4CAA4C,CAAC;AAC3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAMlE,MAAM,MAAM,0BAA0B,GAAG,gBAAgB,GAAG;IAC1D,iBAAiB,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACrE,uBAAuB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,GAAG,WAAW,GAAG,IAAI,CAAC,CAAC;IACnG,6BAA6B,CAAC,CAC5B,IAAI,EAAE,qBAAqB,EAC3B,SAAS,EAAE,MAAM,EAAE,GAClB,OAAO,CAAC;QAAE,OAAO,EAAE,WAAW,CAAC;QAAC,OAAO,EAAE,WAAW,EAAE,CAAA;KAAE,CAAC,CAAC;IAC7D,kEAAkE;IAClE,cAAc,CAAC,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;CAC1D,CAAC;AAEF,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,0BAA0B,CAAC;IACrC,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,qBAAqB,EAAE,CAAC;IAC/B,UAAU,CAAC,EAAE,CAAC,WAAW,EAAE,WAAW,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC7D;AAED,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,yBAAyB,EAAE,CAAC;CACtC;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAoDlH"}
@@ -3,7 +3,7 @@
3
3
  * Used by the opportunity graph persist node and by the manual opportunity service for consistency.
4
4
  */
5
5
  import { enrichOrCreate } from './opportunity.enricher.js';
6
- import { protocolLogger } from './protocol.logger.js';
6
+ import { protocolLogger } from '../shared/observability/protocol.logger.js';
7
7
  const logger = protocolLogger('OpportunityPersist');
8
8
  /**
9
9
  * Persist one or more opportunities: enrich (merge overlapping), create, expire replaced, optional chat injection.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opportunity.persist.js","sourceRoot":"","sources":["../../src/opportunity/opportunity.persist.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,37 @@
1
1
  /**
2
- * Viewer-centric text for opportunity cards.
3
- * The card is shown to the viewer (logged-in user) and should introduce the
4
- * counterpart, not describe the viewer to themselves.
2
+ * Pure presentation layer for opportunities.
3
+ * Generates title, description, and CTA based on viewer context no DB access.
5
4
  */
5
+ import type { Opportunity } from '../shared/interfaces/database.interface.js';
6
+ export interface OpportunityPresentation {
7
+ title: string;
8
+ description: string;
9
+ callToAction: string;
10
+ }
11
+ export interface UserInfo {
12
+ id: string;
13
+ name: string;
14
+ avatar: string | null;
15
+ }
16
+ /**
17
+ * Generate presentation copy for an opportunity based on viewer context.
18
+ * Pure function — no side effects, no database access.
19
+ */
20
+ export declare function presentOpportunity(opp: Opportunity, viewerId: string, otherPartyInfo: UserInfo, introducerInfo: UserInfo | null, format: 'card' | 'email' | 'notification'): OpportunityPresentation;
21
+ export declare function stripUuids(text: string): string;
22
+ /**
23
+ * Strips introducer mentions from opportunity summary text.
24
+ * Removes patterns like:
25
+ * - "[Introducer] introduced you to [Counterpart]"
26
+ * - "[Introducer] thinks you should meet [Counterpart]"
27
+ * - "[Introducer] connected you to [Counterpart]"
28
+ * - "[Introducer] suggested you meet [Counterpart]"
29
+ *
30
+ * @param text - The text to clean (personalizedSummary)
31
+ * @param introducerName - Full name of the introducer to strip
32
+ * @returns Text with introducer mentions removed, counterpart preserved
33
+ */
34
+ export declare function stripIntroducerMentions(text: string, introducerName: string | undefined): string;
6
35
  /**
7
36
  * Returns viewer-centric main text for an opportunity card.
8
37
  * Prefers the part of the reasoning that describes the counterpart (the person
@@ -36,4 +65,4 @@ export declare function viewerCentricCardSummary(reasoning: string, counterpartN
36
65
  * @returns A short remark (max ~80 chars) suitable for the narrator chip. Never truncated with "...".
37
66
  */
38
67
  export declare function narratorRemarkFromReasoning(reasoning: string, counterpartName: string, viewerName?: string): string;
39
- //# sourceMappingURL=opportunity.card-text.d.ts.map
68
+ //# sourceMappingURL=opportunity.presentation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opportunity.presentation.d.ts","sourceRoot":"","sources":["../../src/opportunity/opportunity.presentation.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAG9E,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,WAAW,EAChB,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,QAAQ,EACxB,cAAc,EAAE,QAAQ,GAAG,IAAI,EAC/B,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,cAAc,GACxC,uBAAuB,CAsEzB;AAQD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAkB/C;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,MAAM,GAAG,SAAS,GACjC,MAAM,CAqFR;AA0BD;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,MAAM,EACvB,QAAQ,GAAE,MAAoC,EAC9C,UAAU,CAAC,EAAE,MAAM,EACnB,cAAc,CAAC,EAAE,MAAM,GACtB,MAAM,CAmGR;AAOD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,MAAM,EACvB,UAAU,CAAC,EAAE,MAAM,GAClB,MAAM,CAiDR"}
@@ -1,10 +1,171 @@
1
+ /**
2
+ * Pure presentation layer for opportunities.
3
+ * Generates title, description, and CTA based on viewer context — no DB access.
4
+ */
5
+ import { MINIMAL_MAIN_TEXT_MAX_CHARS } from "./opportunity.labels.js";
6
+ /**
7
+ * Generate presentation copy for an opportunity based on viewer context.
8
+ * Pure function — no side effects, no database access.
9
+ */
10
+ export function presentOpportunity(opp, viewerId, otherPartyInfo, introducerInfo, format) {
11
+ const myActor = opp.actors.find((a) => a.userId === viewerId);
12
+ const introducer = opp.actors.find((a) => a.role === 'introducer');
13
+ if (!myActor) {
14
+ throw new Error('Viewer is not an actor in this opportunity');
15
+ }
16
+ const otherName = otherPartyInfo.name;
17
+ let title;
18
+ let description;
19
+ let descriptionIsReasoning = false;
20
+ switch (myActor.role) {
21
+ case 'agent':
22
+ title = `You can help ${otherName}`;
23
+ description = `Based on your expertise, ${otherName} might benefit from connecting with you.`;
24
+ break;
25
+ case 'patient':
26
+ title = `${otherName} might be able to help you`;
27
+ description = `${otherName} has skills that align with what you're looking for.`;
28
+ break;
29
+ case 'peer':
30
+ title = `Potential collaboration with ${otherName}`;
31
+ description = `You and ${otherName} have complementary interests.`;
32
+ break;
33
+ case 'mentee':
34
+ title = `${otherName} could mentor you`;
35
+ description = `${otherName} has experience that could help guide your journey.`;
36
+ break;
37
+ case 'mentor':
38
+ title = `${otherName} is looking for guidance`;
39
+ description = `Your expertise could help ${otherName} on their path.`;
40
+ break;
41
+ case 'founder':
42
+ title = `${otherName} might be interested in your venture`;
43
+ description = `${otherName}'s investment focus aligns with what you're building.`;
44
+ break;
45
+ case 'investor':
46
+ title = `${otherName} is building something interesting`;
47
+ description = `${otherName}'s venture might fit your investment thesis.`;
48
+ break;
49
+ case 'party':
50
+ default:
51
+ if (introducer && introducerInfo) {
52
+ title = `${introducerInfo.name} thinks you should meet ${otherName}`;
53
+ description = opp.interpretation.reasoning;
54
+ descriptionIsReasoning = true;
55
+ }
56
+ else {
57
+ title = `Opportunity with ${otherName}`;
58
+ description = opp.interpretation.reasoning;
59
+ descriptionIsReasoning = true;
60
+ }
61
+ break;
62
+ }
63
+ if (!descriptionIsReasoning) {
64
+ description += `\n\n${opp.interpretation.reasoning}`;
65
+ }
66
+ if (format === 'notification') {
67
+ description =
68
+ description.length > 100 ? description.slice(0, 97) + '...' : description;
69
+ }
70
+ return {
71
+ title,
72
+ description,
73
+ callToAction: 'View Opportunity',
74
+ };
75
+ }
76
+ /**
77
+ * Strips UUID patterns from user-facing text to prevent internal ID leaks.
78
+ */
79
+ const UUID_PATTERN = /[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/gi;
80
+ export function stripUuids(text) {
81
+ return text
82
+ .replace(/\(([^)]*)\)/g, (_match, inner) => {
83
+ if (!UUID_PATTERN.test(inner)) {
84
+ UUID_PATTERN.lastIndex = 0;
85
+ return _match;
86
+ }
87
+ UUID_PATTERN.lastIndex = 0;
88
+ const cleaned = inner
89
+ .replace(UUID_PATTERN, '')
90
+ .replace(/,\s*,/g, ',')
91
+ .replace(/\b(?:from|and)\b/gi, '')
92
+ .replace(/^[\s,]+|[\s,]+$/g, '');
93
+ return cleaned ? `(${cleaned})` : '';
94
+ })
95
+ .replace(UUID_PATTERN, '')
96
+ .replace(/\s{2,}/g, ' ')
97
+ .trim();
98
+ }
99
+ /**
100
+ * Strips introducer mentions from opportunity summary text.
101
+ * Removes patterns like:
102
+ * - "[Introducer] introduced you to [Counterpart]"
103
+ * - "[Introducer] thinks you should meet [Counterpart]"
104
+ * - "[Introducer] connected you to [Counterpart]"
105
+ * - "[Introducer] suggested you meet [Counterpart]"
106
+ *
107
+ * @param text - The text to clean (personalizedSummary)
108
+ * @param introducerName - Full name of the introducer to strip
109
+ * @returns Text with introducer mentions removed, counterpart preserved
110
+ */
111
+ export function stripIntroducerMentions(text, introducerName) {
112
+ if (!introducerName?.trim())
113
+ return text;
114
+ const fullName = introducerName.trim();
115
+ const firstName = fullName.split(/\s+/)[0];
116
+ const namesToCheck = [fullName];
117
+ if (firstName && firstName.length > 1) {
118
+ namesToCheck.push(firstName);
119
+ }
120
+ let result = text;
121
+ for (const [idx, name] of namesToCheck.entries()) {
122
+ const escapedName = escapeRegex(name);
123
+ // Pattern: "Name introduced you to " (with or without comma, optionally with "directly")
124
+ result = result.replace(new RegExp(`\\b${escapedName}\\s+introduced\\s+you\\s+(?:directly\\s+)?to\\s*`, "gi"), "");
125
+ // Pattern: "Name thinks you should meet "
126
+ result = result.replace(new RegExp(`\\b${escapedName}\\s+thinks\\s+you\\s+should\\s+meet\\s*`, "gi"), "");
127
+ // Pattern: "Name connected you to "
128
+ result = result.replace(new RegExp(`\\b${escapedName}\\s+connected\\s+you\\s+(?:to|with)\\s*`, "gi"), "");
129
+ // Pattern: "Name suggested you meet "
130
+ result = result.replace(new RegExp(`\\b${escapedName}\\s+suggested\\s+you\\s+(?:meet|connect\\s+(?:to|with))\\s*`, "gi"), "");
131
+ // Pattern: "Name recommended you meet "
132
+ result = result.replace(new RegExp(`\\b${escapedName}\\s+recommended\\s+you\\s+(?:meet|connect)\\s*`, "gi"), "");
133
+ // Pattern: "Name thinks you and Counterpart should meet" -> remove entire phrase up to Counterpart
134
+ result = result.replace(new RegExp(`\\b${escapedName}\\s+thinks\\s+you\\s+and\\s+`, "gi"), "");
135
+ // Pattern: "Name also thought..." - remove sentences starting with Name + also/also thought
136
+ result = result.replace(new RegExp(`\\b${escapedName}\\s+(?:also\\s+)?(?:thought|thinks?|believes?|felt)\\s*`, "gi"), "");
137
+ // General: Remove any remaining standalone mention of the introducer name at sentence start.
138
+ // Only apply for fullName (idx === 0) to avoid stripping valid counterpart first names
139
+ // (e.g. "David Smith" intro to "David Johnson" → we strip "David Smith" but not "David" in "David Johnson").
140
+ if (idx === 0) {
141
+ result = result.replace(new RegExp(`(?:^|\\.\\s*)\\b${escapedName}\\s+`, "gi"), (match, offset) => {
142
+ if (offset === 0 || match.startsWith(".")) {
143
+ return match.startsWith(".") ? ". " : "";
144
+ }
145
+ return match;
146
+ });
147
+ }
148
+ }
149
+ // Clean up: remove leading/trailing whitespace and common punctuation artifacts
150
+ result = result
151
+ .replace(/^[\,\s]+/, "") // Remove leading commas/spaces
152
+ .replace(/\s{2,}/g, " ") // Normalize multiple spaces
153
+ .trim();
154
+ // Capitalize first letter if we removed from start
155
+ if (result.length > 0) {
156
+ result = result.charAt(0).toUpperCase() + result.slice(1);
157
+ }
158
+ return result;
159
+ }
160
+ // Helper function
161
+ function escapeRegex(s) {
162
+ return s.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
163
+ }
1
164
  /**
2
165
  * Viewer-centric text for opportunity cards.
3
166
  * The card is shown to the viewer (logged-in user) and should introduce the
4
167
  * counterpart, not describe the viewer to themselves.
5
168
  */
6
- import { MINIMAL_MAIN_TEXT_MAX_CHARS } from "./opportunity.constants.js";
7
- import { stripUuids, stripIntroducerMentions } from "./opportunity.sanitize.js";
8
169
  /**
9
170
  * Splits text into sentences using (?<=[.!?])\s+ (period/exclamation/question followed by whitespace).
10
171
  * Note: splits after any such punctuation, including abbreviations like "Dr." or "e.g.".
@@ -299,9 +460,6 @@ function joinTerms(terms, maxLen) {
299
460
  }
300
461
  return terms[0].slice(0, maxLen);
301
462
  }
302
- function escapeRegex(s) {
303
- return s.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
304
- }
305
463
  /**
306
464
  * Replaces viewer's name with "you"/"your" so the card addresses the viewer in second person.
307
465
  * Applied to mainText when viewerName is provided.
@@ -330,4 +488,4 @@ function replaceViewerNameWithYou(text, viewerName, otherNames) {
330
488
  }
331
489
  return out;
332
490
  }
333
- //# sourceMappingURL=opportunity.card-text.js.map
491
+ //# sourceMappingURL=opportunity.presentation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opportunity.presentation.js","sourceRoot":"","sources":["../../src/opportunity/opportunity.presentation.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,8 @@
7
7
  * and suggestedAction for chat tools and user-facing surfaces.
8
8
  */
9
9
  import { z } from "zod";
10
- import type { Opportunity } from "../interfaces/database.interface.js";
11
- import type { ChatGraphCompositeDatabase } from "../interfaces/database.interface.js";
10
+ import type { Opportunity } from "../shared/interfaces/database.interface.js";
11
+ import type { ChatGraphCompositeDatabase } from "../shared/interfaces/database.interface.js";
12
12
  /**
13
13
  * Minimal database interface required by gatherPresenterContext.
14
14
  * Any database adapter that implements these three methods can be passed.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opportunity.presenter.d.ts","sourceRoot":"","sources":["../../src/opportunity/opportunity.presenter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AAG7F;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAClC,0BAA0B,EAC1B,YAAY,GAAG,kBAAkB,GAAG,YAAY,CACjD,CAAC;AAWF,QAAA,MAAM,kBAAkB;;;;;;;;;;;;EAYtB,CAAC;AAMH,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE/E,oGAAoG;AACpG,MAAM,WAAW,sBAAuB,SAAQ,cAAc;IAC5D,yEAAyE;IACzE,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,6GAA6G;AAC7G,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;EAwB5B,CAAC;AAEH,2GAA2G;AAC3G,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAElE,gGAAgG;AAChG,MAAM,MAAM,0BAA0B,GAAG,iBAAiB,GAAG;IAC3D,kBAAkB,EAAE,MAAM,CAAC;IAC3B,oBAAoB,EAAE,MAAM,CAAC;CAC9B,CAAC;AAMF,qEAAqE;AACrE,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qGAAqG;IACrG,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,mEAAmE;IACnE,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AA8GD,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,KAAK,CAAW;IACxB,OAAO,CAAC,aAAa,CAAW;;YAWlB,iBAAiB;IA4B/B;;OAEG;IAEU,OAAO,CAClB,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC,6BAA6B,CAAC;IAkDzC;;;OAGG;IAEU,eAAe,CAC1B,KAAK,EAAE,sBAAsB,GAC5B,OAAO,CAAC,iBAAiB,CAAC;IAgF7B;;OAEG;IAEU,YAAY,CACvB,MAAM,EAAE,cAAc,EAAE,EACxB,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GACjC,OAAO,CAAC,6BAA6B,EAAE,CAAC;IAa3C;;;OAGG;IAEU,oBAAoB,CAC/B,MAAM,EAAE,sBAAsB,EAAE,EAChC,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GACjC,OAAO,CAAC,iBAAiB,EAAE,CAAC;CAYhC;AAMD;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,iBAAiB,EAC3B,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,MAAM,EAChB,wBAAwB,CAAC,EAAE,MAAM,GAChC,OAAO,CAAC,cAAc,CAAC,CAmLzB"}
@@ -17,11 +17,11 @@ var __metadata = (this && this.__metadata) || function (k, v) {
17
17
  };
18
18
  import { HumanMessage, SystemMessage } from "@langchain/core/messages";
19
19
  import { z } from "zod";
20
- import { Timed } from "../support/performance.js";
21
- import { protocolLogger } from "../support/protocol.logger.js";
22
- import { createModel } from "./model.config.js";
23
- import { viewerCentricCardSummary } from "../support/opportunity.card-text.js";
24
- import { stripUuids, stripIntroducerMentions } from "../support/opportunity.sanitize.js";
20
+ import { Timed } from "../shared/observability/performance.js";
21
+ import { protocolLogger } from "../shared/observability/protocol.logger.js";
22
+ import { createModel } from "../shared/agent/model.config.js";
23
+ import { viewerCentricCardSummary } from "./opportunity.presentation.js";
24
+ import { stripUuids, stripIntroducerMentions } from "./opportunity.presentation.js";
25
25
  const logger = protocolLogger("OpportunityPresenter");
26
26
  const LLM_TIMEOUT_MS = 20000;
27
27
  const model = createModel("opportunityPresenter");
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opportunity.presenter.js","sourceRoot":"","sources":["../../src/opportunity/opportunity.presenter.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import type { Id } from '../interfaces/database.interface.js';
2
- import type { OpportunityStatus, Opportunity } from '../interfaces/database.interface.js';
3
- import type { Lens } from '../interfaces/embedder.interface.js';
4
- import type { EvaluatorEntity } from '../agents/opportunity.evaluator.js';
5
- import type { DebugMetaAgent } from '../types/chat-streaming.types.js';
1
+ import type { Id } from '../shared/interfaces/database.interface.js';
2
+ import type { OpportunityStatus, Opportunity } from '../shared/interfaces/database.interface.js';
3
+ import type { Lens } from '../shared/interfaces/embedder.interface.js';
4
+ import type { EvaluatorEntity } from './opportunity.evaluator.js';
5
+ import type { DebugMetaAgent } from '../chat/chat-streaming.types.js';
6
6
  /**
7
7
  * Opportunity Graph State (Linear Multi-Step Workflow)
8
8
  *
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opportunity.state.d.ts","sourceRoot":"","sources":["../../src/opportunity/opportunity.state.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opportunity.state.js","sourceRoot":"","sources":["../../src/opportunity/opportunity.state.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import type { DefineTool, ToolDeps } from "./tool.helpers.js";
2
- import type { Opportunity } from "../interfaces/database.interface.js";
1
+ import type { DefineTool, ToolDeps } from "../shared/agent/tool.helpers.js";
2
+ import type { Opportunity } from "../shared/interfaces/database.interface.js";
3
3
  /**
4
4
  * Build minimal opportunity card data for chat without calling the LLM presenter.
5
5
  * Uses only required fields from the opportunity record and counterpart name/avatar
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opportunity.tools.d.ts","sourceRoot":"","sources":["../../src/opportunity/opportunity.tools.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAO5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAkB9E;;;;;;;;;;;;GAYG;AACH,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,WAAW,EAChB,QAAQ,EAAE,MAAM,EAChB,iBAAiB,EAAE,MAAM,EACzB,eAAe,EAAE,MAAM,EACvB,iBAAiB,EAAE,MAAM,GAAG,IAAI,EAChC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,EAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,EAChC,UAAU,CAAC,EAAE,MAAM,EACnB,eAAe,CAAC,EAAE,MAAM,EACxB,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,EACjC,iBAAiB,CAAC,EAAE,MAAM,EAC1B,kBAAkB,CAAC,EAAE,OAAO,GAC3B;IACD,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtF,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACzE,CA6DA;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,4BAi5B5E"}
@@ -1,10 +1,10 @@
1
1
  import { z } from "zod";
2
- import { requestContext } from "../support/request-context.js";
3
- import { success, error, UUID_REGEX } from "./tool.helpers.js";
4
- import { MINIMAL_MAIN_TEXT_MAX_CHARS, getPrimaryActionLabel, SECONDARY_ACTION_LABEL } from "../support/opportunity.constants.js";
5
- import { viewerCentricCardSummary, narratorRemarkFromReasoning } from "../support/opportunity.card-text.js";
6
- import { runDiscoverFromQuery, continueDiscovery } from "../support/opportunity.discover.js";
7
- import { protocolLogger } from "../support/protocol.logger.js";
2
+ import { requestContext } from "../shared/observability/request-context.js";
3
+ import { success, error, UUID_REGEX } from "../shared/agent/tool.helpers.js";
4
+ import { MINIMAL_MAIN_TEXT_MAX_CHARS, getPrimaryActionLabel, SECONDARY_ACTION_LABEL } from "./opportunity.labels.js";
5
+ import { viewerCentricCardSummary, narratorRemarkFromReasoning } from "./opportunity.presentation.js";
6
+ import { runDiscoverFromQuery, continueDiscovery } from "./opportunity.discover.js";
7
+ import { protocolLogger } from "../shared/observability/protocol.logger.js";
8
8
  const logger = protocolLogger("ChatTools:Opportunity");
9
9
  /** Maximum number of opportunity cards to show per chat response. */
10
10
  const CHAT_DISPLAY_LIMIT = 3;
@@ -85,49 +85,53 @@ export function createOpportunityTools(defineTool, deps) {
85
85
  const { database, userDb, systemDb, graphs, embedder, cache } = deps;
86
86
  const createOpportunities = defineTool({
87
87
  name: "create_opportunities",
88
- description: "Creates opportunities (connections). NOT for looking up a specific person by name use read_user_profiles(query=name) for that.\n\n" +
89
- "Four modes:\n" +
90
- "1. **Discovery**: pass searchQuery and/or networkId. Finds matching people based on intent overlap.\n" +
91
- "2. **Introduction**: pass partyUserIds (2+ user IDs) + entities (pre-gathered profiles and intents). " +
92
- "You MUST gather profiles and intents from shared indexes BEFORE calling this. " +
93
- "Optionally pass hint (the user's reason for the introduction).\n" +
94
- "3. **Direct connection**: pass targetUserId (a single user ID) + searchQuery (reason for connecting). " +
95
- "Creates an opportunity between the current user and the target user.\n" +
96
- "4. **Introducer discovery**: pass introTargetUserId (user ID to find matches FOR). " +
97
- "Discovers matches for that person; current user becomes the introducer. " +
98
- "Use when user asks 'who should I introduce to @Person'.\n\n" +
99
- "Results are saved as drafts; use update_opportunity(status='pending') to send.",
88
+ description: "Creates opportunities discovered connections between users based on complementary intents. Opportunities are the core output " +
89
+ "of the discovery engine, representing potential valuable connections between people.\n\n" +
90
+ "**NOT for person lookup** use read_user_profiles(query=name) to find people by name.\n\n" +
91
+ "**Four modes:**\n" +
92
+ "1. **Discovery** (most common): pass `searchQuery` and/or `networkId`. The system finds other users in shared indexes " +
93
+ "whose intents semantically complement the query. Uses HyDE embeddings and LLM evaluation for scoring.\n" +
94
+ "2. **Introduction**: pass `partyUserIds` (2+ user IDs) + `entities` (pre-gathered profiles and intents from shared indexes). " +
95
+ "You MUST call read_user_profiles and read_intents for each party BEFORE calling this. " +
96
+ "Optionally pass `hint` with the user's reason for the introduction.\n" +
97
+ "3. **Direct connection**: pass `targetUserId` + `searchQuery`. Creates an opportunity between the current user and one specific person.\n" +
98
+ "4. **Introducer discovery**: pass `introTargetUserId` (find matches FOR that person; current user becomes the introducer). " +
99
+ "Use when user asks 'who should I introduce to [person]?'\n\n" +
100
+ "**Returns:** Opportunity code blocks (render as interactive cards) with opportunityId, match reasoning, confidence score, and status. " +
101
+ "All results start as drafts. Supports pagination via `continueFrom` for large result sets.\n\n" +
102
+ "**Next steps:** Use update_opportunity(opportunityId, status='pending') to send a draft to the other party.",
100
103
  querySchema: z.object({
101
104
  continueFrom: z
102
105
  .string()
103
106
  .optional()
104
- .describe("Discovery pagination: pass the discoveryId from a previous result to evaluate more candidates."),
107
+ .describe("Pagination token: pass the discoveryId from a previous create_opportunities result to evaluate the next batch of candidates. Do not combine with other mode parameters."),
105
108
  searchQuery: z
106
109
  .string()
107
110
  .optional()
108
- .describe("Discovery mode: what to look for."),
111
+ .describe("Discovery mode: natural language description of what to look for (e.g. 'AI/ML engineers', 'startup advisors in fintech'). Drives semantic matching against other users' intents and profiles."),
109
112
  networkId: z
110
113
  .string()
111
114
  .optional()
112
- .describe("Index UUID; optional when index-scoped. Pass the personal index ID (\"My Network\") to scope discovery to the user's contacts only."),
115
+ .describe("Index UUID to scope discovery to a specific community. Get from read_networks. Defaults to the scoped index in index-scoped chats. Pass the personal index ID (from read_networks, isPersonal=true) to scope to the user's contacts only."),
113
116
  intentId: z
114
117
  .string()
115
118
  .optional()
116
- .describe("Discovery mode: optional intent to use as source and for triggeredBy (e.g. from queue)."),
119
+ .describe("Optional intent UUID to use as the discovery source. The intent's description drives matching instead of searchQuery. Get from read_intents. Typically used by background processing, not direct agent calls."),
117
120
  targetUserId: z
118
121
  .string()
119
122
  .optional()
120
- .describe("Direct connection mode: create opportunity with this specific user ID. Used when the user wants to connect with a named person."),
123
+ .describe("Direct connection mode: create an opportunity with this specific user. Get the userId from read_user_profiles(query=name). Combine with searchQuery to explain the connection reason."),
121
124
  introTargetUserId: z
122
125
  .string()
123
126
  .optional()
124
127
  .describe("Introducer discovery mode: find matches FOR this user ID (the current user becomes the introducer). " +
125
- "Use when the user asks 'who should I introduce to @Person'. " +
128
+ "Get the userId from read_user_profiles(query=name). " +
129
+ "Use when the user asks 'who should I introduce to [person]?'. " +
126
130
  "Do NOT combine with partyUserIds (that's full introduction mode)."),
127
131
  partyUserIds: z
128
132
  .array(z.string())
129
133
  .optional()
130
- .describe("Introduction mode: user IDs to introduce (at least 2)."),
134
+ .describe("Introduction mode: array of 2+ user IDs to introduce to each other. Get user IDs from read_user_profiles or read_network_memberships. Must also provide entities with pre-gathered profile/intent data."),
131
135
  entities: z
132
136
  .array(z.object({
133
137
  userId: z.string(),
@@ -153,11 +157,15 @@ export function createOpportunityTools(defineTool, deps) {
153
157
  .describe("Shared index this entity's data comes from (required for intro mode)"),
154
158
  }))
155
159
  .optional()
156
- .describe("Introduction mode: pre-gathered profiles + intents per party. Gather via read_user_profiles + read_intents before calling."),
160
+ .describe("Introduction mode: pre-gathered profile and intent data for each party being introduced. " +
161
+ "Each entry needs userId, networkId (the shared index), and optionally profile (name, bio, skills, interests) and intents (intentId, payload). " +
162
+ "Gather this data by calling read_user_profiles and read_intents for each party BEFORE calling create_opportunities. " +
163
+ "All entities must share the same networkId (the shared index where both parties are members)."),
157
164
  hint: z
158
165
  .string()
159
166
  .optional()
160
- .describe("Introduction mode: the user's reason for the intro (e.g. 'both AI devs')."),
167
+ .describe("Introduction mode: the user's reason for making this introduction (e.g. 'both working on AI in healthcare', " +
168
+ "'complementary skills for a startup'). Helps the evaluator produce better match reasoning."),
161
169
  }),
162
170
  handler: async ({ context, query }) => {
163
171
  // Strict scope enforcement: when chat is index-scoped, only allow that index
@@ -595,12 +603,18 @@ export function createOpportunityTools(defineTool, deps) {
595
603
  });
596
604
  const listOpportunities = defineTool({
597
605
  name: "list_opportunities",
598
- description: "Lists the user's opportunities (suggested connections). Returns opportunity cards to display. When chat is index-scoped, only shows opportunities from that index.",
606
+ description: "Lists the authenticated user's existing opportunities (discovered connections). Returns opportunity cards ready for display.\n\n" +
607
+ "**What are opportunities?** Matches between users whose intents complement each other within shared indexes. " +
608
+ "Each opportunity has a status: draft (not yet sent), pending (sent, awaiting response), accepted, rejected, or expired.\n\n" +
609
+ "**When to use:** When the user wants to see their current connections/matches, check the status of previously discovered opportunities, " +
610
+ "or review what's waiting for their response.\n\n" +
611
+ "**Returns:** Up to 3 opportunity code blocks (interactive cards) with counterpart name, match reasoning, confidence score, " +
612
+ "and current status. Use update_opportunity to act on them (send, accept, reject).",
599
613
  querySchema: z.object({
600
614
  networkId: z
601
615
  .string()
602
616
  .optional()
603
- .describe("Index UUID filter; defaults to current index when scoped."),
617
+ .describe("Index UUID to filter opportunities to a specific community. Get from read_networks. Defaults to the scoped index in index-scoped chats. Omit to see opportunities across all indexes."),
604
618
  }),
605
619
  handler: async ({ context, query }) => {
606
620
  // Strict scope enforcement: when chat is index-scoped, only allow that index
@@ -761,14 +775,24 @@ export function createOpportunityTools(defineTool, deps) {
761
775
  });
762
776
  const updateOpportunity = defineTool({
763
777
  name: "update_opportunity",
764
- description: "Updates an opportunity's status. Use 'pending' to send a draft (notifies next person). Use 'accepted'/'rejected' to respond to a received opportunity. When chat is index-scoped, can only update opportunities from that index.",
778
+ description: "Updates an opportunity's status, advancing it through the connection lifecycle.\n\n" +
779
+ "**Status transitions:**\n" +
780
+ "- `pending`: Sends a draft opportunity to the other party. They'll be notified and can accept or reject. " +
781
+ "This is the primary action after create_opportunities returns a draft.\n" +
782
+ "- `accepted`: Accept a received opportunity — signals interest in connecting. Both parties can now communicate.\n" +
783
+ "- `rejected`: Decline a received opportunity.\n" +
784
+ "- `expired`: Mark as expired (typically done by the system after timeout).\n\n" +
785
+ "**When to use:** After create_opportunities or list_opportunities returns opportunity cards. " +
786
+ "The user clicks 'Send' (pending), 'Accept', or 'Reject' on the card, and the agent calls this tool.\n\n" +
787
+ "**Returns:** Confirmation with the new status and notification details (who was notified).",
765
788
  querySchema: z.object({
766
789
  opportunityId: z
767
790
  .string()
768
- .describe("Opportunity ID from list_opportunities"),
791
+ .describe("The UUID of the opportunity to update. Get from create_opportunities or list_opportunities results."),
769
792
  status: z
770
793
  .enum(["pending", "accepted", "rejected", "expired"])
771
- .describe("New status: pending (send draft), accepted, rejected, expired"),
794
+ .describe("New status: 'pending' = send the draft to the other party, 'accepted' = accept the connection, " +
795
+ "'rejected' = decline, 'expired' = mark as timed out."),
772
796
  }),
773
797
  handler: async ({ context, query }) => {
774
798
  const opportunityId = query.opportunityId?.trim();