@indexnetwork/protocol 22.0.0-rc.499.1 → 64.0.0-rc.604.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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,246 +0,0 @@
1
- /**
2
- * Canonical guidance for Index Network protocol operations.
3
- *
4
- * This is the single normative source for:
5
- * - Entity model and identity/context definitions
6
- * - Premise, signal, community, network, and opportunity concepts
7
- * - Negotiation semantics (owner approval vs A2A acceptance)
8
- * - H2A and A2A collaboration (H2H is never exposed)
9
- * - Retired vocabulary (no contact/Gmail/scrape/profile/ghost-user guidance)
10
- *
11
- * Wired into:
12
- * - MCP_INSTRUCTIONS (packages/protocol/src/mcp/mcp.server.ts)
13
- * - read_docs tool (packages/protocol/src/shared/agent/utility.tools.ts)
14
- *
15
- * IND-602, IND-603
16
- */
17
- export const CANONICAL_GUIDANCE_TOPICS = [
18
- "identity-context",
19
- "premises",
20
- "signals",
21
- "communities-networks",
22
- "opportunities",
23
- "negotiations",
24
- "workflows",
25
- ];
26
- /**
27
- * Summary of canonical entity model and protocol semantics.
28
- * Used in MCP_INSTRUCTIONS and as read_docs summary across all surfaces.
29
- * Never mentions retired contact/Gmail/scrape/profile/ghost-user guidance.
30
- * Optimized to ~1900 chars to leave room for MCP_INSTRUCTIONS context budget.
31
- */
32
- export const CANONICAL_GUIDANCE_SUMMARY = `# Index Network Protocol
33
-
34
- Index Network is a private, intent-driven discovery protocol. Users express signals (intents), agents find matches within shared networks, and decisions proceed through clear gates.
35
-
36
- ## Core Concepts
37
-
38
- **Identity & Context** — Account and presentation metadata plus scoped runtime state (networks, signals, stage).
39
-
40
- **Premises** — Foundational facts: background, experience, stage, timeline, constraints.
41
-
42
- **Signals** — What users seek (intents, opportunities). Drive semantic matching.
43
-
44
- **Communities & Networks** — Private groups where members share signals and discover connections via shared membership.
45
-
46
- **Opportunities** — Discovered matches between users. Lifecycle: draft → pending → accepted/rejected/expired.
47
-
48
- **Negotiations** — Agents coordinate, users approve. **A2A acceptance is not owner approval.** These are separate gates.
49
-
50
- **Workflows** — H2A (users express signals → agents discover) and A2A (agents coordinate) over MCP. Further escalation via native surfaces (human-to-human threads do not cross MCP).
51
-
52
- ## Canonical Topics
53
-
54
- Refer to these for detailed entity facts and lifecycle:
55
-
56
- - **identity-context** — Presentation identity, context scoping, matching inputs
57
- - **premises** — Background, stage, constraints
58
- - **signals** — Intent inference, classification
59
- - **communities-networks** — Membership, auto-assign
60
- - **opportunities** — Discovery, roles, reasoning
61
- - **negotiations** — Owner approval vs A2A, acceptance gates
62
- - **workflows** — H2A and A2A tool sequences`;
63
- /**
64
- * Detailed canonical topic content for read_docs.
65
- * Indexed by topic name; each contains current entity, capability, and lifecycle facts.
66
- */
67
- export const CANONICAL_GUIDANCE_TOPICS_CONTENT = {
68
- "identity-context": `## Identity & Context
69
-
70
- **Identity** is account and presentation metadata: name, bio, location, skills, interests, and social links. It identifies and presents the user; it does not provide a profile-vector matching corpus.
71
-
72
- **Context** is scoped runtime state: network memberships, approved signals, lifecycle stage, and current opportunity or negotiation state. It determines the user's active scope and available workflow state.
73
-
74
- ### Matching Inputs
75
- Matching uses approved signals, premises, shared network membership, and current opportunity or negotiation state. Premises supply the asserted background, constraints, and capabilities that ground relevant matches.
76
-
77
- ### Context Scoping
78
- - Users can belong to multiple networks
79
- - Each network has a scope (open to all members or invite-only)
80
- - Matching is scoped to shared networks
81
-
82
- ### Key Distinction
83
- Identity is account/presentation metadata. Context is dynamic, scoped runtime state for what the user is doing now.`,
84
- premises: `## Premises
85
-
86
- **Premise** is the foundational context that shapes what matches will be relevant: a user's background, experience level, location, timeline, stage of life, constraints, and what they can actually commit to.
87
-
88
- ### Premise Examples
89
- - "I'm a junior developer with 2 years of Python experience"
90
- - "I'm based in Berlin and can't relocate"
91
- - "I'm looking to start a company but can only contribute part-time until March"
92
- - "I've exited twice and have capital to invest"
93
-
94
- ### Why Premises Matter
95
- Premises filter and prioritize candidates. Two opportunities with identical signal overlap will rank differently based on whose premises align. A senior engineer may look for "growing engineers" (premise: mentor/investor) vs "equal partners" (premise: cofounder).
96
-
97
- ### Expressing Premises
98
- - In profile: bio section and skills/interests summarize professional premise
99
- - In intents: the description should include stage, timeline, and constraints
100
- - In context: shared network membership indicates domain interest
101
-
102
- ### Premise Inference
103
- The system learns premises from:
104
- - Explicit user input (bio, intent descriptions)
105
- - Social enrichment (LinkedIn career history, GitHub project scale)
106
- - Behavioral signals (intents created, networks joined)`,
107
- signals: `## Signals
108
-
109
- **Signal** is what a user is actively looking for — an intent, a need, a role they want to fill. Signals are the atoms of discovery.
110
-
111
- ### Signal Properties
112
- - Description (free text: "Looking for a React developer for a 3-month contract in Berlin")
113
- - Summary (structured extract: role, domain, stage, geography, duration)
114
- - Confidence (0-1, how well the inference captured the user's intent)
115
- - Inference type (explicit = user stated directly; implicit = system inferred)
116
- - Embedding (semantic vector for matching)
117
-
118
- ### Signal vs Premise
119
- - **Premise** is the user's foundational context ("I'm a senior engineer in Berlin")
120
- - **Signal** is what they're seeking right now ("I'm looking for co-founders to start an AI company")
121
-
122
- ### Signal Lifecycle
123
- 1. User creates intent (explicit signal) or system infers from behavior (implicit)
124
- 2. Signal is embedded (converted to semantic vector)
125
- 3. Signal is assigned to networks (via auto-assign rules)
126
- 4. Signal participates in discovery (matched against other signals)
127
-
128
- ### Signal Best Practices
129
- - Be specific: "Senior React developer, 3-month contract, Berlin" > "Need a developer"
130
- - One signal per need: don't combine multiple requests
131
- - Update signals when context changes (location, timeline, role requirements)`,
132
- "communities-networks": `## Communities & Networks
133
-
134
- **Network** (also called "community") is a private group where members share signals and discover connections. Each network has:
135
- - Title and optional purpose prompt (describing what the network is for)
136
- - Membership list (with permissions and auto-assign settings)
137
- - Join policy (open to anyone or invite-only)
138
- - Scope for discovery (opportunities are found within shared networks)
139
-
140
- ### Network Properties
141
- - Purpose prompt: Used to evaluate whether new signals belong in this network (signals with high relevance are auto-assigned)
142
- - Join policy: "anyone" (self-join) or "invite_only" (owner invites)
143
- - Owner: Can update settings, add/remove members, delete network
144
- - Auto-assign: Members can opt in/out of automatic signal assignment
145
-
146
- ### Network Scope for Discovery
147
- - Opportunities are discovered only between members of shared networks
148
- - If two users share network A but not B, discovery in A will find them
149
- - Scoping discovery to a specific network (networkId parameter) narrows results to that community
150
-
151
- ### Community Membership
152
- - Members see all signals in the network
153
- - Members can create signals (intents) that are auto-evaluated for relevance to the network
154
- - Members can discover within the network
155
- - Permissions track member type (owner, member, contact)
156
-
157
- ### Key Constraint
158
- Discovery is networked — it only finds matches within shared networks. This privacy boundary is fundamental.`,
159
- opportunities: `## Opportunities
160
-
161
- **Opportunity** is a discovered connection between two or more users based on complementary signals and shared network membership. Each opportunity has:
162
- - Parties (the people being connected)
163
- - Roles (introducer, party)
164
- - Status (draft → pending → accepted/rejected/expired)
165
- - Match reasoning (why they're a good fit)
166
- - Confidence score (0-1 from evaluation)
167
-
168
- ### Opportunity Lifecycle
169
- 1. **Draft**: Created locally, only visible to creator. Offer to send.
170
- 2. **Pending**: Sent to recipient. They're notified and waiting.
171
- 3. **Accepted**: Recipient accepted. Both parties see the match.
172
- 4. **Rejected**: Recipient declined.
173
- 5. **Expired**: Timed out without response.
174
-
175
- ### Background Matching
176
- Approved signals are evaluated in the background. Use list_opportunities only to review persisted cards; it does not start matching.
177
-
178
- ### Opportunity Evaluation
179
- - Candidate retrieval: Uses HyDE embeddings to find semantically related signals
180
- - LLM evaluation: Scores relevance, complementarity, and actionability
181
- - Reasoning: Each opportunity includes match reasoning for the user
182
-
183
- ### Opportunity Acceptance
184
- Accepting an opportunity expresses interest in the connection. Owner acceptance (explicit user confirmation) is required for any escalation.`,
185
- negotiations: `## Negotiations
186
-
187
- **Negotiation** is how agents and users coordinate to reach decisions about matches. Two distinct gates govern acceptance:
188
-
189
- ### Agent-to-Agent (A2A) Acceptance
190
- When two agent services coordinate on behalf of their users, they may reach agreement that a match is worth pursuing. Agents veto, accept, or defer based on their user's context. This is A2A acceptance.
191
-
192
- ### Owner Approval (Human Confirmation)
193
- When a human user explicitly confirms in conversation "Yes, I want to pursue this connection", that is owner approval. Owner approval is a separate, human-driven gate.
194
-
195
- ### Critical Rule
196
- **A2A acceptance is not owner approval.** Agents can accept while humans have not yet approved. The system tracks these separately:
197
- - A2A acceptance: Agents vetted the match and recommend it
198
- - Owner approval: The human explicitly confirmed
199
-
200
- These gates are independent. Do not conflate them.
201
-
202
- ### Negotiation Workflow
203
- 1. Discovery creates draft opportunity
204
- 2. A2A coordination (agents evaluate viability)
205
- 3. A2A acceptance (agents agree to propose)
206
- 4. Opportunity sent to recipient (pending)
207
- 5. Owner review (human reads match reasoning)
208
- 6. Owner approval (human confirms)
209
- 7. Escalation (via native surfaces, not MCP)
210
-
211
- ### Rules
212
- - Track A2A and owner approval separately
213
- - Never accept without explicit user approval
214
- - Always surface reasoning to owner
215
- - Human-to-human messaging is not MCP`,
216
- workflows: `## Common Tool Workflows
217
-
218
- ### H2A: Human→Agent Discovery
219
- User expresses signals (intents). Agent discovers matches and presents reasoning.
220
-
221
- 1. User creates intents (signals)
222
- 2. Background matching evaluates approved signals
223
- 3. Agent uses list_opportunities to surface persisted matches
224
- 4. User reviews and approves (owner approval)
225
- 5. Escalation via native surfaces
226
-
227
- ### A2A: Agent→Agent Coordination
228
- Two agents coordinate on behalf of users to identify, vet, and propose matches.
229
-
230
- 1. Approved signals for User A are evaluated in the background
231
- 2. Agent B vets match from User B side (A2A negotiation)
232
- 3. Agents reach agreement (A2A acceptance)
233
- 4. Both agents present to users with shared reasoning
234
- 5. Both users approve (owner approval required)
235
- 6. Escalation via native surfaces
236
-
237
- ### MCP Scope
238
- The MCP protocol carries H2A and A2A workflows only. Escalation to direct messaging (web, Telegram, native surfaces) is outside MCP.
239
-
240
- ### Best Practices
241
- - Call read_docs to understand the domain
242
- - Create or refine approved signals in relevant shared networks; list_opportunities reviews persisted results
243
- - Present matches and reasoning to users
244
- - Get explicit owner approval before any commitment
245
- - Escalation to direct messaging is not MCP`,
246
- };
@@ -1,48 +0,0 @@
1
- /**
2
- * Canonical model-assignment authority for every protocol agent.
3
- *
4
- * The resolver is pure: callers provide the complete environment projection it
5
- * may read. Historical eval planning uses the returned all-agent map so an
6
- * unmentioned agent cannot drift behind an implicit runtime default.
7
- */
8
- export declare const CANONICAL_AGENT_MODEL_DEFAULTS: Readonly<{
9
- readonly intentInferrer: "google/gemini-2.5-flash";
10
- readonly intentIndexer: "google/gemini-2.5-flash";
11
- readonly intentVerifier: "google/gemini-2.5-flash";
12
- readonly intentReconciler: "google/gemini-2.5-flash";
13
- readonly intentClarifier: "google/gemini-2.5-flash";
14
- readonly profileGenerator: "google/gemini-2.5-flash";
15
- readonly hydeGenerator: "google/gemini-2.5-flash";
16
- readonly hydeValidator: "google/gemini-2.5-flash";
17
- readonly lensInferrer: "google/gemini-2.5-flash";
18
- readonly opportunityEvaluator: "google/gemini-2.5-flash";
19
- readonly opportunityPresenter: "google/gemini-2.5-flash";
20
- readonly negotiator: "google/gemini-2.5-flash";
21
- readonly negotiationScreener: "google/gemini-2.5-flash";
22
- readonly negotiationReflector: "google/gemini-2.5-flash";
23
- readonly homeCategorizer: "google/gemini-2.5-flash";
24
- readonly suggestionGenerator: "google/gemini-2.5-flash";
25
- readonly chatTitleGenerator: "google/gemini-2.5-flash";
26
- readonly negotiationInsights: "google/gemini-2.5-flash";
27
- readonly chatContextSummarizer: "google/gemini-2.5-flash";
28
- readonly questioner: "google/gemini-2.5-flash";
29
- readonly signalIntakePack: "google/gemini-2.5-flash";
30
- readonly negotiationSummarizer: "google/gemini-2.5-flash";
31
- readonly poolDiscriminatorMiner: "google/gemini-2.5-flash";
32
- readonly poolDiscriminatorAssigner: "google/gemini-2.5-flash";
33
- readonly negotiationEvidenceMiner: "google/gemini-2.5-flash";
34
- readonly inviteGenerator: "google/gemini-2.5-flash";
35
- readonly premiseAnalyzer: "google/gemini-2.5-flash";
36
- readonly premiseDecomposer: "google/gemini-2.5-flash";
37
- readonly premiseIndexer: "google/gemini-2.5-flash";
38
- readonly userContextGenerator: "google/gemini-2.5-flash";
39
- readonly networkRecommender: "google/gemini-2.5-flash";
40
- readonly interruptClassifier: "google/gemini-2.5-flash";
41
- readonly chat: "google/gemini-3-pro-preview";
42
- }>;
43
- export type CanonicalModelAgent = keyof typeof CANONICAL_AGENT_MODEL_DEFAULTS;
44
- export type CanonicalAllAgentModels = Readonly<Record<CanonicalModelAgent, string>>;
45
- export declare const CANONICAL_MODEL_AGENTS: readonly ("intentInferrer" | "intentIndexer" | "intentVerifier" | "intentReconciler" | "intentClarifier" | "profileGenerator" | "hydeGenerator" | "hydeValidator" | "lensInferrer" | "opportunityEvaluator" | "opportunityPresenter" | "negotiator" | "negotiationScreener" | "negotiationReflector" | "homeCategorizer" | "suggestionGenerator" | "chatTitleGenerator" | "negotiationInsights" | "chatContextSummarizer" | "questioner" | "signalIntakePack" | "negotiationSummarizer" | "poolDiscriminatorMiner" | "poolDiscriminatorAssigner" | "negotiationEvidenceMiner" | "inviteGenerator" | "premiseAnalyzer" | "premiseDecomposer" | "premiseIndexer" | "userContextGenerator" | "networkRecommender" | "interruptClassifier" | "chat")[];
46
- export declare function resolveCanonicalAllAgentModels(environment: Readonly<Record<string, string | undefined>>, options?: {
47
- applyEvalOverrides?: boolean;
48
- }): CanonicalAllAgentModels;
@@ -1,17 +0,0 @@
1
- import { type ToolContext, type ResolvedToolContext } from "./tool.helpers.js";
2
- import type { OpportunityOwnerApprovalDeps } from "../../opportunities/opportunity.tools.port.js";
3
- export type { ToolContext, ResolvedToolContext, ProtocolDeps } from "./tool.helpers.js";
4
- export type { ToolDeps } from "./tool.helpers.js";
5
- /**
6
- * Creates all chat tools bound to a specific user context.
7
- * Resolves user/network identity from DB at init time.
8
- * Tools are created fresh for each user session to ensure proper isolation.
9
- *
10
- * All external dependencies (cache, integration, queue, etc.) are provided
11
- * via the `deps` parameter — the protocol lib never imports concrete adapters.
12
- */
13
- export declare function createChatTools(deps: ToolContext & OpportunityOwnerApprovalDeps, preResolvedContext?: ResolvedToolContext): Promise<any[]>;
14
- /**
15
- * Type for the tools array returned by createChatTools.
16
- */
17
- export type ChatTools = Awaited<ReturnType<typeof createChatTools>>;
@@ -1,221 +0,0 @@
1
- import { tool } from "@langchain/core/tools";
2
- import { Intents } from "../../intents/intent.module.js";
3
- import { EnrichmentGraphFactory } from "../../enrichment/enrichment.graph.js";
4
- import { OpportunityGraphFactory } from "../../opportunities/opportunity.module.js";
5
- import { HydeGraphFactory } from "../../discovery/hyde.graph.js";
6
- import { HydeGenerator } from "../../discovery/hyde.generator.js";
7
- import { LensInferrer } from "../../discovery/lens.inferrer.js";
8
- import { Networks } from "../../networks/network.module.js";
9
- import { NegotiationGraphFactory } from "../../negotiations/negotiation.module.js";
10
- import { PremiseGraphFactory } from "../../premises/premise.graph.js";
11
- import { protocolLogger } from "../observability/protocol.logger.js";
12
- import { resolveChatContext, error, redactSensitiveFields } from "./tool.helpers.js";
13
- import { deriveAllowedNetworkIds, focusedIntentId, scopeFromNetworkId } from "./tool.scope.js";
14
- import { invokeToolRuntime, toolRuntimeErrorToResult } from "./tool.runtime.js";
15
- import { createEnrichmentTools } from "../../enrichment/enrichment.tools.js";
16
- import { createOpportunityTools } from "../../opportunities/opportunity.module.js";
17
- import { createUtilityTools } from "./utility.tools.js";
18
- import { createContactTools } from "../../contacts/contact.module.js";
19
- // The composition root reaches the leaf directly (it is exempt from the barrel
20
- // rule by design): importing agents/agent.module.js here would pull in the
21
- // chat personas, which import this module back -- a runtime cycle.
22
- import { createAgentTools } from "../../agents/agent.tools.js";
23
- import { createNegotiationTools } from "../../negotiations/negotiation.module.js";
24
- import { createPremiseTools } from "../../premises/premise.tools.js";
25
- import { bindOwnerApprovalProvenance } from "../../opportunities/opportunity.owner-provenance.js";
26
- const logger = protocolLogger("ChatTools");
27
- // ═══════════════════════════════════════════════════════════════════════════════
28
- // TOOL FACTORY
29
- // ═══════════════════════════════════════════════════════════════════════════════
30
- /**
31
- * Creates all chat tools bound to a specific user context.
32
- * Resolves user/network identity from DB at init time.
33
- * Tools are created fresh for each user session to ensure proper isolation.
34
- *
35
- * All external dependencies (cache, integration, queue, etc.) are provided
36
- * via the `deps` parameter — the protocol lib never imports concrete adapters.
37
- */
38
- export async function createChatTools(deps, preResolvedContext) {
39
- const { database, embedder, scraper } = deps;
40
- const explicitScope = deps.scopeType && deps.scopeId
41
- ? { scopeType: deps.scopeType, scopeId: deps.scopeId }
42
- : scopeFromNetworkId(deps.networkId);
43
- // ─── Resolve context from DB ───────────────────────────────────────────────
44
- // resolveChatContext still accepts a networkId because it loads scoped index
45
- // presentation metadata; the canonical request scope is explicitScope.
46
- const resolvedContext = preResolvedContext ??
47
- (await resolveChatContext({
48
- database,
49
- userId: deps.userId,
50
- networkId: explicitScope.scopeType === 'network' ? explicitScope.scopeId : deps.networkId,
51
- sessionId: deps.sessionId,
52
- }));
53
- if (!preResolvedContext && explicitScope.scopeType && explicitScope.scopeId) {
54
- resolvedContext.scopeType = explicitScope.scopeType;
55
- resolvedContext.scopeId = explicitScope.scopeId;
56
- }
57
- // This factory is an orchestrated chat surface, never a direct owner request.
58
- // Bind that fact at composition time rather than inferring it from a session
59
- // id or a caller-controlled tool argument inside the opportunity handler.
60
- bindOwnerApprovalProvenance(resolvedContext, {
61
- surface: 'chat',
62
- sessionAuthenticated: false,
63
- });
64
- const allowedNetworkIds = deriveAllowedNetworkIds({
65
- memberships: resolvedContext.userNetworks,
66
- ...(resolvedContext.scopeType && resolvedContext.scopeId
67
- ? { scopeType: resolvedContext.scopeType, scopeId: resolvedContext.scopeId }
68
- : {}),
69
- });
70
- // ─── Tool wrapper ──────────────────────────────────────────────────────────
71
- /**
72
- * Standardized tool factory. Auto-injects resolved context and
73
- * provides uniform logging / error handling for every tool.
74
- */
75
- function defineTool(opts) {
76
- return tool(async (query) => {
77
- logger.info('Tool invoked', {
78
- toolName: opts.name,
79
- context: { userId: resolvedContext.userId, scopeType: resolvedContext.scopeType, scopeId: resolvedContext.scopeId },
80
- query: redactSensitiveFields(query),
81
- });
82
- try {
83
- return await invokeToolRuntime({
84
- toolName: opts.name,
85
- tool: { handler: async ({ context, query }) => opts.handler({ context, query: query }) },
86
- context: resolvedContext,
87
- query,
88
- });
89
- }
90
- catch (err) {
91
- logger.error('Tool failed', {
92
- toolName: opts.name,
93
- error: err instanceof Error ? err.message : String(err),
94
- });
95
- const runtimeResult = toolRuntimeErrorToResult(err);
96
- if (runtimeResult)
97
- return runtimeResult;
98
- const reason = err instanceof Error ? err.message : String(err);
99
- return error(`Failed to execute ${opts.name}: ${reason}`);
100
- }
101
- }, { name: opts.name, description: opts.description, schema: opts.querySchema });
102
- }
103
- // ─── Compile subgraphs ─────────────────────────────────────────────────────
104
- // Wrap questionerEnqueue to include scoped context when available. (The
105
- // chat-session conversationId defaulting went with the retired chat-mode
106
- // generator; park payloads carry their own recipient routing.)
107
- const sessionAwareEnqueue = deps.questionerEnqueue
108
- ? (input) => deps.questionerEnqueue({
109
- ...input,
110
- ...(resolvedContext.scopeType && resolvedContext.scopeId && !input.scopeId
111
- ? { scopeType: resolvedContext.scopeType, scopeId: resolvedContext.scopeId }
112
- : {}),
113
- })
114
- : undefined;
115
- const intents = new Intents({
116
- database,
117
- embedder,
118
- queue: deps.intentQueue,
119
- });
120
- const intentGraph = intents.createGraph();
121
- const premiseGraph = new PremiseGraphFactory(database, embedder).createGraph();
122
- const profileGraph = new EnrichmentGraphFactory(database, scraper, deps.enricher, premiseGraph).createGraph();
123
- const hydeCache = deps.hydeCache;
124
- const lensInferrer = new LensInferrer();
125
- const hydeGenerator = new HydeGenerator();
126
- const compiledHydeGraph = new HydeGraphFactory(database, embedder, hydeCache, lensInferrer, hydeGenerator).createGraph();
127
- const negotiationGraph = deps.agentDispatcher
128
- ? new NegotiationGraphFactory(deps.negotiationDatabase, deps.agentDispatcher, deps.negotiationTimeoutQueue, sessionAwareEnqueue).createGraph()
129
- : undefined;
130
- const opportunityGraph = new OpportunityGraphFactory(database, embedder, compiledHydeGraph, undefined, // evaluator (default)
131
- undefined, // queueNotification
132
- negotiationGraph, deps.agentDispatcher, deps.queueNegotiateExisting, deps.stampNewbornOpportunities).createGraph();
133
- const networks = new Networks({ database, indexer: intents });
134
- const networkGraph = networks.createGraph();
135
- const networkMembershipGraph = networks.createMembershipGraph();
136
- const intentNetworkGraph = networks.createAssignmentGraph();
137
- // ─── Create context-bound databases ────────────────────────────────────────
138
- // Use injected instances when provided (e.g. tests). Otherwise create from the same
139
- // database used for graphs so that scope checks (e.g. ensureScopedMembership, opportunity
140
- // update) use the same adapter as the rest of the tool pipeline.
141
- //
142
- // The systemDb's DB-level clamp derives concrete allowed network IDs from the
143
- // focused scope envelope plus memberships, rather than consuming a transported
144
- // legacy indexScope array.
145
- const userDb = deps.userDb ?? deps.createUserDatabase(database, resolvedContext.userId);
146
- const systemDb = deps.systemDb ?? deps.createSystemDatabase(database, resolvedContext.userId, allowedNetworkIds, embedder);
147
- // ─── Assemble dependencies ─────────────────────────────────────────────────
148
- const cache = deps.cache;
149
- const toolDeps = {
150
- database,
151
- userDb,
152
- systemDb,
153
- scraper,
154
- embedder,
155
- cache,
156
- contactService: deps.contactService,
157
- enricher: deps.enricher,
158
- negotiationDatabase: deps.negotiationDatabase,
159
- negotiationTimeoutQueue: deps.negotiationTimeoutQueue,
160
- agentDatabase: deps.agentDatabase,
161
- grantDefaultSystemPermissions: deps.grantDefaultSystemPermissions,
162
- agentDispatcher: deps.agentDispatcher,
163
- stampNewbornOpportunities: deps.stampNewbornOpportunities,
164
- deliveryLedger: deps.deliveryLedger,
165
- ...(deps.opportunityOwnerApproval && { opportunityOwnerApproval: deps.opportunityOwnerApproval }),
166
- enrichmentRuns: deps.enrichmentRuns,
167
- enrichmentRunQueue: deps.enrichmentRunQueue,
168
- frontendUrl: deps.frontendUrl,
169
- apiBaseUrl: deps.apiBaseUrl,
170
- ...(deps.chatSummary && { chatSummary: deps.chatSummary }),
171
- ...(sessionAwareEnqueue && { questionerEnqueue: sessionAwareEnqueue }),
172
- ...(deps.negotiationSummary && { negotiationSummary: deps.negotiationSummary }),
173
- ...(deps.chatSession && { chatSession: deps.chatSession }),
174
- ...(deps.getUserContextText && { getUserContextText: deps.getUserContextText }),
175
- ...(deps.intentProposalStore && { intentProposalStore: deps.intentProposalStore }),
176
- graphs: {
177
- profile: profileGraph,
178
- intent: intentGraph,
179
- index: networkGraph,
180
- networkMembership: networkMembershipGraph,
181
- intentIndex: intentNetworkGraph,
182
- opportunity: opportunityGraph,
183
- premise: premiseGraph,
184
- },
185
- };
186
- // ─── Create domain tools ──────────────────────────────────────────────────
187
- const profileTools = createEnrichmentTools(defineTool, toolDeps);
188
- const intentTools = Intents.createTools(defineTool, toolDeps);
189
- // An intent-scoped conversation exists to refine its selected signal. Keep
190
- // creation out of the model-visible registry; the update handler separately
191
- // clamps writes to the exact scoped intent as a runtime backstop.
192
- const intentToolsForChat = focusedIntentId(resolvedContext)
193
- ? intentTools.filter((candidate) => candidate.name !== "create_intent")
194
- : intentTools;
195
- const networkTools = Networks.createTools(defineTool, toolDeps);
196
- const opportunityTools = createOpportunityTools(defineTool, toolDeps);
197
- const utilityTools = createUtilityTools(defineTool, toolDeps);
198
- const contactTools = createContactTools(defineTool, toolDeps);
199
- const agentTools = createAgentTools(defineTool, toolDeps);
200
- const negotiationTools = deps.agentDispatcher
201
- ? createNegotiationTools(defineTool, toolDeps)
202
- : [];
203
- const premiseTools = createPremiseTools(defineTool, toolDeps);
204
- // confirm_opportunity_delivery is an OpenClaw-delivery ledger write and must not be
205
- // callable from regular chat sessions.
206
- const chatOpportunityToolExclusions = new Set([
207
- "confirm_opportunity_delivery",
208
- ]);
209
- const opportunityToolsForChat = opportunityTools.filter((t) => !chatOpportunityToolExclusions.has(t.name));
210
- return [
211
- ...profileTools,
212
- ...intentToolsForChat,
213
- ...networkTools,
214
- ...opportunityToolsForChat,
215
- ...utilityTools,
216
- ...contactTools,
217
- ...agentTools,
218
- ...negotiationTools,
219
- ...premiseTools,
220
- ];
221
- }