@smithers-orchestrator/components 0.16.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/LICENSE +21 -0
- package/package.json +47 -0
- package/src/SmithersWorkflow.ts +1 -0
- package/src/aspects/AspectAccumulator.ts +9 -0
- package/src/aspects/AspectContext.js +29 -0
- package/src/aspects/AspectContextValue.ts +16 -0
- package/src/aspects/CostBudgetConfig.ts +9 -0
- package/src/aspects/LatencySloConfig.ts +11 -0
- package/src/aspects/TokenBudgetConfig.ts +11 -0
- package/src/aspects/TrackingConfig.ts +11 -0
- package/src/aspects/index.js +10 -0
- package/src/components/Approval.js +211 -0
- package/src/components/ApprovalAutoApprove.ts +8 -0
- package/src/components/ApprovalDecision.ts +4 -0
- package/src/components/ApprovalGate.js +45 -0
- package/src/components/ApprovalGateProps.ts +22 -0
- package/src/components/ApprovalMode.ts +1 -0
- package/src/components/ApprovalOption.ts +6 -0
- package/src/components/ApprovalProps.ts +42 -0
- package/src/components/ApprovalRanking.ts +4 -0
- package/src/components/ApprovalRequest.ts +5 -0
- package/src/components/ApprovalSelection.ts +4 -0
- package/src/components/Aspects.js +39 -0
- package/src/components/AspectsProps.ts +18 -0
- package/src/components/Branch.js +12 -0
- package/src/components/BranchProps.ts +8 -0
- package/src/components/CategoryConfig.ts +10 -0
- package/src/components/CheckConfig.ts +8 -0
- package/src/components/CheckSuite.js +71 -0
- package/src/components/CheckSuiteProps.ts +12 -0
- package/src/components/ClassifyAndRoute.js +75 -0
- package/src/components/ClassifyAndRouteProps.ts +30 -0
- package/src/components/ColumnDef.ts +19 -0
- package/src/components/ContentPipeline.js +38 -0
- package/src/components/ContentPipelineProps.ts +12 -0
- package/src/components/ContentPipelineStage.ts +13 -0
- package/src/components/ContinueAsNew.js +27 -0
- package/src/components/ContinueAsNewProps.ts +6 -0
- package/src/components/Debate.js +63 -0
- package/src/components/DebateProps.ts +15 -0
- package/src/components/DecisionRule.ts +10 -0
- package/src/components/DecisionTable.js +42 -0
- package/src/components/DecisionTableProps.ts +14 -0
- package/src/components/DepsSpec.ts +3 -0
- package/src/components/DriftDetector.js +54 -0
- package/src/components/DriftDetectorProps.ts +29 -0
- package/src/components/EscalationChain.js +99 -0
- package/src/components/EscalationChainProps.ts +20 -0
- package/src/components/EscalationLevel.ts +13 -0
- package/src/components/GatherAndSynthesize.js +69 -0
- package/src/components/GatherAndSynthesizeProps.ts +24 -0
- package/src/components/HumanTask.js +94 -0
- package/src/components/HumanTaskProps.ts +27 -0
- package/src/components/InferDeps.ts +8 -0
- package/src/components/Kanban.js +68 -0
- package/src/components/KanbanProps.ts +27 -0
- package/src/components/Loop.js +6 -0
- package/src/components/LoopProps.ts +11 -0
- package/src/components/MergeQueue.js +16 -0
- package/src/components/MergeQueueProps.ts +12 -0
- package/src/components/Optimizer.js +52 -0
- package/src/components/OptimizerProps.ts +25 -0
- package/src/components/OutputTarget.ts +6 -0
- package/src/components/Panel.js +69 -0
- package/src/components/PanelProps.ts +17 -0
- package/src/components/PanelistConfig.ts +7 -0
- package/src/components/Parallel.js +16 -0
- package/src/components/ParallelProps.ts +8 -0
- package/src/components/Poller.js +69 -0
- package/src/components/PollerProps.ts +24 -0
- package/src/components/Ralph.js +17 -0
- package/src/components/RalphProps.ts +4 -0
- package/src/components/ReviewLoop.js +51 -0
- package/src/components/ReviewLoopProps.ts +23 -0
- package/src/components/Runbook.js +91 -0
- package/src/components/RunbookProps.ts +19 -0
- package/src/components/RunbookStep.ts +17 -0
- package/src/components/Saga.js +77 -0
- package/src/components/SagaProps.ts +10 -0
- package/src/components/SagaStepDef.ts +8 -0
- package/src/components/SagaStepProps.ts +7 -0
- package/src/components/Sandbox.js +48 -0
- package/src/components/SandboxProps.ts +46 -0
- package/src/components/SandboxRuntime.ts +1 -0
- package/src/components/SandboxVolumeMount.ts +5 -0
- package/src/components/SandboxWorkspaceSpec.ts +6 -0
- package/src/components/ScanFixVerify.js +60 -0
- package/src/components/ScanFixVerifyProps.ts +30 -0
- package/src/components/Sequence.js +11 -0
- package/src/components/SequenceProps.ts +6 -0
- package/src/components/Signal.js +48 -0
- package/src/components/SignalProps.ts +21 -0
- package/src/components/SourceDef.ts +12 -0
- package/src/components/Subflow.js +32 -0
- package/src/components/SubflowProps.ts +33 -0
- package/src/components/SuperSmithers.js +102 -0
- package/src/components/SuperSmithersProps.ts +20 -0
- package/src/components/Supervisor.js +86 -0
- package/src/components/SupervisorProps.ts +28 -0
- package/src/components/Task.js +319 -0
- package/src/components/TaskProps.ts +57 -0
- package/src/components/Timer.js +42 -0
- package/src/components/TimerProps.ts +21 -0
- package/src/components/TryCatchFinally.js +35 -0
- package/src/components/TryCatchFinallyProps.ts +12 -0
- package/src/components/WaitForEvent.js +37 -0
- package/src/components/WaitForEventProps.ts +28 -0
- package/src/components/Workflow.js +10 -0
- package/src/components/WorkflowProps.ts +7 -0
- package/src/components/Worktree.js +17 -0
- package/src/components/WorktreeProps.ts +11 -0
- package/src/components/control-flow-utils.js +37 -0
- package/src/components/index.js +121 -0
- package/src/index.d.ts +1579 -0
- package/src/index.js +62 -0
- package/src/markdownComponents.js +44 -0
- package/src/renderMdx.js +26 -0
- package/src/types/react-dom-server.d.ts +1 -0
- package/src/types.ts +22 -0
- package/src/zod-to-example.js +87 -0
package/src/index.d.ts
ADDED
|
@@ -0,0 +1,1579 @@
|
|
|
1
|
+
import * as _smithers_driver_workflow_types from '@smithers-orchestrator/driver/workflow-types';
|
|
2
|
+
import * as _smithers_driver_WorkflowDriverOptions from '@smithers-orchestrator/driver/WorkflowDriverOptions';
|
|
3
|
+
import * as _smithers_driver_WorkflowDefinition from '@smithers-orchestrator/driver/WorkflowDefinition';
|
|
4
|
+
import { WorkflowDefinition } from '@smithers-orchestrator/driver/WorkflowDefinition';
|
|
5
|
+
import * as _smithers_errors_SmithersErrorCode from '@smithers-orchestrator/errors/SmithersErrorCode';
|
|
6
|
+
import { SmithersErrorCode as SmithersErrorCode$1 } from '@smithers-orchestrator/errors/SmithersErrorCode';
|
|
7
|
+
import * as _smithers_scheduler_SmithersWorkflowOptions from '@smithers-orchestrator/scheduler/SmithersWorkflowOptions';
|
|
8
|
+
import * as _smithers_db_SchemaRegistryEntry from '@smithers-orchestrator/db/SchemaRegistryEntry';
|
|
9
|
+
import * as _smithers_driver from '@smithers-orchestrator/driver';
|
|
10
|
+
import { SmithersCtx as SmithersCtx$1 } from '@smithers-orchestrator/driver';
|
|
11
|
+
import * as _smithers_driver_RunAuthContext from '@smithers-orchestrator/driver/RunAuthContext';
|
|
12
|
+
import * as _smithers_scheduler_RetryPolicy from '@smithers-orchestrator/scheduler/RetryPolicy';
|
|
13
|
+
import { RetryPolicy as RetryPolicy$1 } from '@smithers-orchestrator/scheduler/RetryPolicy';
|
|
14
|
+
import * as _smithers_driver_OutputKey from '@smithers-orchestrator/driver/OutputKey';
|
|
15
|
+
import * as _smithers_driver_OutputAccessor from '@smithers-orchestrator/driver/OutputAccessor';
|
|
16
|
+
import { InferOutputEntry as InferOutputEntry$1 } from '@smithers-orchestrator/driver/OutputAccessor';
|
|
17
|
+
import * as _smithers_graph from '@smithers-orchestrator/graph';
|
|
18
|
+
import * as _smithers_scheduler from '@smithers-orchestrator/scheduler';
|
|
19
|
+
import * as _smithers_scheduler_CachePolicy from '@smithers-orchestrator/scheduler/CachePolicy';
|
|
20
|
+
import { CachePolicy as CachePolicy$1 } from '@smithers-orchestrator/scheduler/CachePolicy';
|
|
21
|
+
import React from 'react';
|
|
22
|
+
import * as zod from 'zod';
|
|
23
|
+
import { z } from 'zod';
|
|
24
|
+
import { SmithersError } from '@smithers-orchestrator/errors/SmithersError';
|
|
25
|
+
import { AgentLike } from '@smithers-orchestrator/agents/AgentLike';
|
|
26
|
+
import * as _smithers_scorers_types from '@smithers-orchestrator/scorers/types';
|
|
27
|
+
import { ScorersMap as ScorersMap$1 } from '@smithers-orchestrator/scorers/types';
|
|
28
|
+
import { TaskMemoryConfig } from '@smithers-orchestrator/memory/types';
|
|
29
|
+
import * as _smithers_errors from '@smithers-orchestrator/errors';
|
|
30
|
+
import * as zod_v4_core from 'zod/v4/core';
|
|
31
|
+
|
|
32
|
+
type WorktreeProps$2 = {
|
|
33
|
+
id?: string;
|
|
34
|
+
path: string;
|
|
35
|
+
branch?: string;
|
|
36
|
+
/** Base branch for syncing worktrees (default: "main"). */
|
|
37
|
+
baseBranch?: string;
|
|
38
|
+
skipIf?: boolean;
|
|
39
|
+
children?: React.ReactNode;
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
type WorkflowProps$2 = {
|
|
43
|
+
name: string;
|
|
44
|
+
cache?: boolean;
|
|
45
|
+
children?: React.ReactNode;
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
/** Valid output targets: a Zod schema (recommended), a Drizzle table object, or a string key (escape hatch). */
|
|
49
|
+
type OutputTarget$1 = z.ZodObject<z.ZodRawShape> | {
|
|
50
|
+
$inferSelect: Record<string, unknown>;
|
|
51
|
+
} | string;
|
|
52
|
+
|
|
53
|
+
type WaitForEventProps$2 = {
|
|
54
|
+
id: string;
|
|
55
|
+
/** Event name/type to wait for. */
|
|
56
|
+
event: string;
|
|
57
|
+
/** Correlation key to match the right event instance. */
|
|
58
|
+
correlationId?: string;
|
|
59
|
+
/** Where to store the event payload. */
|
|
60
|
+
output: OutputTarget$1;
|
|
61
|
+
/** Zod schema for the event payload. */
|
|
62
|
+
outputSchema?: z.ZodObject<z.ZodRawShape>;
|
|
63
|
+
/** Max wait time in ms before timing out. */
|
|
64
|
+
timeoutMs?: number;
|
|
65
|
+
/** Behavior on timeout: fail (default), skip the node, or continue with null. */
|
|
66
|
+
onTimeout?: "fail" | "skip" | "continue";
|
|
67
|
+
/** Do not block unrelated downstream flow while waiting for the event. */
|
|
68
|
+
async?: boolean;
|
|
69
|
+
skipIf?: boolean;
|
|
70
|
+
/** Explicit dependency on other task node IDs. */
|
|
71
|
+
dependsOn?: string[];
|
|
72
|
+
/** Named dependencies on other tasks. Keys become context keys, values are task node IDs. */
|
|
73
|
+
needs?: Record<string, string>;
|
|
74
|
+
label?: string;
|
|
75
|
+
meta?: Record<string, unknown>;
|
|
76
|
+
key?: string;
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
type TryCatchFinallyProps$2 = {
|
|
80
|
+
id?: string;
|
|
81
|
+
try: React.ReactElement;
|
|
82
|
+
catch?: React.ReactElement | ((error: SmithersError) => React.ReactElement);
|
|
83
|
+
catchErrors?: SmithersErrorCode$1[];
|
|
84
|
+
finally?: React.ReactElement;
|
|
85
|
+
skipIf?: boolean;
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
type TimerProps$2 = {
|
|
89
|
+
id: string;
|
|
90
|
+
/**
|
|
91
|
+
* Relative duration (examples: "500ms", "1s", "30m", "1h", "7d").
|
|
92
|
+
*/
|
|
93
|
+
duration?: string;
|
|
94
|
+
/**
|
|
95
|
+
* Absolute fire time (ISO timestamp or Date).
|
|
96
|
+
*/
|
|
97
|
+
until?: string | Date;
|
|
98
|
+
/**
|
|
99
|
+
* Recurring timer syntax is reserved for phase 2 and is not supported yet.
|
|
100
|
+
*/
|
|
101
|
+
every?: string;
|
|
102
|
+
skipIf?: boolean;
|
|
103
|
+
dependsOn?: string[];
|
|
104
|
+
needs?: Record<string, string>;
|
|
105
|
+
label?: string;
|
|
106
|
+
meta?: Record<string, unknown>;
|
|
107
|
+
key?: string;
|
|
108
|
+
};
|
|
109
|
+
|
|
110
|
+
type DepsSpec$1 = Record<string, OutputTarget$1>;
|
|
111
|
+
|
|
112
|
+
type InferDepValue<T> = T extends string ? unknown : InferOutputEntry$1<T>;
|
|
113
|
+
type InferDeps$1<D extends DepsSpec$1> = {
|
|
114
|
+
[K in keyof D]: InferDepValue<D[K]>;
|
|
115
|
+
};
|
|
116
|
+
|
|
117
|
+
type TaskProps$2<Row, Output extends OutputTarget$1 = OutputTarget$1, D extends DepsSpec$1 = {}> = {
|
|
118
|
+
key?: string;
|
|
119
|
+
id: string;
|
|
120
|
+
/** Where to store the task's result. Pass a Zod schema from `outputs` (recommended), a Drizzle table, or a string key. */
|
|
121
|
+
output: Output;
|
|
122
|
+
/**
|
|
123
|
+
* Optional Zod schema describing the expected agent output shape.
|
|
124
|
+
* When `output` is already a ZodObject this is inferred automatically.
|
|
125
|
+
* Used for validation and to inject schema examples into MDX prompts.
|
|
126
|
+
*/
|
|
127
|
+
outputSchema?: z.ZodObject<z.ZodRawShape>;
|
|
128
|
+
/** Agent or array of agents [primary, fallback1, fallback2, ...]. Tries in order on retries. */
|
|
129
|
+
agent?: AgentLike | AgentLike[];
|
|
130
|
+
/** Convenience alias for a single retry fallback without exposing array syntax in JSX. */
|
|
131
|
+
fallbackAgent?: AgentLike;
|
|
132
|
+
/** Explicit dependency on other task node IDs. The task will not run until all listed tasks complete. */
|
|
133
|
+
dependsOn?: string[];
|
|
134
|
+
/** Named dependencies on other tasks. Keys become context keys, values are task node IDs. */
|
|
135
|
+
needs?: Record<string, string>;
|
|
136
|
+
/** Render-time typed dependencies. Keys resolve from task ids of the same name, or from matching `needs` entries. */
|
|
137
|
+
deps?: D;
|
|
138
|
+
skipIf?: boolean;
|
|
139
|
+
needsApproval?: boolean;
|
|
140
|
+
/** When paired with `needsApproval`, do not block unrelated downstream flow while the approval is pending. */
|
|
141
|
+
async?: boolean;
|
|
142
|
+
timeoutMs?: number;
|
|
143
|
+
heartbeatTimeoutMs?: number;
|
|
144
|
+
heartbeatTimeout?: number;
|
|
145
|
+
/** Disable retries entirely. Equivalent to retries={0}. */
|
|
146
|
+
noRetry?: boolean;
|
|
147
|
+
retries?: number;
|
|
148
|
+
retryPolicy?: RetryPolicy$1;
|
|
149
|
+
continueOnFail?: boolean;
|
|
150
|
+
cache?: CachePolicy$1;
|
|
151
|
+
/** Optional scorers to evaluate this task's output after completion. */
|
|
152
|
+
scorers?: ScorersMap$1;
|
|
153
|
+
/** Optional cross-run memory configuration. */
|
|
154
|
+
memory?: TaskMemoryConfig;
|
|
155
|
+
allowTools?: string[];
|
|
156
|
+
label?: string;
|
|
157
|
+
meta?: Record<string, unknown>;
|
|
158
|
+
/** @internal Used by createSmithers() to bind tasks to the correct workflow context. */
|
|
159
|
+
smithersContext?: React.Context<SmithersCtx$1<unknown> | null>;
|
|
160
|
+
children?: string | Row | (() => Row | Promise<Row>) | React.ReactNode | ((deps: InferDeps$1<D>) => Row | React.ReactNode);
|
|
161
|
+
};
|
|
162
|
+
|
|
163
|
+
type SupervisorProps$2 = {
|
|
164
|
+
id?: string;
|
|
165
|
+
/** Agent that plans, delegates, and reviews worker results. */
|
|
166
|
+
boss: AgentLike;
|
|
167
|
+
/** Map of worker type names to agents (e.g., { coder, tester, docs }). */
|
|
168
|
+
workers: Record<string, AgentLike>;
|
|
169
|
+
/** Output schema for the boss's plan. Must include `tasks: Array<{ id, workerType, instructions }>`. */
|
|
170
|
+
planOutput: OutputTarget$1;
|
|
171
|
+
/** Output schema for individual worker results. */
|
|
172
|
+
workerOutput: OutputTarget$1;
|
|
173
|
+
/** Output schema for the boss's review. Must include `allDone: boolean` and `retriable: string[]`. */
|
|
174
|
+
reviewOutput: OutputTarget$1;
|
|
175
|
+
/** Output schema for the final summary. */
|
|
176
|
+
finalOutput: OutputTarget$1;
|
|
177
|
+
/** Max delegate-review cycles (default 3). */
|
|
178
|
+
maxIterations?: number;
|
|
179
|
+
/** Max parallel workers (default 5). */
|
|
180
|
+
maxConcurrency?: number;
|
|
181
|
+
/** Whether each worker gets its own git worktree (default false). */
|
|
182
|
+
useWorktrees?: boolean;
|
|
183
|
+
skipIf?: boolean;
|
|
184
|
+
/** Goal/prompt for the boss agent. */
|
|
185
|
+
children: string | React.ReactNode;
|
|
186
|
+
};
|
|
187
|
+
|
|
188
|
+
type SuperSmithersProps$2 = {
|
|
189
|
+
/** Optional ID prefix for all generated task IDs. */
|
|
190
|
+
id?: string;
|
|
191
|
+
/** Markdown string or MDX component describing the intervention strategy. */
|
|
192
|
+
strategy: string | React.ReactElement;
|
|
193
|
+
/** Agent that reads code and decides modifications. */
|
|
194
|
+
agent: AgentLike;
|
|
195
|
+
/** Glob patterns of files the agent can modify. */
|
|
196
|
+
targetFiles?: string[];
|
|
197
|
+
/** Output schema for the intervention report (Zod object). */
|
|
198
|
+
reportOutput?: OutputTarget$1;
|
|
199
|
+
/** If true, reports changes without applying them. */
|
|
200
|
+
dryRun?: boolean;
|
|
201
|
+
/** Standard skip predicate. */
|
|
202
|
+
skipIf?: boolean;
|
|
203
|
+
};
|
|
204
|
+
|
|
205
|
+
type SubflowProps$2 = {
|
|
206
|
+
id: string;
|
|
207
|
+
/** The child workflow definition. */
|
|
208
|
+
workflow: WorkflowDefinition<unknown>;
|
|
209
|
+
/** Input to pass to the child workflow. */
|
|
210
|
+
input?: unknown;
|
|
211
|
+
/** `"childRun"` gets its own DB row/run; `"inline"` embeds in parent. */
|
|
212
|
+
mode?: "childRun" | "inline";
|
|
213
|
+
/** Where to store the subflow's result. */
|
|
214
|
+
output: OutputTarget$1;
|
|
215
|
+
skipIf?: boolean;
|
|
216
|
+
timeoutMs?: number;
|
|
217
|
+
heartbeatTimeoutMs?: number;
|
|
218
|
+
heartbeatTimeout?: number;
|
|
219
|
+
retries?: number;
|
|
220
|
+
retryPolicy?: RetryPolicy$1;
|
|
221
|
+
continueOnFail?: boolean;
|
|
222
|
+
cache?: CachePolicy$1;
|
|
223
|
+
/** Explicit dependency on other task node IDs. */
|
|
224
|
+
dependsOn?: string[];
|
|
225
|
+
/** Named dependencies on other tasks. Keys become context keys, values are task node IDs. */
|
|
226
|
+
needs?: Record<string, string>;
|
|
227
|
+
label?: string;
|
|
228
|
+
meta?: Record<string, unknown>;
|
|
229
|
+
key?: string;
|
|
230
|
+
children?: React.ReactNode;
|
|
231
|
+
};
|
|
232
|
+
|
|
233
|
+
type SourceDef$1 = {
|
|
234
|
+
agent: AgentLike;
|
|
235
|
+
/** Prompt for this source. A string or ReactNode. */
|
|
236
|
+
prompt?: string;
|
|
237
|
+
/** Output schema for this specific source. Overrides `gatherOutput`. */
|
|
238
|
+
output?: OutputTarget$1;
|
|
239
|
+
children?: React.ReactNode;
|
|
240
|
+
};
|
|
241
|
+
|
|
242
|
+
type SignalProps$2<Schema extends z.ZodObject<z.ZodRawShape> = z.ZodObject<z.ZodRawShape>> = {
|
|
243
|
+
id: string;
|
|
244
|
+
schema: Schema;
|
|
245
|
+
correlationId?: string;
|
|
246
|
+
timeoutMs?: number;
|
|
247
|
+
onTimeout?: "fail" | "skip" | "continue";
|
|
248
|
+
/** Do not block unrelated downstream flow while waiting for the signal. */
|
|
249
|
+
async?: boolean;
|
|
250
|
+
skipIf?: boolean;
|
|
251
|
+
dependsOn?: string[];
|
|
252
|
+
needs?: Record<string, string>;
|
|
253
|
+
label?: string;
|
|
254
|
+
meta?: Record<string, unknown>;
|
|
255
|
+
key?: string;
|
|
256
|
+
children?: (data: z.infer<Schema>) => React.ReactNode;
|
|
257
|
+
smithersContext?: React.Context<SmithersCtx$1<unknown> | null>;
|
|
258
|
+
};
|
|
259
|
+
|
|
260
|
+
type SequenceProps$2 = {
|
|
261
|
+
skipIf?: boolean;
|
|
262
|
+
children?: React.ReactNode;
|
|
263
|
+
};
|
|
264
|
+
|
|
265
|
+
type ScanFixVerifyProps$2 = {
|
|
266
|
+
/** ID prefix for generated task/component ids. */
|
|
267
|
+
id?: string;
|
|
268
|
+
/** Agent that scans for problems. */
|
|
269
|
+
scanner: AgentLike;
|
|
270
|
+
/** Agent (or agents) that fixes problems. When an array is provided, agents are cycled across issues. */
|
|
271
|
+
fixer: AgentLike | AgentLike[];
|
|
272
|
+
/** Agent that verifies the fixes were applied correctly. */
|
|
273
|
+
verifier: AgentLike;
|
|
274
|
+
/** Output schema for scan results. Should include `issues: Array`. */
|
|
275
|
+
scanOutput: OutputTarget$1;
|
|
276
|
+
/** Output schema for each individual fix. */
|
|
277
|
+
fixOutput: OutputTarget$1;
|
|
278
|
+
/** Output schema for verification results. */
|
|
279
|
+
verifyOutput: OutputTarget$1;
|
|
280
|
+
/** Output schema for the final summary report. */
|
|
281
|
+
reportOutput: OutputTarget$1;
|
|
282
|
+
/** Maximum number of parallel fix tasks. */
|
|
283
|
+
maxConcurrency?: number;
|
|
284
|
+
/** Maximum scan-fix-verify cycles before stopping. Default 3. */
|
|
285
|
+
maxRetries?: number;
|
|
286
|
+
/** Skip the entire component. */
|
|
287
|
+
skipIf?: boolean;
|
|
288
|
+
/** Prompt/context describing what to scan for. */
|
|
289
|
+
children?: React.ReactNode;
|
|
290
|
+
};
|
|
291
|
+
|
|
292
|
+
type SandboxWorkspaceSpec$1 = {
|
|
293
|
+
name: string;
|
|
294
|
+
snapshotId?: string;
|
|
295
|
+
idleTimeoutSecs?: number;
|
|
296
|
+
persistence?: "ephemeral" | "sticky";
|
|
297
|
+
};
|
|
298
|
+
|
|
299
|
+
type SandboxVolumeMount$1 = {
|
|
300
|
+
host: string;
|
|
301
|
+
container: string;
|
|
302
|
+
readonly?: boolean;
|
|
303
|
+
};
|
|
304
|
+
|
|
305
|
+
type SandboxRuntime$1 = "bubblewrap" | "docker" | "codeplane";
|
|
306
|
+
|
|
307
|
+
type SandboxProps$2 = {
|
|
308
|
+
id: string;
|
|
309
|
+
/** Child workflow definition. If omitted, createSmithers-bound Sandbox wrappers may provide one. */
|
|
310
|
+
workflow?: WorkflowDefinition<unknown>;
|
|
311
|
+
/** Input passed to the child workflow. */
|
|
312
|
+
input?: unknown;
|
|
313
|
+
output: OutputTarget$1;
|
|
314
|
+
runtime?: SandboxRuntime$1;
|
|
315
|
+
allowNetwork?: boolean;
|
|
316
|
+
reviewDiffs?: boolean;
|
|
317
|
+
autoAcceptDiffs?: boolean;
|
|
318
|
+
image?: string;
|
|
319
|
+
env?: Record<string, string>;
|
|
320
|
+
ports?: Array<{
|
|
321
|
+
host: number;
|
|
322
|
+
container: number;
|
|
323
|
+
}>;
|
|
324
|
+
volumes?: SandboxVolumeMount$1[];
|
|
325
|
+
memoryLimit?: string;
|
|
326
|
+
cpuLimit?: string;
|
|
327
|
+
command?: string;
|
|
328
|
+
workspace?: SandboxWorkspaceSpec$1;
|
|
329
|
+
skipIf?: boolean;
|
|
330
|
+
timeoutMs?: number;
|
|
331
|
+
heartbeatTimeoutMs?: number;
|
|
332
|
+
heartbeatTimeout?: number;
|
|
333
|
+
retries?: number;
|
|
334
|
+
retryPolicy?: RetryPolicy$1;
|
|
335
|
+
continueOnFail?: boolean;
|
|
336
|
+
cache?: CachePolicy$1;
|
|
337
|
+
dependsOn?: string[];
|
|
338
|
+
needs?: Record<string, string>;
|
|
339
|
+
label?: string;
|
|
340
|
+
meta?: Record<string, unknown>;
|
|
341
|
+
key?: string;
|
|
342
|
+
children?: React.ReactNode;
|
|
343
|
+
};
|
|
344
|
+
|
|
345
|
+
type SagaStepProps$2 = {
|
|
346
|
+
id: string;
|
|
347
|
+
compensation: React.ReactElement;
|
|
348
|
+
children: React.ReactElement;
|
|
349
|
+
};
|
|
350
|
+
|
|
351
|
+
type SagaStepDef$1 = {
|
|
352
|
+
id: string;
|
|
353
|
+
action: React.ReactElement;
|
|
354
|
+
compensation: React.ReactElement;
|
|
355
|
+
label?: string;
|
|
356
|
+
};
|
|
357
|
+
|
|
358
|
+
type SagaProps$2 = {
|
|
359
|
+
id?: string;
|
|
360
|
+
steps?: SagaStepDef$1[];
|
|
361
|
+
onFailure?: "compensate" | "compensate-and-fail" | "fail";
|
|
362
|
+
skipIf?: boolean;
|
|
363
|
+
children?: React.ReactNode;
|
|
364
|
+
};
|
|
365
|
+
|
|
366
|
+
type RunbookStep$1 = {
|
|
367
|
+
/** Unique step identifier. */
|
|
368
|
+
id: string;
|
|
369
|
+
/** Agent for this step (falls back to `defaultAgent`). */
|
|
370
|
+
agent?: AgentLike;
|
|
371
|
+
/** Shell command or instruction for the step. */
|
|
372
|
+
command?: string;
|
|
373
|
+
/** Risk classification: safe auto-executes, risky/critical require approval. */
|
|
374
|
+
risk: "safe" | "risky" | "critical";
|
|
375
|
+
/** Human-readable label for the step. */
|
|
376
|
+
label?: string;
|
|
377
|
+
/** Per-step output schema override. */
|
|
378
|
+
output?: OutputTarget$1;
|
|
379
|
+
};
|
|
380
|
+
|
|
381
|
+
type ApprovalRequest$1 = {
|
|
382
|
+
title: string;
|
|
383
|
+
summary?: string;
|
|
384
|
+
metadata?: Record<string, unknown>;
|
|
385
|
+
};
|
|
386
|
+
|
|
387
|
+
type RunbookProps$2 = {
|
|
388
|
+
id?: string;
|
|
389
|
+
/** Ordered steps to execute. */
|
|
390
|
+
steps: RunbookStep$1[];
|
|
391
|
+
/** Default agent for steps that don't specify one. */
|
|
392
|
+
defaultAgent?: AgentLike;
|
|
393
|
+
/** Default output schema for step results. */
|
|
394
|
+
stepOutput: OutputTarget$1;
|
|
395
|
+
/** Template for approval requests on risky/critical steps. */
|
|
396
|
+
approvalRequest?: Partial<ApprovalRequest$1>;
|
|
397
|
+
/** Behavior when a risky/critical step is denied: "fail" (default) or "skip". */
|
|
398
|
+
onDeny?: "fail" | "skip";
|
|
399
|
+
skipIf?: boolean;
|
|
400
|
+
};
|
|
401
|
+
|
|
402
|
+
type ReviewLoopProps$2 = {
|
|
403
|
+
id?: string;
|
|
404
|
+
/** Agent that produces or fixes the work each iteration. */
|
|
405
|
+
producer: AgentLike;
|
|
406
|
+
/** Agent (or agents) that reviews the produced work. */
|
|
407
|
+
reviewer: AgentLike | AgentLike[];
|
|
408
|
+
/** Output schema for the produced work. */
|
|
409
|
+
produceOutput: OutputTarget$1;
|
|
410
|
+
/** Output schema for the review result. Must include an `approved: boolean` field. */
|
|
411
|
+
reviewOutput: OutputTarget$1;
|
|
412
|
+
/** Maximum number of review cycles before stopping. @default 5 */
|
|
413
|
+
maxIterations?: number;
|
|
414
|
+
/** Behavior when maxIterations is reached. @default "return-last" */
|
|
415
|
+
onMaxReached?: "return-last" | "fail";
|
|
416
|
+
/** Skip the entire review loop. */
|
|
417
|
+
skipIf?: boolean;
|
|
418
|
+
/** Initial prompt for the producer (string or ReactNode). */
|
|
419
|
+
children: string | React.ReactNode;
|
|
420
|
+
};
|
|
421
|
+
|
|
422
|
+
type LoopProps$2 = {
|
|
423
|
+
id?: string;
|
|
424
|
+
until?: boolean;
|
|
425
|
+
maxIterations?: number;
|
|
426
|
+
onMaxReached?: "fail" | "return-last";
|
|
427
|
+
continueAsNewEvery?: number;
|
|
428
|
+
skipIf?: boolean;
|
|
429
|
+
children?: React.ReactNode;
|
|
430
|
+
};
|
|
431
|
+
|
|
432
|
+
/** @deprecated Use `LoopProps` instead. */
|
|
433
|
+
type RalphProps$1 = LoopProps$2;
|
|
434
|
+
|
|
435
|
+
type PollerProps$2 = {
|
|
436
|
+
/** ID prefix for generated task/component ids. */
|
|
437
|
+
id?: string;
|
|
438
|
+
/** Agent or compute function that checks the condition. */
|
|
439
|
+
check: AgentLike | (() => unknown | Promise<unknown>);
|
|
440
|
+
/** Output schema for the check result. Must include `satisfied: boolean`. */
|
|
441
|
+
checkOutput: OutputTarget$1;
|
|
442
|
+
/** Maximum poll attempts. Default 30. */
|
|
443
|
+
maxAttempts?: number;
|
|
444
|
+
/** Backoff strategy between polls. Default "fixed". */
|
|
445
|
+
backoff?: "fixed" | "linear" | "exponential";
|
|
446
|
+
/** Base interval in milliseconds between polls. Default 5000. */
|
|
447
|
+
intervalMs?: number;
|
|
448
|
+
/** Behavior when maxAttempts is reached. Default "fail". */
|
|
449
|
+
onTimeout?: "fail" | "return-last";
|
|
450
|
+
/** Skip the entire component. */
|
|
451
|
+
skipIf?: boolean;
|
|
452
|
+
/** Prompt/condition description for the check agent. */
|
|
453
|
+
children?: React.ReactNode;
|
|
454
|
+
};
|
|
455
|
+
|
|
456
|
+
type ParallelProps$2 = {
|
|
457
|
+
id?: string;
|
|
458
|
+
maxConcurrency?: number;
|
|
459
|
+
skipIf?: boolean;
|
|
460
|
+
children?: React.ReactNode;
|
|
461
|
+
};
|
|
462
|
+
|
|
463
|
+
type PanelistConfig$1 = {
|
|
464
|
+
agent: AgentLike;
|
|
465
|
+
role?: string;
|
|
466
|
+
label?: string;
|
|
467
|
+
};
|
|
468
|
+
|
|
469
|
+
type PanelProps$2 = {
|
|
470
|
+
id?: string;
|
|
471
|
+
panelists: PanelistConfig$1[] | AgentLike[];
|
|
472
|
+
moderator: AgentLike;
|
|
473
|
+
panelistOutput: OutputTarget$1;
|
|
474
|
+
moderatorOutput: OutputTarget$1;
|
|
475
|
+
strategy?: "synthesize" | "vote" | "consensus";
|
|
476
|
+
minAgree?: number;
|
|
477
|
+
maxConcurrency?: number;
|
|
478
|
+
skipIf?: boolean;
|
|
479
|
+
children: string | React.ReactNode;
|
|
480
|
+
};
|
|
481
|
+
|
|
482
|
+
type OptimizerProps$2 = {
|
|
483
|
+
id?: string;
|
|
484
|
+
/** Agent that generates or improves candidates each iteration. */
|
|
485
|
+
generator: AgentLike;
|
|
486
|
+
/** Agent (or compute function) that scores candidates. */
|
|
487
|
+
evaluator: AgentLike | ((candidate: unknown) => unknown | Promise<unknown>);
|
|
488
|
+
/** Output schema for generated candidates. */
|
|
489
|
+
generateOutput: OutputTarget$1;
|
|
490
|
+
/** Output schema for evaluation results. Must include a `score: number` field. */
|
|
491
|
+
evaluateOutput: OutputTarget$1;
|
|
492
|
+
/** Score threshold to stop early. When omitted, runs all iterations. */
|
|
493
|
+
targetScore?: number;
|
|
494
|
+
/** Maximum optimization rounds. @default 10 */
|
|
495
|
+
maxIterations?: number;
|
|
496
|
+
/** Behavior when maxIterations is reached. @default "return-last" */
|
|
497
|
+
onMaxReached?: "return-last" | "fail";
|
|
498
|
+
/** Skip the entire optimization loop. */
|
|
499
|
+
skipIf?: boolean;
|
|
500
|
+
/** Initial generation prompt (string or ReactNode). */
|
|
501
|
+
children: string | React.ReactNode;
|
|
502
|
+
};
|
|
503
|
+
|
|
504
|
+
/**
|
|
505
|
+
* Queue tasks so that at most `maxConcurrency` run concurrently across the group.
|
|
506
|
+
* Defaults to 1, providing an easy merge queue primitive.
|
|
507
|
+
*/
|
|
508
|
+
type MergeQueueProps$2 = {
|
|
509
|
+
id?: string;
|
|
510
|
+
maxConcurrency?: number;
|
|
511
|
+
skipIf?: boolean;
|
|
512
|
+
children?: React.ReactNode;
|
|
513
|
+
};
|
|
514
|
+
|
|
515
|
+
type ColumnTaskProps = Omit<Partial<TaskProps$2<unknown>>, "agent" | "children" | "id" | "key" | "output" | "smithersContext">;
|
|
516
|
+
type ColumnDef$1 = {
|
|
517
|
+
name: string;
|
|
518
|
+
agent: AgentLike;
|
|
519
|
+
/** Output schema for tasks in this column. */
|
|
520
|
+
output: OutputTarget$1;
|
|
521
|
+
/** Prompt template. Receives `{ item, column }` and returns a string. */
|
|
522
|
+
prompt?: (ctx: {
|
|
523
|
+
item: unknown;
|
|
524
|
+
column: string;
|
|
525
|
+
}) => string;
|
|
526
|
+
/** Optional Task props applied to each generated item task in this column. */
|
|
527
|
+
task?: ColumnTaskProps;
|
|
528
|
+
};
|
|
529
|
+
|
|
530
|
+
type KanbanProps$2 = {
|
|
531
|
+
id?: string;
|
|
532
|
+
/** Column definitions in order. Items flow left to right. */
|
|
533
|
+
columns: ColumnDef$1[];
|
|
534
|
+
/** Function that returns ticket items to process. Each item must have an `id` field. */
|
|
535
|
+
useTickets: () => Array<{
|
|
536
|
+
id: string;
|
|
537
|
+
[key: string]: unknown;
|
|
538
|
+
}>;
|
|
539
|
+
/** Record mapping column names to agents. Overrides column-level agents. */
|
|
540
|
+
agents?: Record<string, AgentLike>;
|
|
541
|
+
/** Max items processed in parallel per column. */
|
|
542
|
+
maxConcurrency?: number;
|
|
543
|
+
/** Callback output schema when an item reaches the final column. */
|
|
544
|
+
onComplete?: OutputTarget$1;
|
|
545
|
+
/** Whether the board loop is done. When true, the loop exits. */
|
|
546
|
+
until?: boolean;
|
|
547
|
+
/** Max iterations through the column pipeline. */
|
|
548
|
+
maxIterations?: number;
|
|
549
|
+
skipIf?: boolean;
|
|
550
|
+
children?: React.ReactNode | Record<string, unknown>;
|
|
551
|
+
};
|
|
552
|
+
|
|
553
|
+
type HumanTaskProps$2 = {
|
|
554
|
+
id: string;
|
|
555
|
+
/** Where to store the human's response. */
|
|
556
|
+
output: OutputTarget$1;
|
|
557
|
+
/** Zod schema the human must conform to. Used for validation. */
|
|
558
|
+
outputSchema?: z.ZodObject<z.ZodRawShape>;
|
|
559
|
+
/** Instructions for the human (string or ReactNode). */
|
|
560
|
+
prompt: string | React.ReactNode;
|
|
561
|
+
/** Max validation retries before failure. */
|
|
562
|
+
maxAttempts?: number;
|
|
563
|
+
/** Do not block unrelated downstream flow while waiting for human input. */
|
|
564
|
+
async?: boolean;
|
|
565
|
+
skipIf?: boolean;
|
|
566
|
+
timeoutMs?: number;
|
|
567
|
+
continueOnFail?: boolean;
|
|
568
|
+
/** Explicit dependency on other task node IDs. */
|
|
569
|
+
dependsOn?: string[];
|
|
570
|
+
/** Named dependencies on other tasks. Keys become context keys, values are task node IDs. */
|
|
571
|
+
needs?: Record<string, string>;
|
|
572
|
+
label?: string;
|
|
573
|
+
meta?: Record<string, unknown>;
|
|
574
|
+
key?: string;
|
|
575
|
+
};
|
|
576
|
+
|
|
577
|
+
type GatherAndSynthesizeProps$2 = {
|
|
578
|
+
id?: string;
|
|
579
|
+
/** Record mapping source names to source definitions. */
|
|
580
|
+
sources: Record<string, SourceDef$1>;
|
|
581
|
+
/** Agent that synthesizes gathered data. */
|
|
582
|
+
synthesizer: AgentLike;
|
|
583
|
+
/** Default output schema for each source gather task. */
|
|
584
|
+
gatherOutput: OutputTarget$1;
|
|
585
|
+
/** Output schema for the synthesis task. */
|
|
586
|
+
synthesisOutput: OutputTarget$1;
|
|
587
|
+
/** Gathered results keyed by source name. Typically from ctx.outputMaybe(). */
|
|
588
|
+
gatheredResults?: Record<string, unknown> | null;
|
|
589
|
+
/** Max parallel gatherers. */
|
|
590
|
+
maxConcurrency?: number;
|
|
591
|
+
/** Prompt for the synthesis task. If omitted, a default prompt is generated. */
|
|
592
|
+
synthesisPrompt?: string;
|
|
593
|
+
skipIf?: boolean;
|
|
594
|
+
children?: React.ReactNode;
|
|
595
|
+
};
|
|
596
|
+
|
|
597
|
+
type EscalationLevel$1 = {
|
|
598
|
+
/** Agent to handle this escalation level. */
|
|
599
|
+
agent: AgentLike;
|
|
600
|
+
/** Output target for this level's result. */
|
|
601
|
+
output: OutputTarget$1;
|
|
602
|
+
/** Display label for this level. */
|
|
603
|
+
label?: string;
|
|
604
|
+
/** Predicate evaluated on the level's result. Return `true` to escalate. */
|
|
605
|
+
escalateIf?: (result: unknown) => boolean;
|
|
606
|
+
};
|
|
607
|
+
|
|
608
|
+
type EscalationChainProps$2 = {
|
|
609
|
+
/** ID prefix for generated nodes. */
|
|
610
|
+
id?: string;
|
|
611
|
+
/** Ordered escalation levels. Each level runs only if the previous escalated. */
|
|
612
|
+
levels: EscalationLevel$1[];
|
|
613
|
+
/** If `true`, the final escalation produces a human approval node. */
|
|
614
|
+
humanFallback?: boolean;
|
|
615
|
+
/** Approval request config used when `humanFallback` is `true`. */
|
|
616
|
+
humanRequest?: ApprovalRequest$1;
|
|
617
|
+
/** Output target for escalation tracking at each level. */
|
|
618
|
+
escalationOutput: OutputTarget$1;
|
|
619
|
+
skipIf?: boolean;
|
|
620
|
+
/** Prompt / input passed to each agent level. */
|
|
621
|
+
children?: React.ReactNode;
|
|
622
|
+
};
|
|
623
|
+
|
|
624
|
+
type DriftDetectorProps$2 = {
|
|
625
|
+
/** ID prefix for generated task/component ids. */
|
|
626
|
+
id?: string;
|
|
627
|
+
/** Agent that captures the current state snapshot. */
|
|
628
|
+
captureAgent: AgentLike;
|
|
629
|
+
/** Agent that compares current state against the baseline. */
|
|
630
|
+
compareAgent: AgentLike;
|
|
631
|
+
/** Output schema for the captured state. */
|
|
632
|
+
captureOutput: OutputTarget$1;
|
|
633
|
+
/** Output schema for the comparison result. Should include `drifted: boolean` and `significance: string`. */
|
|
634
|
+
compareOutput: OutputTarget$1;
|
|
635
|
+
/** Static baseline data, or a function/agent that fetches it. */
|
|
636
|
+
baseline: unknown;
|
|
637
|
+
/** Condition function that determines whether to fire the alert. If omitted, uses the `drifted` field from comparison output. */
|
|
638
|
+
alertIf?: (comparison: unknown) => boolean;
|
|
639
|
+
/** Element to render when drift is detected (e.g. a Task that sends a notification). */
|
|
640
|
+
alert?: React.ReactElement;
|
|
641
|
+
/** If set, wraps the detector in a Loop for periodic polling. */
|
|
642
|
+
poll?: {
|
|
643
|
+
intervalMs: number;
|
|
644
|
+
maxPolls?: number;
|
|
645
|
+
};
|
|
646
|
+
/** Skip the entire component. */
|
|
647
|
+
skipIf?: boolean;
|
|
648
|
+
};
|
|
649
|
+
|
|
650
|
+
type DecisionRule$1 = {
|
|
651
|
+
/** Condition evaluated at render time. */
|
|
652
|
+
when: boolean;
|
|
653
|
+
/** Element to render when this rule matches. */
|
|
654
|
+
then: React.ReactElement;
|
|
655
|
+
/** Optional display label for the rule. */
|
|
656
|
+
label?: string;
|
|
657
|
+
};
|
|
658
|
+
|
|
659
|
+
type DecisionTableProps$2 = {
|
|
660
|
+
/** ID prefix for generated wrapper nodes. */
|
|
661
|
+
id?: string;
|
|
662
|
+
/** Ordered list of rules. Each rule has a `when` condition and a `then` element. */
|
|
663
|
+
rules: DecisionRule$1[];
|
|
664
|
+
/** Fallback element rendered when no rules match. */
|
|
665
|
+
default?: React.ReactElement;
|
|
666
|
+
/** `"first-match"` (default): first matching rule wins. `"all-match"`: all matching rules run in parallel. */
|
|
667
|
+
strategy?: "first-match" | "all-match";
|
|
668
|
+
skipIf?: boolean;
|
|
669
|
+
};
|
|
670
|
+
|
|
671
|
+
type DebateProps$2 = {
|
|
672
|
+
id?: string;
|
|
673
|
+
proposer: AgentLike;
|
|
674
|
+
opponent: AgentLike;
|
|
675
|
+
judge: AgentLike;
|
|
676
|
+
rounds?: number;
|
|
677
|
+
argumentOutput: OutputTarget$1;
|
|
678
|
+
verdictOutput: OutputTarget$1;
|
|
679
|
+
topic: string | React.ReactNode;
|
|
680
|
+
skipIf?: boolean;
|
|
681
|
+
};
|
|
682
|
+
|
|
683
|
+
type ContinueAsNewProps$2 = {
|
|
684
|
+
/**
|
|
685
|
+
* Optional JSON-serializable state carried into the new run.
|
|
686
|
+
*/
|
|
687
|
+
state?: unknown;
|
|
688
|
+
};
|
|
689
|
+
|
|
690
|
+
type ContentPipelineStage$1 = {
|
|
691
|
+
/** Unique identifier for this stage. */
|
|
692
|
+
id: string;
|
|
693
|
+
/** Agent that performs this stage's work. */
|
|
694
|
+
agent: AgentLike;
|
|
695
|
+
/** Output schema for this stage. */
|
|
696
|
+
output: OutputTarget$1;
|
|
697
|
+
/** Human-readable label for the stage (used as task label). */
|
|
698
|
+
label?: string;
|
|
699
|
+
};
|
|
700
|
+
|
|
701
|
+
type ContentPipelineProps$2 = {
|
|
702
|
+
id?: string;
|
|
703
|
+
/** Pipeline stages executed in order. Each stage receives the previous stage's output. */
|
|
704
|
+
stages: ContentPipelineStage$1[];
|
|
705
|
+
/** Skip the entire pipeline. */
|
|
706
|
+
skipIf?: boolean;
|
|
707
|
+
/** Initial prompt/content for the first stage (string or ReactNode). */
|
|
708
|
+
children: string | React.ReactNode;
|
|
709
|
+
};
|
|
710
|
+
|
|
711
|
+
type CategoryConfig$1 = {
|
|
712
|
+
agent: AgentLike;
|
|
713
|
+
/** Output schema for this category's route handler. Overrides `routeOutput`. */
|
|
714
|
+
output?: OutputTarget$1;
|
|
715
|
+
/** Optional prompt for the route handler. Receives the classified item. */
|
|
716
|
+
prompt?: (item: unknown) => string;
|
|
717
|
+
};
|
|
718
|
+
|
|
719
|
+
type ClassifyAndRouteProps$2 = {
|
|
720
|
+
id?: string;
|
|
721
|
+
/** Items to classify. A single item or an array of items. */
|
|
722
|
+
items: unknown | unknown[];
|
|
723
|
+
/** Record mapping category names to agents or config objects. */
|
|
724
|
+
categories: Record<string, AgentLike | CategoryConfig$1>;
|
|
725
|
+
/** Agent that classifies items into categories. */
|
|
726
|
+
classifierAgent: AgentLike;
|
|
727
|
+
/** Output schema for the classification task. */
|
|
728
|
+
classifierOutput: OutputTarget$1;
|
|
729
|
+
/** Default output schema for routed work. Can be overridden per-category. */
|
|
730
|
+
routeOutput: OutputTarget$1;
|
|
731
|
+
/** Classification result used to drive routing. Typically from ctx.outputMaybe(). */
|
|
732
|
+
classificationResult?: {
|
|
733
|
+
classifications: Array<{
|
|
734
|
+
itemId?: string;
|
|
735
|
+
category: string;
|
|
736
|
+
[key: string]: unknown;
|
|
737
|
+
}>;
|
|
738
|
+
} | null;
|
|
739
|
+
/** Max parallel routes. */
|
|
740
|
+
maxConcurrency?: number;
|
|
741
|
+
skipIf?: boolean;
|
|
742
|
+
children?: React.ReactNode;
|
|
743
|
+
};
|
|
744
|
+
|
|
745
|
+
type CheckConfig$1 = {
|
|
746
|
+
id: string;
|
|
747
|
+
agent?: AgentLike;
|
|
748
|
+
command?: string;
|
|
749
|
+
label?: string;
|
|
750
|
+
};
|
|
751
|
+
|
|
752
|
+
type CheckSuiteProps$2 = {
|
|
753
|
+
id?: string;
|
|
754
|
+
checks: CheckConfig$1[] | Record<string, Omit<CheckConfig$1, "id">>;
|
|
755
|
+
verdictOutput: OutputTarget$1;
|
|
756
|
+
strategy?: "all-pass" | "majority" | "any-pass";
|
|
757
|
+
maxConcurrency?: number;
|
|
758
|
+
continueOnFail?: boolean;
|
|
759
|
+
skipIf?: boolean;
|
|
760
|
+
};
|
|
761
|
+
|
|
762
|
+
type BranchProps$2 = {
|
|
763
|
+
if: boolean;
|
|
764
|
+
then: React.ReactElement;
|
|
765
|
+
else?: React.ReactElement | null;
|
|
766
|
+
skipIf?: boolean;
|
|
767
|
+
};
|
|
768
|
+
|
|
769
|
+
/**
|
|
770
|
+
* Token budget configuration for Aspects.
|
|
771
|
+
*/
|
|
772
|
+
type TokenBudgetConfig = {
|
|
773
|
+
/** Maximum total tokens across all tasks within the Aspects scope. */
|
|
774
|
+
max: number;
|
|
775
|
+
/** Optional per-task token limit. */
|
|
776
|
+
perTask?: number;
|
|
777
|
+
/** Behavior when the budget is exceeded. Default: "fail". */
|
|
778
|
+
onExceeded?: "fail" | "warn" | "skip-remaining";
|
|
779
|
+
};
|
|
780
|
+
|
|
781
|
+
/**
|
|
782
|
+
* Latency SLO configuration for Aspects.
|
|
783
|
+
*/
|
|
784
|
+
type LatencySloConfig = {
|
|
785
|
+
/** Maximum total latency in milliseconds across all tasks. */
|
|
786
|
+
maxMs: number;
|
|
787
|
+
/** Optional per-task latency limit in milliseconds. */
|
|
788
|
+
perTask?: number;
|
|
789
|
+
/** Behavior when the SLO is exceeded. Default: "fail". */
|
|
790
|
+
onExceeded?: "fail" | "warn";
|
|
791
|
+
};
|
|
792
|
+
|
|
793
|
+
/**
|
|
794
|
+
* Cost budget configuration for Aspects.
|
|
795
|
+
*/
|
|
796
|
+
type CostBudgetConfig = {
|
|
797
|
+
/** Maximum total cost in USD across all tasks within the Aspects scope. */
|
|
798
|
+
maxUsd: number;
|
|
799
|
+
/** Behavior when the budget is exceeded. Default: "fail". */
|
|
800
|
+
onExceeded?: "fail" | "warn" | "skip-remaining";
|
|
801
|
+
};
|
|
802
|
+
|
|
803
|
+
/**
|
|
804
|
+
* Tracking configuration — which metrics to track.
|
|
805
|
+
*/
|
|
806
|
+
type TrackingConfig = {
|
|
807
|
+
/** Track token usage. Default: true. */
|
|
808
|
+
tokens?: boolean;
|
|
809
|
+
/** Track latency. Default: true. */
|
|
810
|
+
latency?: boolean;
|
|
811
|
+
/** Track cost. Default: true. */
|
|
812
|
+
cost?: boolean;
|
|
813
|
+
};
|
|
814
|
+
|
|
815
|
+
type AspectsProps$2 = {
|
|
816
|
+
/** Token budget — max total tokens, optional per-task limit, and exceeded behavior. */
|
|
817
|
+
tokenBudget?: TokenBudgetConfig;
|
|
818
|
+
/** Latency SLO — max total latency, optional per-task limit, and exceeded behavior. */
|
|
819
|
+
latencySlo?: LatencySloConfig;
|
|
820
|
+
/** Cost budget — max total USD, and exceeded behavior. */
|
|
821
|
+
costBudget?: CostBudgetConfig;
|
|
822
|
+
/** Which metrics to track. Defaults to all enabled. */
|
|
823
|
+
tracking?: TrackingConfig;
|
|
824
|
+
/** Workflow content these aspects apply to. */
|
|
825
|
+
children?: React.ReactNode;
|
|
826
|
+
};
|
|
827
|
+
|
|
828
|
+
type ApprovalMode$1 = "approve" | "select" | "rank";
|
|
829
|
+
|
|
830
|
+
type ApprovalOption$1 = {
|
|
831
|
+
key: string;
|
|
832
|
+
label: string;
|
|
833
|
+
summary?: string;
|
|
834
|
+
metadata?: Record<string, unknown>;
|
|
835
|
+
};
|
|
836
|
+
|
|
837
|
+
type ApprovalAutoApprove$1 = {
|
|
838
|
+
after?: number;
|
|
839
|
+
condition?: ((ctx: SmithersCtx$1<unknown> | null) => boolean) | (() => boolean);
|
|
840
|
+
audit?: boolean;
|
|
841
|
+
revertOn?: ((ctx: SmithersCtx$1<unknown> | null) => boolean) | (() => boolean);
|
|
842
|
+
};
|
|
843
|
+
|
|
844
|
+
type ApprovalDecision$1 = z.infer<typeof approvalDecisionSchema>;
|
|
845
|
+
|
|
846
|
+
type ApprovalProps$2<Row = ApprovalDecision$1, Output extends OutputTarget$1 = OutputTarget$1> = {
|
|
847
|
+
id: string;
|
|
848
|
+
mode?: ApprovalMode$1;
|
|
849
|
+
options?: ApprovalOption$1[];
|
|
850
|
+
/** Where to persist the approval decision. Pass a Zod schema from `outputs` (recommended), a Drizzle table, or a string key. */
|
|
851
|
+
output: Output;
|
|
852
|
+
outputSchema?: z.ZodObject<z.ZodRawShape>;
|
|
853
|
+
request: ApprovalRequest$1;
|
|
854
|
+
onDeny?: "fail" | "continue" | "skip";
|
|
855
|
+
allowedScopes?: string[];
|
|
856
|
+
allowedUsers?: string[];
|
|
857
|
+
autoApprove?: ApprovalAutoApprove$1;
|
|
858
|
+
/** Do not block unrelated downstream flow while this approval is pending. */
|
|
859
|
+
async?: boolean;
|
|
860
|
+
/** Explicit dependency on other task node IDs. */
|
|
861
|
+
dependsOn?: string[];
|
|
862
|
+
/** Named dependencies on other tasks. Keys become context keys, values are task node IDs. */
|
|
863
|
+
needs?: Record<string, string>;
|
|
864
|
+
skipIf?: boolean;
|
|
865
|
+
timeoutMs?: number;
|
|
866
|
+
heartbeatTimeoutMs?: number;
|
|
867
|
+
heartbeatTimeout?: number;
|
|
868
|
+
retries?: number;
|
|
869
|
+
retryPolicy?: _smithers_scheduler_RetryPolicy.RetryPolicy;
|
|
870
|
+
continueOnFail?: boolean;
|
|
871
|
+
cache?: _smithers_scheduler_CachePolicy.CachePolicy;
|
|
872
|
+
label?: string;
|
|
873
|
+
meta?: Record<string, unknown>;
|
|
874
|
+
key?: string;
|
|
875
|
+
children?: React.ReactNode;
|
|
876
|
+
smithersContext?: React.Context<SmithersCtx$1<unknown> | null>;
|
|
877
|
+
};
|
|
878
|
+
|
|
879
|
+
type ApprovalRanking$1 = z.infer<typeof approvalRankingSchema>;
|
|
880
|
+
|
|
881
|
+
/**
|
|
882
|
+
* @template Row
|
|
883
|
+
* @param {ApprovalProps<Row>} props
|
|
884
|
+
* @returns {React.ReactElement | null}
|
|
885
|
+
*/
|
|
886
|
+
declare function Approval<Row>(props: ApprovalProps$1<Row>): React.ReactElement | null;
|
|
887
|
+
/** @typedef {import("./ApprovalAutoApprove.ts").ApprovalAutoApprove} ApprovalAutoApprove */
|
|
888
|
+
/** @typedef {import("./ApprovalMode.ts").ApprovalMode} ApprovalMode */
|
|
889
|
+
/** @typedef {import("./ApprovalOption.ts").ApprovalOption} ApprovalOption */
|
|
890
|
+
/**
|
|
891
|
+
* @template Row, Output
|
|
892
|
+
* @typedef {import("./ApprovalProps.ts").ApprovalProps<Row, Output>} ApprovalProps
|
|
893
|
+
*/
|
|
894
|
+
declare const approvalDecisionSchema: z.ZodObject<{
|
|
895
|
+
approved: z.ZodBoolean;
|
|
896
|
+
note: z.ZodNullable<z.ZodString>;
|
|
897
|
+
decidedBy: z.ZodNullable<z.ZodString>;
|
|
898
|
+
decidedAt: z.ZodNullable<z.ZodString>;
|
|
899
|
+
}, z.core.$strip>;
|
|
900
|
+
declare const approvalSelectionSchema: z.ZodObject<{
|
|
901
|
+
selected: z.ZodString;
|
|
902
|
+
notes: z.ZodNullable<z.ZodString>;
|
|
903
|
+
}, z.core.$strip>;
|
|
904
|
+
declare const approvalRankingSchema: z.ZodObject<{
|
|
905
|
+
ranked: z.ZodArray<z.ZodString>;
|
|
906
|
+
notes: z.ZodNullable<z.ZodString>;
|
|
907
|
+
}, z.core.$strip>;
|
|
908
|
+
type ApprovalProps$1<Row, Output> = ApprovalProps$2<Row, Output>;
|
|
909
|
+
|
|
910
|
+
type ApprovalSelection$1 = z.infer<typeof approvalSelectionSchema>;
|
|
911
|
+
|
|
912
|
+
type ApprovalGateProps$2 = {
|
|
913
|
+
id: string;
|
|
914
|
+
/** Where to persist the approval decision. */
|
|
915
|
+
output: OutputTarget$1;
|
|
916
|
+
/** Human-facing approval request. */
|
|
917
|
+
request: ApprovalRequest$1;
|
|
918
|
+
/** When `true`, approval is required. When `false`, auto-approves. */
|
|
919
|
+
when: boolean;
|
|
920
|
+
/** Behavior after denial. */
|
|
921
|
+
onDeny?: "fail" | "continue" | "skip";
|
|
922
|
+
skipIf?: boolean;
|
|
923
|
+
timeoutMs?: number;
|
|
924
|
+
heartbeatTimeoutMs?: number;
|
|
925
|
+
heartbeatTimeout?: number;
|
|
926
|
+
retries?: number;
|
|
927
|
+
retryPolicy?: RetryPolicy$1;
|
|
928
|
+
continueOnFail?: boolean;
|
|
929
|
+
};
|
|
930
|
+
|
|
931
|
+
/** @typedef {import("./WorkflowProps.ts").WorkflowProps} WorkflowProps */
|
|
932
|
+
/**
|
|
933
|
+
* @param {WorkflowProps} props
|
|
934
|
+
* @returns {React.DOMElement<WorkflowProps, Element>}
|
|
935
|
+
*/
|
|
936
|
+
declare function Workflow(props: WorkflowProps$1): React.DOMElement<WorkflowProps$1, Element>;
|
|
937
|
+
type WorkflowProps$1 = WorkflowProps$2;
|
|
938
|
+
|
|
939
|
+
/**
|
|
940
|
+
* @template Row, Output, D
|
|
941
|
+
* @param {TaskProps<Row, Output, D>} props
|
|
942
|
+
* @returns {React.ReactElement | null}
|
|
943
|
+
*/
|
|
944
|
+
declare function Task<Row, Output, D>(props: TaskProps$1<Row, Output, D>): React.ReactElement | null;
|
|
945
|
+
type TaskProps$1<Row, Output, D> = TaskProps$2<Row, Output, D>;
|
|
946
|
+
|
|
947
|
+
/** @typedef {import("./SequenceProps.ts").SequenceProps} SequenceProps */
|
|
948
|
+
/**
|
|
949
|
+
* @param {SequenceProps} props
|
|
950
|
+
*/
|
|
951
|
+
declare function Sequence(props: SequenceProps$1): React.DOMElement<SequenceProps$2, Element> | null;
|
|
952
|
+
type SequenceProps$1 = SequenceProps$2;
|
|
953
|
+
|
|
954
|
+
/** @typedef {import("./ParallelProps.ts").ParallelProps} ParallelProps */
|
|
955
|
+
/**
|
|
956
|
+
* @param {ParallelProps} props
|
|
957
|
+
*/
|
|
958
|
+
declare function Parallel(props: ParallelProps$1): React.ReactElement<{
|
|
959
|
+
maxConcurrency: number | undefined;
|
|
960
|
+
id: string | undefined;
|
|
961
|
+
}, string | React.JSXElementConstructor<any>> | null;
|
|
962
|
+
type ParallelProps$1 = ParallelProps$2;
|
|
963
|
+
|
|
964
|
+
/** @typedef {import("./MergeQueueProps.ts").MergeQueueProps} MergeQueueProps */
|
|
965
|
+
/**
|
|
966
|
+
* @param {MergeQueueProps} props
|
|
967
|
+
*/
|
|
968
|
+
declare function MergeQueue(props: MergeQueueProps$1): React.ReactElement<{
|
|
969
|
+
maxConcurrency: any;
|
|
970
|
+
id: string | undefined;
|
|
971
|
+
}, string | React.JSXElementConstructor<any>> | null;
|
|
972
|
+
type MergeQueueProps$1 = MergeQueueProps$2;
|
|
973
|
+
|
|
974
|
+
/** @typedef {import("./BranchProps.ts").BranchProps} BranchProps */
|
|
975
|
+
/**
|
|
976
|
+
* @param {BranchProps} props
|
|
977
|
+
*/
|
|
978
|
+
declare function Branch(props: BranchProps$1): React.ReactElement<BranchProps$2, string | React.JSXElementConstructor<any>> | null;
|
|
979
|
+
type BranchProps$1 = BranchProps$2;
|
|
980
|
+
|
|
981
|
+
/** @typedef {import("./WorktreeProps.ts").WorktreeProps} WorktreeProps */
|
|
982
|
+
/**
|
|
983
|
+
* @param {WorktreeProps} props
|
|
984
|
+
*/
|
|
985
|
+
declare function Worktree(props: WorktreeProps$1): React.ReactElement<{
|
|
986
|
+
id: string | undefined;
|
|
987
|
+
path: string;
|
|
988
|
+
branch: string | undefined;
|
|
989
|
+
baseBranch: string | undefined;
|
|
990
|
+
}, string | React.JSXElementConstructor<any>> | null;
|
|
991
|
+
type WorktreeProps$1 = WorktreeProps$2;
|
|
992
|
+
|
|
993
|
+
/**
|
|
994
|
+
* <Kanban> — Process items through columns with pluggable ticket source.
|
|
995
|
+
*
|
|
996
|
+
* Composes Loop, Sequence, Parallel, and Task to create a board where items
|
|
997
|
+
* flow through columns. Each column processes items via its assigned agent.
|
|
998
|
+
* Items in the same column can be processed in parallel.
|
|
999
|
+
* @param {KanbanProps} props
|
|
1000
|
+
*/
|
|
1001
|
+
declare function Kanban(props: KanbanProps$1): React.FunctionComponentElement<SequenceProps$2> | React.FunctionComponentElement<LoopProps$2> | null;
|
|
1002
|
+
type KanbanProps$1 = KanbanProps$2;
|
|
1003
|
+
|
|
1004
|
+
/**
|
|
1005
|
+
* <ClassifyAndRoute> — Classify items then route to category-specific agents.
|
|
1006
|
+
*
|
|
1007
|
+
* Composes Sequence, Task, and Parallel. First a classifier Task assigns items
|
|
1008
|
+
* to categories, then a Parallel block routes each classified item to the
|
|
1009
|
+
* appropriate category agent.
|
|
1010
|
+
* @param {ClassifyAndRouteProps} props
|
|
1011
|
+
*/
|
|
1012
|
+
declare function ClassifyAndRoute(props: ClassifyAndRouteProps$1): React.FunctionComponentElement<SequenceProps$2> | null;
|
|
1013
|
+
type ClassifyAndRouteProps$1 = ClassifyAndRouteProps$2;
|
|
1014
|
+
|
|
1015
|
+
/**
|
|
1016
|
+
* <GatherAndSynthesize> — Parallel data collection from different sources,
|
|
1017
|
+
* then synthesis into a unified result.
|
|
1018
|
+
*
|
|
1019
|
+
* Composes Sequence, Parallel, and Task. First a Parallel block gathers data
|
|
1020
|
+
* from each source agent, then a synthesis Task receives all gathered data
|
|
1021
|
+
* and produces a combined output.
|
|
1022
|
+
* @param {GatherAndSynthesizeProps} props
|
|
1023
|
+
*/
|
|
1024
|
+
declare function GatherAndSynthesize(props: GatherAndSynthesizeProps$1): React.FunctionComponentElement<SequenceProps$2> | null;
|
|
1025
|
+
type GatherAndSynthesizeProps$1 = GatherAndSynthesizeProps$2;
|
|
1026
|
+
|
|
1027
|
+
/**
|
|
1028
|
+
* <Panel> — Parallel specialists review the same input, then a moderator synthesizes.
|
|
1029
|
+
*
|
|
1030
|
+
* Composes: Sequence > Parallel[Task per panelist] > Task(moderator)
|
|
1031
|
+
* @param {PanelProps} props
|
|
1032
|
+
*/
|
|
1033
|
+
declare function Panel(props: PanelProps$1): React.FunctionComponentElement<SequenceProps$2> | null;
|
|
1034
|
+
type PanelProps$1 = PanelProps$2;
|
|
1035
|
+
|
|
1036
|
+
/**
|
|
1037
|
+
* <CheckSuite> — Parallel checks with auto-aggregated pass/fail verdict.
|
|
1038
|
+
*
|
|
1039
|
+
* Composes: Sequence > Parallel[Task per check] > Task(verdict aggregator)
|
|
1040
|
+
* @param {CheckSuiteProps} props
|
|
1041
|
+
*/
|
|
1042
|
+
declare function CheckSuite(props: CheckSuiteProps$1): React.FunctionComponentElement<SequenceProps$2> | null;
|
|
1043
|
+
type CheckSuiteProps$1 = CheckSuiteProps$2;
|
|
1044
|
+
|
|
1045
|
+
/**
|
|
1046
|
+
* <Debate> — Adversarial rounds with rebuttals, followed by a judge verdict.
|
|
1047
|
+
*
|
|
1048
|
+
* Composes: Sequence > Loop[Parallel(proposer, opponent)] > Task(judge)
|
|
1049
|
+
* @param {DebateProps} props
|
|
1050
|
+
*/
|
|
1051
|
+
declare function Debate(props: DebateProps$1): React.FunctionComponentElement<SequenceProps$2> | null;
|
|
1052
|
+
type DebateProps$1 = DebateProps$2;
|
|
1053
|
+
|
|
1054
|
+
/**
|
|
1055
|
+
* Produce -> review -> fix -> repeat until approved.
|
|
1056
|
+
*
|
|
1057
|
+
* Composes Loop, Sequence, and Task to create a standard
|
|
1058
|
+
* review-loop pattern. The producer receives the reviewer's
|
|
1059
|
+
* feedback on subsequent iterations.
|
|
1060
|
+
* @param {ReviewLoopProps} props
|
|
1061
|
+
*/
|
|
1062
|
+
declare function ReviewLoop(props: ReviewLoopProps$1): React.FunctionComponentElement<LoopProps$2> | null;
|
|
1063
|
+
type ReviewLoopProps$1 = ReviewLoopProps$2;
|
|
1064
|
+
|
|
1065
|
+
/**
|
|
1066
|
+
* Generate -> evaluate -> improve loop with score convergence.
|
|
1067
|
+
*
|
|
1068
|
+
* Composes Loop, Sequence, and Task to create an iterative
|
|
1069
|
+
* optimization pattern. Each iteration receives the previous
|
|
1070
|
+
* score and feedback to guide improvement.
|
|
1071
|
+
* @param {OptimizerProps} props
|
|
1072
|
+
*/
|
|
1073
|
+
declare function Optimizer(props: OptimizerProps$1): React.FunctionComponentElement<LoopProps$2> | null;
|
|
1074
|
+
type OptimizerProps$1 = OptimizerProps$2;
|
|
1075
|
+
|
|
1076
|
+
/**
|
|
1077
|
+
* Progressive content refinement: outline -> draft -> edit -> publish.
|
|
1078
|
+
*
|
|
1079
|
+
* Composes Sequence and Task to create a typed waterfall where each
|
|
1080
|
+
* stage is explicitly defined. Each Task uses `needs` to depend on
|
|
1081
|
+
* the previous stage, passing output forward through the pipeline.
|
|
1082
|
+
* @param {ContentPipelineProps} props
|
|
1083
|
+
*/
|
|
1084
|
+
declare function ContentPipeline(props: ContentPipelineProps$1): React.FunctionComponentElement<SequenceProps$2> | null;
|
|
1085
|
+
type ContentPipelineProps$1 = ContentPipelineProps$2;
|
|
1086
|
+
|
|
1087
|
+
/**
|
|
1088
|
+
* Conditional approval gate. Requires human approval only when `when` is true;
|
|
1089
|
+
* otherwise auto-approves with a static `{ approved: true }` decision.
|
|
1090
|
+
*
|
|
1091
|
+
* Composes Branch + Approval + Task internally.
|
|
1092
|
+
* @param {ApprovalGateProps} props
|
|
1093
|
+
*/
|
|
1094
|
+
declare function ApprovalGate(props: ApprovalGateProps$1): React.FunctionComponentElement<BranchProps$2> | null;
|
|
1095
|
+
type ApprovalGateProps$1 = ApprovalGateProps$2;
|
|
1096
|
+
|
|
1097
|
+
/**
|
|
1098
|
+
* Escalation chain: tries agents in order, escalating on failure or when
|
|
1099
|
+
* `escalateIf` returns `true`. Optionally ends with a human approval fallback.
|
|
1100
|
+
*
|
|
1101
|
+
* Composes Sequence + Task (with `continueOnFail`) + Branch + Approval.
|
|
1102
|
+
* @param {EscalationChainProps} props
|
|
1103
|
+
*/
|
|
1104
|
+
declare function EscalationChain(props: EscalationChainProps$1): React.FunctionComponentElement<SequenceProps$2> | null;
|
|
1105
|
+
type EscalationChainProps$1 = EscalationChainProps$2;
|
|
1106
|
+
|
|
1107
|
+
/**
|
|
1108
|
+
* Structured deterministic routing. Replaces deeply nested Branches with a
|
|
1109
|
+
* flat, declarative rule table.
|
|
1110
|
+
*
|
|
1111
|
+
* - `"first-match"` builds nested Branch elements so the first matching rule wins.
|
|
1112
|
+
* - `"all-match"` gathers all matching rules' `then` elements into a Parallel.
|
|
1113
|
+
*
|
|
1114
|
+
* Composes Branch and Parallel internally.
|
|
1115
|
+
* @param {DecisionTableProps} props
|
|
1116
|
+
*/
|
|
1117
|
+
declare function DecisionTable(props: DecisionTableProps$1): React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | React.FunctionComponentElement<ParallelProps$2> | null;
|
|
1118
|
+
type DecisionTableProps$1 = DecisionTableProps$2;
|
|
1119
|
+
|
|
1120
|
+
/** @typedef {import("./DriftDetectorProps.ts").DriftDetectorProps} DriftDetectorProps */
|
|
1121
|
+
/**
|
|
1122
|
+
* @param {DriftDetectorProps} props
|
|
1123
|
+
*/
|
|
1124
|
+
declare function DriftDetector(props: DriftDetectorProps$1): React.FunctionComponentElement<SequenceProps$2> | React.FunctionComponentElement<LoopProps$2> | null;
|
|
1125
|
+
type DriftDetectorProps$1 = DriftDetectorProps$2;
|
|
1126
|
+
|
|
1127
|
+
/** @typedef {import("./ScanFixVerifyProps.ts").ScanFixVerifyProps} ScanFixVerifyProps */
|
|
1128
|
+
/**
|
|
1129
|
+
* @param {ScanFixVerifyProps} props
|
|
1130
|
+
*/
|
|
1131
|
+
declare function ScanFixVerify(props: ScanFixVerifyProps$1): React.FunctionComponentElement<SequenceProps$2> | null;
|
|
1132
|
+
type ScanFixVerifyProps$1 = ScanFixVerifyProps$2;
|
|
1133
|
+
|
|
1134
|
+
/**
|
|
1135
|
+
* @param {PollerProps} props
|
|
1136
|
+
*/
|
|
1137
|
+
declare function Poller(props: PollerProps$1): React.FunctionComponentElement<LoopProps$2> | null;
|
|
1138
|
+
type PollerProps$1 = PollerProps$2;
|
|
1139
|
+
|
|
1140
|
+
/**
|
|
1141
|
+
* <Supervisor> — Boss plans, delegates to parallel workers, reviews, re-delegates failures.
|
|
1142
|
+
*
|
|
1143
|
+
* Composes: Sequence → [plan Task, Loop(until allDone) [Parallel worker Tasks, review Task], final Task]
|
|
1144
|
+
* @param {SupervisorProps} props
|
|
1145
|
+
*/
|
|
1146
|
+
declare function Supervisor(props: SupervisorProps$1): React.FunctionComponentElement<SequenceProps$2> | null;
|
|
1147
|
+
type SupervisorProps$1 = SupervisorProps$2;
|
|
1148
|
+
|
|
1149
|
+
/**
|
|
1150
|
+
* <Runbook> — Sequential steps with risk classification.
|
|
1151
|
+
*
|
|
1152
|
+
* Safe steps auto-execute. Risky and critical steps require human approval first.
|
|
1153
|
+
* Composes: Sequence of [Approval? → Task] per step, chained via `needs`.
|
|
1154
|
+
* @param {RunbookProps} props
|
|
1155
|
+
*/
|
|
1156
|
+
declare function Runbook(props: RunbookProps$1): React.FunctionComponentElement<SequenceProps$2> | null;
|
|
1157
|
+
type RunbookProps$1 = RunbookProps$2;
|
|
1158
|
+
|
|
1159
|
+
/** @typedef {import("./SubflowProps.ts").SubflowProps} SubflowProps */
|
|
1160
|
+
/**
|
|
1161
|
+
* @param {SubflowProps} props
|
|
1162
|
+
*/
|
|
1163
|
+
declare function Subflow(props: SubflowProps$1): React.ReactElement<{
|
|
1164
|
+
id: string;
|
|
1165
|
+
key: string | undefined;
|
|
1166
|
+
workflow: _smithers_driver.WorkflowDefinition<unknown>;
|
|
1167
|
+
input: unknown;
|
|
1168
|
+
mode: "childRun" | "inline";
|
|
1169
|
+
output: OutputTarget$1;
|
|
1170
|
+
timeoutMs: number | undefined;
|
|
1171
|
+
heartbeatTimeoutMs: number | undefined;
|
|
1172
|
+
heartbeatTimeout: number | undefined;
|
|
1173
|
+
retries: number | undefined;
|
|
1174
|
+
retryPolicy: {
|
|
1175
|
+
backoff?: "fixed" | "linear" | "exponential";
|
|
1176
|
+
initialDelayMs?: number;
|
|
1177
|
+
} | undefined;
|
|
1178
|
+
continueOnFail: boolean | undefined;
|
|
1179
|
+
cache: _smithers_scheduler.CachePolicy | undefined;
|
|
1180
|
+
dependsOn: string[] | undefined;
|
|
1181
|
+
needs: Record<string, string> | undefined;
|
|
1182
|
+
label: string;
|
|
1183
|
+
meta: Record<string, unknown> | undefined;
|
|
1184
|
+
__smithersSubflowWorkflow: _smithers_driver.WorkflowDefinition<unknown>;
|
|
1185
|
+
__smithersSubflowInput: unknown;
|
|
1186
|
+
__smithersSubflowMode: "childRun" | "inline";
|
|
1187
|
+
}, string | React.JSXElementConstructor<any>> | null;
|
|
1188
|
+
type SubflowProps$1 = SubflowProps$2;
|
|
1189
|
+
|
|
1190
|
+
/** @typedef {import("./SandboxProps.ts").SandboxProps} SandboxProps */
|
|
1191
|
+
/**
|
|
1192
|
+
* @param {SandboxProps} props
|
|
1193
|
+
*/
|
|
1194
|
+
declare function Sandbox(props: SandboxProps$1): React.ReactElement<{
|
|
1195
|
+
id: string;
|
|
1196
|
+
key: string | undefined;
|
|
1197
|
+
output: OutputTarget$1;
|
|
1198
|
+
runtime: SandboxRuntime$1;
|
|
1199
|
+
allowNetwork: boolean | undefined;
|
|
1200
|
+
reviewDiffs: boolean | undefined;
|
|
1201
|
+
autoAcceptDiffs: boolean | undefined;
|
|
1202
|
+
image: string | undefined;
|
|
1203
|
+
env: Record<string, string> | undefined;
|
|
1204
|
+
ports: {
|
|
1205
|
+
host: number;
|
|
1206
|
+
container: number;
|
|
1207
|
+
}[] | undefined;
|
|
1208
|
+
volumes: SandboxVolumeMount$1[] | undefined;
|
|
1209
|
+
memoryLimit: string | undefined;
|
|
1210
|
+
cpuLimit: string | undefined;
|
|
1211
|
+
command: string | undefined;
|
|
1212
|
+
workspace: SandboxWorkspaceSpec$1 | undefined;
|
|
1213
|
+
timeoutMs: number | undefined;
|
|
1214
|
+
heartbeatTimeoutMs: number | undefined;
|
|
1215
|
+
heartbeatTimeout: number | undefined;
|
|
1216
|
+
retries: number | undefined;
|
|
1217
|
+
retryPolicy: {
|
|
1218
|
+
backoff?: "fixed" | "linear" | "exponential";
|
|
1219
|
+
initialDelayMs?: number;
|
|
1220
|
+
} | undefined;
|
|
1221
|
+
continueOnFail: boolean | undefined;
|
|
1222
|
+
cache: _smithers_scheduler.CachePolicy | undefined;
|
|
1223
|
+
dependsOn: string[] | undefined;
|
|
1224
|
+
needs: Record<string, string> | undefined;
|
|
1225
|
+
label: string;
|
|
1226
|
+
meta: Record<string, unknown> | undefined;
|
|
1227
|
+
__smithersSandboxWorkflow: _smithers_driver.WorkflowDefinition<unknown> | undefined;
|
|
1228
|
+
__smithersSandboxInput: unknown;
|
|
1229
|
+
__smithersSandboxRuntime: SandboxRuntime$1;
|
|
1230
|
+
__smithersSandboxChildren: React.ReactNode;
|
|
1231
|
+
}, string | React.JSXElementConstructor<any>> | null;
|
|
1232
|
+
type SandboxProps$1 = SandboxProps$2;
|
|
1233
|
+
|
|
1234
|
+
/** @typedef {import("./WaitForEventProps.ts").WaitForEventProps} WaitForEventProps */
|
|
1235
|
+
/**
|
|
1236
|
+
* @param {WaitForEventProps} props
|
|
1237
|
+
*/
|
|
1238
|
+
declare function WaitForEvent(props: WaitForEventProps$1): React.ReactElement<{
|
|
1239
|
+
id: string;
|
|
1240
|
+
key: string | undefined;
|
|
1241
|
+
event: string;
|
|
1242
|
+
correlationId: string | undefined;
|
|
1243
|
+
output: OutputTarget$1;
|
|
1244
|
+
outputSchema: zod.ZodObject<Readonly<{
|
|
1245
|
+
[k: string]: zod_v4_core.$ZodType<unknown, unknown, zod_v4_core.$ZodTypeInternals<unknown, unknown>>;
|
|
1246
|
+
}>, zod_v4_core.$strip> | undefined;
|
|
1247
|
+
timeoutMs: number | undefined;
|
|
1248
|
+
onTimeout: "fail" | "continue" | "skip";
|
|
1249
|
+
waitAsync: boolean;
|
|
1250
|
+
dependsOn: string[] | undefined;
|
|
1251
|
+
needs: Record<string, string> | undefined;
|
|
1252
|
+
label: string;
|
|
1253
|
+
meta: {
|
|
1254
|
+
onTimeout?: "fail" | "continue" | "skip" | undefined;
|
|
1255
|
+
correlationId?: string | undefined;
|
|
1256
|
+
event: string;
|
|
1257
|
+
} | undefined;
|
|
1258
|
+
__smithersEventName: string;
|
|
1259
|
+
__smithersCorrelationId: string | undefined;
|
|
1260
|
+
__smithersOnTimeout: "fail" | "continue" | "skip";
|
|
1261
|
+
}, string | React.JSXElementConstructor<any>> | null;
|
|
1262
|
+
type WaitForEventProps$1 = WaitForEventProps$2;
|
|
1263
|
+
|
|
1264
|
+
/**
|
|
1265
|
+
* @template Schema
|
|
1266
|
+
* @typedef {import("./SignalProps.ts").SignalProps<Schema>} SignalProps
|
|
1267
|
+
*/
|
|
1268
|
+
/**
|
|
1269
|
+
* @template Schema
|
|
1270
|
+
* @param {SignalProps<Schema>} props
|
|
1271
|
+
*/
|
|
1272
|
+
declare function Signal<Schema>(props: SignalProps$1<Schema>): React.DetailedReactHTMLElement<React.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement> | React.FunctionComponentElement<React.FragmentProps> | null;
|
|
1273
|
+
type SignalProps$1<Schema> = SignalProps$2<Schema>;
|
|
1274
|
+
|
|
1275
|
+
/** @typedef {import("./TimerProps.ts").TimerProps} TimerProps */
|
|
1276
|
+
/**
|
|
1277
|
+
* @param {TimerProps} props
|
|
1278
|
+
*/
|
|
1279
|
+
declare function Timer(props: TimerProps$1): React.ReactElement<{
|
|
1280
|
+
id: string;
|
|
1281
|
+
key: string | undefined;
|
|
1282
|
+
duration: string | undefined;
|
|
1283
|
+
until: string | undefined;
|
|
1284
|
+
dependsOn: string[] | undefined;
|
|
1285
|
+
needs: Record<string, string> | undefined;
|
|
1286
|
+
label: string;
|
|
1287
|
+
meta: {
|
|
1288
|
+
until?: string | undefined;
|
|
1289
|
+
duration?: string | undefined;
|
|
1290
|
+
timer: boolean;
|
|
1291
|
+
} | undefined;
|
|
1292
|
+
__smithersTimerDuration: string | undefined;
|
|
1293
|
+
__smithersTimerUntil: string | undefined;
|
|
1294
|
+
}, string | React.JSXElementConstructor<any>> | null;
|
|
1295
|
+
type TimerProps$1 = TimerProps$2;
|
|
1296
|
+
|
|
1297
|
+
/**
|
|
1298
|
+
* @param {HumanTaskProps} props
|
|
1299
|
+
* @returns {React.ReactElement | null}
|
|
1300
|
+
*/
|
|
1301
|
+
declare function HumanTask(props: HumanTaskProps$1): React.ReactElement | null;
|
|
1302
|
+
type HumanTaskProps$1 = HumanTaskProps$2;
|
|
1303
|
+
|
|
1304
|
+
/**
|
|
1305
|
+
* Forward steps with registered compensations executed in reverse on failure/cancel.
|
|
1306
|
+
*
|
|
1307
|
+
* Use the `steps` prop for an array-driven API, or nest `<Saga.Step>` children
|
|
1308
|
+
* for a declarative JSX style.
|
|
1309
|
+
*
|
|
1310
|
+
* Renders to `<smithers:saga>`.
|
|
1311
|
+
* @param {SagaProps} props
|
|
1312
|
+
*/
|
|
1313
|
+
declare function Saga(props: SagaProps$1): React.ReactElement<{
|
|
1314
|
+
id: string | undefined;
|
|
1315
|
+
onFailure: "fail" | "compensate" | "compensate-and-fail";
|
|
1316
|
+
__sagaSteps: {
|
|
1317
|
+
id: any;
|
|
1318
|
+
label: any;
|
|
1319
|
+
}[];
|
|
1320
|
+
skipIf?: boolean;
|
|
1321
|
+
}, string | React.JSXElementConstructor<any>> | null;
|
|
1322
|
+
declare namespace Saga {
|
|
1323
|
+
export { SagaStep as Step };
|
|
1324
|
+
}
|
|
1325
|
+
type SagaStepProps$1 = SagaStepProps$2;
|
|
1326
|
+
type SagaProps$1 = SagaProps$2;
|
|
1327
|
+
/** @typedef {import("./SagaStepProps.ts").SagaStepProps} SagaStepProps */
|
|
1328
|
+
/**
|
|
1329
|
+
* @param {SagaStepProps} _props
|
|
1330
|
+
* @returns {React.ReactElement | null}
|
|
1331
|
+
*/
|
|
1332
|
+
declare function SagaStep(_props: SagaStepProps$1): React.ReactElement | null;
|
|
1333
|
+
declare namespace SagaStep {
|
|
1334
|
+
let __isSagaStep: boolean;
|
|
1335
|
+
}
|
|
1336
|
+
|
|
1337
|
+
/**
|
|
1338
|
+
* Workflow-scoped error boundary. Catch specific error types, run recovery
|
|
1339
|
+
* handlers, and ensure cleanup always runs.
|
|
1340
|
+
*
|
|
1341
|
+
* - The `try` block is the main workflow content.
|
|
1342
|
+
* - If any task in `try` fails with a matching error, the `catch` block mounts.
|
|
1343
|
+
* - The `finally` block always runs after try (success) or catch (failure).
|
|
1344
|
+
*
|
|
1345
|
+
* Renders to `<smithers:try-catch-finally>`.
|
|
1346
|
+
* @param {TryCatchFinallyProps} props
|
|
1347
|
+
*/
|
|
1348
|
+
declare function TryCatchFinally(props: TryCatchFinallyProps$1): React.ReactElement<{
|
|
1349
|
+
id: string | undefined;
|
|
1350
|
+
__tcfCatchErrors: ("INVALID_INPUT" | "MISSING_INPUT" | "MISSING_INPUT_TABLE" | "RESUME_METADATA_MISMATCH" | "UNKNOWN_OUTPUT_SCHEMA" | "INVALID_OUTPUT" | "WORKTREE_CREATE_FAILED" | "VCS_NOT_FOUND" | "SNAPSHOT_NOT_FOUND" | "VCS_WORKSPACE_CREATE_FAILED" | "TASK_TIMEOUT" | "RUN_NOT_FOUND" | "NODE_NOT_FOUND" | "INVALID_EVENTS_OPTIONS" | "SANDBOX_BUNDLE_INVALID" | "SANDBOX_BUNDLE_TOO_LARGE" | "WORKFLOW_EXECUTION_FAILED" | "SANDBOX_EXECUTION_FAILED" | "TASK_HEARTBEAT_TIMEOUT" | "HEARTBEAT_PAYLOAD_TOO_LARGE" | "HEARTBEAT_PAYLOAD_NOT_JSON_SERIALIZABLE" | "TASK_ABORTED" | "RUN_CANCELLED" | "RUN_NOT_RESUMABLE" | "RUN_OWNER_ALIVE" | "RUN_STILL_RUNNING" | "RUN_RESUME_CLAIM_LOST" | "RUN_RESUME_CLAIM_FAILED" | "RUN_RESUME_ACTIVATION_FAILED" | "RUN_HIJACKED" | "CONTINUATION_STATE_TOO_LARGE" | "INVALID_CONTINUATION_STATE" | "RALPH_MAX_REACHED" | "SCHEDULER_ERROR" | "SESSION_ERROR" | "TASK_ID_REQUIRED" | "TASK_MISSING_OUTPUT" | "DUPLICATE_ID" | "NESTED_LOOP" | "WORKTREE_EMPTY_PATH" | "MDX_PRELOAD_INACTIVE" | "CONTEXT_OUTSIDE_WORKFLOW" | "MISSING_OUTPUT" | "DEP_NOT_SATISFIED" | "ASPECT_BUDGET_EXCEEDED" | "APPROVAL_OUTSIDE_TASK" | "APPROVAL_OPTIONS_REQUIRED" | "WORKFLOW_MISSING_DEFAULT" | "TOOL_PATH_INVALID" | "TOOL_PATH_ESCAPE" | "TOOL_FILE_TOO_LARGE" | "TOOL_CONTENT_TOO_LARGE" | "TOOL_PATCH_TOO_LARGE" | "TOOL_PATCH_FAILED" | "TOOL_NETWORK_DISABLED" | "TOOL_GIT_REMOTE_DISABLED" | "TOOL_COMMAND_FAILED" | "TOOL_GREP_FAILED" | "AGENT_CLI_ERROR" | "AGENT_RPC_FILE_ARGS" | "AGENT_BUILD_COMMAND" | "AGENT_DIAGNOSTIC_TIMEOUT" | "DB_MISSING_COLUMNS" | "DB_REQUIRES_BUN_SQLITE" | "DB_QUERY_FAILED" | "DB_WRITE_FAILED" | "STORAGE_ERROR" | "INTERNAL_ERROR" | "PROCESS_ABORTED" | "PROCESS_TIMEOUT" | "PROCESS_IDLE_TIMEOUT" | "PROCESS_SPAWN_FAILED" | "TASK_RUNTIME_UNAVAILABLE" | "SCHEMA_CHANGE_HOT" | "HOT_OVERLAY_FAILED" | "HOT_RELOAD_INVALID_MODULE" | "SCORER_FAILED" | "WORKFLOW_EXISTS" | "CLI_DB_NOT_FOUND" | "CLI_AGENT_UNSUPPORTED" | "PI_HTTP_ERROR" | "EXTERNAL_BUILD_FAILED" | "SCHEMA_DISCOVERY_FAILED" | "OPENAPI_SPEC_LOAD_FAILED" | "OPENAPI_OPERATION_NOT_FOUND" | "OPENAPI_TOOL_EXECUTION_FAILED" | (string & {}))[] | undefined;
|
|
1351
|
+
__tcfCatchHandler: React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | ((error: _smithers_errors.SmithersError) => React.ReactElement) | undefined;
|
|
1352
|
+
__tcfFinallyHandler: React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | undefined;
|
|
1353
|
+
}, string | React.JSXElementConstructor<any>> | null;
|
|
1354
|
+
type TryCatchFinallyProps$1 = TryCatchFinallyProps$2;
|
|
1355
|
+
|
|
1356
|
+
/**
|
|
1357
|
+
* Runtime accumulator for tracked metrics within an Aspects scope.
|
|
1358
|
+
*/
|
|
1359
|
+
type AspectAccumulator = {
|
|
1360
|
+
totalTokens: number;
|
|
1361
|
+
totalLatencyMs: number;
|
|
1362
|
+
totalCostUsd: number;
|
|
1363
|
+
taskCount: number;
|
|
1364
|
+
};
|
|
1365
|
+
|
|
1366
|
+
/**
|
|
1367
|
+
* The value provided by AspectContext to descendant components.
|
|
1368
|
+
*/
|
|
1369
|
+
type AspectContextValue = {
|
|
1370
|
+
tokenBudget?: TokenBudgetConfig;
|
|
1371
|
+
latencySlo?: LatencySloConfig;
|
|
1372
|
+
costBudget?: CostBudgetConfig;
|
|
1373
|
+
tracking: TrackingConfig;
|
|
1374
|
+
accumulator: AspectAccumulator;
|
|
1375
|
+
};
|
|
1376
|
+
|
|
1377
|
+
/**
|
|
1378
|
+
* Aspects — declarative cross-cutting concerns for workflow scopes.
|
|
1379
|
+
*
|
|
1380
|
+
* Wraps a section of the workflow tree and propagates token budgets,
|
|
1381
|
+
* latency SLOs, and cost budgets to all descendant Task components
|
|
1382
|
+
* without modifying individual tasks.
|
|
1383
|
+
*
|
|
1384
|
+
* ```tsx
|
|
1385
|
+
* <Aspects tokenBudget={{ max: 100_000, perTask: 20_000, onExceeded: "warn" }}>
|
|
1386
|
+
* <Task id="step1" ...>...</Task>
|
|
1387
|
+
* <Task id="step2" ...>...</Task>
|
|
1388
|
+
* </Aspects>
|
|
1389
|
+
* ```
|
|
1390
|
+
* @param {AspectsProps} props
|
|
1391
|
+
*/
|
|
1392
|
+
declare function Aspects(props: AspectsProps$1): React.FunctionComponentElement<React.ProviderProps<AspectContextValue | null>>;
|
|
1393
|
+
type AspectsProps$1 = AspectsProps$2;
|
|
1394
|
+
|
|
1395
|
+
/**
|
|
1396
|
+
* SuperSmithers — a workflow wrapper that reads and modifies source code
|
|
1397
|
+
* to intervene via hot reload. Takes a markdown strategy doc and an agent
|
|
1398
|
+
* that decides what to change.
|
|
1399
|
+
*
|
|
1400
|
+
* Only meaningful in hot-reload mode: the agent reads source files, proposes
|
|
1401
|
+
* modifications, and (unless `dryRun` is set) writes them to disk, triggering
|
|
1402
|
+
* the hot reload system to pick up the changes.
|
|
1403
|
+
*
|
|
1404
|
+
* Internally expands to a sequence of tasks:
|
|
1405
|
+
* 1. Agent reads the strategy doc and target files
|
|
1406
|
+
* 2. Agent proposes modifications
|
|
1407
|
+
* 3. (If not dryRun) Compute task writes modifications to disk
|
|
1408
|
+
* 4. Agent generates a report of what changed
|
|
1409
|
+
*
|
|
1410
|
+
* ```tsx
|
|
1411
|
+
* <SuperSmithers
|
|
1412
|
+
* id="refactor"
|
|
1413
|
+
* strategy={strategyMd}
|
|
1414
|
+
* agent={codeAgent}
|
|
1415
|
+
* targetFiles={["src/**\/*.ts"]}
|
|
1416
|
+
* reportOutput={outputs.report}
|
|
1417
|
+
* />
|
|
1418
|
+
* ```
|
|
1419
|
+
* @param {SuperSmithersProps} props
|
|
1420
|
+
*/
|
|
1421
|
+
declare function SuperSmithers(props: SuperSmithersProps$1): React.ReactElement<{
|
|
1422
|
+
id: string;
|
|
1423
|
+
}, string | React.JSXElementConstructor<any>> | null;
|
|
1424
|
+
type SuperSmithersProps$1 = SuperSmithersProps$2;
|
|
1425
|
+
|
|
1426
|
+
/** @typedef {import("./LoopProps.ts").LoopProps} LoopProps */
|
|
1427
|
+
/**
|
|
1428
|
+
* @param {LoopProps} props
|
|
1429
|
+
*/
|
|
1430
|
+
declare function Loop(props: LoopProps$1): React.DOMElement<LoopProps$2, Element> | null;
|
|
1431
|
+
/** @typedef {import("./LoopProps.ts").LoopProps} LoopProps */
|
|
1432
|
+
/**
|
|
1433
|
+
* @param {LoopProps} props
|
|
1434
|
+
*/
|
|
1435
|
+
declare function Ralph(props: LoopProps$1): React.DOMElement<LoopProps$2, Element> | null;
|
|
1436
|
+
type LoopProps$1 = LoopProps$2;
|
|
1437
|
+
|
|
1438
|
+
/**
|
|
1439
|
+
* @param {ContinueAsNewProps} props
|
|
1440
|
+
*/
|
|
1441
|
+
declare function ContinueAsNew(props: ContinueAsNewProps$1): React.ReactElement<{
|
|
1442
|
+
stateJson: string | undefined;
|
|
1443
|
+
}, string | React.JSXElementConstructor<any>>;
|
|
1444
|
+
/**
|
|
1445
|
+
* Convenience helper for conditional continuation inside workflow JSX:
|
|
1446
|
+
* `{shouldContinue ? continueAsNew({ cursor }) : null}`
|
|
1447
|
+
*/
|
|
1448
|
+
declare function continueAsNew(state: any): React.FunctionComponentElement<ContinueAsNewProps$2>;
|
|
1449
|
+
type ContinueAsNewProps$1 = ContinueAsNewProps$2;
|
|
1450
|
+
|
|
1451
|
+
type ApprovalAutoApprove = ApprovalAutoApprove$1;
|
|
1452
|
+
type ApprovalDecision = ApprovalDecision$1;
|
|
1453
|
+
type ApprovalGateProps = ApprovalGateProps$2;
|
|
1454
|
+
type ApprovalMode = ApprovalMode$1;
|
|
1455
|
+
type ApprovalOption = ApprovalOption$1;
|
|
1456
|
+
type ApprovalProps<Row, Output> = ApprovalProps$2<Row, Output>;
|
|
1457
|
+
type ApprovalRanking = ApprovalRanking$1;
|
|
1458
|
+
type ApprovalRequest = ApprovalRequest$1;
|
|
1459
|
+
type ApprovalSelection = ApprovalSelection$1;
|
|
1460
|
+
type AspectsProps = AspectsProps$2;
|
|
1461
|
+
type BranchProps = BranchProps$2;
|
|
1462
|
+
type CategoryConfig = CategoryConfig$1;
|
|
1463
|
+
type CheckConfig = CheckConfig$1;
|
|
1464
|
+
type CheckSuiteProps = CheckSuiteProps$2;
|
|
1465
|
+
type ClassifyAndRouteProps = ClassifyAndRouteProps$2;
|
|
1466
|
+
type ColumnDef = ColumnDef$1;
|
|
1467
|
+
type ContentPipelineProps = ContentPipelineProps$2;
|
|
1468
|
+
type ContentPipelineStage = ContentPipelineStage$1;
|
|
1469
|
+
type ContinueAsNewProps = ContinueAsNewProps$2;
|
|
1470
|
+
type DebateProps = DebateProps$2;
|
|
1471
|
+
type DecisionRule = DecisionRule$1;
|
|
1472
|
+
type DecisionTableProps = DecisionTableProps$2;
|
|
1473
|
+
type DepsSpec = DepsSpec$1;
|
|
1474
|
+
type DriftDetectorProps = DriftDetectorProps$2;
|
|
1475
|
+
type EscalationChainProps = EscalationChainProps$2;
|
|
1476
|
+
type EscalationLevel = EscalationLevel$1;
|
|
1477
|
+
type GatherAndSynthesizeProps = GatherAndSynthesizeProps$2;
|
|
1478
|
+
type HumanTaskProps = HumanTaskProps$2;
|
|
1479
|
+
type InferDeps<D> = InferDeps$1<D>;
|
|
1480
|
+
type KanbanProps = KanbanProps$2;
|
|
1481
|
+
type LoopProps = LoopProps$2;
|
|
1482
|
+
type MergeQueueProps = MergeQueueProps$2;
|
|
1483
|
+
type OptimizerProps = OptimizerProps$2;
|
|
1484
|
+
type OutputTarget = OutputTarget$1;
|
|
1485
|
+
type PanelistConfig = PanelistConfig$1;
|
|
1486
|
+
type PanelProps = PanelProps$2;
|
|
1487
|
+
type ParallelProps = ParallelProps$2;
|
|
1488
|
+
type PollerProps = PollerProps$2;
|
|
1489
|
+
type RalphProps = RalphProps$1;
|
|
1490
|
+
type ReviewLoopProps = ReviewLoopProps$2;
|
|
1491
|
+
type RunbookProps = RunbookProps$2;
|
|
1492
|
+
type RunbookStep = RunbookStep$1;
|
|
1493
|
+
type SagaProps = SagaProps$2;
|
|
1494
|
+
type SagaStepDef = SagaStepDef$1;
|
|
1495
|
+
type SagaStepProps = SagaStepProps$2;
|
|
1496
|
+
type SandboxProps = SandboxProps$2;
|
|
1497
|
+
type SandboxRuntime = SandboxRuntime$1;
|
|
1498
|
+
type SandboxVolumeMount = SandboxVolumeMount$1;
|
|
1499
|
+
type SandboxWorkspaceSpec = SandboxWorkspaceSpec$1;
|
|
1500
|
+
type ScanFixVerifyProps = ScanFixVerifyProps$2;
|
|
1501
|
+
type ScorersMap = _smithers_scorers_types.ScorersMap;
|
|
1502
|
+
type SequenceProps = SequenceProps$2;
|
|
1503
|
+
type SignalProps<Schema> = SignalProps$2<Schema>;
|
|
1504
|
+
type SourceDef = SourceDef$1;
|
|
1505
|
+
type SubflowProps = SubflowProps$2;
|
|
1506
|
+
type SuperSmithersProps = SuperSmithersProps$2;
|
|
1507
|
+
type SupervisorProps = SupervisorProps$2;
|
|
1508
|
+
type TaskProps<Row, Output, D> = TaskProps$2<Row, Output, D>;
|
|
1509
|
+
type TimerProps = TimerProps$2;
|
|
1510
|
+
type TryCatchFinallyProps = TryCatchFinallyProps$2;
|
|
1511
|
+
type WaitForEventProps = WaitForEventProps$2;
|
|
1512
|
+
type WorkflowProps = WorkflowProps$2;
|
|
1513
|
+
type WorktreeProps = WorktreeProps$2;
|
|
1514
|
+
|
|
1515
|
+
/** @type {Record<string, React.FC<any>>} */
|
|
1516
|
+
declare const markdownComponents: Record<string, React.FC<any>>;
|
|
1517
|
+
|
|
1518
|
+
/** @typedef {import("mdx/types").MDXContent} MDXContent */
|
|
1519
|
+
/**
|
|
1520
|
+
* Render an MDX component to plain markdown text.
|
|
1521
|
+
*
|
|
1522
|
+
* Injects `markdownComponents` so headings, paragraphs, code blocks, etc.
|
|
1523
|
+
* render as markdown-formatted text instead of HTML tags.
|
|
1524
|
+
*
|
|
1525
|
+
* @param {MDXContent} Component
|
|
1526
|
+
* @param {Record<string, any>} [props]
|
|
1527
|
+
* @returns {string}
|
|
1528
|
+
*/
|
|
1529
|
+
declare function renderMdx(Component: MDXContent, props?: Record<string, any>): string;
|
|
1530
|
+
type MDXContent = any;
|
|
1531
|
+
|
|
1532
|
+
/** @typedef {import("zod").ZodObject<import("zod").ZodRawShape>} ZodObject */
|
|
1533
|
+
/** @typedef {import("zod").ZodTypeAny} ZodTypeAny */
|
|
1534
|
+
/**
|
|
1535
|
+
* @param {ZodObject} schema
|
|
1536
|
+
* @returns {string}
|
|
1537
|
+
*/
|
|
1538
|
+
declare function zodSchemaToJsonExample(schema: ZodObject): string;
|
|
1539
|
+
type ZodObject = zod.ZodObject<zod.ZodRawShape>;
|
|
1540
|
+
|
|
1541
|
+
type CachePolicy<Ctx> = _smithers_scheduler_CachePolicy.CachePolicy<Ctx>;
|
|
1542
|
+
type EngineDecision = _smithers_scheduler.EngineDecision;
|
|
1543
|
+
type ExtractOptions = _smithers_graph.ExtractOptions;
|
|
1544
|
+
type HostElement = _smithers_graph.HostElement;
|
|
1545
|
+
type HostNode = _smithers_graph.HostNode;
|
|
1546
|
+
type HostText = _smithers_graph.HostText;
|
|
1547
|
+
type InferOutputEntry<T> = _smithers_driver_OutputAccessor.InferOutputEntry<T>;
|
|
1548
|
+
type InferRow<TTable> = _smithers_driver_OutputAccessor.InferRow<TTable>;
|
|
1549
|
+
type OutputAccessor<Schema> = _smithers_driver_OutputAccessor.OutputAccessor<Schema>;
|
|
1550
|
+
type OutputKey = _smithers_driver_OutputKey.OutputKey;
|
|
1551
|
+
type RenderContext = _smithers_scheduler.RenderContext;
|
|
1552
|
+
type RetryPolicy = _smithers_scheduler_RetryPolicy.RetryPolicy;
|
|
1553
|
+
type RunAuthContext = _smithers_driver_RunAuthContext.RunAuthContext;
|
|
1554
|
+
type RunOptions = _smithers_driver.RunOptions;
|
|
1555
|
+
type RunResult = _smithers_driver.RunResult;
|
|
1556
|
+
type SchemaRegistryEntry = _smithers_db_SchemaRegistryEntry.SchemaRegistryEntry;
|
|
1557
|
+
type SmithersAlertLabels = _smithers_scheduler_SmithersWorkflowOptions.SmithersAlertLabels;
|
|
1558
|
+
type SmithersAlertPolicy = _smithers_scheduler_SmithersWorkflowOptions.SmithersAlertPolicy;
|
|
1559
|
+
type SmithersAlertPolicyDefaults = _smithers_scheduler_SmithersWorkflowOptions.SmithersAlertPolicyDefaults;
|
|
1560
|
+
type SmithersAlertPolicyRule = _smithers_scheduler_SmithersWorkflowOptions.SmithersAlertPolicyRule;
|
|
1561
|
+
type SmithersAlertReaction = _smithers_scheduler_SmithersWorkflowOptions.SmithersAlertReaction;
|
|
1562
|
+
type SmithersAlertReactionKind = _smithers_scheduler_SmithersWorkflowOptions.SmithersAlertReactionKind;
|
|
1563
|
+
type SmithersAlertReactionRef = _smithers_scheduler_SmithersWorkflowOptions.SmithersAlertReactionRef;
|
|
1564
|
+
type SmithersAlertSeverity = _smithers_scheduler_SmithersWorkflowOptions.SmithersAlertSeverity;
|
|
1565
|
+
type SmithersCtx = _smithers_driver.SmithersCtx;
|
|
1566
|
+
type SmithersErrorCode = _smithers_errors_SmithersErrorCode.SmithersErrorCode;
|
|
1567
|
+
type SmithersWorkflow<Schema> = _smithers_driver_WorkflowDefinition.WorkflowDefinition<Schema>;
|
|
1568
|
+
type SmithersWorkflowDriverOptions<Schema> = _smithers_driver_WorkflowDriverOptions.WorkflowDriverOptions<Schema>;
|
|
1569
|
+
type SmithersWorkflowOptions = _smithers_scheduler.SmithersWorkflowOptions;
|
|
1570
|
+
type TaskDescriptor = _smithers_graph.TaskDescriptor;
|
|
1571
|
+
type WaitReason = _smithers_scheduler.WaitReason;
|
|
1572
|
+
type WorkflowGraph = _smithers_graph.WorkflowGraph;
|
|
1573
|
+
type WorkflowRuntime = _smithers_driver_workflow_types.WorkflowRuntime;
|
|
1574
|
+
type WorkflowSession = _smithers_driver_workflow_types.WorkflowSession;
|
|
1575
|
+
type XmlElement = _smithers_graph.XmlElement;
|
|
1576
|
+
type XmlNode = _smithers_graph.XmlNode;
|
|
1577
|
+
type XmlText = _smithers_graph.XmlText;
|
|
1578
|
+
|
|
1579
|
+
export { Approval, type ApprovalAutoApprove, type ApprovalDecision, ApprovalGate, type ApprovalGateProps, type ApprovalMode, type ApprovalOption, type ApprovalProps, type ApprovalRanking, type ApprovalRequest, type ApprovalSelection, Aspects, type AspectsProps, Branch, type BranchProps, type CachePolicy, type CategoryConfig, type CheckConfig, CheckSuite, type CheckSuiteProps, ClassifyAndRoute, type ClassifyAndRouteProps, type ColumnDef, ContentPipeline, type ContentPipelineProps, type ContentPipelineStage, ContinueAsNew, type ContinueAsNewProps, Debate, type DebateProps, type DecisionRule, DecisionTable, type DecisionTableProps, type DepsSpec, DriftDetector, type DriftDetectorProps, type EngineDecision, EscalationChain, type EscalationChainProps, type EscalationLevel, type ExtractOptions, GatherAndSynthesize, type GatherAndSynthesizeProps, type HostElement, type HostNode, type HostText, HumanTask, type HumanTaskProps, type InferDeps, type InferOutputEntry, type InferRow, Kanban, type KanbanProps, Loop, type LoopProps, MergeQueue, type MergeQueueProps, Optimizer, type OptimizerProps, type OutputAccessor, type OutputKey, type OutputTarget, Panel, type PanelProps, type PanelistConfig, Parallel, type ParallelProps, Poller, type PollerProps, Ralph, type RalphProps, type RenderContext, type RetryPolicy, ReviewLoop, type ReviewLoopProps, type RunAuthContext, type RunOptions, type RunResult, Runbook, type RunbookProps, type RunbookStep, Saga, type SagaProps, type SagaStepDef, type SagaStepProps, Sandbox, type SandboxProps, type SandboxRuntime, type SandboxVolumeMount, type SandboxWorkspaceSpec, ScanFixVerify, type ScanFixVerifyProps, type SchemaRegistryEntry, type ScorersMap, Sequence, type SequenceProps, Signal, type SignalProps, type SmithersAlertLabels, type SmithersAlertPolicy, type SmithersAlertPolicyDefaults, type SmithersAlertPolicyRule, type SmithersAlertReaction, type SmithersAlertReactionKind, type SmithersAlertReactionRef, type SmithersAlertSeverity, type SmithersCtx, type SmithersErrorCode, type SmithersWorkflow, type SmithersWorkflowDriverOptions, type SmithersWorkflowOptions, type SourceDef, Subflow, type SubflowProps, SuperSmithers, type SuperSmithersProps, Supervisor, type SupervisorProps, Task, type TaskDescriptor, type TaskProps, Timer, type TimerProps, TryCatchFinally, type TryCatchFinallyProps, WaitForEvent, type WaitForEventProps, type WaitReason, Workflow, type WorkflowGraph, type WorkflowProps, type WorkflowRuntime, type WorkflowSession, Worktree, type WorktreeProps, type XmlElement, type XmlNode, type XmlText, approvalDecisionSchema, approvalRankingSchema, approvalSelectionSchema, continueAsNew, markdownComponents, renderMdx, zodSchemaToJsonExample };
|