A recent change from
try (Writer writer = new FileWriter(outputFile, true))
to
try (Writer writer = Files.newBufferedWriter(outputFile.toPath()))
neglected the option StandardOpenOption.APPEND, resulting in any header content being lost and only the last validation error written to the batch output file.
It should be:
try (Writer writer = Files.newBufferedWriter(outputFile.toPath(), StandardCharsets.UTF_8, StandardOpenOption.APPEND))