chore(release): prepare core 3.0.0 - #1354
Conversation
PR SummaryLow Risk Overview Version alignment: Out of scope (unchanged): kit manifests/lockfiles, Reviewed by Cursor Bugbot for commit d83b3e2. Bugbot is set up for automated code reviews on this repo. Configure here. |
4e86490 to
827d580
Compare
* feat: migrate amplitude * formatting * added job to build and run kit tests * align pull request workflow * slight pull request needs adjustments * add kits to release process * add homepage url * Revert "slight pull request needs adjustments" This reverts commit aaf8416. * reuse mockhttprequest from root * address @alexs-mparticle comments * add mparticle core dependency * only use root .gitignore * use root prettier * inherit from root eslintrc * cleanup kit directory readme * restore original readme * peerDependency already states mP Core * cleanup matrix * update to kit track package name * adjust semantic release to update kit versions in lock step * pass proper commit sha * unique artifact names and align jest matrix * add cleanup step for deleting release branch * publish kits upon success of core and fix issues in implementation * Configure dependabot for amplitude kit track * Update kits/README.md Co-authored-by: Robert Ing <rmi22186@gmail.com> * run format to fix ci * add canonical repo chart in readme * addressed @rmi22186 comments --------- Co-authored-by: Robert Ing <rmi22186@gmail.com>
* feat: migrate OneTrust kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to onetrust kit --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate Intercom kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to intercom kit --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate Optimizely kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to optimizely kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate Criteo kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to criteo kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate SimpleReach kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to simplereach kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate Dynamic Yield kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to dynamic-yield kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate Google Tag Manager kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to google-tag-manager kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate Rokt kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to rokt kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate Heap kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to heap kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate Inspectlet kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to inspectlet kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate KissMetrics kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to kissmetrics kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate DoubleClick kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to doubleclick kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate Adwords kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to adwords kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate Facebook kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to facebook kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate Taplytics kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to taplytics kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate Bing Ads kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to bingads kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate Adobe Target kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to adobe-target kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate Twitter kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to twitter kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate Device Match kit to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): apply prettier formatting to device-match kit * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate mparticle-javascript-integration-localytics-4 to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate mparticle-javascript-integration-id5-1 to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate mparticle-javascript-integration-leanplum-1 to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate mparticle-javascript-integration-mixpanel-2 to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate mparticle-javascript-integration-braze-3 to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate mparticle-javascript-integration-braze-4 to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate mparticle-javascript-integration-braze-5 to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * chore: revert matrix.json to base branch (will re-add kit entry separately) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate adobe kit to monorepo Migrates mparticle-javascript-integration-adobe into the web SDK monorepo under kits/adobe/. The Adobe kit uses a repo-level build and test orchestration — the root rollup.config.js concatenates AdobeSDKs vendor files with each package's source before bundling, and tests run from the root using Jest with MODULE env vars. The full repo structure is preserved under kits/adobe/ to keep this working correctly. Structure: - kits/adobe/packages/AdobeClient (@mparticle/web-adobe-client-kit v2.1.3) - kits/adobe/packages/AdobeServer (@mparticle/web-adobe-server-kit v2.1.2) - kits/adobe/HeartbeatKit - kits/adobe/AdobeSDKs (VisitorAPI.js, AppMeasurement.js) - kits/adobe/test (Jest tests for client + server) - Updated package.json repository field to point to monorepo - Added kits/adobe to kits/matrix.json for CI coverage Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): exclude adobe vendor files from prettier and kit tests from jest - Add kits/adobe/AdobeSDKs/ and babel.config.js to .prettierignore to exclude third-party vendor files from formatting checks - Add testPathIgnorePatterns to jest.config.js to prevent root jest runner from picking up kit test files (kits use karma, not jest) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): create dist directories before build in adobe kit Fresh git checkouts don't include empty dist/ directories (git doesn't track empty directories and .gitignore excludes dist/). Add mkdir -p to the build:client:* and build:server:* scripts so the build succeeds in a clean CI environment. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): add missing suffix to adobe server kit test config Server kit registers with suffix 'Server' creating key 'Adobe-Server' in mParticle's forwarder constructors map. Without suffix: 'Server' in the test kitConfig, configureUIEnabledKit cannot match the constructor and initForwarder is never called, causing all integration tests to fail. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * refactor(jest): narrow testPathIgnorePatterns to kits/adobe only Previously excluded all kits/ which was overly broad. Only the Adobe kit uses Jest (with test.js / server.test.js filenames that match Jest's default testMatch). Other kits use Karma and name their files tests.js (plural), so they don't need an explicit exclusion. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * refactor(jest): remove redundant node_modules from testPathIgnorePatterns Jest ignores node_modules by default; the explicit entry was unnecessary. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * refactor(adobe): align prettier config with root, add eslintrc root flag - Remove kits/adobe/.prettierrc so Adobe inherits root prettier settings. Only difference was trailingComma: "none" vs root's "es5"; Adobe source files reformatted accordingly (trailing commas added, no logic changes). - Update .prettierignore: remove kits/adobe/babel.config.js (no longer needed once trailing comma conflict is resolved); keep AdobeSDKs/ vendor exclusion. - Add "root": true to kits/adobe/.eslintrc to prevent ESLint from walking up to root config when run from within the kit directory. Part of ongoing effort to consolidate all configs at the repo root. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate google-analytics-4 kit to monorepo Migrates GA4Client and GA4Server packages from mparticle-javascript-integration-google-analytics-4 into the web SDK monorepo under kits/google-analytics-4/. - kits/google-analytics-4/ga4-client (@mparticle/web-google-analytics-4-client-kit v1.5.1) - kits/google-analytics-4/ga4-server (@mparticle/web-google-analytics-4-server-kit v1.0.3) - Updated package.json repository fields to point to monorepo - Added both kits to kits/matrix.json for CI coverage - Applied Prettier formatting to match monorepo code style conventions Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): add missing karma devDependencies to ga4-server The test script calls karma but karma was missing from devDependencies. Add karma and browser launcher packages to match the ga4-client kit. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): regenerate ga4-server package-lock.json with karma deps Updating package-lock.json to include karma and browser launcher packages added in the previous commit. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): pin chai to v4 for karma-chai compatibility in ga4-server karma-chai@0.1.0 requires chai v4's browser bundle at chai/chai.js. chai v6 changed its file structure, breaking that path. Pinning chai to ^4.2.0 restores the expected bundle location. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ga4): restore correct kit structure and consolidate matrix entry The original mparticle-javascript-integration-google-analytics-4 repo used a packages/GA4Client + packages/GA4Server layout with a root package.json orchestrator. The migration commit incorrectly flattened this to ga4-client/ and ga4-server/ at the top level and omitted the root package.json. This commit: - Moves ga4-client/ → packages/GA4Client/ (git mv, history preserved) - Moves ga4-server/ → packages/GA4Server/ (git mv, history preserved) - Updates repository.directory in each sub-kit's package.json - Adds root package.json with build/test scripts that delegate to each sub-package via npm --prefix - Adds root package-lock.json (no root deps; required for npm ci) - Collapses the two matrix entries into a single "Google Analytics 4" entry pointing to kits/google-analytics-4 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ga4): add missing root config files omitted from migration Restores the root-level config files that existed in the original mparticle-integrations/mparticle-javascript-integration-google-analytics-4 repo but were not included in the monorepo migration: - .eslintrc — eslint + prettier config (root: true) - .gitignore — ignores node_modules - .prettierrc — singleQuote, trailingComma: es5, tabWidth: 4 - README.md — usage docs for both client and server kits Also updates package.json description to match the original. The .github/workflows/ are omitted as the monorepo has its own CI. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(matrix): update kit matrix with all migrated kits and braze-6 Merges workstation/3.0-Release and adds all 28 kits to matrix.json: - Braze 3/4/5 (merged), Braze 6 (open PR) - Adobe Target, Adwords, Amplitude 8, Bing Ads - Criteo, Device Match, DoubleClick, Dynamic Yield - Facebook, Google Tag Manager, Heap, ID5 1 - Inspectlet, Intercom, KissMetrics, Leanplum 1 - Localytics 4, Mixpanel 2, OneTrust, Optimizely - Rokt, SimpleReach, Taplytics, Twitter Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix: correct iife filename typo in KissMetrics rollup config Fixes output filename from KissMetricsForwarder.iffe.js to KissMetricsForwarder.iife.js. Made-with: Cursor * remove dist from root gitignore * Revert "remove dist from root gitignore" This reverts commit 2b12aca. * chore(matrix): remove braze-6 until PR #1194 merges --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: migrate mparticle-javascript-integration-braze-6 to monorepo Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(ci): update braze-6 package-lock.json to resolve @braze/web-sdk@6.5.0 Lock file was out of sync — still pinned to 5.5.0 while package.json requires ^6.0.0. Regenerated with npm install --package-lock-only. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * chore: revert matrix.json to base branch (will re-add kit entry separately) * chore(matrix): add braze-6 to kit matrix * fix(braze-6): update bundle name and suffix from v5 to v6 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
…1314) * breaking: remove deprecated logCheckout, logPurchase, and logRefund methods These deprecated eCommerce methods have been removed in favor of logProductAction which provides the same functionality with a more flexible API. Users should migrate to logProductAction with the appropriate ProductActionType (Checkout, Purchase, Refund). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * test: add equivalent tests using logProductAction for removed deprecated methods Adds tests that replace removed logCheckout/logPurchase/logRefund tests with equivalent coverage using logProductAction: - Full DTO validation for purchase and refund events - Badly formed ecommerce input sanitization - Array of products support for purchase and refund - Product position null handling - Expand commerce events with/without summary total (plus-one) - CustomFlags for checkout, purchase, and refund actions - Native SDK bridge product list serialization (Android + iOS) - Clarified expand test names with plus-one context comments Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * breaking: remove deprecated cart API The cart API has been deprecated for a long time and only logged deprecation warnings. This removes it entirely. Removed public APIs: - mParticle.eCommerce.Cart.add/remove/clear - mParticle.Identity.getCurrentUser().getCart() - mParticle.Identity.getCurrentUser().getCart().add/remove/clear/getCartProducts Also removed: - SDKCart, ICart, SDKShoppingCart, mParticleUserCart interfaces - ShoppingCart from SDK event model and server DTO conversion - convertShoppingCart from events API converter - NativeSdkPaths for AddToCart/RemoveFromCart/ClearCart - maxProducts config option - Cart product storage name constants Users should use mParticle.eCommerce.logProductAction() with ProductActionType.AddToCart or ProductActionType.RemoveFromCart instead. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * refactor: remove dead buildProductList and clean up leftover cart test code - Remove buildProductList from ecommerce.js and its interface (no remaining callers after logPurchaseEvent/logRefundEvent removal) - Remove empty "should return an empty array when no cart products exist" test that had no assertions - Remove orphaned product1/checkProduct code in stub tests Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * fix: keep deprecated logPurchase while removing unused commerce APIs Datadog shows mParticle.logPurchase is still reported in production, so retain it while removing logCheckout, logRefund, and the cart API. * docs: clarify logPurchase deprecation replacement Point JSDoc @deprecated and runtime warning at logProductAction with ProductActionType.Purchase so IDEs and console logs show the migration path. * fix: restore event interface method ordering Keep logPromotionEvent in its original position while retaining the intended deprecated commerce API removals. * test: restore checkout expansion attribute coverage * test: retain logPurchase public API coverage Keep the retained deprecated method in the exact API key assertion and exercise its stub so tests match the intended public surface. --------- Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* breaking: remove deprecated removeCCPAState method Remove the deprecated `removeCCPAState` method and associated code/tests. Users should use `removeCCPAConsentState` instead. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * refactor: remove redundant IConsentState interface IConsentState was an empty extension of ConsentState that added no properties. Replace usages with ConsentState directly. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * refactor: remove unnecessary cast in createConsentState The TODO indicated this cast should be removed once removeCCPAState was removed. Since removeCCPAState is being removed in this PR, the cast is no longer needed. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * refactor: remove unused deprecatedMethodLogger import from consent --------- Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix: contain cookie sync pixel errors so public API calls cannot throw * test: skip window.screen delete test on EdgeHTML and restore screen safely * ci: add BrowserStack job timeout, run concurrency, and karma capture timeouts * test: raise waitForCondition and BrowserStack mocha timeouts to deflake slow VMs * ci: pin BrowserStack sessions to the workflow tunnel via local identifier * test: wait for in-flight identify before retrying failed-config core SDK spec Firefox 51 on BrowserStack timed out because init's 400 identify was still in flight when the spec issued a second identify. Raise mocha timeout so several waitForCondition polls fit in one spec. * ci: share BrowserStack concurrency group across push and pull_request github.ref differs for those events, so the previous group still allowed two matrices for the same branch to contend for BrowserStack sessions. * style: shorten BrowserStack and EdgeHTML comments to 1-2 lines * fix(ci): use karma-browserstack-launcher localIdentifier key The dotted browserstack.localIdentifier key is ignored by the launcher, so CI sessions were not pinned to the workflow tunnel. * ci: drop legacy EdgeHTML 15 from the BrowserStack matrix Edge 15–18 is ~0.02% share. Keep Chromium Edge in the beta workflow. * test: wait for all instance cookies in multi-instance BrowserStack spec Firefox 153 on Windows failed because the spec only waited on the default instance. Cap the beta workflow at 30 minutes and pin its tunnel. * refactor(ci): share BrowserStack karma settings to clear sonar duplication * revert: drop EdgeHTML source and test workarounds after removing Edge 15
* feat: sync Rokt kit with upstream v1.35.0 Bring the monorepo kit to the latest standalone release while preserving v3 packaging metadata. * fix(rokt): stringify UTM selectPlacements attributes Co-authored-by: Cris Ryan Tan <crisryantan@gmail.com> --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Drop master's ShoppingCart webview wipe and the extra cart closer so v3 API removals stay gone, and restore the logPurchase deprecation import so the TS build matches origin/main.
0ad6ea0 to
d83b3e2
Compare
jaissica12
left a comment
There was a problem hiding this comment.
#1314 already removed logCheckout / logRefund / cart / getCart from source (feat: remove unused deprecated cart/commerce APIs (keep logPurchase)). That PR did not regenerate dist/mparticle.js, so the checked-in IIFE still contains those APIs.
This branch only rewrites 2.80.1 → 3.0.0 in package.json and the existing bundle. dist/mparticle.js still has logCheckout: (same stale IIFE #1314 left behind). Shipping this as 3.0.0 would label a v3 release while the CDN file still exposes the removed methods.
|
@jaissica12 Good catch — addressed in 4a220d4. The bundles (plus stub and
Remaining Note for the record: the stale IIFE was never going to reach the CDN — the release workflow builds fresh from source — but the checked-in artifact mislabeling a v3 was real and is now fixed. Jest (28 suites / 694 tests) and the full kit matrix were green on the parent commit; checks are re-running on this one. |
|
fdf9e81 to
04a96ce
Compare



Background
This is stage 1 of the manual 3.0.0 bootstrap release. It prepares the core
@mparticle/web-sdkpackage without publishing, tagging, creating a GitHub release, or changing npm dist-tags.After this PR merges, the core package must be manually published under the
nextdist-tag before the kit lockfiles can resolve core 3.0.0. Kit manifest and lockfile updates belong to the subsequent stage.What Has Changed
3.0.0.src/constants.ts's package-derived SDK version: IIFE, CommonJS, and ESM.CHANGELOG.mdunchanged. Standard releases generate it through semantic-release; release notes/changelog preparation remains a manual-release prerequisite for this bootstrap.Generated Artifact Scope
A full build was run and inspected. The stub and declaration outputs do not embed the core package version, and their generated differences reflected unrelated pre-existing source/artifact drift, so they are intentionally excluded. The committed runtime bundle diffs contain only
2.79.0to3.0.0version substitutions.Validation
origin/mainexactly7dc7adbe5c8fd157baccd25c2eecdb7d88925461.npm ci.npm run lint.npm run prettier.npm run build(completed successfully; the repository'sbuild:typescommand emitted its existing declaration diagnostics, which it explicitly tolerates while verifying required declarations exist).npm run test:jest— 26 suites, 628 tests passed.npm test— 2,138 Chrome/Firefox executions passed.npm run test:stub— 5 passed.npm run test:integrations— RequireJS plus Browserify, Webpack, and Rollup CJS/ESM suites passed in Chrome and Firefox.mParticle.getVersion()returned3.0.0; IIFE, CommonJS, and ESM bundles each contain the authoritative3.0.0version constant and no2.79.0version constant.npm pack --dry-run --jsonreported@mparticle/web-sdk@3.0.0, 127 files, and all required runtime/type/source entries.git diff --checkpassed; no kit package manifest or lockfile changed.Publication
No publication occurs in this PR. No
v3.0.0tag, GitHub release, npm publication, or npm dist-tag change has been created.