/** * PipelineRun — encapsulates a single pipeline execution lifecycle. * Tracks stage progression, artifacts per stage, and gate verdicts. */ import type { ArtifactRef, GateVerdict, StageId } from '../types/index.js'; import { StageContext } from '../router/stage-context.js'; /** Pipeline execution status snapshot. */ export interface PipelineStatus { runId: string; currentStage: StageId; history: Array<{ from: StageId; to: StageId; timestamp: string; }>; verdict?: GateVerdict; startedAt: string; updatedAt: string; } /** Payload to start a pipeline. */ export interface TaskPayload { taskId: string; title: string; initialStage: StageId; stages: StageId[]; } /** A complete pipeline run instance. */ export declare class PipelineRun { readonly runId: string; readonly payload: TaskPayload; readonly stageContext: StageContext; readonly startedAt: string; private updatedAt; private lastVerdict?; private readonly artifactsByStage; private readonly verdictsByGate; private completed; private failed; private failureReason?; constructor(payload: TaskPayload); getCurrentStage(): StageId; addArtifacts(stage: StageId, artifacts: ArtifactRef[]): void; getArtifacts(stage: StageId): readonly ArtifactRef[]; recordVerdict(stage: StageId, verdict: GateVerdict): void; getVerdict(stage: StageId): GateVerdict | undefined; advanceTo(nextStage: StageId, verdict: GateVerdict): void; markCompleted(): void; markFailed(reason: string): void; isCompleted(): boolean; isFailed(): boolean; getStatus(): PipelineStatus; private touch; } //# sourceMappingURL=pipeline-run.d.ts.map