Skip to main content

Interface: AuditRow

Defined in: src/server/services/audit.ts:8

One row of the company audit trail (written by DB triggers on sensitive tables).

Properties

action

action: string | null

Defined in: src/server/services/audit.ts:11


actor_email

actor_email: string | null

Defined in: src/server/services/audit.ts:14


actor_id

actor_id: string | null

Defined in: src/server/services/audit.ts:15


created_at

created_at: string

Defined in: src/server/services/audit.ts:10


entity_id

entity_id: string | null

Defined in: src/server/services/audit.ts:13


entity_type

entity_type: string | null

Defined in: src/server/services/audit.ts:12


id

id: string

Defined in: src/server/services/audit.ts:9


metadata

metadata: unknown

Defined in: src/server/services/audit.ts:26

Purpose-built payload from the triggers/RPCs that write more than a before/after pair — the invoice number on invoice_sent (0045/0094/0097), and on invoiced_hours_changed (0098) the covering invoice_id, the source that wrote it, and the signed hours_delta (negative = the over-billed direction). Without it those rows read as hours=8 → hours=3 with no way to tell which invoice moved, or as a blank Detail cell for the invoice-level rows that carry no old/new at all. Rendered by beforeAfterSummary, so the viewer and the CSV both get it.


new_value

new_value: unknown

Defined in: src/server/services/audit.ts:17


old_value

old_value: unknown

Defined in: src/server/services/audit.ts:16