/** * Version Compliance Processor * * Pre-processor that enforces version compliance rules before allowing * commits or publishes. Integrates with 0xRay's processor pipeline. * * Rules Enforced: * 1. package.json version is the SSOT (semver) * 2. Mill SSOT is package.json via scripts/foundry/reconcile-version.mjs * 3. Do not bump or publish from this processor (foundry mill ships) * * @processor_type pre * @priority 25 (high - runs early, after preValidate, before errorBoundary) * @blocking true (blocks on violations) * * @framework 0xRay 1.3.5 */ export interface VersionComplianceResult { compliant: boolean; npmVersion: string; uvmVersion: string; pkgVersion: string; errors: string[]; warnings: string[]; fixes?: VersionFix[]; } export interface VersionFix { type: "update-uvm" | "sync-source" | "update-readme"; description: string; command: string; autoFixable: boolean; } export declare class VersionComplianceProcessor { private projectRoot; private errors; private warnings; private fixes; constructor(projectRoot?: string); /** * Main execution method - called by ProcessorManager */ execute(context: { tool: string; args?: { filePath?: string; content?: string; }; operation: string; }): Promise<{ success: boolean; blocked: boolean; message: string; result?: VersionComplianceResult; }>; /** * Validate all version compliance rules */ validateVersionCompliance(): Promise; /** * Get NPM published version */ private getNpmVersion; /** * Get package.json version */ private getPackageVersion; /** * Auto-fix version compliance issues */ autoFix(): Promise<{ success: boolean; fixed: string[]; failed: string[]; }>; /** * Generate compliance report */ generateReport(result: VersionComplianceResult): string; } export declare const versionComplianceProcessor: VersionComplianceProcessor;