Changelog — CRM Brasil Reisen
v0.2.1 — 2026-07-13
- Receipts are frozen forever on first print: stored as an immutable file with a verification fingerprint printed on the receipt; later data updates can never change an issued receipt.
- Cancelled transfers print with a clear CANCELADA watermark instead of refusing.
- Receipt now includes the Brazil payer and the sender's address/document.
- Search treats special characters literally; statement CSV protected against spreadsheet formula tricks; exact integer money formatting everywhere.
- KYC checklist shows the correct confirming person for in-app confirmations.
v0.2.0 — 2026-07-13
- Counter screens (read-only mirror): client search (name/nickname/phone/CPF/number, blocked-client flag), client card (identity, LBA checklist, recipients + accounts, transfer history, notes, expired-document warning), transfer list with filters, transfer detail with audit trail.
- Receipt printing: 2ª via rendered only from the frozen transfer snapshot, print-ready A4 layout, every print audited (who/when) with print counter; cancelled transfers refuse printing.
- Client statement export (CSV).
- Dashboard shows mirror freshness (newest imported business timestamp).
v0.1.1 — 2026-07-13
- Preserve real legacy birth dates in `DD.MM.YYYY` format and report malformed optional values.
- Isolate delta-import mirrors and durable run state per Cloudflare environment and D1 target.
- Refuse cached/resumed imports when the manifest belongs to another target.
- Mark authenticated HTML and API responses `no-store`.
v0.1.0 — 2026-07-13
- App scaffold: Cloudflare Workers + D1 + R2, staging/production split.
- Version footer on every page, this changelog served at /changelog.
- Feature flags (off → filipe → abel → all).
- Staging banner "AMBIENTE DE TESTE — nada aqui é real".
- Schema migration 0003: passkeys, sessions, enrollment links, feature flags.
- Passkey login (WebAuthn): one-button login page, device list + revoke, one-time re-enrollment links.
- Delta importer: repeated IBO exports upsert by legacy id, full reconciliation report per run.