// lib/accounting/core/feature-flags.ts

/**
 * Feature flags for accounting kernel. Used to gate new features, migrations, and safety checks.
 */
export interface AccountingFeatureFlags {
  enableHashChain: boolean;
  enforceImmutability: boolean;
  enableOpenBalanceEngine: boolean;
  enableDimensionValidation: boolean;
  enableEventRegistry: boolean;
  enableGoldenMatrixTests: boolean;
  // ...future flags
}

export const DEFAULT_FEATURE_FLAGS: AccountingFeatureFlags = {
  enableHashChain: true,
  enforceImmutability: true,
  enableOpenBalanceEngine: true,
  enableDimensionValidation: true,
  enableEventRegistry: true,
  enableGoldenMatrixTests: false,
};
