Commit Graph
4 Commits
Author SHA1 Message Date
Ikki Nishihara cba8bc0b30 fix(studio): clarify system role grouping and deletion actions (#51526)
## Problem

The Database Roles page groups `postgres` and the reserved
`supabase_privileged_role` alongside custom roles, while labeling the
other section as "Roles managed by Supabase." The `postgres` actions
menu also offers an enabled Delete action.

Fixes #51525.

## Solution

- Rename the sections to "Supabase service roles" and "Project database
roles," and explain that the latter includes the `postgres`
administrator and custom roles.
- Include `supabase_privileged_role` among the protected service roles.
- Disable Delete for the existing `SYSTEM_ROLES` list, using
`DropdownMenuItemTooltip` to explain the restriction. Keep the
`postgres` permission editor available.
- Add component regressions for grouping, system-role menus, permission
editing, and custom-role deletion confirmation.

## Validation

- Studio unit suite: 732 files passed; 8,343 tests passed and one
expected failure.
- `pnpm --filter studio typecheck` passed.
- `SKIP_ASSET_UPLOAD=1 pnpm build --filter=studio` passed.
- ESLint for changed files, the Studio lint ratchet, monorepo Prettier,
and Studio knip passed.
- Playwright smoke verification of the production Studio build with
synthetic API responses: grouping, disabled Delete and tooltip, keyboard
interaction, permission editing/cancellation, read-only service roles,
search, and custom-role deletion confirmation/cancellation.

## Review instructions

1. Open Database → Roles. Check the two section names and the
administrator description. If present, `supabase_privileged_role`
belongs to the protected service section.
2. Open the `postgres` actions menu. Delete is disabled, and hovering it
explains why.
3. Expand `postgres`. Its existing editable permission switches remain
enabled for a user who can edit roles.
4. Open a custom role's actions menu. Delete still opens the
confirmation dialog; cancel the dialog.
5. Run `pnpm --filter studio exec vitest run
tests/components/Database/Roles.test.tsx`.

## Checklist

- [x] I have read
[CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md)
- [ ] If I wrote a new docs topic or edited an existing topic, I used
the `/write-the-docs` or `/edit-the-docs` skill, which applies the docs
[style
guide](https://github.com/supabase/supabase/tree/master/apps/docs/style-guide)
— not applicable; this changes Studio UI and tests.
2026-10-14 13:57:01 -04:00
Danny White 2c8cc7ec8a feat(studio): relocate read replica modules under Infrastructure (#49043)
## What kind of change does this PR introduce?

Feature. Stack 1 of 5 for
[PIPE-1007](https://linear.app/supabase/issue/PIPE-1007/move-read-replicas-out-of-replication-into-infrastructure).

## What is the current behavior?

Read replica UI lives under Database / Replication.

## What is the new behavior?

Moves replica form, row, and modals into Settings/Infrastructure and
extracts `REPLICA_STATUS` plus path helpers. URLs and user-facing
behaviour are unchanged.

## Additional context

Keep `infrastructure:read_replicas` off in prod until the full stack
lands.

Stack: this PR →
[#49044](https://github.com/supabase/supabase/pull/49044) →
[#49045](https://github.com/supabase/supabase/pull/49045) →
[#49046](https://github.com/supabase/supabase/pull/49046) →
[#48921](https://github.com/supabase/supabase/pull/48921)

## To test

Open [Database /
Replication](https://studio-staging-git-danny-pipe-1007-01-relocate-701014-supabase.vercel.app/dashboard/project/_/database/replication?destinationType=Read+Replica).
Confirm add replica still works as today. No new Infrastructure section
yet.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Added navigation for viewing a specific read replica and starting the
add-replica setup flow.
- Improved read-replica setup validation, including unsupported regions
and invalid PostgreSQL versions.

- **Bug Fixes**
  - Corrected default region and success messaging behavior.
- Prevented incomplete pricing labels and clarified eligibility
warnings.
  - Improved display handling for localized pricing values.

- **Tests**
- Added coverage for read-replica navigation paths and fallback
behavior.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-08-14 15:21:24 +10:00
Charis 205cbe7d26 chore(studio}: enforce import order, remove bare import specifiers (#44585) 2026-04-07 20:34:10 -04:00
Giuseppe Mandato 2335906d08 feat(read-replicas): bump up max read replicas for small instances (#44027)
INDATA-193
BACKEND: <https://github.com/supabase/platform/pull/30575>

<img width="1199" height="1005" alt="Screenshot 2026-04-03 at 11 54 29"
src="https://github.com/user-attachments/assets/38e9d676-449f-45c0-9e07-f273312a812f"
/>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Refactor**
* Consolidated read replica limit configuration to provide more
consistent behavior across different compute tiers.

* **Tests**
* Added comprehensive test coverage for read replica eligibility checks
and replica limit calculations based on compute tier.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-04-03 13:04:49 +00:00