@burdenoff/fluidgrids-fe-sdk 2026.1115.7 → 2026.1115.9
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/dist/{AiStudioPage-tzv59pH4.js → AiStudioPage-CZTaVeQE.js} +4 -4
- package/dist/{DataSinkDashboardPage-BtWSidiD.js → DataSinkDashboardPage-CPq6-jZM.js} +1 -1
- package/dist/{ExecutionDetailPage-CO3BWG_V.js → ExecutionDetailPage-d29WPJDN.js} +92 -27
- package/dist/ExecutionSettingsFields-DzKJDOjU.js +1003 -0
- package/dist/{ExecutionsListPage-CaO9A4Ph.js → ExecutionsListPage-xQthHGAJ.js} +8 -26
- package/dist/{FailureTriagePanel-CBGgU4Tl.js → FailureTriagePanel-Cka9Rc1_.js} +1 -1
- package/dist/{FluidGridsProvider-Bemnt09v.js → FluidGridsProvider-BRC0WlAa.js} +248 -3045
- package/dist/{HistoryPage-DPGYma-Z.js → HistoryPage-Drdk9j_Q.js} +1 -1
- package/dist/{InsightsPage-C6b9WuBc.js → InsightsPage-mYWZvyGR.js} +5 -5
- package/dist/{OpenTemplateAsCodeButton-BemhA1u4.js → OpenTemplateAsCodeButton-CQV-YHlJ.js} +2 -2
- package/dist/{PaidTemplateConfirm-bNEOQ_Se.js → PaidTemplateConfirm-Dog5moZa.js} +1 -1
- package/dist/{agent-form-D0uLvzx4.js → RunLogAppendedDocument-D1_BfMZa.js} +1 -82
- package/dist/{SettingsPage-CTd4LQPW.js → SettingsPage-DFnqjkpT.js} +239 -894
- package/dist/{TaskQueuesPage-ESjeGUg3.js → TaskQueuesPage-CZQUO33o.js} +1 -1
- package/dist/{TemplateCard-D7jG3RaU.js → TemplateCard-D2zt-kXW.js} +5 -5
- package/dist/{TemplateConfigurationModal-DMyuHZ3O.js → TemplateConfigurationModal-D8eQsJXJ.js} +1 -1
- package/dist/{TemplatePreview-CNbCxOsc.js → TemplatePreview-BgdkcCF-.js} +5 -5
- package/dist/{TemplatesPage-DLOVSXa9.js → TemplatesPage-t7rGU-BP.js} +10 -10
- package/dist/{WorkflowBuilder-YJlFY071.js → WorkflowBuilder-BS9kVcgU.js} +3 -3
- package/dist/{WorkflowBuilder-DhvPS34U.js → WorkflowBuilder-CtTM79lP.js} +6 -5
- package/dist/{WorkflowSearchRedirect-vyY1d6nn.js → WorkflowSearchRedirect-Bqdxr833.js} +1 -1
- package/dist/WorkflowSettingsDrawer-BiqTf_tV.js +191 -0
- package/dist/WorkflowSettingsDrawer-MVU1BKfY.d.ts +18 -0
- package/dist/{WorkflowShareDialog-qyGW0cSr.js → WorkflowShareDialog-D_G3TUGQ.js} +1 -1
- package/dist/{WorkflowsList-DQq_-Gaq.js → WorkflowsList-DjKePEwo.js} +2035 -517
- package/dist/agent-form-Bfvm32j1.js +83 -0
- package/dist/{agentTools-uC7Kw2uc.js → agentTools-DrVlHNeP.js} +1 -1
- package/dist/{ai-usage-yzPWZgAC.js → ai-usage-DhSKp0tV.js} +1 -1
- package/dist/{api-o5UUDbr8.js → api-D1cWC1yx.js} +190 -1
- package/dist/{assert-rules-FOiGC7-z.js → assert-rules-D9PNDTMK.js} +1 -1
- package/dist/{canvasNoteTools-DedWIXHZ.js → canvasNoteTools-Bo2QldkD.js} +1 -1
- package/dist/executions.js +2 -2
- package/dist/{flow-builder-BfkigZeg.js → flow-builder-CWfNAFd8.js} +73 -18
- package/dist/{graphql-types-C2heV7ot.js → graphql-types-CxkVzQqA.js} +25 -1
- package/dist/history.js +1 -1
- package/dist/{index-CIRkv8Dr.d.ts → index-C2ehY2Ld.d.ts} +180 -10
- package/dist/index.d.ts +3 -3
- package/dist/index.js +45 -42
- package/dist/{node-detail-view-B-nHEP6Z.js → node-detail-view-D_N3kLtA.js} +7 -7
- package/dist/{node-editor-tab-body-CZHYnHmY.js → node-editor-tab-body-BQ9JZa72.js} +2 -2
- package/dist/observability.d.ts +1 -1
- package/dist/observability.js +2 -2
- package/dist/{useAgentDefinitions-CVBnPMnJ.js → operations-qq_bbgXP.js} +3 -223
- package/dist/{popover-C2ohJ0Rd.js → popover-DZdTN21a.js} +3 -3
- package/dist/{quick-config-panel-ButILqM4.js → quick-config-panel-BCUY4tQy.js} +3 -3
- package/dist/relative-time-Dxt8ZIIu.js +55 -0
- package/dist/{run-list-links-sTAexiqj.js → run-list-links-BwsCiBPB.js} +1 -1
- package/dist/{run-mode-DjXIqsz3.js → run-mode-vpIlmfgY.js} +1 -1
- package/dist/{schedule-panel-BZuH1ltc.js → schedule-panel-B6FrpX9d.js} +9 -8
- package/dist/settings.d.ts +2 -2
- package/dist/settings.js +3 -2
- package/dist/{sidebar-node-editor-B0-72udR.js → sidebar-node-editor-CWrmlFlZ.js} +3 -3
- package/dist/{template-code-DrS_vlf_.js → template-code-9dL1SUji.js} +1 -1
- package/dist/templates.js +2 -2
- package/dist/{use-workflow-code-editor-DfWsRWC7.js → use-workflow-code-editor-DJMH7-Xx.js} +1 -1
- package/dist/{use-workflow-tests-CVVKinFU.js → use-workflow-tests-C4e6aJZS.js} +2 -2
- package/dist/useAgentDefinitions-DX5GvEIp.js +223 -0
- package/dist/{useDurableParity-gnKk3TyL.js → useDurableParity-BtWk4d-i.js} +1 -1
- package/dist/{useExecutions-Dwa7jo1o.js → useExecutions-C9pVKexC.js} +3 -2
- package/dist/{useGlobalStoreClient-4BH2Xbru.js → useGlobalStoreClient-C2P50Gj5.js} +1 -1
- package/dist/{useObservability-Bp4LtS1S.js → useObservability-DsHX86Xl.js} +1 -1
- package/dist/{useRunHistory-Zqh59sXN.js → useRunHistory-DUNLNOKA.js} +2 -2
- package/dist/{useWorkflowCodeExport-C93cPJQ5.js → useWorkflowCodeExport-DSbfcehl.js} +13 -3
- package/dist/{useWorkflows-BodVSonO.js → useWorkflows-B13Cp8tk.js} +90 -10
- package/dist/workflow-builder.js +4 -4
- package/dist/{workflow-description-DxiRgyxy.js → workflow-description-F3inwvof.js} +1 -1
- package/dist/workflow-pages.d.ts +2 -2
- package/dist/workflow-pages.js +14 -14
- package/dist/workflow-save-state-DUE9lNwQ.js +2813 -0
- package/dist/{workflow-transfer-BlDyxa9L.js → workflow-transfer-CsXh0mIi.js} +1 -1
- package/dist/workflows-list.js +1 -1
- package/package.json +3 -3
- package/dist/SettingsPage-DMHQFj5-.d.ts +0 -9
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
|
|
3
3
|
import { t as ThemeProvider } from "./theme-provider-B3mIuz2d.js";
|
|
4
|
-
import { a as useAiWorkflowTemplates, i as enrichDraftNodes, n as AI_DRAFT_MAX_PROMPT_LENGTH, r as draftToCanvas, t as FlowBuilderPage } from "./flow-builder-
|
|
5
|
-
import { Ct as classifyCreateRefusal, N as buildOperationSeed, St as builderPathOf, d as ensureNodeTypesLoaded } from "./FluidGridsProvider-
|
|
4
|
+
import { a as useAiWorkflowTemplates, i as enrichDraftNodes, n as AI_DRAFT_MAX_PROMPT_LENGTH, r as draftToCanvas, t as FlowBuilderPage } from "./flow-builder-CWfNAFd8.js";
|
|
5
|
+
import { Ct as classifyCreateRefusal, N as buildOperationSeed, St as builderPathOf, d as ensureNodeTypesLoaded } from "./FluidGridsProvider-BRC0WlAa.js";
|
|
6
6
|
import { n as getFluidGridsClient } from "./client-Ctl4jmY3.js";
|
|
7
7
|
import { o as throwIfResultError } from "./errors-xPZ-IbQd.js";
|
|
8
8
|
import { a as notifyFluidGridsAiCreditsUpdated, t as AiCreditBalanceSlot } from "./aiCreditsBridge-BuE92tKo.js";
|
|
9
|
-
import {
|
|
9
|
+
import { r as useCreateWorkflow } from "./useWorkflows-B13Cp8tk.js";
|
|
10
10
|
import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
|
|
11
11
|
import { t as BILLING_PLANS_PATH } from "./quota-Cdt8yz7N.js";
|
|
12
|
-
import { o as CreateWorkflowRefusalDialog } from "./workflow-description-
|
|
12
|
+
import { o as CreateWorkflowRefusalDialog } from "./workflow-description-F3inwvof.js";
|
|
13
13
|
import { s as useFluidGridsPermission, t as FLUIDGRIDS_PERMISSIONS } from "./constants-65QV61nQ.js";
|
|
14
14
|
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
15
15
|
import { useNavigate } from "react-router";
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
|
|
3
3
|
import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
|
|
4
4
|
import { n as useNavigationV2 } from "./useNavigationV2-C2WeqN7d.js";
|
|
5
|
-
import { n as useDataSinks, t as useDataSinkData } from "./useObservability-
|
|
5
|
+
import { n as useDataSinks, t as useDataSinkData } from "./useObservability-DsHX86Xl.js";
|
|
6
6
|
import { i as formatTimestamp, l as prettyJson, t as formatBytes } from "./utils-CXEodE1a.js";
|
|
7
7
|
import { useEffect, useMemo, useState } from "react";
|
|
8
8
|
import { Icon } from "@iconify/react";
|
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
|
|
3
|
-
import { c as activityOptionsFrom, d as errorAdvice, f as needsReconnect, i as useRunPending, l as ConfirmStopRunDialog, m as NodeStatusBadge, n as useDurableParityRunFields, o as ActivityOptionsFields, p as ExecutionStatusBadge, r as useRunMetadata, s as EMPTY_ACTIVITY_OPTIONS_FORM, t as setRunVersioningOverride } from "./useDurableParity-
|
|
3
|
+
import { c as activityOptionsFrom, d as errorAdvice, f as needsReconnect, i as useRunPending, l as ConfirmStopRunDialog, m as NodeStatusBadge, n as useDurableParityRunFields, o as ActivityOptionsFields, p as ExecutionStatusBadge, r as useRunMetadata, s as EMPTY_ACTIVITY_OPTIONS_FORM, t as setRunVersioningOverride } from "./useDurableParity-BtWk4d-i.js";
|
|
4
4
|
import { n as formatRunVersion, r as nodeDisplayTitle, t as buildNodeDisplayMap } from "./run-display-UjLAoYqQ.js";
|
|
5
5
|
import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
|
|
6
|
-
import {
|
|
7
|
-
import { A as describeRunError, D as runQuestions, E as isFailedStatus, O as runStepQuestions, T as failureQuestions,
|
|
6
|
+
import { s as isAgentNodeType } from "./agent-form-Bfvm32j1.js";
|
|
7
|
+
import { A as describeRunError, D as runQuestions, E as isFailedStatus, Jt as formatElapsedMs, O as runStepQuestions, T as failureQuestions, Xt as runDurationMs, Yt as nodeStateDurationMs, fn as durableInterfaceOf, hn as runSignalTargets, j as describeRunStep, k as describeRun, un as canSignalRun } from "./FluidGridsProvider-BRC0WlAa.js";
|
|
8
8
|
import { i as useFgAskable, o as useFgAskableSelection, r as useFgAskAssistant } from "./askAboutBridge-ByYsQams.js";
|
|
9
9
|
import { n as useNavigationV2 } from "./useNavigationV2-C2WeqN7d.js";
|
|
10
10
|
import { t as TechnicalDetails } from "./TechnicalDetails-xQtjIWWx.js";
|
|
11
|
-
import { _ as shortRunId, g as runChainLinks, h as parseMetadataDefinition, m as overrideRequestOf, n as useExecution, p as callbackTone, r as useExecutionActions, s as buildRetryTriggerInput, t as useAutoRefresh } from "./useExecutions-
|
|
11
|
+
import { _ as shortRunId, g as runChainLinks, h as parseMetadataDefinition, m as overrideRequestOf, n as useExecution, p as callbackTone, r as useExecutionActions, s as buildRetryTriggerInput, t as useAutoRefresh } from "./useExecutions-C9pVKexC.js";
|
|
12
12
|
import { t as RunActionsMenu } from "./RunActionsMenu-BZY4NreS.js";
|
|
13
13
|
import { n as getFluidGridsClient, r as getFluidGridsClientSafe } from "./client-Ctl4jmY3.js";
|
|
14
14
|
import { o as throwIfResultError, t as describeOperationError } from "./errors-xPZ-IbQd.js";
|
|
15
|
+
import { n as RunLogsDocument, t as RunLogAppendedDocument } from "./RunLogAppendedDocument-D1_BfMZa.js";
|
|
15
16
|
import { r as getFluidGridsConfig } from "./config-X97zrIvn.js";
|
|
16
17
|
import { i as SdkPermissionButton, s as useFluidGridsPermission, t as FLUIDGRIDS_PERMISSIONS } from "./constants-65QV61nQ.js";
|
|
17
18
|
import { r as runSuggestAnchorProps } from "./entities-I_0kio3q.js";
|
|
@@ -23,15 +24,15 @@ import { a as RUN_CONTROL_DIALOG_STYLE, c as parseJsonInput, i as NativeSelect,
|
|
|
23
24
|
import { t as useWorkflowProposal } from "./useWorkflowProposal-B9vXLKef.js";
|
|
24
25
|
import { t as WorkflowProposalCard } from "./WorkflowProposalCard-SmRv_Egf.js";
|
|
25
26
|
import { t as AiCreditBalanceSlot } from "./aiCreditsBridge-BuE92tKo.js";
|
|
26
|
-
import { a as fetchRunFailureClusters, i as dismissRunFailureCluster, r as OPEN_STATUSES, t as BUCKET_LABELS } from "./FailureTriagePanel-
|
|
27
|
-
import { a as useDurableRunFields, i as useDeterminismStatus, n as SignalRunDialog, o as useRunStackTrace, r as terminateDurableRun, s as RunHistoryView, t as useRunHistory } from "./useRunHistory-
|
|
28
|
-
import {
|
|
29
|
-
import { _ as agentTokenStreamsFor, g as agentLiveReplyState, h as useAgentTokenStream, i as canSaveRunAsTestCase, t as saveRunAsTestCase } from "./use-workflow-tests-
|
|
30
|
-
import { a as formatTokens, d as formatMicroUsd, o as modelLabel, r as aiCost } from "./ai-usage-
|
|
27
|
+
import { a as fetchRunFailureClusters, i as dismissRunFailureCluster, r as OPEN_STATUSES, t as BUCKET_LABELS } from "./FailureTriagePanel-Cka9Rc1_.js";
|
|
28
|
+
import { a as useDurableRunFields, i as useDeterminismStatus, n as SignalRunDialog, o as useRunStackTrace, r as terminateDurableRun, s as RunHistoryView, t as useRunHistory } from "./useRunHistory-DUNLNOKA.js";
|
|
29
|
+
import { HF as VersioningBehavior, L as AgentStepKind, Qd as ErrorType, kL as WorkflowUpdateWaitFor, lL as WorkflowQueryRejectCondition } from "./graphql-types-CxkVzQqA.js";
|
|
30
|
+
import { _ as agentTokenStreamsFor, g as agentLiveReplyState, h as useAgentTokenStream, i as canSaveRunAsTestCase, t as saveRunAsTestCase } from "./use-workflow-tests-C4e6aJZS.js";
|
|
31
|
+
import { a as formatTokens, d as formatMicroUsd, o as modelLabel, r as aiCost } from "./ai-usage-DhSKp0tV.js";
|
|
31
32
|
import { _ as useWorkflowTestsEnabled, l as useDurableFunctionNodesEnabled, m as usePhaseCFlags, u as useDurableParityEnabled } from "./feature-flags-B_b8PJ6Z.js";
|
|
32
|
-
import { A as
|
|
33
|
+
import { A as resetRunToLastCleanTask, C as fetchSignalTokens, D as queryRun, H as upsertRunSearchAttributes, O as resetActivities, P as sendRunUpdate, T as pauseActivities, V as updateActivityOptions, _ as fetchPauseRules, b as fetchRunHistoryArchive, d as failActivityById, g as fetchCodecServerSettings, i as completeActivityById, j as revokeSignalToken, k as resetRun, s as createSignalToken, v as fetchRunArchive, x as fetchRunUpdate, y as fetchRunControlFields, z as unpauseActivities } from "./api-D1cWC1yx.js";
|
|
33
34
|
import { a as fetchTaskQueueStats } from "./api-CEzqoN5H.js";
|
|
34
|
-
import {
|
|
35
|
+
import { y as useWorkflowVersions } from "./useWorkflows-B13Cp8tk.js";
|
|
35
36
|
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
36
37
|
import { Link, useNavigate, useParams, useSearchParams } from "react-router";
|
|
37
38
|
import { Icon } from "@iconify/react";
|
|
@@ -7143,25 +7144,33 @@ function EncodedPayloadChip({ payload, codecServer, fetchImpl }) {
|
|
|
7143
7144
|
}
|
|
7144
7145
|
|
|
7145
7146
|
// src/modules/run-control/components/ArchivedRunView.tsx
|
|
7147
|
+
/** An ISO timestamp as the viewer's local date and time; the input when it does not parse. */
|
|
7148
|
+
function localTime(iso) {
|
|
7149
|
+
if (!iso) return "";
|
|
7150
|
+
const date = new Date(iso);
|
|
7151
|
+
return Number.isNaN(date.getTime()) ? iso : date.toLocaleString();
|
|
7152
|
+
}
|
|
7146
7153
|
function ArchivedRunView({ runId, enabled, fallback, backLink, onViewChildRun }) {
|
|
7147
7154
|
const tr = useTr();
|
|
7148
|
-
const
|
|
7149
|
-
const
|
|
7155
|
+
const lookup = useResource(`archived-run:${runId}`, enabled, async () => ({ archive: await fetchRunArchive(runId) }));
|
|
7156
|
+
const archive = lookup.data?.archive ?? null;
|
|
7157
|
+
const hasEvents = (archive?.eventCount ?? 0) > 0;
|
|
7158
|
+
const readStatus = useResource(`archived-run-read:${runId}`, enabled && hasEvents, () => fetchRunHistoryArchive(runId));
|
|
7150
7159
|
const history = useRunHistory(runId, {
|
|
7151
|
-
enabled:
|
|
7160
|
+
enabled: enabled && hasEvents,
|
|
7152
7161
|
live: false
|
|
7153
7162
|
});
|
|
7154
7163
|
if (!enabled) return /* @__PURE__ */ jsx(Fragment$1, { children: fallback });
|
|
7155
|
-
if (
|
|
7164
|
+
if (lookup.error) return /* @__PURE__ */ jsx(Fragment$1, { children: fallback });
|
|
7165
|
+
if (!lookup.data) return /* @__PURE__ */ jsxs("div", {
|
|
7156
7166
|
className: "animate-pulse p-4 sm:p-6",
|
|
7157
7167
|
"data-testid": "archived-run-loading",
|
|
7158
7168
|
"aria-busy": "true",
|
|
7159
7169
|
children: [/* @__PURE__ */ jsx("div", { className: "mb-4 h-8 w-48 rounded bg-surface-sunken" }), /* @__PURE__ */ jsx("div", { className: "h-64 rounded-lg bg-surface-sunken" })]
|
|
7160
7170
|
});
|
|
7161
|
-
if (!
|
|
7162
|
-
const ref = archive.
|
|
7163
|
-
const
|
|
7164
|
-
const unreadable = !history.loading && !history.error && history.events.length === 0 && archivedCount > 0;
|
|
7171
|
+
if (!archive) return /* @__PURE__ */ jsx(Fragment$1, { children: fallback });
|
|
7172
|
+
const ref = archive.archiveRef;
|
|
7173
|
+
const readError = readStatus.data?.archiveReadError ?? null;
|
|
7165
7174
|
return /* @__PURE__ */ jsxs("div", {
|
|
7166
7175
|
className: "space-y-4 p-4 sm:p-6",
|
|
7167
7176
|
"data-testid": "archived-run",
|
|
@@ -7180,6 +7189,56 @@ function ArchivedRunView({ runId, enabled, fallback, backLink, onViewChildRun })
|
|
|
7180
7189
|
}), tr("fluidgrids.runControl.archive.badge", "Archived")]
|
|
7181
7190
|
})]
|
|
7182
7191
|
}),
|
|
7192
|
+
/* @__PURE__ */ jsxs("dl", {
|
|
7193
|
+
className: "grid grid-cols-1 gap-x-6 gap-y-1 text-sm sm:grid-cols-2",
|
|
7194
|
+
"data-testid": "archived-run-facts",
|
|
7195
|
+
children: [
|
|
7196
|
+
/* @__PURE__ */ jsxs("div", {
|
|
7197
|
+
className: "flex gap-2",
|
|
7198
|
+
children: [/* @__PURE__ */ jsx("dt", {
|
|
7199
|
+
className: "text-text-secondary",
|
|
7200
|
+
children: tr("fluidgrids.runControl.archive.workflow", "Workflow")
|
|
7201
|
+
}), /* @__PURE__ */ jsxs("dd", {
|
|
7202
|
+
className: "font-mono text-text-primary",
|
|
7203
|
+
children: [
|
|
7204
|
+
archive.workflowKey,
|
|
7205
|
+
" ",
|
|
7206
|
+
archive.version
|
|
7207
|
+
]
|
|
7208
|
+
})]
|
|
7209
|
+
}),
|
|
7210
|
+
/* @__PURE__ */ jsxs("div", {
|
|
7211
|
+
className: "flex gap-2",
|
|
7212
|
+
children: [/* @__PURE__ */ jsx("dt", {
|
|
7213
|
+
className: "text-text-secondary",
|
|
7214
|
+
children: tr("fluidgrids.runControl.archive.status", "Status")
|
|
7215
|
+
}), /* @__PURE__ */ jsx("dd", {
|
|
7216
|
+
className: "text-text-primary",
|
|
7217
|
+
children: archive.status
|
|
7218
|
+
})]
|
|
7219
|
+
}),
|
|
7220
|
+
/* @__PURE__ */ jsxs("div", {
|
|
7221
|
+
className: "flex gap-2",
|
|
7222
|
+
children: [/* @__PURE__ */ jsx("dt", {
|
|
7223
|
+
className: "text-text-secondary",
|
|
7224
|
+
children: tr("fluidgrids.runControl.archive.archivedAt", "Archived at")
|
|
7225
|
+
}), /* @__PURE__ */ jsx("dd", {
|
|
7226
|
+
className: "text-text-primary",
|
|
7227
|
+
children: localTime(archive.archivedAt)
|
|
7228
|
+
})]
|
|
7229
|
+
}),
|
|
7230
|
+
/* @__PURE__ */ jsxs("div", {
|
|
7231
|
+
className: "flex gap-2",
|
|
7232
|
+
children: [/* @__PURE__ */ jsx("dt", {
|
|
7233
|
+
className: "text-text-secondary",
|
|
7234
|
+
children: tr("fluidgrids.runControl.archive.events", "Events archived")
|
|
7235
|
+
}), /* @__PURE__ */ jsx("dd", {
|
|
7236
|
+
className: "text-text-primary",
|
|
7237
|
+
children: archive.eventCount
|
|
7238
|
+
})]
|
|
7239
|
+
})
|
|
7240
|
+
]
|
|
7241
|
+
}),
|
|
7183
7242
|
/* @__PURE__ */ jsxs("div", {
|
|
7184
7243
|
role: "status",
|
|
7185
7244
|
className: "flex items-start gap-2 rounded-md border border-border-default bg-surface-elevated p-3 text-sm text-text-primary",
|
|
@@ -7190,7 +7249,11 @@ function ArchivedRunView({ runId, enabled, fallback, backLink, onViewChildRun })
|
|
|
7190
7249
|
className: "mt-0.5 shrink-0 text-text-secondary"
|
|
7191
7250
|
}), /* @__PURE__ */ jsx("span", { children: tr("fluidgrids.runControl.archive.readBack", "Retention purged this run after archiving it to {{ref}}. Its history below is read back from the archive.", { ref }) })]
|
|
7192
7251
|
}),
|
|
7193
|
-
|
|
7252
|
+
!hasEvents ? /* @__PURE__ */ jsx("p", {
|
|
7253
|
+
className: "text-sm text-text-secondary",
|
|
7254
|
+
"data-testid": "archived-run-no-events",
|
|
7255
|
+
children: tr("fluidgrids.runControl.archive.noEvents", "This run archived no history events. A canvas run keeps its node executions in nodes.jsonl.gz next to the archive.")
|
|
7256
|
+
}) : readError ? /* @__PURE__ */ jsxs("div", {
|
|
7194
7257
|
role: "alert",
|
|
7195
7258
|
className: "flex items-start gap-2 rounded-md border border-status-warning-border bg-status-warning-bg-subtle p-3 text-sm text-status-warning-text",
|
|
7196
7259
|
"data-testid": "archived-run-unreadable",
|
|
@@ -7198,13 +7261,14 @@ function ArchivedRunView({ runId, enabled, fallback, backLink, onViewChildRun })
|
|
|
7198
7261
|
icon: "mdi:lock-outline",
|
|
7199
7262
|
width: 18,
|
|
7200
7263
|
className: "mt-0.5 shrink-0"
|
|
7201
|
-
}), /* @__PURE__ */ jsx("span", { children: tr("fluidgrids.runControl.archive.
|
|
7202
|
-
count:
|
|
7264
|
+
}), /* @__PURE__ */ jsx("span", { children: tr("fluidgrids.runControl.archive.unreadableReason", "{{count}} events were archived, but they could not be read back: {{reason}}. You can also read the files in {{ref}} directly.", {
|
|
7265
|
+
count: archive.eventCount,
|
|
7266
|
+
reason: readError,
|
|
7203
7267
|
ref
|
|
7204
7268
|
}) })]
|
|
7205
7269
|
}) : /* @__PURE__ */ jsx(RunHistoryView, {
|
|
7206
7270
|
events: history.events,
|
|
7207
|
-
loading: history.loading,
|
|
7271
|
+
loading: history.loading || readStatus.loading,
|
|
7208
7272
|
error: history.error,
|
|
7209
7273
|
active: false,
|
|
7210
7274
|
streaming: false,
|
|
@@ -8050,6 +8114,7 @@ function ExecutionDetailPage() {
|
|
|
8050
8114
|
...durableFields.fields
|
|
8051
8115
|
} : baseExecution, [baseExecution, durableFields.fields]);
|
|
8052
8116
|
const refetchDurableFields = durableFields.refetch;
|
|
8117
|
+
const loadedRunId = runId && baseExecution?.id === runId ? runId : void 0;
|
|
8053
8118
|
const parityFields = useDurableParityRunFields(runId, parityEnabled);
|
|
8054
8119
|
const refetchParityFields = parityFields.refetch;
|
|
8055
8120
|
const refetch = useCallback(async () => {
|
|
@@ -8064,8 +8129,8 @@ function ExecutionDetailPage() {
|
|
|
8064
8129
|
refetchParityFields
|
|
8065
8130
|
]);
|
|
8066
8131
|
const runCanChange = execution?.status === "RUNNING" || execution?.status === "PENDING" || execution?.status === "WAITING";
|
|
8067
|
-
const { items: humanRequests, loadedAt: humanRequestsLoadedAt, error: humanRequestsError, refetch: refetchHumanRequests } = useRunHumanRequests(
|
|
8068
|
-
const { decisions: policyDecisions, decide: decidePolicyApproval } = useRunPolicyDecisions(
|
|
8132
|
+
const { items: humanRequests, loadedAt: humanRequestsLoadedAt, error: humanRequestsError, refetch: refetchHumanRequests } = useRunHumanRequests(loadedRunId, { pollIntervalMs: runCanChange ? 1e4 : 0 });
|
|
8133
|
+
const { decisions: policyDecisions, decide: decidePolicyApproval } = useRunPolicyDecisions(loadedRunId, { pollIntervalMs: runCanChange ? 1e4 : 0 });
|
|
8069
8134
|
const awaitingPerson = humanRequests.some((request) => request.status === "PENDING");
|
|
8070
8135
|
const [waitingSeenAt, setWaitingSeenAt] = useState(null);
|
|
8071
8136
|
const isWaiting = execution?.status === "WAITING";
|
|
@@ -8099,8 +8164,8 @@ function ExecutionDetailPage() {
|
|
|
8099
8164
|
useAutoRefresh(useCallback(() => {
|
|
8100
8165
|
refetch();
|
|
8101
8166
|
}, [refetch]), autoRefreshEnabled && isActive, 2e3);
|
|
8102
|
-
const hierarchy = useRunHierarchy(
|
|
8103
|
-
const runLogs = useRunLogs(
|
|
8167
|
+
const hierarchy = useRunHierarchy(loadedRunId, { live: isActive });
|
|
8168
|
+
const runLogs = useRunLogs(loadedRunId, {
|
|
8104
8169
|
live: isActive,
|
|
8105
8170
|
minLevel: minLogLevel
|
|
8106
8171
|
});
|