fix: backfill memberships, handle booking create errors

- Migration 00012: populate tenant_memberships from tenant_users join
  users, not only the seeded demo owner (Codex P1)
- bookings-page: check response.error so 4xx failures do not close the
  modal silently; refetch dashboard summary after create (Codex P2)

Authored By: TDvorak <[email protected]>

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This commit is contained in:
Tomas DvorakandDevin committed 2026-09-17 20:33:53 +02:00
1 parent f2f7439050
commit 50c8440a06
3 files changed
+12 -7

No files matched your search

@@ -30,12 +30,13 @@ WHERE manage_token IS NULL;
ALTER TABLE locations
ADD COLUMN IF NOT EXISTS updated_at timestamptz NOT NULL DEFAULT now();
-- Demo tenant membership so demo-owner resolves to Studio Atelier.
-- Backfill memberships for every existing user linked via tenant_users.
-- Covers the seeded demo owner (users.neon_subject = 'demo-owner').
INSERT INTO tenant_memberships (tenant_id, user_neon_subject, role)
SELECT t.id, u.neon_subject, 'owner'
FROM tenants t
JOIN users u ON u.neon_subject = 'demo-owner'
WHERE t.slug = 'studio-atelier'
SELECT tu.tenant_id, u.neon_subject, tu.role
FROM tenant_users tu
JOIN users u ON u.id = tu.user_id
WHERE u.neon_subject IS NOT NULL
ON CONFLICT (tenant_id, user_neon_subject) DO NOTHING;
-- +goose Down