/** * Offline governance state store — shared type definitions. * * These interfaces mirror the engine's domain model for gate pipelines, * evidence, reviews, and initiatives. They are used by the local store, * outbox queue, and sync metadata manager. */ export interface GateStatus { gate_id: string; gate_name: string; order: number; status: "pending" | "passed" | "failed" | "skipped"; required_evidence: string[]; provided_evidence: string[]; required_roles: string[]; completed_roles: string[]; promoted_at?: string; promoted_by?: string; rejection_reason?: string; } export interface GatePipeline { changeset_id: string; project_id: string; current_gate: string; gates: GateStatus[]; risk_score: number; created_at: string; } export interface EvidenceEntry { id: string; gate_id: string; type: string; summary: string; file_refs?: string[]; submitted_by: string; submitted_at: string; } export interface ReviewRecord { id: string; changeset_id: string; role: string; status: "pending" | "approved" | "rejected"; reviewer?: string; notes?: string; created_at: string; updated_at?: string; } export interface Initiative { id: string; project_id: string; title: string; description: string; priority: "low" | "medium" | "high" | "critical"; status: "active" | "paused" | "completed" | "abandoned"; created_by: string; created_at: string; closed_at?: string; } export type OutboxOperation = "create_pipeline" | "promote_gate" | "reject_gate" | "skip_gate" | "submit_evidence" | "create_initiative" | "request_review" | "submit_review" | "observe_mind"; export interface OutboxEntry { id: string; timestamp: string; operation: OutboxOperation; path: string; method: "POST" | "PATCH" | "PUT"; body: unknown; synced: boolean; synced_at?: string; error?: string; retries: number; } export interface ConflictRecord { id: string; timestamp: string; type: string; changeset_id: string; detail: string; resolved: boolean; } export interface SyncMeta { last_sync_at?: string; remote_head_hash?: string; local_head_hash?: string; engine_url?: string; conflicts: ConflictRecord[]; } //# sourceMappingURL=types.d.ts.map