Build a useful investigation brief
Freeze the comparison
Choose a source snapshot or exact query window and capture filters, ordering, selected fields, revision, and generation time. Obtain the corresponding file and checksum or byte metadata. If inputs moved, identify the changed records and state the comparison limitation before proceeding.
Trace row and field paths
Follow matched and unmatched identifiers through selection, joins, field mapping, formatting, escaping, encoding, line construction, and file writing. Compare raw and serialized values for nulls, delimiters, precision, long text, and special characters. Record intermediate counts and the code revision.
Test one boundary
Vary one filter, page boundary, timestamp, mapping, sort tie-breaker, or serialization rule at a time. Recalculate identifiers, values, and totals after each change. If source movement and file behavior both explain differences, separate the conclusions and name the missing snapshot evidence.
What to carry forward
Produce a reproducible export brief with fixed inputs, file metadata, matched sets, transformation traces, tested boundaries, and unresolved timing. Recommend the smallest correction or contract decision plus a bounded reconciliation cohort. Do not call a file accurate from matching totals when row identities differ.
Keep the decision with the work.
Use a Work Item in Aglet to record the problem, the evidence you have, and the next decision. Add an owner and priority, then keep updates in the discussion so the next person can follow the reasoning.
Create an account See the product workflow