@parhelia/core 0.1.12337 → 0.1.12345

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 (53) hide show
  1. package/dist/components/ui/dialog.js +2 -2
  2. package/dist/components/ui/dialog.js.map +1 -1
  3. package/dist/editor/MobileLayout.js +4 -4
  4. package/dist/editor/MobileLayout.js.map +1 -1
  5. package/dist/editor/ai/AgentTerminal.js +8 -8
  6. package/dist/editor/ai/AgentTerminal.js.map +1 -1
  7. package/dist/editor/ai/ToolCallDisplay.d.ts +5 -0
  8. package/dist/editor/ai/ToolCallDisplay.js +139 -92
  9. package/dist/editor/ai/ToolCallDisplay.js.map +1 -1
  10. package/dist/editor/ai/dialogs/AgentDialogHandler.js +38 -45
  11. package/dist/editor/ai/dialogs/AgentDialogHandler.js.map +1 -1
  12. package/dist/editor/context-menu/InsertMenu.js +13 -4
  13. package/dist/editor/context-menu/InsertMenu.js.map +1 -1
  14. package/dist/editor/media-selector/MediaSelector.js +1 -1
  15. package/dist/editor/media-selector/MediaSelector.js.map +1 -1
  16. package/dist/editor/media-selector/TreeSelector.js +2 -2
  17. package/dist/editor/media-selector/TreeSelector.js.map +1 -1
  18. package/dist/editor/menubar/Separator.js +1 -1
  19. package/dist/editor/page-editor-chrome/InlineEditor.js +20 -7
  20. package/dist/editor/page-editor-chrome/InlineEditor.js.map +1 -1
  21. package/dist/editor/page-viewer/PageViewerFrame.js +22 -0
  22. package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
  23. package/dist/editor/services/agentService.d.ts +8 -0
  24. package/dist/editor/services/agentService.js +7 -0
  25. package/dist/editor/services/agentService.js.map +1 -1
  26. package/dist/editor/sidebar/LabelButton.js +1 -1
  27. package/dist/editor/sidebar/LabelButton.js.map +1 -1
  28. package/dist/editor/sidebar/WorkspaceRailMobile.d.ts +4 -4
  29. package/dist/editor/sidebar/WorkspaceRailMobile.js +23 -13
  30. package/dist/editor/sidebar/WorkspaceRailMobile.js.map +1 -1
  31. package/dist/revision.d.ts +2 -2
  32. package/dist/revision.js +2 -2
  33. package/dist/task-board/TaskBoardWorkspace.js +12 -7
  34. package/dist/task-board/TaskBoardWorkspace.js.map +1 -1
  35. package/dist/task-board/components/CreateProjectDialog.js +76 -65
  36. package/dist/task-board/components/CreateProjectDialog.js.map +1 -1
  37. package/dist/task-board/components/CreateTaskDialog.js +1 -1
  38. package/dist/task-board/components/CreateTaskDialog.js.map +1 -1
  39. package/dist/task-board/components/ProjectListContent.d.ts +20 -0
  40. package/dist/task-board/components/ProjectListContent.js +56 -0
  41. package/dist/task-board/components/ProjectListContent.js.map +1 -0
  42. package/dist/task-board/components/ProjectSelector.js +4 -52
  43. package/dist/task-board/components/ProjectSelector.js.map +1 -1
  44. package/dist/task-board/components/ProjectSettingsDialog.js +16 -16
  45. package/dist/task-board/components/ProjectSettingsDialog.js.map +1 -1
  46. package/dist/task-board/components/TaskBoardTitlebar.d.ts +1 -1
  47. package/dist/task-board/components/TaskBoardTitlebar.js +3 -0
  48. package/dist/task-board/components/TaskBoardTitlebar.js.map +1 -1
  49. package/dist/task-board/services/taskService.d.ts +2 -1
  50. package/dist/task-board/services/taskService.js +3 -0
  51. package/dist/task-board/services/taskService.js.map +1 -1
  52. package/dist/task-board/types.d.ts +9 -1
  53. package/package.json +1 -1
@@ -3,6 +3,11 @@ import "react-json-view-lite/dist/index.css";
3
3
  export type ApprovalInfo = {
4
4
  summary: string;
5
5
  riskLevel?: "low" | "medium" | "high";
6
+ allowableScope?: {
7
+ parentItemId: string;
8
+ parentItemPath?: string;
9
+ operationType: string;
10
+ };
6
11
  };
7
12
  export interface BaseToolCall {
8
13
  id: string;
@@ -5,7 +5,7 @@ import "react-json-view-lite/dist/index.css";
5
5
  import { Spinner } from "../ui/Spinner";
6
6
  import { Button } from "../../components/ui/button";
7
7
  import { CopyButton } from "../../components/ui/copy-button";
8
- import { approveToolCall, rejectToolCall, updateAgentSettings } from "../services/agentService";
8
+ import { approveToolCall, createOperationAllowance, rejectToolCall, updateAgentSettings, } from "../services/agentService";
9
9
  // Custom dark theme styles for JSON view
10
10
  const darkJsonStyles = {
11
11
  ...defaultStyles,
@@ -189,44 +189,68 @@ const ToolCallDetails = memo(({ toolCall, result }) => {
189
189
  });
190
190
  ToolCallDetails.displayName = "ToolCallDetails";
191
191
  export function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopovers, messageId, agentId, allPendingApprovals = [], onSwitchToAutonomous, seenApprovalDialogs, onApprovalDialogShown, }) {
192
- const [isApprovingAll, setIsApprovingAll] = useState(false);
192
+ const [batchRiskAction, setBatchRiskAction] = useState(null);
193
193
  const [isSwitchingMode, setIsSwitchingMode] = useState(false);
194
194
  if (!toolCalls || toolCalls.length === 0) {
195
195
  return null;
196
196
  }
197
+ const resolvePendingToolCalls = async (pendingToolCalls, approved) => {
198
+ if (!agentId || pendingToolCalls.length === 0)
199
+ return;
200
+ const actionLabel = approved ? "approve" : "reject";
201
+ await Promise.all(pendingToolCalls.map(async (pending) => {
202
+ try {
203
+ const params = {
204
+ agentId,
205
+ messageId: pending.dbMessageId || pending.messageId,
206
+ toolCallId: pending.toolCallId,
207
+ };
208
+ if (approved) {
209
+ await approveToolCall(params);
210
+ }
211
+ else {
212
+ await rejectToolCall(params);
213
+ }
214
+ window.dispatchEvent(new CustomEvent("agent:toolApprovalResolved", {
215
+ detail: {
216
+ messageId: pending.dbMessageId || pending.messageId,
217
+ toolCallId: pending.toolCallId,
218
+ approved,
219
+ },
220
+ }));
221
+ }
222
+ catch (error) {
223
+ console.error(`Failed to ${actionLabel} tool call ${pending.toolCallId}:`, error);
224
+ }
225
+ }));
226
+ };
197
227
  // Helper to approve all pending tool calls with a specific risk level
198
228
  const handleApproveAllByRisk = async (riskLevel) => {
199
- if (!agentId || isApprovingAll)
229
+ if (!agentId || batchRiskAction)
200
230
  return;
201
231
  const matchingPending = allPendingApprovals.filter((p) => (p.riskLevel || undefined) === riskLevel);
202
232
  if (matchingPending.length === 0)
203
233
  return;
204
- setIsApprovingAll(true);
234
+ setBatchRiskAction("approve");
205
235
  try {
206
- // Approve all matching tool calls in parallel
207
- await Promise.all(matchingPending.map(async (pending) => {
208
- try {
209
- await approveToolCall({
210
- agentId,
211
- messageId: pending.dbMessageId || pending.messageId,
212
- toolCallId: pending.toolCallId,
213
- });
214
- // Dispatch event to update UI
215
- window.dispatchEvent(new CustomEvent("agent:toolApprovalResolved", {
216
- detail: {
217
- messageId: pending.dbMessageId || pending.messageId,
218
- toolCallId: pending.toolCallId,
219
- approved: true,
220
- },
221
- }));
222
- }
223
- catch (error) {
224
- console.error(`Failed to approve tool call ${pending.toolCallId}:`, error);
225
- }
226
- }));
236
+ await resolvePendingToolCalls(matchingPending, true);
227
237
  }
228
238
  finally {
229
- setIsApprovingAll(false);
239
+ setBatchRiskAction(null);
240
+ }
241
+ };
242
+ const handleRejectAllByRisk = async (riskLevel) => {
243
+ if (!agentId || batchRiskAction)
244
+ return;
245
+ const matchingPending = allPendingApprovals.filter((p) => (p.riskLevel || undefined) === riskLevel);
246
+ if (matchingPending.length === 0)
247
+ return;
248
+ setBatchRiskAction("reject");
249
+ try {
250
+ await resolvePendingToolCalls(matchingPending, false);
251
+ }
252
+ finally {
253
+ setBatchRiskAction(null);
230
254
  }
231
255
  };
232
256
  // Helper to switch to autonomous mode
@@ -239,25 +263,7 @@ export function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopo
239
263
  onSwitchToAutonomous?.();
240
264
  // After switching to autonomous, approve all remaining pending tool calls
241
265
  if (allPendingApprovals.length > 0) {
242
- await Promise.all(allPendingApprovals.map(async (pending) => {
243
- try {
244
- await approveToolCall({
245
- agentId,
246
- messageId: pending.dbMessageId || pending.messageId,
247
- toolCallId: pending.toolCallId,
248
- });
249
- window.dispatchEvent(new CustomEvent("agent:toolApprovalResolved", {
250
- detail: {
251
- messageId: pending.dbMessageId || pending.messageId,
252
- toolCallId: pending.toolCallId,
253
- approved: true,
254
- },
255
- }));
256
- }
257
- catch (error) {
258
- console.error(`Failed to approve tool call ${pending.toolCallId}:`, error);
259
- }
260
- }));
266
+ await resolvePendingToolCalls(allPendingApprovals, true);
261
267
  }
262
268
  }
263
269
  catch (error) {
@@ -290,6 +296,14 @@ export function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopo
290
296
  const originalFunctionName = ("functionName" in originalToolCall
291
297
  ? originalToolCall.functionName
292
298
  : toolCall?.function?.name) || "";
299
+ const baseFunctionName = originalFunctionName
300
+ .replace(" (approved)", "")
301
+ .replace(" (rejected)", "")
302
+ .replace(" (pending approval)", "")
303
+ .trim()
304
+ .toLowerCase();
305
+ const hideAutonomousSwitch = baseFunctionName === "delete-item" ||
306
+ baseFunctionName === "delete-items";
293
307
  const isApproved = originalFunctionName.includes("(approved)");
294
308
  const isRejected = originalFunctionName.includes("(rejected)");
295
309
  const isPending = originalFunctionName.includes("(pending approval)");
@@ -312,12 +326,13 @@ export function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopo
312
326
  "(function name missing)")
313
327
  .replace(" (approved)", "")
314
328
  .replace(" (rejected)", "")
315
- .replace(" (pending approval)", ""), toolCall.function?.error && !isRejected && (_jsx("span", { className: "ml-1 text-red-500", children: "(error)" })), finalApprovalInfo && isApproved && (_jsxs("span", { className: "ml-2 inline-flex items-center gap-1 rounded-full bg-green-100 px-2 py-0.5 text-[10px] font-semibold text-green-700", children: [_jsx("span", { children: "\u2713" }), " Approved"] })), finalApprovalInfo && isRejected && (_jsxs("span", { className: "ml-2 inline-flex items-center gap-1 rounded-full bg-red-100 px-2 py-0.5 text-[10px] font-semibold text-red-700", children: [_jsx("span", { children: "\u2717" }), " Rejected"] })), finalApprovalInfo && isPending && (_jsxs("span", { className: "ml-2 inline-flex items-center gap-1 rounded-full bg-amber-100 px-2 py-0.5 text-[10px] font-semibold text-amber-700", children: [_jsx("span", { children: "\u23F8" }), " Pending approval"] }))] }) })] }), isExpanded && (_jsx(ToolCallDetails, { toolCall: toolCall, result: toolResult })), !isCompleted && finalApprovalInfo && !hasApprovalStatus && (_jsx(ApprovalDialog, { toolCallId: toolCallIdForApproval, onApprovalDialogShown: onApprovalDialogShown, finalApprovalInfo: finalApprovalInfo, isAgentToolCall: isAgentToolCall, originalToolCall: originalToolCall, toolCall: toolCall, messageId: messageId, agentId: agentId, allPendingApprovals: allPendingApprovals, onSwitchToAutonomous: onSwitchToAutonomous, isSwitchingMode: isSwitchingMode, setIsSwitchingMode: setIsSwitchingMode, isApprovingAll: isApprovingAll, setIsApprovingAll: setIsApprovingAll, handleApproveAllByRisk: handleApproveAllByRisk, handleSwitchToAutonomous: handleSwitchToAutonomous }))] }, toolIndex));
329
+ .replace(" (pending approval)", ""), toolCall.function?.error && !isRejected && (_jsx("span", { className: "ml-1 text-red-500", children: "(error)" })), finalApprovalInfo && isApproved && (_jsxs("span", { className: "ml-2 inline-flex items-center gap-1 rounded-full bg-green-100 px-2 py-0.5 text-[10px] font-semibold text-green-700", children: [_jsx("span", { children: "\u2713" }), " Approved"] })), finalApprovalInfo && isRejected && (_jsxs("span", { className: "ml-2 inline-flex items-center gap-1 rounded-full bg-red-100 px-2 py-0.5 text-[10px] font-semibold text-red-700", children: [_jsx("span", { children: "\u2717" }), " Rejected"] })), finalApprovalInfo && isPending && (_jsxs("span", { className: "ml-2 inline-flex items-center gap-1 rounded-full bg-amber-100 px-2 py-0.5 text-[10px] font-semibold text-amber-700", children: [_jsx("span", { children: "\u23F8" }), " Pending approval"] }))] }) })] }), isExpanded && (_jsx(ToolCallDetails, { toolCall: toolCall, result: toolResult })), !isCompleted && finalApprovalInfo && !hasApprovalStatus && (_jsx(ApprovalDialog, { toolCallId: toolCallIdForApproval, onApprovalDialogShown: onApprovalDialogShown, finalApprovalInfo: finalApprovalInfo, isAgentToolCall: isAgentToolCall, originalToolCall: originalToolCall, toolCall: toolCall, messageId: messageId, agentId: agentId, allPendingApprovals: allPendingApprovals, onSwitchToAutonomous: onSwitchToAutonomous, hideAutonomousSwitch: hideAutonomousSwitch, isSwitchingMode: isSwitchingMode, setIsSwitchingMode: setIsSwitchingMode, batchRiskAction: batchRiskAction, handleApproveAllByRisk: handleApproveAllByRisk, handleRejectAllByRisk: handleRejectAllByRisk, handleSwitchToAutonomous: handleSwitchToAutonomous }))] }, toolIndex));
316
330
  }) }));
317
331
  }
318
332
  // Separate component for approval dialog to properly handle useEffect
319
- function ApprovalDialog({ toolCallId, onApprovalDialogShown, finalApprovalInfo, isAgentToolCall, originalToolCall, toolCall, messageId, agentId, allPendingApprovals, onSwitchToAutonomous, isSwitchingMode, setIsSwitchingMode, isApprovingAll, setIsApprovingAll, handleApproveAllByRisk, handleSwitchToAutonomous, }) {
333
+ function ApprovalDialog({ toolCallId, onApprovalDialogShown, finalApprovalInfo, isAgentToolCall, originalToolCall, toolCall, messageId, agentId, allPendingApprovals, onSwitchToAutonomous, hideAutonomousSwitch, isSwitchingMode, setIsSwitchingMode, batchRiskAction, handleApproveAllByRisk, handleRejectAllByRisk, handleSwitchToAutonomous, }) {
320
334
  const hasMarkedAsShown = useRef(false);
335
+ const [isCreatingAllowance, setIsCreatingAllowance] = useState(false);
321
336
  // Mark dialog as shown on mount to prevent duplicate dialogs
322
337
  // The dialog stays visible until hasApprovalStatus becomes true (after approve/reject)
323
338
  useEffect(() => {
@@ -340,6 +355,43 @@ function ApprovalDialog({ toolCallId, onApprovalDialogShown, finalApprovalInfo,
340
355
  hasMarkedAsShown.current = true;
341
356
  }
342
357
  };
358
+ const getActualMessageId = () => {
359
+ return isAgentToolCall
360
+ ? originalToolCall.dbMessageId || originalToolCall.messageId
361
+ : messageId;
362
+ };
363
+ const dispatchApprovalResolved = (actualMessageId, approved) => {
364
+ const ev = new CustomEvent("agent:toolApprovalResolved", {
365
+ detail: {
366
+ messageId: actualMessageId,
367
+ toolCallId: toolCall.id,
368
+ approved,
369
+ },
370
+ });
371
+ window.dispatchEvent(ev);
372
+ };
373
+ const approveCurrentToolCall = async () => {
374
+ const actualMessageId = getActualMessageId();
375
+ if (!agentId) {
376
+ console.error("Cannot approve tool call: agentId is missing");
377
+ return;
378
+ }
379
+ if (!actualMessageId) {
380
+ console.error("Cannot approve tool call: messageId is missing");
381
+ return;
382
+ }
383
+ await approveToolCall({
384
+ agentId,
385
+ messageId: actualMessageId,
386
+ toolCallId: toolCall.id,
387
+ });
388
+ dispatchApprovalResolved(actualMessageId, true);
389
+ };
390
+ const allowableScope = finalApprovalInfo.allowableScope;
391
+ const showAllowInScopeButton = !!agentId &&
392
+ allowableScope?.operationType === "delete" &&
393
+ !!allowableScope.parentItemId &&
394
+ !!allowableScope.parentItemPath;
343
395
  return (_jsxs("div", { className: "mt-2 overflow-hidden rounded-lg border border-amber-200 bg-gradient-to-br from-amber-50 to-amber-50/30 shadow-sm", children: [_jsx("div", { className: "border-b border-amber-200/60 bg-amber-50/80 p-3", children: _jsxs("div", { className: "flex items-start gap-3", children: [_jsx("div", { className: `mt-1 h-2.5 w-2.5 rounded-full shadow-sm ${finalApprovalInfo.riskLevel === "high"
344
396
  ? "bg-red-500 ring-2 ring-red-200"
345
397
  : finalApprovalInfo.riskLevel === "medium"
@@ -348,13 +400,32 @@ function ApprovalDialog({ toolCallId, onApprovalDialogShown, finalApprovalInfo,
348
400
  ? "bg-red-100 text-red-700"
349
401
  : finalApprovalInfo.riskLevel === "medium"
350
402
  ? "bg-amber-100 text-amber-700"
351
- : "bg-green-100 text-green-700"}`, children: [_jsx("span", { className: "font-normal", children: "Risk:" }), _jsx("span", { className: "uppercase", children: finalApprovalInfo.riskLevel })] }))] })] }) }), _jsxs("div", { className: "flex flex-col gap-2 bg-white/60 p-3", children: [_jsxs("div", { className: "flex flex-wrap items-center justify-end gap-2", children: [_jsx(Button, { size: "sm", variant: "secondary", "data-testid": "agent-reject-button", onClick: async () => {
403
+ : "bg-green-100 text-green-700"}`, children: [_jsx("span", { className: "font-normal", children: "Risk:" }), _jsx("span", { className: "uppercase", children: finalApprovalInfo.riskLevel })] }))] })] }) }), _jsxs("div", { className: "flex flex-col gap-2 bg-white/60 p-3", children: [_jsxs("div", { className: "flex flex-wrap items-center justify-end gap-2", children: [showAllowInScopeButton && (_jsx(Button, { size: "sm", variant: "outline", disabled: isCreatingAllowance, onClick: async () => {
404
+ markAsShown();
405
+ if (!agentId || !allowableScope?.parentItemId)
406
+ return;
407
+ setIsCreatingAllowance(true);
408
+ try {
409
+ await createOperationAllowance({
410
+ agentId,
411
+ itemId: allowableScope.parentItemId,
412
+ operationType: "delete",
413
+ scopeType: "itemSubtree",
414
+ });
415
+ await approveCurrentToolCall();
416
+ }
417
+ catch (error) {
418
+ console.error("Failed to create operation allowance:", error);
419
+ alert(`Failed to allow deletes in scope: ${error?.message || "Unknown error"}`);
420
+ }
421
+ finally {
422
+ setIsCreatingAllowance(false);
423
+ }
424
+ }, children: isCreatingAllowance
425
+ ? "Allowing..."
426
+ : `Allow deletes in ${allowableScope?.parentItemPath}` })), _jsx(Button, { size: "sm", variant: "secondary", "data-testid": "agent-reject-button", onClick: async () => {
352
427
  markAsShown(); // Mark as shown when user interacts
353
- // Use the dbMessageId from AgentToolCall if available, otherwise fall back to messageId or prop
354
- const actualMessageId = isAgentToolCall
355
- ? originalToolCall.dbMessageId ||
356
- originalToolCall.messageId
357
- : messageId;
428
+ const actualMessageId = getActualMessageId();
358
429
  if (!agentId) {
359
430
  console.error("❌ Cannot reject tool call: agentId is missing");
360
431
  return;
@@ -375,53 +446,21 @@ function ApprovalDialog({ toolCallId, onApprovalDialogShown, finalApprovalInfo,
375
446
  toolCallId: toolCall.id,
376
447
  });
377
448
  console.log("✅ Reject successful:", result);
378
- const ev = new CustomEvent("agent:toolApprovalResolved", {
379
- detail: {
380
- messageId: actualMessageId,
381
- toolCallId: toolCall.id,
382
- approved: false,
383
- },
384
- });
385
- window.dispatchEvent(ev);
449
+ dispatchApprovalResolved(actualMessageId, false);
386
450
  }
387
451
  catch (error) {
388
452
  console.error("❌ Reject failed:", error);
389
453
  }
390
454
  }, children: "Reject" }), _jsx(Button, { size: "sm", "data-testid": "agent-approve-button", onClick: async () => {
391
455
  markAsShown(); // Mark as shown when user interacts
392
- // Use the dbMessageId from AgentToolCall if available, otherwise fall back to messageId or prop
393
- const actualMessageId = isAgentToolCall
394
- ? originalToolCall.dbMessageId ||
395
- originalToolCall.messageId
396
- : messageId;
397
- if (!agentId) {
398
- console.error("❌ Cannot approve tool call: agentId is missing");
399
- return;
400
- }
401
- if (!actualMessageId) {
402
- console.error("❌ Cannot approve tool call: messageId is missing");
403
- return;
404
- }
405
456
  console.log("✅ Approving tool call:", {
406
457
  agentId,
407
- messageId: actualMessageId,
458
+ messageId: getActualMessageId(),
408
459
  toolCallId: toolCall.id,
409
460
  });
410
461
  try {
411
- const result = await approveToolCall({
412
- agentId,
413
- messageId: actualMessageId,
414
- toolCallId: toolCall.id,
415
- });
416
- console.log("✅ Approve successful:", result);
417
- const ev = new CustomEvent("agent:toolApprovalResolved", {
418
- detail: {
419
- messageId: actualMessageId,
420
- toolCallId: toolCall.id,
421
- approved: true,
422
- },
423
- });
424
- window.dispatchEvent(ev);
462
+ await approveCurrentToolCall();
463
+ console.log("✅ Approve successful");
425
464
  }
426
465
  catch (error) {
427
466
  console.error("❌ Approve failed:", error);
@@ -431,15 +470,23 @@ function ApprovalDialog({ toolCallId, onApprovalDialogShown, finalApprovalInfo,
431
470
  const currentRiskLevel = finalApprovalInfo?.riskLevel;
432
471
  const sameRiskCount = allPendingApprovals.filter((p) => (p.riskLevel || undefined) === currentRiskLevel).length;
433
472
  const totalPendingCount = allPendingApprovals.length;
473
+ const showSwitchToAutonomous = !hideAutonomousSwitch;
474
+ const showResolveAllByRisk = sameRiskCount > 1;
434
475
  // Only show batch actions if there's more than 1 pending approval
435
476
  if (totalPendingCount <= 1)
436
477
  return null;
478
+ if (!showSwitchToAutonomous && !showResolveAllByRisk)
479
+ return null;
437
480
  const riskLabel = currentRiskLevel
438
481
  ? currentRiskLevel.charAt(0).toUpperCase() + currentRiskLevel.slice(1)
439
482
  : "Same";
440
- return (_jsxs("div", { className: "flex flex-wrap items-center justify-between gap-2 border-t border-amber-200/60 pt-2", children: [_jsx(Button, { size: "sm", variant: "outline", disabled: isSwitchingMode, onClick: handleSwitchToAutonomous, className: "text-xs", children: isSwitchingMode ? "Switching..." : "Switch to Autonomous" }), sameRiskCount > 1 && (_jsx(Button, { size: "sm", variant: "outline", disabled: isApprovingAll, onClick: () => handleApproveAllByRisk(currentRiskLevel), className: "text-xs", children: isApprovingAll
441
- ? "Approving..."
442
- : `Approve All ${riskLabel} (${sameRiskCount})` }))] }));
483
+ return (_jsxs("div", { className: `flex flex-wrap items-center gap-2 border-t border-amber-200/60 pt-2 ${showSwitchToAutonomous && showResolveAllByRisk
484
+ ? "justify-between"
485
+ : "justify-end"}`, children: [showSwitchToAutonomous && (_jsx(Button, { size: "sm", variant: "outline", disabled: isSwitchingMode, onClick: handleSwitchToAutonomous, className: "text-xs", children: isSwitchingMode ? "Switching..." : "Switch to Autonomous" })), showResolveAllByRisk && (_jsxs("div", { className: "flex flex-wrap items-center justify-end gap-2", children: [_jsx(Button, { size: "sm", variant: "outline", "data-testid": "agent-reject-all-button", disabled: batchRiskAction !== null, onClick: () => handleRejectAllByRisk(currentRiskLevel), className: "text-xs", children: batchRiskAction === "reject"
486
+ ? "Rejecting..."
487
+ : `Reject All ${riskLabel} (${sameRiskCount})` }), _jsx(Button, { size: "sm", variant: "outline", "data-testid": "agent-approve-all-button", disabled: batchRiskAction !== null, onClick: () => handleApproveAllByRisk(currentRiskLevel), className: "text-xs", children: batchRiskAction === "approve"
488
+ ? "Approving..."
489
+ : `Approve All ${riskLabel} (${sameRiskCount})` })] }))] }));
443
490
  })()] })] }));
444
491
  }
445
492
  //# sourceMappingURL=ToolCallDisplay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ToolCallDisplay.js","sourceRoot":"","sources":["../../../src/editor/ai/ToolCallDisplay.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ToolCallDisplay.js","sourceRoot":"","sources":["../../../src/editor/ai/ToolCallDisplay.tsx"],"names":[],"mappings":"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"}
@@ -26,6 +26,11 @@ export function AgentDialogHandler({ sendWebSocketMessage, }) {
26
26
  const retryTimeoutRef = useRef(null);
27
27
  const readyAgentIdsRef = useRef(new Set());
28
28
  const openAgentRequestAtRef = useRef({});
29
+ // Stable refs for callbacks used by the terminal:ready listener,
30
+ // so the listener can be registered once and never torn down.
31
+ const dispatchDialogRef = useRef(() => { });
32
+ const processNextRequestRef = useRef(() => { });
33
+ const clearRetryTimeoutRef = useRef(() => { });
29
34
  // Max retries for initial dispatch (short-term)
30
35
  // After these retries, the request stays pending until the terminal is ready
31
36
  const MAX_INITIAL_RETRIES = 5;
@@ -197,6 +202,10 @@ export function AgentDialogHandler({ sendWebSocketMessage, }) {
197
202
  currentRequestRef.current = pending;
198
203
  dispatchDialog(pending);
199
204
  }, [dispatchDialog, sendResponse]);
205
+ // Keep stable refs pointing to latest callbacks for the mount-only terminal:ready listener
206
+ dispatchDialogRef.current = dispatchDialog;
207
+ processNextRequestRef.current = processNextRequest;
208
+ clearRetryTimeoutRef.current = clearRetryTimeout;
200
209
  /**
201
210
  * Handle incoming dialog request from WebSocket
202
211
  */
@@ -247,8 +256,8 @@ export function AgentDialogHandler({ sendWebSocketMessage, }) {
247
256
  }
248
257
  }
249
258
  // If incoming request is for a terminal that is already ready and current
250
- // request belongs to another agent, pause/requeue current immediately to
251
- // avoid cross-agent head-of-line blocking.
259
+ // request belongs to another agent, pause/requeue current and dispatch
260
+ // the new request directly so the ready terminal picks it up immediately.
252
261
  if (currentRequestRef.current &&
253
262
  normalizeDialogAgentId(currentRequestRef.current.request.agentId) !==
254
263
  normalizeDialogAgentId(request.agentId) &&
@@ -256,13 +265,23 @@ export function AgentDialogHandler({ sendWebSocketMessage, }) {
256
265
  readyAgentIdsRef.current.has(normalizeDialogAgentId(request.agentId))) {
257
266
  const pausedCurrent = currentRequestRef.current;
258
267
  clearRetryTimeout();
259
- isProcessingRef.current = false;
260
268
  currentRequestRef.current = null;
269
+ isProcessingRef.current = false;
261
270
  dialogAcceptedRef.current = false;
262
271
  const pausedExists = pendingRequestsRef.current.some((p) => p.request.callbackId === pausedCurrent.request.callbackId);
263
272
  if (!pausedExists) {
264
- pendingRequestsRef.current.unshift(pausedCurrent);
273
+ pendingRequestsRef.current.push(pausedCurrent);
265
274
  }
275
+ const newPending = {
276
+ request,
277
+ retryCount: 0,
278
+ createdAt: Date.now(),
279
+ hasBeenAccepted: false,
280
+ };
281
+ currentRequestRef.current = newPending;
282
+ isProcessingRef.current = true;
283
+ dispatchDialog(newPending);
284
+ return;
266
285
  }
267
286
  pendingRequestsRef.current.push({
268
287
  request,
@@ -309,6 +328,7 @@ export function AgentDialogHandler({ sendWebSocketMessage, }) {
309
328
  /**
310
329
  * Listen for orphaned dialogs -- when a terminal unmounts while displaying a
311
330
  * dialog, it fires this event so the handler can re-dispatch to the next terminal.
331
+ * Uses refs for the same reason as the terminal:ready listener above.
312
332
  */
313
333
  useEffect(() => {
314
334
  const handleOrphaned = (event) => {
@@ -324,13 +344,10 @@ export function AgentDialogHandler({ sendWebSocketMessage, }) {
324
344
  if (hasListener) {
325
345
  dialogAcceptedRef.current = false;
326
346
  currentRequestRef.current.retryCount = 0;
327
- dispatchDialog(currentRequestRef.current);
347
+ dispatchDialogRef.current(currentRequestRef.current);
328
348
  }
329
349
  else {
330
- clearRetryTimeout();
331
- // Keep the dialog pending when switching away from an agent.
332
- // The request will be re-dispatched when that agent terminal emits
333
- // `agent:terminal:ready` again after the user switches back.
350
+ clearRetryTimeoutRef.current();
334
351
  isProcessingRef.current = false;
335
352
  dialogAcceptedRef.current = false;
336
353
  }
@@ -340,10 +357,15 @@ export function AgentDialogHandler({ sendWebSocketMessage, }) {
340
357
  return () => {
341
358
  window.removeEventListener("agent:dialog:orphaned", handleOrphaned);
342
359
  };
343
- }, [dispatchDialog, sendResponse, clearRetryTimeout, processNextRequest]);
360
+ // eslint-disable-next-line react-hooks/exhaustive-deps
361
+ }, []);
344
362
  /**
345
363
  * Listen for agent terminal ready events
346
364
  * When a terminal mounts (e.g., user switches to an agent), re-dispatch any pending dialogs
365
+ *
366
+ * Uses stable refs for callbacks so the listener is registered once on mount
367
+ * and never torn down mid-render — avoids a race where the event fires between
368
+ * effect cleanup and re-registration.
347
369
  */
348
370
  useEffect(() => {
349
371
  const handleTerminalReady = (event) => {
@@ -361,7 +383,7 @@ export function AgentDialogHandler({ sendWebSocketMessage, }) {
361
383
  const queuedForReadyAgent = pendingRequestsRef.current[queuedForReadyAgentIndex];
362
384
  if (queuedForReadyAgent) {
363
385
  const pausedCurrent = currentRequestRef.current;
364
- clearRetryTimeout();
386
+ clearRetryTimeoutRef.current();
365
387
  isProcessingRef.current = false;
366
388
  currentRequestRef.current = null;
367
389
  dialogAcceptedRef.current = false;
@@ -372,34 +394,7 @@ export function AgentDialogHandler({ sendWebSocketMessage, }) {
372
394
  }
373
395
  currentRequestRef.current = queuedForReadyAgent;
374
396
  isProcessingRef.current = true;
375
- dispatchDialog(queuedForReadyAgent);
376
- return;
377
- }
378
- }
379
- }
380
- // If current request is for another agent and still unaccepted, but we
381
- // now have a ready terminal for a queued request, preempt to avoid
382
- // head-of-line blocking across agents.
383
- if (currentRequestRef.current &&
384
- !dialogAcceptedRef.current &&
385
- normalizeDialogAgentId(currentRequestRef.current.request.agentId) !==
386
- agentId) {
387
- const queuedForReadyAgentIndex = pendingRequestsRef.current.findIndex((p) => normalizeDialogAgentId(p.request.agentId) === agentId);
388
- if (queuedForReadyAgentIndex !== -1) {
389
- const queuedForReadyAgent = pendingRequestsRef.current[queuedForReadyAgentIndex];
390
- if (queuedForReadyAgent) {
391
- const pausedCurrent = currentRequestRef.current;
392
- clearRetryTimeout();
393
- isProcessingRef.current = false;
394
- currentRequestRef.current = null;
395
- pendingRequestsRef.current.splice(queuedForReadyAgentIndex, 1);
396
- const pausedExists = pendingRequestsRef.current.some((p) => p.request.callbackId === pausedCurrent.request.callbackId);
397
- if (!pausedExists) {
398
- pendingRequestsRef.current.unshift(pausedCurrent);
399
- }
400
- currentRequestRef.current = queuedForReadyAgent;
401
- isProcessingRef.current = true;
402
- dispatchDialog(queuedForReadyAgent);
397
+ dispatchDialogRef.current(queuedForReadyAgent);
403
398
  return;
404
399
  }
405
400
  }
@@ -413,31 +408,29 @@ export function AgentDialogHandler({ sendWebSocketMessage, }) {
413
408
  const currentCallbackId = currentRequestRef.current.request.callbackId || null;
414
409
  if (dialogAcceptedRef.current) {
415
410
  if (visibleCallbackId === currentCallbackId) {
416
- // The dialog is already open in a terminal for this agent.
417
- // Ignore duplicate ready events so we don't re-dispatch and flicker.
418
411
  return;
419
412
  }
420
413
  dialogAcceptedRef.current = false;
421
414
  }
422
415
  console.log("[AgentDialogHandler] Re-dispatching pending dialog for agent:", agentId);
423
- // Reset retry count and re-dispatch
424
416
  currentRequestRef.current.retryCount = 0;
425
417
  isProcessingRef.current = true;
426
- dispatchDialog(currentRequestRef.current);
418
+ dispatchDialogRef.current(currentRequestRef.current);
427
419
  return;
428
420
  }
429
421
  // Process pending requests for the ready agent
430
422
  if (!isProcessingRef.current &&
431
423
  !currentRequestRef.current &&
432
424
  pendingRequestsRef.current.length > 0) {
433
- processNextRequest();
425
+ processNextRequestRef.current();
434
426
  }
435
427
  };
436
428
  window.addEventListener("agent:terminal:ready", handleTerminalReady);
437
429
  return () => {
438
430
  window.removeEventListener("agent:terminal:ready", handleTerminalReady);
439
431
  };
440
- }, [dispatchDialog, processNextRequest, sendResponse, clearRetryTimeout]);
432
+ // eslint-disable-next-line react-hooks/exhaustive-deps
433
+ }, []);
441
434
  // This component doesn't render anything - dialogs are shown inline in AgentTerminal
442
435
  return null;
443
436
  }