Commit Graph
344 Commits
Author SHA1 Message Date
Sean OliverandJoshen Lim 4e9b718cf3 Fix table quickstart experiment multi-bucket exposure issue (#41423)
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2026-01-09 15:53:12 -08:00
Pamela Chia 2346baf51c chore(telemetry): standardize event naming conventions (#41786)
* docs(telemetry-constants): add naming conventions and review note

* refactor(telemetry): rename event interfaces to include Event suffix

* refactor(telemetry): rename branch merge success event to completed

* refactor(telemetry): rename cron job deleted event to removed

* refactor(telemetry): rename events to submitted/completed

* docs: add previous event names to telemetry comments
2026-01-08 17:11:48 +07:00
Sean Oliver f6cb934b36 fix(telemetry): decouple initial pageview from feature flag loading (#41748) 2026-01-07 08:51:25 -08:00
Sean Oliver 0b04a7b303 fix: set PostHog ui_host for toolbar auth (#41478) 2026-01-07 05:39:20 -08:00
Sean Oliver b49ad92db3 feat(telemetry): set gotrue_id as person property in frontend identify (#41750) 2026-01-06 16:38:30 -08:00
Saxon FletcherandAlaister Young 81098b2926 Event triggers (#41657)
* event triggers

* rename to event

* fixes

* fixes

* template

* use supabase roles instead

* useMemo array operations

* use blank as default

---------

Co-authored-by: Alaister Young <a@alaisteryoung.com>
2026-01-07 09:12:10 +10:00
kemal.earth 4c3b211076 feat(studio): add dashboard error events (#41431)
* feat: add telemetry event for dashboard error

* feat: add tracking event to alert error component

* fix: remove warning type

* feat: add error tracker for toasts too

* fix: remove message prop from event

* chore: remove unused dep in useeffect

* chore: further tidy up

* fix: useeffect separate component

* fix: use pams suggested verb
2026-01-06 13:54:11 +00:00
Sean Oliverandpamelachia 1077b50a5b fix(studio): convert tableCreateGeneratePolicies flag to multivariate for PostHog experimentation (#41706)
Co-authored-by: pamelachia <26612111+pamelachia@users.noreply.github.com>
2026-01-04 20:12:57 -08:00
supabase-supabase-autofixer[bot]andmatlin 7168162ed1 Changes by create-pull-request action (#41506)
[create-pull-request] automated change

Co-authored-by: matlin <7904733+matlin@users.noreply.github.com>
2025-12-31 22:04:19 +08:00
issuedat f9f1e40def feat(auth): make opt-in to improved search dismissible (#41558)
feat(auth): make opt-in to improved search dismissable
2025-12-29 15:17:00 +01:00
Cemal Kılıç 9450cdb7aa feat(auth): remove fetch with timeout (#41633) 2025-12-29 17:12:21 +07:00
0e2c31bf60 feat: Stripe Sync Engine integration (#41317)
* add initial installation flow of stripe sync engine

* update docs link

* Add supabase_vault extension dep

* Add stripe logo to sync engine integration

* Move overview content to bottom of integration pages

* Add sync state to stripe sync page

* only check sync state if stripe integration is installed

* Use proper stripe-sync package and setup flows

* Improve sync engine installation ux

* Remove unused hardcoded dep

* Add alpha status to stripe sync engine integration

* fix typo

* run format

* fix types

* Rename the stripe-sync path to remove the 'integration". The path needs to have BASE_PATH to work on prod.

* Design tidy up (#41337)

UI tidy up

* update to latest sync engine package

* Add stripe key verification

* Remove noop try/catch

* Add integration isntallation telelemtry

* Add basic settings page

* Address coderabbit comments

* remove unused dep

* Remove state setting on render

* s/description/comment

* Cleanup settings screen UI

* Improve settings screen design

* update schema test snapshot

* Use latest stripe-sync-engine package

* Update repo url to new official location

* revert marketing change

* Update stripe sync engine package

* Add link to table from overview page

* Add feature flag and improve telemetry

* Fix missing useMemo dep

* add uninstall telemetry note

---------

Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
Co-authored-by: Saxon Fletcher <saxonafletcher@gmail.com>
2025-12-20 00:42:10 +00:00
Sean Oliver de8e9f6b1b Fix first-touch referrer for initial $pageview (#41447) 2025-12-19 10:42:16 -08:00
Joshen LimandDanny White cbeb0912a2 Joshen/fe 2195 rework project api overview section with connect button (#41485)
* Update API keys panel

* Dnywh/chore/fe 2195 design pass (#41484)

* first pass

* fancy

* fixes

* text

* lang

* lang

---------

Co-authored-by: Danny White <3104761+dnywh@users.noreply.github.com>

* Clean up

* Clean

* Nit

* Update enabled features

---------

Co-authored-by: Danny White <3104761+dnywh@users.noreply.github.com>
2025-12-19 16:51:58 +08:00
Ali Waseem ec20b7e326 feature: add explain with AI in query performance (#41415)
* feature: add explain with AI in query performance

* updated comment

* updated to send message right away

* updated prompt

* added event tracking for button

* updated prompt

* updated to use track

* updated event name

* added flag for explain with AI

* updated to remove optional
2025-12-18 19:19:25 +00:00
Danny White 2fbb6cb9a7 chore(studio): clean up support form (#41424)
* admonition

* clean up

* clean up

* plan info improvements

* fix wonky text area

* improve form

* submit button

* success state

* hide callouts on success

* fixes

* fixes

* nit

* rabbit

* deprecate InformationBox in favour of Admonition

* fix tests

* fix

* rabbit

* rabbit

* rabbit

* lint

* US English
2025-12-18 00:16:06 +00:00
48b372d29b Feature/private link (#41094)
* privatelink integration

* mock queries

* add integration endpoints

* poll for updates on transition states

* prevent ui for multiple posts

* changes to copy for existing accounts

* update privatelink documentation

* hide privatelink for customer under Team plan

* added connected state tip

* linting fixes

* fixed issue due to merge

* Add cc feature flag

* Nit clean up

* Small revert

* Nudge UI a little

* Update react queries to fit new structure

* Fix

* Clean up

* nit

* revert padding

* Fix

* fix: tanstack changes

* added feature to pricing page

* Update apps/docs/content/guides/platform/privatelink.mdx

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* fix: dropdown copy change

* Update apps/docs/content/guides/platform/privatelink.mdx

Co-authored-by: Chris Chinchilla <chris.ward@supabase.io>

* Update apps/docs/content/guides/platform/privatelink.mdx

Co-authored-by: Chris Chinchilla <chris.ward@supabase.io>

* Smol clean up

---------

Co-authored-by: Saxon Fletcher <saxonafletcher@gmail.com>
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Chris Chinchilla <chris.ward@supabase.io>
2025-12-18 07:28:38 +13:00
Luca Forstner cf41629249 chore: Align profile endpoint usage with api schema corrections (#41430)
* chore: Align profile endpoint usage with api schema corrections

* Update schema and remove usage of unused type

* No unnecessary export
2025-12-17 21:06:08 +08:00
Katerina Skroumpelou cf17967a3a chore: update readme js sdk links (#41198) 2025-12-16 14:42:22 +02:00
Sean Oliver 71936a69da fix(telemetry): pass PostHog distinct_id in identify request (#41322) 2025-12-15 08:53:06 -08:00
kemal.earth 0bfa1de2ff chore(studio): update metrics api banner events (#41232)
* chore: update keys for metrics api banner

* fix: correct keys in banner
2025-12-15 09:31:34 +00:00
9f3af6e502 Generate policies experiment (#40881)
* policy generation

* add ai

* refactor

* table create performance

* policy list

* style

* simplify

* refactor

* flag

* tracking

* track

* ts

* fixes

* connection string

* re-add rls and realtime toggle

* restore old logic

* base path

* badge

* false rls

* copy

* add permissions button

* Refactor based on comments

* Fix TS

* More nudge

* Update tests

* Fix test

* Fixx

* Fix

* Address feedback

* Address issues

* Improve experiment telemetry for generate policies A/B test (#41172)

* Address code rabbit catch

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
Co-authored-by: Sean Oliver <882952+seanoliver@users.noreply.github.com>
2025-12-12 12:44:11 +08:00
Charis 16cdd025b7 Revert "fix(studio): delegate check for expired token to gotrue" (#41268)
Revert "fix(studio): delegate check for expired token to gotrue (#41010)"

This reverts commit 730decf561.
2025-12-11 09:38:46 -05:00
Joshen Lim 3d6be390a6 Save opened side bar in local storage, and init on new session (#41224)
* Save opened side bar in local storage, and init on new session

* Fix test

* Fix

* Nit
2025-12-11 12:18:18 +08:00
Ali Waseem 6d10a4ddad fix: useFlag to update initial check of flag store (#41209)
* fix flag lib

* updated uneeded logic

* updated logic

* remove line

* updated comment
2025-12-10 16:58:39 +00:00
kemal.earth 799ca0ebbf feat(studio): additional index advisor events (#41104)
* feat: add tracking for indexes tab in query performance

* chore: remove console log

* fix: dismiss index advisor banner when enabled
2025-12-08 10:00:43 +00:00
Pamela Chia 9f79037a8b feat(telemetry): add tracking for request upgrade modal (#41049) 2025-12-05 07:25:21 +00:00
kemal.earth ce48c64f68 feat(studio): generic observability banner (#40957)
* feat: more generic observability banner on db report

* feat: try popup in corner

* feat: tidy up and fix up event as well

* feat: add event for dismiss as well

* feat: add supplementary link at bottom of reports

* fix: sizing of fonts

* feat: banner stack approach

* fix: isIndexAdvisorAvailable dep

* chore: remove unused import for old banner

* feat: remove unused isDismissed

* chore: remove unused cn

* chore: change prio on query perf page

* chore: remove unused sendEvent

* chore: better useEffect cleanup

* chore: remove unused index advisor notice

* fix: priority of banner stack

* fix: first time loader flickering

* chore: lowercase the word Free

* feat: add IS_PLATFORM to make sure metrics api banner is scoped to platform

* chore: another copy update for observability link

* fix: telemetry keys to match styleguide

* fix: use the correct way to apply events

* feat: add events for index advisor banner too

* chore: delete unused old banner

* fix: dismiss buttons not working

* feat: add extra event to enable index advisor
2025-12-04 11:42:31 +00:00
Stojan DimitrovskiandJoshen Lim 6a45bb35ca feat: auth advanced page renamed to performance, support for percent db connections (#39852)
* feat: auth advanced page renamed to performance, support for percent db connections

* rename page and form

* make it compile

* fix types?

* one more update

* use master types

* restore from source

* fix prettier

* fix compilation

* minor adjustments

* wording

* change pro plan check

* fix prettier

* nit fixes

* Update next config

* update copy + align upgrade to pro language

* Update

* Clean up

* Nit improve loading time

* Update docs

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2025-12-04 11:35:14 +08:00
Charis 730decf561 fix(studio): delegate check for expired token to gotrue (#41010)
Gotrue already does the work of using the cached token if
possible/refreshing if about to expire (and uses a different expiry
period from what we have -- 90 seconds vs. 30 seconds). We can delegate
this work to Gotrue to avoid the expiry check mismatch
2025-12-03 08:12:16 -05:00
Joshen Lim bcb39c4bc5 Add config cat custom attribute is_staff (#40865)
* Add config cat custom attribute is_staff

* Update based on feedback
2025-12-02 19:44:58 +08:00
Joshen Lim 5cddb432ba Clean up security notifications feature flag (#40860) 2025-12-02 13:47:18 +08:00
kemal.earthandAli Waseem 511b6faada feat(studio): surface index advisor indicators (#40788)
* feat: change the check to show index advisor tab at all times

* fix: hide add to log drains on export menu in query perf

* fix: small fallback for pathname check

* fix: query perf header block responsiveness

* feat: admonition for index advisor

* fix: add aria-describedby to query perf sheet

* feat: proper way to do sheet description

* chore: better title spacing in panel

* fix: indexes in use empty state

* fix: key in observability menu

* feat: better highlighting of index advisor issues

* feat: add docs button to empty indexes tab

* feat: remove unused code

* feat: use button tooltips for reset and refresh to gain space

* feat: add dismiss to index advisor banner

* feat: add warnings filter to query perf

* feat: filter all queries for warnings

* fix: selected state for warning rows

* fix: fallback for isLogs check

* fix: other instance of download button

---------

Co-authored-by: Ali Waseem <waseema393@gmail.com>
2025-11-27 08:20:07 -07:00
Joshen Lim b374628216 Chore/small fix vectors (#40693)
* Flip vectors enabled features to true

* Fix enabled logic
2025-11-22 02:19:04 +08:00
Ali WaseemandPamela Chia 25dc1efb9f Analytics: Update tracking for Advisor (#40629)
* remove resolved events

* Remove advisor_resolved event tracking

* updated linting

* updated events to be cleaner

* refactored types

* refactor(telemetry): rename advisor click telemetry to assistant button click

---------

Co-authored-by: Pamela Chia <pamelachiamayyee@gmail.com>
2025-11-21 08:53:06 -07:00
Ali Waseem be4a6fe6c1 Update: Banner for maintenance window (#40668)
* updated to use notice banner

* added link to maintenance

* updated banner

* updated message from support
2025-11-21 10:38:57 -05:00
2209d72990 Update UI to de-couple ETL replication context from Analytics Buckets (#40645)
* Update UI to de-couple ETL replication context from Analytics Buckets

* Nit

* Nit

* nit

* Address all feedback

* Address feedback

* Add enabled feature check for analytics and vector buckets

* FIXX

* Update apps/studio/components/interfaces/Storage/AnalyticsBuckets/AnalyticsBucketDetails/NamespaceWithTables/TableRowComponent.tsx

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>

---------

Co-authored-by: Alaister Young <alaister@users.noreply.github.com>
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>
2025-11-21 16:28:31 +08:00
Pamela Chia 076a2529eb feat(connect): add telemetry tracking and command menu actions (#40611) 2025-11-20 11:25:13 +08:00
Francesco SansalvadoreandAli Waseem 1cda6aaa10 param routing: integrations vault and cron (#40527)
* add useQueryStateWithSelect to Vault

* add useQueryStateWithSelect to Cron jobs

---------

Co-authored-by: Ali Waseem <waseema393@gmail.com>
2025-11-19 08:36:03 -07:00
Joshen LimandAlaister Young 9efe2643e3 Joshen/fe 2141 swap organization settings page to use paginated projects (#40513)
* Use version 2 organization roles endpoint and fix all affected files + unit tests

* Update API codegen

* Replace all usage of old useProjectsQuery with useOrgProjectsInfiniteQuery

* Swap access callout for project roles to use collapsible instead

* Deprecate useProjectsQuery and clean up

* Update apps/studio/components/interfaces/Organization/TeamSettings/UpdateRolesPanel/UpdateRolesPanel.tsx

Co-authored-by: Alaister Young <alaister@users.noreply.github.com>

---------

Co-authored-by: Alaister Young <alaister@users.noreply.github.com>
2025-11-18 13:26:09 +08:00
Sean Oliver cc33c26743 Add realtime button A/B test with three variants (GROWTH-524) (#39748) 2025-11-17 00:53:06 +08:00
Danny WhiteandJoshen Lim a4928ef049 chore(studio): security notification emails announcements (#40366)
* announcement

* fix link

* Minor clean up

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2025-11-12 13:28:42 +11:00
Sean OliverandIvan Vasilov 026360680c Fix templateTitle telemetry for production command format (#40321)
* Fix templateTitle telemetry for production command format

Consolidated regex parsing to handle both URL format (/ui/r/name.json)
and shadcn registry alias format (@supabase/name) in a single pass.

The regex extracts title and framework atomically, properly handling
version specifiers like @latest through greedy backtracking.

* Handle vue and nuxtjs in the supabase clients.

* Fix the types.

---------

Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
2025-11-11 17:42:51 +08:00
Tyler 654a4b1b7a docs: Make it clearer that getting your app approved by Google is all you need to make your Google auth consent screen look better (#40238)
docs: Make it more clear that getting your app approved by Google is enough to make the login screen look better
2025-11-07 20:16:38 +09:00
Alaister Young 4abe188ec6 [FE-2099] chore(docs): top nav homepage link toggleable for nimbus (#40235)
* chore(docs): top nav homepage link toggleable for nimbus

* reenable dropdown link by default
2025-11-07 15:54:31 +08:00
Sean Oliver 99835713d2 fix: enable App Router page view tracking on navigation (#40225)
Fixes bug where App Router pages (docs, www/blog) only tracked the
initial page load but not subsequent navigations.

The issue was introduced in PR #35384 which inverted the logic for
App Router telemetry tracking. The condition used a boolean flag
that prevented tracking after the initial page view.

The root cause: useEffect with [appPathname] dependency fires both
on initial mount AND on pathname changes. The flag-based approach
couldn't differentiate between these two cases.

Solution: Track the previous pathname to detect actual changes.
- Initial mount: previousAppPathnameRef is null, skip (initial effect handles it)
- Navigation: previousAppPathnameRef !== appPathname, send telemetry

Before: Only first page view tracked
After: All page navigations tracked (like Pages Router)

Affects: docs app, www app (blog pages)
2025-11-06 20:30:43 -08:00
50255605ec Moves inline editor from feature preview to setting (#39892)
* sidebar-manager

* storage keys

* tests

* more ai spots

* test fix

* revert to default

* remove ref

* Update apps/studio/state/sidebar-manager-state.tsx

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update apps/studio/components/ui/AIAssistantPanel/AIAssistant.tsx

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix ts

* fix

* fux

* fux query param

* clean

* fix

* more

* mock local storage

* simplify

* remove provider test

* remve useopensidebar

* fix(new homepage): open ai assistant on advisor card button clicks

* Update apps/studio/components/layouts/ProjectLayout/LayoutSidebar/index.tsx

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>

* Update apps/studio/state/sidebar-manager-state.tsx

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>

* refine

* editor sidebar manager

* reset results

* move inline editor to account setting

* update analytics to standard

* copy

* add tracking

* update copy

* fixes

* Update apps/studio/pages/project/[ref]/database/functions.tsx

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update apps/studio/pages/project/[ref]/auth/policies.tsx

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* zod resolver

* Nit refacotr

* Small fixes

* missed two pieces

* change event

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Charis Lam <26616127+charislam@users.noreply.github.com>
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2025-11-07 03:04:37 +00:00
Sean Oliver 364f743054 Fix PostHog user identification persisting after signout (#40158)
- Add reset() method to PostHogClient class to clear user identification
- Call posthogClient.reset() before clearLocalStorage() in signout flow
- Include proper error handling and memory leak prevention
- Clear all pending state (identification, groups, events)

Resolves GROWTH-535
2025-11-06 15:51:56 -08:00
kemal.earth f2ee1e0c24 feat(studio): add log drain events to posthog (#40182)
* feat: add log drain save event posthog

* chore: rename type to destination on event

* chore: remove unused object

* feat: add confirmed event as well

* chore: update naming conventions for events

* fix: buttons track updated
2025-11-06 17:31:19 +00:00
Chris Chinchilla d158e7142a docs: Allow for customisable CLI profiles in ref docs (#40181)
* Allow for customisable CLI profiles in ref docs

* Prettier

* Type fix

* Prettier

* Changes from review

* Set default config

* Handle empty values
2025-11-06 08:51:15 +01:00