Skip to main content
Forma B — append-only. Es la tabla más importante de loyalty y sus invariantes no se pueden revisar barato después. Una columna de saldo mutable está PROHIBIDA en todo el módulo. La razón es la misma por la que la contabilidad nunca funcionó de otra forma: en cuanto el número y su historia pueden discrepar, no hay manera de saber cuál manda. La única actualización permitida es pending → available, y el tombstone de anonimización.

Clave primaria

Atributos específicos

Claves foráneas

Atributos base

Restricciones e índices

Prohibido en toda la tabla y en todo el módulo: una columna de saldo mutable.

RLS y particionamiento

RLS activa por tenant_id. Candidata a partición RANGE mensual sobre occurred_at; no designada en v1 (standards/data.md §4). El disparador para revisarlo está escrito: crecimiento sostenido hasta que el mantenimiento de índices aparezca en la latencia de escritura. Una transacción, siempre (ADR-017): la escritura del ledger, sus efectos sobre lotes, el evento del outbox y la fila de core.audit_log commitean juntos o no commitea ninguno.

Referencias entrantes

point_lot — apunta a la transacción earn que lo originó

Registro de cambios