@indexnetwork/protocol 14.3.2-rc.477.1 → 17.0.0-rc.479.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +141 -0
- package/IMPLEMENTATION.md +50 -52
- package/STABILITY.md +3 -3
- package/dist/chat/chat.agent.js +2 -3
- package/dist/chat/chat.graph.d.ts +41 -1
- package/dist/chat/chat.graph.js +108 -127
- package/dist/chat/negotiator.persona.d.ts +1 -1
- package/dist/chat/negotiator.persona.js +1 -4
- package/dist/chat/negotiator.prompt.js +1 -2
- package/dist/chat/onboarding.persona.js +0 -1
- package/dist/chat/reporter.persona.js +0 -1
- package/dist/chat/signal.persona.js +0 -1
- package/dist/contacts/application/contact.tools.d.ts +6 -9
- package/dist/contacts/application/contact.tools.js +11 -92
- package/dist/contacts/application/index.d.ts +2 -14
- package/dist/contacts/application/index.js +2 -13
- package/dist/contacts/domain/contact.types.d.ts +0 -23
- package/dist/contacts/domain/index.d.ts +2 -6
- package/dist/contacts/index.d.ts +1 -1
- package/dist/contacts/index.js +1 -1
- package/dist/contacts/ports/contact.repository.port.d.ts +5 -12
- package/dist/contacts/ports/contact.repository.port.js +4 -6
- package/dist/contacts/ports/contact.tools.port.d.ts +1 -3
- package/dist/contacts/ports/contact.tools.port.js +1 -2
- package/dist/contacts/ports/index.d.ts +1 -1
- package/dist/contacts/ports/index.js +1 -1
- package/dist/discovery/hyde.frame.d.ts +4 -4
- package/dist/discovery/hyde.graph.d.ts +71 -12
- package/dist/discovery/hyde.graph.js +337 -335
- package/dist/discovery/lens.inferrer.d.ts +6 -6
- package/dist/enrichment/enrichment.graph.d.ts +127 -9
- package/dist/enrichment/enrichment.graph.js +633 -655
- package/dist/enrichment/enrichment.state.d.ts +1 -1
- package/dist/enrichment/enrichment.tools.context-read.d.ts +10 -0
- package/dist/enrichment/enrichment.tools.context-read.js +353 -0
- package/dist/enrichment/enrichment.tools.context-write.d.ts +9 -0
- package/dist/enrichment/enrichment.tools.context-write.js +417 -0
- package/dist/enrichment/enrichment.tools.d.ts +11 -1
- package/dist/enrichment/enrichment.tools.helpers.d.ts +139 -0
- package/dist/enrichment/enrichment.tools.helpers.js +234 -0
- package/dist/enrichment/enrichment.tools.js +16 -975
- package/dist/index.d.ts +27 -50
- package/dist/index.js +17 -28
- package/dist/intents/application/intent.graph.d.ts +71 -67
- package/dist/intents/application/intent.graph.execute.d.ts +59 -0
- package/dist/intents/application/intent.graph.execute.js +301 -0
- package/dist/intents/application/intent.graph.infer.d.ts +44 -0
- package/dist/intents/application/intent.graph.infer.js +97 -0
- package/dist/intents/application/intent.graph.js +96 -888
- package/dist/intents/application/intent.graph.reconcile.d.ts +71 -0
- package/dist/intents/application/intent.graph.reconcile.js +274 -0
- package/dist/intents/application/intent.graph.shared.d.ts +70 -0
- package/dist/intents/application/intent.graph.shared.js +153 -0
- package/dist/intents/domain/intent.state.d.ts +1 -1
- package/dist/maintenance/maintenance.graph.d.ts +66 -3
- package/dist/maintenance/maintenance.graph.js +155 -156
- package/dist/mcp/mcp.authorization-policy.d.ts +24 -28
- package/dist/mcp/mcp.authorization-policy.js +14 -34
- package/dist/mcp/mcp.server.d.ts +3 -3
- package/dist/mcp/mcp.server.js +14 -20
- package/dist/negotiations/application/negotiation.candidates.d.ts +83 -0
- package/dist/negotiations/application/negotiation.candidates.js +162 -0
- package/dist/negotiations/application/negotiation.graph.d.ts +91 -157
- package/dist/negotiations/application/negotiation.graph.finalize.d.ts +5 -0
- package/dist/negotiations/application/negotiation.graph.finalize.js +280 -0
- package/dist/negotiations/application/negotiation.graph.init.d.ts +54 -0
- package/dist/negotiations/application/negotiation.graph.init.js +227 -0
- package/dist/negotiations/application/negotiation.graph.js +69 -1388
- package/dist/negotiations/application/negotiation.graph.screen.d.ts +23 -0
- package/dist/negotiations/application/negotiation.graph.screen.js +108 -0
- package/dist/negotiations/application/negotiation.graph.shared.d.ts +75 -0
- package/dist/negotiations/application/negotiation.graph.shared.js +125 -0
- package/dist/negotiations/application/negotiation.graph.turn.d.ts +105 -0
- package/dist/negotiations/application/negotiation.graph.turn.js +484 -0
- package/dist/negotiations/domain/negotiation.state.d.ts +1 -1
- package/dist/negotiations/domain/negotiation.state.js +0 -1
- package/dist/networks/application/indexer.graph.d.ts +165 -7
- package/dist/networks/application/indexer.graph.js +339 -388
- package/dist/networks/application/indexer.state.d.ts +1 -1
- package/dist/networks/application/membership.graph.d.ts +83 -5
- package/dist/networks/application/membership.graph.js +177 -207
- package/dist/networks/application/network.graph.d.ts +148 -5
- package/dist/networks/application/network.graph.js +249 -278
- package/dist/networks/domain/membership.state.d.ts +1 -1
- package/dist/networks/domain/network.state.d.ts +1 -1
- package/dist/opportunities/application/delivery-card.cache.d.ts +1 -1
- package/dist/opportunities/application/delivery-card.cache.js +2 -2
- package/dist/opportunities/application/index.d.ts +2 -2
- package/dist/opportunities/application/index.js +2 -2
- package/dist/opportunities/application/opportunity.evaluator.js +1 -1
- package/dist/opportunities/application/opportunity.graph.d.ts +686 -473
- package/dist/opportunities/application/opportunity.graph.discovery-strategies.d.ts +109 -0
- package/dist/opportunities/application/opportunity.graph.discovery-strategies.js +451 -0
- package/dist/opportunities/application/opportunity.graph.discovery.d.ts +69 -0
- package/dist/opportunities/application/opportunity.graph.discovery.js +397 -0
- package/dist/opportunities/application/opportunity.graph.evaluation.d.ts +82 -0
- package/dist/opportunities/application/opportunity.graph.evaluation.js +608 -0
- package/dist/opportunities/application/opportunity.graph.js +120 -3690
- package/dist/opportunities/application/opportunity.graph.modes.d.ts +538 -0
- package/dist/opportunities/application/opportunity.graph.modes.js +538 -0
- package/dist/opportunities/application/opportunity.graph.negotiate.d.ts +109 -0
- package/dist/opportunities/application/opportunity.graph.negotiate.js +392 -0
- package/dist/opportunities/application/opportunity.graph.persist-node.d.ts +93 -0
- package/dist/opportunities/application/opportunity.graph.persist-node.js +765 -0
- package/dist/opportunities/application/opportunity.graph.prep.d.ts +150 -0
- package/dist/opportunities/application/opportunity.graph.prep.js +381 -0
- package/dist/opportunities/application/opportunity.graph.shared.d.ts +173 -0
- package/dist/opportunities/application/opportunity.graph.shared.js +199 -0
- package/dist/opportunities/application/opportunity.presentation.d.ts +399 -0
- package/dist/opportunities/application/{opportunity.presenter.js → opportunity.presentation.js} +735 -9
- package/dist/opportunities/application/opportunity.tools.cards.d.ts +152 -0
- package/dist/opportunities/application/opportunity.tools.cards.js +235 -0
- package/dist/opportunities/application/opportunity.tools.d.ts +8 -114
- package/dist/opportunities/application/opportunity.tools.js +28 -711
- package/dist/opportunities/application/opportunity.tools.list.d.ts +10 -0
- package/dist/opportunities/application/opportunity.tools.list.js +493 -0
- package/dist/opportunities/domain/index.d.ts +3 -3
- package/dist/opportunities/domain/index.js +3 -3
- package/dist/opportunities/domain/opportunity.state.d.ts +19 -19
- package/dist/opportunities/index.d.ts +6 -6
- package/dist/opportunities/index.js +4 -4
- package/dist/opportunities/ports/opportunity.tools.port.d.ts +1 -1
- package/dist/opportunities/radar/radar.graph.d.ts +57 -13
- package/dist/opportunities/radar/radar.graph.js +470 -471
- package/dist/premises/premise.graph.d.ts +88 -20
- package/dist/premises/premise.graph.js +207 -218
- package/dist/questions/domain/question.schema.d.ts +40 -40
- package/dist/shared/agent/tool.factory.js +0 -8
- package/dist/shared/agent/tool.helpers.d.ts +21 -45
- package/dist/shared/agent/tool.helpers.js +1 -2
- package/dist/shared/agent/tool.registry.d.ts +4 -3
- package/dist/shared/agent/tool.registry.js +2 -4
- package/dist/shared/agent/tool.runtime.js +0 -2
- package/dist/shared/agent/utility.tools.js +9 -13
- package/dist/shared/interfaces/database.capabilities.d.ts +100 -0
- package/dist/shared/interfaces/database.capabilities.js +7 -0
- package/dist/shared/interfaces/database.entities.d.ts +533 -0
- package/dist/shared/interfaces/database.entities.js +10 -0
- package/dist/shared/interfaces/database.identity-queries.d.ts +294 -0
- package/dist/shared/interfaces/database.identity-queries.js +4 -0
- package/dist/shared/interfaces/database.interface.d.ts +15 -2277
- package/dist/shared/interfaces/database.interface.js +8 -0
- package/dist/shared/interfaces/database.member-queries.d.ts +221 -0
- package/dist/shared/interfaces/database.member-queries.js +4 -0
- package/dist/shared/interfaces/database.negotiation.d.ts +305 -0
- package/dist/shared/interfaces/database.negotiation.js +26 -0
- package/dist/shared/interfaces/database.network-queries.d.ts +277 -0
- package/dist/shared/interfaces/database.network-queries.js +4 -0
- package/dist/shared/interfaces/database.opportunity-queries.d.ts +285 -0
- package/dist/shared/interfaces/database.opportunity-queries.js +4 -0
- package/dist/shared/interfaces/database.port.d.ts +322 -0
- package/dist/shared/interfaces/database.port.js +29 -0
- package/dist/shared/schemas/discovery-question.schema.d.ts +14 -14
- package/dist/shared/schemas/negotiation-digest.schema.d.ts +2 -2
- package/package.json +2 -15
- package/dist/contacts/application/contact.inviter.d.ts +0 -49
- package/dist/contacts/application/contact.inviter.js +0 -64
- package/dist/integrations/application/index.d.ts +0 -14
- package/dist/integrations/application/index.js +0 -14
- package/dist/integrations/application/integration.tools.d.ts +0 -27
- package/dist/integrations/application/integration.tools.js +0 -98
- package/dist/integrations/domain/index.d.ts +0 -16
- package/dist/integrations/domain/index.js +0 -1
- package/dist/integrations/domain/integration.types.d.ts +0 -51
- package/dist/integrations/domain/integration.types.js +0 -9
- package/dist/integrations/index.d.ts +0 -10
- package/dist/integrations/index.js +0 -8
- package/dist/integrations/ports/index.d.ts +0 -25
- package/dist/integrations/ports/index.js +0 -23
- package/dist/integrations/ports/integration.adapter.port.d.ts +0 -62
- package/dist/integrations/ports/integration.adapter.port.js +0 -15
- package/dist/integrations/ports/integration.importer.port.d.ts +0 -31
- package/dist/integrations/ports/integration.importer.port.js +0 -15
- package/dist/integrations/ports/integration.tools.port.d.ts +0 -25
- package/dist/integrations/ports/integration.tools.port.js +0 -18
- package/dist/opportunities/application/opportunity.card-presentation.d.ts +0 -44
- package/dist/opportunities/application/opportunity.card-presentation.js +0 -93
- package/dist/opportunities/application/opportunity.presenter.d.ts +0 -156
- package/dist/opportunities/domain/opportunity.presentation-cache.d.ts +0 -5
- package/dist/opportunities/domain/opportunity.presentation-cache.js +0 -11
- package/dist/opportunities/domain/opportunity.presentation.d.ts +0 -76
- package/dist/opportunities/domain/opportunity.presentation.js +0 -516
- package/dist/opportunities/domain/opportunity.safe-presentation.d.ts +0 -104
- package/dist/opportunities/domain/opportunity.safe-presentation.js +0 -102
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared safe-presentation primitive for all user-facing opportunity surfaces.
|
|
3
|
-
*
|
|
4
|
-
* Historically every surface (radar, list/discover cards, minimal chat
|
|
5
|
-
* cards, notification emails/Telegram, chat context, delivery cards) invented
|
|
6
|
-
* its own fallback chain for the case where genuine LLM presenter output is
|
|
7
|
-
* unavailable — some sliced raw `interpretation.reasoning` with no
|
|
8
|
-
* sanitization at all. This module is the single standard:
|
|
9
|
-
*
|
|
10
|
-
* raw reasoning
|
|
11
|
-
* → whitespace-normalize
|
|
12
|
-
* → viewer-centric rewrite (incl. UUID stripping + introducer-mention stripping)
|
|
13
|
-
* → boundary-aware truncation
|
|
14
|
-
* → per-surface empty-text default
|
|
15
|
-
*
|
|
16
|
-
* Surfaces choose *policy* (send a sanitized fallback vs skip entirely) via
|
|
17
|
-
* `allowFallback`; they no longer choose (or forget) sanitization steps.
|
|
18
|
-
*
|
|
19
|
-
* See `packages/protocol/src/opportunity/AGENTS.md` for the review checklist this
|
|
20
|
-
* module exists to satisfy.
|
|
21
|
-
*/
|
|
22
|
-
import { truncateAtBoundary, viewerCentricCardSummary } from "./opportunity.presentation.js";
|
|
23
|
-
import { stripUnsupportedOpportunityClaims } from "../../shared/utils/claim-safety.js";
|
|
24
|
-
/** Default max length for fallback summaries (matches presenter internal fallback). */
|
|
25
|
-
export const SAFE_FALLBACK_MAX_CHARS = 300;
|
|
26
|
-
/** Default copy when no reasoning text is available at all. */
|
|
27
|
-
export const DEFAULT_EMPTY_FALLBACK_TEXT = "A promising connection.";
|
|
28
|
-
/** Default headline for fallback presentations (matches presenter internal fallback). */
|
|
29
|
-
export const DEFAULT_FALLBACK_HEADLINE = "A promising connection";
|
|
30
|
-
/** Default CTA for fallback presentations (matches presenter internal fallback). */
|
|
31
|
-
export const DEFAULT_FALLBACK_ACTION = "Take a look and decide whether to reach out.";
|
|
32
|
-
/**
|
|
33
|
-
* Produce safe user-facing fallback copy from raw match reasoning.
|
|
34
|
-
*
|
|
35
|
-
* This is the ONE sanitization standard: UUID stripping, introducer-mention
|
|
36
|
-
* stripping, and viewer-centric rewrite (via {@link viewerCentricCardSummary}),
|
|
37
|
-
* followed by whitespace normalization and boundary-aware truncation (via
|
|
38
|
-
* {@link truncateAtBoundary}). Never returns raw reasoning verbatim beyond
|
|
39
|
-
* these guarantees, and never returns an empty string.
|
|
40
|
-
*
|
|
41
|
-
* @param rawReasoning - Raw `interpretation.reasoning` / `matchReason` text (may be null/undefined).
|
|
42
|
-
* @param opts - Per-surface knobs (names for rewrite, max length, empty-text copy).
|
|
43
|
-
*/
|
|
44
|
-
export function safeFallbackSummary(rawReasoning, opts = {}) {
|
|
45
|
-
const emptyText = opts.emptyText ?? DEFAULT_EMPTY_FALLBACK_TEXT;
|
|
46
|
-
const maxChars = opts.maxChars ?? SAFE_FALLBACK_MAX_CHARS;
|
|
47
|
-
const normalized = (rawReasoning ?? "").replace(/\s+/g, " ").trim();
|
|
48
|
-
if (!normalized)
|
|
49
|
-
return emptyText;
|
|
50
|
-
const claimSafeInput = stripUnsupportedOpportunityClaims(normalized);
|
|
51
|
-
if (!claimSafeInput)
|
|
52
|
-
return emptyText;
|
|
53
|
-
// viewerCentricCardSummary handles UUID stripping, introducer-mention
|
|
54
|
-
// stripping, and the viewer-centric rewrite. Pass Infinity so truncation is
|
|
55
|
-
// handled by boundary-aware logic below instead of a mid-word hard slice.
|
|
56
|
-
const rewritten = viewerCentricCardSummary(claimSafeInput, opts.counterpartName ?? "", Number.POSITIVE_INFINITY, opts.viewerName, opts.introducerName ?? undefined);
|
|
57
|
-
// Claim validation intentionally runs after viewer-centric rewriting: rewrite
|
|
58
|
-
// heuristics may select or join different source sentences, and the final
|
|
59
|
-
// user-facing sentence set is what must be safe.
|
|
60
|
-
const claimSafe = stripUnsupportedOpportunityClaims(rewritten);
|
|
61
|
-
const truncated = truncateAtBoundary(claimSafe, maxChars);
|
|
62
|
-
return truncated || emptyText;
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Resolve the safe user-facing presentation for an opportunity, or signal skip.
|
|
66
|
-
*
|
|
67
|
-
* Resolution order:
|
|
68
|
-
* 1. Genuine presenter output (`homeCardPresentation` present, non-empty, and
|
|
69
|
-
* NOT tagged `isFallback` by the presenter) — claim-validated before return.
|
|
70
|
-
* 2. Otherwise, if `allowFallback` (default true): sanitized fallback copy
|
|
71
|
-
* built from `matchReason` / `interpretation.reasoning` via
|
|
72
|
-
* {@link safeFallbackSummary}.
|
|
73
|
-
* 3. Otherwise `null` — the surface must skip this opportunity.
|
|
74
|
-
*
|
|
75
|
-
* Raw `interpretation.reasoning` / `matchReason` never reaches the caller
|
|
76
|
-
* unsanitized through this function.
|
|
77
|
-
*/
|
|
78
|
-
export function getSafePresentationOrSkip(source, opts = {}) {
|
|
79
|
-
const candidate = source.homeCardPresentation;
|
|
80
|
-
if (candidate?.personalizedSummary?.trim() && !candidate.isFallback) {
|
|
81
|
-
const summary = stripUnsupportedOpportunityClaims(candidate.personalizedSummary);
|
|
82
|
-
if (summary) {
|
|
83
|
-
return {
|
|
84
|
-
headline: stripUnsupportedOpportunityClaims(candidate.headline) ||
|
|
85
|
-
DEFAULT_FALLBACK_HEADLINE,
|
|
86
|
-
summary,
|
|
87
|
-
suggestedAction: stripUnsupportedOpportunityClaims(candidate.suggestedAction) ||
|
|
88
|
-
DEFAULT_FALLBACK_ACTION,
|
|
89
|
-
isFallback: false,
|
|
90
|
-
};
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
if (opts.allowFallback === false)
|
|
94
|
-
return null;
|
|
95
|
-
const rawReasoning = source.matchReason ?? source.interpretation?.reasoning ?? "";
|
|
96
|
-
return {
|
|
97
|
-
headline: DEFAULT_FALLBACK_HEADLINE,
|
|
98
|
-
summary: safeFallbackSummary(rawReasoning, opts),
|
|
99
|
-
suggestedAction: DEFAULT_FALLBACK_ACTION,
|
|
100
|
-
isFallback: true,
|
|
101
|
-
};
|
|
102
|
-
}
|