@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,286 +0,0 @@
1
- import { Annotation } from "@langchain/langgraph";
2
- import { z } from "zod";
3
- import { AskUserPayloadSchema, NEGOTIATION_ACTIONS } from "../shared/schemas/negotiation-state.schema.js";
4
- /**
5
- * Zod schema for a single negotiation turn (DataPart payload in A2A message).
6
- * Accepts the full v1+v2 action union — which subset is valid for a given turn
7
- * is enforced by the seat-scoped schemas in `negotiation.protocol.ts`.
8
- */
9
- export const NegotiationTurnSchema = z.object({
10
- action: z.enum(NEGOTIATION_ACTIONS),
11
- assessment: z.object({
12
- reasoning: z.string(),
13
- suggestedRoles: z.object({
14
- ownUser: z.enum(["agent", "patient", "peer"]),
15
- otherUser: z.enum(["agent", "patient", "peer"]),
16
- }),
17
- }),
18
- message: z.string().nullable().optional(),
19
- /** Present when action is `ask_user` (v2, P3.2). */
20
- askUser: AskUserPayloadSchema.nullable().optional(),
21
- });
22
- /** Restricted v1 turn schema for the system agent (no question action). */
23
- export const SystemNegotiationTurnSchema = z.object({
24
- action: z.enum(["propose", "accept", "reject", "counter"]),
25
- assessment: z.object({
26
- reasoning: z.string(),
27
- suggestedRoles: z.object({
28
- ownUser: z.enum(["agent", "patient", "peer"]),
29
- otherUser: z.enum(["agent", "patient", "peer"]),
30
- }),
31
- }),
32
- message: z.string().nullable().optional(),
33
- });
34
- /** v1 turn schema for system agent's final allowed turn (must decide). */
35
- export const FinalNegotiationTurnSchema = z.object({
36
- action: z.enum(["accept", "reject"]),
37
- assessment: z.object({
38
- reasoning: z.string(),
39
- suggestedRoles: z.object({
40
- ownUser: z.enum(["agent", "patient", "peer"]),
41
- otherUser: z.enum(["agent", "patient", "peer"]),
42
- }),
43
- }),
44
- message: z.string().nullable().optional(),
45
- });
46
- /** Zod schema for the negotiation outcome (Artifact payload on COMPLETED task). */
47
- export const NegotiationOutcomeSchema = z.object({
48
- hasOpportunity: z.boolean(),
49
- agreedRoles: z.array(z.object({
50
- userId: z.string(),
51
- role: z.enum(["agent", "patient", "peer"]),
52
- })),
53
- reasoning: z.string(),
54
- turnCount: z.number(),
55
- reason: z.enum(["turn_cap", "timeout", "screened_out"]).optional(),
56
- });
57
- /** LangGraph state annotation for the negotiation graph. */
58
- export const NegotiationGraphState = Annotation.Root({
59
- sourceUser: Annotation({
60
- reducer: (curr, next) => next ?? curr,
61
- default: () => ({ id: "", intents: [], profile: {} }),
62
- }),
63
- candidateUser: Annotation({
64
- reducer: (curr, next) => next ?? curr,
65
- default: () => ({ id: "", intents: [], profile: {} }),
66
- }),
67
- sourceIntentId: Annotation({
68
- reducer: (curr, next) => next ?? curr,
69
- default: () => undefined,
70
- }),
71
- candidateIntentId: Annotation({
72
- reducer: (curr, next) => next ?? curr,
73
- default: () => undefined,
74
- }),
75
- indexContext: Annotation({
76
- reducer: (curr, next) => next ?? curr,
77
- default: () => ({ networkId: "", prompt: "" }),
78
- }),
79
- seedAssessment: Annotation({
80
- reducer: (curr, next) => next ?? curr,
81
- default: () => ({ reasoning: "", valencyRole: "" }),
82
- }),
83
- /**
84
- * Explicit initiator seat for this match (purely additive metadata — no seat
85
- * rules attach to it yet). Resolution when unset happens in the init node;
86
- * the resolved value is written back to state and into task metadata.
87
- */
88
- initiatorUserId: Annotation({
89
- reducer: (curr, next) => next ?? curr,
90
- default: () => undefined,
91
- }),
92
- /** The explicit search query that triggered discovery (if any). */
93
- discoveryQuery: Annotation({
94
- reducer: (curr, next) => next ?? curr,
95
- default: () => undefined,
96
- }),
97
- /**
98
- * Negotiation protocol version for this session's task. Resolved by the
99
- * init node: inherited from the prior task on the conversation when one
100
- * exists (never re-stamped — a v1 conversation stays v1 mid-flight), else
101
- * stamped from `NEGOTIATION_PROTOCOL_VERSION` for genuinely fresh runs.
102
- */
103
- protocolVersion: Annotation({
104
- reducer: (curr, next) => next ?? curr,
105
- default: () => "v1",
106
- }),
107
- /**
108
- * Screen-gate decision for this fresh run (P2.1 shadow mode). Written by the
109
- * screen node; null when the gate is off, on continuations, or before the
110
- * node runs. Mirrors `tasks.metadata.screenDecision`.
111
- */
112
- screenDecision: Annotation({
113
- reducer: (curr, next) => next ?? curr,
114
- default: () => null,
115
- }),
116
- /**
117
- * First applied deadlock→bargaining shift in this session (IND-428).
118
- * Written by the turn node when the system agent first drafts in the
119
- * bargaining stance; used to record the shift exactly once per session.
120
- * Internal analytics only — mirrored to `tasks.metadata.deadlockShift`,
121
- * never into any turn payload or public projection.
122
- */
123
- deadlockShift: Annotation({
124
- reducer: (curr, next) => next ?? curr,
125
- default: () => null,
126
- }),
127
- /**
128
- * Per-side negotiator-memory cache (P5.3 read path). Populated lazily the
129
- * first time each side's memory is retrieved (screen node for the client,
130
- * turn node for the speaker) so a multi-turn session pays for retrieval at
131
- * most once per side. `undefined` per side = not yet retrieved; `[]` =
132
- * retrieved and empty (flag off / no rows / retrieval failed).
133
- */
134
- memoryBySide: Annotation({
135
- reducer: (curr, next) => ({ ...curr, ...next }),
136
- default: () => ({}),
137
- }),
138
- /** Whether this run is continuing a prior conversation with the same pair. */
139
- isContinuation: Annotation({
140
- reducer: (curr, next) => next ?? curr,
141
- default: () => false,
142
- }),
143
- /**
144
- * Immutable attributed prior dialogue derived once in the init node from the
145
- * seeded prior messages (IND-569). Groups earlier-opportunity turns and
146
- * legacy unattributed turns so the screen node and every turn prompt can
147
- * label prior context per opportunity. Null on fresh runs / when there is no
148
- * seeded prior dialogue. Typed as `unknown` to avoid a module cycle
149
- * (attribution module imports NegotiationTurn from this module's shim);
150
- * callers cast to `SeededAttribution` via the negotiation.attribution module.
151
- */
152
- priorAttribution: Annotation({
153
- reducer: (curr, next) => next ?? curr,
154
- default: () => null,
155
- }),
156
- /**
157
- * Whether the initiator has actually opened `outreach` within THIS task
158
- * (IND-564). Set by the turn node the first time an `outreach` turn is
159
- * persisted in the current session; seeded prior-task turns never flip it.
160
- * `withdraw` is only legal after an in-task outreach — a withdraw before one
161
- * would retract an outreach never made here and drop a spurious message into
162
- * the shared thread, so the turn node maps it to a quiet screen-out instead.
163
- */
164
- outreachOpened: Annotation({
165
- reducer: (curr, next) => next ?? curr,
166
- default: () => false,
167
- }),
168
- /**
169
- * Set by the turn node when an opening-move `withdraw` (no in-task outreach)
170
- * was blocked (IND-564). Signals finalize to record the quiet screen-out
171
- * outcome (`reason: "screened_out"`, opportunity `rejected`) without ever
172
- * persisting the withdraw message into the shared `dm_pair` conversation.
173
- */
174
- firstTurnScreenedOut: Annotation({
175
- reducer: (curr, next) => next ?? curr,
176
- default: () => false,
177
- }),
178
- opportunityId: Annotation({
179
- reducer: (curr, next) => next ?? curr,
180
- default: () => "",
181
- }),
182
- /** Exact persisted lifecycle state claimed by this negotiation attempt. */
183
- opportunityStatus: Annotation({
184
- reducer: (curr, next) => next ?? curr,
185
- default: () => undefined,
186
- }),
187
- opportunityUpdatedAt: Annotation({
188
- reducer: (curr, next) => next ?? curr,
189
- default: () => undefined,
190
- }),
191
- /** Exact prior task selected by a durable continuation; bypasses latest-task lookup. */
192
- resumeFromTaskId: Annotation({
193
- reducer: (curr, next) => next ?? curr,
194
- default: () => undefined,
195
- }),
196
- /** Deterministic settlement key used to idempotently reuse a successor task. */
197
- continuationSettlementId: Annotation({
198
- reducer: (curr, next) => next ?? curr,
199
- default: () => undefined,
200
- }),
201
- continuationExecution: Annotation({
202
- reducer: (curr, next) => next ?? curr,
203
- default: () => undefined,
204
- }),
205
- continuationReceipt: Annotation({
206
- reducer: (curr, next) => next ?? curr,
207
- default: () => undefined,
208
- }),
209
- privateConsultation: Annotation({
210
- reducer: (curr, next) => next ?? curr,
211
- default: () => undefined,
212
- }),
213
- /** Server-only IND-508 category recovered from the exact prior task binding. */
214
- consultationPolicyReason: Annotation({
215
- reducer: (curr, next) => next ?? curr,
216
- default: () => undefined,
217
- }),
218
- conversationId: Annotation({
219
- reducer: (curr, next) => next ?? curr,
220
- default: () => "",
221
- }),
222
- taskId: Annotation({
223
- reducer: (curr, next) => next ?? curr,
224
- default: () => "",
225
- }),
226
- messages: Annotation({
227
- reducer: (curr, next) => [...curr, ...(next || [])],
228
- default: () => [],
229
- }),
230
- turnCount: Annotation({
231
- reducer: (curr, next) => next ?? curr,
232
- default: () => 0,
233
- }),
234
- maxTurns: Annotation({
235
- reducer: (curr, next) => next ?? curr,
236
- default: () => undefined,
237
- }),
238
- /**
239
- * Park-window budget in milliseconds. The annotation default is a safety net
240
- * for any caller that omits the field — keep it aligned with
241
- * `AMBIENT_PARK_WINDOW_MS` in packages/protocol/src/negotiations/negotiation.tools.ts.
242
- * Inlined rather than imported to avoid a state↔tools cycle.
243
- */
244
- timeoutMs: Annotation({
245
- reducer: (curr, next) => next ?? curr,
246
- default: () => 5 * 60 * 1000,
247
- }),
248
- currentSpeaker: Annotation({
249
- reducer: (curr, next) => next ?? curr,
250
- default: () => "source",
251
- }),
252
- lastTurn: Annotation({
253
- reducer: (curr, next) => next ?? curr,
254
- default: () => null,
255
- }),
256
- /**
257
- * Graph status.
258
- * - `active` — agents are exchanging turns (default)
259
- * - `waiting_for_agent` — graph suspended; awaiting external agent response or timeout
260
- * - `input_required` — graph suspended on an `ask_user` pause; awaiting the
261
- * negotiator's own client (answer or 24 h window expiry resumes it)
262
- * - `completed` — negotiation finalized (accept/reject/turn-cap/timeout)
263
- */
264
- status: Annotation({
265
- reducer: (curr, next) => next ?? curr,
266
- default: () => 'active',
267
- }),
268
- /** Number of turns present in the conversation before this session started. */
269
- priorTurnCount: Annotation({
270
- reducer: (curr, next) => next ?? curr,
271
- default: () => 0,
272
- }),
273
- /** User answers collected by the questioner between negotiation sessions. */
274
- userAnswers: Annotation({
275
- reducer: (curr, next) => next ?? curr,
276
- default: () => [],
277
- }),
278
- outcome: Annotation({
279
- reducer: (curr, next) => next ?? curr,
280
- default: () => null,
281
- }),
282
- error: Annotation({
283
- reducer: (curr, next) => next ?? curr,
284
- default: () => null,
285
- }),
286
- });
@@ -1,25 +0,0 @@
1
- /**
2
- * NegotiationSummarizer — pure LLM pass that compresses one DiscoveryNegotiation
3
- * (potentially several KB of turn reasoning + outcome reasoning) into a
4
- * DiscoveryNegotiationDigest (≤256 bytes structured). The digest is what the decision-
5
- * question generator consumes, replacing the raw negotiation blob.
6
- *
7
- * Why: a 10-candidate discovery turn used to produce a 60+ KB prompt for the
8
- * question generator, which stalled upstream Gemini/OpenRouter routes and
9
- * dropped the connection at ~3 minutes. Per-negotiation summarization caps
10
- * the question-generator input at a fixed, predictable size.
11
- */
12
- import { type DiscoveryNegotiationDigest } from "../shared/schemas/negotiation-digest.schema.js";
13
- import type { DiscoveryNegotiation } from "../shared/schemas/discovery-question.schema.js";
14
- export declare class NegotiationSummarizer {
15
- private model;
16
- constructor();
17
- summarize(negotiation: DiscoveryNegotiation, options?: {
18
- signal?: AbortSignal;
19
- }): Promise<DiscoveryNegotiationDigest | null>;
20
- }
21
- /**
22
- * Deterministic fallback when the LLM summarizer fails or isn't wired. Produces
23
- * a minimal but valid digest so the question generator still has *some* signal.
24
- */
25
- export declare function buildFallbackDigest(n: DiscoveryNegotiation): DiscoveryNegotiationDigest;
@@ -1,101 +0,0 @@
1
- /**
2
- * NegotiationSummarizer — pure LLM pass that compresses one DiscoveryNegotiation
3
- * (potentially several KB of turn reasoning + outcome reasoning) into a
4
- * DiscoveryNegotiationDigest (≤256 bytes structured). The digest is what the decision-
5
- * question generator consumes, replacing the raw negotiation blob.
6
- *
7
- * Why: a 10-candidate discovery turn used to produce a 60+ KB prompt for the
8
- * question generator, which stalled upstream Gemini/OpenRouter routes and
9
- * dropped the connection at ~3 minutes. Per-negotiation summarization caps
10
- * the question-generator input at a fixed, predictable size.
11
- */
12
- import { HumanMessage, SystemMessage } from "@langchain/core/messages";
13
- import { createStructuredModel } from "../shared/agent/model.config.js";
14
- import { invokeWithAbortSignal } from "../shared/agent/model-signal.js";
15
- import { protocolLogger } from "../shared/observability/protocol.logger.js";
16
- import { DiscoveryNegotiationDigestSchema } from "../shared/schemas/negotiation-digest.schema.js";
17
- const logger = protocolLogger("NegotiationSummarizer");
18
- const SYSTEM_PROMPT = `You summarize one negotiation between a seeker's agent and a candidate's agent into a structured digest for downstream decision-question generation.
19
-
20
- Output requirements (ALL fields — set optional fields to null when not applicable):
21
- - counterpartyHint: copy the input field verbatim, truncated to ≤120 chars.
22
- - indexContext: copy the input field verbatim, truncated to ≤120 chars.
23
- - outcomeRole: "opportunity" when hasOpportunity=true, else "no-opportunity".
24
- - outcomeReason: when outcomeRole="no-opportunity", set to "turn_cap" / "timeout" / "screened_out" if the input's reason matches; else "rejected" (if a turn explicitly rejected) or "stalled". When outcomeRole="opportunity", set to null. "screened_out" means the seeker's own agent chose not to reach out before any turn was exchanged — never describe it as the candidate declining or stalling.
25
- - keyTake: ONE sentence (≤180 chars). Describe the decisive moment, the alignment gap, or the recurring signal — anything a question generator could use to formulate a clarifying question. NOT a generic outcome restatement. Anchor in a concrete detail from the negotiation if possible (a role mismatch, a missing input the candidate flagged, a pivot one party suggested).
26
- - suggestedRoles: when both parties agreed on roles (the last turn's suggestedRoles), copy them from input. Otherwise set to null.
27
-
28
- Do not include candidate identity, PII, names, or IDs. Reuse only counterpartyHint and indexContext as provided.`;
29
- function buildUserPrompt(n) {
30
- const turnLines = n.turns
31
- .map((t, i) => `[${i + 1}] action=${t.action} roles=${t.suggestedRoles.ownUser}↔${t.suggestedRoles.otherUser} reasoning=${t.reasoning}`)
32
- .join("\n");
33
- return [
34
- `counterpartyHint: ${n.counterpartyHint}`,
35
- `indexContext: ${n.indexContext}`,
36
- `turns (${n.turns.length}):`,
37
- turnLines || "(no turns)",
38
- `outcome.hasOpportunity: ${n.outcome.hasOpportunity}`,
39
- `outcome.reasoning: ${n.outcome.reasoning}`,
40
- n.outcome.reason ? `outcome.reason: ${n.outcome.reason}` : "",
41
- ]
42
- .filter(Boolean)
43
- .join("\n");
44
- }
45
- export class NegotiationSummarizer {
46
- constructor() {
47
- this.model = createStructuredModel("negotiationSummarizer", DiscoveryNegotiationDigestSchema, {
48
- name: "negotiation_digest",
49
- });
50
- }
51
- async summarize(negotiation, options) {
52
- const user = buildUserPrompt(negotiation);
53
- let raw;
54
- try {
55
- raw = await invokeWithAbortSignal(this.model, [new SystemMessage(SYSTEM_PROMPT), new HumanMessage(user)], options?.signal);
56
- }
57
- catch (err) {
58
- const aborted = options?.signal?.aborted ?? false;
59
- if (aborted) {
60
- logger.info("NegotiationSummarizer aborted by signal", {
61
- reason: options?.signal?.reason instanceof Error ? options.signal.reason.message : String(options?.signal?.reason ?? "unknown"),
62
- });
63
- }
64
- else {
65
- logger.warn("NegotiationSummarizer LLM call failed", {
66
- error: err instanceof Error ? err.message : String(err),
67
- });
68
- }
69
- return null;
70
- }
71
- const parsed = DiscoveryNegotiationDigestSchema.safeParse(raw);
72
- if (!parsed.success) {
73
- logger.warn("NegotiationSummarizer parse failed", { error: parsed.error.message });
74
- return null;
75
- }
76
- return parsed.data;
77
- }
78
- }
79
- /**
80
- * Deterministic fallback when the LLM summarizer fails or isn't wired. Produces
81
- * a minimal but valid digest so the question generator still has *some* signal.
82
- */
83
- export function buildFallbackDigest(n) {
84
- const outcomeRole = n.outcome.hasOpportunity ? "opportunity" : "no-opportunity";
85
- const lastTurn = n.turns[n.turns.length - 1];
86
- const keyTakeRaw = n.outcome.reasoning && n.outcome.reasoning.trim().length > 0
87
- ? n.outcome.reasoning
88
- : `${n.turns.length} turn(s); ended ${outcomeRole}`;
89
- return {
90
- counterpartyHint: n.counterpartyHint.slice(0, 120),
91
- indexContext: n.indexContext.slice(0, 120),
92
- outcomeRole,
93
- outcomeReason: outcomeRole === "no-opportunity"
94
- ? (n.outcome.reason ?? "stalled")
95
- : null,
96
- keyTake: keyTakeRaw.slice(0, 180),
97
- suggestedRoles: lastTurn?.action === "accept" && lastTurn.suggestedRoles
98
- ? lastTurn.suggestedRoles
99
- : null,
100
- };
101
- }
@@ -1,10 +0,0 @@
1
- /**
2
- * Whether a persisted negotiation task still admits an exclusive conversation
3
- * lock. A paused `ask_user` consultation holds the lock for its complete
4
- * answer window plus expiry-worker slack; ordinary active turns use the
5
- * existing five-minute freshness window.
6
- */
7
- export declare function holdsNegotiationConversationLock(task: {
8
- state: string;
9
- updatedAt: Date;
10
- }, now?: number): boolean;
@@ -1,22 +0,0 @@
1
- import { ASK_USER_LOCK_SLACK_MS, askUserAnswerWindowMs } from "./negotiation.protocol.js";
2
- const ACTIVE_NEGOTIATION_TASK_STATES = [
3
- "submitted",
4
- "working",
5
- "input_required",
6
- "waiting_for_agent",
7
- "claimed",
8
- ];
9
- /**
10
- * Whether a persisted negotiation task still admits an exclusive conversation
11
- * lock. A paused `ask_user` consultation holds the lock for its complete
12
- * answer window plus expiry-worker slack; ordinary active turns use the
13
- * existing five-minute freshness window.
14
- */
15
- export function holdsNegotiationConversationLock(task, now = Date.now()) {
16
- if (!ACTIVE_NEGOTIATION_TASK_STATES.includes(task.state))
17
- return false;
18
- const freshnessMs = task.state === "input_required"
19
- ? askUserAnswerWindowMs() + ASK_USER_LOCK_SLACK_MS
20
- : 5 * 60 * 1000;
21
- return now - new Date(task.updatedAt).getTime() < freshnessMs;
22
- }
@@ -1,18 +0,0 @@
1
- import type { DefineTool } from '../shared/agent/tool.helpers.js';
2
- import type { NegotiationToolDeps } from './negotiation.tools.port.js';
3
- export { buildLifecycleNarration } from './negotiation.lifecycle-narration.js';
4
- /**
5
- * Default park-window budget for ambient (background) negotiations. When a personal
6
- * agent is fresh, the dispatcher parks the turn and this is how long we wait before
7
- * the system agent takes over as a fallback.
8
- *
9
- * Short enough that ambient opportunities materialize in minutes (not hours),
10
- * long enough to cover two full polling cycles (30s * 2 = 60s) plus an agent
11
- * subagent turn. 5 minutes gives generous headroom.
12
- */
13
- export declare const AMBIENT_PARK_WINDOW_MS: number;
14
- /**
15
- * Creates negotiation MCP tools for external agent access.
16
- * Exposes negotiation state for listing, reading, and responding to bilateral negotiations.
17
- */
18
- export declare function createNegotiationTools(defineTool: DefineTool, deps: NegotiationToolDeps): readonly [any, any, any];