feat(schema): add is_super_user to staff table #150

Merged
groombook-engineer[bot] merged 1 commits from feat/gro-198-schema-super-user into main 2026-03-28 20:39:46 +00:00
groombook-engineer[bot] commented 2026-03-28 20:20:33 +00:00 (Migrated from github.com)

Summary

  • Add is_super_user boolean column (default false) to staff table in schema
  • Update Staff interface in shared types to include isSuperUser: boolean
  • Mark first manager as super user in both seed modes (full dev + known-users-only)
  • Update test fixtures in apps/api with isSuperUser: true for manager mocks
  • Migration 0019_concerned_sunfire.sql created

Test plan

  • Migration runs clean on fresh DB
  • TypeScript compiles with no errors across all packages
  • Seed creates at least one super user (jordan@groombook.dev and demo-manager@groombook.dev)
  • API tests pass (pnpm --filter @groombook/api test)

cc @cpfarhood

🤖 Generated with Claude Code

## Summary - Add `is_super_user` boolean column (default `false`) to `staff` table in schema - Update `Staff` interface in shared types to include `isSuperUser: boolean` - Mark first manager as super user in both seed modes (full dev + known-users-only) - Update test fixtures in `apps/api` with `isSuperUser: true` for manager mocks - Migration `0019_concerned_sunfire.sql` created ## Test plan - [ ] Migration runs clean on fresh DB - [ ] TypeScript compiles with no errors across all packages - [ ] Seed creates at least one super user (`jordan@groombook.dev` and `demo-manager@groombook.dev`) - [ ] API tests pass (`pnpm --filter @groombook/api test`) cc @cpfarhood 🤖 Generated with [Claude Code](https://claude.com/claude-code)
github-actions[bot] commented 2026-03-28 20:25:36 +00:00 (Migrated from github.com)

Deployed to groombook-dev

Images: pr-150
URL: https://dev.groombook.farh.net

Ready for UAT validation.

## Deployed to groombook-dev **Images:** `pr-150` **URL:** https://dev.groombook.farh.net Ready for UAT validation.
lint-roller-qa[bot] (Migrated from github.com) approved these changes 2026-03-28 20:26:21 +00:00
lint-roller-qa[bot] (Migrated from github.com) left a comment

QA Review

Verified all acceptance criteria for GRO-201 (Schema: Add is_super_user to staff table):

  • Migration: correctly adds to staff table, plus column (Better-Auth link), , and unrelated waitlist/appointment columns from prior in-flight work
  • Schema: adds column with
  • Types: adds to interface
  • Seed: Both (demo-manager) and (jordan) set for the first manager
  • Factories: defaults
  • Test fixtures: All manager fixtures in , , include
  • API tests: 190/190 tests pass (

@groombook/api@0.0.1 test /paperclip/instances/default/projects/d50d9792-5817-4ff5-9771-c3267ba12990/224ebad4-4589-49c8-8ed0-92747dc85430/groombook/apps/api
vitest run

RUN v3.2.4 /paperclip/instances/default/projects/d50d9792-5817-4ff5-9771-c3267ba12990/224ebad4-4589-49c8-8ed0-92747dc85430/groombook/apps/api

✓ src/tests/slots.test.ts (8 tests) 13ms
✓ src/tests/factories.test.ts (16 tests) 8ms
✓ src/tests/rbac.test.ts (12 tests) 31ms
✓ src/tests/email.test.ts (16 tests) 45ms
✓ src/tests/search.test.ts (9 tests) 177ms
✓ src/tests/waitlist.test.ts (11 tests) 40ms
✓ src/tests/portal.test.ts (26 tests) 45ms
✓ src/tests/clients.test.ts (17 tests) 47ms
✓ src/tests/petPhotos.test.ts (18 tests) 69ms
✓ src/tests/impersonation.test.ts (23 tests) 91ms
✓ src/tests/groomerIsolation.test.ts (9 tests) 9ms
✓ src/tests/confirmation.test.ts (23 tests) 621ms
✓ src/tests/calendar.test.ts (2 tests) 5ms

Test Files 13 passed (13)
Tests 190 passed (190)
Start at 20:26:17
Duration 2.03s (transform 1.72s, setup 0ms, collect 3.84s, tests 1.20s, environment 8ms, prepare 2.89s))

  • TypeScript: Compiles clean (

@groombook/types@0.0.1 build /paperclip/instances/default/projects/d50d9792-5817-4ff5-9771-c3267ba12990/224ebad4-4589-49c8-8ed0-92747dc85430/groombook/packages/types
tsc)

  • CI: Build , Lint & Typecheck , Test , E2E Tests — Build & Push pending

Schema PR is clean. No regressions. Approving for merge.

## QA Review ✅ Verified all acceptance criteria for GRO-201 (Schema: Add is_super_user to staff table): - **Migration**: correctly adds to staff table, plus column (Better-Auth link), , and unrelated waitlist/appointment columns from prior in-flight work - **Schema**: adds column with - **Types**: adds to interface - **Seed**: Both (demo-manager) and (jordan) set for the first manager - **Factories**: defaults - **Test fixtures**: All manager fixtures in , , include - **API tests**: 190/190 tests pass ( > @groombook/api@0.0.1 test /paperclip/instances/default/projects/d50d9792-5817-4ff5-9771-c3267ba12990/224ebad4-4589-49c8-8ed0-92747dc85430/groombook/apps/api > vitest run RUN v3.2.4 /paperclip/instances/default/projects/d50d9792-5817-4ff5-9771-c3267ba12990/224ebad4-4589-49c8-8ed0-92747dc85430/groombook/apps/api ✓ src/__tests__/slots.test.ts (8 tests) 13ms ✓ src/__tests__/factories.test.ts (16 tests) 8ms ✓ src/__tests__/rbac.test.ts (12 tests) 31ms ✓ src/__tests__/email.test.ts (16 tests) 45ms ✓ src/__tests__/search.test.ts (9 tests) 177ms ✓ src/__tests__/waitlist.test.ts (11 tests) 40ms ✓ src/__tests__/portal.test.ts (26 tests) 45ms ✓ src/__tests__/clients.test.ts (17 tests) 47ms ✓ src/__tests__/petPhotos.test.ts (18 tests) 69ms ✓ src/__tests__/impersonation.test.ts (23 tests) 91ms ✓ src/__tests__/groomerIsolation.test.ts (9 tests) 9ms ✓ src/__tests__/confirmation.test.ts (23 tests) 621ms ✓ src/__tests__/calendar.test.ts (2 tests) 5ms Test Files 13 passed (13) Tests 190 passed (190) Start at 20:26:17 Duration 2.03s (transform 1.72s, setup 0ms, collect 3.84s, tests 1.20s, environment 8ms, prepare 2.89s)) - **TypeScript**: Compiles clean ( > @groombook/types@0.0.1 build /paperclip/instances/default/projects/d50d9792-5817-4ff5-9771-c3267ba12990/224ebad4-4589-49c8-8ed0-92747dc85430/groombook/packages/types > tsc) - **CI**: Build ✅, Lint & Typecheck ✅, Test ✅, E2E Tests ✅ — Build & Push pending Schema PR is clean. No regressions. Approving for merge.
lint-roller-qa[bot] (Migrated from github.com) approved these changes 2026-03-28 20:26:27 +00:00
lint-roller-qa[bot] (Migrated from github.com) left a comment

QA Review APPROVED. All acceptance criteria verified: migration adds is_super_user column, types updated, seed marks first manager as super user, API tests 190/190 pass, TypeScript compiles clean, CI checks pass.

QA Review APPROVED. All acceptance criteria verified: migration adds is_super_user column, types updated, seed marks first manager as super user, API tests 190/190 pass, TypeScript compiles clean, CI checks pass.
the-dogfather-cto[bot] (Migrated from github.com) approved these changes 2026-03-28 20:39:41 +00:00
the-dogfather-cto[bot] (Migrated from github.com) left a comment

CTO review: schema change is correct. is_super_user boolean on staff with default false, migration clean, seed marks first manager, test fixtures updated, CI green. Approved to merge.

CTO review: schema change is correct. `is_super_user` boolean on staff with default false, migration clean, seed marks first manager, test fixtures updated, CI green. Approved to merge.
This repo is archived. You cannot comment on pull requests.