@memberjunction/server 5.40.1 → 5.41.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/dist/agentSessions/HostInstance.d.ts +19 -0
  2. package/dist/agentSessions/HostInstance.d.ts.map +1 -0
  3. package/dist/agentSessions/HostInstance.js +48 -0
  4. package/dist/agentSessions/HostInstance.js.map +1 -0
  5. package/dist/agentSessions/SessionJanitor.d.ts +97 -0
  6. package/dist/agentSessions/SessionJanitor.d.ts.map +1 -0
  7. package/dist/agentSessions/SessionJanitor.js +222 -0
  8. package/dist/agentSessions/SessionJanitor.js.map +1 -0
  9. package/dist/agentSessions/SessionManager.d.ts +142 -0
  10. package/dist/agentSessions/SessionManager.d.ts.map +1 -0
  11. package/dist/agentSessions/SessionManager.js +308 -0
  12. package/dist/agentSessions/SessionManager.js.map +1 -0
  13. package/dist/agentSessions/index.d.ts +4 -0
  14. package/dist/agentSessions/index.d.ts.map +1 -0
  15. package/dist/agentSessions/index.js +26 -0
  16. package/dist/agentSessions/index.js.map +1 -0
  17. package/dist/auth/initializeProviders.d.ts.map +1 -1
  18. package/dist/auth/initializeProviders.js +6 -1
  19. package/dist/auth/initializeProviders.js.map +1 -1
  20. package/dist/config.d.ts +245 -0
  21. package/dist/config.d.ts.map +1 -1
  22. package/dist/config.js +34 -0
  23. package/dist/config.js.map +1 -1
  24. package/dist/context.d.ts.map +1 -1
  25. package/dist/context.js +41 -7
  26. package/dist/context.js.map +1 -1
  27. package/dist/generated/generated.d.ts +659 -3
  28. package/dist/generated/generated.d.ts.map +1 -1
  29. package/dist/generated/generated.js +5459 -1759
  30. package/dist/generated/generated.js.map +1 -1
  31. package/dist/generic/ResolverBase.js +1 -1
  32. package/dist/generic/ResolverBase.js.map +1 -1
  33. package/dist/generic/RunViewResolver.js +9 -10
  34. package/dist/generic/RunViewResolver.js.map +1 -1
  35. package/dist/index.d.ts +4 -0
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +112 -42
  38. package/dist/index.js.map +1 -1
  39. package/dist/logging/StartupLogger.d.ts +121 -0
  40. package/dist/logging/StartupLogger.d.ts.map +1 -0
  41. package/dist/logging/StartupLogger.js +245 -0
  42. package/dist/logging/StartupLogger.js.map +1 -0
  43. package/dist/logging/variablesLoggingMiddleware.d.ts.map +1 -1
  44. package/dist/logging/variablesLoggingMiddleware.js +21 -2
  45. package/dist/logging/variablesLoggingMiddleware.js.map +1 -1
  46. package/dist/middleware/RateLimitMiddleware.d.ts +16 -0
  47. package/dist/middleware/RateLimitMiddleware.d.ts.map +1 -0
  48. package/dist/middleware/RateLimitMiddleware.js +77 -0
  49. package/dist/middleware/RateLimitMiddleware.js.map +1 -0
  50. package/dist/middleware/index.d.ts +1 -0
  51. package/dist/middleware/index.d.ts.map +1 -1
  52. package/dist/middleware/index.js +1 -0
  53. package/dist/middleware/index.js.map +1 -1
  54. package/dist/resolvers/AgentSessionResolver.d.ts +42 -0
  55. package/dist/resolvers/AgentSessionResolver.d.ts.map +1 -0
  56. package/dist/resolvers/AgentSessionResolver.js +152 -0
  57. package/dist/resolvers/AgentSessionResolver.js.map +1 -0
  58. package/dist/resolvers/EntityPermissionResolver.d.ts +16 -0
  59. package/dist/resolvers/EntityPermissionResolver.d.ts.map +1 -0
  60. package/dist/resolvers/EntityPermissionResolver.js +95 -0
  61. package/dist/resolvers/EntityPermissionResolver.js.map +1 -0
  62. package/dist/resolvers/RealtimeClientSessionResolver.d.ts +688 -0
  63. package/dist/resolvers/RealtimeClientSessionResolver.d.ts.map +1 -0
  64. package/dist/resolvers/RealtimeClientSessionResolver.js +1774 -0
  65. package/dist/resolvers/RealtimeClientSessionResolver.js.map +1 -0
  66. package/dist/resolvers/RemoteBrowserActionResolver.d.ts +359 -0
  67. package/dist/resolvers/RemoteBrowserActionResolver.d.ts.map +1 -0
  68. package/dist/resolvers/RemoteBrowserActionResolver.js +896 -0
  69. package/dist/resolvers/RemoteBrowserActionResolver.js.map +1 -0
  70. package/dist/rest/SignatureWebhookHandler.js +3 -2
  71. package/dist/rest/SignatureWebhookHandler.js.map +1 -1
  72. package/dist/services/ScheduledJobsService.d.ts.map +1 -1
  73. package/dist/services/ScheduledJobsService.js +6 -5
  74. package/dist/services/ScheduledJobsService.js.map +1 -1
  75. package/package.json +78 -74
  76. package/src/__tests__/RealtimeClientSessionResolver.test.ts +2605 -0
  77. package/src/__tests__/RemoteBrowserAudioStream.test.ts +174 -0
  78. package/src/__tests__/SessionJanitor.test.ts +234 -0
  79. package/src/__tests__/SessionManager.test.ts +465 -0
  80. package/src/__tests__/subscriptionRedaction.test.ts +5 -0
  81. package/src/agentSessions/HostInstance.ts +53 -0
  82. package/src/agentSessions/SessionJanitor.ts +267 -0
  83. package/src/agentSessions/SessionManager.ts +446 -0
  84. package/src/agentSessions/index.ts +27 -0
  85. package/src/auth/initializeProviders.ts +6 -1
  86. package/src/config.ts +38 -0
  87. package/src/context.ts +42 -7
  88. package/src/generated/generated.ts +3111 -567
  89. package/src/generic/ResolverBase.ts +1 -1
  90. package/src/generic/RunViewResolver.ts +9 -9
  91. package/src/index.ts +112 -42
  92. package/src/logging/StartupLogger.ts +317 -0
  93. package/src/logging/variablesLoggingMiddleware.ts +25 -5
  94. package/src/middleware/RateLimitMiddleware.ts +87 -0
  95. package/src/middleware/index.ts +1 -0
  96. package/src/resolvers/AgentSessionResolver.ts +138 -0
  97. package/src/resolvers/EntityPermissionResolver.ts +73 -0
  98. package/src/resolvers/RealtimeClientSessionResolver.ts +2162 -0
  99. package/src/resolvers/RemoteBrowserActionResolver.ts +907 -0
  100. package/src/rest/SignatureWebhookHandler.ts +3 -2
  101. package/src/services/ScheduledJobsService.ts +6 -5
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RealtimeClientSessionResolver.js","sourceRoot":"","sources":["../../src/resolvers/RealtimeClientSessionResolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,359 @@
1
+ /**
2
+ * @fileoverview GraphQL resolvers for the **Remote Browser** native realtime channel, CLIENT-DIRECT
3
+ * topology.
4
+ *
5
+ * Realtime sessions are client-direct: the model talks to the browser, and the agent's browser-driving
6
+ * tools execute CLIENT-side (like the live Whiteboard). Each client-executed browser tool relays its
7
+ * intent to the server through {@link RemoteBrowserActionResolver.ExecuteRemoteBrowserAction}, which drives
8
+ * the server-side {@link RemoteBrowserEngine}'s live browser. A second query,
9
+ * {@link RemoteBrowserActionResolver.RemoteBrowserSnapshot}, returns the current screenshot + URL for the
10
+ * client's live view.
11
+ *
12
+ * Both operations are **ownership-gated** exactly like {@link import('./RealtimeClientSessionResolver.js').RealtimeClientSessionResolver}:
13
+ * the `AIAgentSession.UserID` must equal the calling user. The mutation lazily starts the browser on first
14
+ * use — so a realtime session that never touches the browser never launches Chrome — resolving the backend
15
+ * from the agent's `TypeConfiguration` (`{ remoteBrowser: { provider } }`), else the single Active provider.
16
+ *
17
+ * @module @memberjunction/server
18
+ */
19
+ import { PubSubEngine } from 'type-graphql';
20
+ import { AppContext } from '../types.js';
21
+ import { UserInfo, IMetadataProvider } from '@memberjunction/core';
22
+ import { MJAIAgentSessionEntity } from '@memberjunction/core-entities';
23
+ import { ResolverBase } from '../generic/ResolverBase.js';
24
+ /**
25
+ * Result of {@link RemoteBrowserActionResolver.ExecuteRemoteBrowserAction} — the outcome of one browser
26
+ * action plus the resulting URL the client narrates / displays.
27
+ */
28
+ export declare class RemoteBrowserActionResult {
29
+ /** Whether the browser action completed successfully. */
30
+ Success: boolean;
31
+ /** The page URL after the action, when known. Null when the action produced no URL. */
32
+ CurrentUrl?: string;
33
+ /** Human-readable detail — an error message on failure, a note on success. Null when none. */
34
+ Detail?: string;
35
+ }
36
+ /**
37
+ * Result of {@link RemoteBrowserActionResolver.RemoteBrowserSnapshot} — the current viewport screenshot +
38
+ * URL for the client's live view. Both fields are null when the session holds no live browser.
39
+ */
40
+ export declare class RemoteBrowserSnapshot {
41
+ /** The current viewport screenshot, Base64-encoded. Null when no live browser exists for the session. */
42
+ ScreenshotBase64?: string;
43
+ /** The browser's current URL. Null when no live browser exists for the session. */
44
+ CurrentUrl?: string;
45
+ }
46
+ /**
47
+ * Result of {@link RemoteBrowserActionResolver.StartRemoteBrowserScreencast} — whether the live CDP
48
+ * screencast started. When `false` the backend lacks the `ScreenStreaming` capability (or the start
49
+ * failed); the client keeps its 700ms snapshot poll as the fallback live view. When `true` the server
50
+ * is now PUSHING encoded frames on the user's push-status topic and the client paints them on a canvas.
51
+ */
52
+ export declare class RemoteBrowserScreencastResult {
53
+ /** Whether the server-pushed screencast is now running for this session. */
54
+ Streaming: boolean;
55
+ }
56
+ /**
57
+ * Result of {@link RemoteBrowserActionResolver.StartRemoteBrowserAudioStream} — whether the live tab-audio
58
+ * stream started. When `false` the backend lacks an audio-capture mechanism (v1 gates audio by backend
59
+ * implementation, not a metadata flag) or the start failed; the client simply plays no audio. When `true`
60
+ * the server is now PUSHING encoded audio chunks on the user's push-status topic and the client plays them.
61
+ */
62
+ export declare class RemoteBrowserAudioStreamResult {
63
+ /** Whether the server-pushed tab-audio stream is now running for this session. */
64
+ Streaming: boolean;
65
+ }
66
+ /**
67
+ * One UI element the visual interpreter localized in the screenshot — a label plus the pixel centroid the
68
+ * voice agent can feed straight into `browser_Click(x, y)`. Coordinates are in the SCREENSHOT's own pixel
69
+ * space (top-left origin), which equals the live browser viewport.
70
+ */
71
+ export declare class RemoteBrowserInterpretedElement {
72
+ /** Short human-readable label for the element (e.g. `'Sign In button'`). */
73
+ Label: string;
74
+ /** Pixel X of the element's centroid in the screenshot's coordinate space. */
75
+ X: number;
76
+ /** Pixel Y of the element's centroid in the screenshot's coordinate space. */
77
+ Y: number;
78
+ /** The interpreter's 0-1 confidence that this localization is correct. */
79
+ Confidence: number;
80
+ }
81
+ /**
82
+ * Result of {@link RemoteBrowserActionResolver.InterpretRemoteBrowserPage} — how a fast vision model "sees"
83
+ * the current browser viewport on behalf of a voice agent that cannot view images. `Description` is a concise
84
+ * text summary; `Elements` localizes any UI elements the request asked for (empty for a plain describe).
85
+ * `Detail` carries a non-fatal note (e.g. `'no live browser'` or a vision-error message) — every path is
86
+ * best-effort and never throws.
87
+ */
88
+ export declare class RemoteBrowserInterpretation {
89
+ /** A 1-3 sentence summary of what is visible/actionable, or null when nothing could be interpreted. */
90
+ Description?: string;
91
+ /** UI elements matching the request, each with a pixel centroid. Empty for a describe-only request. */
92
+ Elements: RemoteBrowserInterpretedElement[];
93
+ /** Non-fatal note explaining a null/empty result (e.g. `'no live browser'`, a parse/vision error). */
94
+ Detail?: string;
95
+ }
96
+ /**
97
+ * Resolver for the Remote Browser native realtime channel. A single {@link RemoteBrowserEngine} instance
98
+ * (the process-wide singleton) backs every request; ownership is enforced per call against the session's
99
+ * `UserID`.
100
+ */
101
+ export declare class RemoteBrowserActionResolver extends ResolverBase {
102
+ /**
103
+ * Agent-session ids whose live CDP screencast this resolver has already started. Keyed by
104
+ * `agentSessionID` so a re-issued {@link RemoteBrowserActionResolver.StartRemoteBrowserScreencast}
105
+ * (e.g. the surface re-binding after a tab collapse) is idempotent and never stacks two screencasts
106
+ * on the one session. Entries are removed by {@link RemoteBrowserActionResolver.StopRemoteBrowserScreencast}.
107
+ */
108
+ private startedScreencasts;
109
+ /**
110
+ * Agent-session ids whose live tab-audio stream this resolver has already started. Keyed by
111
+ * `agentSessionID` so a re-issued {@link RemoteBrowserActionResolver.StartRemoteBrowserAudioStream}
112
+ * (the surface re-binding) is idempotent and never stacks two captures on the one session. Entries are
113
+ * removed by {@link RemoteBrowserActionResolver.StopRemoteBrowserAudioStream}.
114
+ */
115
+ private startedAudioStreams;
116
+ /**
117
+ * Execute ONE browser action relayed from the client-direct realtime session, returning the outcome +
118
+ * resulting URL.
119
+ *
120
+ * Flow:
121
+ * 1. Ownership gate — the session's `UserID` must equal the caller's (throws otherwise).
122
+ * 2. Lazily start (or reuse) the session's browser via {@link RemoteBrowserEngine.StartSessionForAgentSession},
123
+ * resolving the backend from the agent's `TypeConfiguration` (`{ remoteBrowser: { provider } }`), else
124
+ * the single Active provider.
125
+ * 3. Build a strongly-typed {@link RemoteBrowserAction} from `kind` + the supplied fields.
126
+ * 4. Execute it against the live session and return the result.
127
+ *
128
+ * @param agentSessionID The `AIAgentSession` id the browser is bound to.
129
+ * @param kind The action kind (`'navigate' | 'click' | 'type' | 'key' | 'scroll' | 'back' | 'forward' | 'wait'`).
130
+ * @returns The action result (success + resulting URL + detail).
131
+ */
132
+ ExecuteRemoteBrowserAction(agentSessionID: string, kind: string, { userPayload, providers }: AppContext, url?: string, selector?: string, x?: number, y?: number, text?: string, key?: string, deltaX?: number, deltaY?: number, ms?: number): Promise<RemoteBrowserActionResult>;
133
+ /**
134
+ * Return the current viewport screenshot + URL for the session's live browser — the client's live view.
135
+ * Ownership-gated. When the session holds no live browser (never started, or already torn down), the
136
+ * result's fields are null rather than an error.
137
+ *
138
+ * @param agentSessionID The `AIAgentSession` id.
139
+ * @returns The current screenshot + URL, or an empty snapshot when no live browser exists.
140
+ */
141
+ RemoteBrowserSnapshot(agentSessionID: string, { userPayload, providers }: AppContext): Promise<RemoteBrowserSnapshot>;
142
+ /**
143
+ * VISION-QUERY path (separate from the navigate/click {@link RemoteBrowserActionResolver.ExecuteRemoteBrowserAction}
144
+ * path — this OBSERVES the page, it never drives it). Captures the session's current screenshot and runs
145
+ * a fast vision AI Prompt over it so a non-omnimodal voice agent (audio/text-only) can effectively SEE the
146
+ * page: a concise text description ("kinda see") and, when `query` names a target, the pixel centroid(s) the
147
+ * agent can then feed to `browser_Click(x, y)`.
148
+ *
149
+ * Flow:
150
+ * 1. Ownership gate — the session's `UserID` must equal the caller's (throws otherwise).
151
+ * 2. Get the LIVE session and `CaptureScreenshot()`. No live session / no screenshot → `{ Description: null,
152
+ * Elements: [], Detail: 'no live browser' }`.
153
+ * 3. Run the `Remote Browser Visual Interpreter` prompt with the screenshot as an `image_url` content block
154
+ * plus an instruction derived from `query` (empty/"describe" → describe; a named target → locate it).
155
+ * 4. Parse the strict-JSON result tolerantly and map it to {@link RemoteBrowserInterpretation}.
156
+ *
157
+ * Best-effort + tolerant by contract: any vision/prompt/parse failure is logged and returned as
158
+ * `{ Description: null, Elements: [], Detail: <message> }`. This mutation NEVER throws past the ownership gate.
159
+ *
160
+ * @param agentSessionID The `AIAgentSession` id the browser is bound to.
161
+ * @param query Optional request — empty/"describe" for a page description, else a visual target to localize.
162
+ * @returns The interpretation (description + localized elements + optional detail note).
163
+ */
164
+ InterpretRemoteBrowserPage(agentSessionID: string, { userPayload, providers }: AppContext, query?: string): Promise<RemoteBrowserInterpretation>;
165
+ /**
166
+ * Starts a live CDP screencast on the session's browser and PUSHES each encoded frame to the calling
167
+ * user's push-status topic — replacing the client's 700ms snapshot poll with low-latency pushed frames.
168
+ * Ownership-gated. Idempotent: a re-call for an already-streaming session is a no-op that reports
169
+ * `Streaming: true`.
170
+ *
171
+ * Capability gating: {@link IRemoteBrowserSession.StartScreencast} throws
172
+ * {@link RemoteBrowserCapabilityNotSupportedError} on a backend without `ScreenStreaming` — caught here
173
+ * and reported as `Streaming: false`, leaving the client on its polling fallback. Any other failure is
174
+ * logged and likewise reported as `Streaming: false` (the poll keeps the view alive).
175
+ *
176
+ * @param agentSessionID The `AIAgentSession` id the browser is bound to.
177
+ * @returns `{ Streaming: true }` when frames are now being pushed, else `{ Streaming: false }`.
178
+ */
179
+ StartRemoteBrowserScreencast(agentSessionID: string, { userPayload, providers }: AppContext, pubSub: PubSubEngine): Promise<RemoteBrowserScreencastResult>;
180
+ /**
181
+ * Stops a screencast previously started by {@link RemoteBrowserActionResolver.StartRemoteBrowserScreencast}.
182
+ * Ownership-gated and best-effort: when no live browser exists, or `StopScreencast` rejects, the call
183
+ * still resolves `true` (the client's teardown should never depend on this succeeding).
184
+ *
185
+ * @param agentSessionID The `AIAgentSession` id.
186
+ * @returns `true` (always) once the stop has been attempted.
187
+ */
188
+ StopRemoteBrowserScreencast(agentSessionID: string, { userPayload, providers }: AppContext): Promise<boolean>;
189
+ /**
190
+ * Starts streaming the session browser's TAB AUDIO and PUSHES each encoded chunk to the calling user's
191
+ * push-status topic — so a co-agent demoing a video/audio site is HEARD, not just seen. Ownership-gated.
192
+ * Idempotent: a re-call for an already-streaming session is a no-op that reports `Streaming: true`.
193
+ *
194
+ * Capability gating (v1 = by backend implementation): {@link IRemoteBrowserSession.StartAudioStream}
195
+ * throws {@link RemoteBrowserCapabilityNotSupportedError} on a backend with no audio-capture mechanism —
196
+ * caught here and reported as `Streaming: false` (the client simply plays no audio). Any other failure is
197
+ * logged and likewise reported as `Streaming: false`.
198
+ *
199
+ * @param agentSessionID The `AIAgentSession` id the browser is bound to.
200
+ * @returns `{ Streaming: true }` when audio chunks are now being pushed, else `{ Streaming: false }`.
201
+ */
202
+ StartRemoteBrowserAudioStream(agentSessionID: string, { userPayload, providers }: AppContext, pubSub: PubSubEngine): Promise<RemoteBrowserAudioStreamResult>;
203
+ /**
204
+ * Stops a tab-audio stream previously started by {@link RemoteBrowserActionResolver.StartRemoteBrowserAudioStream}.
205
+ * Ownership-gated and best-effort: when no live browser exists, or `StopAudioStream` rejects, the call
206
+ * still resolves `true` (the client's teardown should never depend on this succeeding).
207
+ *
208
+ * @param agentSessionID The `AIAgentSession` id.
209
+ * @returns `true` (always) once the stop has been attempted.
210
+ */
211
+ StopRemoteBrowserAudioStream(agentSessionID: string, { userPayload, providers }: AppContext): Promise<boolean>;
212
+ /**
213
+ * Relays ONE human-takeover input (pointer move/click or key press) from the user watching the live
214
+ * screencast into the session's server-hosted browser — the "grab the wheel" path. Ownership-gated.
215
+ * The surface captures the event on the live-view canvas, maps display→viewport coordinates, and calls
216
+ * this; the resolver builds a strongly-typed {@link RemoteBrowserHumanInput} and routes it over CDP via
217
+ * {@link IRemoteBrowserSession.RouteHumanInput}.
218
+ *
219
+ * Gracefully best-effort, never throws past the ownership gate:
220
+ * - No live browser for the session → `false`.
221
+ * - Unknown/incomplete input (`buildHumanInput` returns null) → `false`.
222
+ * - Backend lacks `HumanTakeover` ({@link RemoteBrowserCapabilityNotSupportedError}) → `false` (the
223
+ * live view stays view-only for that backend).
224
+ * - Any other failure → logged + `false`.
225
+ *
226
+ * NOTE: this prototype does NOT reject by control mode here — the engine's floor arbiter governs the
227
+ * agent⇄human floor, so we just relay. Finer floor / `AgentOnly` gating is a follow-up.
228
+ *
229
+ * @param agentSessionID The `AIAgentSession` id the browser is bound to.
230
+ * @param kind The input kind (`'pointer-move' | 'pointer-click' | 'pointer-down' | 'pointer-up' | 'key' | 'scroll'`).
231
+ * @param modifiers Optional comma-separated modifier keys held during the input (`'Shift'`, `'Control'`,
232
+ * `'Alt'`, `'Meta'`) — carries Shift-click selection and Ctrl/Cmd+key chords faithfully.
233
+ * @returns `true` when the input was routed, else `false`.
234
+ */
235
+ RelayRemoteBrowserHumanInput(agentSessionID: string, kind: string, { userPayload, providers }: AppContext, x?: number, y?: number, button?: string, key?: string, deltaX?: number, deltaY?: number, modifiers?: string): Promise<boolean>;
236
+ /**
237
+ * Publishes one encoded screencast frame to the calling user's push-status topic, in the same envelope
238
+ * shape the conversations client already routes (mirrors `RealtimeClientSessionResolver`'s delegation
239
+ * progress publish). The client matches on `resolver` + `type`, then on `agentSessionID`, and paints
240
+ * `dataBase64` onto its canvas.
241
+ *
242
+ * @param pubSub The resolver-injected pub/sub engine.
243
+ * @param userPayload The calling user's payload (its `sessionId` scopes the topic to this browser).
244
+ * @param agentSessionID The `AIAgentSession` id the frame belongs to.
245
+ * @param frame The encoded viewport frame.
246
+ */
247
+ private publishFrame;
248
+ /**
249
+ * Publishes one encoded tab-audio chunk to the calling user's push-status topic, in the same envelope
250
+ * shape the conversations client routes for screencast frames (distinguished by `type`). The client
251
+ * matches on `resolver` + `type`, then on `agentSessionID`, and feeds `dataBase64` to its audio player.
252
+ *
253
+ * @param pubSub The resolver-injected pub/sub engine.
254
+ * @param userPayload The calling user's payload (its `sessionId` scopes the topic to this browser).
255
+ * @param agentSessionID The `AIAgentSession` id the chunk belongs to.
256
+ * @param chunk The encoded audio chunk.
257
+ */
258
+ private publishAudioChunk;
259
+ /**
260
+ * Runs the governable `Remote Browser Visual Interpreter` AI Prompt over a screenshot + request, and maps
261
+ * its strict-JSON output to {@link RemoteBrowserInterpretation}. The model is chosen by the PROMPT's own
262
+ * `MJ: AI Prompt Models` association (pinned to Gemini 3.1 Flash-Lite in metadata) — not hard-coded here.
263
+ * Tolerant: a missing prompt, a failed run, or unparseable output all degrade to a best-effort result.
264
+ *
265
+ * @param screenshotBase64 The raw Base64 viewport screenshot (no `data:` prefix).
266
+ * @param query The agent's request — empty/"describe" for a description, else a target to localize.
267
+ * @param contextUser The owning user (server-side multi-user safety).
268
+ * @returns The mapped interpretation.
269
+ */
270
+ private runVisualInterpreter;
271
+ /**
272
+ * Builds the natural-language instruction handed to the visual interpreter from the raw `query`. An empty
273
+ * / blank / "describe" request asks for a concise page description; anything else asks to locate that target
274
+ * and return its pixel centroid.
275
+ *
276
+ * @param query The raw request from the agent.
277
+ * @returns The instruction string.
278
+ */
279
+ private buildInterpreterInstruction;
280
+ /**
281
+ * Tolerantly parses the interpreter's raw text output into a {@link RemoteBrowserInterpretation}. Strips
282
+ * code fences before parsing; on parse failure returns the raw text as `Description` with no elements.
283
+ *
284
+ * @param raw The prompt's raw text output (may be null/undefined/fenced JSON).
285
+ * @returns The mapped interpretation.
286
+ */
287
+ private mapInterpreterResult;
288
+ /**
289
+ * Strips a leading/trailing Markdown code fence (```json … ```) from a model response so the inner JSON can
290
+ * be parsed. Returns the input unchanged when no fence is present.
291
+ *
292
+ * @param text The possibly-fenced text.
293
+ * @returns The text with any surrounding fence removed.
294
+ */
295
+ private stripCodeFences;
296
+ /** Resolve the request user + read-write provider, throwing a clear error if unauthenticated. */
297
+ protected requireUserAndProvider(userPayload: AppContext['userPayload'], providers: AppContext['providers']): {
298
+ contextUser: UserInfo;
299
+ provider: IMetadataProvider;
300
+ };
301
+ /**
302
+ * Loads the agent session and enforces inbound ownership: the session's `UserID` must equal the
303
+ * caller's. Throws when the session is missing or owned by another user.
304
+ *
305
+ * @param agentSessionID The `AIAgentSession` id.
306
+ * @returns The loaded, owned session entity.
307
+ */
308
+ protected loadOwnedSession(agentSessionID: string, contextUser: UserInfo, provider: IMetadataProvider): Promise<MJAIAgentSessionEntity>;
309
+ /**
310
+ * Resolves the remote-browser backend name for the session from the session's agent's
311
+ * `TypeConfiguration` JSON (`{ remoteBrowser: { provider } }`). Best-effort: a missing agent, absent
312
+ * config, or unparseable JSON all yield `undefined`, letting the engine fall back to the single Active
313
+ * provider.
314
+ *
315
+ * @param session The owned session entity (supplies the agent id).
316
+ * @returns The configured backend name, or `undefined` to let the engine auto-select.
317
+ */
318
+ protected resolveProviderName(session: MJAIAgentSessionEntity, contextUser: UserInfo, provider: IMetadataProvider): Promise<string | undefined>;
319
+ /**
320
+ * Parses an agent's `TypeConfiguration` JSON into the {@link RemoteBrowserTypeConfiguration} slice this
321
+ * resolver reads. Returns `null` for null/blank/non-object/unparseable input.
322
+ *
323
+ * @param json The raw `TypeConfiguration` JSON, or null.
324
+ * @returns The parsed config slice, or `null`.
325
+ */
326
+ private parseTypeConfiguration;
327
+ /**
328
+ * Builds a strongly-typed {@link RemoteBrowserAction} from the relayed `kind` + fields, validating the
329
+ * fields each kind requires. Returns `null` for an unknown kind or a kind missing its required field(s).
330
+ *
331
+ * @param input The relayed action kind + all optional fields.
332
+ * @returns The built action, or `null` when the kind is unknown / incomplete.
333
+ */
334
+ private buildAction;
335
+ /**
336
+ * Builds a strongly-typed {@link RemoteBrowserHumanInput} from the relayed `kind` + fields, validating
337
+ * each kind's required field(s). Returns `null` for an unknown kind or a kind missing its required
338
+ * field(s): pointer-move/click/down/up need finite `x`,`y`; key needs a non-empty `key`; scroll needs
339
+ * finite `x`,`y`,`deltaX`,`deltaY`. The `button` is clamped to the allowed union
340
+ * (`'left' | 'middle' | 'right'`), defaulting unknown/absent values to `'left'`. Held `modifiers`
341
+ * (e.g. Shift-click, Ctrl/Cmd+key) ride on pointer clicks/presses and key presses.
342
+ *
343
+ * @param input The relayed input kind + all optional fields.
344
+ * @returns The built human input, or `null` when the kind is unknown / incomplete.
345
+ */
346
+ private buildHumanInput;
347
+ /** Clamps a relayed mouse-button string to the allowed union, defaulting to `'left'`. */
348
+ private clampButton;
349
+ /**
350
+ * Parses the relayed comma-separated `modifiers` string into the validated
351
+ * {@link RemoteBrowserModifierKey} list, dropping any unrecognized token. Returns an empty array for a
352
+ * null/blank input.
353
+ *
354
+ * @param modifiers The raw `'Shift,Control'`-style CSV, or undefined.
355
+ * @returns The validated modifier list (possibly empty).
356
+ */
357
+ private parseModifiers;
358
+ }
359
+ //# sourceMappingURL=RemoteBrowserActionResolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RemoteBrowserActionResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/RemoteBrowserActionResolver.ts"],"names":[],"mappings":"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"}