/** Persisted contract for the one-time v2 workflow-run archive. */ import { z } from 'zod'; export declare const V2_RUN_ARCHIVE_SCHEMA_VERSION: 1; export declare const V2_RUN_ARCHIVE_KIND: "botmux-v2-workflow-run-archive"; export declare const V2_RUN_ARCHIVE_COMMIT_SCHEMA_VERSION: 1; export declare const V2_RUN_RETIREMENT_SCHEMA_VERSION: 1; export declare const V2_RUN_RETIREMENT_KIND: "botmux-v2-workflow-run-retirement"; export declare const V2RunArchiveFileSchema: z.ZodObject<{ path: z.ZodEffects; bytes: z.ZodNumber; sha256: z.ZodString; }, "strict", z.ZodTypeAny, { sha256: string; path: string; bytes: number; }, { sha256: string; path: string; bytes: number; }>; export type V2RunArchiveFile = z.infer; export declare const V2RunArchiveWarningSchema: z.ZodObject<{ code: z.ZodString; message: z.ZodString; }, "strict", z.ZodTypeAny, { code: string; message: string; }, { code: string; message: string; }>; export type V2RunArchiveWarning = z.infer; export declare const V2RunArchiveVerdictSchema: z.ZodObject<{ status: z.ZodEnum<["succeeded", "failed", "cancelled"]>; workflowId: z.ZodString; revisionId: z.ZodOptional; lastSeq: z.ZodNumber; updatedAt: z.ZodNumber; dangling: z.ZodObject<{ activities: z.ZodNumber; effectAttempted: z.ZodNumber; waits: z.ZodNumber; cancels: z.ZodNumber; }, "strict", z.ZodTypeAny, { waits: number; effectAttempted: number; activities: number; cancels: number; }, { waits: number; effectAttempted: number; activities: number; cancels: number; }>; liveTerminalSidecars: z.ZodNumber; }, "strict", z.ZodTypeAny, { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }, { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }>; export type V2RunArchiveVerdict = z.infer; export declare const V2RunArchiveRunSchema: z.ZodObject<{ runId: z.ZodString; rawRoot: z.ZodEffects; projectionPath: z.ZodEffects; projectionSha256: z.ZodString; presence: z.ZodObject<{ workflowJson: z.ZodBoolean; chatBindingJson: z.ZodBoolean; attemptsDir: z.ZodBoolean; blobsDir: z.ZodBoolean; }, "strict", z.ZodTypeAny, { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }, { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }>; missingOptional: z.ZodArray, "many">; warnings: z.ZodArray, "many">; verdict: z.ZodObject<{ status: z.ZodEnum<["succeeded", "failed", "cancelled"]>; workflowId: z.ZodString; revisionId: z.ZodOptional; lastSeq: z.ZodNumber; updatedAt: z.ZodNumber; dangling: z.ZodObject<{ activities: z.ZodNumber; effectAttempted: z.ZodNumber; waits: z.ZodNumber; cancels: z.ZodNumber; }, "strict", z.ZodTypeAny, { waits: number; effectAttempted: number; activities: number; cancels: number; }, { waits: number; effectAttempted: number; activities: number; cancels: number; }>; liveTerminalSidecars: z.ZodNumber; }, "strict", z.ZodTypeAny, { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }, { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }>; }, "strict", z.ZodTypeAny, { warnings: { code: string; message: string; }[]; runId: string; missingOptional: ("attempts" | "chat-binding.json")[]; rawRoot: string; projectionPath: string; projectionSha256: string; presence: { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }; verdict: { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }; }, { warnings: { code: string; message: string; }[]; runId: string; missingOptional: ("attempts" | "chat-binding.json")[]; rawRoot: string; projectionPath: string; projectionSha256: string; presence: { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }; verdict: { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }; }>; export type V2RunArchiveRun = z.infer; export declare const V2RunArchiveResidualSchema: z.ZodObject<{ name: z.ZodString; sourceType: z.ZodEnum<["directory", "file"]>; reason: z.ZodEnum<["directory-without-events", "top-level-file"]>; rawRoot: z.ZodEffects; fileCount: z.ZodNumber; totalBytes: z.ZodNumber; treeSha256: z.ZodString; }, "strict", z.ZodTypeAny, { name: string; reason: "directory-without-events" | "top-level-file"; rawRoot: string; sourceType: "file" | "directory"; fileCount: number; totalBytes: number; treeSha256: string; }, { name: string; reason: "directory-without-events" | "top-level-file"; rawRoot: string; sourceType: "file" | "directory"; fileCount: number; totalBytes: number; treeSha256: string; }>; export type V2RunArchiveResidual = z.infer; export declare const V2RunArchiveContentSchema: z.ZodObject<{ runs: z.ZodArray; projectionPath: z.ZodEffects; projectionSha256: z.ZodString; presence: z.ZodObject<{ workflowJson: z.ZodBoolean; chatBindingJson: z.ZodBoolean; attemptsDir: z.ZodBoolean; blobsDir: z.ZodBoolean; }, "strict", z.ZodTypeAny, { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }, { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }>; missingOptional: z.ZodArray, "many">; warnings: z.ZodArray, "many">; verdict: z.ZodObject<{ status: z.ZodEnum<["succeeded", "failed", "cancelled"]>; workflowId: z.ZodString; revisionId: z.ZodOptional; lastSeq: z.ZodNumber; updatedAt: z.ZodNumber; dangling: z.ZodObject<{ activities: z.ZodNumber; effectAttempted: z.ZodNumber; waits: z.ZodNumber; cancels: z.ZodNumber; }, "strict", z.ZodTypeAny, { waits: number; effectAttempted: number; activities: number; cancels: number; }, { waits: number; effectAttempted: number; activities: number; cancels: number; }>; liveTerminalSidecars: z.ZodNumber; }, "strict", z.ZodTypeAny, { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }, { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }>; }, "strict", z.ZodTypeAny, { warnings: { code: string; message: string; }[]; runId: string; missingOptional: ("attempts" | "chat-binding.json")[]; rawRoot: string; projectionPath: string; projectionSha256: string; presence: { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }; verdict: { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }; }, { warnings: { code: string; message: string; }[]; runId: string; missingOptional: ("attempts" | "chat-binding.json")[]; rawRoot: string; projectionPath: string; projectionSha256: string; presence: { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }; verdict: { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }; }>, "many">; residuals: z.ZodArray; reason: z.ZodEnum<["directory-without-events", "top-level-file"]>; rawRoot: z.ZodEffects; fileCount: z.ZodNumber; totalBytes: z.ZodNumber; treeSha256: z.ZodString; }, "strict", z.ZodTypeAny, { name: string; reason: "directory-without-events" | "top-level-file"; rawRoot: string; sourceType: "file" | "directory"; fileCount: number; totalBytes: number; treeSha256: string; }, { name: string; reason: "directory-without-events" | "top-level-file"; rawRoot: string; sourceType: "file" | "directory"; fileCount: number; totalBytes: number; treeSha256: string; }>, "many">; payloadDirectories: z.ZodArray, "many">; payloadFiles: z.ZodArray; bytes: z.ZodNumber; sha256: z.ZodString; }, "strict", z.ZodTypeAny, { sha256: string; path: string; bytes: number; }, { sha256: string; path: string; bytes: number; }>, "many">; }, "strict", z.ZodTypeAny, { runs: { warnings: { code: string; message: string; }[]; runId: string; missingOptional: ("attempts" | "chat-binding.json")[]; rawRoot: string; projectionPath: string; projectionSha256: string; presence: { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }; verdict: { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }; }[]; residuals: { name: string; reason: "directory-without-events" | "top-level-file"; rawRoot: string; sourceType: "file" | "directory"; fileCount: number; totalBytes: number; treeSha256: string; }[]; payloadDirectories: string[]; payloadFiles: { sha256: string; path: string; bytes: number; }[]; }, { runs: { warnings: { code: string; message: string; }[]; runId: string; missingOptional: ("attempts" | "chat-binding.json")[]; rawRoot: string; projectionPath: string; projectionSha256: string; presence: { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }; verdict: { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }; }[]; residuals: { name: string; reason: "directory-without-events" | "top-level-file"; rawRoot: string; sourceType: "file" | "directory"; fileCount: number; totalBytes: number; treeSha256: string; }[]; payloadDirectories: string[]; payloadFiles: { sha256: string; path: string; bytes: number; }[]; }>; export type V2RunArchiveContent = z.infer; export declare const V2RunArchiveManifestSchema: z.ZodObject<{ schemaVersion: z.ZodLiteral<1>; kind: z.ZodLiteral<"botmux-v2-workflow-run-archive">; archiveId: z.ZodString; createdAt: z.ZodString; sourceRunsDir: z.ZodString; containsSensitiveData: z.ZodLiteral; content: z.ZodObject<{ runs: z.ZodArray; projectionPath: z.ZodEffects; projectionSha256: z.ZodString; presence: z.ZodObject<{ workflowJson: z.ZodBoolean; chatBindingJson: z.ZodBoolean; attemptsDir: z.ZodBoolean; blobsDir: z.ZodBoolean; }, "strict", z.ZodTypeAny, { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }, { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }>; missingOptional: z.ZodArray, "many">; warnings: z.ZodArray, "many">; verdict: z.ZodObject<{ status: z.ZodEnum<["succeeded", "failed", "cancelled"]>; workflowId: z.ZodString; revisionId: z.ZodOptional; lastSeq: z.ZodNumber; updatedAt: z.ZodNumber; dangling: z.ZodObject<{ activities: z.ZodNumber; effectAttempted: z.ZodNumber; waits: z.ZodNumber; cancels: z.ZodNumber; }, "strict", z.ZodTypeAny, { waits: number; effectAttempted: number; activities: number; cancels: number; }, { waits: number; effectAttempted: number; activities: number; cancels: number; }>; liveTerminalSidecars: z.ZodNumber; }, "strict", z.ZodTypeAny, { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }, { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }>; }, "strict", z.ZodTypeAny, { warnings: { code: string; message: string; }[]; runId: string; missingOptional: ("attempts" | "chat-binding.json")[]; rawRoot: string; projectionPath: string; projectionSha256: string; presence: { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }; verdict: { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }; }, { warnings: { code: string; message: string; }[]; runId: string; missingOptional: ("attempts" | "chat-binding.json")[]; rawRoot: string; projectionPath: string; projectionSha256: string; presence: { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }; verdict: { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }; }>, "many">; residuals: z.ZodArray; reason: z.ZodEnum<["directory-without-events", "top-level-file"]>; rawRoot: z.ZodEffects; fileCount: z.ZodNumber; totalBytes: z.ZodNumber; treeSha256: z.ZodString; }, "strict", z.ZodTypeAny, { name: string; reason: "directory-without-events" | "top-level-file"; rawRoot: string; sourceType: "file" | "directory"; fileCount: number; totalBytes: number; treeSha256: string; }, { name: string; reason: "directory-without-events" | "top-level-file"; rawRoot: string; sourceType: "file" | "directory"; fileCount: number; totalBytes: number; treeSha256: string; }>, "many">; payloadDirectories: z.ZodArray, "many">; payloadFiles: z.ZodArray; bytes: z.ZodNumber; sha256: z.ZodString; }, "strict", z.ZodTypeAny, { sha256: string; path: string; bytes: number; }, { sha256: string; path: string; bytes: number; }>, "many">; }, "strict", z.ZodTypeAny, { runs: { warnings: { code: string; message: string; }[]; runId: string; missingOptional: ("attempts" | "chat-binding.json")[]; rawRoot: string; projectionPath: string; projectionSha256: string; presence: { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }; verdict: { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }; }[]; residuals: { name: string; reason: "directory-without-events" | "top-level-file"; rawRoot: string; sourceType: "file" | "directory"; fileCount: number; totalBytes: number; treeSha256: string; }[]; payloadDirectories: string[]; payloadFiles: { sha256: string; path: string; bytes: number; }[]; }, { runs: { warnings: { code: string; message: string; }[]; runId: string; missingOptional: ("attempts" | "chat-binding.json")[]; rawRoot: string; projectionPath: string; projectionSha256: string; presence: { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }; verdict: { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }; }[]; residuals: { name: string; reason: "directory-without-events" | "top-level-file"; rawRoot: string; sourceType: "file" | "directory"; fileCount: number; totalBytes: number; treeSha256: string; }[]; payloadDirectories: string[]; payloadFiles: { sha256: string; path: string; bytes: number; }[]; }>; }, "strict", z.ZodTypeAny, { kind: "botmux-v2-workflow-run-archive"; content: { runs: { warnings: { code: string; message: string; }[]; runId: string; missingOptional: ("attempts" | "chat-binding.json")[]; rawRoot: string; projectionPath: string; projectionSha256: string; presence: { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }; verdict: { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }; }[]; residuals: { name: string; reason: "directory-without-events" | "top-level-file"; rawRoot: string; sourceType: "file" | "directory"; fileCount: number; totalBytes: number; treeSha256: string; }[]; payloadDirectories: string[]; payloadFiles: { sha256: string; path: string; bytes: number; }[]; }; createdAt: string; schemaVersion: 1; archiveId: string; sourceRunsDir: string; containsSensitiveData: true; }, { kind: "botmux-v2-workflow-run-archive"; content: { runs: { warnings: { code: string; message: string; }[]; runId: string; missingOptional: ("attempts" | "chat-binding.json")[]; rawRoot: string; projectionPath: string; projectionSha256: string; presence: { workflowJson: boolean; chatBindingJson: boolean; attemptsDir: boolean; blobsDir: boolean; }; verdict: { status: "cancelled" | "failed" | "succeeded"; updatedAt: number; workflowId: string; lastSeq: number; dangling: { waits: number; effectAttempted: number; activities: number; cancels: number; }; liveTerminalSidecars: number; revisionId?: string | undefined; }; }[]; residuals: { name: string; reason: "directory-without-events" | "top-level-file"; rawRoot: string; sourceType: "file" | "directory"; fileCount: number; totalBytes: number; treeSha256: string; }[]; payloadDirectories: string[]; payloadFiles: { sha256: string; path: string; bytes: number; }[]; }; createdAt: string; schemaVersion: 1; archiveId: string; sourceRunsDir: string; containsSensitiveData: true; }>; export type V2RunArchiveManifest = z.infer; export declare const V2RunArchiveCommitMarkerSchema: z.ZodObject<{ schemaVersion: z.ZodLiteral<1>; archiveId: z.ZodString; manifestSha256: z.ZodString; }, "strict", z.ZodTypeAny, { schemaVersion: 1; archiveId: string; manifestSha256: string; }, { schemaVersion: 1; archiveId: string; manifestSha256: string; }>; export type V2RunArchiveCommitMarker = z.infer; export declare const V2RunRetirementReceiptSchema: z.ZodObject<{ schemaVersion: z.ZodLiteral<1>; kind: z.ZodLiteral<"botmux-v2-workflow-run-retirement">; archiveId: z.ZodString; manifestSha256: z.ZodString; sourceRunsDir: z.ZodString; quarantineDir: z.ZodString; retiredAt: z.ZodString; }, "strict", z.ZodTypeAny, { kind: "botmux-v2-workflow-run-retirement"; schemaVersion: 1; archiveId: string; sourceRunsDir: string; manifestSha256: string; quarantineDir: string; retiredAt: string; }, { kind: "botmux-v2-workflow-run-retirement"; schemaVersion: 1; archiveId: string; sourceRunsDir: string; manifestSha256: string; quarantineDir: string; retiredAt: string; }>; export type V2RunRetirementReceipt = z.infer; export declare function sha256Ref(data: string | Buffer): string; export declare function v2RunArchiveId(content: V2RunArchiveContent): string; export declare function archiveDirectoryName(archiveId: string): string; export declare function parseV2RunArchiveManifest(value: unknown): V2RunArchiveManifest; export declare function parseV2RunArchiveCommitMarker(value: unknown): V2RunArchiveCommitMarker; export declare function parseV2RunRetirementReceipt(value: unknown): V2RunRetirementReceipt; //# sourceMappingURL=v2-run-archive-schema.d.ts.map