Take a copy before you change anything

Step 145 minutes

By the end of this step

You finish this step with a dated copy of every record your change will touch, a tag on each of those records, and three counts that agree.

Words used in this step Bulk change · Record ID · Filter · Export · Tag
Bulk change
One instruction that edits, merges or deletes many records at once. The speed is the point. It is also how one wrong word reaches hundreds of records before anyone looks.
Record ID
The code your system gives each record, which no other record shares. Names repeat and emails change. The ID is how a row goes back exactly where it was.
Filter
The rule that picks which records a change applies to, such as every candidate whose email appears twice. Change the filter and you have changed the change.
Export
Saving records out of your system into a file, usually a spreadsheet. It reads the records and changes nothing.
Tag
A label you add to records inside the system, such as dedupe-oct, in a tags field or a spare one. The copy sits outside the system. The tag finds the same records from inside it.

You ask the AI to tidy up duplicate customers. It suggests a filter. The filter reads sensibly, and it is only a small change anyway, so you say go. On Monday somebody opens a record and finds two different people inside it, with both sets of notes. The filter matched on name and postcode, not on email. There is no copy. The only way back is people re-typing notes from memory and their sent items, one record at a time, for a week.

Small changes with a wrong filter are how you learn the restore procedure under pressure.

A copy is not the backup somebody told you exists. Not last spring's export. Not an undo button you have never pressed. It is today's records, the exact ones this change will touch, with their IDs, saved where the change cannot reach them.

Step three of Give your AI the keys says to take a copy before every change, without judging whether the change deserves one. This step is how, for one change, in a system you run.

It is only a small change

  • The AI suggests a filter and it reads fine
  • You say go, because it is only a tidy-up
  • On Monday, two people turn up inside one record
  • No copy, so the notes get re-typed from memory

Copy first, then change

  • Write the change down in one line
  • Export exactly the records it touches, IDs included
  • Tag the same records inside the system
  • Three counts agree before anything changes
The change is the same size either way. The copy decides whether a wrong filter costs an afternoon or a week of re-typing.

The rules

Copy the exact records the change will touch, found by the same filter. Not a similar filter, and not the AI's description of one. The same rule the change will use, run the same way. If the change also moves linked records, such as notes or attachments, copy those too. A full export of everything is a fine extra. It is not a replacement, because you cannot count it against the change.

No record ID, no copy. Names repeat. Emails are often the very thing you are matching on. The ID is what lets a row go back where it came from, so it goes in every row.

Tag the records as well as copying them. The copy sits outside the system. The tag sits inside it, on each record, naming the change and the month. If the copy goes missing, or somebody asks next spring which records the merge touched, one search answers it.

Three counts, one number. The filter count, the rows in the copy and the records carrying the tag. If any of the three differ, you have copied or tagged a different set from the one you are about to change. Stop and find out why.

Keep the copy where the change cannot reach it. A read-only folder, outside the system, somewhere the AI cannot write. Name the file for what it holds and the date. A copy that the next change can overwrite is not a copy for long.

Do it now

  1. Write the change in one line. What it does, to which records, found how.
  2. Ask the AI for the filter and the count, without changing anything. It needs read-only access for this, and step one of Give your AI the keys sets that up.
I am about to make a bulk change in <system>. Do not change anything.
The change: <your one line>.
1. Write the filter that finds every record this change will touch, in plain words and in the form <system> uses.
2. Run it read-only and give me the count.
3. List every other kind of record the change will move or edit, such as notes or attachments, with a count for each.
If you cannot do this without writing to the system, say so and stop.

  1. Run the same filter yourself in your system's own search. Export the result with every column, and check the ID column is there before you save. If the search cannot express the filter, export every record with its ID and apply the filter in a spreadsheet instead.
  2. Export the linked records the AI listed, for the same records, into files of their own.
  3. Name each file for what it holds and the date, such as candidates_before_merge_2026-10-05. Save them in a folder the AI cannot write to, and make the files read-only.
  4. Add one tag to every record the filter found. Name the change and the month in it.
  5. Fill in this sheet and keep it with the copy.
Change:        <verb> <which records> in <which system>
Found by:      <the filter, in plain words>
Filter count:  <what the system's search shows>
Copy:          <file name>, <rows> rows, record ID in every row
Linked rows:   <file name and row count for each kind>
Tag:           <tag name>, on <number> records
Stored:        <folder>, read-only
Counts agree:  <yes or no>

A worked example

Say you run a twenty-person recruitment agency. Eleven years of candidates sit in one database. The same person often appears twice, because they came back through a different job board. Nadia, the operations manager, wants the duplicates merged, and the AI has offered to do it. Before it touches anything, she takes the copy.

Worked example

A twenty-person recruitment agency

Nadia, the operations manager, taking the copy before the AI merges duplicate candidates.

Change:        Merge candidate records that share an email address
Found by:      email lowercased and trimmed, on more than one record, blanks left out
Filter count:  1,311 records in 604 groups, out of 18,412 candidates
Copy:          candidates_before_merge_2026-10-05.csv, 1,311 rows, ID in every row
Linked rows:   notes_before_merge_2026-10-05.csv, 4,870 rows
               applications_before_merge_2026-10-05.csv, 1,036 rows
Tag:           dedupe-oct, on 1,311 records
Stored:        the directors' shared drive, read-only, no AI access
Counts agree:  filter 1,311, copy 1,311, tag 1,311

What to notice

Nothing has been merged. The AI found the records and counted them. Nadia ran the same search herself, exported it and added the tag.

Nothing is merged yet, and nothing is at risk.

The failure you will hit

The export without the IDs. You will export from the screen you always use. It gives you the columns on that screen: name, email, phone, consultant. It looks complete. On the day you need it, you will have a thousand names. You will have no way to say which record each came from. Names repeat, and the records have since been merged. Beat it by opening the file before you save it anywhere, finding the ID column and running the count.

Under that sits a quieter mistake. On Wednesday the AI suggests a better filter, and you accept it. Monday's copy now covers a different set of records. Any change to the filter means a new copy and a new count.

Not for you if

If you will not open the file and look for the ID column, stop here. You have a file, not a copy. And if your plan for a bad day is an undo button you have never pressed, carry on without this step and learn the restore procedure under pressure.


Step two is the fence: one sentence naming what this change touches, and everything else reported rather than fixed. The Vault is the paid library, and Data & Analytics is one of its categories.

Done means

Open the copy in a spreadsheet and type =COUNTA(A:A)-1 into an empty cell in another column, with A as the ID column. The minus one takes off the header row. Close the file without saving. Then search your system for the tag. The formula, the tag search and the filter count all return the same number, and the file name carries today's date. If any of the three differ, the copy holds a different set from the one the change will touch. You are not ready.

I keep this tick in this browser and send it nowhere. It goes when you close the browser.

Untick it if the check stops passing.

This step files under Data & Analytics in the Vault.

Open Data & Analytics
Two people in conversation at a crowded, warmly lit bar, others talking behind them

Founders, private room

Included in Membership

The next step is included in Membership.

This step is open to everyone. The rest of the track is not.

Step 2, Touch only what you named

What this step installs

You finish this step with one sentence that fences your change, a list of everything the AI noticed and left alone, and proof that it declines to cross the fence when asked.

30 minutes

It hands off to Data & Analytics in the Vault, which the same membership opens.The track list stays open to anyone.

Included in Membership — £79/month.

You sign in first, so the membership lands on the right account.

Your ticks in this browser stay. They come with you when you join.