- New 'accountant' role in companyRoleEnum (orthogonal like 'hr')
- meetsMinRole and requireCompanyRole now exclude accountant from
hierarchy along with hr
- Settings UI exposes accountant in the role checkbox lists for both
add-member and edit-member forms
- New 'financial_exported' value added to companyLogEventEnum, ready
for the upcoming export feature
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Multi-company budget/project tracking tool built with SvelteKit 5,
PostgreSQL (Drizzle ORM), and Tailwind CSS v4.
Features:
- Auth: local (email/password with Argon2) + generic OIDC
- 4 roles per company: admin, manager, user, viewer
- Multi-company with per-company user membership
- Projects with budget allocation from company pool
- Expense submission with approval workflow
- Categories and tags for expense organization
- Reports with spending breakdowns (by category, project, time)
- CSV import for Actual Budget migration
- Company audit log tracking all budget and admin actions
- Remaining budget hero display on overview and budget pages
- Admin-only company creation; new users wait for invitation
- Deployment configs for systemd + nginx (bare metal/Proxmox)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>