needsTenant property
Tables whose rows would be hidden by adding the tenant column, and which were left alone until somebody says whose those rows are.
Rows written before the column existed belong to no tenant, and a predicate on every read hides all of them from everybody: the table reads as empty, which cannot be told apart from data loss.
Implementation
final List<String> needsTenant;