Render the end-of-run "Changes" recap: a focused block summarizing what was created/updated/deleted, GROUPED by entity + operation with counts (no per-record IDs or field diffs — those scale poorly and live in the detailed report instead). One line per entity/operation means the recap stays compact whether 1 or 10,000 records changed. Returns '' when there were no changes (caller should skip printing).
For full per-record detail use --verbose (streams diffs inline during the push) or
--change-detail (writes the report from FormatChangesReport to a file).
When true, the header reads "DRY RUN · Changes a push would make".
Use FormatChangesReport. This stub always renders non-dry-run labels; it does not take the dryRun parameter.
Render the FULL per-record change report as plain text (no ANSI), suitable for writing
to a file via --change-detail. Lists every record's operation, entity, primary key,
and — for updates — the field-level diffs.
When true, a line under the title says the report is a dry run and nothing was written.
Use FormatSyncSummary. This stub always renders non-dry-run labels; it does not take the dryRun parameter.
Format push/pull summary report
When true, the box is titled "Dry Run Summary", since its counts are what the operation would do rather than what it did.
Format validation result for terminal output
Flatten a failed ValidationResult into the CLI's machine-readable error
list, so --format json / --ci runs carry the same entity/field/file detail
that the human report prints. Without this a CI log shows only "Validation
failed" and nobody can tell which record in which file is wrong.
Deprecated
Use FormatChangesRecap. This stub always renders non-dry-run labels; it does not take the
dryRunparameter.