The audit log now tracks everything, and you can actually search it
Creates, updates, and deletes across merchants, wallets, rules, and transactions now land in the audit log. Filter by entity and action, search by user or txid, and browse with proper pagination.
Before today, the audit log only captured transaction edits and merchant-level settings changes. That was a hole: delete a wallet, tweak a rule, rename a merchant — none of it left a trace. Today it does.
Every create, update, and delete across the four entities that matter — merchants, wallets, rules, transactions — now writes an audit row. Sensitive values (xpubs, addresses, secrets) are stored as presence flags like hasXpub: true, never the raw material. Each row carries a SHA-256 checksum so you can detect later tampering.
Three improvements to the log page itself:
- Entity column. At-a-glance badge telling you whether that DELETE wiped a transaction or a whole wallet. Derived from the action name — no schema changes, no backfill.
- Filter + search. Narrow by entity, action, or date range. The search box matches user email and transaction hash (case-insensitive substring).
- Proper pagination. Same First / Prev / Next / Last + page-size control used on the transactions table. Default 50/page, up to 200.
If you're on a team plan, the "who did what" picture is finally complete. Single-user accounts mostly benefit from the tamper-evidence — the shield icon on each row re-verifies on render, so you'll see red immediately if someone rewrites history at the DB layer.