Commit Graph

167 Commits

Author SHA1 Message Date
Ivan Vasilov
1cd1ebfc7f chire: Sort imports in all packages, cms, design-system and ui-library apps (#41610)
Sorted all imports in all packages, `cms`, `design-system` and
`ui-library` apps by running `pnpm format` on them.

All changes in this PR are done by the script.
2026-02-05 13:54:10 +01:00
Ivan Vasilov
3a391d4f6b fix: Fix the sorting of imports (#42419)
This PR switches the sort imports plugin to
@ianvs/prettier-plugin-sort-imports which is more reliable and merges
imports from the same file (the old one reported them as error).

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

* **Chores**
* Updated import-sorting tooling and related configuration to improve
consistency of import ordering and formatting across the codebase,
simplifying rules and adjusting behavior for private/internal paths to
produce more predictable diffs and clearer code style in development.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-02-03 19:09:16 +00:00
Ivan Vasilov
07b9702be3 chore: Add prettier plugin for sorting imports (#41608)
* Add prettier plugin for sorting imports.

* Migrate the prettier config to a js file. Make the sort imports conditional which will work only in code editors.

* Remove unneeded commands for running prettier.

* Fix the regex to be more specific.

* Another fix for the import regex.
2026-01-27 10:55:59 +01:00
Ivan Vasilov
cdadd74c9b feat: Add GH workflow for authorizing Vercel deploys (#41717)
* Add a script and call it from a GH action.

* Minor updates.

* Minor fixes.
2026-01-08 12:11:05 +01:00
Matt Rossman
072883bcec feat: assistant evals (#41311)
* chore: bump `supabase` CLI

* chore: stricter message types in `generate-v4.ts`

* feat: tutorial eval

https://www.braintrust.dev/docs/evaluation

* feat: project ID for eval

* refactor: `generateAssistantResponse` out of `handlePost`

* refactor: generateAssistantResponse to lib/ai

* feat: factuality eval with assistant response

* chore: upgrade braintrust to v1.0.1

* chore: silence tsconfig warning

* feat: assertion scorer

* fix: aggregate tools across all steps

* refactor: strict tool names, remove need for `as const`

* refactor: generic tool name type in assertions

* feat: transfer mocks from `feature/braintrust`

* feat: LLM criteria assertion

* feat: braintrust evals workflow

* fix: BRAINTRUST_PROJECT_ID

* feat: `sql_similar` assertion

* fix: `OPENAI_API_KEY` in workflow env

* feat: split AssertionScorer into separate scorers

* feat: remove tutorial eval

* feat: 20 minute CI timeout

* feat: category in test case metadata

* feat: score with gpt-5

* refactor: dataset to own file, colocate scorers

* feat: "gpt-5.2-2025-12-11" for llm as a judge

* feat: SQL syntax scorer with `libpg-query`

* feat: `evals:setup` and `evals:run` scripts

* feat: `evals:setup` in CI

* feat: human readable scorer names

* chore: rename to "SQL Validity"

* feat: add 2 "sql_generation" test cases

* feat: update requiredTools in test cases

* chore: ignore Cursor MCP config

* feat: "Conciseness" score

* feat: "Completeness" scorer

* fix: generate-v4 test mocks

* feat: serialize "steps" for scorer inputs

* updated node mem options for typecheck

* updated runner

* remove ram update as actions handle this

* feat: read `BRAINTRUST_PROJECT_ID` from secrets

* feat: score helpfulness, remove old scorers

* feat: separate `evals:run` and `evals:upload` scripts

* feat: passthrough entire classifier result

* feat: use live `search_docs` impl, store docs result in metadata

* feat: reduce classifier options

* feat: filter workflow by `run-evals` PR label or `master` branch

* chore: cleanup stubbed mock tools

* fix: checkout actual branch with `ref:`

* fix: capture search_docs results from all content parts

* feat: simplify sql syntax score calculation

* feat: use AI SDK's UI message validator

* docs: justification for relative `extends`

* fix: cleanup leftover validatedMessages

* doc: note mock token isn't secret for snyk

* fix: mock ui message to pass validation

* feat: revert ignoring Cursor MCP config

Using `.git/info/exclude` instead until we have an opinion on this

* feat: add "tsconfig" as shared-data devDependency, revert relative path in tsconfig

* refactor: tool call parsing into function

* Update apps/studio/evals/assistant.eval.ts

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

* refactor: organize mock schemas and tool factories

---------

Co-authored-by: Ali Waseem <waseema393@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-12-22 23:45:48 -05:00
Ivan Vasilov
581ae07120 fix: Hide favourites and share snippets on self-hosted variant (#41227)
* Hide favorite and share actions for self-hosted version.

* Rename the query on save only on platform.

* Simplify useCheckOpenAiKeyQuery.

* Rename with AI now depends if the OPENAI_API_KEY is set.

* Minor fixes.

* Fix the tests to use .skip for skipping tests. Remove extra port params.

* Make the test for favourites work only on platform variant.
2025-12-10 10:12:15 -07:00
Ali Waseem
22cfd2be14 feat: Run E2E tests aganist Platform Pt.1 (#41032)
* added packages for creating projects

* updated scripts

* remove ami version

* cleaned up common

* updated tests

* refactored helpers

* updated env

* updated config

* updated to reference env

* updated global setup

* updated type logic and scripts

* added mocking of hcaptcha

* added log statements

* updated local env

* update env file

* updated env vars

* updated logging

* updated to remove check

* updated print and project names

* updated helpers

* updated url

* updated setup

* updated storage helpers to account for listing files

* updated setup and tests

* updated timeout only for setup

* updated helper to account for different api response

* added ignores for tests

* updated lock file

* updated database spec to add exact

* updated timeouts

* removed check for table grid footer

* updated test runner

* updated is_platform

* updated playwright config

* updated worker settings

* removed dotenvx

* updated README

* updated to remove comment

* Update e2e/studio/scripts/common/retriedFetch.ts

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

---------

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>
2025-12-05 10:50:16 -07:00
Ivan Vasilov
91eec58295 chore: Bump next versions to fix a vulnerability (#41030)
* Remove duplicate @next/env.

* Bump the version for pnpm.

* Bump Nextjs versions to the non-vulnerable ones.
2025-12-03 22:57:10 +01:00
Ivan Vasilov
38ecb59c44 chore: Bump vulnerable deps (#40675)
* Bump @nuxt/devtools.

* Bump tar.

* Bump js-yaml.

* Bump ai.

* Bump js-yaml@3.

* Deduplicate nitropack.

* Deduplicate @aws libs.
2025-11-27 16:50:17 +00:00
Ali Waseem
e23175f00b Feat: E2E tests for AI assistant and log drains (#40844)
* updated commands and expose ai key locally

* added tests for AI assistant

* added OPEN_API_KEY for e2e test suite

* updated log drain options

* updated README
2025-11-27 15:27:50 +00:00
Ivan Vasilov
2e360093d1 chore: Fix failing Vercel builds (#40612)
Try to fix it by adding tailwind in the root workspace.
2025-11-19 12:35:26 +01:00
Zach Gorton
9bf15f9675 fix(mcp): postgres-meta parameters binding for list_tables (#40499)
* add params to executeQuery

* revert env change

* chore: upgrade "supabase" to v2.58.5

---------

Co-authored-by: Matt Rossman <22670878+mattrossman@users.noreply.github.com>
Co-authored-by: Ali Waseem <waseema393@gmail.com>
2025-11-18 16:01:03 +00:00
Ali Waseem
7898abe06c Fix: Make self hosted tests more reliable locally and in CI (#40479)
* added ui studio command

* added SKIP ASSET UPLOAD option

* updated failing tests

* updated e2e scripts to include CI instructions

* removed unused envs and slack messages

* updated timeouts and max retries on CI

* updated generated local env

* updated env

* updated env generation for e2e tests

* remove vercel preview

* updated tests and trying junit report on PR

* update test comment

* updated commit hash for reporter

* updated file path

* updated runner to blacksmith

* update test file for reporting

* Update .github/workflows/studio-e2e-test.yml

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

* Update package.json

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

* Update e2e/studio/playwright.config.ts

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

* updated to skip comment on forks

---------

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>
2025-11-17 15:00:31 -07:00
Ali Waseem
c76723c909 Fix: Update e2e command to run webserver rather than asking devs to manaully start it (#40398)
* removed e2e scripts that are not being used

* updated tests to use local configs

* updated README test

* updated to only run web server locally
2025-11-14 07:30:45 -07:00
Matt Rossman
9f5620c7cd feat: self-hosted MCP debugging tools (#39366)
* feat: stub `getDebuggingOperations`

* fix: logflare variables in `generateLocalEnv.js`

* chore: upgrade `supabase`, `@supabase/mcp-server-supabase`

* feat: shared `retrieveAnalyticsData`, implement `getLogs` for MCP

* feat: shared `getLints`, implement MCP security/performance advisors with filter

* chore: update lockfile

* fix: prefer `??`

Co-authored-by: Greg Richardson <greg.nmr@gmail.com>

* docs: comment origin of `LINT_SQL`

Co-authored-by: Greg Richardson <greg.nmr@gmail.com>

* chore: bump `supabase` devDependency for latest images

Changes rely on fix from loglare v1.23.0

* fix: edge function logs query

Based on https://github.com/supabase/supabase/pull/39388/files#diff-b4e9726d34a406fa1a6133a18bdb972c90be9df0c89598de0695592514e22941R199-R206

---------

Co-authored-by: Greg Richardson <greg.nmr@gmail.com>
2025-10-20 13:11:15 -04:00
Ivan Vasilov
56d40fe0b2 chore: Migrate eslint for all apps to use flat config (#39486)
* Use the "eslint" command instead of built-in next lint since it's getting obsolete.

* Bump all deps to support eslint 9+.

* Convert the rules in eslint-config-supabase to be flat-config compatible.

* Migrate all apps to use the new eslint config rules.

* Fix all errors found in the new setup.

* Fix the no default exports ignores.

* Scan all files for linting in studio.

* Fix all lint errors.

* Make the reportUnusedDisableDirectives a warning.
2025-10-15 16:35:24 +02:00
Ivan Vasilov
433e5788a9 fix: Add temp API keys to selfhosted (#39356)
* Deduplicate @babel/core.

* Remove explicit dependency of import-in-the-middle (it's imported in sentry deps).

* Add an API route for api-keys/temporary.

* Refresh the token if on self-hosted.

* Readd import-in-the-middle.

* Bump supabase to 2.50.3 which contains fixes for storage upload.
2025-10-09 09:27:13 +02:00
Ivan Vasilov
98a3f0e340 chore: Bump vulnerable dependencies (#39002)
* Bump axios.

* Bump sharp in cms to avoid vuln dep tar-fs.

* Bump vite.

* Dedupe es-abstract.

* Revert the minimumReleaseAge.
2025-10-06 17:56:00 +02:00
Ivan Vasilov
a3597cd59d feat: pnpm i will only run postbuild scripts for approved dependencies (#39018)
* Move the overrides to pnpm-workspace.yml.

* Only allow building for supabase CLI. All other deps will ignore their postbuild scripts.

* Run approve-builds and approve only supabase CLI.
2025-10-03 12:37:12 +02:00
Ivan Vasilov
051d31ef07 chore: Bump Typescript to 5.9 (#38945)
* Move typescript version definition to pnpm-workspace.

* Bump typescript to 5.9.

* Minor fixes to satisfy the compiler.

---------

Co-authored-by: Raúl Barroso <code@raulb.dev>
2025-09-23 16:50:54 +02:00
Charis
a46c31f551 chore: set min release age for pnpm (#38787)
* chore: bump pnpm version to 10.16.1

* chore: set min release age for pnpm

* chore: bump pnpm to 10.16.1 in dockerfile
2025-09-17 10:34:33 -04:00
Ivan Vasilov
f6d9eee3aa chore: Bump vulnerable dependencies (#38352)
* Bump nextjs.

* Override tmp dependency.

* Dedupe es-abstract.

---------

Co-authored-by: Alaister Young <a@alaisteryoung.com>
2025-09-10 20:36:47 +08:00
Oleg Polin
4b2705f0ba fix(docs): update SvelteKit tutorial to use Svelte 5 syntax (#31229)
* docs: Update SvelteKit auth tutorial project creation syntax (#31114)

* docs: Update link to SvelteKit docs (#31114)

* Update +layout.svelte to Svelte 5 syntax (#31114)

* Update +page.svelte to use Svelte 5 syntax (#31114)

* Update account +page.svelte to use Svelte 5 syntax (#31114)

* Update account Avatar.svelte to use Svelte 5 syntax (#31114)

* Update SvelteKit example to Svelte 5 syntax (#31114)

* docs: Update npm dependencies (#31114)

* Start review

* Finish review

* Update code for SvelteKit 5

* Convert to codesamples

---------

Co-authored-by: Chris Chinchilla <chris@chrischinchilla.com>
Co-authored-by: Chris Chinchilla <chris.ward@supabase.io>
2025-08-12 16:38:06 +02:00
Francesco Sansalvadore
7e91d7c4a3 fix cms types and build (#36145)
* fix cms types and build

---------

Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
2025-08-11 17:44:38 +02:00
Ivan Vasilov
37c4726145 chore: Bump vulnerable deps (#37244)
* Bump brace-expansion.

* Bump next to non-vuln version.

* Remove old version of @vercel/flags.

* Try to bump prismjs again.

* Bump fastify.

* Dedupe graphql.

* Bump form-data.
2025-07-25 09:11:26 +02:00
Stojan Dimitrovski
d6b4ab1a60 feat: bump auth-js to v2.71.0-rc.7 (#36978)
* feat: bump auth-js to v2.71.0-rc.7

* Use the version specified in the catalog.

* bump to rc.8

---------

Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
2025-07-14 09:05:05 +02:00
Beng Eu
6504a8460f chore: enable prettier cache, speeds up subsequent runs ~6.5x (#37005) 2025-07-10 20:32:12 +08:00
Ivan Vasilov
7322007083 chore: Bump nodejs to v22 (#34730)
* Bump the @types/node to 22.

* Bump the version in nvmrc.

* Bump the node version in package.json.
2025-06-17 11:08:46 +02:00
Ivan Vasilov
64d3d1fb7f chore: Bump vulnerable dependencies (#36272)
* Bump vite version.

* Rename and bump the vercel/flags dependency.

* Bump all versions of esbuild to one.

* Bump image-size.

* Bump fastify.

* Bump prismjs.
2025-06-11 10:24:40 +02:00
Joshen Lim
66ad6153e0 Reinstate pnpm command for running studio in non hosted mode (#36309) 2025-06-10 23:45:41 +08:00
Francesco Sansalvadore
69ce2d8004 update www content (#36191)
change positioning
2025-06-10 12:40:55 +02:00
Stojan Dimitrovski
b65b6c6073 fix: bump auth-js to 2.71.0-rc.4 (#36229)
fix: bump auth-js to 2.70.0-rc.4
2025-06-09 12:15:19 +02:00
Cemal Kılıç
450803a2a8 feat: bump auth-js to 2.71.0-rc.2 (#36170)
* feat: experimental testing for split auth storage

* fix: rm config changes
2025-06-04 15:34:04 +02:00
Jordi Enric
55c3fdb49a E2E Testing Setup Consolidation (#35080)
* add new e2e folder

* add local supabase and confitional storage

* fix e2e selfhosted

* update actions

* add correct e2e folder

* fix e2e actions

* fix action project ids

* fix permissions

* fix script

* fix playwright install

* playwright root

* pnpm i

* fix api rul

* add env docs

* update run script

* only install deps for e2e

* use same dep

* only install deps for tests

* upd lockfile

* use official vercel integration

* use vercel cli

* remove old folder

* fix script

* rm filter

* rename e2e studio package

* fix install browsers

* add polling for vercel build

* use vercel-preview-url package

* undo actions

* rename ci env to ci

* chore:add rls check and make playwright test less flakey (#35348)

* update ci action

* fix paths

* fix browser install

* run ci against staging

* try caching builds

* fix envs

* fix env check

* fix sign in

* fix sign in url

* fix envs and url

* fix caching

* fix race condition in sign in page

* fix race condition in sign in page

* add check to see if being redirected

* fix caching, check IS_PLATFORM var

* log is_platform

* try vercel build

* fix vercel project id

* fix path

* add temp vercel.json file

* fix paths

* undo project id stuff

* rm cwd

* fix path

* fix paths again

* fix path

* fix base url

* try different fix

* fix config base url

* fix base studio url issues

* retain video on fails

* Update e2e/studio/README.md

Co-authored-by: Copple <10214025+kiwicopple@users.noreply.github.com>

* Update e2e/studio/README.md

Co-authored-by: Copple <10214025+kiwicopple@users.noreply.github.com>

* fix env file naming

* undo caching

* rm old tests folder

* fix readme scripts

* rm vercel deploy for now, just run build locally

* fix url

* fix build script

* fix is_platform

* fix stuck studio start

* fix env vars

* retain network and logs on fail for better debugging

* add apiurl env

* back to vercel

* disable catpcha

* fix test

* update environment configuration to remove default URLs for CI and streamline API base URL handling

* fix typeerr

* fix urls in home.spec

* fix urls in logs.spec

* fix urls in sqleditor spec

* fix table editor spec

* add tourl util

* use staging api in ci

* re add base url env var

* fix url in projects page

* fix url in sql editor spec

* fix sign in not waiting for cookies omfg

* fix env var name

* fix sql-editor test

* simplify table removal

* add opt out telemetry step

* fix logs tests

* fix table editor spec

* remove flaky steps from table editor tests

* use vercel deployment events instead of build

* add studio check

* fix condition

* debug event

* rm if

* trigger deploy

* undo ac

* make opt out button step optional, some envs dont hav eit

* use testid for sql run button

* use id instaed of timestamp in logs tests

* empty

* rm retries

* up glbal timeout

* chore: fix failing sql-editor playwright test (#35767)

* chore: fix failing sql-editor playwright test

* chore: minor fixes

* Chore/update playwright config (#35826)

chore: update playwright config

* rm supabase project from e2e tests

* refactor and simplify environments

* fix sql editor test

* fix ci env vars

* fix

* fix on windows

* update readme

* add playwright install script to readme

* rm turbopack trace flag

* npm to pnpm for scripts

* delete ivan lines

---------

Co-authored-by: Michael Ong <minghao_3728@hotmail.com>
Co-authored-by: Copple <10214025+kiwicopple@users.noreply.github.com>
2025-06-03 17:37:39 +02:00
Francesco Sansalvadore
f7d90bbc30 feat: new cms app (#35999)
* add cms turbo app

* add cms scripts to package.json

* update README

* update README

* update files

* fix formatting

* fix populateAuthors

* sync dependencies

* update launch week field

* update lint config

* Coordinate the deps to be the same as the other apps.

* Remove extra files.

* Run prettier on the CMS files.

* Add commands for cleaning and typechecking.

* Fix weird version of @types/react in docs.

* run pnpm install

* fix pnpm-lock

* fix cms lint

---------

Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
2025-06-03 14:26:43 +03:00
Charis
50a40f3f64 fix(local dev): download aws secrets manager (#35410)
* fix(local dev): download aws secrets manager

## Before

Local dev secret pull was failing because the AWS secrets SDK was not
available.

## After

SDK added as dev dependency in root.

* Remove the aws-sdk from the apps since it's present in the root package.json.

---------

Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
2025-05-05 15:38:25 +00:00
Ivan Vasilov
1d2418ee85 chore: Skip building of libpg-query (#35255)
* Don't build libpg-query package.

* Use the WASM build of libpg-query in ai-commands.

* Fix missing mdast type.

* fix: wasm loading in ai-commands tests

* fix: better polyfill

* Make the sql-to-rest page to be client-side only.

---------

Co-authored-by: Greg Richardson <greg.nmr@gmail.com>
2025-04-24 22:26:19 +02:00
Ivan Vasilov
d39671f1c9 feat: Add scanning for dead code with knip (#35072)
* Add knip as dev dependency.

* Add config and script for knip.

* Add additional ignores to the file list.

* Remove knip as a dependency, download and run it :).
2025-04-16 17:07:35 +02:00
Ivan Vasilov
326c7535f6 chore: Bump vulnerable deps. (#34395)
* Bump all testing libs to force babel to upgrade itself.

* Remove react-hooks package, it's included in @testing-library/react.

* Add await to all useEvent calls.

* Remove duplicate babel/helpers.

* Deduplicate babel/core.

* Bump vite to non-vuln version.

* Bump estree-util-value-to-estree.
2025-04-16 10:02:06 +02:00
Ivan Vasilov
6d077a3e28 chore: Bump vite and vitest (#34664)
* Set overrides for vite/esbuild packages, they're not used in production, low risk of something breaking.

* Bump vitest.

* Remove lodash.template from design-system.

* Forgot to run pnpm.
2025-04-03 12:43:28 +02:00
Kang Ming
f2216ae050 chore: bump auth-js override in studio (#34376) 2025-03-24 06:47:46 -07:00
Francesco Sansalvadore
d24df14aab Feat/toc component (#33964)
* test fuma toc

* make toc work

* ok toc

* ui-patterns toc

* fix types

* cleanup

* fix overflow issues

* cleanup

* fix loading w

* Update apps/docs/components/GuidesTableOfContents.tsx

* fix prettier

* format

* install deps

* target ES2018

* tweak regex

* update docs test snapshots

* fix useSubscribeTocRerender
2025-03-05 23:10:02 +01:00
Joshen Lim
29066a2353 Remove manual pause on auth e2e test (#33762) 2025-02-21 23:41:36 +08:00
Jordi Enric
b6e126c331 Feat: remember last visited route in logs FE-1418 (#33486)
* add logic to remember last route

* add default redirect

* move logic to index page

* Simplify logs page redirect logic

* missing }

* fix wrong }

* wait 2s for page to redirect

* use latest version in local studio cli test

* rm timeouts looks like it takes longer in ci

* Clean up

* Fix broken commands

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2025-02-20 14:42:01 +08:00
Joshen Lim
ca37f16f58 Chore/refactor e2e tests (#33647)
* Set up E2E tests for staging

* update

* Update

* Update .env.staging.example

* Fix node modules

* Fix

* Attempt to swap local-studio-tests to use the new studio-tests directory

* Omit storage state if running tests for local self host

* Fix test:local command

* Deprecate local-studio-test folder

* Rename local studio tests GH action to E2E test
2025-02-20 12:02:41 +08:00
Joshen Lim
8d527f7f9e Update database-triggers react queries to use methods from data/fetchers (#33546)
* Update database-triggers-query to use get from data/fetchers

* Update database triggers mutation RQs to use methods from data/fetchers

* Don't cd to the directory, use the --dir parameter of pnpm.

---------

Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
2025-02-12 16:04:35 +08:00
Beng Eu
c2547eec4f fix: hide pnpm update message, it's confusing since the pnpm version is locked; update to pnpm 9.15.4 (#33232) 2025-02-06 14:57:01 +08:00
Ivan Vasilov
99a042ecca chore: Set an override for @supabase/auth-js (#33043)
Set an override for @supabase/auth-js.
2025-01-23 18:06:36 +01:00
Ivan Vasilov
ab3a3b3c76 chore: Move playwright tests to tests/local-studio-tests (#21488)
* Move the playwright package to tests folder.

* Update the workspace list.

* Change the name of the playwright tests to local studio tests.
2025-01-09 12:36:32 +01:00
Ivan Vasilov
11caf61f43 chore: Delete the tests package (#32527)
* Remove the tests package.

* Remove all workspace configs for the tests package.
2025-01-08 21:29:45 +01:00