Aglet

Triage Unexpected Writes During an Import Preview

A preview may legitimately save upload metadata while still promising not to import destination records. If records appear to change before confirmation, identify exactly which state changed and when. Keep expected preview bookkeeping separate from domain writes so the investigation neither dismisses a real early import nor mislabels ordinary upload tracking as one.

Establish what is happening

  1. Record the promised preview boundary

    Capture the interface’s stated behavior and the action the user took. Identify whether it was upload, validation, preview, or confirmed execution. Use a controlled fixture and known destination baseline so a later state difference can be tied to this flow rather than another editing session or background process.

  2. Compare destination and bookkeeping state

    Inspect the relevant destination records separately from upload, validation, or preview records. Record creations, updates, and timestamps for the controlled source identities. A new import-attempt record is not itself evidence that destination data was written; equally, a preview label does not establish that destination state remained unchanged.

  3. Trace the first write boundary

    Follow the controlled action to the operation that first changes destination state. Check whether validation invokes an assignment path or whether execution was actually triggered by navigation or a reused request. Preserve the sequence and observable record identities without assuming that leaving the preview screen reverses any write already made.

What to carry forward

End with the stated preview contract, exact state difference, triggering action, and first observed write boundary. Distinguish expected metadata from unintended destination changes. The next owner should be able to reproduce the boundary mismatch without treating every database write as an import or assuming a preview is harmless solely because of its label.

Technical background: Django import-export documentation.

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