Commit Graph

  • 2111bb8b60 feat(ui): add reservation-list table component Matt Ciaccio 2026-04-24 14:18:11 +02:00
  • 64d7b5c765 feat(ui): company list page with columns, filters, and sidebar entry Matt Ciaccio 2026-04-24 14:05:24 +02:00
  • 4e448dd06e feat(ui): add-membership dialog for company members Matt Ciaccio 2026-04-24 14:02:47 +02:00
  • 29a7fc8857 feat(ui): add shared client-picker autocomplete Matt Ciaccio 2026-04-24 14:02:00 +02:00
  • 5d76a8a1cf feat(ui): company detail page with header, tabs, members, owned yachts Matt Ciaccio 2026-04-24 13:59:21 +02:00
  • d6743ed52c feat(ui): add company-form for create/edit with 409 handling Matt Ciaccio 2026-04-24 13:53:35 +02:00
  • ba86b7a897 feat(ui): add company-picker autocomplete component Matt Ciaccio 2026-04-24 13:52:52 +02:00
  • 4f56c2bdfd feat(ui): add Yachts entry to sidebar navigation Matt Ciaccio 2026-04-24 13:48:37 +02:00
  • 508518b6c8 feat(ui): yacht transfer dialog with atomic ownership change Matt Ciaccio 2026-04-24 13:47:26 +02:00
  • f64a52b995 feat(ui): yacht list page with columns and filters Matt Ciaccio 2026-04-24 13:44:15 +02:00
  • 76d2348873 feat(ui): yacht detail page with header, tabs, ownership history Matt Ciaccio 2026-04-24 13:40:41 +02:00
  • a604223c17 feat(ui): add yacht-form for create/edit Matt Ciaccio 2026-04-24 13:34:55 +02:00
  • d4f58abb9c feat(ui): add owner-picker and yacht-picker components Matt Ciaccio 2026-04-24 13:32:28 +02:00
  • 727e323288 feat(seed): rewrite seed for multi-cardinality refactor Matt Ciaccio 2026-04-24 13:26:37 +02:00
  • 7abbdd4913 feat(factories): add makeMembership, makeReservation, makeOwnershipTransfer Matt Ciaccio 2026-04-24 13:19:54 +02:00
  • 94f8b76a03 feat(events): register yacht, company, membership, reservation webhook events Matt Ciaccio 2026-04-24 12:56:47 +02:00
  • a78f653f5a feat(api): berth reservations (create pending + lifecycle PATCH) Matt Ciaccio 2026-04-24 12:55:12 +02:00
  • aca45fb1b2 feat(api): company memberships (add/update/end/set-primary) Matt Ciaccio 2026-04-24 12:49:10 +02:00
  • 183ff1ff9e feat(api): company list/create/detail/patch/archive/autocomplete Matt Ciaccio 2026-04-24 12:45:10 +02:00
  • 90463269ce feat(api): yacht detail, patch, archive, transfer, history, autocomplete Matt Ciaccio 2026-04-24 12:40:51 +02:00
  • a5036c6358 feat(api): GET/POST /api/v1/yachts Matt Ciaccio 2026-04-24 12:35:25 +02:00
  • f743169354 feat(permissions): add yacht, company, membership, reservation keys Matt Ciaccio 2026-04-24 12:30:06 +02:00
  • b053a6388e feat(eoi): shared context builder + tests Matt Ciaccio 2026-04-24 12:20:40 +02:00
  • b1133c4e87 feat(reservations): service + validators + exclusivity tests Matt Ciaccio 2026-04-24 12:15:22 +02:00
  • 15a79e7990 feat(company-memberships): service + validators + tests Matt Ciaccio 2026-04-24 12:07:58 +02:00
  • 037f2544e8 feat(companies): service + validators + unit tests Matt Ciaccio 2026-04-24 12:02:08 +02:00
  • 7c408cf975 feat(yachts): list + owner-scoped list + autocomplete Matt Ciaccio 2026-04-24 00:03:36 +02:00
  • 8a5cd1ef0e feat(yachts): atomic transferOwnership with partial-unique guard Matt Ciaccio 2026-04-23 23:58:20 +02:00
  • d0ab4b8102 feat(yachts): updateYacht + archiveYacht Matt Ciaccio 2026-04-23 23:52:24 +02:00
  • aaf4847fc2 refactor(yachts): use withTransaction helper per project convention Matt Ciaccio 2026-04-23 23:47:12 +02:00
  • feacb8c7ac fix(yachts): run owner existence check inside transaction Matt Ciaccio 2026-04-23 23:46:03 +02:00
  • 2f2ad4452f feat(yachts): createYacht + getYachtById services with tests Matt Ciaccio 2026-04-23 23:40:56 +02:00
  • 27d438929b refactor(yachts): rename schema + consolidate tests per project conventions Matt Ciaccio 2026-04-23 23:35:30 +02:00
  • 899e588a0c feat(yachts): add zod validators + tests Matt Ciaccio 2026-04-23 23:31:29 +02:00
  • 7a6e95c87a test(schema): verify partial unique indexes and case-insensitive company uniqueness Matt Ciaccio 2026-04-23 18:06:37 +02:00
  • 077ba5bf6b feat(schema): wire yacht, company, reservation relations in Drizzle Matt Ciaccio 2026-04-23 18:02:22 +02:00
  • 14dac2f3e1 feat(documents): add yachtId/companyId to files and documents Matt Ciaccio 2026-04-23 18:00:12 +02:00
  • 117cfae52e feat(invoices): add billingEntityType/Id for polymorphic billing Matt Ciaccio 2026-04-23 17:58:52 +02:00
  • d43298a74e feat(schema): add yachtId to interests and berth_waiting_list Matt Ciaccio 2026-04-23 17:57:29 +02:00
  • 88a87afa77 feat(reservations): add berth_reservations schema with partial unique exclusivity Matt Ciaccio 2026-04-23 17:55:53 +02:00
  • 299e893e2b feat(companies): add companies, memberships, addresses, notes, tags schema Matt Ciaccio 2026-04-23 17:54:02 +02:00
  • 51523e6768 feat(yachts): add yachts, ownership history, notes, tags schema Matt Ciaccio 2026-04-23 17:51:19 +02:00
  • 11969c0d8a docs(plan): add data-model refactor implementation plan (Spec 1) Matt Ciaccio 2026-04-23 17:17:02 +02:00
  • 1c0a16fd59 docs(spec): add data-model refactor design (Spec 1 of 3) Matt Ciaccio 2026-04-23 17:04:41 +02:00
  • b6996f9a31 test(e2e): repair 26 Playwright smoke-test failures Matt Ciaccio 2026-04-22 17:24:52 +02:00
  • 46bd8aaef1 fix: allow /portal and /api/portal paths without CRM session Matt Ciaccio 2026-04-22 17:22:53 +02:00
  • b5d8e1ecb8 docs: update PROGRESS.md with 2026-03-26 → 2026-04-22 changelog Matt Ciaccio 2026-04-22 02:37:43 +02:00
  • ed40662b99 chore: gitignore docker-compose.override.yml and .remember/ Matt Ciaccio 2026-04-22 02:36:11 +02:00
  • 9d815c4dcc fix: wrap useSearchParams pages in Suspense for prerender Matt Ciaccio 2026-04-22 02:06:39 +02:00
  • b9b3f942a6 chore: add .gitattributes to normalize line endings to LF Matt Ciaccio 2026-04-22 02:02:46 +02:00
  • 4552187b9f feat: add inquiry notification settings to admin settings UI Matt 2026-04-14 13:16:20 -04:00
  • d0c12d74e4 feat: wire inquiry notifications into public interest endpoint Matt 2026-04-14 13:04:26 -04:00
  • 7313d8b3d0 feat: add email worker handlers for inquiry confirmation and sales notification Matt 2026-04-14 13:00:14 -04:00
  • c5c45accfc feat: add inquiry notification service for sales team targeting Matt 2026-04-14 12:58:55 -04:00
  • 9a0c28020d feat: add inquiry email templates for client confirmation and sales notification Matt 2026-04-14 12:56:30 -04:00
  • 44982a2878 feat: add optional plain-text fallback to sendEmail Matt 2026-04-14 12:54:25 -04:00
  • ae19170da8 feat: expand public interest schema with name split, address, berth Matt 2026-04-14 12:53:13 -04:00
  • f90dba036f feat: add partial unique index for single primary address per client Matt 2026-04-14 12:51:45 -04:00
  • 59dd418542 feat: add client_addresses table for multi-address storage Matt 2026-04-14 12:44:11 -04:00
  • f659073b8f Add inquiry notifications implementation plan Matt 2026-04-14 12:38:25 -04:00
  • a8b93fd862 Add inquiry notifications system design spec Matt 2026-04-14 12:21:45 -04:00
  • 8df8ded46c Add user settings, audit log, berth CRUD, and missing endpoints Matt 2026-04-08 19:45:56 -04:00
  • 4fdd9e3207 Implement reminders system with full CRUD and background processors Matt 2026-04-08 16:27:34 -04:00
  • c8320023cc Implement admin ports and system settings management Matt 2026-04-08 15:53:33 -04:00
  • f60159e91a Implement admin users and roles management Matt 2026-04-08 15:47:11 -04:00
  • a13d7503cc Fix Docker build and production server infrastructure Matt 2026-04-08 15:31:33 -04:00
  • 082d4f20e3 Fix all TypeScript errors: restore proper types and typed route casts Matt 2026-03-26 12:29:55 +01:00
  • e847fd0261 Remove deploy job from CI - build and push only Matt 2026-03-26 12:19:36 +01:00
  • 4c20bcffcd Fix all ESLint errors: remove unused imports, replace any types Matt 2026-03-26 12:06:18 +01:00
  • b4221b918e Fix: restore pre-commit hook filename Matt 2026-03-26 11:53:36 +01:00
  • 67d7e6e3d5 Initial commit: Port Nimara CRM (Layers 0-4) Matt 2026-03-26 11:52:51 +01:00