-
80b66fe20c
fix(GRO-655): create corepack cache dir in builder stage
groombook-ceo[bot]
2026-04-15 02:08:54 +00:00
-
fed390848b
Merge branch 'main' into fix/gro-655-corepack-only
fix/gro-655-corepack-only
groombook-cto[bot]
2026-04-15 02:02:07 +00:00
-
-
-
-
58232381c7
feat(GRO-609): admin refund handling and payment stats dashboard
feature/gro-597-payment-admin
Flea Flicker
2026-04-15 01:55:00 +00:00
-
67e2157975
feat(GRO-631): add graceful shutdown to API server (#292)
groombook-cto[bot]
2026-04-15 01:54:00 +00:00
-
-
-
8e8f65f328
feat(GRO-631): add graceful shutdown to API server
feature/gro-631-graceful-shutdown
Flea Flicker
2026-04-14 16:06:30 +00:00
-
-
-
4fa4859eaf
fix: set Manager 1 as super user in UAT seed to resolve OOBE redirect
groombook-ceo[bot]
2026-04-15 00:47:09 +00:00
-
6e4526d37a
Merge branch 'main' into fix/gro-660-uat-seed-manager-superuser
fix/gro-660-uat-seed-manager-superuser
groombook-cto[bot]
2026-04-15 00:42:57 +00:00
-
-
-
-
ca88385b8d
fix(api): add server-side pagination to churn risk query (GRO-641)
groombook-cto[bot]
2026-04-15 00:32:11 +00:00
-
-
85ec814b26
fix: set Manager 1 as super user in UAT seed to resolve OOBE redirect
Flea Flicker
2026-04-15 00:25:56 +00:00
-
3f2769a43a
Merge branch 'main' into fix/gro-641-churn-pagination
groombook-cto[bot]
2026-04-15 00:25:55 +00:00
-
-
-
-
0ed87f9ed8
fix(api): add server-side pagination to churn risk query (GRO-641)
Flea Flicker
2026-04-15 00:12:01 +00:00
-
233e68769a
fix(GRO-634): rename unused 'clauses' param to _clauses in confirmation test
Flea Flicker
2026-04-14 23:23:51 +00:00
-
f7b8b7e668
fix(GRO-634): atomic confirmation token in book.ts, correct RBAC error message
Flea Flicker
2026-04-14 23:12:41 +00:00
-
1cce354413
fix(GRO-622): security hardening for auth, authorization, and token handling
Flea Flicker
2026-04-14 22:52:44 +00:00
-
-
-
648755eee5
fix: add corepack cache dir to Dockerfile (GRO-655)
groombook-cto[bot]
2026-04-14 23:02:37 +00:00
-
46e2af446f
fix(GRO-655): create corepack cache dir in builder stage
groombook-cto[bot]
2026-04-14 22:46:22 +00:00
-
-
-
77a6319459
fix(GRO-655): create corepack cache dir in builder stage
Flea Flicker
2026-04-14 21:58:44 +00:00
-
-
4594bd2307
fix(GRO-655): create corepack cache dir in builder stage
fix/gro-655-corepack-enoent
Flea Flicker
2026-04-14 21:58:44 +00:00
-
df07f2d6dc
fix(GRO-635): implement groomer data isolation in appointmentGroups, groomingLogs + batherStaffId conflict check
groombook-cto[bot]
2026-04-14 18:15:05 +00:00
-
67282256a7
ci: retrigger CI after flaky E2E 502
feature/gro-623-groomer-isolation
Flea Flicker
2026-04-14 18:08:14 +00:00
-
79effb439c
fix(GRO-623): implement groomer data isolation in appointmentGroups, groomingLogs + batherStaffId conflict check
Flea Flicker
2026-04-14 17:52:20 +00:00
-
-
-
dadabb0ea7
fix(GRO-631): pin pnpm version and guard against duplicate CD PRs
groombook-cto[bot]
2026-04-14 17:41:07 +00:00
-
-
-
-
d5a8b19322
Merge branch 'main' into feature/gro-631-ci-pnpm-pin
groombook-cto[bot]
2026-04-14 17:34:02 +00:00
-
-
-
-
d8c0052b54
fix(GRO-634): implement auth & authorization security hardening (8 findings)
Flea Flicker
2026-04-14 17:08:02 +00:00
-
-
-
4d1d94296f
fix(GRO-631): add tag validation to promote-prod workflow (#282)
groombook-cto[bot]
2026-04-14 16:40:07 +00:00
-
-
c6800a6144
Merge branch 'main' into feature/gro-631-prod-tag-validation
groombook-cto[bot]
2026-04-14 16:35:46 +00:00
-
-
-
-
1745265fe3
GRO-653: Implement portal session middleware and server-side audit logging
feature/gro-632-impersonation-session-hardening
Flea Flicker
2026-04-14 16:34:33 +00:00
-
000e90a617
feat(GRO-631): add security headers to nginx.conf
groombook-cto[bot]
2026-04-14 16:25:57 +00:00
-
-
-
-
70e9465b68
fix(GRO-631): add tag validation to promote-prod workflow
Flea Flicker
2026-04-14 16:22:23 +00:00
-
-
-
8c3e0f9554
feat(GRO-631): add security headers to nginx.conf
Flea Flicker
2026-04-14 16:10:04 +00:00
-
-
f4f522d5e6
fix(GRO-631): pin pnpm version and guard against duplicate CD PRs
Flea Flicker
2026-04-14 15:56:15 +00:00
-
e8455195ee
feat(GRO-631): add Docker HEALTHCHECK and update .dockerignore
Flea Flicker
2026-04-14 15:47:06 +00:00
-
-
04147f3e6c
fix(reminders): replace N+1 per-appointment queries with single JOIN query
Flea Flicker
2026-04-14 14:41:26 +00:00
-
ab4b9fe6fc
fix(GRO-638): appointment scheduling correctness and client deletion integrity
Paperclip
2026-04-14 14:31:52 +00:00
-
-
203b600713
fix(stripe-webhooks): validate invoice IDs as UUIDs before DB lookup
Paperclip
2026-04-14 14:00:02 +00:00
-
b230e015c2
fix(services): cap durationMinutes at 480 (8 hours max)
Paperclip
2026-04-14 13:59:59 +00:00
-
53b2dc6067
fix(appointments): cap recurrence series at 1 year max
Paperclip
2026-04-14 13:59:54 +00:00
-
1bdfa9f3d2
fix(book): add future-time refinement to booking startTime
Paperclip
2026-04-14 13:59:51 +00:00
-
369c2ce182
fix(invoices): add Zod query param validation to GET /
Paperclip
2026-04-14 13:59:50 +00:00
-
5e24678fa5
feat(GRO-635): implement groomer data isolation in appointmentGroups, groomingLogs + fix batherStaffId conflict check
Paperclip
2026-04-14 13:50:03 +00:00
-
-
-
c438f5772c
feat(GRO-607): Stripe Elements payment UI replacing mock flow
groombook-cto[bot]
2026-04-14 08:27:03 +00:00
-
d87f0f9608
fix(GRO-607): CTO review fixes — payment security and correctness
feature/gro-607-payment-ui
Paperclip
2026-04-14 08:12:05 +00:00
-
6f9e6e7153
fix(GRO-607): remove unused eslint-disable directive in CustomerPortal
Paperclip
2026-04-14 07:51:38 +00:00
-
-
dc947874ca
fix(GRO-607): Stripe Elements payment UI - lint/type fixes
Paperclip
2026-04-13 20:00:18 +00:00
-
78b71cca58
GRO-607: Replace mock payment flow with real Stripe Elements
Paperclip
2026-04-13 19:55:49 +00:00
-
5456637705
GRO-607: Add /portal/config endpoint + rename date field
Paperclip
2026-04-13 19:55:24 +00:00
-
3037b77fe8
GRO-607: Install Stripe frontend packages
Paperclip
2026-04-13 19:55:13 +00:00
-
ae873215c0
feat(GRO-597): Stripe payment backend — schema, service, API, webhooks
feature/gro-597-payment-backend
Paperclip
2026-04-13 19:54:15 +00:00
-
9d37053580
GRO-606: Add payment API endpoints (pay invoice, payment methods, refunds)
Paperclip
2026-04-13 19:43:24 +00:00
-
fdaf4db0d5
GRO-605: Stripe SDK integration + payment service
Paperclip
2026-04-13 19:43:03 +00:00
-
-
-
2db922bb14
fix(GRO-607): Remove unused attachPaymentMethod import from portal
feature/gro-597-payment-ui
Paperclip
2026-04-13 19:17:28 +00:00
-
5aec436fb7
fix(GRO-607): Stripe Elements payment UI - lint/type fixes
Paperclip
2026-04-13 19:17:15 +00:00
-
0aabb866c2
GRO-607: Add /portal/config endpoint + rename date field
Paperclip
2026-04-12 23:56:02 +00:00
-
37fc33877c
GRO-607: Replace mock payment flow with real Stripe Elements
Paperclip
2026-04-12 23:48:23 +00:00
-
00619a07e0
GRO-606: Add payment API endpoints (pay invoice, payment methods, refunds)
Paperclip
2026-04-12 23:46:09 +00:00
-
d76e055962
GRO-605: Stripe SDK integration + payment service
Paperclip
2026-04-12 23:41:29 +00:00
-
c1e8d9830d
GRO-600: Extend reminder scheduler to send SMS alongside email
Paperclip
2026-04-12 23:24:56 +00:00
-
dd0a57dcf9
feat(gro-194): SMS provider service with Telnyx SDK integration
Paperclip
2026-04-12 23:22:28 +00:00
-
ce5a5c5a02
GRO-598/GRO-194 Phase 1.1: SMS schema - add consent fields to clients, channel to reminderLogs, E.164 phone validation
Paperclip
2026-04-12 23:18:32 +00:00
-
a7e98c0582
feat(GRO-608): Add Stripe webhook handler for payment events
feature/gro-597-stripe-webhooks
Paperclip
2026-04-13 00:09:46 +00:00
-
-
-
1a0bbb5c01
GRO-607: Install Stripe frontend packages
Paperclip
2026-04-12 23:53:55 +00:00
-
-
-
0d73532054
GRO-607: Replace mock payment flow with real Stripe Elements
feature/gro-597-payment-api
Paperclip
2026-04-12 23:48:23 +00:00
-
dcf5740489
GRO-606: Add payment API endpoints (pay invoice, payment methods, refunds)
Paperclip
2026-04-12 23:46:09 +00:00
-
e15977ba82
GRO-605: Stripe SDK integration + payment service
Paperclip
2026-04-12 23:41:29 +00:00
-
4079ed9d26
GRO-600: Extend reminder scheduler to send SMS alongside email
Paperclip
2026-04-12 23:24:56 +00:00
-
1cc708e6b4
feat(gro-194): SMS provider service with Telnyx SDK integration
Paperclip
2026-04-12 23:22:28 +00:00
-
6b300626a0
GRO-598/GRO-194 Phase 1.1: SMS schema - add consent fields to clients, channel to reminderLogs, E.164 phone validation
Paperclip
2026-04-12 23:18:32 +00:00
-
-
-
4f6a1e8149
fix(GRO-574): switch rate limit to memory storage to unblock UAT
groombook-qa[bot]
2026-04-12 12:20:00 +00:00
-
9dbc0c692b
Merge branch 'main' into GRO-574-rate-limit-migration
GRO-574-rate-limit-migration
groombook-qa[bot]
2026-04-12 12:13:12 +00:00
-
-
-
-
b6246754e1
fix(GRO-574): switch rate limit to memory storage to unblock UAT
Paperclip
2026-04-12 12:06:46 +00:00
-
be3cfa9a54
Merge pull request #268 from groombook/feature/gro-565-better-auth-phase3
groombook-cto[bot]
2026-04-12 11:29:06 +00:00
-
-
06e7ddaa61
Merge branch 'main' into feature/gro-565-better-auth-phase3
groombook-cto[bot]
2026-04-12 11:25:35 +00:00
-
-
-
-
f123e04e4c
chore(GRO-575): promote GRO-574 rate_limit migration to UAT
chore/gro-575-promote-gro-574-to-uat
Flea Flicker
2026-04-12 11:24:09 +00:00
-
-
-
15131b72f0
fix(GRO-574): add rate_limit table migration for Better Auth
groombook-cto[bot]
2026-04-12 03:30:45 +00:00
-
564fb75cc2
Add rate_limit table migration for Better Auth (GRO-574)
Paperclip
2026-04-12 03:15:13 +00:00
-
40a5ca06c8
feat(GRO-566): add SKIP_OOBE env var to bypass setup wizard
Paperclip
2026-04-12 02:48:08 +00:00
-
-
-
bc1f11a901
feat(GRO-565): Better Auth Phase 3 - password change, OIDC discovery, session cleanup, email verification
Paperclip
2026-04-12 02:47:17 +00:00
-
-
00470ad148
feat(GRO-566): add SKIP_OOBE env var to bypass setup wizard
fix/gro-566-skip-oobe
Paperclip
2026-04-12 02:36:17 +00:00
-
f4e34f2826
fix(GRO-564): prevent admin nav logout button overflow
groombook-cto[bot]
2026-04-12 02:31:46 +00:00
-
-
9cce0bc5d9
feat(GRO-565): Better Auth Phase 3 - password change, OIDC discovery, session cleanup, email verification
Paperclip
2026-04-12 02:23:44 +00:00
-
856096a531
fix(GRO-564): remove automatic staff-user email linking
Paperclip
2026-04-12 02:14:42 +00:00
-
-
-
2396eaab4d
fix(GRO-564): wrap admin nav links in scrollable div to prevent logout overflow
Paperclip
2026-04-12 02:07:04 +00:00
-
-
97b71d5396
feat(GRO-564): Better Auth Phase 2 Security Hardening
groombook-ceo[bot]
2026-04-11 23:07:36 +00:00
-
-
bbe95df9ca
merge: resolve conflict with main for GRO-564 security hardening
Paperclip
2026-04-11 22:59:50 +00:00
-
-
-
-
1380d5a9d3
feat(GRO-564): Better Auth Phase 2 security hardening
Paperclip
2026-04-11 22:53:00 +00:00
-
41dff6f0e2
fix(GRO-563): stabilize OAuth login - upgrade better-auth, fix service worker, add 503 handling
groombook-cto[bot]
2026-04-11 21:07:41 +00:00
-
8002a3db96
fix(GRO-563): stabilize OAuth login - upgrade better-auth, fix service worker, add 503 handling
Paperclip
2026-04-11 20:35:10 +00:00
-
88e6845027
chore: update infra submodule to include social auth env vars (GRO-545)
Paperclip
2026-04-11 18:13:24 +00:00
-
085c8b9cfa
fix(GRO-545): switch OAuth state to cookie storage and add login error display
Paperclip
2026-04-11 18:01:59 +00:00
-
-
1d76c63137
fix(e2e): use domcontentloaded instead of networkidle in admin invoices test
groombook-qa[bot]
2026-04-11 16:50:35 +00:00
-
0019511061
fix(e2e): use domcontentloaded instead of networkidle in admin invoices test
fix/gro-557-e2e-stability
Pawla Abdul
2026-04-11 16:43:45 +00:00
-
-
9a0a63d1df
fix(gro-558): add paginated mock for /api/invoices (#261)
groombook-engineer[bot]
2026-04-11 16:38:51 +00:00
-
b4fa641ddd
chore: add AGENTS.md with engineer task handoff instructions
chore/gro-558-agents-instructions
Pawla Abdul
2026-04-11 16:34:07 +00:00
-
-
d95a2ede36
fix(e2e): add paginated mock for /api/invoices and remove fragile networkidle wait
fix/gro-531-social-login
Flea Flicker
2026-04-11 15:42:56 +00:00
-
fb892cadad
fix flaky E2E test: add networkidle wait before admin invoices assertions
Flea Flicker
2026-04-11 15:31:29 +00:00
-
-
24a032dd9d
fix(api): move Google/GitHub from plugins[] to socialProviders{} in Better-Auth config
groombook-cto[bot]
2026-04-11 15:25:03 +00:00
-
-
13f2550ee2
fix(api): move Google/GitHub from plugins[] to socialProviders{} in Better-Auth config
Flea Flicker
2026-04-11 15:12:44 +00:00
-
-
0829f9ffa2
fix(GRO-545): use socialProviders config key for GitHub/Google in Better-Auth
fix/gro-545-social-providers-config
Paperclip
2026-04-11 14:29:59 +00:00
-
f29ac2e40d
Merge pull request #258 from groombook/fleaflicker/gro-546-fix-oauth-redirect-uri
groombook-cto[bot]
2026-04-11 13:21:01 +00:00
-
-
25dae6af58
GRO-551: Update infra submodule to include social auth env vars for UAT
Paperclip
2026-04-11 13:13:01 +00:00