Skip to content

fix(toolbar): stop OAuth deauth loop on hedgehog toggle and transient errors#58699

Draft
posthog[bot] wants to merge 1 commit into
masterfrom
posthog-code/fix-toolbar-oauth-deauth-loop
Draft

fix(toolbar): stop OAuth deauth loop on hedgehog toggle and transient errors#58699
posthog[bot] wants to merge 1 commit into
masterfrom
posthog-code/fix-toolbar-oauth-deauth-loop

Conversation

@posthog
Copy link
Copy Markdown
Contributor

@posthog posthog Bot commented May 17, 2026

Problem

PostHog Cloud toolbar users were being kicked out of the toolbar repeatedly — telemetry over a 7-day window showed 664,265 'toolbar token expired' events vs only 11,390 successful refreshes (a 58:1 ratio), with at least one paying customer reporting they had to re-authenticate dozens of times before giving up. A separate ticket reported that the toolbar 'flickers back to unauthenticated' the moment the user toggles hedgehog mode.

Three issues converged into one feedback loop:

  1. TOOLBAR_OAUTH_SCOPES was missing user:write — the hedgehog mode toggle PATCHes /api/users/@me/hedgehog_config, which dangerously_get_required_scopes gates on user:write. Every hedgehog toggle from the toolbar deterministically returned 403.
  2. toolbarFetch called tokenExpired() on every 403 — so the missing-scope 403 from (1) (or any other permission error, including a benign project switch) nuked the OAuth session and forced the user back through the full PKCE OAuth flow.
  3. withTokenRefresh called tokenExpired() on every refresh failure — including transient 5xx, 408, and network errors. A single 502 from a proxy hiccup cost the user their toolbar session.

A small additional bug surfaced from telemetry: generatePKCE calls crypto.subtle.digest unguarded, which throws an opaque TypeError: Cannot read properties of undefined (reading 'digest') on non-secure HTTP hosts where SubtleCrypto is not exposed.

Changes

Backend

  • Add user:write to TOOLBAR_OAUTH_SCOPES so the hedgehog toggle stops 403ing (posthog/settings/web.py).
  • Add a regression test that a token issued with the full toolbar scope set can PATCH hedgehog_config (posthog/api/test/test_toolbar_oauth_endpoint_auth.py).

Frontend

  • toolbarFetch: stop calling tokenExpired() on 403. A 403 means the token authenticated but lacks scope/permission — re-running OAuth produces the same scopes, so destroying the session can only make things worse. Log and capture telemetry instead (frontend/src/toolbar/toolbarConfigLogic.ts).
  • withTokenRefresh / refreshOAuthTokens: classify refresh failures. Only invalid_grant / invalid_token and non-408/non-429 4xx are treated as terminal (clear the session). Transient failures — 5xx, 408, 429, network errors — get one retry with a short backoff and never deauth the user (frontend/src/toolbar/toolbarAuth.ts).
  • generatePKCE: guard against missing crypto.subtle with a typed InsecureContextError. confirmAuthenticate now shows "PostHog toolbar requires HTTPS or localhost" when this specific failure mode hits (frontend/src/toolbar/utils.ts, frontend/src/toolbar/toolbarConfigLogic.ts).

How did you test this code?

I am an automated agent — I did not perform manual / browser testing. Automated coverage I added or updated:

  • frontend/src/toolbar/toolbarConfigLogic.test.ts — added: does not clear session on a 403, keeps session intact when refresh fails with a transient 5xx and retry also fails, keeps session intact when refresh fails with a network error and retry also fails, retries refresh on first 502 and succeeds on second attempt, and renamed the existing terminal-4xx test to calls tokenExpired when refresh fails with terminal 4xx (using invalid_grant payload).
  • frontend/src/toolbar/utils.test.ts — added a generatePKCE block covering InsecureContextError for missing crypto.subtle and missing digest, plus a stubbed-crypto.subtle happy path.
  • posthog/api/test/test_toolbar_oauth_endpoint_auth.py — added test_full_toolbar_token_grants_patch_access (regression for the missing-scope bug) and added user:write to the TestToolbarOAuthScopesConfig.EXPECTED_SCOPES list.
  • Ran the toolbar test suite locally: pnpm jest frontend/src/toolbar/utils.test.ts and pnpm jest frontend/src/toolbar/toolbarConfigLogic.test.ts both pass (19/19 and 142/142). Python ruff check / format --check are clean on the modified files.

The pre-existing toolbar test failures (index.test.ts, actionsTabLogic.test.ts, experimentsTabLogic.test.ts) are unrelated — they fail identically on master because of a missing @posthog/quill dependency.

Publish to changelog?

no

🤖 Agent context

Authored end-to-end by an agent acting on a P1 signal report.

  • The signal report supplied the root-cause diagnosis (specific file/line references, the 58:1 expired-vs-refresh ratio, the hedgehog-toggle reproducer, and the unguarded crypto.subtle.digest call). I verified each claim against the current code before changing anything.
  • For the scope fix I considered two options: (a) add user:write to TOOLBAR_OAUTH_SCOPES, vs (b) drop the user:write requirement on hedgehog_config PATCH. I chose (a) because it leaves the API contract intact (personal API keys still need user:write to update the field) and matches the existing toolbar scope pattern (the toolbar already has experiment:write, action:write, survey:write, uploaded_media:write). The narrower option is mentioned in the signal report but trades off security semantics elsewhere — happy to switch on review if preferred.
  • For the 403 handler I considered keeping the unconditional tokenExpired() but skipping it for specific paths (e.g. hedgehog_config). I rejected that as fragile — once the scope set is correct, the remaining 403s are project-switch / permission edge cases where re-auth produces the same scopes and so cannot help. Telemetry preserved via a new toolbar api forbidden event.
  • For the refresh handler I added a typed RefreshError with httpStatus + oauthError and a single isTerminalRefreshError helper, rather than duck-typing on Error.message. Retry is a single attempt with a 400ms backoff — enough to ride out a transient proxy hiccup without compounding latency on a genuinely down auth server.

Created with PostHog Code

… errors

The toolbar OAuth flow had three converging issues forcing users to
re-authenticate dozens of times in production:

- TOOLBAR_OAUTH_SCOPES only granted `user:read`, but the hedgehog mode
  toggle PATCHes `/api/users/@me/hedgehog_config` which requires
  `user:write`. Every toggle deterministically returned 403.
- toolbarFetch treated every 403 as a session-kill via `tokenExpired()`,
  so a missing scope (or a project-switch) wiped the session and looped
  the user through the full PKCE OAuth flow.
- withTokenRefresh called `tokenExpired()` on any refresh failure,
  including transient 5xx / 408 / network errors — one bad proxy
  round-trip cost users their toolbar session.

Also surface a typed `InsecureContextError` from `generatePKCE` when
`crypto.subtle` is unavailable (HTTP non-secure contexts) so the user
sees a clear "HTTPS or localhost required" toast instead of an opaque
TypeError reading `.digest` of undefined.

Generated-By: PostHog Code
Task-Id: 4bb30fa4-e07b-45b2-94d6-6218b57ae099
@github-actions
Copy link
Copy Markdown
Contributor

🎭 Playwright didn't run on this PR — your changes touch code that could affect E2E behavior, but Playwright is opt-in via label now to keep CI cost down.

Add the run-playwright label if you want an E2E sweep before merging — CI will pick it up automatically.

Most PRs don't need this. Real regressions still get caught on master and fix-forward.

@github-actions
Copy link
Copy Markdown
Contributor

Size Change: -40.8 kB (-0.03%)

Total Size: 117 MB

📦 View Changed
Filename Size Change
frontend/dist/CustomerAnalyticsScene 26.8 kB -1.3 kB (-4.64%)
frontend/dist/DataWarehouseScene 1.5 kB -45 kB (-96.77%) 🏆
frontend/dist/render-query.js 26.6 MB +1.23 kB (0%)
frontend/dist/SupportTicketScene 33.8 kB +7.3 kB (+27.56%) 🚨
frontend/dist/toolbar.js 14.9 MB +1.23 kB (+0.01%)
frontend/dist/TransformationsScene 2.16 kB -4.24 kB (-66.24%) 🏆
ℹ️ View Unchanged
Filename Size Change
frontend/dist/368Hedgehogs 5.47 kB 0 B
frontend/dist/abap 14.2 kB 0 B
frontend/dist/AccountConnected 2.99 kB 0 B
frontend/dist/Action 24.8 kB -101 B (-0.41%)
frontend/dist/Actions 1.26 kB +63 B (+5.25%) 🔍
frontend/dist/AdvancedActivityLogsScene 39.9 kB 0 B
frontend/dist/AgenticAuthorize 5.7 kB 0 B
frontend/dist/apex 3.99 kB 0 B
frontend/dist/ApprovalDetail 16.5 kB 0 B
frontend/dist/architecture-7EHR7CIX 372 B 0 B
frontend/dist/architectureDiagram-3BPJPVTR 151 kB 0 B
frontend/dist/array.full.es5.js 347 kB 0 B
frontend/dist/array.full.js 427 kB 0 B
frontend/dist/array.js 191 kB 0 B
frontend/dist/AsyncMigrations 13.4 kB 0 B
frontend/dist/AuthenticatedShell 173 kB 0 B
frontend/dist/AuthorizationStatus 969 B 0 B
frontend/dist/azcli 885 B 0 B
frontend/dist/bat 1.88 kB 0 B
frontend/dist/BatchExportScene 60.8 kB 0 B
frontend/dist/bicep 2.59 kB 0 B
frontend/dist/Billing 731 B 0 B
frontend/dist/BillingSection 21 kB 0 B
frontend/dist/blockDiagram-GPEHLZMM 72.5 kB 0 B
frontend/dist/BoxPlot 5.25 kB 0 B
frontend/dist/browserAll-0QZMN1W2 37.4 kB 0 B
frontend/dist/BusinessKnowledgeScene 18.9 kB 0 B
frontend/dist/ButtonPrimitives 762 B -34 B (-4.27%)
frontend/dist/c4Diagram-AAUBKEIU 70.8 kB 0 B
frontend/dist/CalendarHeatMap 9 kB 0 B
frontend/dist/cameligo 2.23 kB 0 B
frontend/dist/changeRequestsLogic 782 B 0 B
frontend/dist/classDiagram-4FO5ZUOK 1.28 kB 0 B
frontend/dist/classDiagram-v2-Q7XG4LA2 1.28 kB 0 B
frontend/dist/CLIAuthorize 11.6 kB 0 B
frontend/dist/CLILive 4.26 kB 0 B
frontend/dist/clojure 9.68 kB 0 B
frontend/dist/CodeEditorInline 696 B 0 B
frontend/dist/coffee 3.63 kB 0 B
frontend/dist/Cohort 27.7 kB 0 B
frontend/dist/CohortCalculationHistory 6.47 kB 0 B
frontend/dist/Cohorts 9.64 kB 0 B
frontend/dist/ConfirmOrganization 4.76 kB 0 B
frontend/dist/conversations.js 67.3 kB 0 B
frontend/dist/cose-bilkent-S5V4N54A 82.8 kB 0 B
frontend/dist/Coupons 963 B 0 B
frontend/dist/cpp 5.33 kB 0 B
frontend/dist/Create 898 B -179 B (-16.62%) 👏
frontend/dist/crisp-chat-integration.js 1.97 kB 0 B
frontend/dist/csharp 4.56 kB 0 B
frontend/dist/csp 1.45 kB 0 B
frontend/dist/css 4.54 kB 0 B
frontend/dist/cssMode 4.2 kB 0 B
frontend/dist/CustomCssScene 3.8 kB 0 B
frontend/dist/CustomerAnalyticsConfigurationScene 2.27 kB -36 B (-1.56%)
frontend/dist/CustomerJourneyBuilderScene 2.04 kB -35 B (-1.69%)
frontend/dist/CustomerJourneyTemplatesScene 7.72 kB 0 B
frontend/dist/customizations.full.js 18 kB 0 B
frontend/dist/CyclotronJobInputAssignee 1.57 kB 0 B
frontend/dist/CyclotronJobInputBusinessHours 2.92 kB -35 B (-1.18%)
frontend/dist/CyclotronJobInputTicketTags 920 B 0 B
frontend/dist/cypher 3.42 kB 0 B
frontend/dist/dagre-BM42HDAG 11.9 kB 0 B
frontend/dist/dart 4.29 kB 0 B
frontend/dist/Dashboard 1.38 kB 0 B
frontend/dist/Dashboards 21.8 kB 0 B
frontend/dist/DashboardTemplateCopyScene 5.95 kB 0 B
frontend/dist/DataManagementScene 884 B 0 B
frontend/dist/DataPipelinesNewScene 2.55 kB 0 B
frontend/dist/Deactivated 1.37 kB 0 B
frontend/dist/dead-clicks-autocapture.js 13.2 kB 0 B
frontend/dist/DeadLetterQueue 5.63 kB 0 B
frontend/dist/DebugScene 20.2 kB 0 B
frontend/dist/decompressionWorker 2.85 kB 0 B
frontend/dist/decompressionWorker.js 2.85 kB 0 B
frontend/dist/DecompressionWorkerManager 329 B 0 B
frontend/dist/DefinitionEdit 8.82 kB 0 B
frontend/dist/DefinitionView 24.3 kB 0 B
frontend/dist/Deployment 3.9 kB 0 B
frontend/dist/DeploymentProject 5.43 kB 0 B
frontend/dist/Deployments 9.17 kB 0 B
frontend/dist/DestinationsScene 2.92 kB 0 B
frontend/dist/diagram-2AECGRRQ 6.66 kB 0 B
frontend/dist/diagram-5GNKFQAL 3.61 kB 0 B
frontend/dist/diagram-KO2AKTUF 11.5 kB 0 B
frontend/dist/diagram-LMA3HP47 5.02 kB 0 B
frontend/dist/diagram-OG6HWLK6 11.8 kB 0 B
frontend/dist/dist 643 B 0 B
frontend/dist/dockerfile 1.91 kB 0 B
frontend/dist/EarlyAccessFeature 855 B 0 B
frontend/dist/EarlyAccessFeatures 3.05 kB 0 B
frontend/dist/ecl 5.38 kB 0 B
frontend/dist/EditorScene 1.38 kB 0 B
frontend/dist/elixir 10.3 kB 0 B
frontend/dist/elk.bundled 1.44 MB 0 B
frontend/dist/EmailMFAVerify 3.26 kB 0 B
frontend/dist/EndpointScene 39.9 kB 0 B
frontend/dist/EndpointsScene 21.8 kB 0 B
frontend/dist/erDiagram-TEJ5UH35 27.7 kB 0 B
frontend/dist/ErrorTrackingIssueFingerprintsScene 7.22 kB -41 B (-0.56%)
frontend/dist/ErrorTrackingIssueScene 101 kB 0 B
frontend/dist/ErrorTrackingScene 27.1 kB 0 B
frontend/dist/EvaluationTemplates 779 B 0 B
frontend/dist/eventmodeling-FCH6USID 375 B 0 B
frontend/dist/EventsScene 2.81 kB 0 B
frontend/dist/exception-autocapture.js 11.8 kB 0 B
frontend/dist/Experiment 210 kB 0 B
frontend/dist/Experiments 19.3 kB 0 B
frontend/dist/exporter 19 kB 0 B
frontend/dist/exporter.js 19 kB 0 B
frontend/dist/ExporterDashboardScene 1.78 kB 0 B
frontend/dist/ExporterHeatmapScene 19.5 kB 0 B
frontend/dist/ExporterInsightScene 2.88 kB 0 B
frontend/dist/ExporterInterviewScene 309 kB 0 B
frontend/dist/ExporterNotebookScene 2.7 MB 0 B
frontend/dist/ExporterRecordingScene 995 B 0 B
frontend/dist/exporterSharedChunkAnchors 288 kB 0 B
frontend/dist/exporterSharedChunkAnchors.js 288 kB 0 B
frontend/dist/ExportsScene 4.23 kB 0 B
frontend/dist/FeatureFlag 134 kB 0 B
frontend/dist/FeatureFlags 844 B 0 B
frontend/dist/FeatureFlagTemplatesScene 7.24 kB 0 B
frontend/dist/FlappyHog 5.99 kB -34 B (-0.56%)
frontend/dist/flow9 1.85 kB 0 B
frontend/dist/flowDiagram-I6XJVG4X 61.6 kB 0 B
frontend/dist/freemarker2 16.7 kB 0 B
frontend/dist/fsharp 3.02 kB 0 B
frontend/dist/ganttDiagram-6RSMTGT7 50.9 kB 0 B
frontend/dist/gitGraph-WXDBUCRP 360 B 0 B
frontend/dist/gitGraphDiagram-PVQCEYII 30.2 kB 0 B
frontend/dist/go 2.69 kB 0 B
frontend/dist/graphql 2.3 kB 0 B
frontend/dist/Group 14.9 kB 0 B
frontend/dist/Groups 4.15 kB 0 B
frontend/dist/GroupsNew 7.58 kB 0 B
frontend/dist/handlebars 7.38 kB 0 B
frontend/dist/hcl 3.63 kB 0 B
frontend/dist/HealthCategoryDetailScene 7.48 kB 0 B
frontend/dist/HealthScene 12.4 kB 0 B
frontend/dist/HeatmapNewScene 5.25 kB 0 B
frontend/dist/HeatmapRecordingScene 4.25 kB 0 B
frontend/dist/HeatmapScene 6.8 kB 0 B
frontend/dist/HeatmapsScene 4.13 kB 0 B
frontend/dist/hls 394 kB 0 B
frontend/dist/HogFunctionScene 59.5 kB 0 B
frontend/dist/hogql_parser_wasm_browser 1.52 MB 0 B
frontend/dist/HogRepl 7.61 kB 0 B
frontend/dist/html 5.62 kB 0 B
frontend/dist/htmlMode 4.65 kB 0 B
frontend/dist/image-blob-reduce.esm 49.5 kB 0 B
frontend/dist/InboxScene 59.9 kB 0 B
frontend/dist/index 60.7 kB 0 B
frontend/dist/index.js 60.7 kB 0 B
frontend/dist/info-J43DQDTF 348 B 0 B
frontend/dist/infoDiagram-5YYISTIA 1.32 kB 0 B
frontend/dist/ini 1.14 kB 0 B
frontend/dist/InsightQuickStart 5.67 kB 0 B
frontend/dist/InsightScene 34.6 kB 0 B
frontend/dist/IntegrationsRedirect 976 B 0 B
frontend/dist/intercom-integration.js 2.03 kB 0 B
frontend/dist/InviteSignup 15.2 kB 0 B
frontend/dist/ishikawaDiagram-YF4QCWOH 18 kB 0 B
frontend/dist/java 3.26 kB 0 B
frontend/dist/javascript 1.02 kB 0 B
frontend/dist/journeyDiagram-JHISSGLW 24 kB 0 B
frontend/dist/jsonMode 13.9 kB 0 B
frontend/dist/julia 7.26 kB 0 B
frontend/dist/kanban-definition-UN3LZRKU 21.2 kB 0 B
frontend/dist/katex 266 kB 0 B
frontend/dist/kotlin 3.44 kB 0 B
frontend/dist/lazy 146 kB 0 B
frontend/dist/LegacyPluginScene 20.9 kB 0 B
frontend/dist/LegalDocumentNewScene 59.6 kB +37 B (+0.06%)
frontend/dist/LegalDocumentsScene 5.21 kB 0 B
frontend/dist/LemonTextAreaMarkdown 706 B 0 B
frontend/dist/less 3.93 kB 0 B
frontend/dist/lexon 2.47 kB 0 B
frontend/dist/lib 2.25 kB 0 B
frontend/dist/Link 672 B -34 B (-4.82%)
frontend/dist/LinkScene 25.1 kB +36 B (+0.14%)
frontend/dist/LinksScene 4.44 kB 0 B
frontend/dist/liquid 4.57 kB 0 B
frontend/dist/LiveDebugger 19.3 kB -37 B (-0.19%)
frontend/dist/LiveEventsTable 5.47 kB 0 B
frontend/dist/LLMAnalyticsClusterScene 21.5 kB 0 B
frontend/dist/LLMAnalyticsClustersScene 54.7 kB -38 B (-0.07%)
frontend/dist/LLMAnalyticsDatasetScene 20.8 kB 0 B
frontend/dist/LLMAnalyticsDatasetsScene 3.49 kB 0 B
frontend/dist/LLMAnalyticsEvaluation 59.6 kB 0 B
frontend/dist/LLMAnalyticsEvaluationsScene 28 kB 0 B
frontend/dist/LLMAnalyticsPlaygroundScene 37.5 kB 0 B
frontend/dist/LLMAnalyticsScene 118 kB +345 B (+0.29%)
frontend/dist/LLMAnalyticsSessionScene 13.6 kB 0 B
frontend/dist/LLMAnalyticsTag 27.3 kB 0 B
frontend/dist/LLMAnalyticsTagsScene 7.15 kB 0 B
frontend/dist/LLMAnalyticsTraceScene 130 kB 0 B
frontend/dist/LLMAnalyticsUsers 764 B 0 B
frontend/dist/LLMASessionFeedbackDisplay 5.08 kB 0 B
frontend/dist/LLMPromptScene 17.8 kB +38 B (+0.21%)
frontend/dist/LLMPromptsScene 4.68 kB -36 B (-0.76%)
frontend/dist/LLMSkillScene 827 B 0 B
frontend/dist/LLMSkillsScene 810 B -34 B (-4.03%)
frontend/dist/Login 8.86 kB 0 B
frontend/dist/Login2FA 4.49 kB 0 B
frontend/dist/logs.js 38.9 kB 0 B
frontend/dist/LogsAlertDetailScene 17.2 kB 0 B
frontend/dist/LogsSamplingDetailScene 4.48 kB 0 B
frontend/dist/LogsSamplingNewScene 2.01 kB 0 B
frontend/dist/LogsScene 18.1 kB 0 B
frontend/dist/lua 2.16 kB 0 B
frontend/dist/m3 2.85 kB 0 B
frontend/dist/main 819 kB 0 B
frontend/dist/ManagedMigration 14.4 kB 0 B
frontend/dist/markdown 3.83 kB 0 B
frontend/dist/MarketingAnalyticsScene 40.3 kB 0 B
frontend/dist/MaterializedColumns 10.4 kB 0 B
frontend/dist/Max 888 B 0 B
frontend/dist/mdx 5.43 kB 0 B
frontend/dist/memlens.lib.bundle 27.9 kB 0 B
frontend/dist/mermaid.core 28.5 kB 0 B
frontend/dist/MermaidDiagram 2.11 kB 0 B
frontend/dist/MessageTemplate 16.5 kB 0 B
frontend/dist/MetricsScene 1.04 kB -34 B (-3.16%)
frontend/dist/mindmap-definition-RKZ34NQL 24.8 kB 0 B
frontend/dist/mips 2.62 kB 0 B
frontend/dist/ModelsScene 14.6 kB 0 B
frontend/dist/MonacoDiffEditor 471 B 0 B
frontend/dist/monacoEditorWorker 288 kB 0 B
frontend/dist/monacoEditorWorker.js 288 kB 0 B
frontend/dist/monacoJsonWorker 419 kB 0 B
frontend/dist/monacoJsonWorker.js 419 kB 0 B
frontend/dist/monacoTsWorker 7.02 MB 0 B
frontend/dist/monacoTsWorker.js 7.02 MB 0 B
frontend/dist/MoveToPostHogCloud 4.7 kB 0 B
frontend/dist/msdax 4.95 kB 0 B
frontend/dist/mysql 11.3 kB 0 B
frontend/dist/NavTabChat 7.41 kB 0 B
frontend/dist/NewSourceScene 980 B -68 B (-6.49%)
frontend/dist/NewTabScene 1.72 kB 0 B
frontend/dist/NodeDetailScene 16.9 kB -33 B (-0.19%)
frontend/dist/NotebookCanvasScene 3.61 kB 0 B
frontend/dist/NotebookPanel 5.58 kB 0 B
frontend/dist/NotebookScene 8.82 kB 0 B
frontend/dist/NotebooksScene 7.84 kB 0 B
frontend/dist/OAuthAuthorize 844 B 0 B
frontend/dist/objective-c 2.44 kB 0 B
frontend/dist/Onboarding 771 kB 0 B
frontend/dist/OnboardingCouponRedemption 1.44 kB 0 B
frontend/dist/packet-YPE3B663 354 B 0 B
frontend/dist/pascal 3.03 kB 0 B
frontend/dist/pascaligo 2.04 kB 0 B
frontend/dist/passkeyLogic 722 B +34 B (+4.94%) 🔍
frontend/dist/PasswordReset 4.6 kB 0 B
frontend/dist/PasswordResetComplete 3.23 kB 0 B
frontend/dist/PendingDeletion 2.38 kB 0 B
frontend/dist/perl 8.29 kB 0 B
frontend/dist/PersonScene 18.2 kB 0 B
frontend/dist/PersonsScene 5.91 kB 0 B
frontend/dist/pgsql 13.5 kB 0 B
frontend/dist/php 8.06 kB 0 B
frontend/dist/pie-LRSECV5Y 345 B 0 B
frontend/dist/pieDiagram-4H26LBE5 4.92 kB 0 B
frontend/dist/PipelineStatusScene 9.35 kB 0 B
frontend/dist/pla 1.72 kB 0 B
frontend/dist/posthog 146 kB 0 B
frontend/dist/postiats 7.9 kB 0 B
frontend/dist/powerquery 17 kB 0 B
frontend/dist/powershell 3.31 kB 0 B
frontend/dist/PreflightCheck 5.81 kB 0 B
frontend/dist/product-tours.js 115 kB 0 B
frontend/dist/ProductTour 275 kB 0 B
frontend/dist/ProductTours 4.92 kB 0 B
frontend/dist/ProjectHomepage 19.9 kB 0 B
frontend/dist/protobuf 9.09 kB 0 B
frontend/dist/pug 4.86 kB 0 B
frontend/dist/python 4.8 kB 0 B
frontend/dist/qsharp 3.23 kB 0 B
frontend/dist/quadrantDiagram-W4KKPZXB 34.4 kB 0 B
frontend/dist/QueryPerformance 8.86 kB 0 B
frontend/dist/r 3.16 kB 0 B
frontend/dist/radar-GUYGQ44K 351 B 0 B
frontend/dist/razor 9.38 kB 0 B
frontend/dist/react-json-view 121 kB 0 B
frontend/dist/recorder-v2.js 98.6 kB 0 B
frontend/dist/recorder.js 98.6 kB 0 B
frontend/dist/redis 3.59 kB 0 B
frontend/dist/redshift 11.8 kB 0 B
frontend/dist/RegionMap 29.6 kB 0 B
frontend/dist/render-query 26.6 MB 0 B
frontend/dist/requirementDiagram-4Y6WPE33 31.9 kB 0 B
frontend/dist/ResourceTransfer 9.42 kB 0 B
frontend/dist/restructuredtext 3.94 kB 0 B
frontend/dist/RevenueAnalyticsScene 25.8 kB +65 B (+0.25%)
frontend/dist/ruby 8.54 kB 0 B
frontend/dist/rust 4.2 kB 0 B
frontend/dist/sankeyDiagram-5OEKKPKP 24 kB 0 B
frontend/dist/SavedInsights 902 B 0 B
frontend/dist/sb 1.86 kB 0 B
frontend/dist/scala 7.36 kB 0 B
frontend/dist/schema 719 kB 0 B
frontend/dist/SchemaScene 21.2 kB -36 B (-0.17%)
frontend/dist/scheme 1.8 kB 0 B
frontend/dist/scss 6.45 kB 0 B
frontend/dist/SdkDoctorScene 9.66 kB 0 B
frontend/dist/sequenceDiagram-3UESZ5HK 117 kB 0 B
frontend/dist/SessionAttributionExplorerScene 6.87 kB 0 B
frontend/dist/SessionGroupSummariesTable 4.87 kB 0 B
frontend/dist/SessionGroupSummaryScene 17.2 kB +36 B (+0.21%)
frontend/dist/SessionProfileScene 15.3 kB 0 B
frontend/dist/SessionRecordingDetail 2 kB 0 B
frontend/dist/SessionRecordingFilePlaybackScene 4.71 kB 0 B
frontend/dist/SessionRecordings 980 B 0 B
frontend/dist/SessionRecordingsKiosk 10.1 kB 0 B
frontend/dist/SessionRecordingsPlaylistScene 5.28 kB 0 B
frontend/dist/SessionRecordingsSettingsScene 2.14 kB 0 B
frontend/dist/SessionsScene 4.22 kB 0 B
frontend/dist/SettingsScene 3.23 kB 0 B
frontend/dist/sharedChunkAnchors 236 kB 0 B
frontend/dist/sharedChunkAnchors.js 236 kB 0 B
frontend/dist/SharedMetric 6.03 kB 0 B
frontend/dist/SharedMetrics 787 B 0 B
frontend/dist/shell 3.11 kB 0 B
frontend/dist/SignupContainer 28.4 kB 0 B
frontend/dist/Site 1.43 kB 0 B
frontend/dist/solidity 18.6 kB 0 B
frontend/dist/sophia 2.8 kB 0 B
frontend/dist/SourceScene 928 B -34 B (-3.53%)
frontend/dist/SourcesScene 6.17 kB -35 B (-0.56%)
frontend/dist/sparql 2.59 kB 0 B
frontend/dist/sql 10.3 kB 0 B
frontend/dist/SqlVariableEditScene 7.49 kB 0 B
frontend/dist/st 7.44 kB 0 B
frontend/dist/StartupProgram 21.4 kB 0 B
frontend/dist/stateDiagram-AJRCARHV 11.3 kB +5 B (+0.04%)
frontend/dist/stateDiagram-v2-BHNVJYJU 1.18 kB 0 B
frontend/dist/StripeConfirmInstall 3.78 kB 0 B
frontend/dist/SubscriptionScene 14.4 kB 0 B
frontend/dist/SubscriptionsScene 5.42 kB 0 B
frontend/dist/SupportSettingsScene 1.64 kB 0 B
frontend/dist/SupportTicketsScene 937 B 0 B
frontend/dist/Survey 1.12 kB 0 B
frontend/dist/SurveyFormBuilder 1.78 kB 0 B
frontend/dist/Surveys 26.6 kB 0 B
frontend/dist/surveys.js 94.7 kB 0 B
frontend/dist/SurveyWizard 72.7 kB 0 B
frontend/dist/swift 5.3 kB 0 B
frontend/dist/SystemStatus 17.1 kB 0 B
frontend/dist/systemverilog 7.65 kB 0 B
frontend/dist/TaskDetailScene 23 kB +36 B (+0.16%)
frontend/dist/TaskTracker 14.4 kB 0 B
frontend/dist/tcl 3.61 kB 0 B
frontend/dist/TextCardMarkdownEditor 11.2 kB 0 B
frontend/dist/timeline-definition-PNZ67QCA 31.3 kB 0 B
frontend/dist/toolbar 14.9 MB 0 B
frontend/dist/ToolbarLaunch 2.71 kB 0 B
frontend/dist/tracing-headers.js 1.74 kB 0 B
frontend/dist/TracingScene 53.9 kB 0 B
frontend/dist/treemap-LRROVOQU 357 B 0 B
frontend/dist/treeView-BLDUP644 360 B 0 B
frontend/dist/TrendsBarChart 6.78 kB 0 B
frontend/dist/TrendsLineChart 6.8 kB 0 B
frontend/dist/tsMode 24 kB 0 B
frontend/dist/twig 6.01 kB 0 B
frontend/dist/TwoFactorReset 4.27 kB 0 B
frontend/dist/typescript 274 B 0 B
frontend/dist/typespec 2.86 kB 0 B
frontend/dist/Unsubscribe 1.9 kB 0 B
frontend/dist/UserInterview 8.52 kB 0 B
frontend/dist/UserInterviewResponse 4.79 kB +34 B (+0.71%)
frontend/dist/UserInterviews 3.8 kB 0 B
frontend/dist/vb 5.83 kB 0 B
frontend/dist/vennDiagram-CIIHVFJN 41.6 kB 0 B
frontend/dist/VercelConnect 5.23 kB 0 B
frontend/dist/VercelLinkError 2.5 kB 0 B
frontend/dist/VerifyEmail 5.02 kB 0 B
frontend/dist/vimMode 211 kB 0 B
frontend/dist/VisualReviewIndexScene 2.45 kB +36 B (+1.49%)
frontend/dist/VisualReviewRunScene 44.3 kB 0 B
frontend/dist/VisualReviewRunsScene 7.17 kB -38 B (-0.53%)
frontend/dist/VisualReviewSettingsScene 11 kB +35 B (+0.32%)
frontend/dist/VisualReviewSnapshotHistoryScene 12.4 kB +37 B (+0.3%)
frontend/dist/VisualReviewSnapshotOverviewScene 17.5 kB +36 B (+0.21%)
frontend/dist/wardley-L42UT6IY 352 B 0 B
frontend/dist/wardleyDiagram-YWT4CUSO 26.2 kB 0 B
frontend/dist/web-vitals-with-attribution.js 11.8 kB 0 B
frontend/dist/web-vitals.js 6.39 kB 0 B
frontend/dist/WebAnalyticsScene 9.79 kB 0 B
frontend/dist/WebGLRenderer-DYjOwNoG 60.4 kB 0 B
frontend/dist/WebGPURenderer-B_wkl_Ja 36.3 kB 0 B
frontend/dist/WebScriptsScene 2.78 kB 0 B
frontend/dist/WebVitals 7.38 kB -35 B (-0.47%)
frontend/dist/WebVitalsPathBreakdown 3.86 kB -35 B (-0.9%)
frontend/dist/webworkerAll-puPV1rBA 397 B 0 B
frontend/dist/wgsl 7.38 kB 0 B
frontend/dist/Wizard 4.7 kB 0 B
frontend/dist/WorkflowScene 117 kB 0 B
frontend/dist/WorkflowsScene 60 kB 0 B
frontend/dist/WorldMap 1.04 MB 0 B
frontend/dist/xml 3.02 kB 0 B
frontend/dist/xychartDiagram-2RQKCTM6 39.6 kB 0 B
frontend/dist/yaml 4.64 kB 0 B

compressed-size-action

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants