.agents/skills/better-auth-best-practices/SKILL.md .agents/skills/create-evlog-adapter/SKILL.md .agents/skills/create-evlog-adapter/references/adapter-template.md .agents/skills/create-evlog-adapter/references/test-template.md .agents/skills/create-evlog-enricher/SKILL.md .agents/skills/create-evlog-enricher/references/enricher-template.md .agents/skills/create-evlog-framework-integration/SKILL.md .agents/skills/email-and-password-best-practices/SKILL.md .agents/skills/organization-best-practices/SKILL.md .agents/skills/review-logging-patterns/SKILL.md .agents/skills/review-logging-patterns/references/code-review.md .agents/skills/review-logging-patterns/references/drain-pipeline.md .agents/skills/review-logging-patterns/references/structured-errors.md .agents/skills/review-logging-patterns/references/wide-events.md .agents/skills/two-factor-authentication-best-practices/SKILL.md .agents/skills/ultracite/SKILL.md .agents/skills/ultracite/references/code-standards.md .claude/skills/better-auth-best-practices .claude/skills/create-evlog-adapter .claude/skills/create-evlog-enricher .claude/skills/create-evlog-framework-integration .claude/skills/email-and-password-best-practices .claude/skills/organization-best-practices .claude/skills/review-logging-patterns .claude/skills/two-factor-authentication-best-practices .devcontainer/devcontainer.json .github/actions/setup/action.yml drizzle/0000_cynical_firelord.sql drizzle/0001_eager_starjammers.sql drizzle/0002_talented_whirlwind.sql drizzle/0003_clear_bishop.sql drizzle/0004_demonic_justice.sql drizzle/0005_salty_freak.sql drizzle/0006_abnormal_thing.sql drizzle/0007_spotty_jack_flag.sql drizzle/0008_clean_firebird.sql drizzle/0009_dizzy_lorna_dane.sql drizzle/0010_organic_gabe_jones.sql drizzle/0011_omniscient_vivisector.sql drizzle/meta/0000_snapshot.json drizzle/meta/0001_snapshot.json drizzle/meta/0002_snapshot.json drizzle/meta/0003_snapshot.json drizzle/meta/0004_snapshot.json drizzle/meta/0005_snapshot.json drizzle/meta/0006_snapshot.json drizzle/meta/0007_snapshot.json drizzle/meta/0008_snapshot.json drizzle/meta/0009_snapshot.json drizzle/meta/0010_snapshot.json drizzle/meta/0011_snapshot.json drizzle/meta/_journal.json public/wordmark/logo_for_mark.png public/wordmark/wordmark.png src/app/(organization)/[org]/cache.ts src/app/(organization)/[org]/clients/_components/assign-project-dialog.tsx src/app/(organization)/[org]/clients/_components/clients-table.tsx src/app/(organization)/[org]/clients/_components/invite-client-dialog.tsx src/app/(organization)/[org]/clients/_components/pending-invitations-block.tsx src/app/(organization)/[org]/clients/actions.ts src/app/(organization)/[org]/clients/common.ts src/app/(organization)/[org]/clients/page.client.tsx src/app/(organization)/[org]/clients/page.tsx src/app/(organization)/[org]/clients/types.ts src/app/(organization)/[org]/layout.tsx src/app/(organization)/[org]/nav.client.tsx src/app/(organization)/[org]/nav.server.tsx src/app/(organization)/[org]/page.tsx src/app/(organization)/[org]/projects/_components/create-project-dialog.tsx src/app/(organization)/[org]/projects/_components/project-banner.tsx src/app/(organization)/[org]/projects/_components/project-card.tsx src/app/(organization)/[org]/projects/actions.ts src/app/(organization)/[org]/projects/common.ts src/app/(organization)/[org]/projects/opengraph-image.tsx src/app/(organization)/[org]/projects/page.client.tsx src/app/(organization)/[org]/projects/page.tsx src/app/(organization)/[org]/projects/twitter-image.tsx src/app/(organization)/[org]/projects/types.ts src/app/(organization)/[org]/settings/actions.ts src/app/(organization)/[org]/settings/common.ts src/app/(organization)/[org]/settings/page.client.tsx src/app/(organization)/[org]/settings/page.tsx src/app/(organization)/[org]/teams/_components/add-member-dialog.tsx src/app/(organization)/[org]/teams/_components/create-team-dialog.tsx src/app/(organization)/[org]/teams/_components/invite-dialog.tsx src/app/(organization)/[org]/teams/_components/members-section.tsx src/app/(organization)/[org]/teams/_components/pending-invitations-block.tsx src/app/(organization)/[org]/teams/_components/rename-team-dialog.tsx src/app/(organization)/[org]/teams/_components/team-card.tsx src/app/(organization)/[org]/teams/_components/teams-section.tsx src/app/(organization)/[org]/teams/actions.ts src/app/(organization)/[org]/teams/common.ts src/app/(organization)/[org]/teams/page.client.tsx src/app/(organization)/[org]/teams/page.tsx src/app/(organization)/[org]/teams/types.ts src/app/(project)/[org]/[project]/expenses/_components/category-manager.tsx src/app/(project)/[org]/[project]/expenses/_components/client-expenses-view.tsx src/app/(project)/[org]/[project]/expenses/_components/expense-approval.tsx src/app/(project)/[org]/[project]/expenses/_components/expense-form.tsx src/app/(project)/[org]/[project]/expenses/_components/expenses-table.tsx src/app/(project)/[org]/[project]/expenses/actions.ts src/app/(project)/[org]/[project]/expenses/common.ts src/app/(project)/[org]/[project]/expenses/page.client.tsx src/app/(project)/[org]/[project]/expenses/page.tsx src/app/(project)/[org]/[project]/expenses/types.ts src/app/(project)/[org]/[project]/invoices/[invoiceId]/page.tsx src/app/(project)/[org]/[project]/invoices/_components/dispute-invoice-dialog.tsx src/app/(project)/[org]/[project]/invoices/_components/import-time-entries-dialog.tsx src/app/(project)/[org]/[project]/invoices/_components/invoice-card.tsx src/app/(project)/[org]/[project]/invoices/_components/invoice-client-view.tsx src/app/(project)/[org]/[project]/invoices/_components/invoice-editor/custom-fields-editor.tsx src/app/(project)/[org]/[project]/invoices/_components/invoice-editor/index.tsx src/app/(project)/[org]/[project]/invoices/_components/invoice-editor/invoice-item.tsx src/app/(project)/[org]/[project]/invoices/_components/invoice-editor/items-total.tsx src/app/(project)/[org]/[project]/invoices/_components/invoice-editor/pdf-preview-pane.tsx src/app/(project)/[org]/[project]/invoices/_components/invoice-pdf.tsx src/app/(project)/[org]/[project]/invoices/_components/invoice-picker-dialog.tsx src/app/(project)/[org]/[project]/invoices/_components/invoice-preview.tsx src/app/(project)/[org]/[project]/invoices/_components/status-badge.tsx src/app/(project)/[org]/[project]/invoices/actions.ts src/app/(project)/[org]/[project]/invoices/common.ts src/app/(project)/[org]/[project]/invoices/new/page.tsx src/app/(project)/[org]/[project]/invoices/page.client.tsx src/app/(project)/[org]/[project]/invoices/page.tsx src/app/(project)/[org]/[project]/invoices/types.ts src/app/(project)/[org]/[project]/layout.tsx src/app/(project)/[org]/[project]/milestones/[milestoneId]/page.client.tsx src/app/(project)/[org]/[project]/milestones/[milestoneId]/page.tsx src/app/(project)/[org]/[project]/milestones/_components/create-milestone-dialog.tsx src/app/(project)/[org]/[project]/milestones/_components/milestone-card.tsx src/app/(project)/[org]/[project]/milestones/actions.ts src/app/(project)/[org]/[project]/milestones/common.ts src/app/(project)/[org]/[project]/milestones/page.client.tsx src/app/(project)/[org]/[project]/milestones/page.tsx src/app/(project)/[org]/[project]/nav.server.tsx src/app/(project)/[org]/[project]/page.tsx src/app/(project)/[org]/[project]/proposals/[slug]/page.tsx src/app/(project)/[org]/[project]/proposals/_components/proposal-card.tsx src/app/(project)/[org]/[project]/proposals/_components/proposal-editor.tsx src/app/(project)/[org]/[project]/proposals/action.ts src/app/(project)/[org]/[project]/proposals/common.ts src/app/(project)/[org]/[project]/proposals/new/page.tsx src/app/(project)/[org]/[project]/proposals/page.client.tsx src/app/(project)/[org]/[project]/proposals/page.tsx src/app/(project)/[org]/[project]/requirements/[slug]/page.tsx src/app/(project)/[org]/[project]/requirements/_components/badge.tsx src/app/(project)/[org]/[project]/requirements/_components/change-requests-panel.tsx src/app/(project)/[org]/[project]/requirements/_components/request-changes-dialog.tsx src/app/(project)/[org]/[project]/requirements/_components/requirement-card.tsx src/app/(project)/[org]/[project]/requirements/_components/requirement-editor.tsx src/app/(project)/[org]/[project]/requirements/_components/threads-panel.tsx src/app/(project)/[org]/[project]/requirements/action.ts src/app/(project)/[org]/[project]/requirements/common.ts src/app/(project)/[org]/[project]/requirements/new/page.tsx src/app/(project)/[org]/[project]/requirements/page.client.tsx src/app/(project)/[org]/[project]/requirements/page.tsx src/app/(project)/[org]/[project]/requirements/types.ts src/app/(project)/[org]/[project]/team/_components/invite-dialog.tsx src/app/(project)/[org]/[project]/team/_components/members-section.tsx src/app/(project)/[org]/[project]/team/_components/pending-invitations.tsx src/app/(project)/[org]/[project]/team/_components/stakeholders-section.tsx src/app/(project)/[org]/[project]/team/_components/teams-section.tsx src/app/(project)/[org]/[project]/team/actions.ts src/app/(project)/[org]/[project]/team/common.ts src/app/(project)/[org]/[project]/team/page.client.tsx src/app/(project)/[org]/[project]/team/page.tsx src/app/(project)/[org]/[project]/team/types.ts src/app/(project)/[org]/[project]/timesheets/_components/budget-indicator.tsx src/app/(project)/[org]/[project]/timesheets/_components/client-reports-view.tsx src/app/(project)/[org]/[project]/timesheets/_components/member-rates-dialog.tsx src/app/(project)/[org]/[project]/timesheets/_components/sent-reports-list.tsx src/app/(project)/[org]/[project]/timesheets/_components/team-entries-table.tsx src/app/(project)/[org]/[project]/timesheets/_components/time-entry-form.tsx src/app/(project)/[org]/[project]/timesheets/_components/time-summary-card.tsx src/app/(project)/[org]/[project]/timesheets/_components/timesheet-approval.tsx src/app/(project)/[org]/[project]/timesheets/_components/weekly-timesheet.tsx src/app/(project)/[org]/[project]/timesheets/actions.ts src/app/(project)/[org]/[project]/timesheets/common.ts src/app/(project)/[org]/[project]/timesheets/page.client.tsx src/app/(project)/[org]/[project]/timesheets/page.tsx src/app/(project)/[org]/[project]/timesheets/types.ts src/app/(root)/auth/[path]/page.tsx src/app/(root)/dashboard/page.tsx src/app/(root)/invite/[id]/actions.ts src/app/(root)/invite/[id]/page.client.tsx src/app/(root)/invite/[id]/page.tsx src/app/(root)/layout.tsx src/app/(root)/onboarding/common.ts src/app/(root)/onboarding/page.client.tsx src/app/(root)/onboarding/page.tsx src/app/account/[path]/page.tsx src/app/api/auth/[...all]/route.ts src/app/api/auth/guest/route.ts src/app/api/auth/service.ts src/app/api/expenses/service.ts src/app/api/files/[...key]/route.ts src/app/api/invoices/service.ts src/app/api/media/service.ts src/app/api/milestones/service.ts src/app/api/organizations/service.ts src/app/api/projects/service.ts src/app/api/proposals/service.ts src/app/api/requirements/service.ts src/app/api/signatures/service.ts src/app/api/teams/service.ts src/app/api/threads/service.ts src/app/api/timesheets/service.ts src/app/api/upload/route.ts src/app/opengraph-image.tsx src/app/twitter-image.tsx src/components/application-header.tsx src/components/header.tsx src/components/icons/saturn-logo.tsx src/components/image-upload.tsx src/components/line-items-editor.tsx src/components/logos/better-auth.tsx src/components/media-library-dialog.tsx src/components/mode-toggle.tsx src/components/nav-user.tsx src/components/send-to-client-dialog.tsx src/components/signature-dialog.tsx src/components/status-badge.tsx src/components/tailwind-indicator.tsx src/components/tiptap-editor.tsx src/components/ui/avatar.tsx src/components/ui/badge.tsx src/components/ui/button.tsx src/components/ui/calendar.tsx src/components/ui/card.tsx src/components/ui/checkbox.tsx src/components/ui/collapsible.tsx src/components/ui/command.tsx src/components/ui/currency-selector.tsx src/components/ui/date-picker.tsx src/components/ui/dialog.tsx src/components/ui/dropdown-menu.tsx src/components/ui/empty.tsx src/components/ui/field.tsx src/components/ui/hover-card.tsx src/components/ui/input.tsx src/components/ui/label.tsx src/components/ui/popover.tsx src/components/ui/select.tsx src/components/ui/separator.tsx src/components/ui/sheet.tsx src/components/ui/sidebar.tsx src/components/ui/skeleton.tsx src/components/ui/sonner.tsx src/components/ui/table.tsx src/components/ui/tabs.tsx src/components/ui/textarea.tsx src/components/ui/toggle.tsx src/components/ui/tooltip.tsx src/emails/components/layout.tsx src/emails/templates/budget-threshold-reached.tsx src/emails/templates/client-added-to-project.tsx src/emails/templates/expense-approved.tsx src/emails/templates/expense-rejected.tsx src/emails/templates/expense-sent-to-client.tsx src/emails/templates/expense-submitted.tsx src/emails/templates/invitation.tsx src/emails/templates/invoice-disputed.tsx src/emails/templates/invoice-paid.tsx src/emails/templates/invoice-sent.tsx src/emails/templates/invoice-unpaid.tsx src/emails/templates/member-added-to-project.tsx src/emails/templates/member-role-changed.tsx src/emails/templates/project-due-date-reminder.tsx src/emails/templates/proposal-approved.tsx src/emails/templates/proposal-change-resolved.tsx src/emails/templates/proposal-changes-requested.tsx src/emails/templates/proposal-expiring-soon.tsx src/emails/templates/proposal-sent.tsx src/emails/templates/requirement-change-requested.tsx src/emails/templates/requirement-sent-for-sign.tsx src/emails/templates/requirement-signed.tsx src/emails/templates/team-assigned-to-project.tsx src/emails/templates/thread-new-message.tsx src/emails/templates/timesheet-approved.tsx src/emails/templates/timesheet-client-responded.tsx src/emails/templates/timesheet-rejected.tsx src/emails/templates/timesheet-sent-to-client.tsx src/emails/templates/timesheet-submitted.tsx src/server/auth/permissions.ts src/server/db/schema/auth.ts src/server/db/schema/base.ts src/server/db/schema/expense.ts src/server/db/schema/index.ts src/server/db/schema/invoice.ts src/server/db/schema/media.ts src/server/db/schema/milestone.ts src/server/db/schema/project.ts src/server/db/schema/proposal.ts src/server/db/schema/requirements.ts src/server/db/schema/thread.ts src/server/db/schema/timesheet.ts src/services/analytics.service.ts src/services/email.service.ts src/services/s3.service.ts