A renumeração causará confusão. Os relatórios existentes farão referência ao registro 99 e, no entanto, se o sistema renumerar, poderá renumerar esse registro para 98, agora todos os relatórios (e UIs preenchidas) estão errados. Depois de alocar um ID exclusivo, ele deve permanecer fixo.
Usar campos de ID para qualquer coisa que não seja uma numeração única simples será problemático. Ter um requisito de "sem lacunas" é simplesmente inconsistente com o requisito de poder excluir. Talvez você possa marcar os registros como excluídos em vez de excluí-los. Então realmente não há lacunas. Digamos que você esteja produzindo faturas numeradas:você teria uma fatura cancelada com valor zero com esse número em vez de excluí-la.