@indexnetwork/protocol 22.0.0-rc.498.1 → 64.0.0-rc.604.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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 -132
- package/dist/index.js +41 -100
- 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,115 +0,0 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
-
};
|
|
10
|
-
import { HumanMessage, SystemMessage } from "@langchain/core/messages";
|
|
11
|
-
import { z } from "zod";
|
|
12
|
-
import { protocolLogger } from "../shared/observability/protocol.logger.js";
|
|
13
|
-
import { Timed } from "../shared/observability/performance.js";
|
|
14
|
-
import { createStructuredModel } from "../shared/agent/model.config.js";
|
|
15
|
-
import { invokeWithAbortSignal } from "../shared/agent/model-signal.js";
|
|
16
|
-
const invokeLog = protocolLogger("PremiseAnalyzer:invoke");
|
|
17
|
-
const systemPrompt = `
|
|
18
|
-
You are the Premise Analyzer for the Index Network — an intent-driven discovery protocol.
|
|
19
|
-
|
|
20
|
-
Your job: classify a self-descriptive premise using adapted Speech Act Theory, then score its felicity conditions.
|
|
21
|
-
|
|
22
|
-
A premise is a proposition a person asserts about themselves. It is NOT a desire or request (those are intents). Premises are conditions of possibility — facts about who someone is that ground opportunity discovery.
|
|
23
|
-
|
|
24
|
-
Always reason before classifying. Output reasoning first.
|
|
25
|
-
|
|
26
|
-
═══════════════════════════════════════════════════
|
|
27
|
-
STEP 1 — CLASSIFY THE SPEECH ACT
|
|
28
|
-
═══════════════════════════════════════════════════
|
|
29
|
-
|
|
30
|
-
DECLARATIVE: The premise constitutes a fact about the speaker's identity, role, or status.
|
|
31
|
-
Examples:
|
|
32
|
-
· "I am a climate-tech founder" → DECLARATIVE
|
|
33
|
-
· "I hold a PhD in computational biology" → DECLARATIVE
|
|
34
|
-
· "I am based in Berlin" → DECLARATIVE
|
|
35
|
-
· "I am raising Series A" → DECLARATIVE (constitutes current status)
|
|
36
|
-
|
|
37
|
-
ASSERTIVE: The premise describes a capability, experience, or characteristic.
|
|
38
|
-
Examples:
|
|
39
|
-
· "I have 10 years of experience in distributed systems" → ASSERTIVE
|
|
40
|
-
· "I built a collaboration platform used by 50k users" → ASSERTIVE
|
|
41
|
-
· "I speak fluent Mandarin and German" → ASSERTIVE
|
|
42
|
-
· "I specialize in zero-knowledge proofs" → ASSERTIVE
|
|
43
|
-
|
|
44
|
-
═══════════════════════════════════════════════════
|
|
45
|
-
STEP 2 — SCORE THE FELICITY CONDITIONS (0–100)
|
|
46
|
-
═══════════════════════════════════════════════════
|
|
47
|
-
|
|
48
|
-
AUTHORITY (Preparatory Condition)
|
|
49
|
-
Does the speaker plausibly have standing to assert this?
|
|
50
|
-
100 → Highly specific, verifiable claim ("I founded X in 2019")
|
|
51
|
-
60 → Plausible but unverifiable ("I have deep expertise in AI")
|
|
52
|
-
20 → Implausible or grandiose ("I am the world's leading expert")
|
|
53
|
-
|
|
54
|
-
SINCERITY (Sincerity Condition)
|
|
55
|
-
Does the linguistic form suggest genuine self-description vs. aspiration?
|
|
56
|
-
100 → Present tense, first person, specific ("I am a YC-backed founder")
|
|
57
|
-
60 → Hedged or aspirational ("I'm sort of getting into crypto")
|
|
58
|
-
20 → Clearly aspirational masquerading as fact ("I'm basically a VC")
|
|
59
|
-
|
|
60
|
-
CLARITY (Essential Condition)
|
|
61
|
-
How specific and matchable is this premise?
|
|
62
|
-
100 → "I build distributed database systems in Rust at a Series B startup"
|
|
63
|
-
60 → "I work in tech" (clear direction, vague spec)
|
|
64
|
-
20 → "I do things" (barely informative)
|
|
65
|
-
|
|
66
|
-
SEMANTIC ENTROPY → 0.0 to 1.0
|
|
67
|
-
0.0 = maximally constrained (role + domain + location + stage all specified)
|
|
68
|
-
1.0 = no constraints at all
|
|
69
|
-
0.0 example: "I am a senior ML engineer at Google Brain in Mountain View"
|
|
70
|
-
1.0 example: "I'm a person"
|
|
71
|
-
`;
|
|
72
|
-
const responseFormat = z.object({
|
|
73
|
-
reasoning: z.string().describe("Step-by-step analysis: (1) whether this is DECLARATIVE or ASSERTIVE and why, " +
|
|
74
|
-
"(2) felicity condition assessment."),
|
|
75
|
-
speechActType: z.enum(["DECLARATIVE", "ASSERTIVE"]).describe("DECLARATIVE = constitutes identity/role/status; ASSERTIVE = describes capability/experience"),
|
|
76
|
-
felicityAuthority: z.number().min(0).max(100).describe("Preparatory: does the speaker plausibly have standing to assert this (0-100)"),
|
|
77
|
-
felicitySincerity: z.number().min(0).max(100).describe("Sincerity: genuine self-description vs. aspirational (0-100)"),
|
|
78
|
-
felicityClarity: z.number().min(0).max(100).describe("Essential: how specific and matchable is this premise (0-100)"),
|
|
79
|
-
semanticEntropy: z.number().min(0).max(1).describe("Constraint density: 0.0 = maximally specific, 1.0 = completely unconstrained"),
|
|
80
|
-
});
|
|
81
|
-
/**
|
|
82
|
-
* Classifies a premise using adapted Speech Act Theory and scores felicity conditions.
|
|
83
|
-
*/
|
|
84
|
-
export class PremiseAnalyzer {
|
|
85
|
-
constructor() {
|
|
86
|
-
this.model = createStructuredModel("premiseAnalyzer", responseFormat, {
|
|
87
|
-
name: "premise_analyzer"
|
|
88
|
-
});
|
|
89
|
-
}
|
|
90
|
-
async invoke(premiseText, profileContext, options = {}) {
|
|
91
|
-
invokeLog.verbose('Analyzing premise text', { preview: premiseText.substring(0, 50) });
|
|
92
|
-
const contextBlock = profileContext
|
|
93
|
-
? `\n# Speaker Profile (Context)\n${profileContext}\n`
|
|
94
|
-
: "";
|
|
95
|
-
const prompt = `${contextBlock}
|
|
96
|
-
# Premise to Analyze
|
|
97
|
-
"${premiseText}"
|
|
98
|
-
|
|
99
|
-
Classify this premise and score its felicity conditions.`;
|
|
100
|
-
const messages = [
|
|
101
|
-
new SystemMessage(systemPrompt),
|
|
102
|
-
new HumanMessage(prompt),
|
|
103
|
-
];
|
|
104
|
-
const result = await invokeWithAbortSignal(this.model, messages, options.signal);
|
|
105
|
-
const output = responseFormat.parse(result);
|
|
106
|
-
invokeLog.verbose('Analysis result', { speechActType: output.speechActType, semanticEntropy: output.semanticEntropy });
|
|
107
|
-
return output;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
__decorate([
|
|
111
|
-
Timed(),
|
|
112
|
-
__metadata("design:type", Function),
|
|
113
|
-
__metadata("design:paramtypes", [String, String, Object]),
|
|
114
|
-
__metadata("design:returntype", Promise)
|
|
115
|
-
], PremiseAnalyzer.prototype, "invoke", null);
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
declare const premiseItemSchema: z.ZodObject<{
|
|
3
|
-
text: z.ZodString;
|
|
4
|
-
tier: z.ZodEnum<["assertive", "contextual"]>;
|
|
5
|
-
validityDays: z.ZodNullable<z.ZodNumber>;
|
|
6
|
-
}, "strip", z.ZodTypeAny, {
|
|
7
|
-
text: string;
|
|
8
|
-
tier: "assertive" | "contextual";
|
|
9
|
-
validityDays: number | null;
|
|
10
|
-
}, {
|
|
11
|
-
text: string;
|
|
12
|
-
tier: "assertive" | "contextual";
|
|
13
|
-
validityDays: number | null;
|
|
14
|
-
}>;
|
|
15
|
-
declare const responseFormat: z.ZodObject<{
|
|
16
|
-
reasoning: z.ZodString;
|
|
17
|
-
premises: z.ZodArray<z.ZodObject<{
|
|
18
|
-
text: z.ZodString;
|
|
19
|
-
tier: z.ZodEnum<["assertive", "contextual"]>;
|
|
20
|
-
validityDays: z.ZodNullable<z.ZodNumber>;
|
|
21
|
-
}, "strip", z.ZodTypeAny, {
|
|
22
|
-
text: string;
|
|
23
|
-
tier: "assertive" | "contextual";
|
|
24
|
-
validityDays: number | null;
|
|
25
|
-
}, {
|
|
26
|
-
text: string;
|
|
27
|
-
tier: "assertive" | "contextual";
|
|
28
|
-
validityDays: number | null;
|
|
29
|
-
}>, "many">;
|
|
30
|
-
retractedPremiseIds: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
31
|
-
revisedBio: z.ZodDefault<z.ZodNullable<z.ZodString>>;
|
|
32
|
-
}, "strip", z.ZodTypeAny, {
|
|
33
|
-
reasoning: string;
|
|
34
|
-
premises: {
|
|
35
|
-
text: string;
|
|
36
|
-
tier: "assertive" | "contextual";
|
|
37
|
-
validityDays: number | null;
|
|
38
|
-
}[];
|
|
39
|
-
retractedPremiseIds: string[];
|
|
40
|
-
revisedBio: string | null;
|
|
41
|
-
}, {
|
|
42
|
-
reasoning: string;
|
|
43
|
-
premises: {
|
|
44
|
-
text: string;
|
|
45
|
-
tier: "assertive" | "contextual";
|
|
46
|
-
validityDays: number | null;
|
|
47
|
-
}[];
|
|
48
|
-
retractedPremiseIds?: string[] | undefined;
|
|
49
|
-
revisedBio?: string | null | undefined;
|
|
50
|
-
}>;
|
|
51
|
-
/** An existing ACTIVE premise offered to the decomposer for retraction matching. */
|
|
52
|
-
export interface ExistingPremiseRef {
|
|
53
|
-
id: string;
|
|
54
|
-
text: string;
|
|
55
|
-
}
|
|
56
|
-
export type PremiseDecomposerOutput = z.infer<typeof responseFormat>;
|
|
57
|
-
export type DecomposedPremise = z.infer<typeof premiseItemSchema>;
|
|
58
|
-
/**
|
|
59
|
-
* Decomposes free-text input (chat messages, bios, scraped content) into
|
|
60
|
-
* individual atomic premises suitable for the premise graph.
|
|
61
|
-
*/
|
|
62
|
-
export declare class PremiseDecomposer {
|
|
63
|
-
private model;
|
|
64
|
-
constructor();
|
|
65
|
-
invoke(input: string, existingPremises?: ExistingPremiseRef[], currentBio?: string, options?: {
|
|
66
|
-
signal?: AbortSignal;
|
|
67
|
-
}): Promise<PremiseDecomposerOutput>;
|
|
68
|
-
}
|
|
69
|
-
export {};
|
|
@@ -1,213 +0,0 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
-
};
|
|
10
|
-
import { HumanMessage, SystemMessage } from "@langchain/core/messages";
|
|
11
|
-
import { z } from "zod";
|
|
12
|
-
import { protocolLogger } from "../shared/observability/protocol.logger.js";
|
|
13
|
-
import { Timed } from "../shared/observability/performance.js";
|
|
14
|
-
import { createStructuredModel } from "../shared/agent/model.config.js";
|
|
15
|
-
import { invokeWithAbortSignal } from "../shared/agent/model-signal.js";
|
|
16
|
-
const invokeLog = protocolLogger("PremiseDecomposer:invoke");
|
|
17
|
-
const systemPrompt = `
|
|
18
|
-
You are the Premise Decomposer for the Index Network — an intent-driven discovery protocol.
|
|
19
|
-
|
|
20
|
-
Your job: decompose free-text input about a person into individual, atomic premises.
|
|
21
|
-
|
|
22
|
-
A premise is a single self-descriptive proposition — a fact someone asserts about themselves.
|
|
23
|
-
Each premise should be:
|
|
24
|
-
1. **Atomic** — one fact per premise, not compound statements
|
|
25
|
-
2. **First-person** — phrased as "I am...", "I work at...", "I specialize in..."
|
|
26
|
-
3. **Self-descriptive** — about the person's identity, role, skills, interests, location, or context
|
|
27
|
-
4. **Non-redundant** — do not repeat the same information in multiple premises
|
|
28
|
-
|
|
29
|
-
═══════════════════════════════════════════════════
|
|
30
|
-
INPUT TYPES
|
|
31
|
-
═══════════════════════════════════════════════════
|
|
32
|
-
|
|
33
|
-
You may receive:
|
|
34
|
-
- **Chat messages**: "I'm a software engineer at Google, based in SF. I'm interested in AI safety."
|
|
35
|
-
- **Bio text**: A paragraph describing someone's background
|
|
36
|
-
- **Scraped content**: LinkedIn/GitHub/Twitter data about someone
|
|
37
|
-
- **Mixed input**: Name, location, and free-text combined
|
|
38
|
-
|
|
39
|
-
═══════════════════════════════════════════════════
|
|
40
|
-
DECOMPOSITION RULES
|
|
41
|
-
═══════════════════════════════════════════════════
|
|
42
|
-
|
|
43
|
-
1. Extract every distinct factual claim about the person
|
|
44
|
-
2. Convert third-person ("She works at...") to first-person ("I work at...")
|
|
45
|
-
3. Separate compound statements: "I know Python and Rust" → two premises
|
|
46
|
-
4. Capture the FULL breadth of self-description, not just job/title. In particular,
|
|
47
|
-
do not drop:
|
|
48
|
-
- **Skills & expertise** ("I specialize in distributed systems", "I know Rust")
|
|
49
|
-
- **Interests & focus areas** ("I am interested in AI safety", "I care about climate")
|
|
50
|
-
- **Background/narrative context** (education, prior roles, domains, affiliations)
|
|
51
|
-
These map to what a profile would store as interests/skills/context — every such
|
|
52
|
-
fact must surface as its own premise so nothing is lost.
|
|
53
|
-
5. Classify each premise:
|
|
54
|
-
- \`assertive\` — stable identity facts (role, skills, interests, education, location)
|
|
55
|
-
- \`contextual\` — temporal/situational (current projects, events, fundraising status)
|
|
56
|
-
6. For \`contextual\` premises, estimate \`validityDays\` — how many days the fact is
|
|
57
|
-
likely to remain true from now (e.g. "speaking next week" → ~7, "raising a Series A"
|
|
58
|
-
→ ~120, "currently building X" → ~180). Use null for \`assertive\` premises, which
|
|
59
|
-
have no natural expiry.
|
|
60
|
-
7. Skip vague or uninformative statements ("I like stuff", "I'm a person")
|
|
61
|
-
8. Skip desires, requests, or intents ("I'm looking for...", "I want to...") — those are intents, not premises
|
|
62
|
-
9. If the input contains NO extractable premises (e.g. just "Yes" or "Hello"), return an empty array
|
|
63
|
-
10. NEVER extract denials or removal instructions as premises. "I have nothing to do with X",
|
|
64
|
-
"I am not a Y", or "remove X from my profile" are retractions, not facts — handle them
|
|
65
|
-
via the retraction rules below and do NOT emit a premise for them.
|
|
66
|
-
|
|
67
|
-
═════════════════════════════════════════════════
|
|
68
|
-
RETRACTION RULES
|
|
69
|
-
═════════════════════════════════════════════════
|
|
70
|
-
|
|
71
|
-
When the message includes the user's EXISTING PREMISES (listed with ids), you must also
|
|
72
|
-
detect which of them the input disavows and return their ids in \`retractedPremiseIds\`.
|
|
73
|
-
|
|
74
|
-
A premise must be retracted when the input:
|
|
75
|
-
- Explicitly asks to remove it ("remove all mentions of X", "delete the part about Y")
|
|
76
|
-
- Denies it ("I have nothing to do with X", "I never worked at Y", "that's not true")
|
|
77
|
-
- States it no longer holds ("I no longer live in Berlin", "I left Google")
|
|
78
|
-
- Directly contradicts it ("I'm based in Istanbul" contradicts "I am based in Ankara")
|
|
79
|
-
|
|
80
|
-
Rules:
|
|
81
|
-
- Only return ids that appear in the provided EXISTING PREMISES list — never invent ids.
|
|
82
|
-
- Retract EVERY existing premise that matches the disavowed topic, not just the first one.
|
|
83
|
-
- Do not retract premises the input merely omits — silence is not disavowal.
|
|
84
|
-
- If no existing premises are provided, or nothing is disavowed, return an empty array.
|
|
85
|
-
- Retraction and extraction are independent: an input can retract old premises AND
|
|
86
|
-
contribute new ones in the same pass.
|
|
87
|
-
|
|
88
|
-
═══════════════════════════════════════════════════
|
|
89
|
-
BIO REVISION RULES
|
|
90
|
-
═══════════════════════════════════════════════════
|
|
91
|
-
|
|
92
|
-
When the message includes the user's CURRENT BIO, check whether the input disavows,
|
|
93
|
-
removes, or corrects anything that appears in it.
|
|
94
|
-
|
|
95
|
-
- If it does, return \`revisedBio\`: the bio rewritten with those facts removed or
|
|
96
|
-
corrected. Preserve everything the input does not dispute — same tone, similar
|
|
97
|
-
length, no inventions.
|
|
98
|
-
- If the input explicitly rewrites the bio ("update my bio to X"), return that
|
|
99
|
-
rewritten bio.
|
|
100
|
-
- NEVER add new facts to the bio — new information becomes premises, not bio edits.
|
|
101
|
-
Purely additive input ("I also enjoy X") must return revisedBio: null.
|
|
102
|
-
- If the bio is unaffected, or no CURRENT BIO was provided, return null.
|
|
103
|
-
- Never return a revised bio that still mentions a disavowed fact.
|
|
104
|
-
|
|
105
|
-
═══════════════════════════════════════════════════
|
|
106
|
-
EXAMPLES
|
|
107
|
-
═══════════════════════════════════════════════════
|
|
108
|
-
|
|
109
|
-
Input: "I'm a climate tech founder based in Berlin. I have a PhD in renewable energy systems and I'm currently raising Series A."
|
|
110
|
-
Output:
|
|
111
|
-
1. "I am a climate tech founder" (assertive, validityDays: null)
|
|
112
|
-
2. "I am based in Berlin" (assertive, validityDays: null)
|
|
113
|
-
3. "I hold a PhD in renewable energy systems" (assertive, validityDays: null)
|
|
114
|
-
4. "I am currently raising Series A" (contextual, validityDays: 120)
|
|
115
|
-
|
|
116
|
-
Input: "John Doe is a senior ML engineer at Meta in Menlo Park. He has 8 years of experience in NLP and computer vision."
|
|
117
|
-
Output:
|
|
118
|
-
1. "I am a senior ML engineer" (assertive, validityDays: null)
|
|
119
|
-
2. "I work at Meta" (assertive, validityDays: null)
|
|
120
|
-
3. "I am based in Menlo Park" (assertive, validityDays: null)
|
|
121
|
-
4. "I have 8 years of experience in NLP" (assertive, validityDays: null)
|
|
122
|
-
5. "I have experience in computer vision" (assertive, validityDays: null)
|
|
123
|
-
|
|
124
|
-
Input: "Yes, create my profile"
|
|
125
|
-
Output: [] (empty — no premises)
|
|
126
|
-
|
|
127
|
-
Input: "Remove all mentions of the HOPE programming language. I have nothing to do with it. I specialize in compiler design."
|
|
128
|
-
Existing premises:
|
|
129
|
-
- id: aaaa-1 · "I am the creator of the HOPE programming language"
|
|
130
|
-
- id: aaaa-2 · "I specialize in compiler design"
|
|
131
|
-
- id: aaaa-3 · "I am based in Istanbul"
|
|
132
|
-
Current bio: "Software engineer in Istanbul. Creator of the HOPE programming language. Specializes in compiler design."
|
|
133
|
-
Output:
|
|
134
|
-
premises: [] (compiler design already exists as aaaa-2 — nothing new to add)
|
|
135
|
-
retractedPremiseIds: ["aaaa-1"]
|
|
136
|
-
revisedBio: "Software engineer in Istanbul. Specializes in compiler design."
|
|
137
|
-
`;
|
|
138
|
-
const premiseItemSchema = z.object({
|
|
139
|
-
text: z.string().describe("The premise text in first person (e.g. 'I am a software engineer at Google')"),
|
|
140
|
-
tier: z.enum(["assertive", "contextual"]).describe("assertive = stable identity fact; contextual = temporal/situational"),
|
|
141
|
-
validityDays: z.number().int().positive().nullable().describe("For contextual premises: estimated days the fact remains true from now (its validity window). null for assertive premises, which do not expire."),
|
|
142
|
-
});
|
|
143
|
-
const responseFormat = z.object({
|
|
144
|
-
reasoning: z.string().describe("Brief analysis of what factual claims can be extracted from the input"),
|
|
145
|
-
premises: z.array(premiseItemSchema).describe("Array of extracted premises. Empty if input contains no self-descriptive facts."),
|
|
146
|
-
retractedPremiseIds: z.array(z.string()).default([]).describe("Ids of EXISTING premises (from the provided list) that the input disavows, denies, or asks to remove. Empty when nothing is disavowed or no existing premises were provided."),
|
|
147
|
-
revisedBio: z.string().nullable().default(null).describe("When the input disavows or corrects facts that appear in the provided CURRENT BIO, the bio rewritten without those facts (preserving everything else). null when the bio is unaffected or no bio was provided."),
|
|
148
|
-
});
|
|
149
|
-
/**
|
|
150
|
-
* Decomposes free-text input (chat messages, bios, scraped content) into
|
|
151
|
-
* individual atomic premises suitable for the premise graph.
|
|
152
|
-
*/
|
|
153
|
-
export class PremiseDecomposer {
|
|
154
|
-
constructor() {
|
|
155
|
-
this.model = createStructuredModel("premiseDecomposer", responseFormat, {
|
|
156
|
-
name: "premise_decomposer",
|
|
157
|
-
});
|
|
158
|
-
}
|
|
159
|
-
async invoke(input, existingPremises, currentBio, options = {}) {
|
|
160
|
-
invokeLog.verbose('Decomposing input', {
|
|
161
|
-
inputChars: input.length,
|
|
162
|
-
existingPremiseCount: existingPremises?.length ?? 0,
|
|
163
|
-
hasBio: Boolean(currentBio),
|
|
164
|
-
});
|
|
165
|
-
const existingBlock = existingPremises?.length
|
|
166
|
-
? `\n\nEXISTING PREMISES (retract by id when the input disavows them):\n${existingPremises
|
|
167
|
-
.map((p) => `- id: ${p.id} · "${p.text}"`)
|
|
168
|
-
.join("\n")}`
|
|
169
|
-
: "";
|
|
170
|
-
const bioBlock = currentBio?.trim()
|
|
171
|
-
? `\n\nCURRENT BIO (return revisedBio when the input disavows or corrects anything in it):\n${currentBio.trim()}`
|
|
172
|
-
: "";
|
|
173
|
-
const prompt = `Decompose the following text into individual premises:\n\n${input}${existingBlock}${bioBlock}`;
|
|
174
|
-
const messages = [
|
|
175
|
-
new SystemMessage(systemPrompt),
|
|
176
|
-
new HumanMessage(prompt),
|
|
177
|
-
];
|
|
178
|
-
const result = await invokeWithAbortSignal(this.model, messages, options.signal);
|
|
179
|
-
const output = responseFormat.parse(result);
|
|
180
|
-
// Guard against hallucinated ids: only keep retractions that reference premises we offered.
|
|
181
|
-
const knownIds = new Set((existingPremises ?? []).map((p) => p.id));
|
|
182
|
-
const droppedIds = output.retractedPremiseIds.filter((id) => !knownIds.has(id));
|
|
183
|
-
if (droppedIds.length > 0) {
|
|
184
|
-
invokeLog.warn('Dropped unknown retraction ids', { count: droppedIds.length, droppedIds });
|
|
185
|
-
}
|
|
186
|
-
output.retractedPremiseIds = output.retractedPremiseIds.filter((id) => knownIds.has(id));
|
|
187
|
-
// A revised bio is only meaningful when we offered one to revise. Also
|
|
188
|
-
// normalize structured-output quirks: literal "null", empty strings, and
|
|
189
|
-
// no-op rewrites all mean "bio unaffected".
|
|
190
|
-
const normalizedBio = output.revisedBio?.trim();
|
|
191
|
-
if (!currentBio?.trim() ||
|
|
192
|
-
!normalizedBio ||
|
|
193
|
-
normalizedBio.toLowerCase() === 'null' ||
|
|
194
|
-
normalizedBio === currentBio.trim()) {
|
|
195
|
-
output.revisedBio = null;
|
|
196
|
-
}
|
|
197
|
-
else {
|
|
198
|
-
output.revisedBio = normalizedBio;
|
|
199
|
-
}
|
|
200
|
-
invokeLog.verbose('Extracted premises and retractions', {
|
|
201
|
-
premiseCount: output.premises.length,
|
|
202
|
-
retractionCount: output.retractedPremiseIds.length,
|
|
203
|
-
hasRevisedBio: Boolean(output.revisedBio),
|
|
204
|
-
});
|
|
205
|
-
return output;
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
__decorate([
|
|
209
|
-
Timed(),
|
|
210
|
-
__metadata("design:type", Function),
|
|
211
|
-
__metadata("design:paramtypes", [String, Array, String, Object]),
|
|
212
|
-
__metadata("design:returntype", Promise)
|
|
213
|
-
], PremiseDecomposer.prototype, "invoke", null);
|