Duda plugin has_ancestor y herencia

Hola gente, por fin logre hacer funcionar el plugin has_ancestor y me
surge una duda, en el ejemplo que viene
con el plugin hay una clase ItemPurchase y dos que la heredan,
StockItemPurchase y ContractItemPurchase.

http://plans.inplanb.com/articles/2007/06/28/construct-model-abstractions-with-has_ancestor

Logre armar los crudes para poder probar y ahi vino mi gran duda:

En un listado generado por un find(:all) de la clase padre, se ven
tambien los objetos hijos, si borro los
objetos que aparecen en el listado y despues hago un listado de las
clases hijas, se borran los atributos
heredados pero no los registros. Ejemplo simplificado por si no se
entiende.

Clase padre
apellido

Clase hijo < padre
nombre

En un listado de la clase padre

Me aparece :
apellido
Lopez
Peres

EL listado de la clase hijo antes de borrar me aparece
apellido nombre
Lopez Marcelo

Borro los registros en la tabla padre, en el listado de la clase hijo
aparece

apellido nombre
Marcelo

No se destruye todo el objeto, solo los campos heredados pasan a tener
valor nil.

Eso es normal? está bien? Tengo que hacerle borrar yo los restos que
quedaron del objeto hijo en la tabla hijos?

En el listado padre, NO deberian aparecerme objetos instanciados desde
la clase hijo, no?

Perdonen si lo explico mal. Desde ya les agradezco.