feat(telemetry): add dev telemetry toolbar#937
Conversation
Pull Request Test Coverage Report for Build 21452986859Warning: This coverage report may be inaccurate.This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.
Details
💛 - Coveralls |
🎭 Playwright Test ResultsDetails
Flaky testsFeatures › database.spec.ts › Database Enumerated Types › actions works as expected Skipped testsFeatures › assistant.spec.ts › AI Assistant › Can send a message to the assistant and receive a response |
17e6bef to
61a1f71
Compare
a62d854 to
0ad07c9
Compare
…gating - Move DevTelemetryToolbar from apps/studio to packages/dev-tools - Rename to DevToolbar for brevity - Change gating from NEXT_PUBLIC_ENVIRONMENT to NODE_ENV for tree-shaking - Add sideEffects: false to package.json for bundler optimization - Add early return in useDevToolbar() hook when not in development - Integrate toolbar into Studio, Docs, and WWW apps - Update tests to use NODE_ENV instead of NEXT_PUBLIC_ENVIRONMENT
Import Dispatch and SetStateAction from react instead of using React.Dispatch/React.SetStateAction to ensure types resolve correctly regardless of global type configuration.
- Wrap localStorage calls in try/catch to handle blocked storage - Clear existing SSE reconnect timer before scheduling new one to prevent overlapping timers if onerror fires rapidly
- Use next-router-mock/navigation for correct App Router mocking - Add typecheck script to package.json - Remove redundant IS_LOCAL_DEV check from useDevToolbar (handled at export level) - Use semantic <button> instead of div with role=button in EventCard - Wrap tab panels in TabsContent per Radix docs
- Replace Radix TabsContent with conditional rendering based on activeTab/flagsSubTab - This prevents inactive tab panels from affecting flex layout calculations - Eliminates empty space gap between tabs and content - Restores proper scrolling and interactivity in all tabs
0ad07c9 to
ecae9d6
Compare
|
Upstream PR was closed or merged. Code is synced via branch mirror. |
Mirror of supabase/supabase#42259
Original author: seanoliver
Problem
We need a local-only UI to inspect client and server telemetry events and override flags during development without touching non-local env behavior. This work is intended to be shared across Studio, Docs, and WWW.
Changes
dev-toolspackage with the Dev Telemetry Toolbar UI, trigger, and provider.devTelemetry()opt-in with storage gating and SSE subscription.Testing
Manual (local only):
pnpm dev:studio,pnpm dev:docs,pnpm dev:wwwdevTelemetry()in the browser consoleUnblocked by https://github.com/supabase/platform/pull/29172
Resolves GROWTH-591
Summary by CodeRabbit
New Features
Bug Fixes
Chores
Tests