@agent-native/toolkit 0.9.1 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. package/agent-native.eject.json +71 -0
  2. package/dist/chat-history/ChatHistoryRail.d.ts +15 -1
  3. package/dist/chat-history/ChatHistoryRail.d.ts.map +1 -1
  4. package/dist/chat-history/ChatHistoryRail.js +26 -13
  5. package/dist/chat-history/ChatHistoryRail.js.map +1 -1
  6. package/dist/chat-history/ChatHistoryRail.spec.js +77 -1
  7. package/dist/chat-history/ChatHistoryRail.spec.js.map +1 -1
  8. package/dist/chat-history/index.d.ts +2 -1
  9. package/dist/chat-history/index.d.ts.map +1 -1
  10. package/dist/chat-history/index.js +2 -1
  11. package/dist/chat-history/index.js.map +1 -1
  12. package/dist/chat-history/useChatHistoryRailController.d.ts +26 -0
  13. package/dist/chat-history/useChatHistoryRailController.d.ts.map +1 -0
  14. package/dist/chat-history/useChatHistoryRailController.js +36 -0
  15. package/dist/chat-history/useChatHistoryRailController.js.map +1 -0
  16. package/dist/chat-history/useChatHistoryRailController.spec.d.ts +2 -0
  17. package/dist/chat-history/useChatHistoryRailController.spec.d.ts.map +1 -0
  18. package/dist/chat-history/useChatHistoryRailController.spec.js +101 -0
  19. package/dist/chat-history/useChatHistoryRailController.spec.js.map +1 -0
  20. package/dist/chat-history.css +2 -0
  21. package/dist/composer/ComposerPlusMenu.js +1 -1
  22. package/dist/composer/ComposerPlusMenu.js.map +1 -1
  23. package/dist/composer/PromptComposer.d.ts +1 -0
  24. package/dist/composer/PromptComposer.d.ts.map +1 -1
  25. package/dist/composer/PromptComposer.js +26 -5
  26. package/dist/composer/PromptComposer.js.map +1 -1
  27. package/dist/composer/PromptComposer.spec.js +8 -1
  28. package/dist/composer/PromptComposer.spec.js.map +1 -1
  29. package/dist/composer/RealtimeVoiceMode.d.ts.map +1 -1
  30. package/dist/composer/RealtimeVoiceMode.js +56 -11
  31. package/dist/composer/RealtimeVoiceMode.js.map +1 -1
  32. package/dist/composer/RealtimeVoiceMode.spec.js +59 -7
  33. package/dist/composer/RealtimeVoiceMode.spec.js.map +1 -1
  34. package/dist/composer/useRealtimeVoiceMode.d.ts +7 -0
  35. package/dist/composer/useRealtimeVoiceMode.d.ts.map +1 -1
  36. package/dist/composer/useRealtimeVoiceMode.js +110 -6
  37. package/dist/composer/useRealtimeVoiceMode.js.map +1 -1
  38. package/dist/composer/useRealtimeVoiceMode.spec.js +74 -2
  39. package/dist/composer/useRealtimeVoiceMode.spec.js.map +1 -1
  40. package/dist/conformance/__fixtures__/css-in-js-adapter.d.ts +7 -0
  41. package/dist/conformance/__fixtures__/css-in-js-adapter.d.ts.map +1 -0
  42. package/dist/conformance/__fixtures__/css-in-js-adapter.js +84 -0
  43. package/dist/conformance/__fixtures__/css-in-js-adapter.js.map +1 -0
  44. package/dist/conformance/conformance.spec.d.ts +2 -0
  45. package/dist/conformance/conformance.spec.d.ts.map +1 -0
  46. package/dist/conformance/conformance.spec.js +87 -0
  47. package/dist/conformance/conformance.spec.js.map +1 -0
  48. package/dist/conformance/index.d.ts +4 -0
  49. package/dist/conformance/index.d.ts.map +1 -0
  50. package/dist/conformance/index.js +4 -0
  51. package/dist/conformance/index.js.map +1 -0
  52. package/dist/conformance/runner.d.ts +12 -0
  53. package/dist/conformance/runner.d.ts.map +1 -0
  54. package/dist/conformance/runner.js +515 -0
  55. package/dist/conformance/runner.js.map +1 -0
  56. package/dist/conformance/types.d.ts +26 -0
  57. package/dist/conformance/types.d.ts.map +1 -0
  58. package/dist/conformance/types.js +13 -0
  59. package/dist/conformance/types.js.map +1 -0
  60. package/dist/conformance/version.d.ts +6 -0
  61. package/dist/conformance/version.d.ts.map +1 -0
  62. package/dist/conformance/version.js +14 -0
  63. package/dist/conformance/version.js.map +1 -0
  64. package/dist/design-system/components.d.ts +64 -0
  65. package/dist/design-system/components.d.ts.map +1 -0
  66. package/dist/design-system/components.js +50 -0
  67. package/dist/design-system/components.js.map +1 -0
  68. package/dist/design-system/context.d.ts +11 -0
  69. package/dist/design-system/context.d.ts.map +1 -0
  70. package/dist/design-system/context.js +17 -0
  71. package/dist/design-system/context.js.map +1 -0
  72. package/dist/design-system/default-adapter.d.ts +3 -0
  73. package/dist/design-system/default-adapter.d.ts.map +1 -0
  74. package/dist/design-system/default-adapter.js +166 -0
  75. package/dist/design-system/default-adapter.js.map +1 -0
  76. package/dist/design-system/default-adapter.spec.d.ts +2 -0
  77. package/dist/design-system/default-adapter.spec.d.ts.map +1 -0
  78. package/dist/design-system/default-adapter.spec.js +96 -0
  79. package/dist/design-system/default-adapter.spec.js.map +1 -0
  80. package/dist/design-system/definition.d.ts +9 -0
  81. package/dist/design-system/definition.d.ts.map +1 -0
  82. package/dist/design-system/definition.js +4 -0
  83. package/dist/design-system/definition.js.map +1 -0
  84. package/dist/design-system/design-system.spec.d.ts +2 -0
  85. package/dist/design-system/design-system.spec.d.ts.map +1 -0
  86. package/dist/design-system/design-system.spec.js +121 -0
  87. package/dist/design-system/design-system.spec.js.map +1 -0
  88. package/dist/design-system/error-boundary.d.ts +18 -0
  89. package/dist/design-system/error-boundary.d.ts.map +1 -0
  90. package/dist/design-system/error-boundary.js +16 -0
  91. package/dist/design-system/error-boundary.js.map +1 -0
  92. package/dist/design-system/index.d.ts +8 -0
  93. package/dist/design-system/index.d.ts.map +1 -0
  94. package/dist/design-system/index.js +8 -0
  95. package/dist/design-system/index.js.map +1 -0
  96. package/dist/design-system/theme.d.ts +30 -0
  97. package/dist/design-system/theme.d.ts.map +1 -0
  98. package/dist/design-system/theme.js +95 -0
  99. package/dist/design-system/theme.js.map +1 -0
  100. package/dist/design-system/theme.spec.d.ts +2 -0
  101. package/dist/design-system/theme.spec.d.ts.map +1 -0
  102. package/dist/design-system/theme.spec.js +43 -0
  103. package/dist/design-system/theme.spec.js.map +1 -0
  104. package/dist/design-system/types.d.ts +288 -0
  105. package/dist/design-system/types.d.ts.map +1 -0
  106. package/dist/design-system/types.js +2 -0
  107. package/dist/design-system/types.js.map +1 -0
  108. package/dist/editor/SharedRichEditor.d.ts.map +1 -1
  109. package/dist/editor/SharedRichEditor.js +3 -2
  110. package/dist/editor/SharedRichEditor.js.map +1 -1
  111. package/dist/editor/SlashCommandMenu.d.ts +8 -0
  112. package/dist/editor/SlashCommandMenu.d.ts.map +1 -1
  113. package/dist/editor/SlashCommandMenu.js +6 -0
  114. package/dist/editor/SlashCommandMenu.js.map +1 -1
  115. package/dist/editor/SlashCommandMenu.spec.d.ts +2 -0
  116. package/dist/editor/SlashCommandMenu.spec.d.ts.map +1 -0
  117. package/dist/editor/SlashCommandMenu.spec.js +20 -0
  118. package/dist/editor/SlashCommandMenu.spec.js.map +1 -0
  119. package/dist/editor/index.d.ts +1 -1
  120. package/dist/editor/index.d.ts.map +1 -1
  121. package/dist/editor/index.js +1 -1
  122. package/dist/editor/index.js.map +1 -1
  123. package/dist/provider.d.ts +4 -3
  124. package/dist/provider.d.ts.map +1 -1
  125. package/dist/provider.js +46 -4
  126. package/dist/provider.js.map +1 -1
  127. package/dist/styles.css +52 -23
  128. package/dist/ui/button.d.ts +5 -0
  129. package/dist/ui/button.d.ts.map +1 -1
  130. package/dist/ui/button.js +25 -4
  131. package/dist/ui/button.js.map +1 -1
  132. package/dist/ui/dialog.d.ts +4 -0
  133. package/dist/ui/dialog.d.ts.map +1 -1
  134. package/dist/ui/dialog.js +2 -2
  135. package/dist/ui/dialog.js.map +1 -1
  136. package/dist/ui/popover.d.ts +1 -0
  137. package/dist/ui/popover.d.ts.map +1 -1
  138. package/dist/ui/popover.js +2 -2
  139. package/dist/ui/popover.js.map +1 -1
  140. package/dist/ui/select.d.ts +3 -1
  141. package/dist/ui/select.d.ts.map +1 -1
  142. package/dist/ui/select.js +1 -1
  143. package/dist/ui/select.js.map +1 -1
  144. package/dist/ui/sidebar.d.ts +6 -2
  145. package/dist/ui/sidebar.d.ts.map +1 -1
  146. package/dist/ui/sidebar.js +12 -15
  147. package/dist/ui/sidebar.js.map +1 -1
  148. package/dist/ui/tooltip.d.ts +3 -1
  149. package/dist/ui/tooltip.d.ts.map +1 -1
  150. package/dist/ui/tooltip.js +2 -2
  151. package/dist/ui/tooltip.js.map +1 -1
  152. package/package.json +31 -1
  153. package/src/chat-history/ChatHistoryRail.spec.tsx +174 -0
  154. package/src/chat-history/ChatHistoryRail.tsx +100 -39
  155. package/src/chat-history/index.ts +9 -0
  156. package/src/chat-history/useChatHistoryRailController.spec.tsx +131 -0
  157. package/src/chat-history/useChatHistoryRailController.ts +76 -0
  158. package/src/chat-history.css +2 -0
  159. package/src/composer/ComposerPlusMenu.tsx +11 -8
  160. package/src/composer/PromptComposer.spec.ts +12 -1
  161. package/src/composer/PromptComposer.tsx +32 -7
  162. package/src/composer/RealtimeVoiceMode.spec.tsx +117 -9
  163. package/src/composer/RealtimeVoiceMode.tsx +119 -31
  164. package/src/composer/useRealtimeVoiceMode.spec.ts +101 -1
  165. package/src/composer/useRealtimeVoiceMode.tsx +124 -9
  166. package/src/conformance/__fixtures__/css-in-js-adapter.tsx +401 -0
  167. package/src/conformance/conformance.spec.tsx +143 -0
  168. package/src/conformance/index.ts +3 -0
  169. package/src/conformance/runner.tsx +862 -0
  170. package/src/conformance/types.ts +45 -0
  171. package/src/conformance/version.ts +22 -0
  172. package/src/design-system/components.tsx +146 -0
  173. package/src/design-system/context.tsx +31 -0
  174. package/src/design-system/default-adapter.spec.tsx +143 -0
  175. package/src/design-system/default-adapter.tsx +915 -0
  176. package/src/design-system/definition.ts +14 -0
  177. package/src/design-system/design-system.spec.tsx +183 -0
  178. package/src/design-system/error-boundary.tsx +37 -0
  179. package/src/design-system/index.ts +7 -0
  180. package/src/design-system/theme.spec.ts +61 -0
  181. package/src/design-system/theme.ts +145 -0
  182. package/src/design-system/types.ts +363 -0
  183. package/src/editor/SharedRichEditor.tsx +13 -2
  184. package/src/editor/SlashCommandMenu.spec.ts +33 -0
  185. package/src/editor/SlashCommandMenu.tsx +20 -0
  186. package/src/editor/index.ts +2 -0
  187. package/src/provider.tsx +98 -5
  188. package/src/styles.css +52 -23
  189. package/src/ui/button.tsx +95 -6
  190. package/src/ui/dialog.tsx +48 -23
  191. package/src/ui/popover.tsx +16 -2
  192. package/src/ui/select.tsx +7 -3
  193. package/src/ui/sidebar.tsx +47 -48
  194. package/src/ui/tooltip.tsx +7 -3
@@ -80,8 +80,24 @@ const copy = {
80
80
  describe("RealtimeVoiceMode", () => {
81
81
  let container;
82
82
  let root;
83
+ let animate;
84
+ let cancelGlowAnimation;
85
+ let updateGlowPlaybackRate;
86
+ let originalAnimate;
83
87
  beforeEach(() => {
84
88
  vi.stubGlobal("IS_REACT_ACT_ENVIRONMENT", true);
89
+ originalAnimate = HTMLElement.prototype.animate;
90
+ cancelGlowAnimation = vi.fn();
91
+ updateGlowPlaybackRate = vi.fn();
92
+ animate = vi.fn(() => ({
93
+ cancel: cancelGlowAnimation,
94
+ playbackRate: 1,
95
+ updatePlaybackRate: updateGlowPlaybackRate,
96
+ }));
97
+ Object.defineProperty(HTMLElement.prototype, "animate", {
98
+ configurable: true,
99
+ value: animate,
100
+ });
85
101
  container = document.createElement("div");
86
102
  document.body.appendChild(container);
87
103
  root = createRoot(container);
@@ -89,6 +105,15 @@ describe("RealtimeVoiceMode", () => {
89
105
  afterEach(() => {
90
106
  act(() => root.unmount());
91
107
  container.remove();
108
+ if (originalAnimate) {
109
+ Object.defineProperty(HTMLElement.prototype, "animate", {
110
+ configurable: true,
111
+ value: originalAnimate,
112
+ });
113
+ }
114
+ else {
115
+ Reflect.deleteProperty(HTMLElement.prototype, "animate");
116
+ }
92
117
  vi.unstubAllGlobals();
93
118
  });
94
119
  const render = (node) => {
@@ -172,15 +197,14 @@ describe("RealtimeVoiceMode", () => {
172
197
  render(_jsx("div", { className: "agent-panel-root", children: _jsx(RealtimeVoiceModeEntry, { copy: copy, open: true, setupRequired: true, onStartVoiceMode: vi.fn(), onKeepDictating: vi.fn(), onConnectBuilder: onConnectBuilder, onUseOpenAiKey: onUseOpenAiKey }) }));
173
198
  expect(document.body.textContent).toContain("Set up voice mode");
174
199
  const prompt = document.querySelector('[role="dialog"]');
175
- expect(prompt?.className).toContain("w-[min(calc(100vw-2rem),var(--radix-popover-content-available-width,30rem),30rem)]");
200
+ expect(prompt?.className).toContain("w-[min(calc(100vw-2rem),var(--radix-popover-content-available-width,24rem),24rem)]");
176
201
  expect(prompt?.dataset.collisionBoundary).toBe("agent-panel");
177
- const actions = Array.from(prompt?.querySelectorAll("div") ?? []).find((element) => element.className.includes("sm:flex-row"));
202
+ const actions = Array.from(prompt?.querySelectorAll("div") ?? []).find((element) => element.className.includes("bg-muted/30"));
178
203
  const actionClasses = actions?.className.split(/\s+/) ?? [];
179
- expect(actionClasses).toContain("sm:flex-wrap");
180
- expect(actionClasses).not.toContain("sm:flex-nowrap");
204
+ expect(actionClasses).toContain("grid");
205
+ expect(actionClasses).toContain("rounded-lg");
181
206
  const buttons = Array.from(document.querySelectorAll("button"));
182
- expect(buttons.find((button) => button.textContent === "Connect Builder.io")
183
- ?.className).toContain("whitespace-nowrap");
207
+ expect(buttons.find((button) => button.textContent === "Connect Builder.io")).toBeDefined();
184
208
  act(() => buttons
185
209
  .find((button) => button.textContent === "Connect Builder.io")
186
210
  ?.click());
@@ -440,10 +464,38 @@ describe("RealtimeVoiceMode", () => {
440
464
  expect(document.querySelector('[data-realtime-voice-waveform-activity="idle"]')).not.toBeNull();
441
465
  expect(document.querySelector(".animate-spin")).toBeNull();
442
466
  });
443
- it("shines only while the agent is working", () => {
467
+ it.each(["listening", "speaking"])("keeps a soft session glow while %s", (state) => {
468
+ render(_jsx(RealtimeVoiceModeDock, { state: state, copy: copy, chatVisible: false, onToggleChat: vi.fn(), onEndVoiceMode: vi.fn() }));
469
+ expect(document.querySelector(".agent-realtime-voice-glow")).not.toBeNull();
470
+ expect(document.querySelector(".agent-realtime-voice-working")).toBeNull();
471
+ });
472
+ it("brightens the live glow while working", () => {
444
473
  render(_jsx(RealtimeVoiceModeDock, { state: "working", copy: copy, chatVisible: false, onToggleChat: vi.fn(), onEndVoiceMode: vi.fn() }));
474
+ expect(document.querySelector(".agent-realtime-voice-glow")).not.toBeNull();
445
475
  expect(document.querySelector(".agent-realtime-voice-working")).not.toBeNull();
476
+ });
477
+ it("changes glow speed without restarting or jumping its rotation", () => {
478
+ vi.useFakeTimers();
446
479
  render(_jsx(RealtimeVoiceModeDock, { state: "listening", copy: copy, chatVisible: false, onToggleChat: vi.fn(), onEndVoiceMode: vi.fn() }));
480
+ const glow = document.querySelector('[data-realtime-voice-glow="true"]');
481
+ expect(animate).toHaveBeenCalledTimes(1);
482
+ expect(updateGlowPlaybackRate).toHaveBeenLastCalledWith(1);
483
+ render(_jsx(RealtimeVoiceModeDock, { state: "working", copy: copy, chatVisible: false, onToggleChat: vi.fn(), onEndVoiceMode: vi.fn() }));
484
+ expect(document.querySelector('[data-realtime-voice-glow="true"]')).toBe(glow);
485
+ expect(animate).toHaveBeenCalledTimes(1);
486
+ expect(cancelGlowAnimation).not.toHaveBeenCalled();
487
+ expect(updateGlowPlaybackRate).toHaveBeenLastCalledWith(2.4);
488
+ render(_jsx(RealtimeVoiceModeDock, { state: "speaking", copy: copy, chatVisible: false, onToggleChat: vi.fn(), onEndVoiceMode: vi.fn() }));
489
+ expect(animate).toHaveBeenCalledTimes(1);
490
+ expect(cancelGlowAnimation).not.toHaveBeenCalled();
491
+ expect(updateGlowPlaybackRate).toHaveBeenLastCalledWith(2.4);
492
+ act(() => vi.advanceTimersByTime(800));
493
+ expect(updateGlowPlaybackRate).toHaveBeenLastCalledWith(1);
494
+ vi.useRealTimers();
495
+ });
496
+ it.each(["connecting", "error", "ending"])("does not show the live glow while %s", (state) => {
497
+ render(_jsx(RealtimeVoiceModeDock, { state: state, copy: copy, chatVisible: false, onToggleChat: vi.fn(), onEndVoiceMode: vi.fn() }));
498
+ expect(document.querySelector(".agent-realtime-voice-glow")).toBeNull();
447
499
  expect(document.querySelector(".agent-realtime-voice-working")).toBeNull();
448
500
  });
449
501
  it("shows an unmistakable loader and ignores early audio until connected", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"RealtimeVoiceMode.spec.js","sourceRoot":"","sources":["../../src/composer/RealtimeVoiceMode.spec.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RealtimeVoiceMode.spec.js","sourceRoot":"","sources":["../../src/composer/RealtimeVoiceMode.spec.tsx"],"names":[],"mappings":"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"}
@@ -92,6 +92,13 @@ export declare function createRealtimeVoiceGreetingStarter(send: (event: Record<
92
92
  start: () => boolean;
93
93
  reset: () => void;
94
94
  };
95
+ export interface RealtimeVoiceResponseCoordinator {
96
+ request: (event?: Record<string, unknown>) => void;
97
+ handleEvent: (event: RealtimeServerEvent) => void;
98
+ handleError: (message?: string) => boolean;
99
+ reset: () => void;
100
+ }
101
+ export declare function createRealtimeVoiceResponseCoordinator(send: (event: Record<string, unknown>) => void): RealtimeVoiceResponseCoordinator;
95
102
  /**
96
103
  * Voice mode owns the chat only temporarily. Restore the captured transcript
97
104
  * when it is still the user's active thread (or the chat has no active thread)
@@ -1 +1 @@
1
- {"version":3,"file":"useRealtimeVoiceMode.d.ts","sourceRoot":"","sources":["../../src/composer/useRealtimeVoiceMode.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useRealtimeVoiceMode.d.ts","sourceRoot":"","sources":["../../src/composer/useRealtimeVoiceMode.tsx"],"names":[],"mappings":"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"}
@@ -333,6 +333,61 @@ export function createRealtimeVoiceGreetingStarter(send) {
333
333
  },
334
334
  };
335
335
  }
336
+ export function createRealtimeVoiceResponseCoordinator(send) {
337
+ let active = false;
338
+ let requestInFlight = false;
339
+ let pending;
340
+ const flush = () => {
341
+ if (active || requestInFlight || !pending)
342
+ return;
343
+ const event = pending;
344
+ pending = undefined;
345
+ requestInFlight = true;
346
+ send(event);
347
+ };
348
+ return {
349
+ request(event = { type: "response.create" }) {
350
+ pending = event;
351
+ flush();
352
+ },
353
+ handleEvent(event) {
354
+ if (event.type === "response.created") {
355
+ active = true;
356
+ requestInFlight = false;
357
+ return;
358
+ }
359
+ if (event.type === "response.done" ||
360
+ event.type === "response.cancelled" ||
361
+ event.type === "response.failed") {
362
+ active = false;
363
+ requestInFlight = false;
364
+ const response = event.response;
365
+ const status = response && typeof response === "object"
366
+ ? response.status
367
+ : undefined;
368
+ if (event.type === "response.failed" || status === "failed") {
369
+ pending = undefined;
370
+ return;
371
+ }
372
+ flush();
373
+ }
374
+ },
375
+ handleError(message) {
376
+ if (!message || !/active response.*in progress/i.test(message)) {
377
+ return false;
378
+ }
379
+ pending ??= { type: "response.create" };
380
+ requestInFlight = false;
381
+ active = true;
382
+ return true;
383
+ },
384
+ reset() {
385
+ active = false;
386
+ requestInFlight = false;
387
+ pending = undefined;
388
+ },
389
+ };
390
+ }
336
391
  /**
337
392
  * Voice mode owns the chat only temporarily. Restore the captured transcript
338
393
  * when it is still the user's active thread (or the chat has no active thread)
@@ -687,11 +742,33 @@ export function extractRealtimeVoiceFunctionCalls(event) {
687
742
  },
688
743
  ];
689
744
  }
745
+ if (event.type === "response.output_item.done") {
746
+ const item = event.item;
747
+ if (!item || typeof item !== "object")
748
+ return [];
749
+ const record = item;
750
+ if (record.type !== "function_call")
751
+ return [];
752
+ const name = typeof record.name === "string" ? record.name : "";
753
+ const callId = typeof record.call_id === "string" ? record.call_id : "";
754
+ if (!name || !callId)
755
+ return [];
756
+ return [
757
+ {
758
+ name,
759
+ callId,
760
+ argumentsText: typeof record.arguments === "string" ? record.arguments : "{}",
761
+ },
762
+ ];
763
+ }
690
764
  if (event.type !== "response.done")
691
765
  return [];
692
766
  const response = event.response;
693
767
  if (!response || typeof response !== "object")
694
768
  return [];
769
+ const status = response.status;
770
+ if (status !== undefined && status !== "completed")
771
+ return [];
695
772
  const output = response.output;
696
773
  if (!Array.isArray(output))
697
774
  return [];
@@ -859,9 +936,17 @@ function useRealtimeVoiceModeController(browserTabId, copy) {
859
936
  const preferencesHydratedRef = useRef(false);
860
937
  const preferencesEditedRef = useRef(false);
861
938
  const preferenceWriteChainRef = useRef(Promise.resolve());
862
- const toolManifestCoordinator = useMemo(() => createRealtimeVoiceToolManifestCoordinator((event) => {
939
+ const responseCoordinator = useMemo(() => createRealtimeVoiceResponseCoordinator((event) => {
863
940
  sendDataChannelEvent(channelRef.current, event);
864
941
  }), []);
942
+ const toolManifestCoordinator = useMemo(() => createRealtimeVoiceToolManifestCoordinator((event) => {
943
+ if (event.type === "response.create") {
944
+ responseCoordinator.request(event);
945
+ }
946
+ else {
947
+ sendDataChannelEvent(channelRef.current, event);
948
+ }
949
+ }), [responseCoordinator]);
865
950
  const switchMicrophoneRef = useRef(async () => undefined);
866
951
  useEffect(() => {
867
952
  stateRef.current = state;
@@ -1113,8 +1198,9 @@ function useRealtimeVoiceModeController(browserTabId, copy) {
1113
1198
  void audioContext.close().catch(() => undefined);
1114
1199
  audioLevels.reset();
1115
1200
  handledCallsRef.current.clear();
1201
+ responseCoordinator.reset();
1116
1202
  toolManifestCoordinator.reset();
1117
- }, [audioLevels, toolManifestCoordinator]);
1203
+ }, [audioLevels, responseCoordinator, toolManifestCoordinator]);
1118
1204
  const fail = useCallback((message, options) => {
1119
1205
  cleanupTransport();
1120
1206
  setError(message);
@@ -1171,9 +1257,10 @@ function useRealtimeVoiceModeController(browserTabId, copy) {
1171
1257
  }, []);
1172
1258
  const transcriptSequencer = useMemo(() => createRealtimeVoiceTranscriptSequencer(publishCompletedTranscript), [publishCompletedTranscript]);
1173
1259
  const greetingStarter = useMemo(() => createRealtimeVoiceGreetingStarter((event) => {
1174
- sendDataChannelEvent(channelRef.current, event);
1175
- }), []);
1260
+ responseCoordinator.request(event);
1261
+ }), [responseCoordinator]);
1176
1262
  const handleServerEvent = useCallback((event) => {
1263
+ responseCoordinator.handleEvent(event);
1177
1264
  transcriptSequencer.handle(event);
1178
1265
  const sessionTools = extractRealtimeVoiceSessionTools(event);
1179
1266
  if (sessionTools)
@@ -1196,6 +1283,7 @@ function useRealtimeVoiceModeController(browserTabId, copy) {
1196
1283
  }
1197
1284
  else if (event.type === "input_audio_buffer.speech_stopped") {
1198
1285
  transition("working");
1286
+ responseCoordinator.request();
1199
1287
  }
1200
1288
  else if (event.type === "response.created") {
1201
1289
  // From this point onward the response is committed to audio output, so
@@ -1229,11 +1317,22 @@ function useRealtimeVoiceModeController(browserTabId, copy) {
1229
1317
  ? response.status
1230
1318
  : undefined;
1231
1319
  if (status === "failed") {
1232
- fail(copy?.errors.responseFailed ??
1233
- "OpenAI could not complete the voice response.");
1320
+ transportGenerationRef.current += 1;
1321
+ handledCallsRef.current.clear();
1322
+ responseCoordinator.reset();
1323
+ toolManifestCoordinator.reset();
1324
+ transition("listening");
1234
1325
  return;
1235
1326
  }
1236
1327
  }
1328
+ else if (event.type === "response.failed") {
1329
+ transportGenerationRef.current += 1;
1330
+ handledCallsRef.current.clear();
1331
+ responseCoordinator.reset();
1332
+ toolManifestCoordinator.reset();
1333
+ transition("listening");
1334
+ return;
1335
+ }
1237
1336
  else if (event.type === "error") {
1238
1337
  const detail = event.error;
1239
1338
  const message = detail && typeof detail === "object"
@@ -1247,6 +1346,10 @@ function useRealtimeVoiceModeController(browserTabId, copy) {
1247
1346
  if (toolManifestCoordinator.handleError(typeof expansionEventId === "string" ? expansionEventId : undefined, message)) {
1248
1347
  return;
1249
1348
  }
1349
+ if (responseCoordinator.handleError(message)) {
1350
+ transition("working");
1351
+ return;
1352
+ }
1250
1353
  fail(message ||
1251
1354
  copy?.errors.sessionFailed ||
1252
1355
  "The realtime voice session encountered an error.");
@@ -1266,6 +1369,7 @@ function useRealtimeVoiceModeController(browserTabId, copy) {
1266
1369
  syncAppState,
1267
1370
  transcriptSequencer,
1268
1371
  transition,
1372
+ responseCoordinator,
1269
1373
  toolManifestCoordinator,
1270
1374
  updateLivePreferences,
1271
1375
  ]);