/** * Canonical JSON file integrity checker for the SQLite era. * * Validates the JSON files that remain active per ADR-006: * config.json, project-info.json, project-context.json, .context-state.json * * Table-driven design — add a new file by adding one entry to INTEGRITY_TARGETS. * Uses AJV (via src/core/schema.ts) and reads schema versions from schema files * at runtime; no hardcoded version strings. * * @task T4862 */ /** Result for a single file check. */ export interface JsonFileIntegrityResult { label: string; status: 'ok' | 'missing' | 'invalid' | 'version_mismatch' | 'schema_not_found'; errors: string[]; /** Version found in the data file. */ dataVersion?: string; /** Version declared in the schema file. */ expectedVersion?: string; } /** Full integrity report for all JSON files. */ export interface SchemaIntegrityReport { files: JsonFileIntegrityResult[]; /** SQLite schema_meta.schemaVersion — null if DB not accessible. */ sqliteVersion: string | null; allOk: boolean; } /** * Read the top-level `schemaVersion` field from a schema file. * Delegates to the centralized schema-management module. * Returns null if the file cannot be read or has no such field. */ export declare function readSchemaVersionFromFile(schemaName: string): string | null; /** * Check integrity of all active JSON files in a CLEO project. * * @param cwd - Project root (defaults to process.cwd()) */ export declare function checkSchemaIntegrity(cwd?: string): Promise; //# sourceMappingURL=schema-integrity.d.ts.map