Skip to content

symfonic.memory.backends.postgres_receipt_leases

postgres_receipt_leases

Private receipt leases with durable, non-reusable owner claim provenance.

PostgresReceiptLeases

PostgresReceiptLeases(domain)

Claims and the live lease fate-share one pool transaction.

Owner tokens cannot be reused within the same full scope, even after release. Legacy claimless leases can fence but refuse renewal/release and recovery.

Source code in src/symfonic/memory/backends/postgres_receipt_leases.py
def __init__(self, domain) -> None:
    from symfonic.memory.backends.postgres_operation_receipt import PostgresReceiptDomain

    if type(domain) is not PostgresReceiptDomain:
        raise MemoryContractError("receipt leases require exact domain")
    self.transaction_domain = domain
    self._leases = PostgresLeases(domain.pool)