ConsoleReporter
Renders a GenerationReport as a human-readable multi-line summary.
Inputs: a GenerationReport with summary, successes, and errors. Output: a single formatted String intended for console logging. Determinism: output order follows the report's recorded order of operations and errors.