unity-open-mcp 1.5.0 → 1.6.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 (90) hide show
  1. package/dist/capabilities/cost-hints.js +73 -0
  2. package/dist/capabilities/cost-hints.js.map +1 -1
  3. package/dist/capabilities/intent-groups.js +76 -4
  4. package/dist/capabilities/intent-groups.js.map +1 -1
  5. package/dist/capabilities/lifecycle.js +9 -0
  6. package/dist/capabilities/lifecycle.js.map +1 -1
  7. package/dist/capabilities/tool-groups.js +75 -17
  8. package/dist/capabilities/tool-groups.js.map +1 -1
  9. package/dist/constants.d.ts +2 -2
  10. package/dist/constants.js +2 -2
  11. package/dist/event-stream.d.ts +10 -0
  12. package/dist/event-stream.js +29 -0
  13. package/dist/event-stream.js.map +1 -1
  14. package/dist/game-view-settle.d.ts +18 -0
  15. package/dist/game-view-settle.js +81 -0
  16. package/dist/game-view-settle.js.map +1 -0
  17. package/dist/jobs/adapters.d.ts +59 -0
  18. package/dist/jobs/adapters.js +226 -0
  19. package/dist/jobs/adapters.js.map +1 -1
  20. package/dist/live-client.d.ts +10 -0
  21. package/dist/live-client.js +26 -3
  22. package/dist/live-client.js.map +1 -1
  23. package/dist/local-tools.js +3 -0
  24. package/dist/local-tools.js.map +1 -1
  25. package/dist/playmode-routes.d.ts +17 -0
  26. package/dist/playmode-routes.js +50 -0
  27. package/dist/playmode-routes.js.map +1 -0
  28. package/dist/playtest/png.d.ts +27 -0
  29. package/dist/playtest/png.js +248 -0
  30. package/dist/playtest/png.js.map +1 -0
  31. package/dist/playtest/recorder.d.ts +203 -0
  32. package/dist/playtest/recorder.js +945 -0
  33. package/dist/playtest/recorder.js.map +1 -0
  34. package/dist/playtest/redact.d.ts +16 -0
  35. package/dist/playtest/redact.js +124 -0
  36. package/dist/playtest/redact.js.map +1 -0
  37. package/dist/playtest/report.d.ts +73 -0
  38. package/dist/playtest/report.js +477 -0
  39. package/dist/playtest/report.js.map +1 -0
  40. package/dist/playtest/session-store.d.ts +78 -0
  41. package/dist/playtest/session-store.js +224 -0
  42. package/dist/playtest/session-store.js.map +1 -0
  43. package/dist/skill/SKILL.md +20 -3
  44. package/dist/skill/references/senses-and-tests.md +3 -0
  45. package/dist/tool-router.d.ts +44 -0
  46. package/dist/tool-router.js +235 -2
  47. package/dist/tool-router.js.map +1 -1
  48. package/dist/tools/batch-execute.js +5 -1
  49. package/dist/tools/batch-execute.js.map +1 -1
  50. package/dist/tools/capture-inline.js +30 -12
  51. package/dist/tools/capture-inline.js.map +1 -1
  52. package/dist/tools/capture-series.d.ts +46 -0
  53. package/dist/tools/capture-series.js +116 -0
  54. package/dist/tools/capture-series.js.map +1 -0
  55. package/dist/tools/game-view.d.ts +44 -0
  56. package/dist/tools/game-view.js +103 -0
  57. package/dist/tools/game-view.js.map +1 -0
  58. package/dist/tools/index.d.ts +1 -0
  59. package/dist/tools/index.js +34 -7
  60. package/dist/tools/index.js.map +1 -1
  61. package/dist/tools/inputsim-gesture.d.ts +46 -0
  62. package/dist/tools/inputsim-gesture.js +123 -0
  63. package/dist/tools/inputsim-gesture.js.map +1 -0
  64. package/dist/tools/inputsim-pointer.js +35 -2
  65. package/dist/tools/inputsim-pointer.js.map +1 -1
  66. package/dist/tools/inputsim-touch.js +42 -22
  67. package/dist/tools/inputsim-touch.js.map +1 -1
  68. package/dist/tools/jobs.js +1 -1
  69. package/dist/tools/jobs.js.map +1 -1
  70. package/dist/tools/player-state.d.ts +42 -0
  71. package/dist/tools/player-state.js +142 -0
  72. package/dist/tools/player-state.js.map +1 -0
  73. package/dist/tools/playtest-conditions.d.ts +334 -0
  74. package/dist/tools/playtest-conditions.js +99 -0
  75. package/dist/tools/playtest-conditions.js.map +1 -0
  76. package/dist/tools/playtest-session.d.ts +45 -0
  77. package/dist/tools/playtest-session.js +105 -0
  78. package/dist/tools/playtest-session.js.map +1 -0
  79. package/dist/tools/playtest-wait.d.ts +46 -0
  80. package/dist/tools/playtest-wait.js +86 -0
  81. package/dist/tools/playtest-wait.js.map +1 -0
  82. package/dist/tools/screenshot.js +31 -8
  83. package/dist/tools/screenshot.js.map +1 -1
  84. package/dist/tools/text-target.d.ts +22 -0
  85. package/dist/tools/text-target.js +39 -0
  86. package/dist/tools/text-target.js.map +1 -0
  87. package/dist/tools/ui-snapshot.d.ts +41 -0
  88. package/dist/tools/ui-snapshot.js +87 -0
  89. package/dist/tools/ui-snapshot.js.map +1 -0
  90. package/package.json +1 -1
@@ -33,6 +33,7 @@ export declare class BridgeEventStream {
33
33
  private reconnectDelayMs;
34
34
  private stopped;
35
35
  private readonly cursors;
36
+ private readonly listeners;
36
37
  private baseUrl;
37
38
  private authToken?;
38
39
  private readonly projectPath?;
@@ -54,6 +55,15 @@ export declare class BridgeEventStream {
54
55
  static parseSseBlock(block: string): BridgeEvent | null;
55
56
  private enqueue;
56
57
  private scheduleReconnect;
58
+ /** Observe every incoming event (non-consuming). Returns the unsubscribe function. */
59
+ addListener(listener: (evt: BridgeEvent) => void): () => void;
60
+ /**
61
+ * Skip a pending backoff and reconnect now. Called before a call whose
62
+ * console output matters (a recorded playtest call): after a domain reload
63
+ * the backoff can otherwise leave the stream down for up to 30 s while the
64
+ * bridge is already back. No-op when connected, connecting or stopped.
65
+ */
66
+ reconnectNow(): void;
57
67
  /** Drain all queued events. The subscription keeps running. */
58
68
  drain(maxEvents: number): BridgeEvent[];
59
69
  /** One-shot pull: start the subscription if needed and drain.
@@ -59,6 +59,10 @@ export class BridgeEventStream {
59
59
  // is initialised to the current queue tail (the high-water mark) so it only
60
60
  // sees events emitted AFTER its first pull.
61
61
  cursors = new Map();
62
+ // Observers that see every event as it arrives without consuming the queue
63
+ // (the playtest session recorder correlates console errors with the calls
64
+ // it records). A throwing listener never breaks the reader.
65
+ listeners = new Set();
62
66
  // baseUrl/authToken are mutable: connect() re-resolves them from the
63
67
  // instance lock (resolveRefreshedEndpoint) because the bridge rotates its
64
68
  // bearer token on every domain reload / editor restart. projectPath/envPort
@@ -245,6 +249,12 @@ export class BridgeEventStream {
245
249
  return evt;
246
250
  }
247
251
  enqueue(evt) {
252
+ for (const listener of this.listeners) {
253
+ try {
254
+ listener(evt);
255
+ }
256
+ catch { /* observers must not break the reader */ }
257
+ }
248
258
  this.queue.push(evt);
249
259
  // M31 Plan 6 / T6.1 — single O(n) bulk drop instead of a while+shift loop.
250
260
  // `shift()` is O(n) per call because it re-indexes the array; under sustained
@@ -283,6 +293,25 @@ export class BridgeEventStream {
283
293
  // base on the next successful connect (see connect()).
284
294
  this.reconnectDelayMs = Math.min(this.reconnectDelayMs * 2, RECONNECT_MAX_DELAY_MS);
285
295
  }
296
+ /** Observe every incoming event (non-consuming). Returns the unsubscribe function. */
297
+ addListener(listener) {
298
+ this.listeners.add(listener);
299
+ return () => { this.listeners.delete(listener); };
300
+ }
301
+ /**
302
+ * Skip a pending backoff and reconnect now. Called before a call whose
303
+ * console output matters (a recorded playtest call): after a domain reload
304
+ * the backoff can otherwise leave the stream down for up to 30 s while the
305
+ * bridge is already back. No-op when connected, connecting or stopped.
306
+ */
307
+ reconnectNow() {
308
+ if (!this.started || this.stopped || this.connected || !this.reconnectTimer)
309
+ return;
310
+ clearTimeout(this.reconnectTimer);
311
+ this.reconnectTimer = null;
312
+ this.abortController = null;
313
+ this.connect();
314
+ }
286
315
  /** Drain all queued events. The subscription keeps running. */
287
316
  drain(maxEvents) {
288
317
  const cap = maxEvents > 0 && maxEvents <= 1000 ? maxEvents : 100;
@@ -1 +1 @@
1
- {"version":3,"file":"event-stream.js","sourceRoot":"","sources":["../src/event-stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-stream.js","sourceRoot":"","sources":["../src/event-stream.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import type { LiveClient } from "./live-client.js";
2
+ import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
3
+ export declare const GAME_VIEW_TOOL = "unity_open_mcp_game_view";
4
+ export type GameViewRouteOutcome = {
5
+ kind: "passthrough";
6
+ result: CallToolResult;
7
+ } | {
8
+ kind: "body";
9
+ body: Record<string, unknown>;
10
+ isError: boolean;
11
+ };
12
+ export interface GameViewSettleOptions {
13
+ pollIntervalMs?: number;
14
+ /** Extra time after the settle timeout before the poll gives up (cancel + grace). */
15
+ slackMs?: number;
16
+ unreachableMs?: number;
17
+ }
18
+ export declare function routeGameView(live: LiveClient, args: Record<string, unknown>, options?: GameViewSettleOptions): Promise<GameViewRouteOutcome>;
@@ -0,0 +1,81 @@
1
+ import { pollPlaymodeOperation, toolOutput, toolResultBody } from "./jobs/adapters.js";
2
+ import { GAME_VIEW_DEFAULT_SETTLE_MS } from "./tools/game-view.js";
3
+ export const GAME_VIEW_TOOL = "unity_open_mcp_game_view";
4
+ const SET_ACTIONS = new Set(["set_resolution", "set_device"]);
5
+ function notSettled(out, message, extra, logs) {
6
+ const { status: _status, settle, ...state } = out;
7
+ return {
8
+ kind: "body",
9
+ isError: true,
10
+ body: {
11
+ error: { code: "not_settled", message, ...extra },
12
+ ...state,
13
+ settled: false,
14
+ settle: { ...(settle && typeof settle === "object" ? settle : {}), ...extra, operation: undefined },
15
+ agentNextSteps: [
16
+ "The change was applied to the Editor; the game has not reported the new size yet. Make sure play mode is " +
17
+ "running (not paused) and the Game view / Simulator tab is visible, then call game_view get and compare screen with expected.",
18
+ ],
19
+ ...(logs === undefined ? {} : { logs }),
20
+ },
21
+ };
22
+ }
23
+ export async function routeGameView(live, args, options = {}) {
24
+ const start = await live.route(GAME_VIEW_TOOL, args);
25
+ const out = toolOutput(start);
26
+ if (start.isError || out.error || !SET_ACTIONS.has(String(args.action)))
27
+ return { kind: "passthrough", result: start };
28
+ const logs = toolResultBody(start).logs;
29
+ const settle = (out.settle ?? {});
30
+ switch (settle.state) {
31
+ case "settled":
32
+ return { kind: "passthrough", result: start };
33
+ case "paused":
34
+ case "failed":
35
+ return notSettled(out, String(settle.reason ?? settle.error?.message ?? `Settle ${settle.state}.`), { state: settle.state }, logs);
36
+ case "pending":
37
+ break;
38
+ default:
39
+ return { kind: "passthrough", result: start };
40
+ }
41
+ const operationId = settle.operation?.operation_id;
42
+ if (typeof operationId !== "string")
43
+ return notSettled(out, "The bridge started no settle watch.", { state: "unknown" }, logs);
44
+ const timeoutMs = Number(settle.timeout_ms) > 0 ? Number(settle.timeout_ms) : GAME_VIEW_DEFAULT_SETTLE_MS;
45
+ const outcome = await pollPlaymodeOperation(live, operationId, {
46
+ deadlineMs: timeoutMs + (options.slackMs ?? 2_000),
47
+ pollIntervalMs: options.pollIntervalMs ?? 50,
48
+ unreachableMs: options.unreachableMs ?? 10_000,
49
+ });
50
+ switch (outcome.kind) {
51
+ case "lost":
52
+ return notSettled(out, "The bridge lost the settle watch (domain reload or Editor restart).", { state: "lost" }, logs);
53
+ case "unreachable":
54
+ return notSettled(out, `Settle status unavailable: ${outcome.error}`, { state: "unreachable" }, logs);
55
+ case "deadline":
56
+ return notSettled(out, "The game did not report the new size before the settle timeout (paused Editor or no frames).", { state: "timeout", observed: outcome.snapshot?.result?.observed ?? null }, logs);
57
+ }
58
+ const snapshot = outcome.snapshot;
59
+ const result = (snapshot.result ?? {});
60
+ const frames = snapshot.progress?.ticks;
61
+ if (snapshot.state !== "succeeded" || result.settled !== true) {
62
+ return notSettled(out, String(result.reason ?? `Settle watch ended ${snapshot.reason ?? snapshot.state}.`), { state: snapshot.state === "succeeded" ? "timeout" : String(snapshot.reason ?? snapshot.state), observed: result.observed ?? null, frames }, logs);
63
+ }
64
+ // Settled: describe the view as it is now.
65
+ const fresh = toolOutput(await live.route(GAME_VIEW_TOOL, { action: "get" }));
66
+ const { status: _s, action: _a, ...freshState } = fresh.error ? {} : fresh;
67
+ return {
68
+ kind: "body",
69
+ isError: false,
70
+ body: {
71
+ ...out,
72
+ ...freshState,
73
+ status: "ok",
74
+ action: out.action,
75
+ settled: true,
76
+ settle: { state: "settled", frames, observed: result.observed ?? null },
77
+ ...(logs === undefined ? {} : { logs }),
78
+ },
79
+ };
80
+ }
81
+ //# sourceMappingURL=game-view-settle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"game-view-settle.js","sourceRoot":"","sources":["../src/game-view-settle.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
1
2
  import { type LiveClient } from "../live-client.js";
2
3
  import { type JobOperation, type JobOwner } from "./job-manager.js";
3
4
  type ClientFor = (owner: JobOwner) => LiveClient;
@@ -12,4 +13,62 @@ export interface ProjectJobPollOptions {
12
13
  unreachableMs?: number;
13
14
  }
14
15
  export declare function projectCommandOperation(id: string, cancellable: boolean, client: ClientFor, poll?: ProjectJobPollOptions): JobOperation;
16
+ /** Tools served by the generic `playmode_operation` jobs adapter. */
17
+ export declare const PLAYMODE_OPERATION_TOOLS: ReadonlyMap<string, Record<string, any>>;
18
+ /** Encoding cost assumed per captured frame (PNG encode of a native frame) for duration estimates. */
19
+ export declare const PLAYMODE_ENCODE_ESTIMATE_MS = 250;
20
+ /**
21
+ * Worst-case duration (ms) of a play-mode operation from its arguments: the
22
+ * gesture's last keyframe or capture, a wait's timeout, a series' start_on
23
+ * wait plus its schedule (frames at a conservative 30 fps) plus encoding.
24
+ * Decides inline-vs-job and sizes the job deadline.
25
+ */
26
+ export declare function playmodeEstimateMs(tool: string, args: Record<string, unknown>): number;
27
+ /** Stable failure code of a terminal play-mode snapshot (the operation's own code when it set one). */
28
+ export declare function playmodeFailureCode(snapshot: Record<string, any>, fallback?: string): string;
29
+ export declare const PLAYMODE_JOB_DEFAULT_DEADLINE_MS: number;
30
+ export declare const PLAYMODE_JOB_DEFAULT_UNREACHABLE_MS: number;
31
+ export interface PlaymodePollOptions {
32
+ deadlineMs?: number;
33
+ pollIntervalMs?: number;
34
+ unreachableMs?: number;
35
+ }
36
+ /** Parsed JSON body of a tool result ({} when it is not JSON). */
37
+ export declare function toolResultBody(result: CallToolResult): Record<string, any>;
38
+ /**
39
+ * The tool's own output: registry tools answer inside the gate envelope
40
+ * (`mutation.output` / `mutation.error`); other shapes are returned as-is.
41
+ */
42
+ export declare function toolOutput(result: CallToolResult): Record<string, any>;
43
+ export type PlaymodePollOutcome = {
44
+ kind: "terminal";
45
+ snapshot: Record<string, any>;
46
+ cancelSent: boolean;
47
+ } | {
48
+ kind: "lost";
49
+ detail: Record<string, any>;
50
+ } | {
51
+ kind: "deadline";
52
+ snapshot: Record<string, any> | null;
53
+ cancelSent: boolean;
54
+ } | {
55
+ kind: "unreachable";
56
+ error: string;
57
+ };
58
+ /**
59
+ * Poll a scheduler operation to a terminal state. An abort of `signal` sends one
60
+ * cancel and keeps polling for its acknowledgement; at the deadline a cancel is
61
+ * sent once (the bridge then releases held input) before giving up. A cancel
62
+ * counts as sent only once the bridge answered it — a failed one is retried
63
+ * with backoff. An operation the deadline cancel ended is a `deadline`
64
+ * outcome, never a caller-initiated `cancelled`.
65
+ */
66
+ export declare function pollPlaymodeOperation(live: LiveClient, operationId: string, options?: PlaymodePollOptions & {
67
+ signal?: AbortSignal;
68
+ onSnapshot?: (snapshot: Record<string, any>) => void;
69
+ onTransport?: (connected: boolean, detail: string) => void;
70
+ }): Promise<PlaymodePollOutcome>;
71
+ /** Flatten a terminal scheduler snapshot into a job/tool result. */
72
+ export declare function playmodeResult(snapshot: Record<string, any>): Record<string, unknown>;
73
+ export declare function playmodeOperation(tool: string, schema: Record<string, any>, client: ClientFor, poll?: PlaymodePollOptions): JobOperation;
15
74
  export {};
@@ -2,6 +2,9 @@ import { setTimeout as delay } from "node:timers/promises";
2
2
  import { ProjectJobHttpError } from "../live-client.js";
3
3
  import { validateSchema } from "../tool-contract.js";
4
4
  import { runTests } from "../tools/run-tests.js";
5
+ import { inputsimGesture } from "../tools/inputsim-gesture.js";
6
+ import { playtestWait, PLAYTEST_WAIT_DEFAULT_TIMEOUT_MS } from "../tools/playtest-wait.js";
7
+ import { captureSeries, CAPTURE_SERIES_DEFAULT_START_TIMEOUT_MS } from "../tools/capture-series.js";
5
8
  import { JobManagerError } from "./job-manager.js";
6
9
  function invalid(errors) {
7
10
  if (errors.length)
@@ -144,4 +147,227 @@ export function projectCommandOperation(id, cancellable, client, poll = {}) {
144
147
  },
145
148
  };
146
149
  }
150
+ // ---------------------------------------------------------------------------
151
+ // Play-mode operations — one generic adapter for every tool whose work runs on
152
+ // the bridge's shared play-mode scheduler (a player-loop tick that owns timing,
153
+ // cancellation and reload / exit-play cleanup). The tool call starts the
154
+ // operation with the job id as its operation_id and returns at once; status and
155
+ // cancel go through POST /playmode-operations. Records are domain-local: a
156
+ // reload drops them (after releasing held input), which surfaces here as
157
+ // `operation_not_found` and orphans the job — never a restart.
158
+ // ---------------------------------------------------------------------------
159
+ /** Tools served by the generic `playmode_operation` jobs adapter. */
160
+ export const PLAYMODE_OPERATION_TOOLS = new Map([
161
+ [inputsimGesture.name, inputsimGesture.inputSchema],
162
+ [playtestWait.name, playtestWait.inputSchema],
163
+ [captureSeries.name, captureSeries.inputSchema],
164
+ ]);
165
+ /** Encoding cost assumed per captured frame (PNG encode of a native frame) for duration estimates. */
166
+ export const PLAYMODE_ENCODE_ESTIMATE_MS = 250;
167
+ const numbers = (v) => Array.isArray(v) ? v.map(Number).filter(Number.isFinite) : [];
168
+ /**
169
+ * Worst-case duration (ms) of a play-mode operation from its arguments: the
170
+ * gesture's last keyframe or capture, a wait's timeout, a series' start_on
171
+ * wait plus its schedule (frames at a conservative 30 fps) plus encoding.
172
+ * Decides inline-vs-job and sizes the job deadline.
173
+ */
174
+ export function playmodeEstimateMs(tool, args) {
175
+ if (tool === inputsimGesture.name) {
176
+ const fingers = Array.isArray(args.fingers) ? args.fingers : [];
177
+ const keyframes = fingers.flatMap(f => Array.isArray(f?.path) ? f.path.map(k => Number(k?.at_ms) || 0) : []);
178
+ const captures = numbers(args.capture_at_ms);
179
+ return Math.max(0, ...keyframes, ...captures) + captures.length * PLAYMODE_ENCODE_ESTIMATE_MS;
180
+ }
181
+ if (tool === playtestWait.name)
182
+ return typeof args.timeout_ms === "number" ? args.timeout_ms : PLAYTEST_WAIT_DEFAULT_TIMEOUT_MS;
183
+ if (tool === captureSeries.name) {
184
+ const atMs = numbers(args.at_ms), atFrames = numbers(args.at_frames);
185
+ const every = Number(args.every_ms), duration = Number(args.duration_ms);
186
+ let last = 0, count = 0;
187
+ if (atMs.length) {
188
+ last = Math.max(...atMs);
189
+ count = atMs.length;
190
+ }
191
+ else if (atFrames.length) {
192
+ last = Math.max(...atFrames) * 1000 / 30;
193
+ count = atFrames.length;
194
+ }
195
+ else if (every > 0 && duration >= 0) {
196
+ last = duration;
197
+ count = Math.floor(duration / every) + 1;
198
+ }
199
+ const trigger = args.start_on === undefined ? 0
200
+ : typeof args.start_timeout_ms === "number" ? args.start_timeout_ms : CAPTURE_SERIES_DEFAULT_START_TIMEOUT_MS;
201
+ return trigger + last + count * PLAYMODE_ENCODE_ESTIMATE_MS;
202
+ }
203
+ return 0;
204
+ }
205
+ /** Stable failure code of a terminal play-mode snapshot (the operation's own code when it set one). */
206
+ export function playmodeFailureCode(snapshot, fallback = "operation_failed") {
207
+ if (snapshot.state === "failed")
208
+ return typeof snapshot.result?.error_code === "string" ? snapshot.result.error_code : fallback;
209
+ return String(snapshot.reason ?? snapshot.state ?? fallback);
210
+ }
211
+ export const PLAYMODE_JOB_DEFAULT_DEADLINE_MS = 10 * 60_000;
212
+ export const PLAYMODE_JOB_DEFAULT_UNREACHABLE_MS = 2 * 60_000;
213
+ const PLAYMODE_TERMINAL = new Set(["succeeded", "failed", "cancelled", "orphaned"]);
214
+ /** Parsed JSON body of a tool result ({} when it is not JSON). */
215
+ export function toolResultBody(result) {
216
+ const text = result.content.find(item => item.type === "text");
217
+ if (text?.type !== "text")
218
+ return {};
219
+ try {
220
+ return JSON.parse(text.text);
221
+ }
222
+ catch {
223
+ return {};
224
+ }
225
+ }
226
+ /**
227
+ * The tool's own output: registry tools answer inside the gate envelope
228
+ * (`mutation.output` / `mutation.error`); other shapes are returned as-is.
229
+ */
230
+ export function toolOutput(result) {
231
+ const body = toolResultBody(result);
232
+ const mutation = body.mutation;
233
+ if (mutation && typeof mutation === "object") {
234
+ if (mutation.output && typeof mutation.output === "object")
235
+ return mutation.output;
236
+ if (mutation.error)
237
+ return { error: mutation.error };
238
+ }
239
+ return body;
240
+ }
241
+ /**
242
+ * Poll a scheduler operation to a terminal state. An abort of `signal` sends one
243
+ * cancel and keeps polling for its acknowledgement; at the deadline a cancel is
244
+ * sent once (the bridge then releases held input) before giving up. A cancel
245
+ * counts as sent only once the bridge answered it — a failed one is retried
246
+ * with backoff. An operation the deadline cancel ended is a `deadline`
247
+ * outcome, never a caller-initiated `cancelled`.
248
+ */
249
+ export async function pollPlaymodeOperation(live, operationId, options = {}) {
250
+ const deadlineMs = options.deadlineMs ?? PLAYMODE_JOB_DEFAULT_DEADLINE_MS;
251
+ const pollIntervalMs = options.pollIntervalMs ?? 250;
252
+ const unreachableMs = options.unreachableMs ?? PLAYMODE_JOB_DEFAULT_UNREACHABLE_MS;
253
+ const startedAt = Date.now();
254
+ let lastAnswer = Date.now();
255
+ let failures = 0;
256
+ let cancelSent = false;
257
+ let deadlineCancel = false;
258
+ let last = null;
259
+ while (true) {
260
+ const overdue = Date.now() - startedAt >= deadlineMs;
261
+ const wantCancel = !cancelSent && (overdue || options.signal?.aborted === true);
262
+ if (!wantCancel || failures > 0) {
263
+ try {
264
+ await delay(pollIntervalMs * 2 ** Math.min(failures, 3), undefined, wantCancel || cancelSent || !options.signal ? undefined : { signal: options.signal });
265
+ }
266
+ catch { /* aborted: send the cancel now */ }
267
+ }
268
+ const action = !cancelSent && (overdue || options.signal?.aborted === true) ? "cancel" : "status";
269
+ let answer;
270
+ try {
271
+ answer = await live.playmodeOperation({ action, operation_id: operationId });
272
+ if (action === "cancel") {
273
+ cancelSent = true;
274
+ deadlineCancel = options.signal?.aborted !== true;
275
+ }
276
+ if (failures)
277
+ options.onTransport?.(true, `Bridge answered again for operation ${operationId}.`);
278
+ failures = 0;
279
+ lastAnswer = Date.now();
280
+ }
281
+ catch (error) {
282
+ if (error instanceof ProjectJobHttpError && error.status < 500)
283
+ return { kind: "unreachable", error: String(error) };
284
+ if (failures++ === 0)
285
+ options.onTransport?.(false, `Operation poll failed (${String(error).slice(0, 200)}); retrying.`);
286
+ if (Date.now() - lastAnswer >= unreachableMs)
287
+ return { kind: "unreachable", error: `No answer for ${unreachableMs} ms.` };
288
+ continue;
289
+ }
290
+ if (answer.error?.code === "operation_not_found")
291
+ return { kind: "lost", detail: answer };
292
+ if (answer.error)
293
+ return { kind: "unreachable", error: `${answer.error.code}: ${answer.error.message}` };
294
+ last = answer;
295
+ options.onSnapshot?.(answer);
296
+ if (deadlineCancel && answer.state === "cancelled" && answer.reason === "cancelled")
297
+ return { kind: "deadline", snapshot: answer, cancelSent };
298
+ if (PLAYMODE_TERMINAL.has(String(answer.state)))
299
+ return { kind: "terminal", snapshot: answer, cancelSent };
300
+ // A cancel sent at the deadline gets a short grace window for its acknowledgement.
301
+ if (overdue && cancelSent && Date.now() - startedAt >= deadlineMs + 5_000)
302
+ return { kind: "deadline", snapshot: last, cancelSent };
303
+ }
304
+ }
305
+ /** Flatten a terminal scheduler snapshot into a job/tool result. */
306
+ export function playmodeResult(snapshot) {
307
+ const { result, ...meta } = snapshot;
308
+ return { operation: meta, ...(result && typeof result === "object" ? result : {}) };
309
+ }
310
+ export function playmodeOperation(tool, schema, client, poll = {}) {
311
+ return {
312
+ mutating: false, cancellable: true,
313
+ validate(args) {
314
+ if (args.operation_id !== undefined)
315
+ throw new JobManagerError("invalid_arguments", "Jobs own operation_id; use idempotency_key to retry.");
316
+ invalid(validateSchema(args, schema));
317
+ },
318
+ async run(args, context) {
319
+ const live = client(context.owner);
320
+ context.report({ phase: "starting" });
321
+ // Start is idempotent per operation id: a retried POST returns the same record.
322
+ const started = toolOutput(await live.route(tool, { ...args, operation_id: context.jobId }));
323
+ const operation = started.operation;
324
+ if (started.error || !operation)
325
+ return { state: "failed", error: { code: started.error?.code ?? "operation_rejected", message: started.error?.message ?? "Bridge did not start the play-mode operation." }, result: started };
326
+ if (operation.operation_id !== context.jobId)
327
+ throw new Error("Bridge did not confirm play-mode operation ownership.");
328
+ context.lifecycle("connected", `Bridge play-mode scheduler owns operation ${context.jobId}`, true);
329
+ let phase;
330
+ // The deadline outlives the operation's own worst case (a 10-minute wait).
331
+ const deadlineMs = poll.deadlineMs ?? Math.max(PLAYMODE_JOB_DEFAULT_DEADLINE_MS, playmodeEstimateMs(tool, args) + 2 * 60_000);
332
+ const outcome = await pollPlaymodeOperation(live, context.jobId, {
333
+ ...poll, deadlineMs, signal: context.signal,
334
+ onSnapshot: snapshot => {
335
+ const expected = Number(snapshot.progress?.expectedMs);
336
+ const elapsed = Number(snapshot.progress?.elapsedMs);
337
+ const fraction = expected > 0 && Number.isFinite(elapsed) ? Math.min(1, Math.max(0, elapsed / expected)) : undefined;
338
+ if (snapshot.phase !== phase || fraction !== undefined) {
339
+ phase = String(snapshot.phase);
340
+ context.report({ phase, ...(fraction === undefined ? {} : { fraction }) });
341
+ }
342
+ },
343
+ onTransport: (connected, detail) => context.lifecycle(connected ? "connected" : "disconnected", detail, true),
344
+ });
345
+ switch (outcome.kind) {
346
+ case "lost":
347
+ context.lifecycle("disconnected", "Bridge lost the play-mode operation (domain reload or Editor restart); its held input was released by that cleanup.", false);
348
+ return { state: "failed", error: { code: "operation_lost", message: "The bridge no longer knows this operation." }, result: outcome.detail };
349
+ case "unreachable":
350
+ context.lifecycle("disconnected", `Play-mode operation status unavailable: ${outcome.error}`, false);
351
+ return { state: "failed", error: { code: "job_status_unavailable", message: outcome.error } };
352
+ case "deadline":
353
+ context.lifecycle("disconnected", "Play-mode operation reported no terminal state before the deadline; cancel sent.", false);
354
+ return { state: "failed", error: { code: "job_deadline_exceeded", message: "No terminal state before the deadline." }, ...(outcome.snapshot ? { result: outcome.snapshot } : {}) };
355
+ }
356
+ const snapshot = outcome.snapshot;
357
+ const result = playmodeResult(snapshot);
358
+ if (snapshot.state === "succeeded")
359
+ return { state: "succeeded", result };
360
+ if (snapshot.state === "cancelled" && context.signal.aborted)
361
+ return { state: "cancelled", result };
362
+ if (snapshot.state === "orphaned") {
363
+ context.lifecycle("disconnected", `Bridge ended the operation without completing it (${snapshot.reason}).`, false);
364
+ return { state: "failed", error: { code: "operation_lost", message: String(snapshot.reason) }, result };
365
+ }
366
+ // cancelled without our request = play mode exited; failed = operation error
367
+ // (a wait that timed out, a game exception: the operation's own error_code).
368
+ return { state: "failed", error: { code: playmodeFailureCode(snapshot),
369
+ message: String(snapshot.result?.error ?? snapshot.reason ?? "Play-mode operation did not complete.") }, result };
370
+ },
371
+ };
372
+ }
147
373
  //# sourceMappingURL=adapters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapters.js","sourceRoot":"","sources":["../../src/jobs/adapters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapters.js","sourceRoot":"","sources":["../../src/jobs/adapters.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import type { Router } from "./router.js";
3
3
  import { PingCache, type PingSnapshot } from "./ping-cache.js";
4
4
  import type { BridgeToolsInventory } from "./bridge-tools-cache.js";
5
5
  import { type PollAndDismissOptions } from "./dialog-dismiss.js";
6
+ export declare const TOOL_OWNED_TIMEOUT_TOOLS: ReadonlySet<string>;
6
7
  /** Retry only when the transport proves the POST could not reach a listener.
7
8
  * A socket reset, response timeout, or a changed endpoint cannot rule out an
8
9
  * already committed mutation. Aggregate connect failures must all be safe.
@@ -254,6 +255,15 @@ export declare class LiveClient implements Router {
254
255
  readResource(route: string): Promise<Record<string, unknown>>;
255
256
  /** Private job transport: one bounded request, never an automatic mutation retry. */
256
257
  projectCommandJob(args: Record<string, unknown>): Promise<Record<string, any>>;
258
+ /**
259
+ * Status / cancel for an operation owned by the bridge's shared play-mode
260
+ * scheduler (started through its tool, e.g. inputsim_gesture). One bounded
261
+ * request; a non-2xx answer throws so callers can retry or give up.
262
+ */
263
+ playmodeOperation(args: {
264
+ action: "status" | "cancel";
265
+ operation_id: string;
266
+ }): Promise<Record<string, any>>;
257
267
  /** Fresh authenticated bounded catalog read; no disk/session cache can hide a reload. */
258
268
  projectCommands(args: Record<string, unknown>): Promise<Record<string, unknown>>;
259
269
  /**