Skip to content

feat(bridge): emit SwapBridge failure_phase, error_code, and hash presence - #9949

Open
Battambang wants to merge 6 commits into
feat/WPN-1877-failure-telemetry-schemafrom
feat/WPN-1877-emit-failure-telemetry
Open

feat(bridge): emit SwapBridge failure_phase, error_code, and hash presence#9949
Battambang wants to merge 6 commits into
feat/WPN-1877-failure-telemetry-schemafrom
feat/WPN-1877-emit-failure-telemetry

Conversation

@Battambang

@Battambang Battambang commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Explanation

Stacked on #9947 (schema + classifiers only). This PR emits the new Mixpanel fields so Failed is no longer a blended "on-chain" rate. Every value comes from the code path and hash presence, never from error_message.

What each event emits

Event Emitted by What we emit
Quotes Error bridge-controller failure_phase=quote, error_code from getQuoteFetchErrorCode(error)
Failed (submit catch, before executeSubmitStrategy) bridge-status-controller getSubmitFailureTelemetry(error)broadcast, both hash flags false
Failed (EVM tx meta) bridge-status-controller source_execution when the tx has a hash, else broadcast; error_code unknown when the tx carries an error, else missing_error_object
Failed (status poll) bridge-status-controller destination_execution > source_execution > poll, from history src/dest hashes
Submitted bridge-status-controller both hash flags false (emit is still before the submit strategy)
Completed bridge-status-controller hash flags from bridge history src/dest hashes

Also added

promoteFailurePhase (new in bridge-status-controller/src/utils/metrics.ts) reconciles the phase reported by the emitting path with the combined hash presence — history flags OR-ed with any caller-supplied flags. It upgrades to destination_execution on a dest hash and to source_execution on a source hash, but only from broadcast / poll / unknown, so a genuine no-hash broadcast failure is never reclassified as poll.

On Failed, a caller-supplied failure_phase wins over the status-derived one, and its error_code is kept (defaulting to unknown); when the caller supplies no phase, both come from getStatusFailureTelemetry.

Ownership

bridge-status-controller owns submit, poll, and EVM emit. bridge-controller owns Quotes Error and the Failed property defaults — when a client omits them, Failed falls back to failure_phase=unknown, error_code=unknown, and both hash flags false, so the properties are always present in the payload.

After #9947 merges, retarget this PR to main.

References

Checklist

  • I've updated the test suite for new or updated code as appropriate
  • I've updated documentation (JSDoc, Markdown, etc.) for new or updated code as appropriate
  • I've communicated my changes to consumers by updating changelogs for packages I've changed
  • I've introduced breaking changes in this PR and have prepared draft pull requests for clients and consumer packages to resolve them

Note

Low Risk
Additive Mixpanel/telemetry fields only; no changes to swap submission, signing, or funds handling.

Overview
Wires up the SwapBridge failure telemetry schema from #9947 so Unified SwapBridge analytics events carry structured failure_phase, error_code, and source_hash_present / destination_hash_present instead of inferring failure from free-text error_message.

bridge-controller sets failure_phase=quote and a path-derived error_code on Quotes Error (via getQuoteFetchErrorCode at fetch time and defaults in the event builder). Failed events tracked from the client get explicit defaults (unknown phase/code, hash flags false) when omitted.

bridge-status-controller attaches hash flags on Submitted (false at emit), Completed (from bridge history), and Failed (submit catch uses getSubmitFailureTelemetry; status/history paths use getStatusFailureTelemetry plus promoteFailurePhase to align phase with combined hash presence). EVM tx-meta failure properties now include hash presence and broadcast vs source_execution phase.

Changelogs and test snapshots are updated for the new payload fields.

Reviewed by Cursor Bugbot for commit b13d916. Bugbot is set up for automated code reviews on this repo. Configure here.

@Battambang
Battambang marked this pull request as ready for review August 25, 2026 10:02
@Battambang
Battambang requested review from a team as code owners August 25, 2026 10:02
@Battambang
Battambang deployed to default-branch August 25, 2026 10:02 — with GitHub Actions Active

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 0ac995f. Configure here.

Comment thread packages/bridge-status-controller/src/bridge-status-controller.ts
@cursor
cursor Bot requested review from infiniteflower and micaelae August 25, 2026 10:07
@Battambang

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@github-actions

Copy link
Copy Markdown
Contributor

Preview builds have been published. Learn how to use preview builds in other projects.

Expand for full list of packages and versions.
@metamask-previews/account-tree-controller@8.0.0-preview-0ac995fe6
@metamask-previews/accounts-controller@39.1.0-preview-0ac995fe6
@metamask-previews/address-book-controller@7.1.2-preview-0ac995fe6
@metamask-previews/ai-controllers@0.8.0-preview-0ac995fe6
@metamask-previews/analytics-controller@2.0.0-preview-0ac995fe6
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-0ac995fe6
@metamask-previews/announcement-controller@8.1.0-preview-0ac995fe6
@metamask-previews/app-metadata-controller@2.0.1-preview-0ac995fe6
@metamask-previews/approval-controller@9.0.2-preview-0ac995fe6
@metamask-previews/assets-controller@14.0.0-preview-0ac995fe6
@metamask-previews/assets-controllers@111.1.1-preview-0ac995fe6
@metamask-previews/authenticated-user-storage@3.0.1-preview-0ac995fe6
@metamask-previews/base-controller@9.1.0-preview-0ac995fe6
@metamask-previews/base-data-service@0.1.3-preview-0ac995fe6
@metamask-previews/bitcoin-regtest-up@1.0.0-preview-0ac995fe6
@metamask-previews/bridge-controller@79.3.0-preview-0ac995fe6
@metamask-previews/bridge-status-controller@75.2.0-preview-0ac995fe6
@metamask-previews/build-utils@3.0.4-preview-0ac995fe6
@metamask-previews/chain-agnostic-permission@1.7.0-preview-0ac995fe6
@metamask-previews/chomp-api-service@4.0.0-preview-0ac995fe6
@metamask-previews/claims-controller@0.6.0-preview-0ac995fe6
@metamask-previews/client-controller@1.0.1-preview-0ac995fe6
@metamask-previews/client-utils@2.1.0-preview-0ac995fe6
@metamask-previews/compliance-controller@2.1.0-preview-0ac995fe6
@metamask-previews/composable-controller@12.0.1-preview-0ac995fe6
@metamask-previews/config-registry-controller@3.0.0-preview-0ac995fe6
@metamask-previews/connectivity-controller@0.3.0-preview-0ac995fe6
@metamask-previews/controller-utils@12.3.0-preview-0ac995fe6
@metamask-previews/core-backend@8.1.2-preview-0ac995fe6
@metamask-previews/delegation-controller@3.0.2-preview-0ac995fe6
@metamask-previews/earn-controller@12.2.5-preview-0ac995fe6
@metamask-previews/eip-5792-middleware@3.0.5-preview-0ac995fe6
@metamask-previews/eip-7702-internal-rpc-middleware@0.1.1-preview-0ac995fe6
@metamask-previews/eip1193-permission-middleware@2.0.1-preview-0ac995fe6
@metamask-previews/eth-block-tracker@15.0.1-preview-0ac995fe6
@metamask-previews/eth-json-rpc-middleware@24.0.0-preview-0ac995fe6
@metamask-previews/eth-json-rpc-provider@6.0.1-preview-0ac995fe6
@metamask-previews/foundryup@1.0.1-preview-0ac995fe6
@metamask-previews/gas-fee-controller@26.3.1-preview-0ac995fe6
@metamask-previews/gator-permissions-controller@5.0.1-preview-0ac995fe6
@metamask-previews/geolocation-controller@1.0.0-preview-0ac995fe6
@metamask-previews/java-tron-up@1.0.0-preview-0ac995fe6
@metamask-previews/json-rpc-engine@10.5.0-preview-0ac995fe6
@metamask-previews/json-rpc-middleware-stream@8.0.8-preview-0ac995fe6
@metamask-previews/keyring-controller@27.1.1-preview-0ac995fe6
@metamask-previews/kyc-controller@0.0.0-preview-0ac995fe6
@metamask-previews/local-node-utils@1.0.0-preview-0ac995fe6
@metamask-previews/logging-controller@9.0.0-preview-0ac995fe6
@metamask-previews/message-manager@14.1.2-preview-0ac995fe6
@metamask-previews/messenger@2.0.0-preview-0ac995fe6
@metamask-previews/messenger-cli@0.2.0-preview-0ac995fe6
@metamask-previews/money-account-api-data-service@0.4.0-preview-0ac995fe6
@metamask-previews/money-account-balance-service@2.4.1-preview-0ac995fe6
@metamask-previews/money-account-controller@1.0.0-preview-0ac995fe6
@metamask-previews/money-account-upgrade-controller@3.0.1-preview-0ac995fe6
@metamask-previews/money-account-utils@1.1.0-preview-0ac995fe6
@metamask-previews/multichain-account-service@13.0.2-preview-0ac995fe6
@metamask-previews/multichain-api-middleware@4.0.2-preview-0ac995fe6
@metamask-previews/multichain-network-controller@3.2.3-preview-0ac995fe6
@metamask-previews/multichain-transactions-controller@7.1.2-preview-0ac995fe6
@metamask-previews/name-controller@9.1.2-preview-0ac995fe6
@metamask-previews/network-connection-banner-controller@0.2.0-preview-0ac995fe6
@metamask-previews/network-controller@35.0.1-preview-0ac995fe6
@metamask-previews/network-enablement-controller@6.0.4-preview-0ac995fe6
@metamask-previews/notification-services-controller@26.0.1-preview-0ac995fe6
@metamask-previews/passkey-controller@3.0.0-preview-0ac995fe6
@metamask-previews/permission-controller@13.1.1-preview-0ac995fe6
@metamask-previews/permission-log-controller@5.1.0-preview-0ac995fe6
@metamask-previews/perps-controller@12.2.0-preview-0ac995fe6
@metamask-previews/phishing-controller@17.3.1-preview-0ac995fe6
@metamask-previews/platform-api-docs@0.0.0-preview-0ac995fe6
@metamask-previews/polling-controller@16.0.9-preview-0ac995fe6
@metamask-previews/preferences-controller@23.1.0-preview-0ac995fe6
@metamask-previews/profile-metrics-controller@4.0.3-preview-0ac995fe6
@metamask-previews/profile-sync-controller@29.0.0-preview-0ac995fe6
@metamask-previews/ramps-controller@20.0.0-preview-0ac995fe6
@metamask-previews/rate-limit-controller@7.0.1-preview-0ac995fe6
@metamask-previews/react-data-query@0.2.2-preview-0ac995fe6
@metamask-previews/remote-feature-flag-controller@6.0.0-preview-0ac995fe6
@metamask-previews/sample-controllers@5.0.4-preview-0ac995fe6
@metamask-previews/seedless-onboarding-controller@10.1.1-preview-0ac995fe6
@metamask-previews/selected-network-controller@26.1.6-preview-0ac995fe6
@metamask-previews/sentinel-api-service@1.0.0-preview-0ac995fe6
@metamask-previews/shield-controller@6.0.0-preview-0ac995fe6
@metamask-previews/signature-controller@39.2.9-preview-0ac995fe6
@metamask-previews/smart-transactions-controller@25.1.0-preview-0ac995fe6
@metamask-previews/snap-account-service@2.1.2-preview-0ac995fe6
@metamask-previews/social-controllers@2.7.1-preview-0ac995fe6
@metamask-previews/solana-test-validator-up@1.0.0-preview-0ac995fe6
@metamask-previews/stellar-quickstart-up@0.0.0-preview-0ac995fe6
@metamask-previews/storage-service@1.0.2-preview-0ac995fe6
@metamask-previews/subscription-controller@8.0.0-preview-0ac995fe6
@metamask-previews/transaction-controller@69.5.2-preview-0ac995fe6
@metamask-previews/transaction-pay-controller@26.4.1-preview-0ac995fe6
@metamask-previews/user-operation-controller@41.2.8-preview-0ac995fe6
@metamask-previews/wallet@12.0.1-preview-0ac995fe6
@metamask-previews/wallet-cli@0.0.0-preview-0ac995fe6

@Battambang
Battambang force-pushed the feat/WPN-1877-emit-failure-telemetry branch from 70a6371 to 18c3a0d Compare August 26, 2026 12:21
@Battambang

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@github-actions

Copy link
Copy Markdown
Contributor

Preview builds have been published. Learn how to use preview builds in other projects.

Expand for full list of packages and versions.
@metamask-previews/account-tree-controller@8.0.0-preview-264a60683
@metamask-previews/accounts-controller@39.1.1-preview-264a60683
@metamask-previews/address-book-controller@7.1.2-preview-264a60683
@metamask-previews/ai-controllers@0.8.0-preview-264a60683
@metamask-previews/analytics-controller@2.0.0-preview-264a60683
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-264a60683
@metamask-previews/announcement-controller@8.1.0-preview-264a60683
@metamask-previews/app-metadata-controller@2.0.1-preview-264a60683
@metamask-previews/approval-controller@9.0.2-preview-264a60683
@metamask-previews/assets-controller@14.0.2-preview-264a60683
@metamask-previews/assets-controllers@111.1.3-preview-264a60683
@metamask-previews/authenticated-user-storage@3.0.2-preview-264a60683
@metamask-previews/base-controller@9.1.0-preview-264a60683
@metamask-previews/base-data-service@1.0.0-preview-264a60683
@metamask-previews/bitcoin-regtest-up@1.0.0-preview-264a60683
@metamask-previews/bridge-controller@79.3.1-preview-264a60683
@metamask-previews/bridge-status-controller@75.2.1-preview-264a60683
@metamask-previews/build-utils@3.0.4-preview-264a60683
@metamask-previews/chain-agnostic-permission@1.7.0-preview-264a60683
@metamask-previews/chomp-api-service@4.0.1-preview-264a60683
@metamask-previews/claims-controller@0.6.1-preview-264a60683
@metamask-previews/client-controller@1.0.1-preview-264a60683
@metamask-previews/client-utils@2.1.1-preview-264a60683
@metamask-previews/compliance-controller@2.1.0-preview-264a60683
@metamask-previews/composable-controller@12.0.1-preview-264a60683
@metamask-previews/config-registry-controller@3.1.0-preview-264a60683
@metamask-previews/connectivity-controller@0.3.0-preview-264a60683
@metamask-previews/controller-utils@12.3.0-preview-264a60683
@metamask-previews/core-backend@9.0.0-preview-264a60683
@metamask-previews/delegation-controller@3.0.2-preview-264a60683
@metamask-previews/earn-controller@12.2.6-preview-264a60683
@metamask-previews/eip-5792-middleware@3.0.5-preview-264a60683
@metamask-previews/eip-7702-internal-rpc-middleware@0.1.1-preview-264a60683
@metamask-previews/eip1193-permission-middleware@2.0.1-preview-264a60683
@metamask-previews/eth-block-tracker@15.0.1-preview-264a60683
@metamask-previews/eth-json-rpc-middleware@24.0.1-preview-264a60683
@metamask-previews/eth-json-rpc-provider@6.0.1-preview-264a60683
@metamask-previews/foundryup@1.0.1-preview-264a60683
@metamask-previews/gas-fee-controller@26.3.2-preview-264a60683
@metamask-previews/gator-permissions-controller@5.0.2-preview-264a60683
@metamask-previews/geolocation-controller@1.0.0-preview-264a60683
@metamask-previews/java-tron-up@1.0.0-preview-264a60683
@metamask-previews/json-rpc-engine@10.5.0-preview-264a60683
@metamask-previews/json-rpc-middleware-stream@8.0.8-preview-264a60683
@metamask-previews/keyring-controller@27.1.1-preview-264a60683
@metamask-previews/kyc-controller@0.0.0-preview-264a60683
@metamask-previews/local-node-utils@1.0.0-preview-264a60683
@metamask-previews/logging-controller@9.0.0-preview-264a60683
@metamask-previews/message-manager@14.1.2-preview-264a60683
@metamask-previews/messenger@2.0.0-preview-264a60683
@metamask-previews/messenger-cli@0.2.0-preview-264a60683
@metamask-previews/money-account-api-data-service@0.4.1-preview-264a60683
@metamask-previews/money-account-balance-service@2.4.3-preview-264a60683
@metamask-previews/money-account-controller@1.0.0-preview-264a60683
@metamask-previews/money-account-upgrade-controller@3.0.2-preview-264a60683
@metamask-previews/money-account-utils@1.1.0-preview-264a60683
@metamask-previews/multichain-account-service@13.0.2-preview-264a60683
@metamask-previews/multichain-api-middleware@4.0.3-preview-264a60683
@metamask-previews/multichain-network-controller@3.2.4-preview-264a60683
@metamask-previews/multichain-transactions-controller@7.1.2-preview-264a60683
@metamask-previews/name-controller@9.1.2-preview-264a60683
@metamask-previews/network-connection-banner-controller@0.2.1-preview-264a60683
@metamask-previews/network-controller@36.0.0-preview-264a60683
@metamask-previews/network-enablement-controller@6.0.5-preview-264a60683
@metamask-previews/notification-services-controller@26.0.1-preview-264a60683
@metamask-previews/passkey-controller@3.1.0-preview-264a60683
@metamask-previews/permission-controller@13.1.1-preview-264a60683
@metamask-previews/permission-log-controller@5.1.0-preview-264a60683
@metamask-previews/perps-controller@12.2.0-preview-264a60683
@metamask-previews/phishing-controller@17.4.0-preview-264a60683
@metamask-previews/platform-api-docs@0.0.0-preview-264a60683
@metamask-previews/polling-controller@16.0.9-preview-264a60683
@metamask-previews/preferences-controller@23.1.0-preview-264a60683
@metamask-previews/profile-metrics-controller@4.0.3-preview-264a60683
@metamask-previews/profile-sync-controller@29.0.0-preview-264a60683
@metamask-previews/ramps-controller@20.0.0-preview-264a60683
@metamask-previews/rate-limit-controller@7.0.1-preview-264a60683
@metamask-previews/react-data-query@1.0.0-preview-264a60683
@metamask-previews/remote-feature-flag-controller@6.0.0-preview-264a60683
@metamask-previews/sample-controllers@5.0.6-preview-264a60683
@metamask-previews/seedless-onboarding-controller@10.1.1-preview-264a60683
@metamask-previews/selected-network-controller@26.1.7-preview-264a60683
@metamask-previews/sentinel-api-service@1.0.1-preview-264a60683
@metamask-previews/shield-controller@6.0.1-preview-264a60683
@metamask-previews/signature-controller@39.2.10-preview-264a60683
@metamask-previews/smart-transactions-controller@25.1.1-preview-264a60683
@metamask-previews/snap-account-service@2.1.2-preview-264a60683
@metamask-previews/social-controllers@2.7.2-preview-264a60683
@metamask-previews/solana-test-validator-up@1.0.0-preview-264a60683
@metamask-previews/stellar-quickstart-up@0.0.0-preview-264a60683
@metamask-previews/storage-service@1.0.2-preview-264a60683
@metamask-previews/subscription-controller@8.0.1-preview-264a60683
@metamask-previews/transaction-controller@69.6.1-preview-264a60683
@metamask-previews/transaction-pay-controller@27.0.0-preview-264a60683
@metamask-previews/user-operation-controller@41.2.9-preview-264a60683
@metamask-previews/wallet@12.0.2-preview-264a60683
@metamask-previews/wallet-cli@0.0.0-preview-264a60683

@Battambang
Battambang force-pushed the feat/WPN-1877-emit-failure-telemetry branch 2 times, most recently from e405382 to 9fa5c93 Compare August 27, 2026 16:17
@Battambang

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@github-actions

Copy link
Copy Markdown
Contributor

Preview builds have been published. Learn how to use preview builds in other projects.

Expand for full list of packages and versions.
@metamask-previews/account-tree-controller@8.0.0-preview-add047418
@metamask-previews/accounts-controller@39.1.1-preview-add047418
@metamask-previews/address-book-controller@7.1.2-preview-add047418
@metamask-previews/ai-controllers@0.8.0-preview-add047418
@metamask-previews/analytics-controller@2.0.0-preview-add047418
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-add047418
@metamask-previews/announcement-controller@8.1.0-preview-add047418
@metamask-previews/app-metadata-controller@2.0.1-preview-add047418
@metamask-previews/approval-controller@9.0.2-preview-add047418
@metamask-previews/assets-controller@14.0.2-preview-add047418
@metamask-previews/assets-controllers@111.1.3-preview-add047418
@metamask-previews/authenticated-user-storage@3.0.2-preview-add047418
@metamask-previews/base-controller@9.1.0-preview-add047418
@metamask-previews/base-data-service@1.0.0-preview-add047418
@metamask-previews/bitcoin-regtest-up@1.0.0-preview-add047418
@metamask-previews/bridge-controller@80.0.0-preview-add047418
@metamask-previews/bridge-status-controller@75.3.0-preview-add047418
@metamask-previews/build-utils@3.0.4-preview-add047418
@metamask-previews/chain-agnostic-permission@1.7.0-preview-add047418
@metamask-previews/chomp-api-service@4.0.1-preview-add047418
@metamask-previews/claims-controller@0.6.1-preview-add047418
@metamask-previews/client-controller@1.0.1-preview-add047418
@metamask-previews/client-utils@2.1.1-preview-add047418
@metamask-previews/compliance-controller@2.1.0-preview-add047418
@metamask-previews/composable-controller@12.0.1-preview-add047418
@metamask-previews/config-registry-controller@3.1.0-preview-add047418
@metamask-previews/connectivity-controller@0.3.0-preview-add047418
@metamask-previews/controller-utils@12.3.0-preview-add047418
@metamask-previews/core-backend@9.0.0-preview-add047418
@metamask-previews/delegation-controller@3.0.2-preview-add047418
@metamask-previews/earn-controller@12.2.6-preview-add047418
@metamask-previews/eip-5792-middleware@3.0.5-preview-add047418
@metamask-previews/eip-7702-internal-rpc-middleware@0.1.1-preview-add047418
@metamask-previews/eip1193-permission-middleware@2.0.1-preview-add047418
@metamask-previews/eth-block-tracker@15.0.1-preview-add047418
@metamask-previews/eth-json-rpc-middleware@24.0.1-preview-add047418
@metamask-previews/eth-json-rpc-provider@6.0.1-preview-add047418
@metamask-previews/foundryup@1.0.1-preview-add047418
@metamask-previews/gas-fee-controller@26.3.2-preview-add047418
@metamask-previews/gator-permissions-controller@5.0.2-preview-add047418
@metamask-previews/geolocation-controller@1.0.0-preview-add047418
@metamask-previews/java-tron-up@1.0.0-preview-add047418
@metamask-previews/json-rpc-engine@10.5.0-preview-add047418
@metamask-previews/json-rpc-middleware-stream@8.0.8-preview-add047418
@metamask-previews/keyring-controller@27.1.1-preview-add047418
@metamask-previews/kyc-controller@0.0.0-preview-add047418
@metamask-previews/local-node-utils@1.0.0-preview-add047418
@metamask-previews/logging-controller@9.0.0-preview-add047418
@metamask-previews/message-manager@14.1.2-preview-add047418
@metamask-previews/messenger@2.0.0-preview-add047418
@metamask-previews/messenger-cli@0.2.0-preview-add047418
@metamask-previews/money-account-api-data-service@0.4.1-preview-add047418
@metamask-previews/money-account-balance-service@2.4.3-preview-add047418
@metamask-previews/money-account-controller@1.0.0-preview-add047418
@metamask-previews/money-account-upgrade-controller@3.0.2-preview-add047418
@metamask-previews/money-account-utils@1.1.0-preview-add047418
@metamask-previews/multichain-account-service@13.0.2-preview-add047418
@metamask-previews/multichain-api-middleware@4.0.3-preview-add047418
@metamask-previews/multichain-network-controller@3.2.4-preview-add047418
@metamask-previews/multichain-transactions-controller@7.1.2-preview-add047418
@metamask-previews/name-controller@9.1.2-preview-add047418
@metamask-previews/network-connection-banner-controller@0.2.1-preview-add047418
@metamask-previews/network-controller@36.0.0-preview-add047418
@metamask-previews/network-enablement-controller@6.0.5-preview-add047418
@metamask-previews/notification-services-controller@26.0.1-preview-add047418
@metamask-previews/passkey-controller@3.1.0-preview-add047418
@metamask-previews/permission-controller@13.1.1-preview-add047418
@metamask-previews/permission-log-controller@5.1.0-preview-add047418
@metamask-previews/perps-controller@13.0.0-preview-add047418
@metamask-previews/phishing-controller@17.4.0-preview-add047418
@metamask-previews/platform-api-docs@0.0.0-preview-add047418
@metamask-previews/polling-controller@16.0.9-preview-add047418
@metamask-previews/preferences-controller@23.1.0-preview-add047418
@metamask-previews/profile-metrics-controller@4.0.3-preview-add047418
@metamask-previews/profile-sync-controller@29.0.0-preview-add047418
@metamask-previews/ramps-controller@20.0.0-preview-add047418
@metamask-previews/rate-limit-controller@7.0.1-preview-add047418
@metamask-previews/react-data-query@1.0.0-preview-add047418
@metamask-previews/remote-feature-flag-controller@6.0.0-preview-add047418
@metamask-previews/sample-controllers@5.0.6-preview-add047418
@metamask-previews/seedless-onboarding-controller@10.1.1-preview-add047418
@metamask-previews/selected-network-controller@26.1.7-preview-add047418
@metamask-previews/sentinel-api-service@1.0.1-preview-add047418
@metamask-previews/shield-controller@6.0.1-preview-add047418
@metamask-previews/signature-controller@39.2.10-preview-add047418
@metamask-previews/smart-transactions-controller@25.1.1-preview-add047418
@metamask-previews/snap-account-service@2.1.2-preview-add047418
@metamask-previews/social-controllers@2.8.0-preview-add047418
@metamask-previews/solana-test-validator-up@1.0.0-preview-add047418
@metamask-previews/stellar-quickstart-up@0.0.0-preview-add047418
@metamask-previews/storage-service@1.0.2-preview-add047418
@metamask-previews/subscription-controller@8.0.1-preview-add047418
@metamask-previews/transaction-controller@69.6.1-preview-add047418
@metamask-previews/transaction-pay-controller@27.0.0-preview-add047418
@metamask-previews/user-operation-controller@41.2.9-preview-add047418
@metamask-previews/wallet@12.0.2-preview-add047418
@metamask-previews/wallet-cli@0.0.0-preview-add047418

@Battambang
Battambang force-pushed the feat/WPN-1877-emit-failure-telemetry branch from add0474 to 45e4590 Compare August 28, 2026 10:16
…sence

Wire Quotes Error, submit Failed, EVM Failed, poll Failed, Submitted, and Completed to the classifiers from #9947. Mixpanel can now split quote vs broadcast vs source vs dest vs poll without parsing error_message.
…ed hash presence

Promote broadcast, poll, or unknown to source_execution when history already has a source hash, so Mixpanel does not report a pre-broadcast failure after a source hash exists.
Quote fetch is pre-tx, so the emit changelog should not list source_hash_present or destination_hash_present on Quotes Error.
… use

Move failure classifiers above getEVMTxPropertiesFromTransactionMeta so ESLint no-use-before-define passes.
@Battambang
Battambang force-pushed the feat/WPN-1877-emit-failure-telemetry branch from 45e4590 to b13d916 Compare August 28, 2026 11:49
@Battambang

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@github-actions

Copy link
Copy Markdown
Contributor

Preview builds have been published. Learn how to use preview builds in other projects.

Expand for full list of packages and versions.
@metamask-previews/account-tree-controller@8.0.0-preview-b13d916
@metamask-previews/accounts-controller@39.1.1-preview-b13d916
@metamask-previews/address-book-controller@7.1.2-preview-b13d916
@metamask-previews/ai-controllers@0.8.0-preview-b13d916
@metamask-previews/analytics-controller@2.0.0-preview-b13d916
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-b13d916
@metamask-previews/announcement-controller@8.1.0-preview-b13d916
@metamask-previews/app-metadata-controller@2.0.1-preview-b13d916
@metamask-previews/approval-controller@9.0.2-preview-b13d916
@metamask-previews/assets-controller@14.0.2-preview-b13d916
@metamask-previews/assets-controllers@111.1.3-preview-b13d916
@metamask-previews/authenticated-user-storage@3.0.2-preview-b13d916
@metamask-previews/base-controller@9.1.0-preview-b13d916
@metamask-previews/base-data-service@1.0.0-preview-b13d916
@metamask-previews/bitcoin-regtest-up@1.0.0-preview-b13d916
@metamask-previews/bridge-controller@80.1.0-preview-b13d916
@metamask-previews/bridge-status-controller@75.4.0-preview-b13d916
@metamask-previews/build-utils@3.0.4-preview-b13d916
@metamask-previews/chain-agnostic-permission@1.7.0-preview-b13d916
@metamask-previews/chomp-api-service@4.0.1-preview-b13d916
@metamask-previews/claims-controller@0.6.1-preview-b13d916
@metamask-previews/client-controller@1.0.1-preview-b13d916
@metamask-previews/client-utils@2.1.1-preview-b13d916
@metamask-previews/compliance-controller@2.1.0-preview-b13d916
@metamask-previews/composable-controller@12.0.1-preview-b13d916
@metamask-previews/config-registry-controller@3.1.0-preview-b13d916
@metamask-previews/connectivity-controller@0.3.0-preview-b13d916
@metamask-previews/controller-utils@12.3.0-preview-b13d916
@metamask-previews/core-backend@9.0.0-preview-b13d916
@metamask-previews/delegation-controller@3.0.2-preview-b13d916
@metamask-previews/earn-controller@12.2.6-preview-b13d916
@metamask-previews/eip-5792-middleware@3.0.5-preview-b13d916
@metamask-previews/eip-7702-internal-rpc-middleware@0.1.1-preview-b13d916
@metamask-previews/eip1193-permission-middleware@2.0.1-preview-b13d916
@metamask-previews/eth-block-tracker@15.0.1-preview-b13d916
@metamask-previews/eth-json-rpc-middleware@24.0.1-preview-b13d916
@metamask-previews/eth-json-rpc-provider@6.0.1-preview-b13d916
@metamask-previews/foundryup@1.0.1-preview-b13d916
@metamask-previews/gas-fee-controller@26.3.2-preview-b13d916
@metamask-previews/gator-permissions-controller@5.0.2-preview-b13d916
@metamask-previews/geolocation-controller@1.0.0-preview-b13d916
@metamask-previews/java-tron-up@1.0.0-preview-b13d916
@metamask-previews/json-rpc-engine@10.5.0-preview-b13d916
@metamask-previews/json-rpc-middleware-stream@8.0.8-preview-b13d916
@metamask-previews/keyring-controller@27.1.1-preview-b13d916
@metamask-previews/kyc-controller@0.0.0-preview-b13d916
@metamask-previews/local-node-utils@1.0.0-preview-b13d916
@metamask-previews/logging-controller@9.0.0-preview-b13d916
@metamask-previews/message-manager@14.1.2-preview-b13d916
@metamask-previews/messenger@2.0.0-preview-b13d916
@metamask-previews/messenger-cli@0.2.0-preview-b13d916
@metamask-previews/money-account-api-data-service@0.4.1-preview-b13d916
@metamask-previews/money-account-balance-service@2.4.3-preview-b13d916
@metamask-previews/money-account-controller@1.0.0-preview-b13d916
@metamask-previews/money-account-upgrade-controller@3.0.2-preview-b13d916
@metamask-previews/money-account-utils@1.1.0-preview-b13d916
@metamask-previews/multichain-account-service@13.0.2-preview-b13d916
@metamask-previews/multichain-api-middleware@4.0.3-preview-b13d916
@metamask-previews/multichain-network-controller@3.2.4-preview-b13d916
@metamask-previews/multichain-transactions-controller@7.1.2-preview-b13d916
@metamask-previews/name-controller@9.1.2-preview-b13d916
@metamask-previews/network-connection-banner-controller@0.2.1-preview-b13d916
@metamask-previews/network-controller@36.0.0-preview-b13d916
@metamask-previews/network-enablement-controller@6.0.5-preview-b13d916
@metamask-previews/notification-services-controller@26.0.1-preview-b13d916
@metamask-previews/passkey-controller@3.1.0-preview-b13d916
@metamask-previews/permission-controller@13.1.1-preview-b13d916
@metamask-previews/permission-log-controller@5.1.0-preview-b13d916
@metamask-previews/perps-controller@13.1.0-preview-b13d916
@metamask-previews/phishing-controller@17.4.0-preview-b13d916
@metamask-previews/platform-api-docs@0.0.0-preview-b13d916
@metamask-previews/polling-controller@16.0.9-preview-b13d916
@metamask-previews/preferences-controller@23.1.0-preview-b13d916
@metamask-previews/profile-metrics-controller@4.0.3-preview-b13d916
@metamask-previews/profile-sync-controller@29.0.0-preview-b13d916
@metamask-previews/ramps-controller@20.0.0-preview-b13d916
@metamask-previews/rate-limit-controller@7.0.1-preview-b13d916
@metamask-previews/react-data-query@1.0.0-preview-b13d916
@metamask-previews/remote-feature-flag-controller@6.1.0-preview-b13d916
@metamask-previews/sample-controllers@5.0.6-preview-b13d916
@metamask-previews/seedless-onboarding-controller@10.1.1-preview-b13d916
@metamask-previews/selected-network-controller@26.1.7-preview-b13d916
@metamask-previews/sentinel-api-service@1.0.1-preview-b13d916
@metamask-previews/shield-controller@6.0.1-preview-b13d916
@metamask-previews/signature-controller@39.2.10-preview-b13d916
@metamask-previews/smart-transactions-controller@25.1.1-preview-b13d916
@metamask-previews/snap-account-service@2.1.2-preview-b13d916
@metamask-previews/social-controllers@2.8.0-preview-b13d916
@metamask-previews/solana-test-validator-up@1.0.0-preview-b13d916
@metamask-previews/stellar-quickstart-up@0.0.0-preview-b13d916
@metamask-previews/storage-service@1.0.2-preview-b13d916
@metamask-previews/subscription-controller@8.0.1-preview-b13d916
@metamask-previews/transaction-controller@69.6.1-preview-b13d916
@metamask-previews/transaction-pay-controller@27.0.0-preview-b13d916
@metamask-previews/user-operation-controller@41.2.9-preview-b13d916
@metamask-previews/wallet@12.0.2-preview-b13d916
@metamask-previews/wallet-cli@0.0.0-preview-b13d916

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.

1 participant