@meshconnect/uwc-core 2.3.2 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -0
- package/dist/observability/connect-observer.d.ts.map +1 -1
- package/dist/observability/connect-observer.js +41 -1
- package/dist/observability/connect-observer.js.map +1 -1
- package/dist/observability/telemetry.d.ts +10 -1
- package/dist/observability/telemetry.d.ts.map +1 -1
- package/dist/observability/telemetry.js +9 -4
- package/dist/observability/telemetry.js.map +1 -1
- package/dist/utils/to-wallet-error.d.ts.map +1 -1
- package/dist/utils/to-wallet-error.js +7 -0
- package/dist/utils/to-wallet-error.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
- package/src/observability/connect-observer.test.ts +137 -1
- package/src/observability/connect-observer.ts +54 -3
- package/src/observability/instrument-handoff.test.ts +20 -0
- package/src/observability/telemetry.test.ts +16 -0
- package/src/observability/telemetry.ts +20 -4
- package/src/universal-wallet-connector.observability.test.ts +3 -1
- package/src/utils/to-wallet-error.test.ts +24 -0
- package/src/utils/to-wallet-error.ts +7 -0
- package/src/version.ts +1 -1
package/README.md
CHANGED
|
@@ -803,6 +803,17 @@ distinct count for attempt-level funnels. `correlationId` remains a
|
|
|
803
803
|
consumer-supplied session identifier, while `handoffId` joins one wallet-bound
|
|
804
804
|
operation to its terminal event.
|
|
805
805
|
|
|
806
|
+
Observer `disconnected` records carry the prior connected session's
|
|
807
|
+
`connectionMode` when UWC observed one. This is telemetry-only: the public
|
|
808
|
+
`connector.on('disconnected', () => {})` payload remains void, and a no-session
|
|
809
|
+
disconnect omits the mode rather than inventing one.
|
|
810
|
+
|
|
811
|
+
Failure records use `failureKind` only for reliable signals. Known provider codes
|
|
812
|
+
map to their specific kind; any other finite integer provider/JSON-RPC code maps
|
|
813
|
+
to the coarse `provider_error` bucket. That means “the provider returned an
|
|
814
|
+
unmapped code,” not a more specific diagnosis. String codes and errors without a
|
|
815
|
+
reliable structural signal remain `unknown`.
|
|
816
|
+
|
|
806
817
|
**Structured fields never carry a signing payload or wallet address** — the shape has no slot for
|
|
807
818
|
them. The two free-form surfaces (`error.message` and `onLog` args) additionally
|
|
808
819
|
pass through a key + content scrubber that redacts sensitive keys, EVM hex blobs
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connect-observer.d.ts","sourceRoot":"","sources":["../../src/observability/connect-observer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"connect-observer.d.ts","sourceRoot":"","sources":["../../src/observability/connect-observer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,MAAM,EAAE,MAAM,wBAAwB,CAAA;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAG7D,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAG9D;;;;;;;;;;;;;;;;;;;;GAoBG;AACH;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,MAAM,CAAA;AAE/C,wBAAgB,eAAe,CAC7B,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,WAAW,EACrB,YAAY,EAAE,MAAM,EACpB,gBAAgB,GAAE,MAAM,MAAM,GAAG,SAA2B,EAC5D,GAAG,GAAE,MAAM,MAAiB,EAC5B,MAAM,CAAC,EAAE,MAAM,GACd,MAAM,IAAI,CAsIZ"}
|
|
@@ -41,6 +41,42 @@ export function connectObserver(eventManager, observer, sdkSessionId, getCorrela
|
|
|
41
41
|
// connector instance (not module-global) so one connector's failures don't
|
|
42
42
|
// suppress another's; bounded so it can't grow for the instance's lifetime.
|
|
43
43
|
const observerErrorDedup = createBoundedDedup(MAX_REPORTED_OBSERVER_ERRORS);
|
|
44
|
+
let retainedConnectionMode;
|
|
45
|
+
// `connected` is followed by `sessionChanged`. An observer may reentrantly
|
|
46
|
+
// disconnect during the first callback; do not let that trailing, now-stale
|
|
47
|
+
// session restore mode after the disconnect record consumed it.
|
|
48
|
+
let acceptSessionChanged = true;
|
|
49
|
+
const updateDisconnectRouting = (name, data) => {
|
|
50
|
+
switch (name) {
|
|
51
|
+
case 'connected': {
|
|
52
|
+
const session = data.session;
|
|
53
|
+
retainedConnectionMode = session.connectionMode ?? undefined;
|
|
54
|
+
acceptSessionChanged = true;
|
|
55
|
+
return undefined;
|
|
56
|
+
}
|
|
57
|
+
case 'sessionChanged': {
|
|
58
|
+
const session = data.session;
|
|
59
|
+
if (!session.connectionMode) {
|
|
60
|
+
retainedConnectionMode = undefined;
|
|
61
|
+
acceptSessionChanged = false;
|
|
62
|
+
}
|
|
63
|
+
else if (acceptSessionChanged) {
|
|
64
|
+
retainedConnectionMode = session.connectionMode;
|
|
65
|
+
}
|
|
66
|
+
return undefined;
|
|
67
|
+
}
|
|
68
|
+
case 'disconnected': {
|
|
69
|
+
const context = retainedConnectionMode === undefined
|
|
70
|
+
? undefined
|
|
71
|
+
: { disconnectedConnectionMode: retainedConnectionMode };
|
|
72
|
+
retainedConnectionMode = undefined;
|
|
73
|
+
acceptSessionChanged = false;
|
|
74
|
+
return context;
|
|
75
|
+
}
|
|
76
|
+
default:
|
|
77
|
+
return undefined;
|
|
78
|
+
}
|
|
79
|
+
};
|
|
44
80
|
const reportObserverError = (err) => {
|
|
45
81
|
if (!logger)
|
|
46
82
|
return;
|
|
@@ -83,6 +119,10 @@ export function connectObserver(eventManager, observer, sdkSessionId, getCorrela
|
|
|
83
119
|
continue;
|
|
84
120
|
}
|
|
85
121
|
unsubscribers.push(eventManager.on(name, data => {
|
|
122
|
+
// Update before checking/calling the sink. The callback may throw or
|
|
123
|
+
// synchronously emit a reentrant `disconnected`, which must see current
|
|
124
|
+
// routing and must not leave stale state behind.
|
|
125
|
+
const context = updateDisconnectRouting(name, data);
|
|
86
126
|
if (!observer.onEvent)
|
|
87
127
|
return;
|
|
88
128
|
// Resolve the id in its OWN guard: a throwing getter is a config
|
|
@@ -98,7 +138,7 @@ export function connectObserver(eventManager, observer, sdkSessionId, getCorrela
|
|
|
98
138
|
try {
|
|
99
139
|
// Normalize OUTSIDE the EventManager's own try/catch (which guards the
|
|
100
140
|
// listener, not the work the listener does), then hand off.
|
|
101
|
-
observer.onEvent(normalizeEvent(name, data, sdkSessionId, now(), correlationId));
|
|
141
|
+
observer.onEvent(normalizeEvent(name, data, sdkSessionId, now(), correlationId, context));
|
|
102
142
|
}
|
|
103
143
|
catch (err) {
|
|
104
144
|
// Same: never let a bad observer break other listeners.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connect-observer.js","sourceRoot":"","sources":["../../src/observability/connect-observer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAG7E,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAE3C,OAAO,EAAE,cAAc,EAAoB,MAAM,aAAa,CAAA;AAC9D,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAEjD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,CAAA;AAE/C,MAAM,UAAU,eAAe,CAC7B,YAA0B,EAC1B,QAAqB,EACrB,YAAoB,EACpB,mBAA6C,GAAG,EAAE,CAAC,SAAS,EAC5D,MAAoB,IAAI,CAAC,GAAG,EAC5B,MAAe;IAEf,MAAM,aAAa,GAAsB,EAAE,CAAA;IAE3C,8EAA8E;IAC9E,+EAA+E;IAC/E,4EAA4E;IAC5E,IAAI,oBAAoB,GAAG,KAAK,CAAA;IAEhC,yEAAyE;IACzE,gFAAgF;IAChF,2EAA2E;IAC3E,4EAA4E;IAC5E,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,4BAA4B,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"connect-observer.js","sourceRoot":"","sources":["../../src/observability/connect-observer.ts"],"names":[],"mappings":"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"}
|
|
@@ -222,9 +222,18 @@ export declare function derivePlatform(): Platform;
|
|
|
222
222
|
* historical intent. Consumers with better context may override downstream.
|
|
223
223
|
*/
|
|
224
224
|
export declare function deriveWalletFlowType(connectionMode: ConnectionMode, platform: Platform): WalletFlowType;
|
|
225
|
+
/**
|
|
226
|
+
* Observer-local routing facts that are unavailable on the public bus payload.
|
|
227
|
+
* This stays internal so enriching a telemetry record never changes an exported
|
|
228
|
+
* `UWCEventMap` listener contract.
|
|
229
|
+
*/
|
|
230
|
+
interface TelemetryNormalizationContext {
|
|
231
|
+
disconnectedConnectionMode?: ConnectionMode | undefined;
|
|
232
|
+
}
|
|
225
233
|
/**
|
|
226
234
|
* Normalize a bus event into a PII-safe `UWCTelemetryEvent`, dropping undefined
|
|
227
235
|
* optionals so the emitted shape is consistent across event kinds.
|
|
228
236
|
*/
|
|
229
|
-
export declare function normalizeEvent<K extends UWCEventName>(name: K, data: UWCEventMap[K], sdkSessionId: string, now: number, correlationId?: string): UWCTelemetryEvent;
|
|
237
|
+
export declare function normalizeEvent<K extends UWCEventName>(name: K, data: UWCEventMap[K], sdkSessionId: string, now: number, correlationId?: string, context?: TelemetryNormalizationContext): UWCTelemetryEvent;
|
|
238
|
+
export {};
|
|
230
239
|
//# sourceMappingURL=telemetry.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../../src/observability/telemetry.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../../src/observability/telemetry.ts"],"names":[],"mappings":"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"}
|
|
@@ -107,7 +107,7 @@ function getConnectAttemptId(operation, connectAttemptId) {
|
|
|
107
107
|
* `namespace` + `chainId` + `walletId`. Unknown/noisy payloads collapse to just
|
|
108
108
|
* the name. `error.message` is scrubbed.
|
|
109
109
|
*/
|
|
110
|
-
function buildTelemetryEvent(name, data, sdkSessionId, now, correlationId) {
|
|
110
|
+
function buildTelemetryEvent(name, data, sdkSessionId, now, correlationId, context) {
|
|
111
111
|
// `correlationId` is added to the key only when supplied — never aliased to
|
|
112
112
|
// `sdkSessionId`, so a consumer can tell "I gave no id" from "id == session".
|
|
113
113
|
const base = {
|
|
@@ -447,8 +447,13 @@ function buildTelemetryEvent(name, data, sdkSessionId, now, correlationId) {
|
|
|
447
447
|
runtime: d.runtime
|
|
448
448
|
};
|
|
449
449
|
}
|
|
450
|
+
case 'disconnected':
|
|
451
|
+
return {
|
|
452
|
+
...base,
|
|
453
|
+
connectionMode: context?.disconnectedConnectionMode
|
|
454
|
+
};
|
|
450
455
|
default:
|
|
451
|
-
// ready /
|
|
456
|
+
// ready / networkSwitching / change / log — name only
|
|
452
457
|
// (log goes via onLog).
|
|
453
458
|
return base;
|
|
454
459
|
}
|
|
@@ -474,7 +479,7 @@ function compactUndefined(event) {
|
|
|
474
479
|
* Normalize a bus event into a PII-safe `UWCTelemetryEvent`, dropping undefined
|
|
475
480
|
* optionals so the emitted shape is consistent across event kinds.
|
|
476
481
|
*/
|
|
477
|
-
export function normalizeEvent(name, data, sdkSessionId, now, correlationId) {
|
|
478
|
-
return compactUndefined(buildTelemetryEvent(name, data, sdkSessionId, now, correlationId));
|
|
482
|
+
export function normalizeEvent(name, data, sdkSessionId, now, correlationId, context) {
|
|
483
|
+
return compactUndefined(buildTelemetryEvent(name, data, sdkSessionId, now, correlationId, context));
|
|
479
484
|
}
|
|
480
485
|
//# sourceMappingURL=telemetry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../src/observability/telemetry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../src/observability/telemetry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"to-wallet-error.d.ts","sourceRoot":"","sources":["../../src/utils/to-wallet-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,WAAW,EACjB,MAAM,wBAAwB,CAAA;AAW/B;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CASzD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAQvD;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,WAAW,CAAA;IACxB,MAAM,EAAE,WAAW,CAAA;CACpB,CAMA;
|
|
1
|
+
{"version":3,"file":"to-wallet-error.d.ts","sourceRoot":"","sources":["../../src/utils/to-wallet-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,WAAW,EACjB,MAAM,wBAAwB,CAAA;AAW/B;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CASzD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAQvD;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,WAAW,CAAA;IACxB,MAAM,EAAE,WAAW,CAAA;CACpB,CAMA;AA6ED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAUpD"}
|
|
@@ -111,6 +111,13 @@ function classifyErrorUnguarded(error) {
|
|
|
111
111
|
case -32002:
|
|
112
112
|
failureKind = 'provider_error';
|
|
113
113
|
break;
|
|
114
|
+
default:
|
|
115
|
+
// An integer JSON-RPC/EIP-1193 code is reliable evidence that the
|
|
116
|
+
// provider produced the failure even when UWC does not know its more
|
|
117
|
+
// specific meaning. This is deliberately a coarse bucket, not message
|
|
118
|
+
// inference: rejection and every known code above keep their precedence.
|
|
119
|
+
failureKind = 'provider_error';
|
|
120
|
+
break;
|
|
114
121
|
}
|
|
115
122
|
}
|
|
116
123
|
return errorCode === undefined
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"to-wallet-error.js","sourceRoot":"","sources":["../../src/utils/to-wallet-error.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"to-wallet-error.js","sourceRoot":"","sources":["../../src/utils/to-wallet-error.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const UWC_CORE_VERSION = "2.
|
|
1
|
+
export declare const UWC_CORE_VERSION = "2.4.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
connectObserver,
|
|
6
6
|
MAX_REPORTED_OBSERVER_ERRORS
|
|
7
7
|
} from './connect-observer'
|
|
8
|
-
import type { UWCTelemetryEvent } from './telemetry'
|
|
8
|
+
import type { UWCObserver, UWCTelemetryEvent } from './telemetry'
|
|
9
9
|
|
|
10
10
|
const FIXED_NOW = 1_700_000_000_000
|
|
11
11
|
|
|
@@ -107,6 +107,142 @@ describe('connectObserver', () => {
|
|
|
107
107
|
expect(JSON.stringify(events)).not.toContain('0xSECRETADDR')
|
|
108
108
|
})
|
|
109
109
|
|
|
110
|
+
it('retains a connected session mode for the following disconnected record', () => {
|
|
111
|
+
const em = new EventManager()
|
|
112
|
+
const events: UWCTelemetryEvent[] = []
|
|
113
|
+
connectObserver(em, { onEvent: e => events.push(e) }, 'sess')
|
|
114
|
+
const session = {
|
|
115
|
+
connectionMode: 'walletConnect',
|
|
116
|
+
activeNetwork: { namespace: 'eip155', id: 'eip155:1' },
|
|
117
|
+
activeWallet: { id: 'rainbow' }
|
|
118
|
+
} as unknown as Session
|
|
119
|
+
|
|
120
|
+
em.emit('connected', { session })
|
|
121
|
+
em.emit('disconnected', undefined)
|
|
122
|
+
|
|
123
|
+
expect(events.at(-1)).toMatchObject({
|
|
124
|
+
name: 'disconnected',
|
|
125
|
+
connectionMode: 'walletConnect'
|
|
126
|
+
})
|
|
127
|
+
})
|
|
128
|
+
|
|
129
|
+
it('omits connectionMode for a disconnect without a connected session', () => {
|
|
130
|
+
const em = new EventManager()
|
|
131
|
+
const events: UWCTelemetryEvent[] = []
|
|
132
|
+
connectObserver(em, { onEvent: e => events.push(e) }, 'sess')
|
|
133
|
+
|
|
134
|
+
em.emit('connecting', { connectionMode: 'injected', walletId: 'metamask' })
|
|
135
|
+
em.emit('disconnected', undefined)
|
|
136
|
+
|
|
137
|
+
const disconnected = events.at(-1)!
|
|
138
|
+
expect(disconnected.name).toBe('disconnected')
|
|
139
|
+
expect('connectionMode' in disconnected).toBe(false)
|
|
140
|
+
})
|
|
141
|
+
|
|
142
|
+
it('does not restore a disconnected mode from a stale sessionChanged event', () => {
|
|
143
|
+
const em = new EventManager()
|
|
144
|
+
const events: UWCTelemetryEvent[] = []
|
|
145
|
+
connectObserver(em, { onEvent: e => events.push(e) }, 'sess')
|
|
146
|
+
const injectedSession = {
|
|
147
|
+
connectionMode: 'injected',
|
|
148
|
+
activeNetwork: { namespace: 'eip155', id: 'eip155:1' },
|
|
149
|
+
activeWallet: { id: 'metamask' }
|
|
150
|
+
} as unknown as Session
|
|
151
|
+
const walletConnectSession = {
|
|
152
|
+
connectionMode: 'walletConnect',
|
|
153
|
+
activeNetwork: { namespace: 'eip155', id: 'eip155:1' },
|
|
154
|
+
activeWallet: { id: 'rainbow' }
|
|
155
|
+
} as unknown as Session
|
|
156
|
+
|
|
157
|
+
em.emit('connected', { session: injectedSession })
|
|
158
|
+
em.emit('disconnected', undefined)
|
|
159
|
+
em.emit('sessionChanged', { session: walletConnectSession })
|
|
160
|
+
em.emit('disconnected', undefined)
|
|
161
|
+
em.emit('connected', { session: walletConnectSession })
|
|
162
|
+
em.emit('disconnected', undefined)
|
|
163
|
+
|
|
164
|
+
const disconnects = events.filter(e => e.name === 'disconnected')
|
|
165
|
+
expect(disconnects[0]?.connectionMode).toBe('injected')
|
|
166
|
+
expect('connectionMode' in disconnects[1]!).toBe(false)
|
|
167
|
+
expect(disconnects[2]?.connectionMode).toBe('walletConnect')
|
|
168
|
+
})
|
|
169
|
+
|
|
170
|
+
it('updates retained mode before an observer reentrantly disconnects', () => {
|
|
171
|
+
const em = new EventManager()
|
|
172
|
+
const events: UWCTelemetryEvent[] = []
|
|
173
|
+
const session = {
|
|
174
|
+
connectionMode: 'tonConnect',
|
|
175
|
+
activeNetwork: { namespace: 'tvm', id: 'tvm:mainnet' },
|
|
176
|
+
activeWallet: { id: 'tonkeeper' }
|
|
177
|
+
} as unknown as Session
|
|
178
|
+
connectObserver(
|
|
179
|
+
em,
|
|
180
|
+
{
|
|
181
|
+
onEvent: event => {
|
|
182
|
+
events.push(event)
|
|
183
|
+
if (event.name === 'connected') em.emit('disconnected', undefined)
|
|
184
|
+
}
|
|
185
|
+
},
|
|
186
|
+
'sess'
|
|
187
|
+
)
|
|
188
|
+
|
|
189
|
+
em.emit('connected', { session })
|
|
190
|
+
|
|
191
|
+
expect(events.at(-1)).toMatchObject({
|
|
192
|
+
name: 'disconnected',
|
|
193
|
+
connectionMode: 'tonConnect'
|
|
194
|
+
})
|
|
195
|
+
})
|
|
196
|
+
|
|
197
|
+
it('retains mode when the connected observer callback throws', () => {
|
|
198
|
+
const em = new EventManager()
|
|
199
|
+
const events: UWCTelemetryEvent[] = []
|
|
200
|
+
let throwFromObserver = true
|
|
201
|
+
const session = {
|
|
202
|
+
connectionMode: 'injected',
|
|
203
|
+
activeNetwork: { namespace: 'eip155', id: 'eip155:1' },
|
|
204
|
+
activeWallet: { id: 'metamask' }
|
|
205
|
+
} as unknown as Session
|
|
206
|
+
connectObserver(
|
|
207
|
+
em,
|
|
208
|
+
{
|
|
209
|
+
onEvent: event => {
|
|
210
|
+
if (throwFromObserver) throw new Error('observer boom')
|
|
211
|
+
events.push(event)
|
|
212
|
+
}
|
|
213
|
+
},
|
|
214
|
+
'sess'
|
|
215
|
+
)
|
|
216
|
+
|
|
217
|
+
em.emit('connected', { session })
|
|
218
|
+
throwFromObserver = false
|
|
219
|
+
em.emit('disconnected', undefined)
|
|
220
|
+
|
|
221
|
+
expect(events).toMatchObject([
|
|
222
|
+
{ name: 'disconnected', connectionMode: 'injected' }
|
|
223
|
+
])
|
|
224
|
+
})
|
|
225
|
+
|
|
226
|
+
it('clears retained mode while no observer callback is configured', () => {
|
|
227
|
+
const em = new EventManager()
|
|
228
|
+
const events: UWCTelemetryEvent[] = []
|
|
229
|
+
const observer: UWCObserver = {}
|
|
230
|
+
const session = {
|
|
231
|
+
connectionMode: 'injected',
|
|
232
|
+
activeNetwork: { namespace: 'eip155', id: 'eip155:1' },
|
|
233
|
+
activeWallet: { id: 'metamask' }
|
|
234
|
+
} as unknown as Session
|
|
235
|
+
connectObserver(em, observer, 'sess')
|
|
236
|
+
|
|
237
|
+
em.emit('connected', { session })
|
|
238
|
+
em.emit('disconnected', undefined)
|
|
239
|
+
observer.onEvent = event => events.push(event)
|
|
240
|
+
em.emit('disconnected', undefined)
|
|
241
|
+
|
|
242
|
+
expect(events).toMatchObject([{ name: 'disconnected' }])
|
|
243
|
+
expect('connectionMode' in events[0]!).toBe(false)
|
|
244
|
+
})
|
|
245
|
+
|
|
110
246
|
it('a throwing observer never breaks the dispatch chain', () => {
|
|
111
247
|
const em = new EventManager()
|
|
112
248
|
connectObserver(
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { createBoundedDedup, safeErrorMessage } from '@meshconnect/uwc-types'
|
|
2
|
-
import type { Logger } from '@meshconnect/uwc-types'
|
|
2
|
+
import type { ConnectionMode, Logger } from '@meshconnect/uwc-types'
|
|
3
3
|
import type { EventManager } from '../managers/event-manager'
|
|
4
4
|
import { UWC_EVENT_NAMES } from '../events'
|
|
5
|
-
import type { UWCEventMap } from '../events'
|
|
5
|
+
import type { UWCEventMap, UWCEventName } from '../events'
|
|
6
6
|
import { normalizeEvent, type UWCObserver } from './telemetry'
|
|
7
7
|
import { scrubArgs, scrubMessage } from './scrub'
|
|
8
8
|
|
|
@@ -55,6 +55,46 @@ export function connectObserver(
|
|
|
55
55
|
// connector instance (not module-global) so one connector's failures don't
|
|
56
56
|
// suppress another's; bounded so it can't grow for the instance's lifetime.
|
|
57
57
|
const observerErrorDedup = createBoundedDedup(MAX_REPORTED_OBSERVER_ERRORS)
|
|
58
|
+
let retainedConnectionMode: ConnectionMode | undefined
|
|
59
|
+
// `connected` is followed by `sessionChanged`. An observer may reentrantly
|
|
60
|
+
// disconnect during the first callback; do not let that trailing, now-stale
|
|
61
|
+
// session restore mode after the disconnect record consumed it.
|
|
62
|
+
let acceptSessionChanged = true
|
|
63
|
+
|
|
64
|
+
const updateDisconnectRouting = <K extends UWCEventName>(
|
|
65
|
+
name: K,
|
|
66
|
+
data: UWCEventMap[K]
|
|
67
|
+
): { disconnectedConnectionMode?: ConnectionMode } | undefined => {
|
|
68
|
+
switch (name) {
|
|
69
|
+
case 'connected': {
|
|
70
|
+
const session = (data as UWCEventMap['connected']).session
|
|
71
|
+
retainedConnectionMode = session.connectionMode ?? undefined
|
|
72
|
+
acceptSessionChanged = true
|
|
73
|
+
return undefined
|
|
74
|
+
}
|
|
75
|
+
case 'sessionChanged': {
|
|
76
|
+
const session = (data as UWCEventMap['sessionChanged']).session
|
|
77
|
+
if (!session.connectionMode) {
|
|
78
|
+
retainedConnectionMode = undefined
|
|
79
|
+
acceptSessionChanged = false
|
|
80
|
+
} else if (acceptSessionChanged) {
|
|
81
|
+
retainedConnectionMode = session.connectionMode
|
|
82
|
+
}
|
|
83
|
+
return undefined
|
|
84
|
+
}
|
|
85
|
+
case 'disconnected': {
|
|
86
|
+
const context =
|
|
87
|
+
retainedConnectionMode === undefined
|
|
88
|
+
? undefined
|
|
89
|
+
: { disconnectedConnectionMode: retainedConnectionMode }
|
|
90
|
+
retainedConnectionMode = undefined
|
|
91
|
+
acceptSessionChanged = false
|
|
92
|
+
return context
|
|
93
|
+
}
|
|
94
|
+
default:
|
|
95
|
+
return undefined
|
|
96
|
+
}
|
|
97
|
+
}
|
|
58
98
|
|
|
59
99
|
const reportObserverError = (err: unknown): void => {
|
|
60
100
|
if (!logger) return
|
|
@@ -97,6 +137,10 @@ export function connectObserver(
|
|
|
97
137
|
|
|
98
138
|
unsubscribers.push(
|
|
99
139
|
eventManager.on(name, data => {
|
|
140
|
+
// Update before checking/calling the sink. The callback may throw or
|
|
141
|
+
// synchronously emit a reentrant `disconnected`, which must see current
|
|
142
|
+
// routing and must not leave stale state behind.
|
|
143
|
+
const context = updateDisconnectRouting(name, data)
|
|
100
144
|
if (!observer.onEvent) return
|
|
101
145
|
// Resolve the id in its OWN guard: a throwing getter is a config
|
|
102
146
|
// problem, not an observer failure — degrade to "no id" (the getter's
|
|
@@ -111,7 +155,14 @@ export function connectObserver(
|
|
|
111
155
|
// Normalize OUTSIDE the EventManager's own try/catch (which guards the
|
|
112
156
|
// listener, not the work the listener does), then hand off.
|
|
113
157
|
observer.onEvent(
|
|
114
|
-
normalizeEvent(
|
|
158
|
+
normalizeEvent(
|
|
159
|
+
name,
|
|
160
|
+
data,
|
|
161
|
+
sdkSessionId,
|
|
162
|
+
now(),
|
|
163
|
+
correlationId,
|
|
164
|
+
context
|
|
165
|
+
)
|
|
115
166
|
)
|
|
116
167
|
} catch (err) {
|
|
117
168
|
// Same: never let a bad observer break other listeners.
|
|
@@ -188,6 +188,26 @@ describe('instrumentHandoff', () => {
|
|
|
188
188
|
expect(failed.source).toBe('unknown')
|
|
189
189
|
})
|
|
190
190
|
|
|
191
|
+
it('classifies an unmapped finite provider code on walletFailed', async () => {
|
|
192
|
+
const em = new EventManager()
|
|
193
|
+
const seen = record(em)
|
|
194
|
+
await expect(
|
|
195
|
+
instrumentHandoff({ eventManager: em, timeoutMs: 0 }, CTX, async () => {
|
|
196
|
+
throw Object.assign(new Error('internal rpc error'), { code: -32603 })
|
|
197
|
+
})
|
|
198
|
+
).rejects.toThrow('internal rpc error')
|
|
199
|
+
|
|
200
|
+
const failed = seen[1].data as {
|
|
201
|
+
errorCode?: string
|
|
202
|
+
failureKind?: string
|
|
203
|
+
source?: string
|
|
204
|
+
}
|
|
205
|
+
expect(seen[1].name).toBe('walletFailed')
|
|
206
|
+
expect(failed.errorCode).toBe('-32603')
|
|
207
|
+
expect(failed.failureKind).toBe('provider_error')
|
|
208
|
+
expect(failed.source).toBe('provider')
|
|
209
|
+
})
|
|
210
|
+
|
|
191
211
|
it('stamps every terminal with the same routing facets as awaitingWallet', async () => {
|
|
192
212
|
const em = new EventManager()
|
|
193
213
|
const seen = record(em)
|
|
@@ -269,6 +269,22 @@ describe('normalizeEvent', () => {
|
|
|
269
269
|
})
|
|
270
270
|
})
|
|
271
271
|
|
|
272
|
+
it('normalizes retained connectionMode on a disconnected event without changing its bus payload', () => {
|
|
273
|
+
const out = normalizeEvent(
|
|
274
|
+
'disconnected',
|
|
275
|
+
undefined,
|
|
276
|
+
SDK_SESSION,
|
|
277
|
+
NOW,
|
|
278
|
+
undefined,
|
|
279
|
+
{ disconnectedConnectionMode: 'walletConnect' }
|
|
280
|
+
)
|
|
281
|
+
|
|
282
|
+
expect(out).toMatchObject({
|
|
283
|
+
name: 'disconnected',
|
|
284
|
+
connectionMode: 'walletConnect'
|
|
285
|
+
})
|
|
286
|
+
})
|
|
287
|
+
|
|
272
288
|
it('stamps schemaVersion on every record', () => {
|
|
273
289
|
const ready = normalizeEvent('ready', undefined, SDK_SESSION, NOW)
|
|
274
290
|
const connecting = normalizeEvent(
|
|
@@ -340,6 +340,15 @@ function getConnectAttemptId(
|
|
|
340
340
|
return operation === 'connect' ? connectAttemptId : undefined
|
|
341
341
|
}
|
|
342
342
|
|
|
343
|
+
/**
|
|
344
|
+
* Observer-local routing facts that are unavailable on the public bus payload.
|
|
345
|
+
* This stays internal so enriching a telemetry record never changes an exported
|
|
346
|
+
* `UWCEventMap` listener contract.
|
|
347
|
+
*/
|
|
348
|
+
interface TelemetryNormalizationContext {
|
|
349
|
+
disconnectedConnectionMode?: ConnectionMode | undefined
|
|
350
|
+
}
|
|
351
|
+
|
|
343
352
|
/**
|
|
344
353
|
* Map a raw `UWCEventMap` event to its PII-safe `UWCTelemetryEvent`.
|
|
345
354
|
*
|
|
@@ -353,7 +362,8 @@ function buildTelemetryEvent<K extends UWCEventName>(
|
|
|
353
362
|
data: UWCEventMap[K],
|
|
354
363
|
sdkSessionId: string,
|
|
355
364
|
now: number,
|
|
356
|
-
correlationId?: string
|
|
365
|
+
correlationId?: string,
|
|
366
|
+
context?: TelemetryNormalizationContext
|
|
357
367
|
): UWCTelemetryEvent {
|
|
358
368
|
// `correlationId` is added to the key only when supplied — never aliased to
|
|
359
369
|
// `sdkSessionId`, so a consumer can tell "I gave no id" from "id == session".
|
|
@@ -694,8 +704,13 @@ function buildTelemetryEvent<K extends UWCEventName>(
|
|
|
694
704
|
runtime: d.runtime
|
|
695
705
|
}
|
|
696
706
|
}
|
|
707
|
+
case 'disconnected':
|
|
708
|
+
return {
|
|
709
|
+
...base,
|
|
710
|
+
connectionMode: context?.disconnectedConnectionMode
|
|
711
|
+
}
|
|
697
712
|
default:
|
|
698
|
-
// ready /
|
|
713
|
+
// ready / networkSwitching / change / log — name only
|
|
699
714
|
// (log goes via onLog).
|
|
700
715
|
return base
|
|
701
716
|
}
|
|
@@ -727,9 +742,10 @@ export function normalizeEvent<K extends UWCEventName>(
|
|
|
727
742
|
data: UWCEventMap[K],
|
|
728
743
|
sdkSessionId: string,
|
|
729
744
|
now: number,
|
|
730
|
-
correlationId?: string
|
|
745
|
+
correlationId?: string,
|
|
746
|
+
context?: TelemetryNormalizationContext
|
|
731
747
|
): UWCTelemetryEvent {
|
|
732
748
|
return compactUndefined(
|
|
733
|
-
buildTelemetryEvent(name, data, sdkSessionId, now, correlationId)
|
|
749
|
+
buildTelemetryEvent(name, data, sdkSessionId, now, correlationId, context)
|
|
734
750
|
)
|
|
735
751
|
}
|
|
@@ -612,7 +612,8 @@ describe('UniversalWalletConnector — observability wiring', () => {
|
|
|
612
612
|
const uwc = new UniversalWalletConnector({
|
|
613
613
|
networks,
|
|
614
614
|
wallets,
|
|
615
|
-
observer: { onEvent: e => events.push(e) }
|
|
615
|
+
observer: { onEvent: e => events.push(e) },
|
|
616
|
+
correlationId: 'link-session-123'
|
|
616
617
|
})
|
|
617
618
|
|
|
618
619
|
await expect(uwc.connect('injected', 'metamask')).rejects.toThrow()
|
|
@@ -621,6 +622,7 @@ describe('UniversalWalletConnector — observability wiring', () => {
|
|
|
621
622
|
expect(err.operation).toBe('connect')
|
|
622
623
|
expect(err.failureKind).toBe('no_common_network')
|
|
623
624
|
expect(err.source).toBe('connector')
|
|
625
|
+
expect(err.correlationId).toBe('link-session-123')
|
|
624
626
|
expect(err.networkMismatch).toEqual({
|
|
625
627
|
walletNetworkIds: ['eip155:1', 'eip155:137'],
|
|
626
628
|
configuredNetworkIds: ['solana:101']
|
|
@@ -49,6 +49,30 @@ describe('classifyError', () => {
|
|
|
49
49
|
)
|
|
50
50
|
})
|
|
51
51
|
|
|
52
|
+
it('classifies unmapped finite provider codes as provider_error', () => {
|
|
53
|
+
for (const code of [-32603, 4902]) {
|
|
54
|
+
expect(classifyError({ code })).toEqual({
|
|
55
|
+
errorCode: String(code),
|
|
56
|
+
failureKind: 'provider_error',
|
|
57
|
+
source: 'provider'
|
|
58
|
+
})
|
|
59
|
+
}
|
|
60
|
+
})
|
|
61
|
+
|
|
62
|
+
it('preserves an explicit rejection over an unmapped numeric provider code', () => {
|
|
63
|
+
const error = new WalletConnectorError({
|
|
64
|
+
type: 'rejected',
|
|
65
|
+
message: 'wallet rejected',
|
|
66
|
+
code: 5000
|
|
67
|
+
})
|
|
68
|
+
|
|
69
|
+
expect(classifyError(error)).toEqual({
|
|
70
|
+
errorCode: '5000',
|
|
71
|
+
failureKind: 'user_rejected',
|
|
72
|
+
source: 'provider'
|
|
73
|
+
})
|
|
74
|
+
})
|
|
75
|
+
|
|
52
76
|
it('classifies a WalletConnectorError that carries a numeric code from its code (MFS-667)', () => {
|
|
53
77
|
// The fix: connectors wrap raw provider errors as WalletConnectorError. Before
|
|
54
78
|
// MFS-667 the numeric `.code` was dropped at wrap time, so a -32002 "already
|
|
@@ -129,6 +129,13 @@ function classifyErrorUnguarded(error: unknown): {
|
|
|
129
129
|
case -32002:
|
|
130
130
|
failureKind = 'provider_error'
|
|
131
131
|
break
|
|
132
|
+
default:
|
|
133
|
+
// An integer JSON-RPC/EIP-1193 code is reliable evidence that the
|
|
134
|
+
// provider produced the failure even when UWC does not know its more
|
|
135
|
+
// specific meaning. This is deliberately a coarse bucket, not message
|
|
136
|
+
// inference: rejection and every known code above keep their precedence.
|
|
137
|
+
failureKind = 'provider_error'
|
|
138
|
+
break
|
|
132
139
|
}
|
|
133
140
|
}
|
|
134
141
|
|
package/src/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// Generated from package.json by scripts/generate-version.mjs — do not edit.
|
|
2
|
-
export const UWC_CORE_VERSION = '2.
|
|
2
|
+
export const UWC_CORE_VERSION = '2.4.0'
|