@stigmer/react 3.1.17 → 3.2.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.
- package/agent-instance/AgentInstanceList.d.ts.map +1 -1
- package/agent-instance/AgentInstanceList.js +11 -3
- package/agent-instance/AgentInstanceList.js.map +1 -1
- package/channel/AgentChannelsPanel.d.ts +60 -0
- package/channel/AgentChannelsPanel.d.ts.map +1 -0
- package/channel/AgentChannelsPanel.js +255 -0
- package/channel/AgentChannelsPanel.js.map +1 -0
- package/channel/ChannelConversationsDialog.d.ts +41 -0
- package/channel/ChannelConversationsDialog.d.ts.map +1 -0
- package/channel/ChannelConversationsDialog.js +94 -0
- package/channel/ChannelConversationsDialog.js.map +1 -0
- package/channel/ChannelCredentialsDialog.d.ts +37 -0
- package/channel/ChannelCredentialsDialog.d.ts.map +1 -0
- package/channel/ChannelCredentialsDialog.js +75 -0
- package/channel/ChannelCredentialsDialog.js.map +1 -0
- package/channel/ChannelToolCredentials.d.ts +31 -0
- package/channel/ChannelToolCredentials.d.ts.map +1 -0
- package/channel/ChannelToolCredentials.js +41 -0
- package/channel/ChannelToolCredentials.js.map +1 -0
- package/channel/ConnectSlackDialog.d.ts +61 -0
- package/channel/ConnectSlackDialog.d.ts.map +1 -0
- package/channel/ConnectSlackDialog.js +238 -0
- package/channel/ConnectSlackDialog.js.map +1 -0
- package/channel/ConnectWhatsAppDialog.d.ts +70 -0
- package/channel/ConnectWhatsAppDialog.d.ts.map +1 -0
- package/channel/ConnectWhatsAppDialog.js +256 -0
- package/channel/ConnectWhatsAppDialog.js.map +1 -0
- package/channel/SlackMarkIcon.d.ts +11 -0
- package/channel/SlackMarkIcon.d.ts.map +1 -0
- package/channel/SlackMarkIcon.js +13 -0
- package/channel/SlackMarkIcon.js.map +1 -0
- package/channel/WhatsAppMarkIcon.d.ts +12 -0
- package/channel/WhatsAppMarkIcon.d.ts.map +1 -0
- package/channel/WhatsAppMarkIcon.js +14 -0
- package/channel/WhatsAppMarkIcon.js.map +1 -0
- package/channel/connect/ServingAppSection.d.ts +57 -0
- package/channel/connect/ServingAppSection.d.ts.map +1 -0
- package/channel/connect/ServingAppSection.js +49 -0
- package/channel/connect/ServingAppSection.js.map +1 -0
- package/channel/connect/ToolCredentialsSection.d.ts +20 -0
- package/channel/connect/ToolCredentialsSection.d.ts.map +1 -0
- package/channel/connect/ToolCredentialsSection.js +22 -0
- package/channel/connect/ToolCredentialsSection.js.map +1 -0
- package/channel/connect/VerbatimRefusal.d.ts +16 -0
- package/channel/connect/VerbatimRefusal.d.ts.map +1 -0
- package/channel/connect/VerbatimRefusal.js +18 -0
- package/channel/connect/VerbatimRefusal.js.map +1 -0
- package/channel/connect/icons.d.ts +16 -0
- package/channel/connect/icons.d.ts.map +1 -0
- package/channel/connect/icons.js +21 -0
- package/channel/connect/icons.js.map +1 -0
- package/channel/index.d.ts +36 -0
- package/channel/index.d.ts.map +1 -0
- package/channel/index.js +19 -0
- package/channel/index.js.map +1 -0
- package/channel/providerPresentation.d.ts +44 -0
- package/channel/providerPresentation.d.ts.map +1 -0
- package/channel/providerPresentation.js +106 -0
- package/channel/providerPresentation.js.map +1 -0
- package/channel/providers.d.ts +62 -0
- package/channel/providers.d.ts.map +1 -0
- package/channel/providers.js +26 -0
- package/channel/providers.js.map +1 -0
- package/channel/useAgentChannel.d.ts +31 -0
- package/channel/useAgentChannel.d.ts.map +1 -0
- package/channel/useAgentChannel.js +34 -0
- package/channel/useAgentChannel.js.map +1 -0
- package/channel/useAgentChannelList.d.ts +43 -0
- package/channel/useAgentChannelList.d.ts.map +1 -0
- package/channel/useAgentChannelList.js +39 -0
- package/channel/useAgentChannelList.js.map +1 -0
- package/channel/useChannelSessions.d.ts +47 -0
- package/channel/useChannelSessions.d.ts.map +1 -0
- package/channel/useChannelSessions.js +38 -0
- package/channel/useChannelSessions.js.map +1 -0
- package/channel/useChannelToolReadiness.d.ts +23 -0
- package/channel/useChannelToolReadiness.d.ts.map +1 -0
- package/channel/useChannelToolReadiness.js +28 -0
- package/channel/useChannelToolReadiness.js.map +1 -0
- package/channel/useConnectSlackChannel.d.ts +75 -0
- package/channel/useConnectSlackChannel.d.ts.map +1 -0
- package/channel/useConnectSlackChannel.js +115 -0
- package/channel/useConnectSlackChannel.js.map +1 -0
- package/channel/useCreateAgentChannel.d.ts +42 -0
- package/channel/useCreateAgentChannel.d.ts.map +1 -0
- package/channel/useCreateAgentChannel.js +48 -0
- package/channel/useCreateAgentChannel.js.map +1 -0
- package/channel/useDeleteAgentChannel.d.ts +40 -0
- package/channel/useDeleteAgentChannel.d.ts.map +1 -0
- package/channel/useDeleteAgentChannel.js +44 -0
- package/channel/useDeleteAgentChannel.js.map +1 -0
- package/channel/useInstallChannel.d.ts +60 -0
- package/channel/useInstallChannel.d.ts.map +1 -0
- package/channel/useInstallChannel.js +63 -0
- package/channel/useInstallChannel.js.map +1 -0
- package/channel/useOrgAgentChannelList.d.ts +32 -0
- package/channel/useOrgAgentChannelList.d.ts.map +1 -0
- package/channel/useOrgAgentChannelList.js +29 -0
- package/channel/useOrgAgentChannelList.js.map +1 -0
- package/channel/useSaveAgentChannel.d.ts +63 -0
- package/channel/useSaveAgentChannel.d.ts.map +1 -0
- package/channel/useSaveAgentChannel.js +104 -0
- package/channel/useSaveAgentChannel.js.map +1 -0
- package/channel-app/ChannelAppDetailPanel.d.ts +46 -0
- package/channel-app/ChannelAppDetailPanel.d.ts.map +1 -0
- package/channel-app/ChannelAppDetailPanel.js +142 -0
- package/channel-app/ChannelAppDetailPanel.js.map +1 -0
- package/channel-app/ChannelAppListPanel.d.ts +36 -0
- package/channel-app/ChannelAppListPanel.d.ts.map +1 -0
- package/channel-app/ChannelAppListPanel.js +63 -0
- package/channel-app/ChannelAppListPanel.js.map +1 -0
- package/channel-app/CreateChannelAppForm.d.ts +54 -0
- package/channel-app/CreateChannelAppForm.d.ts.map +1 -0
- package/channel-app/CreateChannelAppForm.js +140 -0
- package/channel-app/CreateChannelAppForm.js.map +1 -0
- package/channel-app/index.d.ts +18 -0
- package/channel-app/index.d.ts.map +1 -0
- package/channel-app/index.js +10 -0
- package/channel-app/index.js.map +1 -0
- package/channel-app/internal.d.ts +33 -0
- package/channel-app/internal.d.ts.map +1 -0
- package/channel-app/internal.js +44 -0
- package/channel-app/internal.js.map +1 -0
- package/channel-app/slackAppSetup.d.ts +80 -0
- package/channel-app/slackAppSetup.d.ts.map +1 -0
- package/channel-app/slackAppSetup.js +123 -0
- package/channel-app/slackAppSetup.js.map +1 -0
- package/channel-app/useChannelAppList.d.ts +35 -0
- package/channel-app/useChannelAppList.d.ts.map +1 -0
- package/channel-app/useChannelAppList.js +34 -0
- package/channel-app/useChannelAppList.js.map +1 -0
- package/channel-app/useCreateChannelApp.d.ts +39 -0
- package/channel-app/useCreateChannelApp.d.ts.map +1 -0
- package/channel-app/useCreateChannelApp.js +50 -0
- package/channel-app/useCreateChannelApp.js.map +1 -0
- package/channel-app/useDeleteChannelApp.d.ts +31 -0
- package/channel-app/useDeleteChannelApp.d.ts.map +1 -0
- package/channel-app/useDeleteChannelApp.js +43 -0
- package/channel-app/useDeleteChannelApp.js.map +1 -0
- package/channel-app/useUpdateChannelApp.d.ts +39 -0
- package/channel-app/useUpdateChannelApp.d.ts.map +1 -0
- package/channel-app/useUpdateChannelApp.js +50 -0
- package/channel-app/useUpdateChannelApp.js.map +1 -0
- package/channel-app/whatsappAppSetup.d.ts +51 -0
- package/channel-app/whatsappAppSetup.d.ts.map +1 -0
- package/channel-app/whatsappAppSetup.js +57 -0
- package/channel-app/whatsappAppSetup.js.map +1 -0
- package/environment/index.d.ts +2 -0
- package/environment/index.d.ts.map +1 -1
- package/environment/index.js +1 -0
- package/environment/index.js.map +1 -1
- package/environment/useToolCredentialsReadiness.d.ts +52 -0
- package/environment/useToolCredentialsReadiness.d.ts.map +1 -0
- package/environment/useToolCredentialsReadiness.js +84 -0
- package/environment/useToolCredentialsReadiness.js.map +1 -0
- package/execution/ArtifactContentBody.d.ts.map +1 -1
- package/execution/ArtifactContentBody.js +5 -21
- package/execution/ArtifactContentBody.js.map +1 -1
- package/execution/ArtifactFileContent.d.ts +28 -0
- package/execution/ArtifactFileContent.d.ts.map +1 -0
- package/execution/ArtifactFileContent.js +36 -0
- package/execution/ArtifactFileContent.js.map +1 -0
- package/execution/ArtifactRow.d.ts +8 -20
- package/execution/ArtifactRow.d.ts.map +1 -1
- package/execution/ArtifactRow.js +12 -45
- package/execution/ArtifactRow.js.map +1 -1
- package/execution/ArtifactRowView.d.ts +43 -0
- package/execution/ArtifactRowView.d.ts.map +1 -0
- package/execution/ArtifactRowView.js +35 -0
- package/execution/ArtifactRowView.js.map +1 -0
- package/execution/FileChangesView.d.ts.map +1 -1
- package/execution/FileChangesView.js +1 -61
- package/execution/FileChangesView.js.map +1 -1
- package/execution/SubAgentSection.d.ts.map +1 -1
- package/execution/SubAgentSection.js +4 -15
- package/execution/SubAgentSection.js.map +1 -1
- package/execution/ToolCallItem.d.ts.map +1 -1
- package/execution/ToolCallItem.js +16 -61
- package/execution/ToolCallItem.js.map +1 -1
- package/execution/agent-execution-document.d.ts +31 -0
- package/execution/agent-execution-document.d.ts.map +1 -0
- package/execution/agent-execution-document.js +48 -0
- package/execution/agent-execution-document.js.map +1 -0
- package/{session → execution}/artifact-document.d.ts +2 -3
- package/execution/artifact-document.d.ts.map +1 -0
- package/execution/artifact-document.js +23 -0
- package/execution/artifact-document.js.map +1 -0
- package/execution/artifact-row-item.d.ts +56 -0
- package/execution/artifact-row-item.d.ts.map +1 -0
- package/execution/artifact-row-item.js +57 -0
- package/execution/artifact-row-item.js.map +1 -0
- package/execution/deriveExecutionFileChanges.d.ts +55 -0
- package/execution/deriveExecutionFileChanges.d.ts.map +1 -0
- package/execution/deriveExecutionFileChanges.js +216 -0
- package/execution/deriveExecutionFileChanges.js.map +1 -0
- package/execution/file-change-document.d.ts +22 -0
- package/execution/file-change-document.d.ts.map +1 -0
- package/execution/file-change-document.js +34 -0
- package/execution/file-change-document.js.map +1 -0
- package/execution/index.d.ts +14 -0
- package/execution/index.d.ts.map +1 -1
- package/execution/index.js +9 -0
- package/execution/index.js.map +1 -1
- package/execution/useArtifactContentById.d.ts +61 -0
- package/execution/useArtifactContentById.d.ts.map +1 -0
- package/execution/useArtifactContentById.js +63 -0
- package/execution/useArtifactContentById.js.map +1 -0
- package/execution/useArtifactDownload.d.ts +4 -3
- package/execution/useArtifactDownload.d.ts.map +1 -1
- package/execution/useArtifactDownload.js +4 -3
- package/execution/useArtifactDownload.js.map +1 -1
- package/execution/useCreateAgentExecution.d.ts +1 -1
- package/execution/useLiveAgentExecution.d.ts +59 -0
- package/execution/useLiveAgentExecution.d.ts.map +1 -0
- package/execution/useLiveAgentExecution.js +73 -0
- package/execution/useLiveAgentExecution.js.map +1 -0
- package/index.d.ts +15 -10
- package/index.d.ts.map +1 -1
- package/index.js +21 -6
- package/index.js.map +1 -1
- package/internal/DecisionButton.d.ts +4 -3
- package/internal/DecisionButton.d.ts.map +1 -1
- package/internal/DecisionButton.js +4 -3
- package/internal/DecisionButton.js.map +1 -1
- package/internal/oauthPopup.d.ts +101 -0
- package/internal/oauthPopup.d.ts.map +1 -0
- package/internal/oauthPopup.js +208 -0
- package/internal/oauthPopup.js.map +1 -0
- package/internal/store/index.d.ts +0 -2
- package/internal/store/index.d.ts.map +1 -1
- package/internal/store/index.js +0 -1
- package/internal/store/index.js.map +1 -1
- package/internal/store/workflow-execution-event-store.d.ts +34 -1
- package/internal/store/workflow-execution-event-store.d.ts.map +1 -1
- package/internal/store/workflow-execution-event-store.js +81 -3
- package/internal/store/workflow-execution-event-store.js.map +1 -1
- package/internal/store/workspace-file-selection-store.d.ts +1 -2
- package/internal/store/workspace-file-selection-store.d.ts.map +1 -1
- package/internal/store/workspace-file-selection-store.js +2 -5
- package/internal/store/workspace-file-selection-store.js.map +1 -1
- package/internal/thread-card/ThreadCardShell.d.ts +91 -0
- package/internal/thread-card/ThreadCardShell.d.ts.map +1 -0
- package/internal/thread-card/ThreadCardShell.js +41 -0
- package/internal/thread-card/ThreadCardShell.js.map +1 -0
- package/internal/thread-card/glyphs.d.ts +34 -0
- package/internal/thread-card/glyphs.d.ts.map +1 -0
- package/internal/thread-card/glyphs.js +50 -0
- package/internal/thread-card/glyphs.js.map +1 -0
- package/internal/thread-card/index.d.ts +3 -0
- package/internal/thread-card/index.d.ts.map +1 -0
- package/internal/thread-card/index.js +3 -0
- package/internal/thread-card/index.js.map +1 -0
- package/internal/useRevealLine.d.ts +2 -2
- package/internal/useRevealLine.js +2 -2
- package/mcp-server/OAuthCallbackHandler.js +1 -1
- package/mcp-server/OAuthCallbackHandler.js.map +1 -1
- package/mcp-server/useMcpServerOAuthConnect.d.ts +4 -23
- package/mcp-server/useMcpServerOAuthConnect.d.ts.map +1 -1
- package/mcp-server/useMcpServerOAuthConnect.js +12 -145
- package/mcp-server/useMcpServerOAuthConnect.js.map +1 -1
- package/package.json +4 -4
- package/session/NewSessionViewer.d.ts.map +1 -1
- package/session/NewSessionViewer.js +0 -1
- package/session/NewSessionViewer.js.map +1 -1
- package/session/SessionPanelChip.d.ts +7 -22
- package/session/SessionPanelChip.d.ts.map +1 -1
- package/session/SessionPanelChip.js +8 -36
- package/session/SessionPanelChip.js.map +1 -1
- package/session/SessionViewer.d.ts +7 -4
- package/session/SessionViewer.d.ts.map +1 -1
- package/session/SessionViewer.js +32 -30
- package/session/SessionViewer.js.map +1 -1
- package/session/audience.d.ts +15 -1
- package/session/audience.d.ts.map +1 -1
- package/session/channelOrigin.d.ts +33 -0
- package/session/channelOrigin.d.ts.map +1 -0
- package/session/channelOrigin.js +36 -0
- package/session/channelOrigin.js.map +1 -0
- package/session/facets/index.d.ts +0 -2
- package/session/facets/index.d.ts.map +1 -1
- package/session/facets/index.js +0 -1
- package/session/facets/index.js.map +1 -1
- package/session/index.d.ts +2 -2
- package/session/index.d.ts.map +1 -1
- package/session/index.js +5 -3
- package/session/index.js.map +1 -1
- package/session/useNewSessionFlow.d.ts +4 -0
- package/session/useNewSessionFlow.d.ts.map +1 -1
- package/session/useNewSessionFlow.js +33 -4
- package/session/useNewSessionFlow.js.map +1 -1
- package/session/usePersistedModel.d.ts +11 -0
- package/session/usePersistedModel.d.ts.map +1 -1
- package/session/usePersistedModel.js +14 -3
- package/session/usePersistedModel.js.map +1 -1
- package/session/useSessionFileChanges.d.ts +10 -34
- package/session/useSessionFileChanges.d.ts.map +1 -1
- package/session/useSessionFileChanges.js +9 -141
- package/session/useSessionFileChanges.js.map +1 -1
- package/session/useSessionPageFlow.d.ts.map +1 -1
- package/session/useSessionPageFlow.js +12 -1
- package/session/useSessionPageFlow.js.map +1 -1
- package/session/useSessionPanel.d.ts +5 -15
- package/session/useSessionPanel.d.ts.map +1 -1
- package/session/useSessionPanel.js +3 -35
- package/session/useSessionPanel.js.map +1 -1
- package/session/useSessionRailViews.d.ts +3 -6
- package/session/useSessionRailViews.d.ts.map +1 -1
- package/session/useSessionRailViews.js +3 -17
- package/session/useSessionRailViews.js.map +1 -1
- package/settings/ChannelAppsSection.d.ts +13 -0
- package/settings/ChannelAppsSection.d.ts.map +1 -0
- package/settings/ChannelAppsSection.js +48 -0
- package/settings/ChannelAppsSection.js.map +1 -0
- package/settings/index.d.ts +1 -0
- package/settings/index.d.ts.map +1 -1
- package/settings/index.js +1 -0
- package/settings/index.js.map +1 -1
- package/settings/settings-nav.d.ts.map +1 -1
- package/settings/settings-nav.js +6 -1
- package/settings/settings-nav.js.map +1 -1
- package/sharing/AgentShareList.d.ts.map +1 -1
- package/sharing/AgentShareList.js +11 -3
- package/sharing/AgentShareList.js.map +1 -1
- package/sharing/ShareAgentDialog.js +1 -1
- package/sharing/useShareToolReadiness.d.ts +9 -38
- package/sharing/useShareToolReadiness.d.ts.map +1 -1
- package/sharing/useShareToolReadiness.js +7 -72
- package/sharing/useShareToolReadiness.js.map +1 -1
- package/src/agent-instance/AgentInstanceList.tsx +60 -42
- package/src/agent-instance/__tests__/AgentInstanceList.test.tsx +161 -0
- package/src/channel/AgentChannelsPanel.tsx +688 -0
- package/src/channel/ChannelConversationsDialog.tsx +267 -0
- package/src/channel/ChannelCredentialsDialog.tsx +219 -0
- package/src/channel/ChannelToolCredentials.tsx +124 -0
- package/src/channel/ConnectSlackDialog.tsx +611 -0
- package/src/channel/ConnectWhatsAppDialog.tsx +624 -0
- package/src/channel/SlackMarkIcon.tsx +21 -0
- package/src/channel/WhatsAppMarkIcon.tsx +22 -0
- package/src/channel/__tests__/AgentChannelsPanel.test.tsx +638 -0
- package/src/channel/__tests__/ChannelConversationsDialog.test.tsx +114 -0
- package/src/channel/__tests__/ChannelCredentialsDialog.test.tsx +240 -0
- package/src/channel/__tests__/ConnectSlackDialog.test.tsx +659 -0
- package/src/channel/__tests__/ConnectWhatsAppDialog.test.tsx +564 -0
- package/src/channel/__tests__/providers.test.ts +118 -0
- package/src/channel/__tests__/useAgentChannel.test.tsx +116 -0
- package/src/channel/__tests__/useAgentChannelList.test.tsx +166 -0
- package/src/channel/__tests__/useChannelSessions.test.tsx +95 -0
- package/src/channel/__tests__/useChannelToolReadiness.test.tsx +158 -0
- package/src/channel/__tests__/useConnectSlackChannel.test.tsx +276 -0
- package/src/channel/__tests__/useDeleteAgentChannel.test.tsx +97 -0
- package/src/channel/__tests__/useInstallChannel.test.tsx +177 -0
- package/src/channel/__tests__/useSaveAgentChannel.test.tsx +294 -0
- package/src/channel/connect/ServingAppSection.tsx +185 -0
- package/src/channel/connect/ToolCredentialsSection.tsx +67 -0
- package/src/channel/connect/VerbatimRefusal.tsx +27 -0
- package/src/channel/connect/icons.tsx +42 -0
- package/src/channel/index.ts +65 -0
- package/src/channel/providerPresentation.ts +154 -0
- package/src/channel/providers.ts +73 -0
- package/src/channel/useAgentChannel.ts +58 -0
- package/src/channel/useAgentChannelList.ts +69 -0
- package/src/channel/useChannelSessions.ts +73 -0
- package/src/channel/useChannelToolReadiness.ts +39 -0
- package/src/channel/useConnectSlackChannel.ts +195 -0
- package/src/channel/useCreateAgentChannel.ts +73 -0
- package/src/channel/useDeleteAgentChannel.ts +71 -0
- package/src/channel/useInstallChannel.ts +117 -0
- package/src/channel/useOrgAgentChannelList.ts +60 -0
- package/src/channel/useSaveAgentChannel.ts +133 -0
- package/src/channel-app/ChannelAppDetailPanel.tsx +510 -0
- package/src/channel-app/ChannelAppListPanel.tsx +201 -0
- package/src/channel-app/CreateChannelAppForm.tsx +529 -0
- package/src/channel-app/__tests__/channelAppWhatsApp.test.tsx +270 -0
- package/src/channel-app/__tests__/slackAppSetup.test.ts +75 -0
- package/src/channel-app/__tests__/useChannelAppHooks.test.tsx +157 -0
- package/src/channel-app/__tests__/whatsappAppSetup.test.ts +39 -0
- package/src/channel-app/index.ts +30 -0
- package/src/channel-app/internal.tsx +180 -0
- package/src/channel-app/slackAppSetup.ts +153 -0
- package/src/channel-app/useChannelAppList.ts +59 -0
- package/src/channel-app/useCreateChannelApp.ts +70 -0
- package/src/channel-app/useDeleteChannelApp.ts +62 -0
- package/src/channel-app/useUpdateChannelApp.ts +70 -0
- package/src/channel-app/whatsappAppSetup.ts +62 -0
- package/src/environment/index.ts +2 -0
- package/src/environment/useToolCredentialsReadiness.ts +122 -0
- package/src/execution/ArtifactContentBody.tsx +6 -88
- package/src/execution/ArtifactFileContent.tsx +110 -0
- package/src/execution/ArtifactRow.tsx +28 -118
- package/src/execution/ArtifactRowView.tsx +137 -0
- package/src/execution/FileChangesView.tsx +4 -69
- package/src/execution/SubAgentSection.tsx +2 -36
- package/src/execution/ToolCallItem.tsx +48 -175
- package/src/execution/__tests__/ArtifactFileContent.test.tsx +60 -0
- package/src/execution/__tests__/ArtifactRowView.test.tsx +78 -0
- package/src/execution/__tests__/agent-execution-document.test.ts +45 -0
- package/src/execution/__tests__/artifact-row-item.test.ts +128 -0
- package/src/execution/__tests__/deriveExecutionFileChanges.test.ts +270 -0
- package/src/execution/__tests__/useArtifactContentById.test.tsx +85 -0
- package/src/execution/__tests__/useLiveAgentExecution.test.tsx +202 -0
- package/src/execution/agent-execution-document.ts +54 -0
- package/src/execution/artifact-document.ts +24 -0
- package/src/execution/artifact-row-item.ts +97 -0
- package/src/execution/deriveExecutionFileChanges.ts +237 -0
- package/src/execution/file-change-document.ts +37 -0
- package/src/execution/index.ts +36 -0
- package/src/execution/useArtifactContentById.ts +120 -0
- package/src/execution/useArtifactDownload.ts +4 -3
- package/src/execution/useCreateAgentExecution.ts +1 -1
- package/src/execution/useLiveAgentExecution.ts +127 -0
- package/src/index.ts +155 -11
- package/src/internal/DecisionButton.tsx +4 -3
- package/src/internal/__tests__/ThreadCardShell.test.tsx +105 -0
- package/src/internal/__tests__/oauthPopup.test.ts +245 -0
- package/src/internal/oauthPopup.ts +261 -0
- package/src/internal/store/__tests__/workflow-execution-event-store.test.ts +375 -5
- package/src/internal/store/index.ts +0 -3
- package/src/internal/store/workflow-execution-event-store.ts +123 -4
- package/src/internal/store/workspace-file-selection-store.ts +2 -5
- package/src/internal/thread-card/ThreadCardShell.tsx +189 -0
- package/src/internal/thread-card/glyphs.tsx +108 -0
- package/src/internal/thread-card/index.ts +19 -0
- package/src/internal/useRevealLine.ts +2 -2
- package/src/mcp-server/OAuthCallbackHandler.tsx +2 -2
- package/src/mcp-server/useMcpServerOAuthConnect.ts +22 -184
- package/src/session/NewSessionViewer.tsx +0 -1
- package/src/session/SessionPanelChip.tsx +10 -96
- package/src/session/SessionViewer.tsx +170 -144
- package/src/session/__tests__/SessionViewer-artifactTabs.test.tsx +1 -1
- package/src/session/__tests__/observerAudience.test.tsx +241 -0
- package/src/session/__tests__/useNewSessionFlow.test.tsx +64 -0
- package/src/session/__tests__/usePersistedModel.test.tsx +36 -0
- package/src/session/__tests__/useSessionPageFlow.guest.test.tsx +48 -1
- package/src/session/__tests__/useSessionPanel.test.ts +6 -61
- package/src/session/__tests__/useSessionRailViews.test.tsx +5 -27
- package/src/session/audience.ts +15 -1
- package/src/session/channelOrigin.ts +45 -0
- package/src/session/facets/index.ts +0 -3
- package/src/session/index.ts +9 -6
- package/src/session/useNewSessionFlow.ts +35 -4
- package/src/session/usePersistedModel.ts +25 -3
- package/src/session/useSessionFileChanges.ts +12 -153
- package/src/session/useSessionPageFlow.ts +13 -2
- package/src/session/useSessionPanel.ts +8 -51
- package/src/session/useSessionRailViews.tsx +2 -27
- package/src/settings/ChannelAppsSection.tsx +133 -0
- package/src/settings/index.ts +1 -0
- package/src/settings/settings-nav.ts +6 -0
- package/src/sharing/AgentShareList.tsx +85 -64
- package/src/sharing/ShareAgentDialog.tsx +1 -1
- package/src/sharing/__tests__/AgentShareList.test.tsx +92 -12
- package/src/sharing/useShareToolReadiness.ts +13 -101
- package/src/workflow/WorkflowAgentExecutionDocument.tsx +283 -0
- package/src/workflow/WorkflowApprovalList.tsx +158 -0
- package/src/workflow/WorkflowArtifactDocument.tsx +257 -0
- package/src/workflow/WorkflowExecutionGraph.tsx +40 -78
- package/src/workflow/WorkflowExecutionViewer.tsx +610 -287
- package/src/workflow/WorkflowFileReviewList.tsx +1 -1
- package/src/workflow/WorkflowTaskApprovalCard.tsx +5 -4
- package/src/workflow/WorkflowTaskApprovalSummary.tsx +6 -6
- package/src/workflow/__tests__/WorkflowAgentExecutionDocument.test.tsx +651 -0
- package/src/workflow/__tests__/WorkflowApprovalList.test.tsx +229 -0
- package/src/workflow/__tests__/WorkflowArtifactDocument.test.tsx +90 -0
- package/src/workflow/__tests__/WorkflowArtifactsTab.test.tsx +85 -0
- package/src/workflow/__tests__/WorkflowChangesTab.test.tsx +113 -0
- package/src/workflow/__tests__/WorkflowExecutionViewer.approvals.test.tsx +473 -0
- package/src/workflow/__tests__/WorkflowExecutionViewer.reconciliation.test.tsx +632 -0
- package/src/workflow/__tests__/WorkflowTaskApprovalSummary.test.tsx +1 -1
- package/src/workflow/__tests__/WorkflowTaskThread.test.tsx +947 -0
- package/src/workflow/__tests__/WorkflowUsageTab.test.tsx +163 -0
- package/src/workflow/__tests__/agent-call-live-experience.test.ts +6 -53
- package/src/workflow/__tests__/derive-execution-overlays.test.ts +4 -0
- package/src/workflow/__tests__/deriveWorkflowArtifactItems.test.ts +71 -0
- package/src/workflow/__tests__/deriveWorkflowUsageItems.test.ts +132 -0
- package/src/workflow/__tests__/execution-graph.test.ts +8 -0
- package/src/workflow/__tests__/project-thread-items.test.ts +428 -0
- package/src/workflow/__tests__/structured-data-viewer.test.tsx +1 -1
- package/src/workflow/__tests__/task-approval.test.ts +149 -0
- package/src/workflow/__tests__/task-detail-io.test.ts +40 -0
- package/src/workflow/__tests__/task-presentation.test.ts +479 -0
- package/src/workflow/__tests__/useActiveTaskName.test.ts +4 -0
- package/src/workflow/__tests__/useApprovalBoundary.test.ts +158 -0
- package/src/workflow/__tests__/useExecutionAnnouncements.test.ts +4 -0
- package/src/workflow/__tests__/useFollowExecution.test.ts +2 -89
- package/src/workflow/__tests__/useWorkflowExecutionFileChanges.test.tsx +412 -0
- package/src/workflow/__tests__/useWorkflowExecutionPanel.test.ts +297 -0
- package/src/workflow/__tests__/useWorkflowExecutionRailViews.test.tsx +115 -0
- package/src/workflow/deriveWorkflowArtifactItems.ts +59 -0
- package/src/workflow/deriveWorkflowUsageItems.ts +73 -0
- package/src/workflow/diagnosis-document.ts +31 -0
- package/src/workflow/execution/index.ts +0 -15
- package/src/workflow/facets/WorkflowArtifactsTab.tsx +99 -0
- package/src/workflow/facets/WorkflowChangesTab.tsx +129 -0
- package/src/workflow/facets/WorkflowUsageTab.tsx +258 -0
- package/src/workflow/format-utils.ts +2 -3
- package/src/workflow/index.ts +106 -62
- package/src/workflow/inspector/index.ts +0 -4
- package/src/workflow/instance/WorkflowInstanceList.tsx +59 -41
- package/src/workflow/instance/__tests__/WorkflowInstanceList.test.tsx +156 -0
- package/src/workflow/task-detail/index.ts +11 -0
- package/src/workflow/task-detail/task-approval.ts +158 -0
- package/src/workflow/task-detail/task-detail-io.ts +65 -0
- package/src/workflow/thread/WorkflowTaskThread.tsx +845 -0
- package/src/workflow/thread/project-thread-items.ts +235 -0
- package/src/workflow/thread/task-presentation.ts +427 -0
- package/src/workflow/thread/thread-presentation.ts +59 -0
- package/src/workflow/thread/useWorkflowThreadItems.ts +34 -0
- package/src/workflow/useApprovalBoundary.ts +72 -0
- package/src/workflow/useFollowExecution.ts +0 -26
- package/src/workflow/useWorkflowArtifactDownload.ts +68 -0
- package/src/workflow/useWorkflowExecutionActions.ts +3 -2
- package/src/workflow/useWorkflowExecutionFileChanges.ts +341 -0
- package/src/workflow/useWorkflowExecutionGraph.ts +3 -43
- package/src/workflow/useWorkflowExecutionPanel.ts +292 -0
- package/src/workflow/useWorkflowExecutionRailViews.tsx +173 -0
- package/src/workspace/FileViewer.tsx +3 -3
- package/src/workspace/PanelChip.tsx +103 -0
- package/src/workspace/WorkspaceSurface.tsx +50 -6
- package/src/workspace/__tests__/WorkspaceSurface.test.tsx +110 -0
- package/src/workspace/index.ts +3 -0
- package/styles.css +1 -1
- package/workflow/WorkflowAgentExecutionDocument.d.ts +79 -0
- package/workflow/WorkflowAgentExecutionDocument.d.ts.map +1 -0
- package/workflow/WorkflowAgentExecutionDocument.js +87 -0
- package/workflow/WorkflowAgentExecutionDocument.js.map +1 -0
- package/workflow/WorkflowApprovalList.d.ts +62 -0
- package/workflow/WorkflowApprovalList.d.ts.map +1 -0
- package/workflow/WorkflowApprovalList.js +52 -0
- package/workflow/WorkflowApprovalList.js.map +1 -0
- package/workflow/WorkflowArtifactDocument.d.ts +29 -0
- package/workflow/WorkflowArtifactDocument.d.ts.map +1 -0
- package/workflow/WorkflowArtifactDocument.js +89 -0
- package/workflow/WorkflowArtifactDocument.js.map +1 -0
- package/workflow/WorkflowExecutionGraph.d.ts +15 -13
- package/workflow/WorkflowExecutionGraph.d.ts.map +1 -1
- package/workflow/WorkflowExecutionGraph.js +18 -53
- package/workflow/WorkflowExecutionGraph.js.map +1 -1
- package/workflow/WorkflowExecutionViewer.d.ts +8 -5
- package/workflow/WorkflowExecutionViewer.d.ts.map +1 -1
- package/workflow/WorkflowExecutionViewer.js +329 -54
- package/workflow/WorkflowExecutionViewer.js.map +1 -1
- package/workflow/WorkflowFileReviewList.d.ts +1 -1
- package/workflow/WorkflowFileReviewList.js +1 -1
- package/workflow/WorkflowTaskApprovalCard.d.ts +4 -3
- package/workflow/WorkflowTaskApprovalCard.d.ts.map +1 -1
- package/workflow/WorkflowTaskApprovalCard.js +5 -4
- package/workflow/WorkflowTaskApprovalCard.js.map +1 -1
- package/workflow/WorkflowTaskApprovalSummary.d.ts +6 -6
- package/workflow/WorkflowTaskApprovalSummary.js +5 -5
- package/workflow/deriveWorkflowArtifactItems.d.ts +30 -0
- package/workflow/deriveWorkflowArtifactItems.d.ts.map +1 -0
- package/workflow/deriveWorkflowArtifactItems.js +38 -0
- package/workflow/deriveWorkflowArtifactItems.js.map +1 -0
- package/workflow/deriveWorkflowUsageItems.d.ts +36 -0
- package/workflow/deriveWorkflowUsageItems.d.ts.map +1 -0
- package/workflow/deriveWorkflowUsageItems.js +50 -0
- package/workflow/deriveWorkflowUsageItems.js.map +1 -0
- package/workflow/diagnosis-document.d.ts +17 -0
- package/workflow/diagnosis-document.d.ts.map +1 -0
- package/workflow/diagnosis-document.js +29 -0
- package/workflow/diagnosis-document.js.map +1 -0
- package/workflow/execution/index.d.ts +0 -2
- package/workflow/execution/index.d.ts.map +1 -1
- package/workflow/execution/index.js +0 -2
- package/workflow/execution/index.js.map +1 -1
- package/workflow/facets/WorkflowArtifactsTab.d.ts +26 -0
- package/workflow/facets/WorkflowArtifactsTab.d.ts.map +1 -0
- package/workflow/facets/WorkflowArtifactsTab.js +34 -0
- package/workflow/facets/WorkflowArtifactsTab.js.map +1 -0
- package/workflow/facets/WorkflowChangesTab.d.ts +37 -0
- package/workflow/facets/WorkflowChangesTab.d.ts.map +1 -0
- package/workflow/facets/WorkflowChangesTab.js +50 -0
- package/workflow/facets/WorkflowChangesTab.js.map +1 -0
- package/workflow/facets/WorkflowUsageTab.d.ts +27 -0
- package/workflow/facets/WorkflowUsageTab.d.ts.map +1 -0
- package/workflow/facets/WorkflowUsageTab.js +87 -0
- package/workflow/facets/WorkflowUsageTab.js.map +1 -0
- package/workflow/format-utils.d.ts +2 -3
- package/workflow/format-utils.d.ts.map +1 -1
- package/workflow/format-utils.js +2 -3
- package/workflow/format-utils.js.map +1 -1
- package/workflow/index.d.ts +21 -10
- package/workflow/index.d.ts.map +1 -1
- package/workflow/index.js +29 -14
- package/workflow/index.js.map +1 -1
- package/workflow/inspector/index.d.ts +0 -2
- package/workflow/inspector/index.d.ts.map +1 -1
- package/workflow/inspector/index.js +0 -2
- package/workflow/inspector/index.js.map +1 -1
- package/workflow/instance/WorkflowInstanceList.d.ts.map +1 -1
- package/workflow/instance/WorkflowInstanceList.js +11 -3
- package/workflow/instance/WorkflowInstanceList.js.map +1 -1
- package/workflow/task-detail/StructuredDataViewer.d.ts.map +1 -0
- package/workflow/task-detail/StructuredDataViewer.js.map +1 -0
- package/workflow/task-detail/index.d.ts +4 -0
- package/workflow/task-detail/index.d.ts.map +1 -0
- package/workflow/task-detail/index.js +4 -0
- package/workflow/task-detail/index.js.map +1 -0
- package/workflow/task-detail/task-approval.d.ts +89 -0
- package/workflow/task-detail/task-approval.d.ts.map +1 -0
- package/workflow/task-detail/task-approval.js +84 -0
- package/workflow/task-detail/task-approval.js.map +1 -0
- package/workflow/task-detail/task-detail-io.d.ts +39 -0
- package/workflow/task-detail/task-detail-io.d.ts.map +1 -0
- package/workflow/task-detail/task-detail-io.js +42 -0
- package/workflow/task-detail/task-detail-io.js.map +1 -0
- package/workflow/thread/WorkflowTaskThread.d.ts +91 -0
- package/workflow/thread/WorkflowTaskThread.d.ts.map +1 -0
- package/workflow/thread/WorkflowTaskThread.js +318 -0
- package/workflow/thread/WorkflowTaskThread.js.map +1 -0
- package/workflow/thread/project-thread-items.d.ts +108 -0
- package/workflow/thread/project-thread-items.d.ts.map +1 -0
- package/workflow/thread/project-thread-items.js +126 -0
- package/workflow/thread/project-thread-items.js.map +1 -0
- package/workflow/thread/task-presentation.d.ts +73 -0
- package/workflow/thread/task-presentation.d.ts.map +1 -0
- package/workflow/thread/task-presentation.js +331 -0
- package/workflow/thread/task-presentation.js.map +1 -0
- package/workflow/thread/thread-presentation.d.ts +28 -0
- package/workflow/thread/thread-presentation.d.ts.map +1 -0
- package/workflow/thread/thread-presentation.js +28 -0
- package/workflow/thread/thread-presentation.js.map +1 -0
- package/workflow/thread/useWorkflowThreadItems.d.ts +16 -0
- package/workflow/thread/useWorkflowThreadItems.d.ts.map +1 -0
- package/workflow/thread/useWorkflowThreadItems.js +22 -0
- package/workflow/thread/useWorkflowThreadItems.js.map +1 -0
- package/workflow/useApprovalBoundary.d.ts +38 -0
- package/workflow/useApprovalBoundary.d.ts.map +1 -0
- package/workflow/useApprovalBoundary.js +55 -0
- package/workflow/useApprovalBoundary.js.map +1 -0
- package/workflow/useFollowExecution.d.ts +0 -20
- package/workflow/useFollowExecution.d.ts.map +1 -1
- package/workflow/useFollowExecution.js +0 -17
- package/workflow/useFollowExecution.js.map +1 -1
- package/workflow/useWorkflowArtifactDownload.d.ts +28 -0
- package/workflow/useWorkflowArtifactDownload.d.ts.map +1 -0
- package/workflow/useWorkflowArtifactDownload.js +45 -0
- package/workflow/useWorkflowArtifactDownload.js.map +1 -0
- package/workflow/useWorkflowExecutionActions.d.ts +3 -2
- package/workflow/useWorkflowExecutionActions.d.ts.map +1 -1
- package/workflow/useWorkflowExecutionActions.js.map +1 -1
- package/workflow/useWorkflowExecutionFileChanges.d.ts +107 -0
- package/workflow/useWorkflowExecutionFileChanges.d.ts.map +1 -0
- package/workflow/useWorkflowExecutionFileChanges.js +244 -0
- package/workflow/useWorkflowExecutionFileChanges.js.map +1 -0
- package/workflow/useWorkflowExecutionGraph.d.ts +1 -14
- package/workflow/useWorkflowExecutionGraph.d.ts.map +1 -1
- package/workflow/useWorkflowExecutionGraph.js +2 -25
- package/workflow/useWorkflowExecutionGraph.js.map +1 -1
- package/workflow/useWorkflowExecutionPanel.d.ts +108 -0
- package/workflow/useWorkflowExecutionPanel.d.ts.map +1 -0
- package/workflow/useWorkflowExecutionPanel.js +103 -0
- package/workflow/useWorkflowExecutionPanel.js.map +1 -0
- package/workflow/useWorkflowExecutionRailViews.d.ts +46 -0
- package/workflow/useWorkflowExecutionRailViews.d.ts.map +1 -0
- package/workflow/useWorkflowExecutionRailViews.js +81 -0
- package/workflow/useWorkflowExecutionRailViews.js.map +1 -0
- package/workspace/FileViewer.d.ts +1 -1
- package/workspace/FileViewer.js +3 -3
- package/workspace/FileViewer.js.map +1 -1
- package/workspace/PanelChip.d.ts +27 -0
- package/workspace/PanelChip.d.ts.map +1 -0
- package/workspace/PanelChip.js +42 -0
- package/workspace/PanelChip.js.map +1 -0
- package/workspace/WorkspaceSurface.d.ts +25 -1
- package/workspace/WorkspaceSurface.d.ts.map +1 -1
- package/workspace/WorkspaceSurface.js +21 -9
- package/workspace/WorkspaceSurface.js.map +1 -1
- package/workspace/index.d.ts +3 -1
- package/workspace/index.d.ts.map +1 -1
- package/workspace/index.js +1 -0
- package/workspace/index.js.map +1 -1
- package/execution/ThreadSelectionContext.d.ts +0 -17
- package/execution/ThreadSelectionContext.d.ts.map +0 -1
- package/execution/ThreadSelectionContext.js +0 -18
- package/execution/ThreadSelectionContext.js.map +0 -1
- package/execution/useThreadSelection.d.ts +0 -35
- package/execution/useThreadSelection.d.ts.map +0 -1
- package/execution/useThreadSelection.js +0 -65
- package/execution/useThreadSelection.js.map +0 -1
- package/internal/store/selection-store.d.ts +0 -53
- package/internal/store/selection-store.d.ts.map +0 -1
- package/internal/store/selection-store.js +0 -88
- package/internal/store/selection-store.js.map +0 -1
- package/session/artifact-document.d.ts.map +0 -1
- package/session/artifact-document.js +0 -22
- package/session/artifact-document.js.map +0 -1
- package/session/facets/InspectTab.d.ts +0 -13
- package/session/facets/InspectTab.d.ts.map +0 -1
- package/session/facets/InspectTab.js +0 -19
- package/session/facets/InspectTab.js.map +0 -1
- package/src/execution/ThreadSelectionContext.tsx +0 -20
- package/src/execution/useThreadSelection.ts +0 -95
- package/src/internal/store/__tests__/selection-store.test.ts +0 -115
- package/src/internal/store/selection-store.ts +0 -112
- package/src/session/artifact-document.ts +0 -23
- package/src/session/facets/InspectTab.tsx +0 -57
- package/src/workflow/WorkflowExecutionApprovalCard.tsx +0 -154
- package/src/workflow/WorkflowExecutionArtifactPanel.tsx +0 -107
- package/src/workflow/WorkflowExecutionCostPanel.tsx +0 -120
- package/src/workflow/WorkflowExecutionTaskPanel.tsx +0 -129
- package/src/workflow/WorkflowExecutionTimeline.tsx +0 -151
- package/src/workflow/WorkflowExecutionTimelineEvent.tsx +0 -497
- package/src/workflow/__tests__/ExecutionInspector.test.tsx +0 -155
- package/src/workflow/__tests__/WorkflowExecutionApprovalCard.test.tsx +0 -129
- package/src/workflow/__tests__/derive-task-detail.test.ts +0 -1265
- package/src/workflow/__tests__/derive-waterfall-entries.test.ts +0 -521
- package/src/workflow/__tests__/execution-inspector.test.tsx +0 -332
- package/src/workflow/execution/derive-waterfall-entries.ts +0 -377
- package/src/workflow/execution/useWaterfallEntries.ts +0 -125
- package/src/workflow/execution-inspector/AgentCallTab.tsx +0 -169
- package/src/workflow/execution-inspector/ErrorTab.tsx +0 -110
- package/src/workflow/execution-inspector/EventLogTab.tsx +0 -79
- package/src/workflow/execution-inspector/ExecutionInspector.tsx +0 -341
- package/src/workflow/execution-inspector/InputOutputTab.tsx +0 -325
- package/src/workflow/execution-inspector/RetriesTab.tsx +0 -68
- package/src/workflow/execution-inspector/SummaryTab.tsx +0 -62
- package/src/workflow/execution-inspector/derive-task-detail.ts +0 -584
- package/src/workflow/execution-inspector/index.ts +0 -14
- package/src/workflow/execution-inspector/useExecutionTaskDetail.ts +0 -55
- package/src/workflow/inspector/ExecutionInspectorAdapter.tsx +0 -40
- package/src/workflow/waterfall/WaterfallBar.tsx +0 -167
- package/src/workflow/waterfall/WaterfallRow.tsx +0 -112
- package/src/workflow/waterfall/WaterfallScale.tsx +0 -52
- package/src/workflow/waterfall/WaterfallTimeline.tsx +0 -138
- package/src/workflow/waterfall/WaterfallTooltip.tsx +0 -74
- package/src/workflow/waterfall/index.ts +0 -5
- package/workflow/WorkflowExecutionApprovalCard.d.ts +0 -34
- package/workflow/WorkflowExecutionApprovalCard.d.ts.map +0 -1
- package/workflow/WorkflowExecutionApprovalCard.js +0 -46
- package/workflow/WorkflowExecutionApprovalCard.js.map +0 -1
- package/workflow/WorkflowExecutionArtifactPanel.d.ts +0 -15
- package/workflow/WorkflowExecutionArtifactPanel.d.ts.map +0 -1
- package/workflow/WorkflowExecutionArtifactPanel.js +0 -46
- package/workflow/WorkflowExecutionArtifactPanel.js.map +0 -1
- package/workflow/WorkflowExecutionCostPanel.d.ts +0 -18
- package/workflow/WorkflowExecutionCostPanel.d.ts.map +0 -1
- package/workflow/WorkflowExecutionCostPanel.js +0 -31
- package/workflow/WorkflowExecutionCostPanel.js.map +0 -1
- package/workflow/WorkflowExecutionTaskPanel.d.ts +0 -24
- package/workflow/WorkflowExecutionTaskPanel.d.ts.map +0 -1
- package/workflow/WorkflowExecutionTaskPanel.js +0 -51
- package/workflow/WorkflowExecutionTaskPanel.js.map +0 -1
- package/workflow/WorkflowExecutionTimeline.d.ts +0 -42
- package/workflow/WorkflowExecutionTimeline.d.ts.map +0 -1
- package/workflow/WorkflowExecutionTimeline.js +0 -52
- package/workflow/WorkflowExecutionTimeline.js.map +0 -1
- package/workflow/WorkflowExecutionTimelineEvent.d.ts +0 -25
- package/workflow/WorkflowExecutionTimelineEvent.d.ts.map +0 -1
- package/workflow/WorkflowExecutionTimelineEvent.js +0 -179
- package/workflow/WorkflowExecutionTimelineEvent.js.map +0 -1
- package/workflow/execution/derive-waterfall-entries.d.ts +0 -85
- package/workflow/execution/derive-waterfall-entries.d.ts.map +0 -1
- package/workflow/execution/derive-waterfall-entries.js +0 -268
- package/workflow/execution/derive-waterfall-entries.js.map +0 -1
- package/workflow/execution/useWaterfallEntries.d.ts +0 -25
- package/workflow/execution/useWaterfallEntries.d.ts.map +0 -1
- package/workflow/execution/useWaterfallEntries.js +0 -67
- package/workflow/execution/useWaterfallEntries.js.map +0 -1
- package/workflow/execution-inspector/AgentCallTab.d.ts +0 -21
- package/workflow/execution-inspector/AgentCallTab.d.ts.map +0 -1
- package/workflow/execution-inspector/AgentCallTab.js +0 -36
- package/workflow/execution-inspector/AgentCallTab.js.map +0 -1
- package/workflow/execution-inspector/ErrorTab.d.ts +0 -9
- package/workflow/execution-inspector/ErrorTab.d.ts.map +0 -1
- package/workflow/execution-inspector/ErrorTab.js +0 -29
- package/workflow/execution-inspector/ErrorTab.js.map +0 -1
- package/workflow/execution-inspector/EventLogTab.d.ts +0 -11
- package/workflow/execution-inspector/EventLogTab.d.ts.map +0 -1
- package/workflow/execution-inspector/EventLogTab.js +0 -47
- package/workflow/execution-inspector/EventLogTab.js.map +0 -1
- package/workflow/execution-inspector/ExecutionInspector.d.ts +0 -69
- package/workflow/execution-inspector/ExecutionInspector.d.ts.map +0 -1
- package/workflow/execution-inspector/ExecutionInspector.js +0 -145
- package/workflow/execution-inspector/ExecutionInspector.js.map +0 -1
- package/workflow/execution-inspector/InputOutputTab.d.ts +0 -20
- package/workflow/execution-inspector/InputOutputTab.d.ts.map +0 -1
- package/workflow/execution-inspector/InputOutputTab.js +0 -124
- package/workflow/execution-inspector/InputOutputTab.js.map +0 -1
- package/workflow/execution-inspector/RetriesTab.d.ts +0 -7
- package/workflow/execution-inspector/RetriesTab.d.ts.map +0 -1
- package/workflow/execution-inspector/RetriesTab.js +0 -11
- package/workflow/execution-inspector/RetriesTab.js.map +0 -1
- package/workflow/execution-inspector/StructuredDataViewer.d.ts.map +0 -1
- package/workflow/execution-inspector/StructuredDataViewer.js.map +0 -1
- package/workflow/execution-inspector/SummaryTab.d.ts +0 -7
- package/workflow/execution-inspector/SummaryTab.d.ts.map +0 -1
- package/workflow/execution-inspector/SummaryTab.js +0 -10
- package/workflow/execution-inspector/SummaryTab.js.map +0 -1
- package/workflow/execution-inspector/derive-task-detail.d.ts +0 -140
- package/workflow/execution-inspector/derive-task-detail.d.ts.map +0 -1
- package/workflow/execution-inspector/derive-task-detail.js +0 -366
- package/workflow/execution-inspector/derive-task-detail.js.map +0 -1
- package/workflow/execution-inspector/index.d.ts +0 -4
- package/workflow/execution-inspector/index.d.ts.map +0 -1
- package/workflow/execution-inspector/index.js +0 -4
- package/workflow/execution-inspector/index.js.map +0 -1
- package/workflow/execution-inspector/useExecutionTaskDetail.d.ts +0 -38
- package/workflow/execution-inspector/useExecutionTaskDetail.d.ts.map +0 -1
- package/workflow/execution-inspector/useExecutionTaskDetail.js +0 -37
- package/workflow/execution-inspector/useExecutionTaskDetail.js.map +0 -1
- package/workflow/inspector/ExecutionInspectorAdapter.d.ts +0 -26
- package/workflow/inspector/ExecutionInspectorAdapter.d.ts.map +0 -1
- package/workflow/inspector/ExecutionInspectorAdapter.js +0 -23
- package/workflow/inspector/ExecutionInspectorAdapter.js.map +0 -1
- package/workflow/waterfall/WaterfallBar.d.ts +0 -19
- package/workflow/waterfall/WaterfallBar.d.ts.map +0 -1
- package/workflow/waterfall/WaterfallBar.js +0 -70
- package/workflow/waterfall/WaterfallBar.js.map +0 -1
- package/workflow/waterfall/WaterfallRow.d.ts +0 -18
- package/workflow/waterfall/WaterfallRow.d.ts.map +0 -1
- package/workflow/waterfall/WaterfallRow.js +0 -45
- package/workflow/waterfall/WaterfallRow.js.map +0 -1
- package/workflow/waterfall/WaterfallScale.d.ts +0 -14
- package/workflow/waterfall/WaterfallScale.d.ts.map +0 -1
- package/workflow/waterfall/WaterfallScale.js +0 -22
- package/workflow/waterfall/WaterfallScale.js.map +0 -1
- package/workflow/waterfall/WaterfallTimeline.d.ts +0 -46
- package/workflow/waterfall/WaterfallTimeline.d.ts.map +0 -1
- package/workflow/waterfall/WaterfallTimeline.js +0 -60
- package/workflow/waterfall/WaterfallTimeline.js.map +0 -1
- package/workflow/waterfall/WaterfallTooltip.d.ts +0 -15
- package/workflow/waterfall/WaterfallTooltip.d.ts.map +0 -1
- package/workflow/waterfall/WaterfallTooltip.js +0 -20
- package/workflow/waterfall/WaterfallTooltip.js.map +0 -1
- package/workflow/waterfall/index.d.ts +0 -6
- package/workflow/waterfall/index.d.ts.map +0 -1
- package/workflow/waterfall/index.js +0 -6
- package/workflow/waterfall/index.js.map +0 -1
- /package/src/workflow/{execution-inspector → task-detail}/StructuredDataViewer.tsx +0 -0
- /package/workflow/{execution-inspector → task-detail}/StructuredDataViewer.d.ts +0 -0
- /package/workflow/{execution-inspector → task-detail}/StructuredDataViewer.js +0 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import type { UseWorkflowExecutionActionsReturn } from "./useWorkflowExecutionActions.js";
|
|
2
|
+
/**
|
|
3
|
+
* The HITL wiring for a child transcript: the slice of
|
|
4
|
+
* {@link UseWorkflowExecutionActionsReturn} the document needs to submit
|
|
5
|
+
* child-gate decisions at the WORKFLOW level.
|
|
6
|
+
*
|
|
7
|
+
* A `Pick` (not a new shape) so the bundle can never drift from the actions
|
|
8
|
+
* hook — the viewer builds it from its single `useWorkflowExecutionActions`
|
|
9
|
+
* instance, which is the same keyed in-flight/error state the bottom
|
|
10
|
+
* Approvals tab renders. One instance, two surfaces: a spinner or failure on
|
|
11
|
+
* a gate is identical wherever that gate is shown.
|
|
12
|
+
*/
|
|
13
|
+
export type WorkflowAgentExecutionHitl = Pick<UseWorkflowExecutionActionsReturn, "submitApproval" | "approvalSubmittingToolCallIds" | "approvalErrorsByToolCallId" | "submitFileDecision" | "fileDecisionSubmittingKeys" | "fileDecisionErrorsByKey">;
|
|
14
|
+
/** Props for {@link WorkflowAgentExecutionDocument}. */
|
|
15
|
+
export interface WorkflowAgentExecutionDocumentProps {
|
|
16
|
+
/** ID of the child AgentExecution whose transcript to render. */
|
|
17
|
+
readonly childExecutionId: string;
|
|
18
|
+
/** The AGENT_CALL task that spawned the child — the document's title. */
|
|
19
|
+
readonly taskName: string;
|
|
20
|
+
/** Slug of the agent the task called, when known (subtitle context). */
|
|
21
|
+
readonly agentSlug?: string;
|
|
22
|
+
/**
|
|
23
|
+
* Open the child execution as a standalone page — the pop-out escape hatch
|
|
24
|
+
* preserved from the inspector's Agent tab. Host-routed (DD-004).
|
|
25
|
+
*/
|
|
26
|
+
readonly onNavigateToAgentExecution?: (agentExecutionId: string) => void;
|
|
27
|
+
/**
|
|
28
|
+
* Workflow-level HITL handlers (S5 of the UX-parity project). When
|
|
29
|
+
* provided, the transcript becomes interactive: tool-approval gates render
|
|
30
|
+
* their decision cards inline on the gated rows, and pending file reviews
|
|
31
|
+
* dock at the bottom of the document. When omitted, the transcript is
|
|
32
|
+
* read-only — gates show status only (backward compatible, DD-011).
|
|
33
|
+
*/
|
|
34
|
+
readonly hitl?: WorkflowAgentExecutionHitl;
|
|
35
|
+
/** Additional CSS classes for the root element. */
|
|
36
|
+
readonly className?: string;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* The editor-pane rendering of a child AgentExecution's transcript — the
|
|
40
|
+
* `SurfaceVirtualDocument` body the workflow execution panel mounts when an
|
|
41
|
+
* AGENT_CALL task is opened in place (S4 of the UX-parity project). This is
|
|
42
|
+
* the full session-grade experience — streaming `MessageThread` with tool
|
|
43
|
+
* calls, sub-agents, plan cards, and (with {@link
|
|
44
|
+
* WorkflowAgentExecutionDocumentProps.hitl | hitl}) in-place HITL —
|
|
45
|
+
* replacing the inspector's cramped `max-h-[50vh]` thumbnail.
|
|
46
|
+
*
|
|
47
|
+
* HITL ROUTING. Child gates are decided through the WORKFLOW-level RPCs
|
|
48
|
+
* (`WorkflowExecution.submitApproval` / `submitFileDecision`), never the
|
|
49
|
+
* child's own `agentExecution.*` submit path. The two paths are
|
|
50
|
+
* server-equivalent (the workflow RPC forwards to the child — see
|
|
51
|
+
* workflowexecution command.proto), but they differ in authorization: the
|
|
52
|
+
* workflow RPC checks `can_edit` on the workflow execution — the resource
|
|
53
|
+
* the operator owns — while the child path checks the runner-spawned
|
|
54
|
+
* AgentExecution, which the operator may not. Every workflow HITL surface
|
|
55
|
+
* (bottom Approvals tab, inspector) routes this way; the transcript joins
|
|
56
|
+
* them via the same actions instance, so in-flight/error state never forks.
|
|
57
|
+
*
|
|
58
|
+
* FILE-REVIEW DOCK. Pending (AWAITING_REVIEW) sets derive from the CHILD's
|
|
59
|
+
* own live stream — the freshest source this document already holds — not
|
|
60
|
+
* from the parent's `status.pending_file_reviews`: the parent snapshot is
|
|
61
|
+
* fetched once at mount and may lag a mid-run gate, which would blank the
|
|
62
|
+
* dock exactly when the reviewer is watching live. The server validates
|
|
63
|
+
* routing against its own (fresh) stored status at submit time, so a
|
|
64
|
+
* too-early decision degrades to a retryable in-card error, the same
|
|
65
|
+
* treatment tool approvals get. Docked below the thread (mirroring the
|
|
66
|
+
* session's composer dock) so a decision the agent is blocked on can never
|
|
67
|
+
* scroll out of view; settled sets render as read-only records in-thread
|
|
68
|
+
* (`showFileReviewRecords`), never in the dock — the two surfaces partition
|
|
69
|
+
* by the same pending test `MessageThread` uses.
|
|
70
|
+
*
|
|
71
|
+
* Lifecycle: the surface's editor area mounts only the ACTIVE virtual
|
|
72
|
+
* document, so `useLiveAgentExecution` fetches/streams only while this tab
|
|
73
|
+
* is foregrounded (DD-LIVE-006 — at most one child stream is ever live) and
|
|
74
|
+
* a tab-return re-renders instantly from the DD-014 fetch cache.
|
|
75
|
+
*
|
|
76
|
+
* All visual properties flow through `--stgm-*` tokens (DD-005).
|
|
77
|
+
*/
|
|
78
|
+
export declare const WorkflowAgentExecutionDocument: import("react").NamedExoticComponent<WorkflowAgentExecutionDocumentProps>;
|
|
79
|
+
//# sourceMappingURL=WorkflowAgentExecutionDocument.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowAgentExecutionDocument.d.ts","sourceRoot":"","sources":["../../src/workflow/WorkflowAgentExecutionDocument.tsx"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAC;AAK1F;;;;;;;;;;GAUG;AACH,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAC3C,iCAAiC,EAC/B,gBAAgB,GAChB,+BAA+B,GAC/B,4BAA4B,GAC5B,oBAAoB,GACpB,4BAA4B,GAC5B,yBAAyB,CAC5B,CAAC;AAEF,wDAAwD;AACxD,MAAM,WAAW,mCAAmC;IAClD,iEAAiE;IACjE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,yEAAyE;IACzE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,wEAAwE;IACxE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC,gBAAgB,EAAE,MAAM,KAAK,IAAI,CAAC;IACzE;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,0BAA0B,CAAC;IAC3C,mDAAmD;IACnD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,eAAO,MAAM,8BAA8B,2EAiJ1C,CAAC"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
// Editor-area document rendering one child AgentExecution's full transcript.
|
|
4
|
+
// Domain: workflow (the AGENT_CALL counterpart of WorkflowArtifactDocument).
|
|
5
|
+
import { memo, useCallback, useMemo } from "react";
|
|
6
|
+
import { FileChangeSetStatus, } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
|
|
7
|
+
import { displayFileChangeSets } from "@stigmer/sdk";
|
|
8
|
+
import { cn } from "@stigmer/theme";
|
|
9
|
+
import { useLiveAgentExecution } from "../execution/useLiveAgentExecution.js";
|
|
10
|
+
import { MessageThread } from "../execution/MessageThread.js";
|
|
11
|
+
import { ThreadSkeleton } from "../execution/ThreadSkeleton.js";
|
|
12
|
+
import { ExecutionPhaseBadge } from "../execution/ExecutionPhaseBadge.js";
|
|
13
|
+
import { FileReviewDock } from "../execution/FileReviewDock.js";
|
|
14
|
+
import { isTerminalPhase } from "../execution/execution-phases.js";
|
|
15
|
+
/** Stable empty list so the thread's memoized rows keep identity (DD-010). */
|
|
16
|
+
const EMPTY_EXECUTIONS = [];
|
|
17
|
+
/**
|
|
18
|
+
* The editor-pane rendering of a child AgentExecution's transcript — the
|
|
19
|
+
* `SurfaceVirtualDocument` body the workflow execution panel mounts when an
|
|
20
|
+
* AGENT_CALL task is opened in place (S4 of the UX-parity project). This is
|
|
21
|
+
* the full session-grade experience — streaming `MessageThread` with tool
|
|
22
|
+
* calls, sub-agents, plan cards, and (with {@link
|
|
23
|
+
* WorkflowAgentExecutionDocumentProps.hitl | hitl}) in-place HITL —
|
|
24
|
+
* replacing the inspector's cramped `max-h-[50vh]` thumbnail.
|
|
25
|
+
*
|
|
26
|
+
* HITL ROUTING. Child gates are decided through the WORKFLOW-level RPCs
|
|
27
|
+
* (`WorkflowExecution.submitApproval` / `submitFileDecision`), never the
|
|
28
|
+
* child's own `agentExecution.*` submit path. The two paths are
|
|
29
|
+
* server-equivalent (the workflow RPC forwards to the child — see
|
|
30
|
+
* workflowexecution command.proto), but they differ in authorization: the
|
|
31
|
+
* workflow RPC checks `can_edit` on the workflow execution — the resource
|
|
32
|
+
* the operator owns — while the child path checks the runner-spawned
|
|
33
|
+
* AgentExecution, which the operator may not. Every workflow HITL surface
|
|
34
|
+
* (bottom Approvals tab, inspector) routes this way; the transcript joins
|
|
35
|
+
* them via the same actions instance, so in-flight/error state never forks.
|
|
36
|
+
*
|
|
37
|
+
* FILE-REVIEW DOCK. Pending (AWAITING_REVIEW) sets derive from the CHILD's
|
|
38
|
+
* own live stream — the freshest source this document already holds — not
|
|
39
|
+
* from the parent's `status.pending_file_reviews`: the parent snapshot is
|
|
40
|
+
* fetched once at mount and may lag a mid-run gate, which would blank the
|
|
41
|
+
* dock exactly when the reviewer is watching live. The server validates
|
|
42
|
+
* routing against its own (fresh) stored status at submit time, so a
|
|
43
|
+
* too-early decision degrades to a retryable in-card error, the same
|
|
44
|
+
* treatment tool approvals get. Docked below the thread (mirroring the
|
|
45
|
+
* session's composer dock) so a decision the agent is blocked on can never
|
|
46
|
+
* scroll out of view; settled sets render as read-only records in-thread
|
|
47
|
+
* (`showFileReviewRecords`), never in the dock — the two surfaces partition
|
|
48
|
+
* by the same pending test `MessageThread` uses.
|
|
49
|
+
*
|
|
50
|
+
* Lifecycle: the surface's editor area mounts only the ACTIVE virtual
|
|
51
|
+
* document, so `useLiveAgentExecution` fetches/streams only while this tab
|
|
52
|
+
* is foregrounded (DD-LIVE-006 — at most one child stream is ever live) and
|
|
53
|
+
* a tab-return re-renders instantly from the DD-014 fetch cache.
|
|
54
|
+
*
|
|
55
|
+
* All visual properties flow through `--stgm-*` tokens (DD-005).
|
|
56
|
+
*/
|
|
57
|
+
export const WorkflowAgentExecutionDocument = memo(function WorkflowAgentExecutionDocument({ childExecutionId, taskName, agentSlug, onNavigateToAgentExecution, hitl, className, }) {
|
|
58
|
+
const { execution, phase, isLoading, isStreaming, isReconnecting, error, reconnect } = useLiveAgentExecution(childExecutionId);
|
|
59
|
+
// Pending file reviews from the child's own (streamed) status — see the
|
|
60
|
+
// component doc for why the parent's pending_file_reviews is not the
|
|
61
|
+
// source. Terminal executions never dock: their AWAITING_REVIEW sets are
|
|
62
|
+
// settled history ("not reviewed") and render as in-thread records — the
|
|
63
|
+
// exact complement of MessageThread's pending test, so no set ever
|
|
64
|
+
// appears in both surfaces.
|
|
65
|
+
const terminal = isTerminalPhase(phase);
|
|
66
|
+
const pendingReviewSets = useMemo(() => {
|
|
67
|
+
if (terminal)
|
|
68
|
+
return [];
|
|
69
|
+
return displayFileChangeSets(execution?.status).filter((cs) => cs.status === FileChangeSetStatus.AWAITING_REVIEW &&
|
|
70
|
+
cs.changes.length > 0);
|
|
71
|
+
}, [execution?.status, terminal]);
|
|
72
|
+
// Bind the child id into the dock's card-level submit signature. Deps are
|
|
73
|
+
// the specific method (DD-010), so the callback survives unrelated
|
|
74
|
+
// in-flight churn on the actions instance.
|
|
75
|
+
const submitFileDecision = hitl?.submitFileDecision;
|
|
76
|
+
const handleFileDecision = useCallback((changeSetId, action, options) => {
|
|
77
|
+
submitFileDecision?.(childExecutionId, changeSetId, action, options);
|
|
78
|
+
}, [submitFileDecision, childExecutionId]);
|
|
79
|
+
return (_jsxs("div", { role: "article", "aria-label": `Agent execution for task ${taskName}`, className: cn("flex h-full min-w-0 flex-col", className), children: [_jsxs("div", { className: "flex min-w-0 shrink-0 flex-wrap items-center gap-x-3 gap-y-1 border-b border-border bg-background px-4 py-2", children: [_jsx("span", { className: "truncate text-sm font-medium text-foreground", children: taskName }), agentSlug && (_jsx("span", { className: "shrink-0 text-xs text-muted-foreground", children: agentSlug })), _jsx("span", { className: "shrink-0", children: isStreaming ? (_jsxs("span", { className: "inline-flex items-center gap-1.5 text-xs font-medium text-primary", children: [_jsx("span", { className: "inline-block size-1.5 animate-pulse rounded-full bg-primary", "aria-hidden": "true" }), "Live"] })) : isReconnecting ? (_jsx("span", { className: "text-xs text-muted-foreground", children: "Reconnecting\u2026" })) : isTerminalPhase(phase) ? (_jsx(ExecutionPhaseBadge, { phase: phase })) : null }), onNavigateToAgentExecution && (_jsxs("button", { type: "button", onClick: () => onNavigateToAgentExecution(childExecutionId), className: "ml-auto inline-flex shrink-0 items-center gap-1.5 text-xs font-medium text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:rounded-sm", children: [_jsx(PopOutIcon, {}), "Open standalone"] }))] }), _jsx("div", { className: "min-h-0 min-w-0 flex-1", children: execution ? (_jsx(MessageThread, { executions: EMPTY_EXECUTIONS, activeStreamExecution: execution, onApprovalSubmit: hitl?.submitApproval, submittingApprovalIds: hitl?.approvalSubmittingToolCallIds, approvalErrors: hitl?.approvalErrorsByToolCallId, showFileReviewRecords: hitl != null, className: "h-full" })) : isLoading ? (_jsx(ThreadSkeleton, { className: "px-4 py-4" })) : error ? (_jsxs("div", { role: "alert", className: "mx-auto flex w-full max-w-3xl flex-col items-center gap-2 px-4 py-8 text-center", children: [_jsx("p", { className: "text-xs text-destructive", children: error.message }), _jsx("button", { type: "button", onClick: reconnect, className: "rounded border border-border px-3 py-1.5 text-xs font-medium text-foreground hover:bg-muted focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", children: "Retry" })] })) : (_jsxs("div", { role: "status", className: "mx-auto flex w-full max-w-3xl flex-col items-center gap-1 px-4 py-8 text-center", children: [_jsx("p", { className: "text-xs font-medium text-foreground", children: "This agent execution is no longer available." }), _jsx("p", { className: "text-xs text-muted-foreground", children: "It may have been removed, or the workflow run predates transcript retention." })] })) }), hitl && pendingReviewSets.length > 0 && (_jsx(FileReviewDock, { changeSets: pendingReviewSets, onSubmit: handleFileDecision, submittingDecisionKeys: hitl.fileDecisionSubmittingKeys, decisionErrors: hitl.fileDecisionErrorsByKey, className: "shrink-0" }))] }));
|
|
80
|
+
});
|
|
81
|
+
// ---------------------------------------------------------------------------
|
|
82
|
+
// Inline SVG icons (SDK independence — no lucide dependency)
|
|
83
|
+
// ---------------------------------------------------------------------------
|
|
84
|
+
function PopOutIcon() {
|
|
85
|
+
return (_jsxs("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", stroke: "currentColor", strokeWidth: "1.3", strokeLinecap: "round", strokeLinejoin: "round", className: "shrink-0", "aria-hidden": "true", children: [_jsx("path", { d: "M10.5 4.5V1.5H7.5" }), _jsx("path", { d: "M10.5 1.5L6 6" }), _jsx("path", { d: "M8.5 7v3a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h3" })] }));
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=WorkflowAgentExecutionDocument.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowAgentExecutionDocument.js","sourceRoot":"","sources":["../../src/workflow/WorkflowAgentExecutionDocument.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { ApprovalAction } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
|
|
2
|
+
import type { WorkflowPendingApproval } from "@stigmer/protos/ai/stigmer/agentic/workflowexecution/v1/api_pb";
|
|
3
|
+
/**
|
|
4
|
+
* Submit handler for a workflow-level tool-approval decision, matching
|
|
5
|
+
* `useWorkflowExecutionActions().submitApproval`. The tool-call id is bound per
|
|
6
|
+
* card so the shared {@link ApprovalCard} only needs the card-level
|
|
7
|
+
* `(action, comment)`.
|
|
8
|
+
*/
|
|
9
|
+
export type WorkflowApprovalSubmit = (toolCallId: string, action: ApprovalAction, comment?: string) => Promise<unknown> | void;
|
|
10
|
+
/** Props for {@link WorkflowApprovalList}. */
|
|
11
|
+
export interface WorkflowApprovalListProps {
|
|
12
|
+
/**
|
|
13
|
+
* The parent workflow's surfaced tool-approval gates
|
|
14
|
+
* (`status.pending_approvals`) — each pairs a child's full
|
|
15
|
+
* `PendingApproval` with the child agent execution to route the decision to.
|
|
16
|
+
*/
|
|
17
|
+
readonly pendingApprovals: readonly WorkflowPendingApproval[];
|
|
18
|
+
/** Forwards a decision to the child (see {@link WorkflowApprovalSubmit}). */
|
|
19
|
+
readonly onSubmitApproval: WorkflowApprovalSubmit;
|
|
20
|
+
/**
|
|
21
|
+
* Tool-call ids whose decision is in flight (pass
|
|
22
|
+
* `approvalSubmittingToolCallIds` straight through). Keyed per gate so
|
|
23
|
+
* deciding one never spins another.
|
|
24
|
+
*/
|
|
25
|
+
readonly submittingToolCallIds?: ReadonlySet<string>;
|
|
26
|
+
/**
|
|
27
|
+
* Per-gate failures, keyed by `toolCallId` (pass `approvalErrorsByToolCallId`
|
|
28
|
+
* straight through) — surfaced in-card beside the gate that failed.
|
|
29
|
+
*/
|
|
30
|
+
readonly approvalErrors?: ReadonlyMap<string, Error>;
|
|
31
|
+
/**
|
|
32
|
+
* Optional deep-link to open the gate's child agent execution in its own
|
|
33
|
+
* view. When provided, each gate renders a "View agent execution"
|
|
34
|
+
* affordance — with parallel children, it names which child a gate belongs
|
|
35
|
+
* to. Routing is the host's responsibility (DD-004).
|
|
36
|
+
*/
|
|
37
|
+
readonly onNavigateToAgentExecution?: (agentExecutionId: string) => void;
|
|
38
|
+
/** Additional CSS class names for the root container. */
|
|
39
|
+
readonly className?: string;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Renders the child agent tool approvals surfaced on a parent
|
|
43
|
+
* WorkflowExecution — the tool-approval sibling of {@link WorkflowFileReviewList},
|
|
44
|
+
* reusing the session's canonical {@link ApprovalCard} so a gate reads
|
|
45
|
+
* identically everywhere it appears (workflow bottom tab, inspector, in-place
|
|
46
|
+
* transcript, agent session): same 4-action decision model (Approve / Skip /
|
|
47
|
+
* Reject / Approve-all-of-class), same preview, same gate provenance.
|
|
48
|
+
*
|
|
49
|
+
* Unlike the file sibling, this list does NOT stream the referenced children:
|
|
50
|
+
* `WorkflowPendingApproval.approval` already carries the child's full
|
|
51
|
+
* projected `PendingApproval` (file-review content is reference-only on the
|
|
52
|
+
* parent and must be dereferenced; approvals are copied whole). Same role,
|
|
53
|
+
* simpler body.
|
|
54
|
+
*
|
|
55
|
+
* Decisions route through the WORKFLOW-level RPC (the supplied
|
|
56
|
+
* `onSubmitApproval`, normally `useWorkflowExecutionActions().submitApproval`)
|
|
57
|
+
* — never the child's own `agentExecution.*` path, whose authorization checks
|
|
58
|
+
* the runner-spawned child rather than the workflow execution the operator
|
|
59
|
+
* owns. Empty `pendingApprovals` renders nothing.
|
|
60
|
+
*/
|
|
61
|
+
export declare function WorkflowApprovalList({ pendingApprovals, onSubmitApproval, submittingToolCallIds, approvalErrors, onNavigateToAgentExecution, className, }: WorkflowApprovalListProps): React.ReactElement | null;
|
|
62
|
+
//# sourceMappingURL=WorkflowApprovalList.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowApprovalList.d.ts","sourceRoot":"","sources":["../../src/workflow/WorkflowApprovalList.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8DAA8D,CAAC;AAEnG,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gEAAgE,CAAC;AAI9G;;;;;GAKG;AACH,MAAM,MAAM,sBAAsB,GAAG,CACnC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,cAAc,EACtB,OAAO,CAAC,EAAE,MAAM,KACb,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;AAE7B,8CAA8C;AAC9C,MAAM,WAAW,yBAAyB;IACxC;;;;OAIG;IACH,QAAQ,CAAC,gBAAgB,EAAE,SAAS,uBAAuB,EAAE,CAAC;IAC9D,6EAA6E;IAC7E,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;IAClD;;;;OAIG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACrD;;;OAGG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACrD;;;;;OAKG;IACH,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC,gBAAgB,EAAE,MAAM,KAAK,IAAI,CAAC;IACzE,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,gBAAgB,EAChB,gBAAgB,EAChB,qBAAqB,EACrB,cAAc,EACd,0BAA0B,EAC1B,SAAS,GACV,EAAE,yBAAyB,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAyBvD"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { memo, useCallback } from "react";
|
|
4
|
+
import { cn } from "@stigmer/theme";
|
|
5
|
+
import { ApprovalCard } from "../execution/ApprovalCard.js";
|
|
6
|
+
/**
|
|
7
|
+
* Renders the child agent tool approvals surfaced on a parent
|
|
8
|
+
* WorkflowExecution — the tool-approval sibling of {@link WorkflowFileReviewList},
|
|
9
|
+
* reusing the session's canonical {@link ApprovalCard} so a gate reads
|
|
10
|
+
* identically everywhere it appears (workflow bottom tab, inspector, in-place
|
|
11
|
+
* transcript, agent session): same 4-action decision model (Approve / Skip /
|
|
12
|
+
* Reject / Approve-all-of-class), same preview, same gate provenance.
|
|
13
|
+
*
|
|
14
|
+
* Unlike the file sibling, this list does NOT stream the referenced children:
|
|
15
|
+
* `WorkflowPendingApproval.approval` already carries the child's full
|
|
16
|
+
* projected `PendingApproval` (file-review content is reference-only on the
|
|
17
|
+
* parent and must be dereferenced; approvals are copied whole). Same role,
|
|
18
|
+
* simpler body.
|
|
19
|
+
*
|
|
20
|
+
* Decisions route through the WORKFLOW-level RPC (the supplied
|
|
21
|
+
* `onSubmitApproval`, normally `useWorkflowExecutionActions().submitApproval`)
|
|
22
|
+
* — never the child's own `agentExecution.*` path, whose authorization checks
|
|
23
|
+
* the runner-spawned child rather than the workflow execution the operator
|
|
24
|
+
* owns. Empty `pendingApprovals` renders nothing.
|
|
25
|
+
*/
|
|
26
|
+
export function WorkflowApprovalList({ pendingApprovals, onSubmitApproval, submittingToolCallIds, approvalErrors, onNavigateToAgentExecution, className, }) {
|
|
27
|
+
if (pendingApprovals.length === 0)
|
|
28
|
+
return null;
|
|
29
|
+
return (_jsx("div", { className: cn("stgm space-y-3", className), children: pendingApprovals.map((ref) => {
|
|
30
|
+
// A surfaced gate without its approval payload cannot be decided
|
|
31
|
+
// (there is no toolCallId to route) — skip rather than render a
|
|
32
|
+
// dead card.
|
|
33
|
+
if (!ref.approval)
|
|
34
|
+
return null;
|
|
35
|
+
const toolCallId = ref.approval.toolCallId;
|
|
36
|
+
return (_jsx(WorkflowApprovalItem, { approval: ref.approval, childAgentExecutionId: ref.childAgentExecutionId, onSubmitApproval: onSubmitApproval, isSubmitting: submittingToolCallIds?.has(toolCallId) ?? false, error: approvalErrors?.get(toolCallId) ?? null, onNavigateToAgentExecution: onNavigateToAgentExecution }, toolCallId || ref.childAgentExecutionId));
|
|
37
|
+
}) }));
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* One gate: binds `toolCallId` into the card-level submit signature — the same
|
|
41
|
+
* stabilization `MessageThread`'s internal `ApprovalCardRow` performs — so the
|
|
42
|
+
* memoized {@link ApprovalCard} re-renders only when ITS gate's state moves,
|
|
43
|
+
* not when a sibling gate is decided.
|
|
44
|
+
*/
|
|
45
|
+
const WorkflowApprovalItem = memo(function WorkflowApprovalItem({ approval, childAgentExecutionId, onSubmitApproval, isSubmitting, error, onNavigateToAgentExecution, }) {
|
|
46
|
+
const toolCallId = approval.toolCallId;
|
|
47
|
+
const handleSubmit = useCallback((action, comment) => {
|
|
48
|
+
onSubmitApproval(toolCallId, action, comment);
|
|
49
|
+
}, [onSubmitApproval, toolCallId]);
|
|
50
|
+
return (_jsxs("div", { className: "space-y-2", children: [onNavigateToAgentExecution && (_jsx("button", { type: "button", onClick: () => onNavigateToAgentExecution(childAgentExecutionId), className: "text-xs text-muted-foreground hover:text-foreground underline underline-offset-2", children: "View agent execution" })), _jsx(ApprovalCard, { pendingApproval: approval, onSubmit: handleSubmit, isSubmitting: isSubmitting, error: error })] }));
|
|
51
|
+
});
|
|
52
|
+
//# sourceMappingURL=WorkflowApprovalList.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowApprovalList.js","sourceRoot":"","sources":["../../src/workflow/WorkflowApprovalList.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAI1C,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AA8C5D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,oBAAoB,CAAC,EACnC,gBAAgB,EAChB,gBAAgB,EAChB,qBAAqB,EACrB,cAAc,EACd,0BAA0B,EAC1B,SAAS,GACiB;IAC1B,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE/C,OAAO,CACL,cAAK,SAAS,EAAE,EAAE,CAAC,gBAAgB,EAAE,SAAS,CAAC,YAC5C,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YAC5B,iEAAiE;YACjE,gEAAgE;YAChE,aAAa;YACb,IAAI,CAAC,GAAG,CAAC,QAAQ;gBAAE,OAAO,IAAI,CAAC;YAC/B,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC3C,OAAO,CACL,KAAC,oBAAoB,IAEnB,QAAQ,EAAE,GAAG,CAAC,QAAQ,EACtB,qBAAqB,EAAE,GAAG,CAAC,qBAAqB,EAChD,gBAAgB,EAAE,gBAAgB,EAClC,YAAY,EAAE,qBAAqB,EAAE,GAAG,CAAC,UAAU,CAAC,IAAI,KAAK,EAC7D,KAAK,EAAE,cAAc,EAAE,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,EAC9C,0BAA0B,EAAE,0BAA0B,IANjD,UAAU,IAAI,GAAG,CAAC,qBAAqB,CAO5C,CACH,CAAC;QACJ,CAAC,CAAC,GACE,CACP,CAAC;AACJ,CAAC;AAWD;;;;;GAKG;AACH,MAAM,oBAAoB,GAAG,IAAI,CAAC,SAAS,oBAAoB,CAAC,EAC9D,QAAQ,EACR,qBAAqB,EACrB,gBAAgB,EAChB,YAAY,EACZ,KAAK,EACL,0BAA0B,GACA;IAC1B,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;IACvC,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,MAAsB,EAAE,OAAgB,EAAE,EAAE;QAC3C,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC,EACD,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAC/B,CAAC;IAEF,OAAO,CACL,eAAK,SAAS,EAAC,WAAW,aACvB,0BAA0B,IAAI,CAC7B,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,0BAA0B,CAAC,qBAAqB,CAAC,EAChE,SAAS,EAAC,kFAAkF,qCAGrF,CACV,EACD,KAAC,YAAY,IACX,eAAe,EAAE,QAAQ,EACzB,QAAQ,EAAE,YAAY,EACtB,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,GACZ,IACE,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { Artifact } from "@stigmer/protos/ai/stigmer/agentic/artifact/v1/api_pb";
|
|
2
|
+
/** Props for {@link WorkflowArtifactDocument}. */
|
|
3
|
+
export interface WorkflowArtifactDocumentProps {
|
|
4
|
+
/** The workflow artifact to render. */
|
|
5
|
+
readonly artifact: Artifact;
|
|
6
|
+
/** Additional CSS classes for the root element. */
|
|
7
|
+
readonly className?: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* The editor-pane rendering of a single workflow `Artifact` resource — the
|
|
11
|
+
* `SurfaceVirtualDocument` body the workflow execution panel mounts when an
|
|
12
|
+
* artifact opens from its Artifacts facet (VS Code "each file is a tab").
|
|
13
|
+
*
|
|
14
|
+
* The `Artifact`-resource counterpart of the session's `ArtifactDocument`:
|
|
15
|
+
* same toolbar-over-body shape and the same shared file-content states
|
|
16
|
+
* ({@link ArtifactFileContent}), but file-only (the resource model has no
|
|
17
|
+
* directory concept) and deliberately read-only — no resource detection and
|
|
18
|
+
* no Apply/Push, which are session-specific product features.
|
|
19
|
+
*
|
|
20
|
+
* Content is fetched through `stigmer.artifact.getContent` (server-proxied
|
|
21
|
+
* bytes, CORS-safe for embedded hosts) only for text content types; binary
|
|
22
|
+
* artifacts show an honest "not available for preview" body with Download as
|
|
23
|
+
* the escape hatch. A `cacheKey` keeps reopening a recently-viewed tab
|
|
24
|
+
* instant (DD-014).
|
|
25
|
+
*
|
|
26
|
+
* All visual properties flow through `--stgm-*` tokens (DD-005).
|
|
27
|
+
*/
|
|
28
|
+
export declare function WorkflowArtifactDocument({ artifact, className, }: WorkflowArtifactDocumentProps): import("react/jsx-runtime").JSX.Element;
|
|
29
|
+
//# sourceMappingURL=WorkflowArtifactDocument.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowArtifactDocument.d.ts","sourceRoot":"","sources":["../../src/workflow/WorkflowArtifactDocument.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uDAAuD,CAAC;AAStF,kDAAkD;AAClD,MAAM,WAAW,6BAA6B;IAC5C,uCAAuC;IACvC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,mDAAmD;IACnD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAmBD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,QAAQ,EACR,SAAS,GACV,EAAE,6BAA6B,2CAwG/B"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
// Editor-area document rendering one workflow Artifact resource's content.
|
|
4
|
+
// Domain: workflow (the Artifact-resource counterpart of execution/ArtifactDocument).
|
|
5
|
+
import { useCallback, useState } from "react";
|
|
6
|
+
import { cn } from "@stigmer/theme";
|
|
7
|
+
import { ArtifactFileContent } from "../execution/ArtifactFileContent.js";
|
|
8
|
+
import { formatArtifactSize } from "../execution/artifact-utils.js";
|
|
9
|
+
import { useArtifactContentById } from "../execution/useArtifactContentById.js";
|
|
10
|
+
import { useWorkflowArtifactDownload } from "./useWorkflowArtifactDownload.js";
|
|
11
|
+
const COPIED_FEEDBACK_MS = 2000;
|
|
12
|
+
/**
|
|
13
|
+
* MIME types whose content is fetchable and renderable as text. The `Artifact`
|
|
14
|
+
* spec requires a content type at creation, so gating is MIME-first — unlike
|
|
15
|
+
* the session model, which infers text-ness from the file extension.
|
|
16
|
+
*/
|
|
17
|
+
function isTextContentType(contentType) {
|
|
18
|
+
const ct = contentType.toLowerCase();
|
|
19
|
+
return (ct.startsWith("text/") ||
|
|
20
|
+
ct.includes("json") ||
|
|
21
|
+
ct.includes("yaml") ||
|
|
22
|
+
ct.includes("xml") ||
|
|
23
|
+
ct.includes("markdown") ||
|
|
24
|
+
ct.includes("csv"));
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* The editor-pane rendering of a single workflow `Artifact` resource — the
|
|
28
|
+
* `SurfaceVirtualDocument` body the workflow execution panel mounts when an
|
|
29
|
+
* artifact opens from its Artifacts facet (VS Code "each file is a tab").
|
|
30
|
+
*
|
|
31
|
+
* The `Artifact`-resource counterpart of the session's `ArtifactDocument`:
|
|
32
|
+
* same toolbar-over-body shape and the same shared file-content states
|
|
33
|
+
* ({@link ArtifactFileContent}), but file-only (the resource model has no
|
|
34
|
+
* directory concept) and deliberately read-only — no resource detection and
|
|
35
|
+
* no Apply/Push, which are session-specific product features.
|
|
36
|
+
*
|
|
37
|
+
* Content is fetched through `stigmer.artifact.getContent` (server-proxied
|
|
38
|
+
* bytes, CORS-safe for embedded hosts) only for text content types; binary
|
|
39
|
+
* artifacts show an honest "not available for preview" body with Download as
|
|
40
|
+
* the escape hatch. A `cacheKey` keeps reopening a recently-viewed tab
|
|
41
|
+
* instant (DD-014).
|
|
42
|
+
*
|
|
43
|
+
* All visual properties flow through `--stgm-*` tokens (DD-005).
|
|
44
|
+
*/
|
|
45
|
+
export function WorkflowArtifactDocument({ artifact, className, }) {
|
|
46
|
+
const id = artifact.metadata?.id ?? "";
|
|
47
|
+
const displayName = artifact.spec?.displayName || artifact.metadata?.name || "Unnamed";
|
|
48
|
+
const specContentType = artifact.spec?.contentType ?? "";
|
|
49
|
+
const sizeBytes = artifact.status?.sizeBytes ?? BigInt(0);
|
|
50
|
+
const canFetchContent = !!id && isTextContentType(specContentType);
|
|
51
|
+
const { content, contentType, isTruncated, isLoading, error } = useArtifactContentById(canFetchContent ? id : null,
|
|
52
|
+
// Artifacts are immutable after creation (append-only store), so the id
|
|
53
|
+
// alone is a safe cache identity — no contentHash needed.
|
|
54
|
+
canFetchContent ? `workflow-artifact-doc:${id}` : undefined);
|
|
55
|
+
const { download, isDownloading } = useWorkflowArtifactDownload();
|
|
56
|
+
const [copied, setCopied] = useState(false);
|
|
57
|
+
const copy = useCallback(() => {
|
|
58
|
+
if (!content)
|
|
59
|
+
return;
|
|
60
|
+
void navigator.clipboard.writeText(content).then(() => {
|
|
61
|
+
setCopied(true);
|
|
62
|
+
setTimeout(() => setCopied(false), COPIED_FEEDBACK_MS);
|
|
63
|
+
});
|
|
64
|
+
}, [content]);
|
|
65
|
+
const showCopy = content !== null;
|
|
66
|
+
return (_jsxs("div", { role: "article", "aria-label": `Artifact ${displayName}`, className: cn("flex min-h-0 min-w-0 flex-1 flex-col", className), children: [_jsxs("div", { className: "sticky top-0 z-10 flex min-w-0 flex-wrap items-center gap-x-3 gap-y-1.5 border-b border-border bg-background px-4 py-2", children: [_jsx("span", { className: "shrink-0 text-muted-foreground", children: _jsx(FileIcon, {}) }), _jsx("span", { className: "truncate text-sm font-medium text-foreground", children: displayName }), _jsx("span", { className: "shrink-0 text-[0.65rem] tabular-nums text-muted-foreground-faint", children: formatArtifactSize(sizeBytes) }), specContentType && (_jsx("span", { className: "shrink-0 text-[0.65rem] text-muted-foreground", children: specContentType })), _jsxs("div", { className: "ml-auto flex min-w-0 flex-wrap items-center gap-3", children: [showCopy && (_jsxs("button", { type: "button", onClick: copy, "aria-label": copied ? "Copied to clipboard" : "Copy content", className: cn("inline-flex items-center gap-1.5 text-xs font-medium transition-colors", copied
|
|
67
|
+
? "text-success"
|
|
68
|
+
: "text-muted-foreground hover:text-foreground", FOCUS_RING_CLASSES), children: [copied ? _jsx(CheckIcon, {}) : _jsx(CopyIcon, {}), copied ? "Copied" : "Copy"] })), _jsxs("button", { type: "button", onClick: () => download(id), disabled: isDownloading || !id, className: cn("inline-flex items-center gap-1.5 text-xs font-medium text-muted-foreground transition-colors hover:text-foreground disabled:opacity-50", FOCUS_RING_CLASSES), children: [_jsx(DownloadIcon, {}), isDownloading ? "Preparing\u2026" : "Download"] })] })] }), _jsx("div", { className: "min-w-0", children: _jsx(ArtifactFileContent, { fileName: displayName, content: content, contentType: contentType ?? specContentType, isLoading: isLoading, error: error, isTruncated: isTruncated }) }), _jsx("div", { role: "status", "aria-live": "polite", "aria-atomic": "true", className: "sr-only", children: copied && "Content copied to clipboard" })] }));
|
|
69
|
+
}
|
|
70
|
+
// ---------------------------------------------------------------------------
|
|
71
|
+
// Shared style constants
|
|
72
|
+
// ---------------------------------------------------------------------------
|
|
73
|
+
const FOCUS_RING_CLASSES = "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:rounded-sm";
|
|
74
|
+
// ---------------------------------------------------------------------------
|
|
75
|
+
// Inline SVG icons (SDK independence — no lucide dependency)
|
|
76
|
+
// ---------------------------------------------------------------------------
|
|
77
|
+
function FileIcon() {
|
|
78
|
+
return (_jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: [_jsx("path", { d: "M9.5 1.5H5C4.17 1.5 3.5 2.17 3.5 3V13C3.5 13.83 4.17 14.5 5 14.5H11C11.83 14.5 12.5 13.83 12.5 13V4.5L9.5 1.5Z" }), _jsx("path", { d: "M9.5 1.5V4.5H12.5" })] }));
|
|
79
|
+
}
|
|
80
|
+
function CopyIcon() {
|
|
81
|
+
return (_jsxs("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", stroke: "currentColor", strokeWidth: "1.2", strokeLinecap: "round", strokeLinejoin: "round", className: "shrink-0", "aria-hidden": "true", children: [_jsx("rect", { x: "4", y: "4", width: "6.5", height: "6.5", rx: "1" }), _jsx("path", { d: "M8 4V2.5C8 1.95 7.55 1.5 7 1.5H2.5C1.95 1.5 1.5 1.95 1.5 2.5V7C1.5 7.55 1.95 8 2.5 8H4" })] }));
|
|
82
|
+
}
|
|
83
|
+
function DownloadIcon() {
|
|
84
|
+
return (_jsxs("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", className: "shrink-0", "aria-hidden": "true", children: [_jsx("path", { d: "M6 1.5V8.5" }), _jsx("path", { d: "M3 6L6 9L9 6" }), _jsx("path", { d: "M2 10.5H10" })] }));
|
|
85
|
+
}
|
|
86
|
+
function CheckIcon() {
|
|
87
|
+
return (_jsx("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", className: "shrink-0", "aria-hidden": "true", children: _jsx("path", { d: "M2 6.5L4.5 9L10 3" }) }));
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=WorkflowArtifactDocument.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowArtifactDocument.js","sourceRoot":"","sources":["../../src/workflow/WorkflowArtifactDocument.tsx"],"names":[],"mappings":"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"}
|
|
@@ -5,8 +5,6 @@ import type { WorkflowExecution } from "@stigmer/protos/ai/stigmer/agentic/workf
|
|
|
5
5
|
export interface WorkflowExecutionGraphProps {
|
|
6
6
|
/** ID of the workflow execution to visualize. */
|
|
7
7
|
readonly executionId: string;
|
|
8
|
-
/** Callback when a task node is selected or deselected. */
|
|
9
|
-
readonly onTaskSelect?: (taskName: string | null) => void;
|
|
10
8
|
/** When true, the viewport auto-pans to follow the currently running node. */
|
|
11
9
|
readonly followExecution?: boolean;
|
|
12
10
|
/**
|
|
@@ -21,12 +19,6 @@ export interface WorkflowExecutionGraphProps {
|
|
|
21
19
|
* Pass `undefined` (or omit) for standalone usage.
|
|
22
20
|
*/
|
|
23
21
|
readonly taskStates?: ReadonlyMap<string, DerivedTaskState>;
|
|
24
|
-
/**
|
|
25
|
-
* Callback invoked when the graph auto-selects a failed task on
|
|
26
|
-
* terminal executions. Wire this to the parent's selected-task
|
|
27
|
-
* state to keep sibling components (like the inspector) in sync.
|
|
28
|
-
*/
|
|
29
|
-
readonly onAutoSelectTask?: (taskName: string) => void;
|
|
30
22
|
/**
|
|
31
23
|
* Pixel width of a panel that **overlays** (absolutely positioned over)
|
|
32
24
|
* the graph viewport, occluding the right side. The follow-execution
|
|
@@ -47,11 +39,24 @@ export interface WorkflowExecutionGraphProps {
|
|
|
47
39
|
* @default false
|
|
48
40
|
*/
|
|
49
41
|
readonly nodesDraggable?: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Whether the graph renders its own `aria-live` region announcing task
|
|
44
|
+
* state changes. Keep the default for standalone embedding. Set `false`
|
|
45
|
+
* when a parent owns a shared announcer for multiple views of the same
|
|
46
|
+
* task states — a live region inside a CSS-hidden (`display:none`) graph
|
|
47
|
+
* is removed from the accessibility tree and would go silent, and two
|
|
48
|
+
* mounted announcers would double-announce.
|
|
49
|
+
* @default true
|
|
50
|
+
*/
|
|
51
|
+
readonly announceTaskStates?: boolean;
|
|
50
52
|
/** Additional CSS class names for the root container. */
|
|
51
53
|
readonly className?: string;
|
|
52
54
|
}
|
|
53
55
|
/**
|
|
54
|
-
* Read-only execution graph canvas for workflow executions
|
|
56
|
+
* Read-only execution graph canvas for workflow executions — a PASSIVE
|
|
57
|
+
* topology visualization (T06): status colors, live overlays, pan/zoom,
|
|
58
|
+
* and follow-the-run camera, with no node selection or click actions. A
|
|
59
|
+
* task's detail lives on its thread card, the single home for task data.
|
|
55
60
|
*
|
|
56
61
|
* Reuses the same `WorkflowNode` / `NodeShell` node rendering system from
|
|
57
62
|
* the visual editor, wrapped in execution mode context to show live status
|
|
@@ -62,10 +67,7 @@ export interface WorkflowExecutionGraphProps {
|
|
|
62
67
|
*
|
|
63
68
|
* @example
|
|
64
69
|
* ```tsx
|
|
65
|
-
* <WorkflowExecutionGraph
|
|
66
|
-
* executionId="wex_abc123"
|
|
67
|
-
* onTaskSelect={(name) => setInspectedTask(name)}
|
|
68
|
-
* />
|
|
70
|
+
* <WorkflowExecutionGraph executionId="wex_abc123" />
|
|
69
71
|
* ```
|
|
70
72
|
*/
|
|
71
73
|
export declare const WorkflowExecutionGraph: import("react").NamedExoticComponent<WorkflowExecutionGraphProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkflowExecutionGraph.d.ts","sourceRoot":"","sources":["../../src/workflow/WorkflowExecutionGraph.tsx"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AACtF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qDAAqD,CAAC;AAC5F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gEAAgE,CAAC;AAOxG,gDAAgD;AAChD,MAAM,WAAW,2BAA2B;IAC1C,iDAAiD;IACjD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,
|
|
1
|
+
{"version":3,"file":"WorkflowExecutionGraph.d.ts","sourceRoot":"","sources":["../../src/workflow/WorkflowExecutionGraph.tsx"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AACtF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qDAAqD,CAAC;AAC5F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gEAAgE,CAAC;AAOxG,gDAAgD;AAChD,MAAM,WAAW,2BAA2B;IAC1C,iDAAiD;IACjD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,8EAA8E;IAC9E,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;IACnC;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAC9C;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC5D;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC;;;;;;;;OAQG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IACtC,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAcD;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,sBAAsB,mEAQjC,CAAC;AA+PH,YAAY,EAAE,+BAA+B,EAAE,gBAAgB,EAAE,CAAC"}
|