/** * Mission Contract Factory — derives a durable MissionContractV1 from a user * goal plus explicit/derived acceptance criteria. * * The factory distinguishes user-required criteria from system-derived * verification criteria without rewriting the user's requirements: * - `user` → EXPLICIT requirement * - `system` → INFERRED requirement (Jensen runtime policy) * - `derived` → INFERRED requirement (derived from the goal) * * Every criterion becomes one requirement (same id) with one acceptance * criterion whose `requiredEvidence` is derived from its deterministic * verification spec. */ import type { MissionContractV1 } from "../long-horizon/index.js"; import type { ConstraintKind, ConstraintSeverity } from "../long-horizon/types.js"; import type { CriterionSource, VerificationSpec } from "./types.js"; export interface MissionCriterionInput { id: string; description: string; source: CriterionSource; verification: VerificationSpec; } export interface MissionConstraintInput { id: string; statement: string; kind: ConstraintKind; severity: ConstraintSeverity; } export interface MissionForbiddenActionInput { id: string; statement: string; matchHint?: string; } export interface MissionDefinitionInput { missionId: string; goal: string; criteria: MissionCriterionInput[]; constraints?: MissionConstraintInput[]; forbiddenActions?: MissionForbiddenActionInput[]; /** Bump to force a new contract revision (digest changes). */ revision?: number; } export declare const MISSION_WORKSTREAM_ID = "mission"; export declare function buildMissionContract(input: MissionDefinitionInput): MissionContractV1; //# sourceMappingURL=mission-contract-factory.d.ts.map