The generated file is now small enough to not hinder any post processing.
Create a yaml file to store suggested fixes in, which can be applied with clang-apply-replacements.
So it's enough to store the fixes, not all the warnings.
Before this change the resulting file was simply too large as it contained all warnings, least of which had FIX-ITs.
This is trivially achievable with no measureable runtime overhead during run-clang-tidy runs, instead of post processing where even parsing the file once is extremely slow.
This double lookup is unnecessary, you can do for note in diag.get("Notes", []): to default to empty list if "Notes" is not in diag.