import { type CodaliStorageExportKind, type CodaliStorageExportManifest, type CodaliStorageObjectRef } from "../storage/CodaliStorageContracts.js"; export declare const CODALI_IMPROVEMENT_ELIGIBILITY_GATE_SCHEMA_VERSION: "codali.improvement.eligibility_gate.v1"; export type DatasetEligibilityGateReasonCode = "artifact_privacy_read_disallowed" | "artifact_type_missing" | "artifact_type_not_allowed" | "deletion_group_revoked" | "duplicate_lineage" | "privacy_metadata_missing" | "row_invalid" | "row_privacy_read_disallowed"; export type DatasetEligibilityGateWarningCode = "artifact_payload_read_blocked" | "duplicate_lineage_dropped" | "lineage_revoked" | "no_accepted_examples"; export type DatasetEligibilityGatePreferenceSignal = "human_reviewed" | "accepted_correction" | "high_confidence" | "strong_negative"; export interface DatasetEligibilityGateReason { code: DatasetEligibilityGateReasonCode; message: string; path?: string; details?: Record; } export interface DatasetEligibilityGateWarning { code: DatasetEligibilityGateWarningCode; message: string; recordId?: string; dedupeKey?: string; details?: Record; } export interface DatasetEligibilityGateAcceptedExample { recordId: string; sourceGatewayRecordId?: string; dedupeKey: string; lineageKey: DatasetEligibilityLineageKey; deletionGroupIds: string[]; runIds: string[]; artifactTypes: string[]; preferenceSignals: DatasetEligibilityGatePreferenceSignal[]; priorityScore: number; } export interface DatasetEligibilityGateRejectedExample { targetType: "artifact" | "example"; recordId?: string; dedupeKey?: string; reasons: DatasetEligibilityGateReason[]; } export interface DatasetEligibilityGateReport { schemaVersion: typeof CODALI_IMPROVEMENT_ELIGIBILITY_GATE_SCHEMA_VERSION; exportId: string; manifestId: string; exportKind: CodaliStorageExportKind; artifactReadAllowed: boolean; lineageValid: boolean; totalExamples: number; acceptedCount: number; rejectedCount: number; warningCount: number; acceptedRecordIds: string[]; rejectedRecordIds: string[]; reasonCounts: Record; accepted: DatasetEligibilityGateAcceptedExample[]; rejected: DatasetEligibilityGateRejectedExample[]; warnings: DatasetEligibilityGateWarning[]; } export interface DatasetEligibilityLineageKey { runIds: string[]; deletionGroupIds: string[]; taskHash?: string; promptHash?: string; toolContractHash?: string; expectedTargetHash?: string; } export interface DatasetEligibilityGateInput { exportId?: string; manifest: CodaliStorageExportManifest; primaryArtifactRef: CodaliStorageObjectRef; rows?: readonly unknown[]; allowedArtifactTypes?: readonly string[]; revokedDeletionGroupIds?: readonly string[]; } export declare const evaluateDatasetExportArtifactPayloadRead: (manifest: CodaliStorageExportManifest, primaryArtifactRef: CodaliStorageObjectRef) => DatasetEligibilityGateReason[]; export declare class DatasetEligibilityGate { curate(input: DatasetEligibilityGateInput): DatasetEligibilityGateReport; } export declare const curateDatasetExportForImprovement: (input: DatasetEligibilityGateInput) => DatasetEligibilityGateReport; //# sourceMappingURL=DatasetEligibilityGate.d.ts.map