Convert an ApplyFixesResult to a plain JSON-serializable object — bucket counts, plus each outcome with its strategy label, fix-emitted trace string, and the originating issue.
Sample output:
{ "generatedAt": "2026-04-30T12:35:01.123Z", "counts": {"fixed": 8, "skipped": 0, "errors": 0, "total": 8}, "fixed": [ { "issue": {"severity": "warning", "code": "GEOMETRY_DUPLICATE", ...}, "strategy": "Coalesce duplicate geometries", "trace": "'geom-47' kept; merged 4 meshes, destroyed: geom-3, geom-12, geom-89" } ], "skipped": [], "errors": []} Copy
{ "generatedAt": "2026-04-30T12:35:01.123Z", "counts": {"fixed": 8, "skipped": 0, "errors": 0, "total": 8}, "fixed": [ { "issue": {"severity": "warning", "code": "GEOMETRY_DUPLICATE", ...}, "strategy": "Coalesce duplicate geometries", "trace": "'geom-47' kept; merged 4 meshes, destroyed: geom-3, geom-12, geom-89" } ], "skipped": [], "errors": []}
Convert an ApplyFixesResult to a plain JSON-serializable object — bucket counts, plus each outcome with its strategy label, fix-emitted trace string, and the originating issue.
Sample output: