@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,63 +0,0 @@
1
- /**
2
- * Centralized accessors for Lens B outcome-question environment variables
3
- * (IND-434).
4
- *
5
- * OUTCOME_QUESTIONS_MODE off | shadow | on — Lens B "explicit opportunity
6
- * outcomes → grounded questions" pipeline.
7
- *
8
- * off (default): no outcome feedback events are
9
- * captured and no hypothesis mining runs. Zero
10
- * behavior change.
11
- * shadow: capture one idempotent append-only
12
- * feedback event per explicit owner action, mine
13
- * neutral trade-off hypotheses for the exact
14
- * recipient + intent + fingerprint, and emit
15
- * aggregate telemetry only. No question, ranking,
16
- * intent, premise, memory, newborn-stamp, or push
17
- * writes.
18
- * on: reserved for a later phase (IND-438) that
19
- * turns a grounded hypothesis into a user-facing
20
- * question. This slice treats "on" exactly like
21
- * "shadow" for capture + mining; it never emits
22
- * questions.
23
- *
24
- * All reads go through this module — do not read this variable via
25
- * `process.env` elsewhere. Values are read on every call (no caching) so tests
26
- * and long-lived processes observe changes.
27
- */
28
- /**
29
- * Current OUTCOME_QUESTIONS_MODE (default off). Only the exact trimmed literals
30
- * "shadow" and "on" activate; every other value (including unset/empty) is off.
31
- */
32
- export function outcomeQuestionsMode() {
33
- const value = process.env.OUTCOME_QUESTIONS_MODE?.trim();
34
- return value === "shadow" || value === "on" ? value : "off";
35
- }
36
- /**
37
- * True when Lens B capture + mining should run at all. Both "shadow" and "on"
38
- * activate the shadow pipeline; only the future question-emitting behavior is
39
- * gated on "on" (not part of this slice).
40
- */
41
- export function isOutcomeQuestionsActivated() {
42
- return outcomeQuestionsMode() !== "off";
43
- }
44
- /**
45
- * Independent-support threshold (k). Every compared group (discriminator side)
46
- * must have at least this many INDEPENDENT (related-opportunity-deduplicated)
47
- * examples before the hypothesis is eligible. Enforced per side, so no side
48
- * can be traced back to a small handful of individuals.
49
- */
50
- export const OUTCOME_MIN_INDEPENDENT_SUPPORT = 5;
51
- /** Minimum number of qualified sides (each ≥ k) for a hypothesis to compare. */
52
- export const OUTCOME_MIN_COMPARED_SIDES = 2;
53
- /**
54
- * k-anonymity floor for attempting a mining pass at all: the number of
55
- * distinct independent examples (after related-opportunity dedup) required
56
- * before the miner is invoked. Set to k × minimum compared sides so a pass can
57
- * never produce an eligible hypothesis below the aggregate floor.
58
- */
59
- export const OUTCOME_MIN_INDEPENDENT_EXAMPLES = OUTCOME_MIN_INDEPENDENT_SUPPORT * OUTCOME_MIN_COMPARED_SIDES;
60
- /** Max independent examples sent to the miner LLM (most recent first). */
61
- export const OUTCOME_MAX_CANDIDATES = 48;
62
- /** Max chars of presentation-safe candidate snapshot stored/sent per example. */
63
- export const OUTCOME_MAX_PUBLIC_CONTEXT_CHARS = 400;
@@ -1,29 +0,0 @@
1
- /**
2
- * Lens B outcome join + threshold — pure functions, no LLM, no I/O (IND-434).
3
- *
4
- * Given discriminators whose candidate → side assignments were produced BLIND
5
- * to outcome (the miner never saw which side the user chose), this module joins
6
- * the explicit owner-outcome labels and produces aggregate-only telemetry:
7
- *
8
- * - Independence: capture admits only one unique counterpart per opportunity;
9
- * the caller then deduplicates by that recipient-scoped counterpart hash.
10
- * Every retained entry therefore represents one distinct counterpart.
11
- * - Threshold: a discriminator side is "qualified" only when it holds at
12
- * least `minIndependentSupport` (k) independent examples. A hypothesis is
13
- * eligible only when at least `minComparedSides` sides qualify.
14
- * - Small-cell suppression: only qualified sides (≥ k) are ever emitted, so
15
- * no aggregate row can be traced to a small handful of individuals.
16
- *
17
- * The outcome label is joined here and ONLY here — the miner and the side
18
- * assignments upstream are independent of it, so association can never leak
19
- * into classification.
20
- */
21
- import type { JoinOutcomeHypothesesInput, OutcomeShadowResult } from "./outcome.types.js";
22
- /**
23
- * Join outcome labels onto blind side assignments and keep only hypotheses that
24
- * clear the independent-support threshold on at least `minComparedSides` sides.
25
- *
26
- * @returns Aggregate telemetry: eligible hypotheses sorted by (min support desc,
27
- * label asc) for deterministic ordering, each carrying only qualified sides.
28
- */
29
- export declare function joinOutcomeHypotheses(input: JoinOutcomeHypothesesInput): OutcomeShadowResult;
@@ -1,117 +0,0 @@
1
- /**
2
- * Lens B outcome join + threshold — pure functions, no LLM, no I/O (IND-434).
3
- *
4
- * Given discriminators whose candidate → side assignments were produced BLIND
5
- * to outcome (the miner never saw which side the user chose), this module joins
6
- * the explicit owner-outcome labels and produces aggregate-only telemetry:
7
- *
8
- * - Independence: capture admits only one unique counterpart per opportunity;
9
- * the caller then deduplicates by that recipient-scoped counterpart hash.
10
- * Every retained entry therefore represents one distinct counterpart.
11
- * - Threshold: a discriminator side is "qualified" only when it holds at
12
- * least `minIndependentSupport` (k) independent examples. A hypothesis is
13
- * eligible only when at least `minComparedSides` sides qualify.
14
- * - Small-cell suppression: only qualified sides (≥ k) are ever emitted, so
15
- * no aggregate row can be traced to a small handful of individuals.
16
- *
17
- * The outcome label is joined here and ONLY here — the miner and the side
18
- * assignments upstream are independent of it, so association can never leak
19
- * into classification.
20
- */
21
- import { OUTCOME_MIN_COMPARED_SIDES, OUTCOME_MIN_INDEPENDENT_SUPPORT } from "./outcome.env.js";
22
- /** Round a rate to 0.01 for telemetry (never a raw count). */
23
- function roundRate(n) {
24
- return Math.round(n * 100) / 100;
25
- }
26
- /**
27
- * Join outcome labels onto blind side assignments and keep only hypotheses that
28
- * clear the independent-support threshold on at least `minComparedSides` sides.
29
- *
30
- * @returns Aggregate telemetry: eligible hypotheses sorted by (min support desc,
31
- * label asc) for deterministic ordering, each carrying only qualified sides.
32
- */
33
- export function joinOutcomeHypotheses(input) {
34
- const minSupport = input.minIndependentSupport ?? OUTCOME_MIN_INDEPENDENT_SUPPORT;
35
- const minSides = input.minComparedSides ?? OUTCOME_MIN_COMPARED_SIDES;
36
- // Distinct independent examples with a joinable outcome label.
37
- const poolSize = input.examples.size;
38
- const hypotheses = [];
39
- for (const discriminator of input.discriminators) {
40
- // Normalize sides by trimming, then reject the ENTIRE discriminator if any
41
- // side is empty or if labels are not unique after normalization. Silently
42
- // deduplicating malformed model output would turn an ambiguous comparison
43
- // into apparently valid evidence.
44
- const normalizedSides = discriminator.sides.map((side) => side.trim());
45
- if (normalizedSides.some((side) => side.length === 0))
46
- continue;
47
- if (new Set(normalizedSides).size !== normalizedSides.length)
48
- continue;
49
- if (normalizedSides.length < minSides)
50
- continue;
51
- const validSides = new Set(normalizedSides);
52
- // First normalize VERIFIED, labelled assignments by candidate id. If the
53
- // same independent example is assigned to different sides, mark it
54
- // ambiguous and exclude it from every side; it must never support two cells.
55
- const sideById = new Map();
56
- const ambiguousIds = new Set();
57
- for (const assignment of discriminator.assignments) {
58
- if (assignment.side === null || !assignment.verified)
59
- continue;
60
- const side = assignment.side.trim();
61
- if (!validSides.has(side) || !input.examples.has(assignment.id))
62
- continue;
63
- const previous = sideById.get(assignment.id);
64
- if (previous !== undefined && previous !== side)
65
- ambiguousIds.add(assignment.id);
66
- else if (previous === undefined)
67
- sideById.set(assignment.id, side);
68
- }
69
- // Tally DISTINCT independent example ids per unambiguous side. Repeating
70
- // the same assignment never increases support.
71
- const idsBySide = new Map();
72
- const acceptedIdsBySide = new Map();
73
- for (const [id, side] of sideById) {
74
- if (ambiguousIds.has(id))
75
- continue;
76
- const label = input.examples.get(id);
77
- if (label === undefined)
78
- continue;
79
- if (!idsBySide.has(side))
80
- idsBySide.set(side, new Set());
81
- idsBySide.get(side).add(id);
82
- if (label === "accepted") {
83
- if (!acceptedIdsBySide.has(side))
84
- acceptedIdsBySide.set(side, new Set());
85
- acceptedIdsBySide.get(side).add(id);
86
- }
87
- }
88
- // Keep only sides that clear the independent-support threshold (>= k
89
- // genuinely distinct independent examples).
90
- const qualifiedSides = [];
91
- for (const side of normalizedSides) {
92
- const support = idsBySide.get(side)?.size ?? 0;
93
- if (support < minSupport)
94
- continue; // small-cell: never emitted
95
- const accepted = acceptedIdsBySide.get(side)?.size ?? 0;
96
- qualifiedSides.push({
97
- side,
98
- independentSupport: support,
99
- acceptRate: roundRate(accepted / support),
100
- });
101
- }
102
- if (qualifiedSides.length < minSides)
103
- continue; // not enough to compare
104
- // Deterministic side ordering: support desc, then label asc.
105
- qualifiedSides.sort((a, b) => b.independentSupport - a.independentSupport || a.side.localeCompare(b.side));
106
- hypotheses.push({
107
- label: discriminator.label,
108
- questionSeed: discriminator.questionSeed,
109
- sides: qualifiedSides,
110
- evidenceRate: discriminator.evidenceRate,
111
- minIndependentSupport: Math.min(...qualifiedSides.map((s) => s.independentSupport)),
112
- });
113
- }
114
- // Deterministic hypothesis ordering: strongest support first, then label.
115
- hypotheses.sort((a, b) => b.minIndependentSupport - a.minIndependentSupport || a.label.localeCompare(b.label));
116
- return { poolSize, eligibleCount: hypotheses.length, hypotheses };
117
- }
@@ -1,56 +0,0 @@
1
- /**
2
- * Lens B shadow orchestrator (IND-434): deduplicate related opportunities,
3
- * mine neutral axes over the deduplicated historical pool BLIND to outcome,
4
- * then join the owner-outcome labels and threshold the result.
5
- *
6
- * No persistence, no questions, no UI. The output is consumed only by aggregate
7
- * telemetry for human review.
8
- *
9
- * Pipeline:
10
- * 1. Dedup related opportunities: collapse examples sharing a dedup key to a
11
- * single representative (most recent), so a cluster of related opps can
12
- * neither dominate the miner nor inflate a side's independent support.
13
- * 2. Cap to the most recent OUTCOME_MAX_CANDIDATES for a bounded LLM pass.
14
- * 3. Build the miner pool — PoolCandidate carries id + publicContext + score
15
- * and, critically, NO outcome label. The miner is structurally blind.
16
- * 4. Mine neutral axes + assign candidates (evidence-verified).
17
- * 5. Join outcome labels (only now) and apply the k-support threshold.
18
- */
19
- import type { PoolDiscriminatorMiner } from "../discriminator/discriminator.miner.js";
20
- import type { OutcomeExample, OutcomeShadowResult } from "./outcome.types.js";
21
- /** Input for one Lens B shadow mining+join pass. */
22
- export interface OutcomeShadowInput {
23
- /**
24
- * Intent payload (+ summary) text that owns this scope. Used only as miner
25
- * context; never mixed with outcome labels.
26
- */
27
- intentText: string;
28
- /**
29
- * Captured owner-outcome examples for exactly one recipient + intent +
30
- * fingerprint scope. Each carries a presentation-safe snapshot and a dedup
31
- * key; outcome labels live here but are withheld from the miner.
32
- */
33
- examples: OutcomeExample[];
34
- miner: Pick<PoolDiscriminatorMiner, "mine">;
35
- /** Override the independent-support threshold (defaults to k). */
36
- minIndependentSupport?: number;
37
- /** Override the minimum qualified sides. */
38
- minComparedSides?: number;
39
- /** Override the LLM candidate cap. */
40
- maxCandidates?: number;
41
- signal?: AbortSignal;
42
- }
43
- /**
44
- * Collapse related opportunities to independent examples: one representative
45
- * (most recent by occurredAt) per distinct dedup key. Deterministic — ties on
46
- * occurredAt fall back to opportunityId ordering.
47
- */
48
- export declare function deduplicateOutcomeExamples(examples: OutcomeExample[]): OutcomeExample[];
49
- /**
50
- * Run the Lens B shadow pipeline for one scope.
51
- *
52
- * Throws only when *mining* fails (callers are fire-and-forget and must catch).
53
- * A pool that is empty or below the compare floor after dedup returns an empty
54
- * result rather than throwing.
55
- */
56
- export declare function runOutcomeShadow(input: OutcomeShadowInput): Promise<OutcomeShadowResult>;
@@ -1,87 +0,0 @@
1
- /**
2
- * Lens B shadow orchestrator (IND-434): deduplicate related opportunities,
3
- * mine neutral axes over the deduplicated historical pool BLIND to outcome,
4
- * then join the owner-outcome labels and threshold the result.
5
- *
6
- * No persistence, no questions, no UI. The output is consumed only by aggregate
7
- * telemetry for human review.
8
- *
9
- * Pipeline:
10
- * 1. Dedup related opportunities: collapse examples sharing a dedup key to a
11
- * single representative (most recent), so a cluster of related opps can
12
- * neither dominate the miner nor inflate a side's independent support.
13
- * 2. Cap to the most recent OUTCOME_MAX_CANDIDATES for a bounded LLM pass.
14
- * 3. Build the miner pool — PoolCandidate carries id + publicContext + score
15
- * and, critically, NO outcome label. The miner is structurally blind.
16
- * 4. Mine neutral axes + assign candidates (evidence-verified).
17
- * 5. Join outcome labels (only now) and apply the k-support threshold.
18
- */
19
- import { protocolLogger } from "../../shared/observability/protocol.logger.js";
20
- import { OUTCOME_MAX_CANDIDATES, OUTCOME_MIN_COMPARED_SIDES, OUTCOME_MIN_INDEPENDENT_SUPPORT } from "./outcome.env.js";
21
- import { joinOutcomeHypotheses } from "./outcome.hypotheses.js";
22
- const logger = protocolLogger("OutcomeQuestionShadow");
23
- /**
24
- * Collapse related opportunities to independent examples: one representative
25
- * (most recent by occurredAt) per distinct dedup key. Deterministic — ties on
26
- * occurredAt fall back to opportunityId ordering.
27
- */
28
- export function deduplicateOutcomeExamples(examples) {
29
- const byKey = new Map();
30
- for (const example of examples) {
31
- const existing = byKey.get(example.dedupKey);
32
- if (existing === undefined) {
33
- byKey.set(example.dedupKey, example);
34
- continue;
35
- }
36
- const newer = example.occurredAt > existing.occurredAt ||
37
- (example.occurredAt === existing.occurredAt && example.opportunityId > existing.opportunityId);
38
- if (newer)
39
- byKey.set(example.dedupKey, example);
40
- }
41
- return [...byKey.values()].sort((a, b) => b.occurredAt.localeCompare(a.occurredAt) || a.opportunityId.localeCompare(b.opportunityId));
42
- }
43
- /**
44
- * Run the Lens B shadow pipeline for one scope.
45
- *
46
- * Throws only when *mining* fails (callers are fire-and-forget and must catch).
47
- * A pool that is empty or below the compare floor after dedup returns an empty
48
- * result rather than throwing.
49
- */
50
- export async function runOutcomeShadow(input) {
51
- const minSupport = input.minIndependentSupport ?? OUTCOME_MIN_INDEPENDENT_SUPPORT;
52
- const minSides = input.minComparedSides ?? OUTCOME_MIN_COMPARED_SIDES;
53
- const maxCandidates = input.maxCandidates ?? OUTCOME_MAX_CANDIDATES;
54
- // 1–2. Dedup related opportunities, then cap to a bounded, recent pool.
55
- const independent = deduplicateOutcomeExamples(input.examples).slice(0, maxCandidates);
56
- if (independent.length < minSupport * minSides) {
57
- return { poolSize: independent.length, eligibleCount: 0, hypotheses: [] };
58
- }
59
- // 3. Build the miner pool with RUN-LOCAL aliases (c0, c1, …) as candidate ids
60
- // — raw opportunity ids are never sent to the LLM. The alias→outcome map is
61
- // kept internally for the join. PoolCandidate deliberately excludes the
62
- // outcome label, so the miner cannot condition on which side was chosen.
63
- const aliased = independent.map((example, index) => ({ alias: `c${index}`, example }));
64
- const candidates = aliased.map(({ alias, example }) => ({
65
- id: alias,
66
- publicContext: example.publicContext,
67
- score: example.score ?? 1,
68
- }));
69
- // 4. Blind assignment (assignments come back keyed by the run-local alias).
70
- const mined = await input.miner.mine({ intentText: input.intentText, candidates }, input.signal ? { signal: input.signal } : undefined);
71
- if (mined.length === 0) {
72
- return { poolSize: independent.length, eligibleCount: 0, hypotheses: [] };
73
- }
74
- // 5. Join outcome labels (only now) by alias, and threshold.
75
- const examples = new Map(aliased.map(({ alias, example }) => [alias, example.label]));
76
- const result = joinOutcomeHypotheses({
77
- discriminators: mined,
78
- examples,
79
- minIndependentSupport: minSupport,
80
- minComparedSides: minSides,
81
- });
82
- logger.debug("shadow join complete", {
83
- poolSize: result.poolSize,
84
- eligibleCount: result.eligibleCount,
85
- });
86
- return result;
87
- }
@@ -1,110 +0,0 @@
1
- /**
2
- * Lens B outcome-question mining — shared types (IND-434).
3
- *
4
- * Lens B learns whether a user's OWN past explicit opportunity decisions
5
- * (accept / reject) suggest a useful clarification question, WITHOUT treating
6
- * mutable statuses, counterparty actions, or system transitions as
7
- * preferences. It is the historical-outcome analogue of the live-pool Lens A
8
- * discriminator (see ../discriminator/*).
9
- *
10
- * The two lenses share the neutral-axis mining machinery (PoolDiscriminatorMiner
11
- * assigns candidates to axis sides from presentation-safe context only). Lens B
12
- * adds the crucial privacy/correctness discipline on top:
13
- *
14
- * 1. Candidates are assigned to sides BLIND to their outcome label — the
15
- * classifier never sees which side the user chose (the miner input carries
16
- * no outcome field at all).
17
- * 2. Outcome labels are joined only AFTER assignment.
18
- * 3. Related opportunities are deduplicated (one independent example per
19
- * distinct counterpart) before support is counted.
20
- * 4. Every compared group (side) must clear the independent-support
21
- * threshold k, so aggregate telemetry never exposes a small cell.
22
- *
23
- * P7 (shadow) uses these types for aggregate-telemetry output only: no
24
- * questions, ranking, intent, premise, memory, newborn-stamp, or push writes.
25
- */
26
- import type { MinedDiscriminator } from "../discriminator/discriminator.types.js";
27
- /**
28
- * The only two explicit owner actions Lens B treats as preference labels.
29
- * Non-action, delivery, expiry, timeout, merge, cascade, screening, and every
30
- * counterparty/agent/system transition are deliberately excluded upstream.
31
- */
32
- export type OutcomeLabel = "accepted" | "rejected";
33
- /**
34
- * One captured owner-outcome example, as consumed by the mining orchestrator.
35
- * Built from an append-only feedback event; carries only presentation-safe
36
- * text plus join/dedup keys — never raw ids, vectors, or model reasoning.
37
- */
38
- export interface OutcomeExample {
39
- /**
40
- * Opportunity id — the join key between blind assignment and outcome label.
41
- * Never emitted in telemetry.
42
- */
43
- opportunityId: string;
44
- /** Presentation-safe candidate snapshot the miner assigns sides from. */
45
- publicContext: string;
46
- /** Explicit owner action. Joined AFTER assignment, never seen by the miner. */
47
- label: OutcomeLabel;
48
- /**
49
- * Related-opportunity dedup key: a stable, non-reversible identifier of the
50
- * counterpart (or opportunity when no counterpart). Two examples with the
51
- * same key count as ONE independent example.
52
- */
53
- dedupKey: string;
54
- /** Sort key for recency-based capping/representative selection (ISO-8601). */
55
- occurredAt: string;
56
- /** Optional confidence mass for score-weighted assignment; defaults to 1. */
57
- score?: number;
58
- }
59
- /** Aggregate support for one discriminator side, after dedup + threshold. */
60
- export interface OutcomeSideSupport {
61
- /** Neutral side label carried verbatim from the miner. */
62
- side: string;
63
- /** Distinct independent (deduplicated) examples assigned to this side (≥ k). */
64
- independentSupport: number;
65
- /**
66
- * Independent accepted examples ÷ independentSupport, rounded to 0.01. A
67
- * rate, never a raw small-cell count.
68
- */
69
- acceptRate: number;
70
- }
71
- /** One eligible neutral hypothesis with aggregate-only stats. */
72
- export interface OutcomeHypothesis {
73
- /** Discriminator label, e.g. "Hands-on builders vs strategic advisors". */
74
- label: string;
75
- /** A neutral question the intent owner could answer to resolve the axis. */
76
- questionSeed: string;
77
- /** Only the qualified sides (each ≥ k independent examples). */
78
- sides: OutcomeSideSupport[];
79
- /** Evidence-verification rate carried from the miner (hallucination health). */
80
- evidenceRate: number;
81
- /** Minimum independentSupport across the qualified sides (≥ k). */
82
- minIndependentSupport: number;
83
- }
84
- /** Result of one shadow mining pass (the aggregate telemetry payload shape). */
85
- export interface OutcomeShadowResult {
86
- /** Distinct independent examples considered after dedup + capping. */
87
- poolSize: number;
88
- /** Count of eligible hypotheses (meets k + ≥ minComparedSides qualified). */
89
- eligibleCount: number;
90
- /**
91
- * Eligible hypotheses only, sorted deterministically. Aggregate stats only —
92
- * no opportunity ids, no candidate text, no small-cell counts.
93
- */
94
- hypotheses: OutcomeHypothesis[];
95
- }
96
- /** Input to the pure outcome-join step (assignment already done, blind). */
97
- export interface JoinOutcomeHypothesesInput {
98
- /** Mined discriminators with verified side assignments (blind to outcome). */
99
- discriminators: MinedDiscriminator[];
100
- /**
101
- * Outcome labels keyed by opportunity id. Each example is already
102
- * independent (deduplicated by the orchestrator), so one entry = one
103
- * independent example.
104
- */
105
- examples: Map<string, OutcomeLabel>;
106
- /** Independent-support threshold per side. Defaults to k. */
107
- minIndependentSupport?: number;
108
- /** Minimum qualified sides. Defaults to the module constant. */
109
- minComparedSides?: number;
110
- }
@@ -1,26 +0,0 @@
1
- /**
2
- * Lens B outcome-question mining — shared types (IND-434).
3
- *
4
- * Lens B learns whether a user's OWN past explicit opportunity decisions
5
- * (accept / reject) suggest a useful clarification question, WITHOUT treating
6
- * mutable statuses, counterparty actions, or system transitions as
7
- * preferences. It is the historical-outcome analogue of the live-pool Lens A
8
- * discriminator (see ../discriminator/*).
9
- *
10
- * The two lenses share the neutral-axis mining machinery (PoolDiscriminatorMiner
11
- * assigns candidates to axis sides from presentation-safe context only). Lens B
12
- * adds the crucial privacy/correctness discipline on top:
13
- *
14
- * 1. Candidates are assigned to sides BLIND to their outcome label — the
15
- * classifier never sees which side the user chose (the miner input carries
16
- * no outcome field at all).
17
- * 2. Outcome labels are joined only AFTER assignment.
18
- * 3. Related opportunities are deduplicated (one independent example per
19
- * distinct counterpart) before support is counted.
20
- * 4. Every compared group (side) must clear the independent-support
21
- * threshold k, so aggregate telemetry never exposes a small cell.
22
- *
23
- * P7 (shadow) uses these types for aggregate-telemetry output only: no
24
- * questions, ranking, intent, premise, memory, newborn-stamp, or push writes.
25
- */
26
- export {};
@@ -1,31 +0,0 @@
1
- /** Input for computing radar health score. */
2
- export interface RadarHealthInput {
3
- connectionCount: number;
4
- connectorFlowCount: number;
5
- expiredCount: number;
6
- totalActionable: number;
7
- /** Unix ms timestamp of last rediscovery, or null if never. */
8
- lastRediscoveryAt: number | null;
9
- /** Window in ms over which freshness decays from 1 → 0 (e.g. 12h). */
10
- freshnessWindowMs: number;
11
- /** Score threshold below which shouldMaintain is true. Default 0.5. */
12
- threshold?: number;
13
- }
14
- /** Output of radar health computation. */
15
- export interface RadarHealthResult {
16
- score: number;
17
- breakdown: {
18
- composition: number;
19
- freshness: number;
20
- expirationRatio: number;
21
- };
22
- shouldMaintain: boolean;
23
- }
24
- /**
25
- * Compute radar health score (0–1) from current radar state.
26
- * Pure function, no side effects.
27
- *
28
- * @param input - Current radar composition and timing data
29
- * @returns Health score with breakdown and maintenance recommendation
30
- */
31
- export declare function computeRadarHealth(input: RadarHealthInput): RadarHealthResult;
@@ -1,75 +0,0 @@
1
- import { RADAR_SOFT_TARGETS } from '../opportunity.utils.js';
2
- const WEIGHT_COMPOSITION = 0.4;
3
- const WEIGHT_FRESHNESS = 0.3;
4
- const WEIGHT_EXPIRATION = 0.3;
5
- const DEFAULT_THRESHOLD = 0.5;
6
- /**
7
- * Compute composition sub-score: how close current counts are to soft targets.
8
- * Uses normalized distance: 1 - (|actual - target| / max(target, actual, 1)) per category,
9
- * then averages across categories.
10
- */
11
- function scoreComposition(connectionCount, connectorFlowCount, expiredCount) {
12
- const categories = [
13
- { actual: connectionCount, target: RADAR_SOFT_TARGETS.connection },
14
- { actual: connectorFlowCount, target: RADAR_SOFT_TARGETS.connectorFlow },
15
- { actual: expiredCount, target: RADAR_SOFT_TARGETS.expired },
16
- ];
17
- let totalScore = 0;
18
- for (const { actual, target } of categories) {
19
- const diff = Math.abs(actual - target);
20
- const denom = Math.max(target, actual, 1);
21
- totalScore += 1 - diff / denom;
22
- }
23
- return totalScore / categories.length;
24
- }
25
- /**
26
- * Compute freshness sub-score: linear decay from 1 → 0 over freshnessWindowMs.
27
- */
28
- function scoreFreshness(lastRediscoveryAt, freshnessWindowMs) {
29
- if (lastRediscoveryAt == null)
30
- return 0;
31
- const elapsed = Date.now() - lastRediscoveryAt;
32
- if (elapsed <= 0)
33
- return 1;
34
- if (elapsed >= freshnessWindowMs)
35
- return 0;
36
- return 1 - elapsed / freshnessWindowMs;
37
- }
38
- /**
39
- * Compute expiration ratio sub-score: 1 - (expired / total).
40
- */
41
- function scoreExpirationRatio(expiredCount, totalActionable) {
42
- const total = totalActionable + expiredCount;
43
- if (total === 0)
44
- return 0;
45
- return 1 - expiredCount / total;
46
- }
47
- /**
48
- * Compute radar health score (0–1) from current radar state.
49
- * Pure function, no side effects.
50
- *
51
- * @param input - Current radar composition and timing data
52
- * @returns Health score with breakdown and maintenance recommendation
53
- */
54
- export function computeRadarHealth(input) {
55
- const { connectionCount, connectorFlowCount, expiredCount, totalActionable, lastRediscoveryAt, freshnessWindowMs, threshold = DEFAULT_THRESHOLD, } = input;
56
- // Empty radar is always unhealthy
57
- if (totalActionable === 0 && expiredCount === 0) {
58
- return {
59
- score: 0,
60
- breakdown: { composition: 0, freshness: 0, expirationRatio: 0 },
61
- shouldMaintain: true,
62
- };
63
- }
64
- const composition = scoreComposition(connectionCount, connectorFlowCount, expiredCount);
65
- const freshness = scoreFreshness(lastRediscoveryAt, freshnessWindowMs);
66
- const expirationRatio = scoreExpirationRatio(expiredCount, totalActionable);
67
- const score = WEIGHT_COMPOSITION * composition +
68
- WEIGHT_FRESHNESS * freshness +
69
- WEIGHT_EXPIRATION * expirationRatio;
70
- return {
71
- score,
72
- breakdown: { composition, freshness, expirationRatio },
73
- shouldMaintain: score < threshold,
74
- };
75
- }
@@ -1,35 +0,0 @@
1
- import { z } from "zod";
2
- declare const responseFormat: z.ZodObject<{
3
- reasoning: z.ZodString;
4
- speechActType: z.ZodEnum<["DECLARATIVE", "ASSERTIVE"]>;
5
- felicityAuthority: z.ZodNumber;
6
- felicitySincerity: z.ZodNumber;
7
- felicityClarity: z.ZodNumber;
8
- semanticEntropy: z.ZodNumber;
9
- }, "strip", z.ZodTypeAny, {
10
- reasoning: string;
11
- semanticEntropy: number;
12
- felicityAuthority: number;
13
- felicitySincerity: number;
14
- felicityClarity: number;
15
- speechActType: "DECLARATIVE" | "ASSERTIVE";
16
- }, {
17
- reasoning: string;
18
- semanticEntropy: number;
19
- felicityAuthority: number;
20
- felicitySincerity: number;
21
- felicityClarity: number;
22
- speechActType: "DECLARATIVE" | "ASSERTIVE";
23
- }>;
24
- export type PremiseAnalyzerOutput = z.infer<typeof responseFormat>;
25
- /**
26
- * Classifies a premise using adapted Speech Act Theory and scores felicity conditions.
27
- */
28
- export declare class PremiseAnalyzer {
29
- private model;
30
- constructor();
31
- invoke(premiseText: string, profileContext?: string, options?: {
32
- signal?: AbortSignal;
33
- }): Promise<PremiseAnalyzerOutput>;
34
- }
35
- export {};