Skip to content

chore: bump posthog-js to 1.405.2 and posthoganalytics to 7.27.0 - #72459

Merged
haacked merged 1 commit into
masterfrom
haacked/ffc-minimization-sdk-bumps
Jul 21, 2026
Merged

chore: bump posthog-js to 1.405.2 and posthoganalytics to 7.27.0#72459
haacked merged 1 commit into
masterfrom
haacked/ffc-minimization-sdk-bumps

Conversation

@haacked

@haacked haacked commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Problem

$feature_flag_called minimization shipped in posthog-python 7.27.0 (posthog-python#748) and posthog-js 1.405.0 (posthog-js#4172), but us.posthog.com is pinned to posthoganalytics==7.20.4 and posthog-js@1.404.1 — neither knows the minimalFlagCalledEvents gate, so enabling it for our own project is currently a no-op.

Context: Messaging RFC.

Changes

  • posthoganalytics 7.20.4 → 7.27.0 (pyproject.toml + uv.lock)
  • posthog-js ^1.404.1 → ^1.405.2 (pnpm catalog + lockfile)
  • Raised the toolbar module-boundary size budget in frontend/bin/check-toolbar-graph.mjs (14,436,000 → 14,460,000 bytes) — posthog-js 1.405.2 pulls in a small amount of extra source reachable from the toolbar entry point, pushing the graph just over the previous budget

With these deployed, the gate (already enabled for project 2) starts minimizing $feature_flag_called events for non-experiment flags: properties reduce to the flag-evaluation/SDK-identity allowlist, dropping $set/$set_once, the $feature/* enumeration, $active_feature_flags, and $feature_flag_payloads. Experiment-linked flags keep the full envelope, so exposure analysis is unaffected.

How did you test this code?

Lockfile-only dependency bump; relying on CI. Verified uv lock resolved 7.27.0 and the pnpm lockfile resolves posthog-js 1.405.2 with no other dependency changes.

Also ran a manual smoke test against a local dev stack: loaded the app with the new SDK versions installed and confirmed the frontend's own posthog-js instance (ver=1.405.2) sends /e/, /i/v0/e/, and /flags/ requests that all succeed with no console errors, and that core scenes (home, feature flags list) render normally.

After deploy, expect avg $feature_flag_called payload size for project 2 to drop sharply (non-experiment web events go from ~KBs to ~400B) and $feature_flag_has_experiment to appear on new events.

@greptile-apps

greptile-apps Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Reviews (1): Last reviewed commit: "Bump posthog-js to 1.405.2 and posthogan..." | Re-trigger Greptile

@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

🤖 CI report

⚠️ Bundle size — 🔺 +2.7 KiB (+0.0%)

Uncompressed size of every built .js bundle, compared against the base branch.

Total: 64.50 MiB · 🔺 +2.7 KiB (+0.0%)

File Size Δ vs base
render-query/src/render-query/render-query.js 21.29 MiB 🔺 +2.7 KiB (+0.0%)

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.23 MiB · 22 files no change ███░░░░░░░ 28.7% of 4.29 MiB
authenticated shell (every logged-in page)
src/scenes/AuthenticatedShell.tsx
8.19 MiB · 3,001 files 🔺 +1001 B (+0.0%) █████████░ 88.5% of 9.25 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/scenes/AuthenticatedShell.tsx
🟢 src/lib/components/ActivityLog/describers 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/RootErrorBoundary.tsx
912 B ../node_modules/.pnpm/ieee754@1.2.1/node_modules/ieee754/index.js
789 B src/scenes/ChunkLoadErrorBoundary.tsx
762 B src/index.tsx
Largest files eagerly shipped from src/scenes/AuthenticatedShell.tsx
Size File
281.3 KiB ../node_modules/.pnpm/posthog-js@1.405.2/node_modules/posthog-js/dist/rrweb.js
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
235.8 KiB src/taxonomy/core-filter-definitions-by-group.json
224.4 KiB ../node_modules/.pnpm/posthog-js@1.405.2/node_modules/posthog-js/dist/module.js
167.1 KiB src/queries/validators.js
154.3 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
106.0 KiB src/lib/api.ts
93.3 KiB ../node_modules/.pnpm/prosemirror-view@1.40.1/node_modules/prosemirror-view/dist/index.js
93.2 KiB ../packages/quill/packages/quill/dist/index.js

Posted automatically by check-eager-graph · sizes are eager output bytes (shipped, post-tree-shake) from the esbuild metafile · part of #32479

Dist folder size — 🔺 +83.3 KiB (+0.0%)

Total size of the built frontend/dist folder (all assets), compared against the base branch.

Total: 1354.81 MiB · 🔺 +83.3 KiB (+0.0%)

Playwright — all passed

All tests passed.

View test results →

⚠️ Hobby preview — flapping: passed after 2 failure(s)

Test passed after 2 consecutive failure(s). This may indicate flaky behavior.

The hobby deployment smoke test is now passing, but was failing on previous runs.


Run 29861150844

@haacked
haacked requested a review from a team July 20, 2026 23:36
@haacked haacked changed the title Bump posthog-js to 1.405.2 and posthoganalytics to 7.27.0 chore: bump posthog-js to 1.405.2 and posthoganalytics to 7.27.0 Jul 20, 2026
@github-actions

github-actions Bot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

🦔 Hogbox preview · ✅ ready

▶ Open the preview

🔑 Login test@posthog.com / 12345678 (demo data)
🧩 Running this PR's backend and frontend, on the PostHog :master base
🔗 Link stable across rebuilds — a re-push swaps the box underneath, the URL stays
🔒 Access tailnet only (PostHog VPN)
🛠️ Admin inspect & debug state in hogland
💤 Idle sleeps after ~30 min idle (snapshot to S3, zero node cost) and wakes on your next visit in ~30s, behind a brief "waking up" screen

commit 5df6bfa · box box-a04f8b08e4d5 · ready in 765s (push → usable) · build log · rebuilds on every push, torn down on close

Comment thread uv.lock
Comment thread frontend/bin/check-toolbar-graph.mjs Outdated
@haacked
haacked force-pushed the haacked/ffc-minimization-sdk-bumps branch from 5df6bfa to a228f67 Compare July 21, 2026 19:21
@haacked
haacked enabled auto-merge (squash) July 21, 2026 19:22
@haacked
haacked merged commit 8d2f4c8 into master Jul 21, 2026
284 of 286 checks passed
@haacked
haacked deleted the haacked/ffc-minimization-sdk-bumps branch July 21, 2026 21:32
@deployment-status-posthog

deployment-status-posthog Bot commented Jul 21, 2026

Copy link
Copy Markdown

Deploy status

Environment Status Deployed At Workflow
dev ✅ Deployed 2026-07-21 22:10 UTC Run
prod-us ✅ Deployed 2026-07-21 22:24 UTC Run
prod-eu ✅ Deployed 2026-07-21 22:24 UTC Run

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.

2 participants