cadrumo.application.wizard._checkpoint_store module

Shared descendant-fact clearing for wizard persistence projections.

descendant_clearing_facts(record, answers, *, operation)[source]

Return value-cleared facts for descendant rows the projection replaces.

When the descendant group was reached (its count page carries an answer), the projection OWNS the entire renta_family.descendiente.* namespace plus the two aggregates: any on-record path the fresh projection does not set is stale (a shrunk count, a removed optional field) and is cleared with a value=None fact – the canonical fact-removal mechanism. Without the answer (the group was never part of this run) nothing is touched, so a prior descendant fact set survives a partial re-persist. This closes the count-shrink desync where descendant_list_from_facts would otherwise scan orphaned indices the count no longer covers.

Parameters:
Return type:

tuple[UserProfileFact, ...]