fold/tests/benchmarks/metamorphic/division_metamorphic.json
trvon 2dcbdbc75d
feat: harden Fold quality guard
Preserve source, binary, and runtime evidence boundaries while making precision and performance regressions reproducible.

- decompose analysis orchestration into bounded modules
- add differential, metamorphic, organic, and Yams change-time gates
- fix detector, P-Code, fuzz sanitizer, and report identity precision
2026-07-13 15:05:35 -04:00

79 lines
2.4 KiB
JSON

{
"schema_version": 1,
"case_id": "source-division-metamorphic",
"case_type": "metamorphic",
"origin": "metamorphic",
"backend": "source",
"name": "source_division_metamorphic",
"description": "Source finding multisets must transform predictably under identifier renaming, harmless insertion, equivalent guards, TU reordering, and process fanout.",
"detectors": "div-by-zero",
"standard": "c++20",
"expect": {
"max_summary_backed": 0,
"max_cross_tu_corroboration": 0
},
"relation": {
"kind": "finding-multiset-invariance",
"comparisons": [
{
"name": "alpha-rename-and-harmless-insertion",
"baseline": {
"sources": ["../../fixtures/metamorphic/division_baseline.cpp"],
"processes": 1
},
"transformed": {
"sources": ["../../fixtures/metamorphic/division_renamed.cpp"],
"processes": 1
},
"mapping": {
"uri_map": {
"tests/fixtures/metamorphic/division_baseline.cpp": "tests/fixtures/metamorphic/division_renamed.cpp"
},
"function_map": {
"fold_metamorphic::divide": "fold_metamorphic::quotient"
},
"line_delta": {
"tests/fixtures/metamorphic/division_renamed.cpp": 3
}
}
},
{
"name": "equivalent-guard-rewrite",
"baseline": {
"sources": ["../../fixtures/metamorphic/guard_baseline.cpp"],
"processes": 1
},
"transformed": {
"sources": ["../../fixtures/metamorphic/guard_rewritten.cpp"],
"processes": 1
},
"mapping": {
"uri_map": {
"tests/fixtures/metamorphic/guard_baseline.cpp": "tests/fixtures/metamorphic/guard_rewritten.cpp"
},
"function_map": {
"fold_metamorphic::guardedDivide": "fold_metamorphic::guardedQuotient"
}
}
},
{
"name": "tu-order-and-process-fanout",
"baseline": {
"sources": [
"../../fixtures/metamorphic/division_baseline.cpp",
"../../fixtures/metamorphic/guard_baseline.cpp"
],
"processes": 1
},
"transformed": {
"sources": [
"../../fixtures/metamorphic/guard_baseline.cpp",
"../../fixtures/metamorphic/division_baseline.cpp"
],
"processes": 2
},
"mapping": {}
}
]
}
}