@indexnetwork/protocol 20.0.1-rc.485.1 → 21.0.0-rc.487.1

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 (264) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/IMPLEMENTATION.md +1 -1
  3. package/dist/agents/{ports/agent.dispatcher.port.d.ts → agent.dispatcher.port.d.ts} +2 -2
  4. package/dist/agents/agent.module.d.ts +19 -0
  5. package/dist/agents/agent.module.js +11 -0
  6. package/dist/agents/{ports/agent.repository.port.d.ts → agent.repository.port.d.ts} +1 -1
  7. package/dist/agents/{application/agent.tools.d.ts → agent.tools.d.ts} +2 -2
  8. package/dist/agents/{application/agent.tools.js → agent.tools.js} +2 -2
  9. package/dist/chat/chat-streaming.types.d.ts +1 -1
  10. package/dist/chat/chat.agent.d.ts +1 -7
  11. package/dist/chat/chat.agent.js +0 -94
  12. package/dist/chat/chat.persona.d.ts +1 -2
  13. package/dist/chat/chat.prompt.js +1 -1
  14. package/dist/chat/chat.prompt.modules.d.ts +0 -2
  15. package/dist/chat/negotiator.prompt.d.ts +1 -1
  16. package/dist/chat/negotiator.prompt.js +1 -1
  17. package/dist/contacts/contact.module.d.ts +8 -0
  18. package/dist/contacts/contact.module.js +6 -0
  19. package/dist/contacts/{ports/contact.repository.port.d.ts → contact.repository.port.d.ts} +1 -1
  20. package/dist/contacts/{application/contact.tools.d.ts → contact.tools.d.ts} +2 -2
  21. package/dist/contacts/{application/contact.tools.js → contact.tools.js} +2 -2
  22. package/dist/contexts/context.module.d.ts +13 -0
  23. package/dist/contexts/context.module.js +12 -0
  24. package/dist/contexts/{ports/participant-context.tools.port.d.ts → context.tools.port.d.ts} +1 -1
  25. package/dist/discovery/hyde.graph.d.ts +1 -1
  26. package/dist/discovery/hyde.state.d.ts +1 -1
  27. package/dist/enrichment/enrichment.graph.d.ts +1 -1
  28. package/dist/enrichment/enrichment.state.d.ts +1 -1
  29. package/dist/enrichment/enrichment.tools.context-read.d.ts +1 -1
  30. package/dist/enrichment/enrichment.tools.context-write.d.ts +1 -1
  31. package/dist/enrichment/enrichment.tools.d.ts +1 -1
  32. package/dist/enrichment/enrichment.tools.helpers.d.ts +1 -1
  33. package/dist/index.d.ts +86 -87
  34. package/dist/index.js +61 -62
  35. package/dist/intents/graph/intent.graph.d.ts +1 -1
  36. package/dist/intents/graph/intent.graph.infer.d.ts +1 -1
  37. package/dist/intents/graph/intent.graph.reconcile.d.ts +1 -1
  38. package/dist/intents/graph/intent.graph.shared.d.ts +1 -1
  39. package/dist/intents/graph/intent.graph.state.d.ts +1 -1
  40. package/dist/intents/intent.module.d.ts +1 -1
  41. package/dist/maintenance/maintenance.graph.js +3 -3
  42. package/dist/mcp/mcp.server.js +1 -1
  43. package/dist/negotiations/{application/insight.generator.js → insight.generator.js} +4 -4
  44. package/dist/negotiations/{application/negotiation.agent.d.ts → negotiation.agent.d.ts} +6 -6
  45. package/dist/negotiations/{application/negotiation.agent.js → negotiation.agent.js} +9 -9
  46. package/dist/negotiations/negotiation.attribution.d.ts +1 -1
  47. package/dist/negotiations/{application/negotiation.candidates.d.ts → negotiation.candidates.d.ts} +5 -5
  48. package/dist/negotiations/{application/negotiation.candidates.js → negotiation.candidates.js} +1 -1
  49. package/dist/negotiations/{domain/negotiation.consultation-policy.d.ts → negotiation.consultation-policy.d.ts} +2 -2
  50. package/dist/negotiations/{application/negotiation.detail-reader.d.ts → negotiation.detail-reader.d.ts} +5 -5
  51. package/dist/negotiations/{application/negotiation.detail-reader.js → negotiation.detail-reader.js} +3 -3
  52. package/dist/negotiations/{application/negotiation.graph.d.ts → negotiation.graph.d.ts} +81 -81
  53. package/dist/negotiations/{application/negotiation.graph.finalize.js → negotiation.graph.finalize.js} +4 -4
  54. package/dist/negotiations/{application/negotiation.graph.init.d.ts → negotiation.graph.init.d.ts} +8 -8
  55. package/dist/negotiations/{application/negotiation.graph.init.js → negotiation.graph.init.js} +5 -5
  56. package/dist/negotiations/{application/negotiation.graph.js → negotiation.graph.js} +4 -4
  57. package/dist/negotiations/{application/negotiation.graph.screen.d.ts → negotiation.graph.screen.d.ts} +1 -1
  58. package/dist/negotiations/{application/negotiation.graph.screen.js → negotiation.graph.screen.js} +2 -2
  59. package/dist/negotiations/{application/negotiation.graph.shared.d.ts → negotiation.graph.shared.d.ts} +13 -13
  60. package/dist/negotiations/{application/negotiation.graph.shared.js → negotiation.graph.shared.js} +2 -2
  61. package/dist/negotiations/{application/negotiation.graph.turn.d.ts → negotiation.graph.turn.d.ts} +2 -2
  62. package/dist/negotiations/{application/negotiation.graph.turn.js → negotiation.graph.turn.js} +6 -6
  63. package/dist/negotiations/{domain/negotiation.hermes-contract.d.ts → negotiation.hermes-contract.d.ts} +1 -1
  64. package/dist/negotiations/{domain/negotiation.lifecycle-narration.d.ts → negotiation.lifecycle-narration.d.ts} +1 -1
  65. package/dist/negotiations/negotiation.module.d.ts +28 -0
  66. package/dist/negotiations/negotiation.module.js +19 -0
  67. package/dist/negotiations/{domain/negotiation.protocol.d.ts → negotiation.protocol.d.ts} +1 -1
  68. package/dist/negotiations/{domain/negotiation.protocol.js → negotiation.protocol.js} +1 -1
  69. package/dist/negotiations/{domain/negotiation.question-safety.js → negotiation.question-safety.js} +1 -1
  70. package/dist/negotiations/{application/negotiation.reflect.d.ts → negotiation.reflect.d.ts} +3 -3
  71. package/dist/negotiations/{application/negotiation.reflect.js → negotiation.reflect.js} +5 -5
  72. package/dist/negotiations/{application/negotiation.screen.d.ts → negotiation.screen.d.ts} +8 -8
  73. package/dist/negotiations/{application/negotiation.screen.js → negotiation.screen.js} +7 -7
  74. package/dist/negotiations/{domain/negotiation.state.d.ts → negotiation.state.d.ts} +2 -2
  75. package/dist/negotiations/{domain/negotiation.state.js → negotiation.state.js} +1 -1
  76. package/dist/negotiations/{application/negotiation.summarizer.d.ts → negotiation.summarizer.d.ts} +2 -2
  77. package/dist/negotiations/{application/negotiation.summarizer.js → negotiation.summarizer.js} +4 -4
  78. package/dist/negotiations/{application/negotiation.tools.d.ts → negotiation.tools.d.ts} +3 -3
  79. package/dist/negotiations/{application/negotiation.tools.js → negotiation.tools.js} +9 -9
  80. package/dist/negotiations/{ports/negotiation.tools.port.d.ts → negotiation.tools.port.d.ts} +4 -4
  81. package/dist/networks/indexer.graph.d.ts +1 -1
  82. package/dist/networks/indexer.state.d.ts +1 -1
  83. package/dist/opportunities/{application/delivery-card.cache.d.ts → delivery-card.cache.d.ts} +2 -2
  84. package/dist/opportunities/{application/delivery-card.cache.js → delivery-card.cache.js} +2 -2
  85. package/dist/opportunities/discriminator/discriminator.adjustments.d.ts +1 -1
  86. package/dist/opportunities/discriminator/discriminator.push.d.ts +1 -1
  87. package/dist/opportunities/discriminator/discriminator.question.d.ts +1 -1
  88. package/dist/opportunities/{application/negotiation-context.loader.d.ts → negotiation-context.loader.d.ts} +2 -2
  89. package/dist/opportunities/{application/negotiation-context.loader.js → negotiation-context.loader.js} +1 -1
  90. package/dist/opportunities/{domain/negotiation-summary.builder.d.ts → negotiation-summary.builder.d.ts} +2 -2
  91. package/dist/opportunities/{domain/opportunity.actor.d.ts → opportunity.actor.d.ts} +1 -1
  92. package/dist/opportunities/{application/opportunity.discovery-negotiation-summary.d.ts → opportunity.discovery-negotiation-summary.d.ts} +3 -3
  93. package/dist/opportunities/{application/opportunity.discovery-negotiation-summary.js → opportunity.discovery-negotiation-summary.js} +3 -3
  94. package/dist/opportunities/{application/opportunity.enricher.d.ts → opportunity.enricher.d.ts} +2 -2
  95. package/dist/opportunities/{application/opportunity.enricher.js → opportunity.enricher.js} +2 -2
  96. package/dist/opportunities/{application/opportunity.evaluator.d.ts → opportunity.evaluator.d.ts} +3 -3
  97. package/dist/opportunities/{application/opportunity.evaluator.js → opportunity.evaluator.js} +7 -7
  98. package/dist/opportunities/{domain/opportunity.evidence.d.ts → opportunity.evidence.d.ts} +1 -1
  99. package/dist/opportunities/{application/opportunity.existing-negotiation.d.ts → opportunity.existing-negotiation.d.ts} +2 -2
  100. package/dist/opportunities/{application/opportunity.existing-negotiation.js → opportunity.existing-negotiation.js} +1 -1
  101. package/dist/opportunities/{application/opportunity.feed-selection.d.ts → opportunity.feed-selection.d.ts} +2 -2
  102. package/dist/opportunities/{application/opportunity.feed-selection.js → opportunity.feed-selection.js} +1 -1
  103. package/dist/opportunities/{application/opportunity.graph.d.ts → opportunity.graph.d.ts} +130 -130
  104. package/dist/opportunities/{application/opportunity.graph.discovery-strategies.d.ts → opportunity.graph.discovery-strategies.d.ts} +5 -5
  105. package/dist/opportunities/{application/opportunity.graph.discovery-strategies.js → opportunity.graph.discovery-strategies.js} +5 -5
  106. package/dist/opportunities/{application/opportunity.graph.discovery.d.ts → opportunity.graph.discovery.d.ts} +3 -3
  107. package/dist/opportunities/{application/opportunity.graph.discovery.js → opportunity.graph.discovery.js} +6 -6
  108. package/dist/opportunities/{application/opportunity.graph.evaluation.d.ts → opportunity.graph.evaluation.d.ts} +3 -3
  109. package/dist/opportunities/{application/opportunity.graph.evaluation.js → opportunity.graph.evaluation.js} +8 -8
  110. package/dist/opportunities/{application/opportunity.graph.js → opportunity.graph.js} +13 -13
  111. package/dist/opportunities/{application/opportunity.graph.modes.d.ts → opportunity.graph.modes.d.ts} +37 -37
  112. package/dist/opportunities/{application/opportunity.graph.modes.js → opportunity.graph.modes.js} +9 -9
  113. package/dist/opportunities/{application/opportunity.graph.negotiate.d.ts → opportunity.graph.negotiate.d.ts} +4 -4
  114. package/dist/opportunities/{application/opportunity.graph.negotiate.js → opportunity.graph.negotiate.js} +6 -6
  115. package/dist/opportunities/{application/opportunity.graph.persist-node.d.ts → opportunity.graph.persist-node.d.ts} +2 -2
  116. package/dist/opportunities/{application/opportunity.graph.persist-node.js → opportunity.graph.persist-node.js} +9 -9
  117. package/dist/opportunities/{application/opportunity.graph.prep.d.ts → opportunity.graph.prep.d.ts} +4 -4
  118. package/dist/opportunities/{application/opportunity.graph.prep.js → opportunity.graph.prep.js} +6 -6
  119. package/dist/opportunities/{application/opportunity.graph.shared.d.ts → opportunity.graph.shared.d.ts} +28 -28
  120. package/dist/opportunities/{application/opportunity.graph.shared.js → opportunity.graph.shared.js} +4 -4
  121. package/dist/opportunities/{application/opportunity.introducer.js → opportunity.introducer.js} +1 -1
  122. package/dist/opportunities/{application/opportunity.lifecycle.d.ts → opportunity.lifecycle.d.ts} +1 -1
  123. package/dist/opportunities/{index.d.ts → opportunity.module.d.ts} +24 -24
  124. package/dist/opportunities/{index.js → opportunity.module.js} +16 -16
  125. package/dist/opportunities/{application/opportunity.newborn-stamping.d.ts → opportunity.newborn-stamping.d.ts} +1 -1
  126. package/dist/opportunities/{application/opportunity.owner-provenance.d.ts → opportunity.owner-provenance.d.ts} +1 -1
  127. package/dist/opportunities/{application/opportunity.pending-questions.d.ts → opportunity.pending-questions.d.ts} +1 -1
  128. package/dist/opportunities/{application/opportunity.pending-questions.js → opportunity.pending-questions.js} +1 -1
  129. package/dist/opportunities/{application/opportunity.persist.d.ts → opportunity.persist.d.ts} +3 -3
  130. package/dist/opportunities/{application/opportunity.persist.js → opportunity.persist.js} +3 -3
  131. package/dist/opportunities/{application/opportunity.persistence-admission.d.ts → opportunity.persistence-admission.d.ts} +1 -1
  132. package/dist/opportunities/{application/opportunity.presentation.d.ts → opportunity.presentation.d.ts} +3 -3
  133. package/dist/opportunities/{application/opportunity.presentation.js → opportunity.presentation.js} +6 -6
  134. package/dist/opportunities/{domain/opportunity.state.d.ts → opportunity.state.d.ts} +6 -6
  135. package/dist/opportunities/{application/opportunity.tools.cards.d.ts → opportunity.tools.cards.d.ts} +4 -4
  136. package/dist/opportunities/{application/opportunity.tools.cards.js → opportunity.tools.cards.js} +2 -2
  137. package/dist/opportunities/{application/opportunity.tools.d.ts → opportunity.tools.d.ts} +2 -2
  138. package/dist/opportunities/{application/opportunity.tools.js → opportunity.tools.js} +7 -7
  139. package/dist/opportunities/{application/opportunity.tools.list.d.ts → opportunity.tools.list.d.ts} +2 -2
  140. package/dist/opportunities/{application/opportunity.tools.list.js → opportunity.tools.list.js} +4 -4
  141. package/dist/opportunities/{ports/opportunity.tools.port.d.ts → opportunity.tools.port.d.ts} +2 -2
  142. package/dist/opportunities/{application/opportunity.update-admission.d.ts → opportunity.update-admission.d.ts} +1 -1
  143. package/dist/opportunities/{domain/opportunity.utils.d.ts → opportunity.utils.d.ts} +3 -3
  144. package/dist/opportunities/{domain/opportunity.utils.js → opportunity.utils.js} +3 -3
  145. package/dist/opportunities/radar/radar.graph.d.ts +2 -2
  146. package/dist/opportunities/radar/radar.graph.js +6 -6
  147. package/dist/opportunities/radar/radar.health.js +1 -1
  148. package/dist/opportunities/radar/radar.state.d.ts +1 -1
  149. package/dist/premises/premise.graph.d.ts +1 -1
  150. package/dist/premises/premise.state.d.ts +1 -1
  151. package/dist/premises/premise.tools.d.ts +1 -1
  152. package/dist/questions/question.input.d.ts +1 -1
  153. package/dist/questions/question.input.js +1 -1
  154. package/dist/questions/question.presets.js +1 -1
  155. package/dist/shared/agent/tool.factory.d.ts +1 -1
  156. package/dist/shared/agent/tool.factory.js +9 -10
  157. package/dist/shared/agent/tool.helpers.d.ts +4 -12
  158. package/dist/shared/agent/tool.helpers.js +1 -2
  159. package/dist/shared/agent/tool.registry.d.ts +1 -1
  160. package/dist/shared/agent/tool.registry.js +5 -5
  161. package/dist/shared/interfaces/agent-dispatcher.interface.d.ts +1 -1
  162. package/package.json +1 -1
  163. package/dist/agents/application/index.d.ts +0 -23
  164. package/dist/agents/application/index.js +0 -24
  165. package/dist/agents/domain/index.d.ts +0 -19
  166. package/dist/agents/domain/index.js +0 -1
  167. package/dist/agents/index.d.ts +0 -22
  168. package/dist/agents/index.js +0 -12
  169. package/dist/agents/ports/index.d.ts +0 -27
  170. package/dist/agents/ports/index.js +0 -25
  171. package/dist/chat/reporter.action.contracts.d.ts +0 -36
  172. package/dist/chat/reporter.action.tools.d.ts +0 -17
  173. package/dist/chat/reporter.action.tools.js +0 -145
  174. package/dist/chat/reporter.persona.d.ts +0 -31
  175. package/dist/chat/reporter.persona.js +0 -207
  176. package/dist/chat/reporter.prompt.d.ts +0 -24
  177. package/dist/chat/reporter.prompt.js +0 -149
  178. package/dist/contacts/application/index.d.ts +0 -10
  179. package/dist/contacts/application/index.js +0 -10
  180. package/dist/contacts/domain/index.d.ts +0 -12
  181. package/dist/contacts/domain/index.js +0 -1
  182. package/dist/contacts/index.d.ts +0 -9
  183. package/dist/contacts/index.js +0 -8
  184. package/dist/contacts/ports/index.d.ts +0 -19
  185. package/dist/contacts/ports/index.js +0 -18
  186. package/dist/contexts/application/index.d.ts +0 -72
  187. package/dist/contexts/application/index.js +0 -82
  188. package/dist/contexts/domain/index.d.ts +0 -67
  189. package/dist/contexts/domain/index.js +0 -68
  190. package/dist/contexts/index.d.ts +0 -13
  191. package/dist/contexts/index.js +0 -12
  192. package/dist/contexts/ports/index.d.ts +0 -37
  193. package/dist/contexts/ports/index.js +0 -34
  194. package/dist/contexts/ports/participant-context.tools.port.js +0 -1
  195. package/dist/negotiations/application/index.d.ts +0 -48
  196. package/dist/negotiations/application/index.js +0 -49
  197. package/dist/negotiations/domain/index.d.ts +0 -56
  198. package/dist/negotiations/domain/index.js +0 -57
  199. package/dist/negotiations/index.d.ts +0 -12
  200. package/dist/negotiations/index.js +0 -9
  201. package/dist/negotiations/ports/index.d.ts +0 -16
  202. package/dist/negotiations/ports/index.js +0 -16
  203. package/dist/opportunities/application/index.d.ts +0 -59
  204. package/dist/opportunities/application/index.js +0 -64
  205. package/dist/opportunities/domain/index.d.ts +0 -51
  206. package/dist/opportunities/domain/index.js +0 -48
  207. package/dist/opportunities/ports/index.d.ts +0 -5
  208. package/dist/opportunities/ports/index.js +0 -1
  209. /package/dist/agents/{ports/agent.dispatcher.port.js → agent.dispatcher.port.js} +0 -0
  210. /package/dist/agents/{ports/agent.repository.port.js → agent.repository.port.js} +0 -0
  211. /package/dist/agents/{ports/agent.tools.port.d.ts → agent.tools.port.d.ts} +0 -0
  212. /package/dist/agents/{ports/agent.tools.port.js → agent.tools.port.js} +0 -0
  213. /package/dist/agents/{domain/agent.types.d.ts → agent.types.d.ts} +0 -0
  214. /package/dist/agents/{domain/agent.types.js → agent.types.js} +0 -0
  215. /package/dist/contacts/{ports/contact.repository.port.js → contact.repository.port.js} +0 -0
  216. /package/dist/contacts/{ports/contact.tools.port.d.ts → contact.tools.port.d.ts} +0 -0
  217. /package/dist/contacts/{ports/contact.tools.port.js → contact.tools.port.js} +0 -0
  218. /package/dist/contacts/{domain/contact.types.d.ts → contact.types.d.ts} +0 -0
  219. /package/dist/contacts/{domain/contact.types.js → contact.types.js} +0 -0
  220. /package/dist/{chat/reporter.action.contracts.js → contexts/context.tools.port.js} +0 -0
  221. /package/dist/negotiations/{application/insight.generator.d.ts → insight.generator.d.ts} +0 -0
  222. /package/dist/negotiations/{domain/negotiation.consultation-policy.js → negotiation.consultation-policy.js} +0 -0
  223. /package/dist/negotiations/{domain/negotiation.deadlock.contracts.d.ts → negotiation.deadlock.contracts.d.ts} +0 -0
  224. /package/dist/negotiations/{domain/negotiation.deadlock.contracts.js → negotiation.deadlock.contracts.js} +0 -0
  225. /package/dist/negotiations/{domain/negotiation.deadlock.d.ts → negotiation.deadlock.d.ts} +0 -0
  226. /package/dist/negotiations/{domain/negotiation.deadlock.js → negotiation.deadlock.js} +0 -0
  227. /package/dist/negotiations/{domain/negotiation.expected-speaker.d.ts → negotiation.expected-speaker.d.ts} +0 -0
  228. /package/dist/negotiations/{domain/negotiation.expected-speaker.js → negotiation.expected-speaker.js} +0 -0
  229. /package/dist/negotiations/{application/negotiation.graph.finalize.d.ts → negotiation.graph.finalize.d.ts} +0 -0
  230. /package/dist/negotiations/{domain/negotiation.hermes-contract.js → negotiation.hermes-contract.js} +0 -0
  231. /package/dist/negotiations/{domain/negotiation.intent-snapshot-provenance.d.ts → negotiation.intent-snapshot-provenance.d.ts} +0 -0
  232. /package/dist/negotiations/{domain/negotiation.intent-snapshot-provenance.js → negotiation.intent-snapshot-provenance.js} +0 -0
  233. /package/dist/negotiations/{domain/negotiation.lifecycle-narration.js → negotiation.lifecycle-narration.js} +0 -0
  234. /package/dist/negotiations/{domain/negotiation.memory.d.ts → negotiation.memory.d.ts} +0 -0
  235. /package/dist/negotiations/{domain/negotiation.memory.js → negotiation.memory.js} +0 -0
  236. /package/dist/negotiations/{domain/negotiation.question-safety.d.ts → negotiation.question-safety.d.ts} +0 -0
  237. /package/dist/negotiations/{domain/negotiation.screen.contracts.d.ts → negotiation.screen.contracts.d.ts} +0 -0
  238. /package/dist/negotiations/{domain/negotiation.screen.contracts.js → negotiation.screen.contracts.js} +0 -0
  239. /package/dist/negotiations/{domain/negotiation.stance.contracts.d.ts → negotiation.stance.contracts.d.ts} +0 -0
  240. /package/dist/negotiations/{domain/negotiation.stance.contracts.js → negotiation.stance.contracts.js} +0 -0
  241. /package/dist/negotiations/{domain/negotiation.task-lock-policy.d.ts → negotiation.task-lock-policy.d.ts} +0 -0
  242. /package/dist/negotiations/{domain/negotiation.task-lock-policy.js → negotiation.task-lock-policy.js} +0 -0
  243. /package/dist/negotiations/{ports/negotiation.tools.port.js → negotiation.tools.port.js} +0 -0
  244. /package/dist/negotiations/{domain/negotiation.turn-cap.d.ts → negotiation.turn-cap.d.ts} +0 -0
  245. /package/dist/negotiations/{domain/negotiation.turn-cap.js → negotiation.turn-cap.js} +0 -0
  246. /package/dist/opportunities/{domain/negotiation-summary.builder.js → negotiation-summary.builder.js} +0 -0
  247. /package/dist/opportunities/{domain/opportunity.actor.js → opportunity.actor.js} +0 -0
  248. /package/dist/opportunities/{domain/opportunity.evidence.js → opportunity.evidence.js} +0 -0
  249. /package/dist/opportunities/{application/opportunity.introducer-feature.d.ts → opportunity.introducer-feature.d.ts} +0 -0
  250. /package/dist/opportunities/{application/opportunity.introducer-feature.js → opportunity.introducer-feature.js} +0 -0
  251. /package/dist/opportunities/{application/opportunity.introducer.d.ts → opportunity.introducer.d.ts} +0 -0
  252. /package/dist/opportunities/{domain/opportunity.labels.d.ts → opportunity.labels.d.ts} +0 -0
  253. /package/dist/opportunities/{domain/opportunity.labels.js → opportunity.labels.js} +0 -0
  254. /package/dist/opportunities/{application/opportunity.lifecycle.js → opportunity.lifecycle.js} +0 -0
  255. /package/dist/opportunities/{application/opportunity.newborn-stamping.js → opportunity.newborn-stamping.js} +0 -0
  256. /package/dist/opportunities/{application/opportunity.owner-approval.d.ts → opportunity.owner-approval.d.ts} +0 -0
  257. /package/dist/opportunities/{application/opportunity.owner-approval.js → opportunity.owner-approval.js} +0 -0
  258. /package/dist/opportunities/{application/opportunity.owner-provenance.js → opportunity.owner-provenance.js} +0 -0
  259. /package/dist/opportunities/{application/opportunity.persistence-admission.js → opportunity.persistence-admission.js} +0 -0
  260. /package/dist/opportunities/{domain/opportunity.state.js → opportunity.state.js} +0 -0
  261. /package/dist/opportunities/{ports/opportunity.tools.port.js → opportunity.tools.port.js} +0 -0
  262. /package/dist/opportunities/{application/opportunity.update-admission.js → opportunity.update-admission.js} +0 -0
  263. /package/dist/questions/{index.d.ts → question.module.d.ts} +0 -0
  264. /package/dist/questions/{index.js → question.module.js} +0 -0
@@ -1,6 +1,6 @@
1
1
  import type { Id } from '../interfaces/database.interface.js';
2
- import type { OpportunityGraphDeps } from '../../opportunities/application/opportunity.graph.shared.js';
3
- import type { OpportunityMutationOutcome } from '../../opportunities/application/opportunity.graph.modes.js';
2
+ import type { OpportunityGraphDeps } from '../../opportunities/opportunity.graph.shared.js';
3
+ import type { OpportunityMutationOutcome } from '../../opportunities/opportunity.graph.modes.js';
4
4
  import { z } from "zod";
5
5
  import type { ModelConfig } from "./model.config.js";
6
6
  import type { ToolScopeType } from "./tool.scope.js";
@@ -8,7 +8,7 @@ import type { UserIdentity } from "../schemas/identity.schema.js";
8
8
  import type { ChatGraphCompositeDatabase, CreateOpportunityData, NetworkMembership, UserRecord, UserDatabase, SystemDatabase, NegotiationGraphDatabase } from "../interfaces/database.interface.js";
9
9
  import type { Scraper } from "../interfaces/scraper.interface.js";
10
10
  import type { Cache, HydeCache } from "../interfaces/cache.interface.js";
11
- import type { ContactServiceAdapter } from "../../contacts/ports/index.js";
11
+ import type { ContactServiceAdapter } from "../../contacts/contact.repository.port.js";
12
12
  import type { ProfileEnricher } from "../interfaces/enrichment.interface.js";
13
13
  import type { IntentGraphQueue } from "../interfaces/queue.interface.js";
14
14
  import type { ChatSessionReader } from "../interfaces/chat-session.interface.js";
@@ -16,7 +16,7 @@ import type { ChatSummaryReader } from "../interfaces/chat-summary.interface.js"
16
16
  import type { ChatMessageWriter } from "../interfaces/chat-message-writer.interface.js";
17
17
  import type { NegotiationSummaryReader } from "../interfaces/negotiation-summary.interface.js";
18
18
  import type { Embedder } from "../interfaces/embedder.interface.js";
19
- import type { AgentDatabase } from "../../agents/ports/index.js";
19
+ import type { AgentDatabase } from "../../agents/agent.repository.port.js";
20
20
  import type { NegotiationTimeoutQueue } from "../interfaces/negotiation-events.interface.js";
21
21
  import type { AgentDispatcher } from "../interfaces/agent-dispatcher.interface.js";
22
22
  import type { DeliveryLedger } from "../interfaces/delivery-ledger.interface.js";
@@ -98,8 +98,6 @@ export interface ResolvedToolContext {
98
98
  * which are owner-trusted and receive the full owner view.
99
99
  */
100
100
  mcpCaller?: McpActivityCaller;
101
- /** True only when the gated reporter cleanup-action proposal tool is registered. */
102
- actionToolsEnabled?: boolean;
103
101
  }
104
102
  /**
105
103
  * Dependencies passed when creating tools for a user session.
@@ -137,8 +135,6 @@ interface ToolContextBindings {
137
135
  intentQueue: IntentGraphQueue;
138
136
  /** Contact management operations. */
139
137
  contactService: ContactServiceAdapter;
140
- /** True only when the gated reporter cleanup-action proposal tool is registered. */
141
- actionToolsEnabled?: boolean;
142
138
  /** Chat session reader for loading conversation history. */
143
139
  chatSession: ChatSessionReader;
144
140
  /** Read-through chat-session digest. Optional; consumers fall back to undefined `chatContext`. */
@@ -184,8 +180,6 @@ interface ToolContextBindings {
184
180
  * the backend composition root; when absent the tool is not registered.
185
181
  */
186
182
  chatQuestions?: ChatQuestionsHost;
187
- /** Optional durable persistence for reporter cleanup-action proposals. */
188
- actionProposalStore?: import('../../chat/reporter.action.contracts.js').AgentActionProposalStore;
189
183
  /** Durable host persistence for verified intent proposals shown in chat. */
190
184
  intentProposalStore?: import('../../intents/intent.proposal.js').IntentProposalStore;
191
185
  /**
@@ -292,8 +286,6 @@ export declare function resolveChatContext(params: {
292
286
  networkId?: string;
293
287
  /** Chat session ID for draft opportunities (stored as context.conversationId). */
294
288
  sessionId?: string;
295
- /** Reporter action gate forwarded into the persona prompt/context. */
296
- actionToolsEnabled?: boolean;
297
289
  }): Promise<ResolvedToolContext>;
298
290
  /**
299
291
  * Type for the `defineTool` closure created in `createChatTools`.
@@ -16,7 +16,7 @@ export class ChatContextAccessError extends Error {
16
16
  * This preloads user identity, profile, network memberships, and scoped index role.
17
17
  */
18
18
  export async function resolveChatContext(params) {
19
- const { database, userId, networkId, sessionId, actionToolsEnabled } = params;
19
+ const { database, userId, networkId, sessionId } = params;
20
20
  const [user, rawProfile, userNetworks, globalContext] = await Promise.all([
21
21
  database.getUser(userId),
22
22
  database.getProfile(userId),
@@ -93,7 +93,6 @@ export async function resolveChatContext(params) {
93
93
  scopedMembershipRole,
94
94
  isOnboarding: !(user.onboarding?.completedAt),
95
95
  hasName,
96
- actionToolsEnabled,
97
96
  ...(sessionId !== undefined ? { sessionId } : {}),
98
97
  };
99
98
  }
@@ -1,6 +1,6 @@
1
1
  import type { ToolDeps, ToolRegistry } from './tool.helpers.js';
2
2
  import type { ToolSurface } from './utility.tools.js';
3
- import type { OpportunityOwnerApprovalDeps } from '../../opportunities/ports/opportunity.tools.port.js';
3
+ import type { OpportunityOwnerApprovalDeps } from '../../opportunities/opportunity.tools.port.js';
4
4
  export interface CreateToolRegistryOptions {
5
5
  /**
6
6
  * Tool-surface profile. The default `'rest'` profile (direct HTTP Tool API)
@@ -2,14 +2,14 @@ import { error, redactSensitiveFields } from './tool.helpers.js';
2
2
  import { createEnrichmentTools } from '../../enrichment/enrichment.tools.js';
3
3
  import { Intents } from '../../intents/intent.module.js';
4
4
  import { Networks } from '../../networks/network.module.js';
5
- import { createOpportunityTools } from '../../opportunities/index.js';
5
+ import { createOpportunityTools } from '../../opportunities/opportunity.module.js';
6
6
  import { createUtilityTools } from './utility.tools.js';
7
- import { createContactTools } from '../../contacts/index.js';
8
- import { createAgentTools } from '../../agents/index.js';
9
- import { createNegotiationTools } from '../../negotiations/index.js';
7
+ import { createContactTools } from '../../contacts/contact.module.js';
8
+ import { createAgentTools } from '../../agents/agent.module.js';
9
+ import { createNegotiationTools } from '../../negotiations/negotiation.module.js';
10
10
  import { createChatTools } from '../../chat/chat.tools.js';
11
11
  import { createPremiseTools } from '../../premises/premise.tools.js';
12
- import { createQuestionerTools } from '../../questions/index.js';
12
+ import { createQuestionerTools } from '../../questions/question.module.js';
13
13
  import { protocolLogger } from '../observability/protocol.logger.js';
14
14
  import { requestContext } from '../observability/request-context.js';
15
15
  const logger = protocolLogger('ToolRegistry');
@@ -10,7 +10,7 @@
10
10
  * module cycle through the negotiation capability facade.
11
11
  */
12
12
  import type { NegotiationTurn, UserNegotiationContext, SeedAssessment } from '../schemas/negotiation-state.schema.js';
13
- import type { NegotiatorMemoryEntry } from '../../negotiations/domain/negotiation.memory.js';
13
+ import type { NegotiatorMemoryEntry } from '../../negotiations/negotiation.memory.js';
14
14
  import type { AttributedPriorDialogue } from '../../negotiations/negotiation.attribution.js';
15
15
  import type { NegotiationPrivateConsultation } from './database.interface.js';
16
16
  import type { NegotiationContinuationTimeoutIdentity } from './negotiation-events.interface.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@indexnetwork/protocol",
3
- "version": "20.0.1-rc.485.1",
3
+ "version": "21.0.0-rc.487.1",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -1,23 +0,0 @@
1
- /**
2
- * agents/application — registration, permission, and dispatch tools.
3
- *
4
- * Re-exports the application-tier entry points of the participant-agents
5
- * capability: the agent registration and permission management tool factory.
6
- *
7
- * ## Foreground adapters (participant-directed, authenticated)
8
- *
9
- * - {@link createAgentTools} — `read_own_agent`, `register_agent`,
10
- * `list_agents`, `update_agent`, `delete_agent`, `grant_agent_permission`,
11
- * `revoke_agent_permission` MCP tools for the authenticated registration
12
- * and permission management path (IND-599: `read_own_agent` is the
13
- * agent-principal self-read; the rest are human owner/admin actions).
14
- *
15
- * ## Boundary
16
- *
17
- * Imports from agents/domain, agents/ports, and
18
- * shared/ infrastructure — never from runtime/, host implementations, or
19
- * other capability internals.
20
- *
21
- * IND-548: canonical application layer for the participant-agents capability.
22
- */
23
- export { createAgentTools } from "./agent.tools.js";
@@ -1,24 +0,0 @@
1
- /**
2
- * agents/application — registration, permission, and dispatch tools.
3
- *
4
- * Re-exports the application-tier entry points of the participant-agents
5
- * capability: the agent registration and permission management tool factory.
6
- *
7
- * ## Foreground adapters (participant-directed, authenticated)
8
- *
9
- * - {@link createAgentTools} — `read_own_agent`, `register_agent`,
10
- * `list_agents`, `update_agent`, `delete_agent`, `grant_agent_permission`,
11
- * `revoke_agent_permission` MCP tools for the authenticated registration
12
- * and permission management path (IND-599: `read_own_agent` is the
13
- * agent-principal self-read; the rest are human owner/admin actions).
14
- *
15
- * ## Boundary
16
- *
17
- * Imports from agents/domain, agents/ports, and
18
- * shared/ infrastructure — never from runtime/, host implementations, or
19
- * other capability internals.
20
- *
21
- * IND-548: canonical application layer for the participant-agents capability.
22
- */
23
- // ── Registration and permission management tools ──────────────────────────────
24
- export { createAgentTools } from "./agent.tools.js";
@@ -1,19 +0,0 @@
1
- /**
2
- * agents/domain — pure agent entity value types and constants.
3
- *
4
- * Contains AgentRecord, AgentTransportRecord, AgentPermissionRecord,
5
- * AgentWithRelations, CreateAgentInput, CreateTransportInput,
6
- * GrantPermissionInput, and SYSTEM_AGENT_IDS.
7
- *
8
- * No application logic, no LLM calls, no cross-capability imports.
9
- *
10
- * ## What does NOT live here
11
- *
12
- * - AgentDatabase: persistence port — lives in agents/ports.
13
- * - AgentDispatcher: dispatch port — lives in agents/ports.
14
- * - createAgentTools: application layer — lives in agents/application.
15
- *
16
- * IND-548: canonical domain layer for the participant-agents capability.
17
- */
18
- export type { AgentRecord, AgentTransportRecord, AgentPermissionRecord, AgentWithRelations, CreateAgentInput, CreateTransportInput, GrantPermissionInput, } from "./agent.types.js";
19
- export { SYSTEM_AGENT_IDS } from "./agent.types.js";
@@ -1 +0,0 @@
1
- export { SYSTEM_AGENT_IDS } from "./agent.types.js";
@@ -1,22 +0,0 @@
1
- /**
2
- * participant-agents — the capability's sole cross-capability surface.
3
- *
4
- * Anything outside this capability imports from here and nowhere else.
5
- * Supersedes the capabilities/*.facade.ts + agents/public/ pair; the export
6
- * list is the union of the facades it replaces, so the contract is unchanged.
7
- */
8
- export type { DebugMetaAgent, } from "../chat/chat-streaming.types.js";
9
- export { ChatGraphFactory, } from "../chat/chat.graph.js";
10
- export { ChatInterruptClassifier, } from "../chat/chat.interrupt.classifier.js";
11
- export type { ChatPersonaConfig, } from "../chat/chat.persona.js";
12
- export { SuggestionGenerator, } from "../chat/chat.suggester.js";
13
- export { ChatSummarizer, } from "../chat/chat.summarizer.js";
14
- export { ChatTitleGenerator, } from "../chat/chat.title.generator.js";
15
- export { createChatTools, } from "../chat/chat.tools.js";
16
- export { createNegotiatorPersona, NEGOTIATOR_PERSONA_ID, } from "../chat/negotiator.persona.js";
17
- export { createOnboardingTools, filterOnboardingTools, narrowOnboardingTools, ONBOARDING_PERSONA, ONBOARDING_PERSONA_ID, ONBOARDING_PROFILE_KICKOFF, ONBOARDING_TOOL_NAMES, } from "../chat/onboarding.persona.js";
18
- export { createReporterTools, filterReporterTools, narrowReporterTools, REPORTER_BRIEFING_KICKOFF, REPORTER_PERSONA, REPORTER_PERSONA_ID, REPORTER_TOOL_NAMES, } from "../chat/reporter.persona.js";
19
- export { createSignalTools, filterSignalTools, narrowSignalTools, SIGNAL_NEW_SIGNAL_KICKOFF, SIGNAL_PERSONA, SIGNAL_PERSONA_ID, SIGNAL_TOOL_NAMES, } from "../chat/signal.persona.js";
20
- export { createAgentTools, } from "./application/index.js";
21
- export { SYSTEM_AGENT_IDS, } from "./domain/index.js";
22
- export type { AgentToolDeps, } from "./ports/index.js";
@@ -1,12 +0,0 @@
1
- export { ChatGraphFactory, } from "../chat/chat.graph.js";
2
- export { ChatInterruptClassifier, } from "../chat/chat.interrupt.classifier.js";
3
- export { SuggestionGenerator, } from "../chat/chat.suggester.js";
4
- export { ChatSummarizer, } from "../chat/chat.summarizer.js";
5
- export { ChatTitleGenerator, } from "../chat/chat.title.generator.js";
6
- export { createChatTools, } from "../chat/chat.tools.js";
7
- export { createNegotiatorPersona, NEGOTIATOR_PERSONA_ID, } from "../chat/negotiator.persona.js";
8
- export { createOnboardingTools, filterOnboardingTools, narrowOnboardingTools, ONBOARDING_PERSONA, ONBOARDING_PERSONA_ID, ONBOARDING_PROFILE_KICKOFF, ONBOARDING_TOOL_NAMES, } from "../chat/onboarding.persona.js";
9
- export { createReporterTools, filterReporterTools, narrowReporterTools, REPORTER_BRIEFING_KICKOFF, REPORTER_PERSONA, REPORTER_PERSONA_ID, REPORTER_TOOL_NAMES, } from "../chat/reporter.persona.js";
10
- export { createSignalTools, filterSignalTools, narrowSignalTools, SIGNAL_NEW_SIGNAL_KICKOFF, SIGNAL_PERSONA, SIGNAL_PERSONA_ID, SIGNAL_TOOL_NAMES, } from "../chat/signal.persona.js";
11
- export { createAgentTools, } from "./application/index.js";
12
- export { SYSTEM_AGENT_IDS, } from "./domain/index.js";
@@ -1,27 +0,0 @@
1
- /**
2
- * agents/ports — injected dependency contracts.
3
- *
4
- * Re-exports the narrow port types that the participant-agents module
5
- * declares as explicit injected boundaries. Consumers import these to
6
- * wire host implementations without depending on the application layer.
7
- *
8
- * ## Port groups
9
- *
10
- * ### Persistence port
11
- * - AgentDatabase — agent CRUD, transport management, permission grants.
12
- *
13
- * ### Dispatch port
14
- * - AgentDispatcher — negotiation turn dispatch (external poller + fallback).
15
- * - AgentDispatchResult — dispatch outcome discriminated union.
16
- * - NegotiationTurnPayload — full context sent to the dispatched agent.
17
- *
18
- * ### Tool host port
19
- * - AgentToolDeps — host capabilities for registration/permission tools.
20
- *
21
- * IND-548: canonical ports surface for the participant-agents capability.
22
- * Compatibility path:
23
- * - shared/interfaces/agent-dispatcher.interface.ts → re-exports from here
24
- */
25
- export type { AgentDatabase } from "./agent.repository.port.js";
26
- export type { AgentDispatcher, AgentDispatchResult, NegotiationTurnPayload, } from "./agent.dispatcher.port.js";
27
- export type { AgentToolDeps } from "./agent.tools.port.js";
@@ -1,25 +0,0 @@
1
- /**
2
- * agents/ports — injected dependency contracts.
3
- *
4
- * Re-exports the narrow port types that the participant-agents module
5
- * declares as explicit injected boundaries. Consumers import these to
6
- * wire host implementations without depending on the application layer.
7
- *
8
- * ## Port groups
9
- *
10
- * ### Persistence port
11
- * - AgentDatabase — agent CRUD, transport management, permission grants.
12
- *
13
- * ### Dispatch port
14
- * - AgentDispatcher — negotiation turn dispatch (external poller + fallback).
15
- * - AgentDispatchResult — dispatch outcome discriminated union.
16
- * - NegotiationTurnPayload — full context sent to the dispatched agent.
17
- *
18
- * ### Tool host port
19
- * - AgentToolDeps — host capabilities for registration/permission tools.
20
- *
21
- * IND-548: canonical ports surface for the participant-agents capability.
22
- * Compatibility path:
23
- * - shared/interfaces/agent-dispatcher.interface.ts → re-exports from here
24
- */
25
- export {};
@@ -1,36 +0,0 @@
1
- export type AgentCleanupActionType = "retract_premise" | "narrow_signal" | "pause_signal";
2
- export interface AgentActionProposalSnapshot {
3
- status: string;
4
- updatedAt?: string;
5
- payload?: string;
6
- summary?: string | null;
7
- assertionText?: string;
8
- }
9
- interface AgentActionProposalActionBase {
10
- entityId: string;
11
- currentState: string;
12
- proposedOperation: string;
13
- evidence?: string;
14
- skipped?: boolean;
15
- reason?: string;
16
- snapshot?: AgentActionProposalSnapshot;
17
- description?: string;
18
- }
19
- export type AgentActionProposalAction = (AgentActionProposalActionBase & {
20
- type: "retract_premise";
21
- }) | (AgentActionProposalActionBase & {
22
- type: "narrow_signal";
23
- }) | (AgentActionProposalActionBase & {
24
- type: "pause_signal";
25
- });
26
- export interface AgentActionProposal {
27
- proposalId: string;
28
- userId: string;
29
- conversationId?: string;
30
- actions: AgentActionProposalAction[];
31
- }
32
- /** Host persistence bridge for proposals; the reporter tool never mutates domain rows. */
33
- export interface AgentActionProposalStore {
34
- createProposal(proposal: AgentActionProposal): Promise<void>;
35
- }
36
- export {};
@@ -1,17 +0,0 @@
1
- import type { ChatGraphCompositeDatabase, UserDatabase } from "../shared/interfaces/database.interface.js";
2
- import type { ChatTools, ResolvedToolContext, ToolContext } from "../shared/agent/tool.factory.js";
3
- import type { AgentActionProposalStore } from "./reporter.action.contracts.js";
4
- export type { AgentActionProposal, AgentActionProposalAction, AgentActionProposalSnapshot, AgentActionProposalStore, AgentCleanupActionType, } from "./reporter.action.contracts.js";
5
- export declare const AGENT_ACTION_PROPOSAL_FENCE = "agent_action_proposal";
6
- /**
7
- * Creates the reporter-only proposal tool. It validates owner state and records
8
- * snapshots, but intentionally has no mutation dependency.
9
- */
10
- export declare function createProposeCleanupActionsTool(input: {
11
- database: ChatGraphCompositeDatabase;
12
- userDb: UserDatabase;
13
- context: ResolvedToolContext;
14
- store: AgentActionProposalStore;
15
- }): ChatTools[number];
16
- /** Build the optional action tool from the host-provided ToolContext. */
17
- export declare function createReporterActionTool(deps: ToolContext, context: ResolvedToolContext, userDb: UserDatabase): ChatTools[number] | null;
@@ -1,145 +0,0 @@
1
- import { tool } from "@langchain/core/tools";
2
- import { z } from "zod";
3
- import { success } from "../shared/agent/tool.helpers.js";
4
- export const AGENT_ACTION_PROPOSAL_FENCE = "agent_action_proposal";
5
- const actionInputSchema = z.discriminatedUnion("type", [
6
- z.object({
7
- type: z.literal("retract_premise"),
8
- premiseId: z.string().trim().min(1),
9
- }).strict(),
10
- z.object({
11
- type: z.literal("narrow_signal"),
12
- intentId: z.string().trim().min(1),
13
- description: z.string().trim().min(1),
14
- }).strict(),
15
- z.object({
16
- type: z.literal("pause_signal"),
17
- intentId: z.string().trim().min(1),
18
- evidence: z.string().trim().min(1, "pause_signal evidence is required"),
19
- }).strict(),
20
- ]);
21
- const proposeCleanupActionsSchema = z.object({
22
- actions: z.array(actionInputSchema).min(1).max(5),
23
- }).strict();
24
- function isFullUuid(value) {
25
- return z.string().uuid().safeParse(value).success;
26
- }
27
- function skippedAction(action, entityId, proposedOperation, reason) {
28
- return {
29
- type: action.type,
30
- entityId,
31
- currentState: "UNKNOWN",
32
- proposedOperation,
33
- skipped: true,
34
- reason,
35
- ...(action.type === "pause_signal" ? { evidence: action.evidence } : {}),
36
- };
37
- }
38
- /**
39
- * Creates the reporter-only proposal tool. It validates owner state and records
40
- * snapshots, but intentionally has no mutation dependency.
41
- */
42
- export function createProposeCleanupActionsTool(input) {
43
- const { database, userDb, context, store } = input;
44
- return tool(async (query) => {
45
- const proposalId = crypto.randomUUID();
46
- const actions = [];
47
- for (const action of query.actions) {
48
- const entityId = action.type === "retract_premise" ? action.premiseId : action.intentId;
49
- const operation = action.type === "retract_premise"
50
- ? "RETRACT_PREMISE"
51
- : action.type === "narrow_signal" ? "NARROW_SIGNAL" : "PAUSE_SIGNAL";
52
- if (!isFullUuid(entityId)) {
53
- actions.push(skippedAction(action, entityId, operation, "A full UUID is required; suffixes and ambiguous IDs are not accepted."));
54
- continue;
55
- }
56
- if (action.type === "retract_premise") {
57
- const premise = await database.getPremise(entityId).catch(() => null);
58
- if (!premise || premise.userId !== context.userId) {
59
- actions.push(skippedAction(action, entityId, operation, "Premise not found or not owned by the authenticated user."));
60
- continue;
61
- }
62
- if (premise.status !== "ACTIVE") {
63
- actions.push({
64
- type: action.type,
65
- entityId,
66
- currentState: premise.status,
67
- proposedOperation: operation,
68
- skipped: true,
69
- reason: `Premise is already ${premise.status}.`,
70
- });
71
- continue;
72
- }
73
- actions.push({
74
- type: action.type,
75
- entityId,
76
- currentState: premise.status,
77
- proposedOperation: operation,
78
- snapshot: { status: premise.status, updatedAt: premise.updatedAt.toISOString(), assertionText: premise.assertion.text },
79
- });
80
- continue;
81
- }
82
- const intent = await userDb.getIntent(entityId).catch(() => null);
83
- if (!intent) {
84
- actions.push(skippedAction(action, entityId, operation, "Signal not found or not owned by the authenticated user."));
85
- continue;
86
- }
87
- const status = intent.status ?? "ACTIVE";
88
- if (intent.archivedAt || status === "FULFILLED" || status === "EXPIRED") {
89
- actions.push({
90
- type: action.type,
91
- entityId,
92
- currentState: intent.archivedAt ? "ARCHIVED" : status,
93
- proposedOperation: operation,
94
- ...(action.type === "pause_signal" ? { evidence: action.evidence } : {}),
95
- skipped: true,
96
- reason: "Signal is archived or terminal and cannot be changed.",
97
- });
98
- continue;
99
- }
100
- actions.push({
101
- type: action.type,
102
- entityId,
103
- currentState: status,
104
- proposedOperation: operation,
105
- ...(action.type === "pause_signal" ? { evidence: action.evidence } : {}),
106
- ...(action.type === "narrow_signal" ? { description: action.description } : {}),
107
- snapshot: {
108
- status,
109
- updatedAt: intent.updatedAt.toISOString(),
110
- payload: intent.payload,
111
- summary: intent.summary,
112
- },
113
- });
114
- }
115
- await store.createProposal({
116
- proposalId,
117
- userId: context.userId,
118
- ...(context.sessionId ? { conversationId: context.sessionId } : {}),
119
- actions,
120
- });
121
- const renderedActions = actions.map(({ snapshot: _snapshot, ...entry }) => entry);
122
- const block = `\`\`\`${AGENT_ACTION_PROPOSAL_FENCE}\n${JSON.stringify({ proposalId, actions: renderedActions })}\n\`\`\``;
123
- return success({
124
- proposed: true,
125
- proposalId,
126
- actions: renderedActions,
127
- message: `IMPORTANT: Include this \`\`\`agent_action_proposal code block EXACTLY as-is in your response. It is a REQUEST for owner confirmation; it performs no mutation until the owner confirms it in the UI:\n\n${block}`,
128
- });
129
- }, {
130
- name: "propose_cleanup_actions",
131
- description: "Prepare owner-confirmed cleanup actions from same-turn grounded reads. This tool never mutates data.",
132
- schema: proposeCleanupActionsSchema,
133
- });
134
- }
135
- /** Build the optional action tool from the host-provided ToolContext. */
136
- export function createReporterActionTool(deps, context, userDb) {
137
- if (!deps.actionToolsEnabled || !deps.actionProposalStore)
138
- return null;
139
- return createProposeCleanupActionsTool({
140
- database: deps.database,
141
- userDb,
142
- context,
143
- store: deps.actionProposalStore,
144
- });
145
- }
@@ -1,31 +0,0 @@
1
- import { type ChatTools, type ResolvedToolContext, type ToolContext } from "../shared/agent/tool.factory.js";
2
- import type { UserDatabase } from "../shared/interfaces/database.interface.js";
3
- import type { ChatPersonaConfig } from "./chat.persona.js";
4
- /** Public kickoff marker used by the Agent surface to request its opening briefing. */
5
- export { REPORTER_BRIEFING_KICKOFF } from "./reporter.prompt.js";
6
- /** Stable persona id persisted for read-only Agent reporting sessions. */
7
- export declare const REPORTER_PERSONA_ID = "reporter";
8
- /**
9
- * Exact positive allowlist for the reporter persona. New shared tools remain
10
- * unavailable until they are explicitly reviewed here.
11
- */
12
- export declare const REPORTER_TOOL_NAMES: readonly ["read_intents", "search_intents", "read_user_contexts", "preview_user_context", "read_premises", "read_networks", "read_network_memberships", "read_pending_questions", "list_opportunities", "read_activity_summary"];
13
- interface ReporterToolBoundary {
14
- context: ResolvedToolContext;
15
- userDb: UserDatabase;
16
- findPendingQuestions?: ToolContext["findPendingQuestions"];
17
- }
18
- /** Filters a shared registry through the reporter's positive allowlist. */
19
- export declare function filterReporterTools<T extends {
20
- name: string;
21
- }>(tools: T[]): T[];
22
- /**
23
- * Replaces shared tools whose normal modes can enumerate other users with
24
- * reporter-safe, self-only read contracts. Opportunity listing is deliberately
25
- * aggregate-only: it never returns a counterpart name, row, or explanation.
26
- */
27
- export declare function narrowReporterTools(allowed: ChatTools, boundary: ReporterToolBoundary): ChatTools;
28
- /** Creates the reporter's context-bound, allowlisted toolset. */
29
- export declare function createReporterTools(deps: ToolContext, preResolvedContext?: ResolvedToolContext): Promise<ChatTools>;
30
- /** Restricted read-only Agent reporter persona. */
31
- export declare const REPORTER_PERSONA: ChatPersonaConfig;