The short answerKeep the blank CSV you exported before collection. After collection, compare it with the completed copy instead of trusting a cleaned spreadsheet. Join on unique planned-run IDs, compare every planned field exactly, map statuses explicitly, and leave deviations visible.
Reconciliation is not repairThis page does not decide which failed rows to rerun, rewrite a timestamp, choose the “right” duplicate, or turn a timeout into non-mention. It reports what the two supplied files can and cannot establish.

Preserve the plan, compare exactly, classify what actually happened

Retain two independent filesThe blank export is the planned record. The completed copy is execution evidence. Hash both imports; do not overwrite the first with the second.
Join only on unique run IDsDuplicate, missing, blank, or unexpected planned-run keys stay unresolved. The page never chooses a convenient duplicate or matches by row position.
Register, never repairChanged plan fields, missing evidence, timestamp ties, noncompletion, and order displacement remain visible in the exported deviation register.

The checker is intentionally specific to the 17-column CSV exported by the counterbalanced run schedule generator. That shared schema lets it compare the first 13 planned fields exactly while keeping the final four as-run fields separate.

Browser-local run QA

Reconcile the frozen plan with the completed as-run copy

Import both CSVs, identify the review, then map every distinct nonblank status. The files and generated record stay in this tab.

The original blank as-run export. Its last four fields should still be empty.
No file selected.
The working copy containing supplied timestamps, statuses, evidence references, and notes.
No file selected.
Local processing. CSV parsing, SHA-256 hashing, comparison, status mapping, and exports happen in this browser. Each file is capped at 5 MB and 5,000 data rows.

Read coverage, execution, and evidence as separate layers

  • Structurally matched means the completed row has one unique planned-run key and exactly matches all 13 frozen plan fields. It does not mean the execution was usable.
  • Usable completed and attempted nonusable are reviewer-mapped execution states. Both require a timestamp and evidence reference under this record.
  • Not attempted is not a failed result and never becomes brand absence. The reason belongs in the note.
  • Unstarted means all four as-run fields are blank. A partially filled row with no mapped status is unresolved instead.
  • Order displacement compares execution rank with planned rank among the same attempted rows. Timestamp ties receive a rank range and no invented displacement.

What this reconciliation can and cannot establish

The page hashes the exact bytes of each imported file, validates the exact E043 header, and compares planned fields without trimming or normalizing them. Those import hashes identify the two files used in this review. They do not prove who created either file, when it was first created, or whether an earlier version existed.

Digest boundaryE043's plan_sha256 covers canonical identity, seed, normalized inputs, declarations, and planned rows. The as-run CSV does not contain all of those inputs. E044 therefore compares the supplied digest declaration across rows and files but never calls it independently verified.

The browser record and Markdown memo preserve supplied text. For spreadsheet safety, the deviation CSV prefixes a leading apostrophe when a cell would otherwise begin with =, +, -, or @ after whitespace.

Reconciliation exposes execution fidelity and documentation gaps. It does not determine statistical eligibility, missing-data mechanism, independence, representativeness, score validity, causal impact, contractual entitlement, or compliance. A clean record can still come from a weak protocol; a deviated record may still support bounded analysis after human review.

Method sources and boundary

These sources support preservation, explicit status semantics, order caution, and deviation documentation. They do not make this marketing-measurement worksheet a regulated audit system, validated electronic record, or compliance determination.

Frequently asked questions

What files does the run reconciliation need?

Use the blank 17-column CSV exported before collection and the completed copy of that same CSV. The blank file preserves the plan; the completed file supplies execution fields.

Does a matching plan SHA-256 prove the CSV is authentic?

No. The CSV repeats E043's declared digest but omits canonical identity and seed inputs needed to recompute it. This page independently hashes each imported file and labels the plan digest as a declaration.

How are run statuses classified?

You map every exact nonblank status to usable completed, attempted nonusable, or not attempted. No synonym list or vendor-specific default is silently applied.

How does the page reconstruct actual run order?

It sorts structurally matched attempted rows by valid ISO 8601 timestamps carrying Z or an explicit offset. Equal timestamps remain an ambiguous rank range because this CSV has no separate execution sequence key.

Does the tool fix missing, duplicate, or reordered runs?

No. Those states remain in the deviation register. The page never deletes, chooses, retries, reorders, backfills, or converts failed execution into a brand outcome.

Are imported CSV files uploaded or stored?

No. Parsing, comparison, hashing, mapping, and export happen locally in the browser. Reloading clears the imported data.