PropertyDamage.FailureIntelligence.Verification (PropertyDamage v0.2.0)
View SourceFix verification mode for confirming that fixes are robust.
Runs the original failing seed and variations to ensure:
- The original failure no longer reproduces
- Similar command sequences also pass
- The fix is robust across different conditions
Summary
Functions
Generates a verification report for display.
Quick check if a single seed still fails.
Runs verification against a cluster of similar failures.
Verifies that a fix is robust by testing the original seed and variations.
Verifies multiple fixes at once, useful for batch verification.
Types
@type verification_result() :: %{ status: :verified | :still_failing | :partially_fixed | :flaky, original_seed: integer(), original_passes: boolean(), variations_run: non_neg_integer(), variations_passed: non_neg_integer(), variations_failed: non_neg_integer(), failed_variations: [integer()], similar_failures: [PropertyDamage.FailureReport.t()], confidence: float(), summary: String.t() }
Functions
@spec format_result(verification_result()) :: String.t()
Generates a verification report for display.
Quick check if a single seed still fails.
@spec verify_cluster( PropertyDamage.FailureIntelligence.Patterns.cluster(), module(), options() ) :: %{ cluster_id: String.t(), total: non_neg_integer(), fixed: non_neg_integer(), remaining: non_neg_integer(), status: :fully_fixed | :partially_fixed | :not_fixed, remaining_failures: [PropertyDamage.FailureIntelligence.Fingerprint.t()] }
Runs verification against a cluster of similar failures.
If the fix addresses the root cause, all similar failures should pass.
@spec verify_fix(PropertyDamage.FailureReport.t(), module(), options()) :: verification_result()
Verifies that a fix is robust by testing the original seed and variations.
Options
:adapter- The adapter module to use (required):adapter_config- Configuration for the adapter:max_variations- Maximum number of seed variations to test (default: 10):variation_range- Range for generating seed variations (default: 1000):include_similar- Whether to test similar failure patterns (default: true):similar_threshold- Threshold for similarity matching (default: 0.80)
@spec verify_fixes([PropertyDamage.FailureReport.t()], module(), options()) :: [ {PropertyDamage.FailureReport.t(), verification_result()} ]
Verifies multiple fixes at once, useful for batch verification.