fix(tracing): mention posthog-node in the tracing empty state - #99441
Conversation
posthog-node 5.52.0 exports spans itself, so the empty state's claim that tracing needs no PostHog-specific packages no longer holds. Claude-Session: https://claude.ai/code/session_01QPLdjqTgK93WtVxnhx6aVr
|
😎 Merged successfully - details. |
🤖 CI report✅ Trunk lane — non-backend laneThis PR is assigned to the non-backend lane. It does not run backend Python tests and may merge in parallel with PRs in other lanes. ✅ Complexity (TypeScript) — cleanCyclomatic complexity above the limit in changed typescript files (10 for production files, 15 for test files). Warn only: worth simplifying when you next touch these functions.
|
| File | Size | Δ vs base |
|---|---|---|
render-query/src/render-query/render-query.js |
21.66 MiB | 🟢 -73.2 KiB (-0.3%) |
posthog-app/src/scenes/persons/PersonScene.js |
removed | 🟢 -41.7 KiB (-100.0%) |
posthog-app/_parent/products/persons/frontend/pages/PersonScene.js |
41.5 KiB | 🔺 +41.5 KiB (new) |
posthog-app/_parent/products/ai_observability/frontend/tags/AIObservabilityTagScene.js |
37.7 KiB | 🔺 +37.7 KiB (new) |
posthog-app/_parent/products/ai_observability/frontend/tags/AIObservabilityTag.js |
removed | 🟢 -37.3 KiB (-100.0%) |
posthog-app/src/scenes/groups/Group.js |
removed | 🟢 -32.0 KiB (-100.0%) |
posthog-app/_parent/products/groups/frontend/pages/Group.js |
31.8 KiB | 🔺 +31.8 KiB (new) |
exporter/_parent/products/workflows/frontend/Workflows/Workflow.js |
124.6 KiB | 🔺 +21.5 KiB (+20.9%) |
posthog-app/_parent/products/signals/frontend/inbox/InboxScene.js |
424.5 KiB | 🔺 +17.7 KiB (+4.3%) |
posthog-app/_parent/products/persons/frontend/pages/PersonsScene.js |
16.3 KiB | 🔺 +16.3 KiB (new) |
posthog-app/src/scenes/persons/PersonsScene.js |
removed | 🟢 -16.3 KiB (-100.0%) |
exporter/src/exporter/scenes/ExporterNotebookScene.js |
3.45 MiB | 🔺 +15.8 KiB (+0.4%) |
posthog-app/_parent/products/signals/frontend/inbox/components/detail/ReportAiPanel.js |
14.4 KiB | 🔺 +14.4 KiB (new) |
posthog-app/_parent/products/annotations/frontend/pages/Annotations.js |
14.3 KiB | 🔺 +14.3 KiB (new) |
posthog-app/_parent/products/groups/frontend/pages/Groups.js |
14.1 KiB | 🔺 +14.1 KiB (new) |
posthog-app/src/scenes/groups/Groups.js |
removed | 🟢 -14.0 KiB (-100.0%) |
posthog-app/src/scenes/annotations/Annotations.js |
removed | 🟢 -14.0 KiB (-100.0%) |
posthog-app/src/layout/panel-layout/navbar/tabs/NavTabChat.js |
20.6 KiB | 🔺 +10.8 KiB (+110.8%) |
posthog-app/_parent/products/groups/frontend/pages/GroupsNew.js |
10.7 KiB | 🔺 +10.7 KiB (new) |
posthog-app/src/scenes/groups/GroupsNew.js |
removed | 🟢 -10.4 KiB (-100.0%) |
exporter/src/lib/components/ActivityLog/describers.js |
146.3 KiB | 🔺 +8.6 KiB (+6.2%) |
posthog-app/src/scenes/marketing-analytics/MarketingAnalyticsScene.js |
129.8 KiB | 🔺 +7.9 KiB (+6.5%) |
posthog-app/_parent/products/posthog_ai/frontend/scenes/TaskTracker/TaskTracker.js |
21.5 KiB | 🟢 -7.8 KiB (-26.6%) |
posthog-app/src/scenes/models/NodeDetailScene.js |
23.8 KiB | 🔺 +7.2 KiB (+43.3%) |
posthog-app/src/scenes/toolbar-launch/ToolbarLaunch.js |
12.2 KiB | 🔺 +6.2 KiB (+105.0%) |
posthog-app/_parent/products/data_catalog/frontend/DataCatalogMetricScene.js |
29.2 KiB | 🔺 +5.8 KiB (+24.9%) |
posthog-app/_parent/products/mcp_analytics/frontend/MCPAnalyticsScene.js |
163.3 KiB | 🔺 +5.3 KiB (+3.4%) |
posthog-app/src/lib/components/ActivityLog/describers.js |
144.5 KiB | 🔺 +4.1 KiB (+2.9%) |
posthog-app/_parent/products/metrics/frontend/MetricsScene.js |
93.3 KiB | 🔺 +3.2 KiB (+3.5%) |
posthog-app/src/scenes/feature-flags/FeatureFlag.js |
109.9 KiB | 🟢 -2.7 KiB (-2.4%) |
toolbar/src/toolbar/debug/chunk-EventDebugMenu.js |
283.6 KiB | 🔺 +1.9 KiB (+0.7%) |
posthog-app/src/scenes/onboarding/Onboarding.js |
824.2 KiB | 🔺 +1.7 KiB (+0.2%) |
posthog-app/src/lib/countryFlagEmojiPolyfill.js |
1.4 KiB | 🔺 +1.4 KiB (new) |
posthog-app/src/scenes/code-canvas/CodeLoopLink.js |
1.3 KiB | 🔺 +1.3 KiB (new) |
posthog-app/_parent/products/stamphog/frontend/scenes/StamphogScene/StamphogScene.js |
13.6 KiB | 🔺 +1.3 KiB (+10.3%) |
posthog-app/_parent/node_modules/.pnpm/country-flag-emoji-polyfill@0.1.8/node_modules/country-flag-emoji-polyfill/dist/dist.js |
removed | 🟢 -1.3 KiB (-100.0%) |
posthog-app/_parent/products/workflows/frontend/Workflows/WorkflowScene.js |
38.6 KiB | 🔺 +1.2 KiB (+3.2%) |
exporter/_parent/products/alerts/frontend/views/EditAlertModal.js |
104.0 KiB | 🔺 +1.1 KiB (+1.1%) |
posthog-app/_parent/products/error_tracking/frontend/scenes/ErrorTrackingIssueScene/ErrorTrackingIssueScene.js |
82.2 KiB | 🔺 +1.0 KiB (+1.3%) |
Posted automatically by build-bundle-size-report · uncompressed bytes from dist-report
✅ Eager graph — within budget
How much code each root ships on the eager path — downloaded and parsed before the surface is interactive. Measured from the esbuild output chunks (post-tree-shake, static imports only); lazy import() / React.lazy chunks are not counted.
| Root | Eager (shipped) | Δ vs base | Budget |
|---|---|---|---|
entry (logged-out pages, app bootstrap)src/index.tsx |
1.54 MiB · 22 files | 🔺 +8.4 KiB (+0.5%) | ████████░░ 83.9% of 1.84 MiB |
logged-out boot: index + App + bootApp (preloaded by every page, including /login)src/index.tsx + src/scenes/App.tsx + src/scenes/bootApp.ts |
3.52 MiB · 610 files | 🔺 +11.6 KiB (+0.3%) | █████████░ 87.3% of 4.03 MiB |
authenticated shell (every logged-in page)src/scenes/AuthenticatedShell.tsx |
8.32 MiB · 2,701 files | 🔺 +40.4 KiB (+0.5%) | █████████░ 87.5% of 9.51 MiB |
🟢 node_modules/monaco-editor/ stays out of src/index.tsx
🟢 src/lib/components/ActivityLog/describers stays out of src/index.tsx
🟢 [object Object] stays out of src/index.tsx
🟢 [object Object] stays out of src/index.tsx
🟢 node_modules/monaco-editor/ stays out of src/index.tsx + src/scenes/App.tsx + src/scenes/bootApp.ts
🟢 src/layout/navigation-3000/navigationLogic.tsx stays out of src/index.tsx + src/scenes/App.tsx + src/scenes/bootApp.ts
🟢 src/scenes/dashboard/dashboardLogic.tsx stays out of src/index.tsx + src/scenes/App.tsx + src/scenes/bootApp.ts
🟢 src/lib/lemon-ui/LemonMarkdown/ stays out of src/index.tsx + src/scenes/App.tsx + src/scenes/bootApp.ts
🟢 src/lib/components/RichContentEditor/ stays out of src/index.tsx + src/scenes/App.tsx + src/scenes/bootApp.ts
🟢 src/lib/components/CodeSnippet/ stays out of src/index.tsx + src/scenes/App.tsx + src/scenes/bootApp.ts
🟢 src/taxonomy/core-filter-definitions-by-group.json stays out of src/index.tsx + src/scenes/App.tsx + src/scenes/bootApp.ts
🟢 node_modules/monaco-editor/ stays out of src/scenes/AuthenticatedShell.tsx
🟢 src/lib/components/ActivityLog/describers stays out of src/scenes/AuthenticatedShell.tsx
🟢 [object Object] stays out of src/scenes/AuthenticatedShell.tsx
🟢 src/scenes/session-recordings/player/sessionRecordingPlayerLogic.ts stays out of src/scenes/AuthenticatedShell.tsx
🟢 [object Object] stays out of src/scenes/AuthenticatedShell.tsx
🟢 [object Object] stays out of src/scenes/AuthenticatedShell.tsx
Largest files eagerly shipped from src/index.tsx
| Size | File |
|---|---|
| 126.8 KiB | ../node_modules/.pnpm/react-dom@18.3.1_react@18.3.1/node_modules/react-dom/cjs/react-dom.production.min.js |
| 24.6 KiB | ../node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/index.js |
| 6.3 KiB | ../node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.production.min.js |
| 4.5 KiB | ../node_modules/.pnpm/@jspm+core@2.1.0/node_modules/@jspm/core/nodelibs/browser/process.js |
| 3.9 KiB | ../node_modules/.pnpm/scheduler@0.23.2/node_modules/scheduler/cjs/scheduler.production.min.js |
| 1.4 KiB | ../node_modules/.pnpm/base64-js@1.5.1/node_modules/base64-js/index.js |
| 1.3 KiB | src/index.tsx |
| 1.3 KiB | src/RootErrorBoundary.tsx |
| 912 B | ../node_modules/.pnpm/ieee754@1.2.1/node_modules/ieee754/index.js |
| 854 B | src/scenes/ChunkLoadErrorBoundary.tsx |
Largest files eagerly shipped from src/index.tsx + src/scenes/App.tsx + src/scenes/bootApp.ts
| Size | File |
|---|---|
| 294.1 KiB | ../node_modules/.pnpm/posthog-js@1.430.3_@types+react@18.3.27_react@18.3.1/node_modules/posthog-js/dist/module.mjs |
| 267.7 KiB | ../node_modules/.pnpm/@posthog+icons@0.38.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@posthog/icons/dist/posthog-icons.es.js |
| 126.8 KiB | ../node_modules/.pnpm/react-dom@18.3.1_react@18.3.1/node_modules/react-dom/cjs/react-dom.production.min.js |
| 103.5 KiB | src/lib/api.ts |
| 81.1 KiB | src/products.tsx |
| 68.5 KiB | src/lib/lemon-ui/icons/icons.tsx |
| 62.4 KiB | src/lib/utils/eventUsageLogic.ts |
| 38.8 KiB | ../node_modules/.pnpm/@dnd-kit+core@6.0.8_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@dnd-kit/core/dist/core.esm.js |
| 33.9 KiB | ../node_modules/.pnpm/kea@4.0.0-pre.6_patch_hash=139b8d1f1304f9d9da452a9a1244c94ea679dbcb85687d8999563146879fb6f5_react@18.3.1/node_modules/kea/lib/index.cjs.js |
| 33.2 KiB | src/queries/schema/schema-general.ts |
Largest files eagerly shipped from src/scenes/AuthenticatedShell.tsx
| Size | File |
|---|---|
| 294.1 KiB | ../node_modules/.pnpm/posthog-js@1.430.3_@types+react@18.3.27_react@18.3.1/node_modules/posthog-js/dist/module.mjs |
| 267.7 KiB | ../node_modules/.pnpm/@posthog+icons@0.38.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@posthog/icons/dist/posthog-icons.es.js |
| 263.0 KiB | src/taxonomy/core-filter-definitions-by-group.json |
| 153.8 KiB | ../node_modules/.pnpm/re2js@0.4.1/node_modules/re2js/build/index.esm.js |
| 126.8 KiB | ../node_modules/.pnpm/react-dom@18.3.1_react@18.3.1/node_modules/react-dom/cjs/react-dom.production.min.js |
| 103.5 KiB | src/lib/api.ts |
| 99.3 KiB | ../packages/quill/packages/quill/dist/index.js |
| 93.3 KiB | ../node_modules/.pnpm/prosemirror-view@1.40.1/node_modules/prosemirror-view/dist/index.js |
| 90.6 KiB | ../node_modules/.pnpm/@tiptap+core@3.20.6_@tiptap+pm@3.20.6/node_modules/@tiptap/core/dist/index.js |
| 81.1 KiB | src/products.tsx |
Posted automatically by check-eager-graph · sizes are eager output bytes (shipped, post-tree-shake) from the esbuild metafile · part of #32479
✅ Toolbar bundle — eager 2.32 MiB within budget
What the toolbar ships to customer pages, measured from the esbuild output (minified, post-tree-shake). The eager set is the entry plus everything statically imported from it — fetched before any feature runs; deferred chunks load lazily. The eager guardrail is 5.72 MiB. Each output file must also stay below 10 MB, where CloudFront stops compressing it. The module boundary is enforced separately by check-toolbar-graph.
| Metric | Size | Δ vs base | Budget |
|---|---|---|---|
| Eager (shipped) entry + static imports |
2.32 MiB · 18 files | 🔺 +11.1 KiB (+0.5%) | ████░░░░░░ 40.5% of 5.72 MiB |
| Deferred (lazy) | 2.09 MiB · 45 files | 🔺 +1.9 KiB (+0.1%) | n/a — loads on demand |
Loader dist/toolbar.js |
1.1 KiB | no change | █░░░░░░░░░ 5.8% of 19.5 KiB |
Largest eagerly-shipped chunks
| Size | File |
|---|---|
| 770.9 KiB | dist/toolbar/toolbar-app-ZZO5G4K6.css |
| 623.5 KiB | dist/toolbar/chunk-chunk-KAF5DJKJ.js |
| 484.8 KiB | dist/toolbar/chunk-chunk-6HX5GC5K.js |
| 136.2 KiB | dist/toolbar/chunk-chunk-RCT7OAJS.js |
| 131.8 KiB | dist/toolbar/chunk-chunk-FDH2IBXT.js |
| 72.4 KiB | dist/toolbar/toolbar-app-2SENCMP4.js |
| 69.0 KiB | dist/toolbar/chunk-chunk-TSAL54PB.js |
| 35.6 KiB | dist/toolbar/chunk-chunk-XWPS6SWT.js |
| 21.1 KiB | dist/toolbar/chunk-chunk-PNX6PJIH.js |
| 6.8 KiB | dist/toolbar/chunk-chunk-DV7IWQNF.js |
Posted automatically by check-toolbar-size · sizes are toolbar output bytes (shipped, post-tree-shake) from the esbuild metafile
✅ Dist folder size — 🔺 +5.98 MiB (+0.4%)
Total size of the built frontend/dist folder (all assets), compared against the base branch.
Total: 1474.57 MiB · 🔺 +5.98 MiB (+0.4%)
✅ duplication-python — clean
New Python code duplication introduced by this branch. Fails at 70+ tokens in app code, or 150+ tokens when both copies live in test files. Advisory while the gate proves itself: extract a shared helper instead of copying.
✅ duplication-ts — clean
New TypeScript code duplication introduced by this branch. Fails at 70+ tokens in app code, or 150+ tokens when both copies live in test files. Advisory while the gate proves itself: extract a shared helper instead of copying.
|
✅ Visual changes approved by @turnipdabeets — baseline updated in 2 changed. |
🦔 Hogbox preview · ❌ build failedThe preview didn't come up for commit Previews are optional and never block merging. A failure here is often a hogland or tailnet hiccup rather than anything in your PR, so the check stays green and this comment is the status. |
|
Reviews (1): Last reviewed commit: "fix(tracing): mention posthog-node in th..." | Re-trigger Greptile |
2 updated Run: 0bcb4c12-ff5c-41aa-a17b-9b1ba470a64a Co-authored-by: turnipdabeets <11654201+turnipdabeets@users.noreply.github.com>
Problem
Node.js users opening Tracing before sending a span are told "No PostHog-specific packages needed" and pointed at OpenTelemetry only. Since
posthog-node5.52.0 (PostHog/posthog-js#4579),posthog-nodecreates and exports spans itself, with no OpenTelemetry dependency – so the copy steers Node users to the heavier route.Changes
The logs empty state (
products/logs/frontend/emptyState/logsEmptyState.tsx) has the same sentence; out of scope here, since this follows the Node tracing release.How did you test this code?
Not run locally beyond
oxfmt --checkon the file – a one-string copy change, and no test references the text.Automatic notifications
Docs update
Node tracing docs merged in PostHog/posthog.com#19837; the remaining posthog.com landing-page fix is PostHog/posthog.com#20109, and the agent-facing tracing skill is PostHog/context-mill#391.
skip-inkeep-docsis set so the Inkeep agent doesn't draft a duplicate.🤖 Agent context
Autonomy: Human-driven (agent-assisted)
posthog-nodetracing release. No open PR changes this string.--no-verify: the pre-commit hook'shogli format:jsneedspythonon PATH, which the worktree lacked.oxfmt --checkpasses on the changed file.🤖 Generated with Claude Code
https://claude.ai/code/session_01QPLdjqTgK93WtVxnhx6aVr