Merges recorded history files into a single deduplicated file.
$ mix temper.merge --output merged.jsonl artifacts/*/history-*.jsonl
$ mix temper.merge --output .temper/history-0.jsonl
This is the aggregation step of the CI artifact flow: each job
uploads its .temper/ directory as an artifact, a later step (or
your machine) downloads them all, merges, and runs
mix temper.report against the result. Merging also compacts
overlapping cache restores — byte-identical lines are written once.
Positional arguments are input globs (a plain path is a glob
matching just itself); a literal {partition} widens to *, and
globs match into dot-directories, since artifact downloads keep
history inside .temper/. Without arguments, inputs default to
the configured history path (config :temper, history_path) or the
default .temper/history-*.jsonl — useful for compacting every
partition's file into one.
Lines this Temper version does not interpret (suite summaries, future schema versions) are preserved verbatim; corrupt lines (truncated cache tails) are skipped and counted. Surrounding whitespace is normalized away before comparison, exactly as the reader does — so whitespace-padded copies of a record (a CRLF-converted file, an edited line) dedupe instead of turning into double-counted records. The output file is replaced, and may itself be one of the inputs.
Options
--output PATH(required) — the file to write