PostHog JS
npx @buildinternet/releases get posthog-jsEvery captured event now carries $recording_status plus the replay trigger and buffered $sdk_debug_* properties, with the remaining session replay debug properties attached to SDK events at most once every 30 seconds, reading native replay state from @posthog/react-native-plugin 2.12.0 or newer. Also bumps @posthog/core to 1.60.1.
Regex flag handling now falls back instead of returning inconsistent local results for Unicode and advanced patterns. Also bumps posthog-node to 5.57.1 and @posthog/core to 1.60.1.
Survey rating scales that start at 1 now reject a prefilled rating of 0. The IE11 Math.trunc and Number.isInteger polyfills ship only in array.full.es5.js, so modern bundles no longer trigger Lighthouse's Legacy JavaScript audit.
The client privacyMode option now applies to AI integrations, keeping prompts out of errors, provider metadata, and OTel spans, and MCP tool credentials are redacted. Regex handling now falls back instead of returning inconsistent local results for Unicode and advanced patterns.
Regex flag detection now falls back instead of returning inconsistent local results for Unicode and advanced patterns.
The client privacyMode option now applies to AI integrations, keeping prompts out of errors, provider metadata, and OTel spans, and MCP tool credentials are redacted. Bumps posthog-node to 5.57.1 and @posthog/core to 1.60.1.
Prefilled survey ratings of 0 are now rejected on rating scales that start at 1. The IE11 Math.trunc and Number.isInteger polyfills now ship only in array.full.es5.js, so modern bundles no longer trigger Lighthouse's Legacy JavaScript audit.
Query params are now read with form-encoding rules: an encoded plus (%2B) stays as + instead of becoming a space, and values containing = are no longer cut off, fixing UTM, click ID, and search keyword properties like utm_term=c%2B%2B. Also bumps @posthog/browser-common to 0.9.10.
Query params are now read with form-encoding rules: an encoded plus (%2B) stays a + instead of becoming a space, and values containing = are no longer truncated. Fixes UTM, click ID and search keyword properties such as utm_term=c%2B%2B.
When processing or uploading public source maps fails and sourcemaps.deleteAfterUpload is enabled (the default), the maps are now deleted instead of shipping in the build output; setting deleteAfterUpload to false keeps them and retries the upload at the end of the build.
Refusal text from OpenAI chat completions, streamed or not, is now captured in $ai_output_choices instead of an empty output.
Autocapture logic is now shared across browser SDKs while preserving existing event capture behavior, alongside a dependency bump to @posthog/browser-common 0.9.9.
Autocapture logic is now shared across the browser SDKs while preserving existing event capture behavior.
The Conversations widget now comes back after reset() and after a cookieless on_reject visitor calls opt_in_capturing(), instead of staying unavailable until the next page load. Also, with debug: true set, capture() now logs why it dropped an event, whether capturing is disabled or the user agent is a bot.
evaluateFlags() snapshots now expose flags local evaluation could not resolve via unresolvedFlags, tag reads with local_evaluation_inconclusive, and warn once about unsupported flag definitions. Conditions mixing an uncheckable filter with a non-matching filter now resolve locally as no match instead of falling back to a server request.
evaluateFlags() snapshots now surface flags local evaluation could not resolve via unresolvedFlags, tag reads with local_evaluation_inconclusive, and warn once about flags whose definition local evaluation does not support. Conditions pairing an uncheckable filter with a non-matching filter now resolve locally as no match instead of falling back to a server request.