Skip to content

Commit e4206b8

Browse files
committed
feat(analytics): emit dapp_name + dapp_url on Remote Connection Request Received/Failed
Wire the self-reported dapp identity from the V2 MWP connection request metadata into both Remote Connection Request analytics events: - `Remote Connection Request Received` (success path): populates `dapp_name` / `dapp_url` from `connReq.metadata.dapp.{name,url}` - `Remote Connection Request Failed` (catch path): same, using optional chaining so both gracefully degrade to `undefined` when the failure occurred before `parseConnectionRequest` returned (e.g. invalid URL, malformed payload) Pairs with the Consensys/segment-schema PR that declares both fields as optional `string` properties on the Received and Failed YAMLs. Mirrors the `dapp_name` / `dapp_url` already emitted on Connect Request Started/Completed/Cancelled, closing the parity gap on the earliest wallet-side connection signal so per-dapp drop-off can be measured before the permission UI. Tests updated: - happy-path Received assertion now also expects `dapp_name`/`dapp_url` - failed-path Failed assertion now also expects `dapp_name`/`dapp_url` + `sdk_version`/`sdk_platform` (which were silently being emitted but never asserted)
1 parent f3a256d commit e4206b8

2 files changed

Lines changed: 10 additions & 0 deletions

File tree

app/core/SDKConnectV2/services/connection-registry.test.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -442,6 +442,8 @@ describe('ConnectionRegistry', () => {
442442
transport_type: TransportType.MWP,
443443
sdk_version: '2.0.0',
444444
sdk_platform: 'JavaScript',
445+
dapp_name: 'Test DApp',
446+
dapp_url: 'https://test.dapp',
445447
}),
446448
);
447449
});
@@ -583,6 +585,10 @@ describe('ConnectionRegistry', () => {
583585
expect.objectContaining({
584586
remote_session_id: mockConnectionRequest.sessionRequest.id,
585587
transport_type: TransportType.MWP,
588+
sdk_version: '2.0.0',
589+
sdk_platform: 'JavaScript',
590+
dapp_name: 'Test DApp',
591+
dapp_url: 'https://test.dapp',
586592
failure_reason: 'Connection failed',
587593
}),
588594
);

app/core/SDKConnectV2/services/connection-registry.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -258,6 +258,8 @@ export class ConnectionRegistry {
258258
transport_type: TransportType.MWP,
259259
sdk_version: connReq.metadata.sdk.version,
260260
sdk_platform: connReq.metadata.sdk.platform,
261+
dapp_name: connReq.metadata.dapp.name,
262+
dapp_url: connReq.metadata.dapp.url,
261263
});
262264

263265
// Defense-in-depth: block connections whose self-reported dapp metadata
@@ -305,6 +307,8 @@ export class ConnectionRegistry {
305307
transport_type: TransportType.MWP,
306308
sdk_version: connReq?.metadata?.sdk?.version,
307309
sdk_platform: connReq?.metadata?.sdk?.platform,
310+
dapp_name: connReq?.metadata?.dapp?.name,
311+
dapp_url: connReq?.metadata?.dapp?.url,
308312
failure_reason: error instanceof Error ? error.message : String(error),
309313
});
310314

0 commit comments

Comments
 (0)