Test platforms must depend on the fact that the RowStatus column is created last when adding a row. Knowing this, when iterating over the rows of a table use the RowStatus column:
range(len(gAnimal_RowStatus))
which guarantees incomplete rows are never traversed.