🔒 The parts I care about most
• Receipt totals are checked by plain code, not by the model. If the math doesn't add up, it gets flagged.
• Money is stored as whole numbers (IDR), never decimals, so there are no rounding bugs.
• Every user's data is locked at the database level with Postgres row-level security. Even if the app has a bug, it can't show someone else's records.
• Text on a receipt is treated as untrusted. If a receipt says "ignore your instructions", it's just text.
• The agents have tests, so when I change a prompt I can see right away if it got worse.