@memberjunction/ai-agents 6.2.0-edge.0 → 6.2.0-edge.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/README.md +43 -0
- package/dist/AgentDataPreloader.d.ts +4 -0
- package/dist/AgentDataPreloader.d.ts.map +1 -1
- package/dist/AgentDataPreloader.js +10 -2
- package/dist/AgentDataPreloader.js.map +1 -1
- package/dist/AgentDecisionService.d.ts +83 -0
- package/dist/AgentDecisionService.d.ts.map +1 -0
- package/dist/AgentDecisionService.js +155 -0
- package/dist/AgentDecisionService.js.map +1 -0
- package/dist/AgentRunner.d.ts +16 -4
- package/dist/AgentRunner.d.ts.map +1 -1
- package/dist/AgentRunner.js +55 -32
- package/dist/AgentRunner.js.map +1 -1
- package/dist/ArtifactToolManager.d.ts +4 -4
- package/dist/ArtifactToolManager.js +10 -10
- package/dist/ConversationToolManager.d.ts +16 -3
- package/dist/ConversationToolManager.d.ts.map +1 -1
- package/dist/ConversationToolManager.js +28 -5
- package/dist/ConversationToolManager.js.map +1 -1
- package/dist/KnowledgeAgent.d.ts.map +1 -1
- package/dist/KnowledgeAgent.js +6 -6
- package/dist/KnowledgeAgent.js.map +1 -1
- package/dist/PayloadChangeAnalyzer.d.ts +4 -0
- package/dist/PayloadChangeAnalyzer.d.ts.map +1 -1
- package/dist/PayloadChangeAnalyzer.js +10 -2
- package/dist/PayloadChangeAnalyzer.js.map +1 -1
- package/dist/PayloadFeedbackManager.d.ts +120 -13
- package/dist/PayloadFeedbackManager.d.ts.map +1 -1
- package/dist/PayloadFeedbackManager.js +244 -88
- package/dist/PayloadFeedbackManager.js.map +1 -1
- package/dist/PayloadManager.d.ts +27 -0
- package/dist/PayloadManager.d.ts.map +1 -1
- package/dist/PayloadManager.js +47 -15
- package/dist/PayloadManager.js.map +1 -1
- package/dist/agent-context-injector.d.ts +47 -3
- package/dist/agent-context-injector.d.ts.map +1 -1
- package/dist/agent-context-injector.js +77 -10
- package/dist/agent-context-injector.js.map +1 -1
- package/dist/agent-memory-context-builder.d.ts +13 -0
- package/dist/agent-memory-context-builder.d.ts.map +1 -1
- package/dist/agent-memory-context-builder.js +24 -5
- package/dist/agent-memory-context-builder.js.map +1 -1
- package/dist/agent-types/base-agent-type.d.ts +16 -0
- package/dist/agent-types/base-agent-type.d.ts.map +1 -1
- package/dist/agent-types/base-agent-type.js +20 -1
- package/dist/agent-types/base-agent-type.js.map +1 -1
- package/dist/agent-types/flow-agent-type.d.ts +106 -0
- package/dist/agent-types/flow-agent-type.d.ts.map +1 -1
- package/dist/agent-types/flow-agent-type.js +299 -29
- package/dist/agent-types/flow-agent-type.js.map +1 -1
- package/dist/agent-types/flow-graph-executor.d.ts +12 -1
- package/dist/agent-types/flow-graph-executor.d.ts.map +1 -1
- package/dist/agent-types/flow-graph-executor.js +25 -1
- package/dist/agent-types/flow-graph-executor.js.map +1 -1
- package/dist/agent-types/loop-agent-prompt-params.d.ts +258 -11
- package/dist/agent-types/loop-agent-prompt-params.d.ts.map +1 -1
- package/dist/agent-types/loop-agent-prompt-params.js +49 -2
- package/dist/agent-types/loop-agent-prompt-params.js.map +1 -1
- package/dist/agent-types/loop-agent-response-type.d.ts +12 -1
- package/dist/agent-types/loop-agent-response-type.d.ts.map +1 -1
- package/dist/agent-types/loop-agent-response-type.js.map +1 -1
- package/dist/agent-types/loop-agent-type.d.ts +6 -0
- package/dist/agent-types/loop-agent-type.d.ts.map +1 -1
- package/dist/agent-types/loop-agent-type.js +42 -3
- package/dist/agent-types/loop-agent-type.js.map +1 -1
- package/dist/artifact-target-plan.d.ts +2 -0
- package/dist/artifact-target-plan.d.ts.map +1 -1
- package/dist/artifact-target-plan.js +5 -1
- package/dist/artifact-target-plan.js.map +1 -1
- package/dist/base-agent.d.ts +886 -5
- package/dist/base-agent.d.ts.map +1 -1
- package/dist/base-agent.js +2567 -164
- package/dist/base-agent.js.map +1 -1
- package/dist/catalog-narrowing.d.ts +136 -0
- package/dist/catalog-narrowing.d.ts.map +1 -0
- package/dist/catalog-narrowing.js +212 -0
- package/dist/catalog-narrowing.js.map +1 -0
- package/dist/constants.d.ts +57 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +70 -0
- package/dist/constants.js.map +1 -0
- package/dist/decision-discovery.d.ts +401 -0
- package/dist/decision-discovery.d.ts.map +1 -0
- package/dist/decision-discovery.js +511 -0
- package/dist/decision-discovery.js.map +1 -0
- package/dist/finish-if-mode-warnings.d.ts +39 -0
- package/dist/finish-if-mode-warnings.d.ts.map +1 -0
- package/dist/finish-if-mode-warnings.js +78 -0
- package/dist/finish-if-mode-warnings.js.map +1 -0
- package/dist/finish-if-state.d.ts +72 -0
- package/dist/finish-if-state.d.ts.map +1 -0
- package/dist/finish-if-state.js +109 -0
- package/dist/finish-if-state.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -1
- package/dist/memory-manager-agent.d.ts +119 -13
- package/dist/memory-manager-agent.d.ts.map +1 -1
- package/dist/memory-manager-agent.js +237 -74
- package/dist/memory-manager-agent.js.map +1 -1
- package/dist/memory-note-gate.d.ts +208 -0
- package/dist/memory-note-gate.d.ts.map +1 -0
- package/dist/memory-note-gate.js +294 -0
- package/dist/memory-note-gate.js.map +1 -0
- package/dist/native-tools/action-tool-builder.d.ts +8 -0
- package/dist/native-tools/action-tool-builder.d.ts.map +1 -1
- package/dist/native-tools/action-tool-builder.js +22 -6
- package/dist/native-tools/action-tool-builder.js.map +1 -1
- package/dist/native-tools/control-tools.d.ts +8 -0
- package/dist/native-tools/control-tools.d.ts.map +1 -1
- package/dist/native-tools/control-tools.js +25 -9
- package/dist/native-tools/control-tools.js.map +1 -1
- package/dist/native-tools/dual-channel.d.ts +2 -0
- package/dist/native-tools/dual-channel.d.ts.map +1 -1
- package/dist/native-tools/dual-channel.js +5 -1
- package/dist/native-tools/dual-channel.js.map +1 -1
- package/dist/native-tools/tool-result-turns.d.ts +9 -0
- package/dist/native-tools/tool-result-turns.d.ts.map +1 -1
- package/dist/native-tools/tool-result-turns.js +15 -3
- package/dist/native-tools/tool-result-turns.js.map +1 -1
- package/dist/pipeline/coerce.d.ts +14 -0
- package/dist/pipeline/coerce.d.ts.map +1 -1
- package/dist/pipeline/coerce.js +37 -9
- package/dist/pipeline/coerce.js.map +1 -1
- package/dist/pipeline/jsonpath-eval.d.ts +4 -0
- package/dist/pipeline/jsonpath-eval.d.ts.map +1 -1
- package/dist/pipeline/jsonpath-eval.js +10 -2
- package/dist/pipeline/jsonpath-eval.js.map +1 -1
- package/dist/pipeline/operators.js +16 -16
- package/dist/pipeline/path.d.ts +6 -0
- package/dist/pipeline/path.d.ts.map +1 -1
- package/dist/pipeline/path.js +17 -5
- package/dist/pipeline/path.js.map +1 -1
- package/dist/pipeline/pipeline-executor.js +10 -10
- package/dist/pipeline/predicate.d.ts +4 -0
- package/dist/pipeline/predicate.d.ts.map +1 -1
- package/dist/pipeline/predicate.js +15 -7
- package/dist/pipeline/predicate.js.map +1 -1
- package/dist/pipeline/providers/action-provider.js +2 -2
- package/dist/pipeline/providers/artifact-tool-provider.js +2 -2
- package/dist/pipeline/providers/serialize.d.ts +4 -0
- package/dist/pipeline/providers/serialize.d.ts.map +1 -1
- package/dist/pipeline/providers/serialize.js +10 -2
- package/dist/pipeline/providers/serialize.js.map +1 -1
- package/dist/pipeline/template.d.ts +4 -0
- package/dist/pipeline/template.d.ts.map +1 -1
- package/dist/pipeline/template.js +15 -7
- package/dist/pipeline/template.js.map +1 -1
- package/dist/realtime/agent-media-library.d.ts +10 -0
- package/dist/realtime/agent-media-library.d.ts.map +1 -1
- package/dist/realtime/agent-media-library.js +29 -9
- package/dist/realtime/agent-media-library.js.map +1 -1
- package/dist/realtime/bridge-realtime-session-factory.d.ts +5 -2
- package/dist/realtime/bridge-realtime-session-factory.d.ts.map +1 -1
- package/dist/realtime/bridge-realtime-session-factory.js +7 -4
- package/dist/realtime/bridge-realtime-session-factory.js.map +1 -1
- package/dist/realtime/bridge-room-transcript-sink.d.ts.map +1 -1
- package/dist/realtime/bridge-room-transcript-sink.js +15 -9
- package/dist/realtime/bridge-room-transcript-sink.js.map +1 -1
- package/dist/realtime/media-channel-server.js +2 -2
- package/dist/realtime/meeting-controls-state.d.ts +2 -0
- package/dist/realtime/meeting-controls-state.d.ts.map +1 -1
- package/dist/realtime/meeting-controls-state.js +6 -2
- package/dist/realtime/meeting-controls-state.js.map +1 -1
- package/dist/realtime/realtime-channel-server-data-context.d.ts +2 -0
- package/dist/realtime/realtime-channel-server-data-context.d.ts.map +1 -1
- package/dist/realtime/realtime-channel-server-data-context.js +5 -1
- package/dist/realtime/realtime-channel-server-data-context.js.map +1 -1
- package/dist/realtime/realtime-channel-server-host.js +2 -2
- package/dist/realtime/realtime-client-session-service.d.ts +58 -12
- package/dist/realtime/realtime-client-session-service.d.ts.map +1 -1
- package/dist/realtime/realtime-client-session-service.js +91 -31
- package/dist/realtime/realtime-client-session-service.js.map +1 -1
- package/dist/realtime/realtime-coagent-config.d.ts +2 -0
- package/dist/realtime/realtime-coagent-config.d.ts.map +1 -1
- package/dist/realtime/realtime-coagent-config.js +6 -2
- package/dist/realtime/realtime-coagent-config.js.map +1 -1
- package/dist/realtime/realtime-recording-store.d.ts +15 -0
- package/dist/realtime/realtime-recording-store.d.ts.map +1 -1
- package/dist/realtime/realtime-recording-store.js +31 -7
- package/dist/realtime/realtime-recording-store.js.map +1 -1
- package/dist/realtime/realtime-session-runner.d.ts +4 -4
- package/dist/realtime/realtime-session-runner.js +9 -9
- package/dist/realtime/realtime-session-runner.js.map +1 -1
- package/dist/realtime/realtime-vendor-resolution.d.ts +8 -3
- package/dist/realtime/realtime-vendor-resolution.d.ts.map +1 -1
- package/dist/realtime/realtime-vendor-resolution.js +3 -3
- package/dist/realtime/realtime-vendor-resolution.js.map +1 -1
- package/dist/rubric-evaluation-agent-runner.d.ts +2 -0
- package/dist/rubric-evaluation-agent-runner.d.ts.map +1 -0
- package/dist/rubric-evaluation-agent-runner.js +38 -0
- package/dist/rubric-evaluation-agent-runner.js.map +1 -0
- package/dist/runtime-state-fragment.d.ts +101 -0
- package/dist/runtime-state-fragment.d.ts.map +1 -0
- package/dist/runtime-state-fragment.js +173 -0
- package/dist/runtime-state-fragment.js.map +1 -0
- package/dist/self-check.d.ts +98 -0
- package/dist/self-check.d.ts.map +1 -0
- package/dist/self-check.js +74 -0
- package/dist/self-check.js.map +1 -0
- package/dist/types/payload-operations.d.ts +8 -0
- package/dist/types/payload-operations.d.ts.map +1 -1
- package/dist/types/payload-operations.js +21 -5
- package/dist/types/payload-operations.js.map +1 -1
- package/dist/utils/ConversationMessageResolver.d.ts +4 -0
- package/dist/utils/ConversationMessageResolver.d.ts.map +1 -1
- package/dist/utils/ConversationMessageResolver.js +10 -2
- package/dist/utils/ConversationMessageResolver.js.map +1 -1
- package/dist/volatile-child-prompt.d.ts +33 -0
- package/dist/volatile-child-prompt.d.ts.map +1 -0
- package/dist/volatile-child-prompt.js +76 -0
- package/dist/volatile-child-prompt.js.map +1 -0
- package/package.json +21 -18
|
@@ -30,8 +30,9 @@
|
|
|
30
30
|
* @author MemberJunction.com
|
|
31
31
|
*/
|
|
32
32
|
import { UserInfo, IMetadataProvider } from '@memberjunction/core';
|
|
33
|
+
import { MJLruCache } from '@memberjunction/global';
|
|
33
34
|
import { MJActionEntityExtended } from '@memberjunction/actions-base';
|
|
34
|
-
import { BaseRealtimeModel, ChatMessage, ClientRealtimeSessionConfig, IRealtimeSession, JSONObject, RealtimeSessionParams, RealtimeToolCall, RealtimeToolDefinition } from '@memberjunction/ai';
|
|
35
|
+
import { BaseRealtimeModel, ChatMessage, ClientRealtimeSessionConfig, AIAPIKey, AIAPIKeyResolver, IRealtimeSession, JSONObject, RealtimeSessionParams, RealtimeToolCall, RealtimeToolDefinition } from '@memberjunction/ai';
|
|
35
36
|
import { MJAIAgentEntityExtended, MJAIModelEntityExtended, MJAIAgentRunEntityExtended, AgentExecutionProgressCallback, ExecuteAgentResult, AppContextSnapshot } from '@memberjunction/ai-core-plus';
|
|
36
37
|
import { RealtimeToolBroker, RealtimeColleague, DelegateToTargetRequest, DelegatedResult, DelegatedRunArtifact, ToolExecutionResult } from './realtime-tool-broker.js';
|
|
37
38
|
import { RealtimeAllowedAgent, RealtimeCoAgentConfig, RealtimeDirectActionsConfig } from './realtime-coagent-config.js';
|
|
@@ -44,6 +45,17 @@ import { RealtimeVendorSelection } from './realtime-vendor-resolution.js';
|
|
|
44
45
|
* id — it is a runtime choice made when the voice session starts.
|
|
45
46
|
*/
|
|
46
47
|
export interface PrepareClientSessionInput {
|
|
48
|
+
/**
|
|
49
|
+
* The run's runtime API keys, when the session is prepared from an agent run that carries them
|
|
50
|
+
* (`ExecuteAgentParams.apiKeys`, set by `BaseAgent.StartBridgeRealtimeSession`). Vendor selection
|
|
51
|
+
* and the minted session try these first, per driver class; for a class they do not key, this
|
|
52
|
+
* service's {@link RealtimeClientSessionService.getAPIKeyForDriver} seam answers (by default the
|
|
53
|
+
* `AI_VENDOR_API_KEY__<driver>` environment key). That is the same order as `GetAIAPIKey` — the
|
|
54
|
+
* legacy tier of prompt key resolution. MJ Credentials / `AICredentialBinding`s, which a prompt
|
|
55
|
+
* consults first, are not consulted by realtime. Absent ⇒ the seam alone, which is every
|
|
56
|
+
* client-initiated session today.
|
|
57
|
+
*/
|
|
58
|
+
APIKeys?: AIAPIKey[];
|
|
47
59
|
/** The Realtime Co-Agent entity. Provide this OR {@link PrepareClientSessionInput.CoAgentID}. */
|
|
48
60
|
CoAgent?: MJAIAgentEntityExtended;
|
|
49
61
|
/** The Realtime Co-Agent id (resolved from cached metadata). Provide this OR {@link PrepareClientSessionInput.CoAgent}. */
|
|
@@ -405,12 +417,18 @@ export declare class ToolArgumentsError extends Error {
|
|
|
405
417
|
* reaches for the global default provider, so it is safe in multi-provider/multi-tenant servers.
|
|
406
418
|
*/
|
|
407
419
|
export declare class RealtimeClientSessionService {
|
|
408
|
-
/**
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
420
|
+
/**
|
|
421
|
+
* Maps session id -> (wireName -> MJActionEntityExtended) built during tool projection.
|
|
422
|
+
* Bounded with `MJLruCache` (rather than a plain `Map`): the resolver holds ONE shared service
|
|
423
|
+
* instance for the process lifetime (see class doc above), and there is no "session ended" hook
|
|
424
|
+
* this service can key eviction off — every voice session ever prepared would otherwise leave an
|
|
425
|
+
* entry here forever. Same TTL/maxSize rationale as {@link promptRunWriteChains} below.
|
|
426
|
+
*/
|
|
427
|
+
protected readonly sessionWireActionMaps: MJLruCache<string, Map<string, MJActionEntityExtended>>;
|
|
428
|
+
/** Maps targetAgentID -> (wireName -> MJActionEntityExtended) fallback built during tool projection. Bounded for the same reason as {@link sessionWireActionMaps}. */
|
|
429
|
+
protected readonly targetWireActionMaps: MJLruCache<string, Map<string, MJActionEntityExtended>>;
|
|
430
|
+
/** Maps session id -> direct actions config resolved during session prep. Bounded for the same reason as {@link sessionWireActionMaps}. */
|
|
431
|
+
protected readonly sessionDirectConfigs: MJLruCache<string, RealtimeDirectActionsConfig>;
|
|
414
432
|
/**
|
|
415
433
|
* Builds a wire-name to action map from candidate actions, sanitizing each
|
|
416
434
|
* action's name and deduplicating collisions (first action wins).
|
|
@@ -418,6 +436,8 @@ export declare class RealtimeClientSessionService {
|
|
|
418
436
|
* @param actions The action entities to index by wire name.
|
|
419
437
|
* @returns Map of wire-name to action entity.
|
|
420
438
|
*/
|
|
439
|
+
BuildWireActionMap(actions: MJActionEntityExtended[]): Map<string, MJActionEntityExtended>;
|
|
440
|
+
/** @deprecated Use {@link BuildWireActionMap}. */
|
|
421
441
|
buildWireActionMap(actions: MJActionEntityExtended[]): Map<string, MJActionEntityExtended>;
|
|
422
442
|
/**
|
|
423
443
|
* The seeded name of the `MJ: AI Prompts` row whose `TemplateText` carries the first-person
|
|
@@ -784,6 +804,16 @@ export declare class RealtimeClientSessionService {
|
|
|
784
804
|
* @returns The resolution outcome (resolution or failure reason).
|
|
785
805
|
*/
|
|
786
806
|
protected resolveModelForSession(input: PrepareClientSessionInput, coAgent: MJAIAgentEntityExtended, effectiveConfig?: RealtimeCoAgentConfig): Promise<RealtimeModelResolutionOutcome>;
|
|
807
|
+
/**
|
|
808
|
+
* The session's run-scoped keys as a resolver: the key for a driver class when the run carries
|
|
809
|
+
* one, else `undefined` — no platform fallback. The fallback belongs to
|
|
810
|
+
* {@link getAPIKeyForDriver}, which {@link resolveVendorAndInstantiate} consults for any class
|
|
811
|
+
* this does not key.
|
|
812
|
+
*
|
|
813
|
+
* @param apiKeys The session's run keys ({@link PrepareClientSessionInput.APIKeys}), if any.
|
|
814
|
+
* @returns A resolver over those keys only.
|
|
815
|
+
*/
|
|
816
|
+
private buildRunKeyResolver;
|
|
787
817
|
/**
|
|
788
818
|
* Resolves the effective config's `realtime.modelPreference` (an `MJ: AI Models` Name OR ID)
|
|
789
819
|
* into a usable realtime model. TOLERANT by design — this is a METADATA preference, so any
|
|
@@ -792,9 +822,10 @@ export declare class RealtimeClientSessionService {
|
|
|
792
822
|
* explicit runtime choice ({@link resolvePreferredRealtimeModel}), which fails loud.
|
|
793
823
|
*
|
|
794
824
|
* @param effectiveConfig The resolved effective configuration.
|
|
825
|
+
* @param resolve The session's run-scoped key resolver (run keys only; see {@link resolveVendorAndInstantiate}).
|
|
795
826
|
* @returns The resolution, or `null` when no preference is configured or it can't be satisfied.
|
|
796
827
|
*/
|
|
797
|
-
protected resolveConfiguredModelPreference(effectiveConfig?: RealtimeCoAgentConfig): RealtimeModelResolution | null;
|
|
828
|
+
protected resolveConfiguredModelPreference(effectiveConfig?: RealtimeCoAgentConfig, resolve?: AIAPIKeyResolver): RealtimeModelResolution | null;
|
|
798
829
|
/**
|
|
799
830
|
* Looks up a model by ID (UUID-insensitive) or, failing that, by case/whitespace-insensitive
|
|
800
831
|
* Name in {@link AIEngine}'s cached models. **Overridable seam**; tolerant of an unloaded cache.
|
|
@@ -809,9 +840,10 @@ export declare class RealtimeClientSessionService {
|
|
|
809
840
|
* the caller's user explicitly chose this one.
|
|
810
841
|
*
|
|
811
842
|
* @param preferredModelID The `MJ: AI Models.ID` the user chose.
|
|
843
|
+
* @param resolve The session's run-scoped key resolver (run keys only; see {@link resolveVendorAndInstantiate}).
|
|
812
844
|
* @returns The resolution outcome (resolution or a specific failure reason).
|
|
813
845
|
*/
|
|
814
|
-
protected resolvePreferredRealtimeModel(preferredModelID: string): RealtimeModelResolutionOutcome;
|
|
846
|
+
protected resolvePreferredRealtimeModel(preferredModelID: string, resolve?: AIAPIKeyResolver): RealtimeModelResolutionOutcome;
|
|
815
847
|
/**
|
|
816
848
|
* Looks up a model by id in {@link AIEngine}'s cached models. **Overridable seam** for tests.
|
|
817
849
|
*
|
|
@@ -831,20 +863,31 @@ export declare class RealtimeClientSessionService {
|
|
|
831
863
|
* step can't be satisfied.
|
|
832
864
|
*
|
|
833
865
|
* @param coAgent The co-agent being voiced (reserved for future per-agent model preference).
|
|
866
|
+
* @param resolve The session's run-scoped key resolver (run keys only; see {@link resolveVendorAndInstantiate}).
|
|
834
867
|
* @returns The resolved model + identifiers, or `null`.
|
|
835
868
|
*/
|
|
836
|
-
protected resolveRealtimeModel(coAgent: MJAIAgentEntityExtended): Promise<RealtimeModelResolution | null>;
|
|
869
|
+
protected resolveRealtimeModel(coAgent: MJAIAgentEntityExtended, resolve?: AIAPIKeyResolver): Promise<RealtimeModelResolution | null>;
|
|
837
870
|
/**
|
|
838
871
|
* Shared tail of model resolution: picks the vendor (with a usable API key) for an
|
|
839
872
|
* already-chosen model entity and instantiates its realtime driver.
|
|
840
873
|
*
|
|
874
|
+
* Key precedence, per driver class: `resolve` (the session's run keys), then this service's
|
|
875
|
+
* {@link getAPIKeyForDriver} seam, whose default is the environment key. Vendor selection and the
|
|
876
|
+
* mint use that one chain, so a session is never routed to a vendor it cannot then be minted on.
|
|
877
|
+
*
|
|
841
878
|
* @param model The chosen model entity.
|
|
879
|
+
* @param resolve The session's run-scoped key resolver. Expected to answer with run keys only:
|
|
880
|
+
* one that falls back to the environment itself answers before {@link getAPIKeyForDriver} and
|
|
881
|
+
* so bypasses an override of it.
|
|
842
882
|
* @returns The full resolution, or `null` when no vendor/key/driver can be satisfied.
|
|
843
883
|
*/
|
|
844
|
-
protected resolveVendorAndInstantiate(model: MJAIModelEntityExtended): RealtimeModelResolution | null;
|
|
884
|
+
protected resolveVendorAndInstantiate(model: MJAIModelEntityExtended, resolve?: AIAPIKeyResolver): RealtimeModelResolution | null;
|
|
845
885
|
/**
|
|
846
886
|
* Resolves the API key for a vendor driver class. **Overridable seam** (wraps the module-level
|
|
847
887
|
* {@link GetAIAPIKey}) so tests can simulate present/absent keys without environment setup.
|
|
888
|
+
* Consulted for every driver class the session's run keys do not cover, so an override (a vault,
|
|
889
|
+
* a different key, or `undefined` to disable a vendor) applies whether or not the environment
|
|
890
|
+
* also holds a key.
|
|
848
891
|
*
|
|
849
892
|
* @param driverClass The vendor's `DriverClass`.
|
|
850
893
|
* @returns The API key, or a falsy value when none is configured.
|
|
@@ -875,9 +918,10 @@ export declare class RealtimeClientSessionService {
|
|
|
875
918
|
* THIS service's {@link getAPIKeyForDriver} so subclasses and tests keep their key-resolution seam.
|
|
876
919
|
*
|
|
877
920
|
* @param modelID The chosen model's id.
|
|
921
|
+
* @param resolve The complete key chain to select against; defaults to {@link getAPIKeyForDriver}.
|
|
878
922
|
* @returns The vendor driver/api identifiers, or `null` when none has a usable key.
|
|
879
923
|
*/
|
|
880
|
-
protected selectRealtimeVendor(modelID: string): RealtimeVendorSelection | null;
|
|
924
|
+
protected selectRealtimeVendor(modelID: string, resolve?: AIAPIKeyResolver): RealtimeVendorSelection | null;
|
|
881
925
|
/**
|
|
882
926
|
* Resolves the DB-driven progress-narration instruction template: the Active `MJ: AI Prompts`
|
|
883
927
|
* row named {@link RealtimeClientSessionService.NarrationPromptName}, read from
|
|
@@ -1235,6 +1279,8 @@ export declare class RealtimeClientSessionService {
|
|
|
1235
1279
|
* @param driverClass The resolved vendor's DriverClass.
|
|
1236
1280
|
* @returns The array of projected direct action tools (empty if unsupported or disabled).
|
|
1237
1281
|
*/
|
|
1282
|
+
BuildDirectActionTools(targetAgentID: string | undefined, effectiveConfig?: RealtimeCoAgentConfig, driverClass?: string, agentSessionID?: string): RealtimeToolDefinition[];
|
|
1283
|
+
/** @deprecated Use {@link BuildDirectActionTools}. */
|
|
1238
1284
|
buildDirectActionTools(targetAgentID: string | undefined, effectiveConfig?: RealtimeCoAgentConfig, driverClass?: string, agentSessionID?: string): RealtimeToolDefinition[];
|
|
1239
1285
|
/**
|
|
1240
1286
|
* Maps an action entity and its metadata parameters to a RealtimeToolDefinition.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"realtime-client-session-service.d.ts","sourceRoot":"","sources":["../../src/realtime/realtime-client-session-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"realtime-client-session-service.d.ts","sourceRoot":"","sources":["../../src/realtime/realtime-client-session-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,7 +34,7 @@ import { MJGlobal, MJLruCache, UUIDsEqual, EscapeSQLString } from '@memberjuncti
|
|
|
34
34
|
import { ActionEngineServer } from '@memberjunction/actions';
|
|
35
35
|
import { RunActionParams } from '@memberjunction/actions-base';
|
|
36
36
|
import { BaseRealtimeModel, GetAIAPIKey } from '@memberjunction/ai';
|
|
37
|
-
import { FormatAppContextNote } from '@memberjunction/ai-core-plus';
|
|
37
|
+
import { FormatAppContextNote, ResolvePromptRunUserID } from '@memberjunction/ai-core-plus';
|
|
38
38
|
import { AIEngine } from '@memberjunction/aiengine';
|
|
39
39
|
import { AgentMemoryContextBuilder } from '../agent-memory-context-builder.js';
|
|
40
40
|
import { AgentRunner } from '../AgentRunner.js';
|
|
@@ -115,12 +115,27 @@ export class ToolArgumentsError extends Error {
|
|
|
115
115
|
*/
|
|
116
116
|
export class RealtimeClientSessionService {
|
|
117
117
|
constructor() {
|
|
118
|
-
/**
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
118
|
+
/**
|
|
119
|
+
* Maps session id -> (wireName -> MJActionEntityExtended) built during tool projection.
|
|
120
|
+
* Bounded with `MJLruCache` (rather than a plain `Map`): the resolver holds ONE shared service
|
|
121
|
+
* instance for the process lifetime (see class doc above), and there is no "session ended" hook
|
|
122
|
+
* this service can key eviction off — every voice session ever prepared would otherwise leave an
|
|
123
|
+
* entry here forever. Same TTL/maxSize rationale as {@link promptRunWriteChains} below.
|
|
124
|
+
*/
|
|
125
|
+
this.sessionWireActionMaps = new MJLruCache({
|
|
126
|
+
maxSize: 5_000,
|
|
127
|
+
ttlMs: 4 * 60 * 60 * 1000, // 4h — generous vs. any realistic voice-session duration
|
|
128
|
+
});
|
|
129
|
+
/** Maps targetAgentID -> (wireName -> MJActionEntityExtended) fallback built during tool projection. Bounded for the same reason as {@link sessionWireActionMaps}. */
|
|
130
|
+
this.targetWireActionMaps = new MJLruCache({
|
|
131
|
+
maxSize: 5_000,
|
|
132
|
+
ttlMs: 4 * 60 * 60 * 1000,
|
|
133
|
+
});
|
|
134
|
+
/** Maps session id -> direct actions config resolved during session prep. Bounded for the same reason as {@link sessionWireActionMaps}. */
|
|
135
|
+
this.sessionDirectConfigs = new MJLruCache({
|
|
136
|
+
maxSize: 5_000,
|
|
137
|
+
ttlMs: 4 * 60 * 60 * 1000,
|
|
138
|
+
});
|
|
124
139
|
/**
|
|
125
140
|
* IN-FLIGHT DELEGATION REGISTRY — the server half of the client-direct CANCEL channel.
|
|
126
141
|
*
|
|
@@ -166,7 +181,7 @@ export class RealtimeClientSessionService {
|
|
|
166
181
|
* @param actions The action entities to index by wire name.
|
|
167
182
|
* @returns Map of wire-name to action entity.
|
|
168
183
|
*/
|
|
169
|
-
|
|
184
|
+
BuildWireActionMap(actions) {
|
|
170
185
|
const map = new Map();
|
|
171
186
|
const seen = new Map();
|
|
172
187
|
for (const action of actions) {
|
|
@@ -186,6 +201,10 @@ export class RealtimeClientSessionService {
|
|
|
186
201
|
}
|
|
187
202
|
return map;
|
|
188
203
|
}
|
|
204
|
+
/** @deprecated Use {@link BuildWireActionMap}. */
|
|
205
|
+
buildWireActionMap(actions) {
|
|
206
|
+
return this.BuildWireActionMap(actions);
|
|
207
|
+
}
|
|
189
208
|
/**
|
|
190
209
|
* The seeded name of the `MJ: AI Prompts` row whose `TemplateText` carries the first-person
|
|
191
210
|
* progress-narration instructions (with a `{{ progressMessage }}` placeholder). Resolved at
|
|
@@ -550,6 +569,7 @@ export class RealtimeClientSessionService {
|
|
|
550
569
|
promptRun.VendorID = vendorID;
|
|
551
570
|
}
|
|
552
571
|
promptRun.AgentID = coAgent.ID;
|
|
572
|
+
promptRun.UserID = ResolvePromptRunUserID({ ContextUser: contextUser });
|
|
553
573
|
promptRun.RunAt = new Date();
|
|
554
574
|
promptRun.RunType = 'Single';
|
|
555
575
|
promptRun.Status = 'Running';
|
|
@@ -1019,16 +1039,35 @@ export class RealtimeClientSessionService {
|
|
|
1019
1039
|
* @returns The resolution outcome (resolution or failure reason).
|
|
1020
1040
|
*/
|
|
1021
1041
|
async resolveModelForSession(input, coAgent, effectiveConfig) {
|
|
1042
|
+
// One resolver for every branch below, built here rather than per branch so the requested-model,
|
|
1043
|
+
// configured-preference and default paths cannot disagree about which credentials the session
|
|
1044
|
+
// may use. It answers with the session's RUN keys only: resolveVendorAndInstantiate layers this
|
|
1045
|
+
// service's getAPIKeyForDriver seam under it, giving run key → seam → (the seam's default) env.
|
|
1046
|
+
// A resolver that fell back to the environment itself would answer before the seam, so a
|
|
1047
|
+
// subclass that overrides the seam would lose to AI_VENDOR_API_KEY__<driver>.
|
|
1048
|
+
const resolveRunKey = this.buildRunKeyResolver(input.APIKeys);
|
|
1022
1049
|
if (input.PreferredModelID) {
|
|
1023
|
-
return this.resolvePreferredRealtimeModel(input.PreferredModelID);
|
|
1050
|
+
return this.resolvePreferredRealtimeModel(input.PreferredModelID, resolveRunKey);
|
|
1024
1051
|
}
|
|
1025
|
-
const fromConfig = this.resolveConfiguredModelPreference(effectiveConfig);
|
|
1052
|
+
const fromConfig = this.resolveConfiguredModelPreference(effectiveConfig, resolveRunKey);
|
|
1026
1053
|
if (fromConfig) {
|
|
1027
1054
|
return { Resolution: fromConfig };
|
|
1028
1055
|
}
|
|
1029
|
-
const resolution = await this.resolveRealtimeModel(coAgent);
|
|
1056
|
+
const resolution = await this.resolveRealtimeModel(coAgent, resolveRunKey);
|
|
1030
1057
|
return resolution ? { Resolution: resolution } : { ErrorMessage: this.noModelMessage() };
|
|
1031
1058
|
}
|
|
1059
|
+
/**
|
|
1060
|
+
* The session's run-scoped keys as a resolver: the key for a driver class when the run carries
|
|
1061
|
+
* one, else `undefined` — no platform fallback. The fallback belongs to
|
|
1062
|
+
* {@link getAPIKeyForDriver}, which {@link resolveVendorAndInstantiate} consults for any class
|
|
1063
|
+
* this does not key.
|
|
1064
|
+
*
|
|
1065
|
+
* @param apiKeys The session's run keys ({@link PrepareClientSessionInput.APIKeys}), if any.
|
|
1066
|
+
* @returns A resolver over those keys only.
|
|
1067
|
+
*/
|
|
1068
|
+
buildRunKeyResolver(apiKeys) {
|
|
1069
|
+
return (driverClass) => apiKeys?.find(k => k.driverClass === driverClass)?.apiKey || undefined;
|
|
1070
|
+
}
|
|
1032
1071
|
/**
|
|
1033
1072
|
* Resolves the effective config's `realtime.modelPreference` (an `MJ: AI Models` Name OR ID)
|
|
1034
1073
|
* into a usable realtime model. TOLERANT by design — this is a METADATA preference, so any
|
|
@@ -1037,9 +1076,10 @@ export class RealtimeClientSessionService {
|
|
|
1037
1076
|
* explicit runtime choice ({@link resolvePreferredRealtimeModel}), which fails loud.
|
|
1038
1077
|
*
|
|
1039
1078
|
* @param effectiveConfig The resolved effective configuration.
|
|
1079
|
+
* @param resolve The session's run-scoped key resolver (run keys only; see {@link resolveVendorAndInstantiate}).
|
|
1040
1080
|
* @returns The resolution, or `null` when no preference is configured or it can't be satisfied.
|
|
1041
1081
|
*/
|
|
1042
|
-
resolveConfiguredModelPreference(effectiveConfig) {
|
|
1082
|
+
resolveConfiguredModelPreference(effectiveConfig, resolve) {
|
|
1043
1083
|
const preference = effectiveConfig?.realtime?.modelPreference;
|
|
1044
1084
|
if (!preference) {
|
|
1045
1085
|
return null;
|
|
@@ -1055,7 +1095,7 @@ export class RealtimeClientSessionService {
|
|
|
1055
1095
|
`'${model.Name}' but it is not an Active Realtime model — falling through to default resolution.`);
|
|
1056
1096
|
return null;
|
|
1057
1097
|
}
|
|
1058
|
-
const resolution = this.resolveVendorAndInstantiate(model);
|
|
1098
|
+
const resolution = this.resolveVendorAndInstantiate(model, resolve);
|
|
1059
1099
|
if (!resolution) {
|
|
1060
1100
|
LogError(`RealtimeClientSessionService: configured realtime model preference '${model.Name}' has no usable ` +
|
|
1061
1101
|
'vendor DriverClass/API key — falling through to default resolution.');
|
|
@@ -1087,9 +1127,10 @@ export class RealtimeClientSessionService {
|
|
|
1087
1127
|
* the caller's user explicitly chose this one.
|
|
1088
1128
|
*
|
|
1089
1129
|
* @param preferredModelID The `MJ: AI Models.ID` the user chose.
|
|
1130
|
+
* @param resolve The session's run-scoped key resolver (run keys only; see {@link resolveVendorAndInstantiate}).
|
|
1090
1131
|
* @returns The resolution outcome (resolution or a specific failure reason).
|
|
1091
1132
|
*/
|
|
1092
|
-
resolvePreferredRealtimeModel(preferredModelID) {
|
|
1133
|
+
resolvePreferredRealtimeModel(preferredModelID, resolve) {
|
|
1093
1134
|
const model = this.findModelByID(preferredModelID);
|
|
1094
1135
|
if (!model) {
|
|
1095
1136
|
return { ErrorMessage: `The requested realtime model (id '${preferredModelID}') was not found in AI model metadata.` };
|
|
@@ -1100,7 +1141,7 @@ export class RealtimeClientSessionService {
|
|
|
1100
1141
|
if (!this.isRealtimeModel(model)) {
|
|
1101
1142
|
return { ErrorMessage: `The requested model '${model.Name}' is not a Realtime model (its type is '${model.AIModelType}').` };
|
|
1102
1143
|
}
|
|
1103
|
-
const resolution = this.resolveVendorAndInstantiate(model);
|
|
1144
|
+
const resolution = this.resolveVendorAndInstantiate(model, resolve);
|
|
1104
1145
|
if (!resolution) {
|
|
1105
1146
|
return {
|
|
1106
1147
|
ErrorMessage: `The requested model '${model.Name}' has no active vendor with a usable DriverClass/API key ` +
|
|
@@ -1132,9 +1173,10 @@ export class RealtimeClientSessionService {
|
|
|
1132
1173
|
* step can't be satisfied.
|
|
1133
1174
|
*
|
|
1134
1175
|
* @param coAgent The co-agent being voiced (reserved for future per-agent model preference).
|
|
1176
|
+
* @param resolve The session's run-scoped key resolver (run keys only; see {@link resolveVendorAndInstantiate}).
|
|
1135
1177
|
* @returns The resolved model + identifiers, or `null`.
|
|
1136
1178
|
*/
|
|
1137
|
-
async resolveRealtimeModel(coAgent) {
|
|
1179
|
+
async resolveRealtimeModel(coAgent, resolve) {
|
|
1138
1180
|
// Walk candidates in descending PowerRank, returning the FIRST that fully resolves to a usable
|
|
1139
1181
|
// client-direct driver (active vendor + API key + ClassFactory driver + SupportsClientDirect).
|
|
1140
1182
|
// Single-pick dead-ended whenever the highest-power model lacked a key or client-direct support
|
|
@@ -1142,7 +1184,7 @@ export class RealtimeClientSessionService {
|
|
|
1142
1184
|
// surfaced "No usable Realtime model" instead of falling through to a model that works.
|
|
1143
1185
|
const candidates = this.selectRealtimeModelCandidates(coAgent);
|
|
1144
1186
|
for (const model of candidates) {
|
|
1145
|
-
const resolution = this.resolveVendorAndInstantiate(model);
|
|
1187
|
+
const resolution = this.resolveVendorAndInstantiate(model, resolve);
|
|
1146
1188
|
if (resolution && resolution.Model.SupportsClientDirect) {
|
|
1147
1189
|
return resolution;
|
|
1148
1190
|
}
|
|
@@ -1153,15 +1195,25 @@ export class RealtimeClientSessionService {
|
|
|
1153
1195
|
* Shared tail of model resolution: picks the vendor (with a usable API key) for an
|
|
1154
1196
|
* already-chosen model entity and instantiates its realtime driver.
|
|
1155
1197
|
*
|
|
1198
|
+
* Key precedence, per driver class: `resolve` (the session's run keys), then this service's
|
|
1199
|
+
* {@link getAPIKeyForDriver} seam, whose default is the environment key. Vendor selection and the
|
|
1200
|
+
* mint use that one chain, so a session is never routed to a vendor it cannot then be minted on.
|
|
1201
|
+
*
|
|
1156
1202
|
* @param model The chosen model entity.
|
|
1203
|
+
* @param resolve The session's run-scoped key resolver. Expected to answer with run keys only:
|
|
1204
|
+
* one that falls back to the environment itself answers before {@link getAPIKeyForDriver} and
|
|
1205
|
+
* so bypasses an override of it.
|
|
1157
1206
|
* @returns The full resolution, or `null` when no vendor/key/driver can be satisfied.
|
|
1158
1207
|
*/
|
|
1159
|
-
resolveVendorAndInstantiate(model) {
|
|
1160
|
-
|
|
1208
|
+
resolveVendorAndInstantiate(model, resolve) {
|
|
1209
|
+
// The run's keys first, then this service's own seam (which subclasses and tests override) —
|
|
1210
|
+
// so a run-scoped credential wins without taking that seam away from anyone who replaced it.
|
|
1211
|
+
const resolveKey = (driverClass) => resolve?.(driverClass) ?? this.getAPIKeyForDriver(driverClass);
|
|
1212
|
+
const vendor = this.selectRealtimeVendor(model.ID, resolveKey);
|
|
1161
1213
|
if (!vendor) {
|
|
1162
1214
|
return null;
|
|
1163
1215
|
}
|
|
1164
|
-
const apiKey =
|
|
1216
|
+
const apiKey = resolveKey(vendor.DriverClass);
|
|
1165
1217
|
if (!apiKey) {
|
|
1166
1218
|
return null;
|
|
1167
1219
|
}
|
|
@@ -1182,6 +1234,9 @@ export class RealtimeClientSessionService {
|
|
|
1182
1234
|
/**
|
|
1183
1235
|
* Resolves the API key for a vendor driver class. **Overridable seam** (wraps the module-level
|
|
1184
1236
|
* {@link GetAIAPIKey}) so tests can simulate present/absent keys without environment setup.
|
|
1237
|
+
* Consulted for every driver class the session's run keys do not cover, so an override (a vault,
|
|
1238
|
+
* a different key, or `undefined` to disable a vendor) applies whether or not the environment
|
|
1239
|
+
* also holds a key.
|
|
1185
1240
|
*
|
|
1186
1241
|
* @param driverClass The vendor's `DriverClass`.
|
|
1187
1242
|
* @returns The API key, or a falsy value when none is configured.
|
|
@@ -1220,10 +1275,11 @@ export class RealtimeClientSessionService {
|
|
|
1220
1275
|
* THIS service's {@link getAPIKeyForDriver} so subclasses and tests keep their key-resolution seam.
|
|
1221
1276
|
*
|
|
1222
1277
|
* @param modelID The chosen model's id.
|
|
1278
|
+
* @param resolve The complete key chain to select against; defaults to {@link getAPIKeyForDriver}.
|
|
1223
1279
|
* @returns The vendor driver/api identifiers, or `null` when none has a usable key.
|
|
1224
1280
|
*/
|
|
1225
|
-
selectRealtimeVendor(modelID) {
|
|
1226
|
-
return SelectRealtimeVendorForModel(modelID, (driverClass) => this.getAPIKeyForDriver(driverClass));
|
|
1281
|
+
selectRealtimeVendor(modelID, resolve) {
|
|
1282
|
+
return SelectRealtimeVendorForModel(modelID, resolve ?? ((driverClass) => this.getAPIKeyForDriver(driverClass)));
|
|
1227
1283
|
}
|
|
1228
1284
|
/**
|
|
1229
1285
|
* Resolves the DB-driven progress-narration instruction template: the Active `MJ: AI Prompts`
|
|
@@ -1255,7 +1311,7 @@ export class RealtimeClientSessionService {
|
|
|
1255
1311
|
* @returns The assembled session params.
|
|
1256
1312
|
*/
|
|
1257
1313
|
async buildSessionParams(input, coAgent, modelApiName, contextUser, provider, effectiveConfig, driverClass, modelID, modelVendorID) {
|
|
1258
|
-
const directTools = this.
|
|
1314
|
+
const directTools = this.BuildDirectActionTools(input.TargetAgentID, effectiveConfig, driverClass, input.AgentSessionID);
|
|
1259
1315
|
const hasDirectTools = directTools.length > 0 || (input.ExtraTools != null && input.ExtraTools.length > 0);
|
|
1260
1316
|
const systemPrompt = await this.buildCompanionSystemPrompt(input, coAgent, contextUser, provider, effectiveConfig, hasDirectTools);
|
|
1261
1317
|
const memoryContext = await this.assembleMemoryContext(input, coAgent, contextUser, provider);
|
|
@@ -2000,7 +2056,7 @@ export class RealtimeClientSessionService {
|
|
|
2000
2056
|
* @param driverClass The resolved vendor's DriverClass.
|
|
2001
2057
|
* @returns The array of projected direct action tools (empty if unsupported or disabled).
|
|
2002
2058
|
*/
|
|
2003
|
-
|
|
2059
|
+
BuildDirectActionTools(targetAgentID, effectiveConfig, driverClass, agentSessionID) {
|
|
2004
2060
|
if (!targetAgentID || !this.driverSupportsDynamicToolSet(driverClass)) {
|
|
2005
2061
|
return [];
|
|
2006
2062
|
}
|
|
@@ -2010,20 +2066,24 @@ export class RealtimeClientSessionService {
|
|
|
2010
2066
|
}
|
|
2011
2067
|
const candidateActions = this.getTargetAgentActions(targetAgentID);
|
|
2012
2068
|
const allowedActions = candidateActions.filter(action => IsActionAllowedForDirectInvocation(action.Name, directConfig));
|
|
2013
|
-
const wireMap = this.
|
|
2069
|
+
const wireMap = this.BuildWireActionMap(allowedActions);
|
|
2014
2070
|
if (agentSessionID) {
|
|
2015
|
-
this.sessionWireActionMaps.
|
|
2071
|
+
this.sessionWireActionMaps.Set(agentSessionID, wireMap);
|
|
2016
2072
|
if (directConfig) {
|
|
2017
|
-
this.sessionDirectConfigs.
|
|
2073
|
+
this.sessionDirectConfigs.Set(agentSessionID, directConfig);
|
|
2018
2074
|
}
|
|
2019
2075
|
}
|
|
2020
|
-
this.targetWireActionMaps.
|
|
2076
|
+
this.targetWireActionMaps.Set(targetAgentID, wireMap);
|
|
2021
2077
|
const tools = [];
|
|
2022
2078
|
for (const [wireName, action] of wireMap.entries()) {
|
|
2023
2079
|
tools.push(this.mapActionToToolDefinition(action, wireName));
|
|
2024
2080
|
}
|
|
2025
2081
|
return tools;
|
|
2026
2082
|
}
|
|
2083
|
+
/** @deprecated Use {@link BuildDirectActionTools}. */
|
|
2084
|
+
buildDirectActionTools(targetAgentID, effectiveConfig, driverClass, agentSessionID) {
|
|
2085
|
+
return this.BuildDirectActionTools(targetAgentID, effectiveConfig, driverClass, agentSessionID);
|
|
2086
|
+
}
|
|
2027
2087
|
/**
|
|
2028
2088
|
* Maps an action entity and its metadata parameters to a RealtimeToolDefinition.
|
|
2029
2089
|
*
|
|
@@ -2097,8 +2157,8 @@ export class RealtimeClientSessionService {
|
|
|
2097
2157
|
};
|
|
2098
2158
|
}
|
|
2099
2159
|
const candidateActions = this.getTargetAgentActions(target.ID);
|
|
2100
|
-
const candidateWireMap = this.
|
|
2101
|
-
const action = (input?.AgentSessionID ? this.sessionWireActionMaps.
|
|
2160
|
+
const candidateWireMap = this.BuildWireActionMap(candidateActions);
|
|
2161
|
+
const action = (input?.AgentSessionID ? this.sessionWireActionMaps.Get(input.AgentSessionID)?.get(call.ToolName) : undefined)
|
|
2102
2162
|
?? candidateWireMap.get(call.ToolName)
|
|
2103
2163
|
?? Array.from(candidateWireMap.entries()).find(([w]) => w.toLowerCase() === call.ToolName.trim().toLowerCase())?.[1];
|
|
2104
2164
|
if (!action) {
|
|
@@ -2109,7 +2169,7 @@ export class RealtimeClientSessionService {
|
|
|
2109
2169
|
};
|
|
2110
2170
|
}
|
|
2111
2171
|
const directConfig = input?.DirectActions
|
|
2112
|
-
?? (input?.AgentSessionID ? this.sessionDirectConfigs.
|
|
2172
|
+
?? (input?.AgentSessionID ? this.sessionDirectConfigs.Get(input.AgentSessionID) : undefined)
|
|
2113
2173
|
?? GetDirectActionsConfig(this.resolveEffectiveConfig(target, undefined, target));
|
|
2114
2174
|
if (!IsActionAllowedForDirectInvocation(action.Name, directConfig)) {
|
|
2115
2175
|
return {
|