@workflow-manager/runner
Version:
CLI runner for in-memory and markdown workflow orchestration using ATEP-like envelopes
56 lines (55 loc) • 2.04 kB
TypeScript
import type { TaskCategory } from "./modelCatalog.js";
import type { AdapterKey, OutputEnvelope, WorkflowDefinition } from "./types.js";
export interface StepDigest {
key: string;
kind: string;
title?: string;
objective?: string;
/** Resolved adapter for task steps; "approval"/"system" for non-task steps. */
adapterKey: string;
model?: string;
dependsOn: string[];
stateFrom?: "all" | "none" | string[];
skills: string[];
systemPromptCount: number;
systemPromptChars: number;
contextChars: number;
}
export interface WorkflowDigest {
key: string;
title: string;
description?: string;
objectives: string[];
stepCount: number;
steps: StepDigest[];
}
export declare function buildWorkflowDigest(workflow: WorkflowDefinition): WorkflowDigest;
export interface StepVerdict {
stepKey: string;
category: TaskCategory;
configuredModel?: string;
verdict: "ok" | "overkill" | "underpowered" | "unknown";
suggestedModel?: string;
reasoning: string;
}
export interface ComplexityFlag {
kind: "step-too-broad" | "missing-state-scoping" | "context-bloat" | "redundant-step" | "unclear-objective" | "other";
stepKeys: string[];
suggestion: string;
}
export interface JudgeVerdict {
workflowKey: string;
steps: StepVerdict[];
complexityFlags: ComplexityFlag[];
summary: string;
}
export declare function extractFirstJsonObject(text: string): unknown;
export declare function extractVerdictCandidate(output: OutputEnvelope): unknown;
export declare function parseJudgeVerdict(raw: unknown, workflow: WorkflowDefinition): JudgeVerdict | string;
export declare function buildJudgePrompt(digest: WorkflowDigest): string;
export declare function buildMockVerdict(digest: WorkflowDigest): JudgeVerdict;
export interface JudgeOptions {
adapterKey?: AdapterKey;
model?: string;
}
export declare function runJudge(workflow: WorkflowDefinition, workflowFilePath: string, options?: JudgeOptions): Promise<JudgeVerdict | string>;