@dxos/react-ui-trace 0.11.1 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/lib/index.mjs +1722 -561
- package/dist/lib/index.mjs.map +1 -1
- package/dist/lib/testing.mjs +9 -8
- package/dist/lib/testing.mjs.map +1 -1
- package/dist/lib/translations.mjs +5 -0
- package/dist/lib/translations.mjs.map +1 -1
- package/dist/types/src/components/Gantt/Gantt.d.ts +109 -24
- package/dist/types/src/components/Gantt/Gantt.d.ts.map +1 -1
- package/dist/types/src/components/Gantt/Gantt.stories.d.ts +73 -3
- package/dist/types/src/components/Gantt/Gantt.stories.d.ts.map +1 -1
- package/dist/types/src/components/Gantt/gantt-rows.d.ts +26 -0
- package/dist/types/src/components/Gantt/gantt-rows.d.ts.map +1 -0
- package/dist/types/src/components/Gantt/gantt-rows.test.d.ts +2 -0
- package/dist/types/src/components/Gantt/gantt-rows.test.d.ts.map +1 -0
- package/dist/types/src/components/Gantt/gantt-scale.d.ts +57 -0
- package/dist/types/src/components/Gantt/gantt-scale.d.ts.map +1 -0
- package/dist/types/src/components/Gantt/gantt-scale.test.d.ts +2 -0
- package/dist/types/src/components/Gantt/gantt-scale.test.d.ts.map +1 -0
- package/dist/types/src/components/Gantt/index.d.ts +2 -0
- package/dist/types/src/components/Gantt/index.d.ts.map +1 -1
- package/dist/types/src/components/Gantt/useEnter.d.ts +13 -0
- package/dist/types/src/components/Gantt/useEnter.d.ts.map +1 -0
- package/dist/types/src/components/Gantt/useRangeTween.d.ts +12 -0
- package/dist/types/src/components/Gantt/useRangeTween.d.ts.map +1 -0
- package/dist/types/src/components/ProcessTree/ProcessTree.d.ts +3 -3
- package/dist/types/src/components/ProcessTree/ProcessTree.d.ts.map +1 -1
- package/dist/types/src/components/ProcessTree/ProcessTree.stories.d.ts.map +1 -1
- package/dist/types/src/components/Timeline/Timeline.d.ts +10 -2
- package/dist/types/src/components/Timeline/Timeline.d.ts.map +1 -1
- package/dist/types/src/components/Timeline/Timeline.stories.d.ts +8 -4
- package/dist/types/src/components/Timeline/Timeline.stories.d.ts.map +1 -1
- package/dist/types/src/components/Timeline/timeline-layout.d.ts +35 -0
- package/dist/types/src/components/Timeline/timeline-layout.d.ts.map +1 -0
- package/dist/types/src/components/Timeline/timeline-layout.test.d.ts +2 -0
- package/dist/types/src/components/Timeline/timeline-layout.test.d.ts.map +1 -0
- package/dist/types/src/components/TracePanel/SpanTreeView.d.ts +15 -0
- package/dist/types/src/components/TracePanel/SpanTreeView.d.ts.map +1 -0
- package/dist/types/src/components/TracePanel/TracePanel.d.ts +3 -3
- package/dist/types/src/components/TracePanel/TracePanel.d.ts.map +1 -1
- package/dist/types/src/components/TracePanel/TracePanel.stories.d.ts +46 -0
- package/dist/types/src/components/TracePanel/TracePanel.stories.d.ts.map +1 -0
- package/dist/types/src/components/TracePanel/trace-filter.d.ts +7 -2
- package/dist/types/src/components/TracePanel/trace-filter.d.ts.map +1 -1
- package/dist/types/src/components/TracePanel/useTraceMenu.d.ts.map +1 -1
- package/dist/types/src/execution-graph/execution-graph.d.ts +1 -1
- package/dist/types/src/execution-graph/execution-graph.d.ts.map +1 -1
- package/dist/types/src/hooks/useExecutionGraph.d.ts +2 -2
- package/dist/types/src/hooks/useExecutionGraph.d.ts.map +1 -1
- package/dist/types/src/hooks/useSessionTimeline.d.ts +1 -1
- package/dist/types/src/hooks/useSessionTimeline.d.ts.map +1 -1
- package/dist/types/src/hooks/useTraceMessages.d.ts +1 -1
- package/dist/types/src/hooks/useTraceMessages.d.ts.map +1 -1
- package/dist/types/src/session-timeline/TaskHistory.stories.d.ts +12 -0
- package/dist/types/src/session-timeline/TaskHistory.stories.d.ts.map +1 -0
- package/dist/types/src/session-timeline/gantt-mapping.d.ts +14 -0
- package/dist/types/src/session-timeline/gantt-mapping.d.ts.map +1 -0
- package/dist/types/src/session-timeline/gantt-mapping.test.d.ts +2 -0
- package/dist/types/src/session-timeline/gantt-mapping.test.d.ts.map +1 -0
- package/dist/types/src/session-timeline/index.d.ts +1 -0
- package/dist/types/src/session-timeline/index.d.ts.map +1 -1
- package/dist/types/src/session-timeline/session-timeline.d.ts +17 -2
- package/dist/types/src/session-timeline/session-timeline.d.ts.map +1 -1
- package/dist/types/src/session-timeline/types.d.ts +32 -0
- package/dist/types/src/session-timeline/types.d.ts.map +1 -1
- package/dist/types/src/testing/simulated-agent.d.ts +5 -4
- package/dist/types/src/testing/simulated-agent.d.ts.map +1 -1
- package/dist/types/src/testing/test-trace.d.ts +2 -2
- package/dist/types/src/testing/test-trace.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +5 -0
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +30 -26
- package/src/components/Gantt/Gantt.stories.tsx +914 -96
- package/src/components/Gantt/Gantt.tsx +964 -261
- package/src/components/Gantt/gantt-rows.test.ts +123 -0
- package/src/components/Gantt/gantt-rows.ts +71 -0
- package/src/components/Gantt/gantt-scale.test.ts +105 -0
- package/src/components/Gantt/gantt-scale.ts +143 -0
- package/src/components/Gantt/index.ts +2 -0
- package/src/components/Gantt/useEnter.ts +33 -0
- package/src/components/Gantt/useRangeTween.ts +61 -0
- package/src/components/ProcessTree/ProcessTree.stories.tsx +2 -3
- package/src/components/ProcessTree/ProcessTree.tsx +99 -90
- package/src/components/Timeline/Timeline.stories.tsx +110 -22
- package/src/components/Timeline/Timeline.tsx +319 -271
- package/src/components/Timeline/timeline-layout.test.ts +177 -0
- package/src/components/Timeline/timeline-layout.ts +153 -0
- package/src/components/TracePanel/SpanTreeView.tsx +39 -0
- package/src/components/TracePanel/TracePanel.stories.tsx +106 -0
- package/src/components/TracePanel/TracePanel.tsx +113 -106
- package/src/components/TracePanel/trace-filter.test.ts +31 -2
- package/src/components/TracePanel/trace-filter.ts +28 -3
- package/src/components/TracePanel/useTraceMenu.ts +0 -1
- package/src/execution-graph/SPEC.md +10 -10
- package/src/execution-graph/execution-graph.test.ts +16 -15
- package/src/execution-graph/execution-graph.ts +108 -60
- package/src/execution-graph/pending-block-status.ts +1 -1
- package/src/execution-graph/sub-agent-delegation.test.ts +1 -1
- package/src/hooks/useExecutionGraph.ts +14 -11
- package/src/hooks/useSessionTimeline.ts +35 -9
- package/src/hooks/useTraceMessages.ts +1 -1
- package/src/session-timeline/TaskHistory.stories.tsx +142 -0
- package/src/session-timeline/gantt-mapping.test.ts +118 -0
- package/src/session-timeline/gantt-mapping.ts +158 -0
- package/src/session-timeline/index.ts +1 -0
- package/src/session-timeline/session-timeline.test.ts +585 -35
- package/src/session-timeline/session-timeline.ts +433 -62
- package/src/session-timeline/types.ts +14 -0
- package/src/testing/simulated-agent.ts +17 -16
- package/src/testing/test-trace.ts +14 -12
- package/src/translations.ts +8 -2
- package/dist/types/src/execution-graph/remote-snapshot.test.d.ts +0 -2
- package/dist/types/src/execution-graph/remote-snapshot.test.d.ts.map +0 -1
- package/src/execution-graph/remote-snapshot.test.ts +0 -116
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timeline-layout.test.d.ts","sourceRoot":"","sources":["../../../../../src/components/Timeline/timeline-layout.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type * as Util from '@dxos/react-ui/Util';
|
|
3
|
+
export type SpanTreeViewProps = Util.ThemedClassName<{
|
|
4
|
+
spanTree: unknown;
|
|
5
|
+
}>;
|
|
6
|
+
/**
|
|
7
|
+
* The trace's span tree as read-only JSON.
|
|
8
|
+
*
|
|
9
|
+
* CodeMirror puts only the lines in view into the DOM and parses the rest in time-sliced chunks, so
|
|
10
|
+
* showing a tree stops costing what the tree is worth — a highlighter renders every one of its lines
|
|
11
|
+
* in one synchronous pass. `TextEditor` rather than `Editor.View`: this pane has no toolbar, so the
|
|
12
|
+
* compound component's context would only be wiring nothing reads.
|
|
13
|
+
*/
|
|
14
|
+
export declare const SpanTreeView: ({ classNames, spanTree }: SpanTreeViewProps) => React.JSX.Element;
|
|
15
|
+
//# sourceMappingURL=SpanTreeView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpanTreeView.d.ts","sourceRoot":"","sources":["../../../../../src/components/TracePanel/SpanTreeView.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAIvC,OAAO,KAAK,KAAK,IAAI,MAAM,qBAAqB,CAAC;AAIjD,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,eAAe,CAAC;IACnD,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC,CAAC;AAEH;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,6BAA8B,iBAAiB,sBAcvE,CAAC"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type * as Process from '@dxos/compute/Process';
|
|
3
|
-
import
|
|
3
|
+
import * as Util from '@dxos/react-ui/Util';
|
|
4
4
|
import { type ExecutionGraph } from '../../execution-graph/index.ts';
|
|
5
5
|
import { type ProcessTreeProps } from '../ProcessTree/index.ts';
|
|
6
6
|
import { type ProcessEnvironment } from './trace-filter.ts';
|
|
7
|
-
export type TracePanelProps = ThemedClassName<Pick<ProcessTreeProps, 'resolveLabel' | 'selected' | 'onSelectedChange' | 'onProcessTerminate'> & {
|
|
7
|
+
export type TracePanelProps = Util.ThemedClassName<Pick<ProcessTreeProps, 'resolveLabel' | 'selected' | 'onSelectedChange' | 'onProcessTerminate'> & {
|
|
8
8
|
/** The live process tree; narrowed here by `environments`. */
|
|
9
|
-
processes: readonly Process.
|
|
9
|
+
processes: readonly Process.Process[];
|
|
10
10
|
/** The trace as a commit graph, built by `useExecutionGraph` (already narrowed to `selected`). */
|
|
11
11
|
graph: ExecutionGraph;
|
|
12
12
|
/** Process environments shown; the toolbar's funnel edits it. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TracePanel.d.ts","sourceRoot":"","sources":["../../../../../src/components/TracePanel/TracePanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA2D,MAAM,OAAO,CAAC;AAEhF,OAAO,KAAK,KAAK,OAAO,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"TracePanel.d.ts","sourceRoot":"","sources":["../../../../../src/components/TracePanel/TracePanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA2D,MAAM,OAAO,CAAC;AAEhF,OAAO,KAAK,KAAK,OAAO,MAAM,uBAAuB,CAAC;AAOtD,OAAO,KAAK,IAAI,MAAM,qBAAqB,CAAC;AAG5C,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAErE,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG7E,OAAO,EAAE,KAAK,kBAAkB,EAAmB,MAAM,mBAAmB,CAAC;AAG7E,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAChD,IAAI,CAAC,gBAAgB,EAAE,cAAc,GAAG,UAAU,GAAG,kBAAkB,GAAG,oBAAoB,CAAC,GAAG;IAChG,8DAA8D;IAC9D,SAAS,EAAE,SAAS,OAAO,CAAC,OAAO,EAAE,CAAC;IACtC,kGAAkG;IAClG,KAAK,EAAE,cAAc,CAAC;IACtB,iEAAiE;IACjE,YAAY,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC5C,oBAAoB,EAAE,CAAC,YAAY,EAAE,kBAAkB,EAAE,KAAK,IAAI,CAAC;IACnE,4DAA4D;IAC5D,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,iGAAiG;IACjG,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC,CACF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,UAAU;;6GAkKtB,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { type StoryObj } from '@storybook/react-vite';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { type TracePanelProps } from './TracePanel.tsx';
|
|
4
|
+
type StoryProps = Pick<TracePanelProps, 'debug'>;
|
|
5
|
+
/** The story holds what the app's container would: the selection, the environment filter, the graph. */
|
|
6
|
+
declare const DefaultStory: ({ debug }: StoryProps) => React.JSX.Element;
|
|
7
|
+
declare const meta: {
|
|
8
|
+
title: string;
|
|
9
|
+
component: typeof DefaultStory;
|
|
10
|
+
decorators: import("@storybook/react").Decorator[];
|
|
11
|
+
parameters: {
|
|
12
|
+
layout: string;
|
|
13
|
+
translations: [{
|
|
14
|
+
readonly 'en-US': {
|
|
15
|
+
readonly "@dxos/react-ui-trace": {
|
|
16
|
+
readonly 'no-commits.message': 'No events yet';
|
|
17
|
+
readonly 'gantt-axis-time.label': 'Fit to time';
|
|
18
|
+
readonly 'gantt-axis-unit.label': 'One step per event';
|
|
19
|
+
readonly 'gantt-legend-stats.label': 'Show usage';
|
|
20
|
+
readonly 'gantt-legend-title.label': 'Show titles';
|
|
21
|
+
readonly 'gantt-chart.label': 'Timeline';
|
|
22
|
+
readonly 'trace.label': 'Trace';
|
|
23
|
+
readonly 'trace-processes.label': 'Processes';
|
|
24
|
+
readonly 'trace-details.label': 'Details';
|
|
25
|
+
readonly 'trace-filter.menu': 'Filter processes';
|
|
26
|
+
readonly 'trace-clear-selection.label': 'Clear process selection';
|
|
27
|
+
readonly 'trace-filter-all.label': 'Show all';
|
|
28
|
+
readonly 'trace-filter-none.label': 'Hide all';
|
|
29
|
+
readonly 'trace-environment-app.label': 'App';
|
|
30
|
+
readonly 'trace-environment-space.label': 'Space';
|
|
31
|
+
readonly 'trace-environment-conversation.label': 'Conversation';
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
}];
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
export default meta;
|
|
38
|
+
type Story = StoryObj<typeof meta>;
|
|
39
|
+
/**
|
|
40
|
+
* A captured sub-agent delegation: the supervisor, its tool calls and the spawned sub-agent, as the
|
|
41
|
+
* process tree and the commit graph. Click a process to narrow the trace to it; ⌘-click adds one.
|
|
42
|
+
*/
|
|
43
|
+
export declare const Default: Story;
|
|
44
|
+
/** The span tree the graph was built from, in place of the timeline. */
|
|
45
|
+
export declare const Debug: Story;
|
|
46
|
+
//# sourceMappingURL=TracePanel.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TracePanel.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/TracePanel/TracePanel.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAA4B,MAAM,OAAO,CAAC;AAYjD,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAqCpE,KAAK,UAAU,GAAG,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;AAEjD,wGAAwG;AACxG,QAAA,MAAM,YAAY,cAAe,UAAU,sBAyB1C,CAAC;AAEF,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKkB,CAAC;eAEd,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC;;;GAGG;AACH,eAAO,MAAM,OAAO,EAAE,KAAoB,CAAC;AAE3C,wEAAwE;AACxE,eAAO,MAAM,KAAK,EAAE,KAEnB,CAAC"}
|
|
@@ -20,8 +20,8 @@ export declare const ALL_PROCESS_ENVIRONMENTS: readonly ProcessEnvironment[];
|
|
|
20
20
|
export declare const DEFAULT_PROCESS_ENVIRONMENTS: readonly ProcessEnvironment[];
|
|
21
21
|
export declare const environmentIcon: (environment: ProcessEnvironment) => string;
|
|
22
22
|
/** `conversation` outranks `space`, since a conversation always runs inside one. */
|
|
23
|
-
export declare const processEnvironment: (process: Process.
|
|
24
|
-
export declare const filterProcesses: (processes: readonly Process.
|
|
23
|
+
export declare const processEnvironment: (process: Process.Process) => ProcessEnvironment;
|
|
24
|
+
export declare const filterProcesses: (processes: readonly Process.Process[], selected: readonly ProcessEnvironment[]) => readonly Process.Process[];
|
|
25
25
|
/** Toggles an environment, preserving the canonical order. */
|
|
26
26
|
export declare const toggleProcessEnvironment: (selected: readonly ProcessEnvironment[], environment: ProcessEnvironment) => ProcessEnvironment[];
|
|
27
27
|
/**
|
|
@@ -35,5 +35,10 @@ export declare const parseProcessEnvironments: (selected: readonly string[] | un
|
|
|
35
35
|
* runs as a child of the process it serves, so its events are that process's work. An empty
|
|
36
36
|
* selection is no filter.
|
|
37
37
|
*/
|
|
38
|
+
/**
|
|
39
|
+
* Narrows the process tree to the selected processes and their descendants, the process-side twin of
|
|
40
|
+
* {@link filterTraceMessages}: a running child of a picked process is that process's live work.
|
|
41
|
+
*/
|
|
42
|
+
export declare const filterProcessesBySelection: (processes: readonly Process.Process[], selected: readonly string[]) => readonly Process.Process[];
|
|
38
43
|
export declare const filterTraceMessages: (messages: readonly Trace.Message[], selected: readonly string[]) => readonly Trace.Message[];
|
|
39
44
|
//# sourceMappingURL=trace-filter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace-filter.d.ts","sourceRoot":"","sources":["../../../../../src/components/TracePanel/trace-filter.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,OAAO,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,KAAK,KAAK,MAAM,qBAAqB,CAAC;AAElD;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"trace-filter.d.ts","sourceRoot":"","sources":["../../../../../src/components/TracePanel/trace-filter.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,OAAO,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,KAAK,KAAK,MAAM,qBAAqB,CAAC;AAElD;;;;GAIG;AAEH,eAAO,MAAM,kBAAkB;IAC7B,sFAAsF;aACtF,GAAG,EAAE,KAAK;IACV,8DAA8D;aAC9D,KAAK,EAAE,OAAO;IACd,6EAA6E;aAC7E,YAAY,EAAE,cAAc;CACpB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,OAAO,kBAAkB,CAAC,CAAC;AAE9F,sGAAsG;AACtG,eAAO,MAAM,wBAAwB,EAAE,SAAS,kBAAkB,EAIjE,CAAC;AAEF,yGAAyG;AACzG,eAAO,MAAM,4BAA4B,EAAE,SAAS,kBAAkB,EAGrE,CAAC;AAQF,eAAO,MAAM,eAAe,gBAAiB,kBAAkB,KAAG,MAAwC,CAAC;AAE3G,oFAAoF;AACpF,eAAO,MAAM,kBAAkB,YAAa,OAAO,CAAC,OAAO,KAAG,kBAQ7D,CAAC;AAEF,eAAO,MAAM,eAAe,cACf,SAAS,OAAO,CAAC,OAAO,EAAE,YAC3B,SAAS,kBAAkB,EAAE,KACtC,SAAS,OAAO,CAAC,OAAO,EAO1B,CAAC;AAEF,8DAA8D;AAC9D,eAAO,MAAM,wBAAwB,aACzB,SAAS,kBAAkB,EAAE,eAC1B,kBAAkB,KAC9B,kBAAkB,EAGlB,CAAC;AAEJ;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,aAAc,SAAS,MAAM,EAAE,GAAG,SAAS,KAAG,SAAS,kBAAkB,EAGxB,CAAC;AAEvF;;;;GAIG;AACH;;;GAGG;AACH,eAAO,MAAM,0BAA0B,cAC1B,SAAS,OAAO,CAAC,OAAO,EAAE,YAC3B,SAAS,MAAM,EAAE,KAC1B,SAAS,OAAO,CAAC,OAAO,EAe1B,CAAC;AAEF,eAAO,MAAM,mBAAmB,aACpB,SAAS,KAAK,CAAC,OAAO,EAAE,YACxB,SAAS,MAAM,EAAE,KAC1B,SAAS,KAAK,CAAC,OAAO,EAyBxB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTraceMenu.d.ts","sourceRoot":"","sources":["../../../../../src/components/TracePanel/useTraceMenu.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useTraceMenu.d.ts","sourceRoot":"","sources":["../../../../../src/components/TracePanel/useTraceMenu.ts"],"names":[],"mappings":"AASA,OAAO,EAEL,KAAK,kBAAkB,EAGxB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,MAAM,mBAAmB,GAAG;IAChC,4CAA4C;IAC5C,QAAQ,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACxC,gBAAgB,EAAE,CAAC,YAAY,EAAE,kBAAkB,EAAE,KAAK,IAAI,CAAC;IAC/D,uFAAuF;IACvF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;CAC/B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,sEAKtB,mBAAmB,8CA2DrB,CAAC"}
|
|
@@ -5,7 +5,7 @@ import { type Commit } from '../components/Timeline/index.ts';
|
|
|
5
5
|
import { type Span } from './span-tree.ts';
|
|
6
6
|
export interface BuildExecutionGraphParams {
|
|
7
7
|
traceMessages: readonly Trace.Message[];
|
|
8
|
-
activeProcesses?: readonly Process.
|
|
8
|
+
activeProcesses?: readonly Process.Process[];
|
|
9
9
|
collapseCompletedSpans?: boolean;
|
|
10
10
|
eventLimit?: number;
|
|
11
11
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-graph.d.ts","sourceRoot":"","sources":["../../../../src/execution-graph/execution-graph.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"execution-graph.d.ts","sourceRoot":"","sources":["../../../../src/execution-graph/execution-graph.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as Atom from 'effect/
|
|
1
|
+
import * as Atom from 'effect/reactivity/Atom';
|
|
2
2
|
import * as Process from '@dxos/compute/Process';
|
|
3
3
|
import { type Space } from '@dxos/react-client/echo';
|
|
4
4
|
import { type ExecutionGraph } from '../execution-graph/index.ts';
|
|
@@ -13,5 +13,5 @@ export type UseExecutionGraphOptions = {
|
|
|
13
13
|
* `processesAtom` is the host's live process tree (a running agent draws a spinner commit); without
|
|
14
14
|
* it the graph is the durable trace alone.
|
|
15
15
|
*/
|
|
16
|
-
export declare const useExecutionGraph: (space: Space, processesAtom: Atom.Atom<readonly Process.
|
|
16
|
+
export declare const useExecutionGraph: (space: Space, processesAtom: Atom.Atom<readonly Process.Process[]> | undefined, { collapseCompletedSpans, eventLimit, selectedPids }?: UseExecutionGraphOptions) => ExecutionGraph;
|
|
17
17
|
//# sourceMappingURL=useExecutionGraph.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useExecutionGraph.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useExecutionGraph.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"useExecutionGraph.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useExecutionGraph.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,IAAI,MAAM,wBAAwB,CAAC;AAG/C,OAAO,KAAK,OAAO,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAGrD,OAAO,EAAE,KAAK,cAAc,EAAuB,MAAM,6BAA6B,CAAC;AAiBvF,MAAM,MAAM,wBAAwB,GAAG;IACrC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oFAAoF;IACpF,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAClC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,UACrB,KAAK,iBACG,IAAI,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,SAAS,yDACA,wBAAwB,KACvF,cAkBF,CAAC"}
|
|
@@ -7,7 +7,7 @@ export type UseSessionTimelineOptions = {
|
|
|
7
7
|
sessions: readonly Session[];
|
|
8
8
|
tasks?: readonly Task.Task[];
|
|
9
9
|
/** The live process tree, from whichever monitor the host has; without it a session's liveness is read from the trace alone. */
|
|
10
|
-
processes?: readonly Process.
|
|
10
|
+
processes?: readonly Process.Process[];
|
|
11
11
|
};
|
|
12
12
|
/**
|
|
13
13
|
* The live gantt-shaped view of the given sessions: rebuilt as trace events land on the space's
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSessionTimeline.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useSessionTimeline.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,KAAK,OAAO,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"useSessionTimeline.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useSessionTimeline.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,KAAK,OAAO,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,eAAe,EAIrB,MAAM,8BAA8B,CAAC;AA6BtC,MAAM,MAAM,yBAAyB,GAAG;IACtC,0FAA0F;IAC1F,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;IAC7B,KAAK,CAAC,EAAE,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC;IAC7B,gIAAgI;IAChI,SAAS,CAAC,EAAE,SAAS,OAAO,CAAC,OAAO,EAAE,CAAC;CACxC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,UACtB,KAAK,GAAG,SAAS,kCACuB,yBAAyB,KACvE,eAgBF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTraceMessages.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useTraceMessages.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAE5C,OAAO,KAAK,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"useTraceMessages.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useTraceMessages.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAE5C,OAAO,KAAK,IAAI,MAAM,wBAAwB,CAAC;AAI/C,OAAO,KAAK,KAAK,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAIrD;;GAEG;AACH,eAAO,MAAM,oBAAoB,UAAW,KAAK,KAAG,IAAI,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,OAAO,EAAE,CAenF,CAAC;AAEJ,MAAM,MAAM,uBAAuB,GAAG;IACpC,uGAAuG;IACvG,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC;CAC9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,WACnB,KAAK,iBACC,uBAAuB,KACpC,SAAS,KAAK,CAAC,OAAO,EASxB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type StoryObj } from '@storybook/react-vite';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
declare const DefaultStory: () => React.JSX.Element;
|
|
4
|
+
declare const meta: {
|
|
5
|
+
title: string;
|
|
6
|
+
render: typeof DefaultStory;
|
|
7
|
+
decorators: import("@storybook/react").Decorator[];
|
|
8
|
+
};
|
|
9
|
+
export default meta;
|
|
10
|
+
type Story = StoryObj<typeof meta>;
|
|
11
|
+
export declare const TaskHistory: Story;
|
|
12
|
+
//# sourceMappingURL=TaskHistory.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TaskHistory.stories.d.ts","sourceRoot":"","sources":["../../../../src/session-timeline/TaskHistory.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAkB,MAAM,OAAO,CAAC;AAuHvC,QAAA,MAAM,YAAY,yBAKjB,CAAC;AAEF,QAAA,MAAM,IAAI;;;;CAI2B,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,WAAW,EAAE,KAAU,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type GanttData } from '../components/Gantt/index.ts';
|
|
2
|
+
import { type SessionTimeline } from './types.ts';
|
|
3
|
+
/**
|
|
4
|
+
* Maps a session timeline onto the chart's model.
|
|
5
|
+
*
|
|
6
|
+
* Every process becomes a band holding the lanes of the tasks it works; the process itself draws no
|
|
7
|
+
* row, so its own nodes (requests, tool calls no task claims) are dropped. A process standing for one
|
|
8
|
+
* task — a delegated sub-agent, or a session the builder folded its lone task into — is that task's
|
|
9
|
+
* lane, so it keeps its span, its nodes and the node it opened out of. A process spawned by another
|
|
10
|
+
* nests its band under its parent's — so causality is drawn by `openedFrom` while membership is
|
|
11
|
+
* `groupId` and nesting is `parentId`, three facts the timeline's single `parentId` used to carry.
|
|
12
|
+
*/
|
|
13
|
+
export declare const sessionTimelineToGantt: (timeline: SessionTimeline) => Pick<GanttData, 'groups' | 'lanes' | 'markers'>;
|
|
14
|
+
//# sourceMappingURL=gantt-mapping.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gantt-mapping.d.ts","sourceRoot":"","sources":["../../../../src/session-timeline/gantt-mapping.ts"],"names":[],"mappings":"AASA,OAAO,EACL,KAAK,SAAS,EAMf,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAa,KAAK,eAAe,EAAmB,MAAM,YAAY,CAAC;AAsD9E;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB,aAAc,eAAe,KAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,CA4EhH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gantt-mapping.test.d.ts","sourceRoot":"","sources":["../../../../src/session-timeline/gantt-mapping.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/session-timeline/index.ts"],"names":[],"mappings":"AAIA,cAAc,uBAAuB,CAAC;AACtC,cAAc,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/session-timeline/index.ts"],"names":[],"mappings":"AAIA,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,YAAY,CAAC"}
|
|
@@ -4,16 +4,31 @@ import { Task } from '@dxos/types';
|
|
|
4
4
|
import { type Session, type SessionTimeline } from './types.ts';
|
|
5
5
|
export interface BuildSessionTimelineInput {
|
|
6
6
|
traceMessages: readonly Trace.Message[];
|
|
7
|
-
processes?: readonly Process.
|
|
7
|
+
processes?: readonly Process.Process[];
|
|
8
8
|
/** The sessions to draw; each contributes a lane and its checklist's task lanes. */
|
|
9
9
|
sessions?: readonly Session[];
|
|
10
10
|
tasks?: readonly Task.Task[];
|
|
11
|
+
/** Per task id, the status moves its edit history records, oldest first (see {@link readTaskStatusChanges}). */
|
|
12
|
+
taskStatusChanges?: ReadonlyMap<string, readonly TaskStatusChange[]>;
|
|
11
13
|
/** Reference time; extends the range past open lanes. */
|
|
12
14
|
now?: number;
|
|
13
15
|
}
|
|
16
|
+
/** One move of a task's status, as its edit history records it. */
|
|
17
|
+
export type TaskStatusChange = {
|
|
18
|
+
/** Epoch ms. */
|
|
19
|
+
timestamp: number;
|
|
20
|
+
status: Task.Status;
|
|
21
|
+
/** Absent when the task held no status before. */
|
|
22
|
+
previousStatus?: Task.Status;
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* The status moves in a task's edit history, oldest first; none for a task not stored in a database,
|
|
26
|
+
* which keeps no history.
|
|
27
|
+
*/
|
|
28
|
+
export declare const readTaskStatusChanges: (task: Task.Task) => TaskStatusChange[];
|
|
14
29
|
/**
|
|
15
30
|
* Builds the gantt-shaped view of one or more assistant sessions from their trace: session lanes
|
|
16
31
|
* (supervisors and the sub-agents they delegate to), task lanes, and the markers on each.
|
|
17
32
|
*/
|
|
18
|
-
export declare const buildSessionTimeline: ({ traceMessages, processes, sessions, tasks, now, }: BuildSessionTimelineInput) => SessionTimeline;
|
|
33
|
+
export declare const buildSessionTimeline: ({ traceMessages, processes, sessions, tasks, taskStatusChanges: recordedChanges, now, }: BuildSessionTimelineInput) => SessionTimeline;
|
|
19
34
|
//# sourceMappingURL=session-timeline.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-timeline.d.ts","sourceRoot":"","sources":["../../../../src/session-timeline/session-timeline.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,OAAO,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,KAAK,MAAM,qBAAqB,CAAC;AAG7C,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAInC,OAAO,
|
|
1
|
+
{"version":3,"file":"session-timeline.d.ts","sourceRoot":"","sources":["../../../../src/session-timeline/session-timeline.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,OAAO,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,KAAK,MAAM,qBAAqB,CAAC;AAG7C,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAInC,OAAO,EAKL,KAAK,OAAO,EACZ,KAAK,eAAe,EAErB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,yBAAyB;IACxC,aAAa,EAAE,SAAS,KAAK,CAAC,OAAO,EAAE,CAAC;IACxC,SAAS,CAAC,EAAE,SAAS,OAAO,CAAC,OAAO,EAAE,CAAC;IACvC,oFAAoF;IACpF,QAAQ,CAAC,EAAE,SAAS,OAAO,EAAE,CAAC;IAC9B,KAAK,CAAC,EAAE,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC;IAC7B,gHAAgH;IAChH,iBAAiB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC,CAAC;IACrE,yDAAyD;IACzD,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,mEAAmE;AACnE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,gBAAgB;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;IACpB,kDAAkD;IAClD,cAAc,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC;CAC9B,CAAC;AAIF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,SAAU,IAAI,CAAC,IAAI,KAAG,gBAAgB,EAOjE,CAAC;AAkQR;;;GAGG;AACH,eAAO,MAAM,oBAAoB,4FAO9B,yBAAyB,KAAG,eAijB9B,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import * as Schema from 'effect/Schema';
|
|
2
2
|
export declare const LaneKind: Schema.Literals<readonly ["session", "task"]>;
|
|
3
3
|
export type LaneKind = Schema.Schema.Type<typeof LaneKind>;
|
|
4
|
+
export declare const LaneHue: Schema.Literals<readonly [import("@dxos/ui-theme").Hue, ...import("@dxos/ui-theme").Hue[]]>;
|
|
5
|
+
export type LaneHue = Schema.Schema.Type<typeof LaneHue>;
|
|
4
6
|
export declare const LaneStatus: Schema.Literals<readonly ["pending", "blocked", "running", "review", "done", "failed"]>;
|
|
5
7
|
export type LaneStatus = Schema.Schema.Type<typeof LaneStatus>;
|
|
6
8
|
export declare const TokenUsage: Schema.Struct<{
|
|
@@ -43,9 +45,19 @@ export declare const Lane: Schema.Struct<{
|
|
|
43
45
|
/** Epoch ms. */
|
|
44
46
|
readonly start: Schema.optional<Schema.Number>;
|
|
45
47
|
readonly end: Schema.optional<Schema.Number>;
|
|
48
|
+
/**
|
|
49
|
+
* Stretches inside `start`..`end` when the lane's task was put down — blocked on a question, say —
|
|
50
|
+
* and later picked up again; the lane is drawn as separate runs around them.
|
|
51
|
+
*/
|
|
52
|
+
readonly gaps: Schema.optional<Schema.$Array<Schema.Struct<{
|
|
53
|
+
readonly start: Schema.Number;
|
|
54
|
+
readonly end: Schema.Number;
|
|
55
|
+
}>>>;
|
|
46
56
|
readonly parentId: Schema.optional<Schema.String>;
|
|
47
57
|
readonly sessionId: Schema.optional<Schema.String>;
|
|
48
58
|
readonly taskId: Schema.optional<Schema.String>;
|
|
59
|
+
/** The task's hue, hashed from its mnemonic, so the lane matches the task's mnemonic chip. */
|
|
60
|
+
readonly hue: Schema.optional<Schema.Literals<readonly [import("@dxos/ui-theme").Hue, ...import("@dxos/ui-theme").Hue[]]>>;
|
|
49
61
|
readonly pid: Schema.optional<Schema.String>;
|
|
50
62
|
/** Lane ids this lane waits on (task dependencies). */
|
|
51
63
|
readonly blockedOn: Schema.optional<Schema.$Array<Schema.String>>;
|
|
@@ -53,6 +65,11 @@ export declare const Lane: Schema.Struct<{
|
|
|
53
65
|
readonly laneId: Schema.String;
|
|
54
66
|
readonly markerId: Schema.String;
|
|
55
67
|
}>>;
|
|
68
|
+
/** Node in the supervisor lane this lane's result was folded back into. */
|
|
69
|
+
readonly returnedTo: Schema.optional<Schema.Struct<{
|
|
70
|
+
readonly laneId: Schema.String;
|
|
71
|
+
readonly markerId: Schema.String;
|
|
72
|
+
}>>;
|
|
56
73
|
readonly tokens: Schema.optional<Schema.Struct<{
|
|
57
74
|
readonly input: Schema.Number;
|
|
58
75
|
readonly output: Schema.Number;
|
|
@@ -93,9 +110,19 @@ export declare const SessionTimeline: Schema.Struct<{
|
|
|
93
110
|
/** Epoch ms. */
|
|
94
111
|
readonly start: Schema.optional<Schema.Number>;
|
|
95
112
|
readonly end: Schema.optional<Schema.Number>;
|
|
113
|
+
/**
|
|
114
|
+
* Stretches inside `start`..`end` when the lane's task was put down — blocked on a question, say —
|
|
115
|
+
* and later picked up again; the lane is drawn as separate runs around them.
|
|
116
|
+
*/
|
|
117
|
+
readonly gaps: Schema.optional<Schema.$Array<Schema.Struct<{
|
|
118
|
+
readonly start: Schema.Number;
|
|
119
|
+
readonly end: Schema.Number;
|
|
120
|
+
}>>>;
|
|
96
121
|
readonly parentId: Schema.optional<Schema.String>;
|
|
97
122
|
readonly sessionId: Schema.optional<Schema.String>;
|
|
98
123
|
readonly taskId: Schema.optional<Schema.String>;
|
|
124
|
+
/** The task's hue, hashed from its mnemonic, so the lane matches the task's mnemonic chip. */
|
|
125
|
+
readonly hue: Schema.optional<Schema.Literals<readonly [import("@dxos/ui-theme").Hue, ...import("@dxos/ui-theme").Hue[]]>>;
|
|
99
126
|
readonly pid: Schema.optional<Schema.String>;
|
|
100
127
|
/** Lane ids this lane waits on (task dependencies). */
|
|
101
128
|
readonly blockedOn: Schema.optional<Schema.$Array<Schema.String>>;
|
|
@@ -103,6 +130,11 @@ export declare const SessionTimeline: Schema.Struct<{
|
|
|
103
130
|
readonly laneId: Schema.String;
|
|
104
131
|
readonly markerId: Schema.String;
|
|
105
132
|
}>>;
|
|
133
|
+
/** Node in the supervisor lane this lane's result was folded back into. */
|
|
134
|
+
readonly returnedTo: Schema.optional<Schema.Struct<{
|
|
135
|
+
readonly laneId: Schema.String;
|
|
136
|
+
readonly markerId: Schema.String;
|
|
137
|
+
}>>;
|
|
106
138
|
readonly tokens: Schema.optional<Schema.Struct<{
|
|
107
139
|
readonly input: Schema.Number;
|
|
108
140
|
readonly output: Schema.Number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/session-timeline/types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/session-timeline/types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,eAAO,MAAM,QAAQ,+CAAuC,CAAC;AAC7D,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE3D,eAAO,MAAM,OAAO,6FAAoF,CAAC;AACzG,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,OAAO,CAAC,CAAC;AAEzD,eAAO,MAAM,UAAU,yFAAiF,CAAC;AACzG,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,UAAU,CAAC,CAAC;AAE/D,eAAO,MAAM,UAAU;;;;EAIrB,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,UAAU,CAAC,CAAC;AAE/D;;;;GAIG;AACH,eAAO,MAAM,OAAO;;;;;;EAMlB,CAAC;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,OAAO,CAAC,CAAC;AAEzD;;;GAGG;AACH,eAAO,MAAM,gBAAgB;;;EAG3B,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE3E;;;GAGG;AACH,eAAO,MAAM,IAAI;;;;;IAKf,gBAAgB;;;IAGhB;;;OAGG;;;;;;;;IAKH,8FAA8F;;;IAG9F,uDAAuD;;;;;;IAGvD,2EAA2E;;;;;;;;;;;EAI3E,CAAC;AACH,MAAM,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnD,eAAO,MAAM,UAAU,sGAA8F,CAAC;AACtH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,UAAU,CAAC,CAAC;AAE/D,eAAO,MAAM,WAAW,qDAA6C,CAAC;AACtE,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,WAAW,CAAC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,MAAM;;;;;;;;;EASjB,CAAC;AACH,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,MAAM,CAAC,CAAC;AAEvD,eAAO,MAAM,SAAS;;;EAGpB,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,SAAS,CAAC,CAAC;AAE7D,eAAO,MAAM,eAAe;;;;;;QAnD1B,gBAAgB;;;QAGhB;;;WAGG;;;;;;;;QAKH,8FAA8F;;;QAG9F,uDAAuD;;;;;;QAGvD,2EAA2E;;;;;;;;;;;;;;;;;;;;;;;;;;EAsC3E,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,eAAe,CAAC,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as Effect from 'effect/Effect';
|
|
2
2
|
import { type ProcessManager } from '@dxos/compute-runtime';
|
|
3
|
+
import * as Operation from '@dxos/compute/Operation';
|
|
3
4
|
import * as Process from '@dxos/compute/Process';
|
|
4
5
|
import * as Trace from '@dxos/compute/Trace';
|
|
5
6
|
/**
|
|
@@ -29,7 +30,7 @@ export declare const agentScenarios: readonly AgentScenario[];
|
|
|
29
30
|
* it one step, so the caller can interleave the agent's own trace events with the child operation
|
|
30
31
|
* processes that {@link runScenario} spawns beneath it.
|
|
31
32
|
*/
|
|
32
|
-
export declare const SimulatedAgent:
|
|
33
|
+
export declare const SimulatedAgent: Operation.DurableDefinition.WithHandler<Operation.DurableDefinition<{
|
|
33
34
|
readonly _tag: "begin";
|
|
34
35
|
readonly prompt: string;
|
|
35
36
|
} | {
|
|
@@ -43,18 +44,18 @@ export declare const SimulatedAgent: Process.Process<{
|
|
|
43
44
|
} | {
|
|
44
45
|
readonly _tag: "end";
|
|
45
46
|
readonly status: "error" | "success";
|
|
46
|
-
}, void, Trace.TraceService, never
|
|
47
|
+
}, void, Trace.TraceService, never>>;
|
|
47
48
|
/**
|
|
48
49
|
* Storybook fixture: a {@link Process} that emits the `operation.start`/`operation.end` pair a real
|
|
49
50
|
* operation process emits, with a simulated execution time in between.
|
|
50
51
|
*/
|
|
51
|
-
export declare const SimulatedOperation:
|
|
52
|
+
export declare const SimulatedOperation: Operation.DurableDefinition.WithHandler<Operation.DurableDefinition<{
|
|
52
53
|
readonly key: string;
|
|
53
54
|
readonly name: string;
|
|
54
55
|
readonly icon?: string | undefined;
|
|
55
56
|
readonly durationMs: number;
|
|
56
57
|
readonly fail?: boolean | undefined;
|
|
57
|
-
}, void, Trace.TraceService, never
|
|
58
|
+
}, void, Trace.TraceService, never>>;
|
|
58
59
|
/**
|
|
59
60
|
* Runs one {@link agentScenarios} entry end to end: an agent process with a child operation process
|
|
60
61
|
* per tool, so the panel has both a populated process tree and a timeline with nested spans.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simulated-agent.d.ts","sourceRoot":"","sources":["../../../../src/testing/simulated-agent.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,OAAO,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,KAAK,MAAM,qBAAqB,CAAC;AAG7C;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,2FAA2F;IAC3F,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAC7C,6EAA6E;IAC7E,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,0DAA0D;IAC1D,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,CAAC;CAC1C;AAED,eAAO,MAAM,cAAc,EAAE,SAAS,aAAa,EA0ClD,CAAC;AA0BF;;;;GAIG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"simulated-agent.d.ts","sourceRoot":"","sources":["../../../../src/testing/simulated-agent.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,SAAS,MAAM,yBAAyB,CAAC;AACrD,OAAO,KAAK,OAAO,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,KAAK,MAAM,qBAAqB,CAAC;AAG7C;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,2FAA2F;IAC3F,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAC7C,6EAA6E;IAC7E,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,0DAA0D;IAC1D,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,CAAC;CAC1C;AAED,eAAO,MAAM,cAAc,EAAE,SAAS,aAAa,EA0ClD,CAAC;AA0BF;;;;GAIG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;oCAsE1B,CAAC;AAgBF;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;;;;oCA8B9B,CAAC;AAqCF;;;GAGG;AACH,eAAO,MAAM,WAAW,YACb,cAAc,CAAC,OAAO,SACxB,MAAM,eACA,OAAO,CAAC,WAAW,KAC/B,MAAM,CAAC,MAAM,CAAC,IAAI,CAmBE,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as Process from '@dxos/compute/Process';
|
|
2
|
-
export declare const makeProcess: (overrides: Partial<Process.
|
|
2
|
+
export declare const makeProcess: (overrides: Partial<Process.Data> & Pick<Process.Data, 'pid' | 'state'> & {
|
|
3
3
|
name: string;
|
|
4
|
-
}) => Process.
|
|
4
|
+
}) => Process.Process;
|
|
5
5
|
//# sourceMappingURL=test-trace.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-trace.d.ts","sourceRoot":"","sources":["../../../../src/testing/test-trace.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"test-trace.d.ts","sourceRoot":"","sources":["../../../../src/testing/test-trace.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,OAAO,MAAM,uBAAuB,CAAC;AAGjD,eAAO,MAAM,WAAW,cACX,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,KACxF,OAAO,CAAC,OAWP,CAAC"}
|
|
@@ -3,6 +3,11 @@ export declare const translations: [{
|
|
|
3
3
|
readonly 'en-US': {
|
|
4
4
|
readonly "@dxos/react-ui-trace": {
|
|
5
5
|
readonly 'no-commits.message': 'No events yet';
|
|
6
|
+
readonly 'gantt-axis-time.label': 'Fit to time';
|
|
7
|
+
readonly 'gantt-axis-unit.label': 'One step per event';
|
|
8
|
+
readonly 'gantt-legend-stats.label': 'Show usage';
|
|
9
|
+
readonly 'gantt-legend-title.label': 'Show titles';
|
|
10
|
+
readonly 'gantt-chart.label': 'Timeline';
|
|
6
11
|
readonly 'trace.label': 'Trace';
|
|
7
12
|
readonly 'trace-processes.label': 'Processes';
|
|
8
13
|
readonly 'trace-details.label': 'Details';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../src/translations.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,cAAc,yBAAyB,CAAC;AAErD,eAAO,MAAM,YAAY;;;qBAIjB,oBAAoB,EAAE,eAAe;qBAErC,aAAa,EAAE,OAAO;qBACtB,uBAAuB,EAAE,WAAW;qBACpC,qBAAqB,EAAE,SAAS;qBAEhC,mBAAmB,EAAE,kBAAkB;qBACvC,6BAA6B,EAAE,yBAAyB;qBACxD,wBAAwB,EAAE,UAAU;qBACpC,yBAAyB,EAAE,UAAU;qBACrC,6BAA6B,EAAE,KAAK;qBACpC,+BAA+B,EAAE,OAAO;qBACxC,sCAAsC,EAAE,cAAc;;;
|
|
1
|
+
{"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../src/translations.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,cAAc,yBAAyB,CAAC;AAErD,eAAO,MAAM,YAAY;;;qBAIjB,oBAAoB,EAAE,eAAe;qBAErC,uBAAuB,EAAE,aAAa;qBACtC,uBAAuB,EAAE,oBAAoB;qBAC7C,0BAA0B,EAAE,YAAY;qBACxC,0BAA0B,EAAE,aAAa;qBACzC,mBAAmB,EAAE,UAAU;qBAE/B,aAAa,EAAE,OAAO;qBACtB,uBAAuB,EAAE,WAAW;qBACpC,qBAAqB,EAAE,SAAS;qBAEhC,mBAAmB,EAAE,kBAAkB;qBACvC,6BAA6B,EAAE,yBAAyB;qBACxD,wBAAwB,EAAE,UAAU;qBACpC,yBAAyB,EAAE,UAAU;qBACrC,6BAA6B,EAAE,KAAK;qBACpC,+BAA+B,EAAE,OAAO;qBACxC,sCAAsC,EAAE,cAAc;;;EAIzB,CAAC"}
|