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