cadrumo.application.calculations.iva_compensation_history_ports module

Application-owned capability for IVA compensation history persistence.

exception IvaCompensationHistoryPersistenceError(message=None, *, context=None, translated_message=None)[source]

Bases: IvaCompensationModeloError

Translated persistence failure at the IVA-history boundary.

Parameters:
  • message (str | None)

  • context (Mapping[str, object] | None)

  • translated_message (str | None)

Return type:

None

code
class IvaCompensationHistoryRepositoryProtocol(*args, **kwargs)[source]

Bases: Protocol

Required bucket-bound capability for IVA compensation period states.

load_period(period)[source]

Load one period state, or return None when absent.

Return type:

IvaCompensationPeriodState | None

Parameters:

period (Period)

save_period(state)[source]

Persist one period state.

Return type:

None

Parameters:

state (IvaCompensationPeriodState)

list_periods()[source]

Return all period states in chronological order.

Return type:

tuple[IvaCompensationPeriodState, ...]

to_secure_object_write(payload, *, expected_revision_id=None)[source]

Prepare one history write for an atomic outer co-commit.

Return type:

SecureObjectWrite

Parameters:
property secure_object_repository: CalculationObservationStorageProtocol

Return the storage capability used for co-commit.