Check that every keyed sample sits in the cell its key names
Source:R/grid.R
check_grid_key_assignment.RdRecomputes the cell of every sample position against the grid of the connection, by the rule
of assign_grid_key(), and compares it with the grid_key the row carries. This is the gate
that a grid change needs: when the cells were rebuilt (CalCOFI/workflows#130), 84 of the 218
previous keys survived as names over different polygons, so an ingest staged against the
previous grid ships keys that pass every foreign-key check and name the wrong piece of ocean.
It also means a row must be keyed by its own position: one that inherits its key from a parent
event at another position can sit in a neighbouring cell, and fails.