Repository navigation
Rebuild v12 bundles after merged compatibility fixes - #116
simple-analytics-ai[bot] wants to merge 1 commit into
Conversation
Requested: rebuild the distributions after PR #108 and verify that manual queries override browser parameters, absent manual queries fall back to location.search, and existing filtering remains effective. Include the newly merged phone-click fix from #111 and preserve current inline events. Regenerate only the 29 affected bundles and source maps. All 39 unit tests and 24 additional payload checks pass on the pinned toolchain. Refs #107
|
Every bundle rebuilt here fails deployment validation: Create a separate branch from the current PR head, commit and push only that branch, and return its link so it can be merged into the current PR branch. Do not open a pull request. |
Documentation update
|
Claude review checkpointReviewed commit |
|
SDLC label: |
Summary
Closes #107
Follow-up to #108, which is already merged into
v12. The merged source insrc/default.jscontains the inline-event tracking from #106 and the phone-click fix from #111, but the committed bundles still predate both, so the artifacts that ship to the CDN do not match the source they are built from.This commit regenerates the 29 affected distribution files and source maps from current
v12. No source file, test, or build script changes.Effect on existing installations once these bundles are deployed:
latest.js,v12/app.js, and the custom-domain and Cloudflare variants gain inline events: a click or submit on an element carryingdata-simple-eventnow sends an event, withdata-simple-event-*attribute values, the elementtag, and for forms the submit button's label (button_text, max 200 characters) as metadata. Form field values are not collected.fetch(url, { keepalive: true, mode: "no-cors", credentials: "omit" }), falling back to the tracking pixel whenfetchis unavailable, fails, or throws. Navigation and form submission are left to the browser and the website.data-detect-404="true"orsa_settings.detect404, so existing installs send no extra request.light.jsstays event-free (verified: no inline-event code in the built output, +12 bytes, header and shared helpers only).dist/latest/anddist/v12/change;dist/v1throughdist/v11remain byte-identical.Blast radius is the tracker bundles only, and the change is reversible by reverting the generated files.
Changes:
Security implications
Has security impact - described as: deploying these bundles turns on inline-event collection for every existing
latest.jsandv12/app.jsinstallation, so the script begins readingdata-simple-event-*attribute values and submit-button label text from visitor pages and sending them as event metadata, and switches inline-event delivery to a credential-lesskeepalivefetch. Existing parameter filtering, ignored pages, namespaces, and collection settings continue to apply, and form field values are not collected.Testing
Run locally on Node 24.21.0 / pnpm 11.17.0:
pnpm install --frozen-lockfile— succeeded.pnpm run build— succeeded;git status --porcelainis empty afterwards, so the committed bundles reproduce exactly from source.pnpm run test:unit— 39 passing, 0 failing.pnpm run test:deploy— 12 passing, 0 failing.HEADER_PATTERNfromdeploy.mtsagainst the rebuilt headers — fails for every JavaScript artifact, becausecompile.jsemitsPrivacy-first analyticswhile the pattern expectsPrivacy friendly analytics.pnpm run deploywould throwInvalid script headerbefore uploading anything. Reported separately on this pull request.sourceMappingURLrewrites in thev12artifacts and confirmedlight.jscontains no inline-event, keepalive, or 404 code.BrowserStack is left to CI; remote results are tracked separately from this local verification.
Checklist