Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
7e6549b
feat: fetch events-config from config registry in AnalyticsController
gauthierpetetin Sep 24, 2026
bed3d8f
Merge branch 'main' into feat/analytics-controller-fetch-events-config
gauthierpetetin Sep 24, 2026
f853575
fix: address CI failures from events-config PR
gauthierpetetin Sep 24, 2026
0861b0f
fix: address CI failures from events-config PR
gauthierpetetin Sep 24, 2026
1fc1660
fix: address remaining CI failures
gauthierpetetin Sep 24, 2026
6a438fc
fix: update yarn.lock after dependency change in analytics-controller
gauthierpetetin Sep 24, 2026
4ea721d
fix: update wallet configRegistryController tests for new state fields
gauthierpetetin Sep 24, 2026
3660b24
refactor: improve events config error test names for clarity
gauthierpetetin Sep 24, 2026
dcf4812
fix: address code review findings
gauthierpetetin Sep 24, 2026
4b8e42e
fix: consolidate analytics-controller changelog into single entry
gauthierpetetin Sep 24, 2026
df6be42
fix: address PR review comments
gauthierpetetin Sep 24, 2026
87a045d
fix: make eventsConfigEtag optional in ConfigRegistryControllerState
gauthierpetetin Sep 24, 2026
9ca2b4d
docs: document breaking AllowedActions change in analytics-controller…
gauthierpetetin Sep 25, 2026
70017d6
docs: document breaking AllowedActions change in config-registry-cont…
gauthierpetetin Sep 25, 2026
c545852
fix: isolate events-config circuit breaker from networks policy
gauthierpetetin Sep 25, 2026
25a27ab
feat: expose onEventsConfigRetry/Break/Degraded hooks for events-conf…
gauthierpetetin Sep 25, 2026
f7635b5
docs: consolidate changelog entries into single lines per package
gauthierpetetin Sep 25, 2026
ad46e99
fix: move MOCK_EVENTS_CONFIG_RESPONSE before first use to fix ESLint …
gauthierpetetin Sep 25, 2026
5a14ea0
test: align eventsConfig version string with other tests
gauthierpetetin Sep 25, 2026
314dad5
feat: refresh events config on ConfigRegistryController state change
gauthierpetetin Sep 25, 2026
e6352e6
fix: compare eventsConfig version to skip redundant refreshes
gauthierpetetin Sep 25, 2026
8219532
Merge remote-tracking branch 'origin/main' into feat/analytics-contro…
gauthierpetetin Sep 25, 2026
13f9fa0
fix: resolve oxlint and prettier violations
gauthierpetetin Sep 25, 2026
cf7e1a2
fix: format oxlint-suppressions.json
gauthierpetetin Sep 25, 2026
182835e
docs: update changelog, README, and JSDoc for events-config integration
gauthierpetetin Sep 25, 2026
52a5e78
fix: remove istanbul ignore comment and unsafe-assignment suppressions
gauthierpetetin Sep 25, 2026
271ffbb
fix: restore istanbul ignore next on unreachable catch callback
gauthierpetetin Sep 25, 2026
152f586
chore: resolve merge conflict in analytics-controller CHANGELOG.md
gauthierpetetin Sep 29, 2026
e9fb652
fix: revert incorrect v... URL format in analytics-controller CHANGEL…
gauthierpetetin Sep 29, 2026
06bf5a3
Merge branch 'main' into feat/analytics-controller-fetch-events-config
NicolasMassart Sep 29, 2026
85a9157
docs: add wallet CHANGELOG entry for fetchEventsConfig wiring
gauthierpetetin Sep 29, 2026
d1237cf
Update packages/analytics-controller/CHANGELOG.md
gauthierpetetin Sep 30, 2026
8c4531f
Update packages/config-registry-controller/CHANGELOG.md
gauthierpetetin Sep 30, 2026
c1faff2
docs: update wallet CHANGELOG entry for fetchEventsConfig to BREAKING
gauthierpetetin Sep 30, 2026
0a6958b
docs: fix duplicate Changed section in analytics-controller CHANGELOG
gauthierpetetin Sep 30, 2026
c0ae7f9
refactor: remove try/catch from ConfigRegistryController wiring in An…
gauthierpetetin Sep 30, 2026
24f6528
Merge remote-tracking branch 'origin/main' into feat/analytics-contro…
gauthierpetetin Sep 30, 2026
338e193
fix: add return type to test helper and fix duplicate CHANGELOG section
gauthierpetetin Sep 30, 2026
b477bb5
docs: restore wallet CHANGELOG entry under Unreleased after rebase
gauthierpetetin Sep 30, 2026
19708d7
fix: use AnalyticsPurpose enum values in test event config fixtures
gauthierpetetin Sep 30, 2026
cfdb673
Update packages/wallet/CHANGELOG.md
gauthierpetetin Sep 30, 2026
a54d3b9
refactor: use single policy for both endpoints in ConfigRegistryApiSe…
gauthierpetetin Sep 30, 2026
55da180
Merge remote-tracking branch 'origin/main' into feat/analytics-contro…
gauthierpetetin Oct 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -271,6 +271,7 @@ linkStyle default opacity:0.5
ai_controllers --> base_controller;
ai_controllers --> messenger;
analytics_controller --> base_controller;
analytics_controller --> config_registry_controller;
analytics_controller --> geolocation_controller;
analytics_controller --> messenger;
analytics_controller --> utils;
Expand Down
10 changes: 0 additions & 10 deletions oxlint-suppressions.json
Original file line number Diff line number Diff line change
Expand Up @@ -2452,16 +2452,6 @@
"count": 1
}
},
"packages/config-registry-controller/src/config-registry-api-service/config-registry-api-service.test.ts": {
"typescript/no-unsafe-assignment": {
"count": 6
}
},
"packages/config-registry-controller/src/config-registry-api-service/config-registry-api-service.ts": {
"typescript/no-unsafe-assignment": {
"count": 1
}
},
"packages/connectivity-controller/jest.config.cjs": {
"import/unambiguous": {
"count": 1
Expand Down
3 changes: 3 additions & 0 deletions packages/analytics-controller/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Changed

- **BREAKING:** `AnalyticsControllerMessenger` requires `ConfigRegistryController:getState` in its allowed actions and `ConfigRegistryController:stateChanged` in its allowed events ([#10448](https://github.com/MetaMask/core/pull/10448))
- Update `AnalyticsController.init` to listen for ConfigRegistryController state changes and update in-memory event-purpose classification when the version differs ([#10448](https://github.com/MetaMask/core/pull/10448))
- Add `@metamask/config-registry-controller` `^4.0.0` as a dependency ([#10448](https://github.com/MetaMask/core/pull/10448))
- Bump `lodash-es` from `^4.17.21` to `^4.18.1` ([#10447](https://github.com/MetaMask/core/pull/10447))

## [3.2.0]
Expand Down
2 changes: 1 addition & 1 deletion packages/analytics-controller/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ The AnalyticsController provides a unified interface for tracking analytics even
3. **Subscribe to state changes**: Persist changes to isolated storage
4. **Persist to isolated storage**: Keep analytics settings separate from main state (protects against state corruption)

`eventsConfig.events` maps event names to one or both `AnalyticsPurpose` values (`product` and `marketing`). Unlisted names default to product-only. Phase 1 uses the config already persisted in state. Loading it from config registry will be added later.
`eventsConfig.events` maps event names to one or both `AnalyticsPurpose` values (`product` and `marketing`). Unlisted names default to product-only. The config is loaded from `ConfigRegistryController` state during `init` and refreshed automatically when `ConfigRegistryController` state changes.

Each `track` and `view` payload is emitted once when at least one eligible purpose is opted in. A dual-purpose event is still emitted once when both consents are enabled. Its allowed purposes are stamped using Segment's consent context:

Expand Down
1 change: 1 addition & 0 deletions packages/analytics-controller/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@
},
"dependencies": {
"@metamask/base-controller": "^10.0.0",
"@metamask/config-registry-controller": "^4.0.0",
"@metamask/geolocation-controller": "^2.0.0",
"@metamask/messenger": "^3.0.0",
"@metamask/utils": "^12.0.0",
Expand Down
Loading
Loading