/** * GENERATED by scripts/commands/bundle-plugin-lib.ts — do not edit. * Source of truth: packages/app/src/workflow/step-profile.ts (task 1005 R1). */ export declare interface ActionCostLike { cacheHit: number | null; } export declare interface ActionCostAttributionLike { exact: ActionCostLike | null; estimated: ActionCostLike | null; } export declare interface TraceActionEvent { kind: string; node?: string; actionKind?: string; durationMs?: number | null; startedAt?: string | null; completedAt?: string | null; invocation?: Record | null; cost?: ActionCostAttributionLike | null; } export declare interface StepProfileRun { runId: string; events: readonly TraceActionEvent[]; } export declare interface TraceRunEntry { runId: string; isDryRun?: boolean; status?: string; workflowName?: string; } export declare type SessionMode = 'fresh' | 'resumed' | 'mixed'; export declare interface StepProfileExecution { runId: string; node: string; actionKind: string; durationMs: number | null; idleGapMs: number | null; session: 'fresh' | 'resumed' | null; cacheHit: number | null; } export declare interface StepProfileRow { node: string; actionKind: string; runs: number; executions: number; durationMs: { p50: number | null; max: number | null }; idleGapMs: { p50: number | null }; session: SessionMode | null; cacheHit: { p50: number | null; known: number; of: number }; flags: string[]; } export declare interface StepProfile { workflow: string; windowSec: number; sampledRuns: number; rows: StepProfileRow[]; } export declare const DEFAULT_LAST: number; export declare const DEFAULT_WINDOW_SEC: number; export declare function nearestRankP50(values: readonly number[]): number | null; export declare function extractExecutions(runId: string, events: readonly TraceActionEvent[]): StepProfileExecution[]; export declare function rowFlags(row: StepProfileRow, windowSec: number): string[]; export declare function buildRows(executions: readonly StepProfileExecution[], windowSec: number): StepProfileRow[]; export declare function buildStepProfile(input: { workflow: string; windowSec: number; runs: readonly StepProfileRun[]; }): StepProfile; export declare function nonDryRuns(entries: readonly TraceRunEntry[]): TraceRunEntry[]; export declare function formatStepProfileHuman(profile: StepProfile): string;