@meshconnect/uwc-core 2.3.2-snapshot.9d04b21 → 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 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,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AACpD,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,CAmFZ"}
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":"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"}
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 / disconnected / networkSwitching / change / log — name only
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;AAsED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAUpD"}
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.3.2";
1
+ export declare const UWC_CORE_VERSION = "2.4.0";
2
2
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -1,3 +1,3 @@
1
1
  // Generated from package.json by scripts/generate-version.mjs — do not edit.
2
- export const UWC_CORE_VERSION = '2.3.2';
2
+ export const UWC_CORE_VERSION = '2.4.0';
3
3
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@meshconnect/uwc-core",
3
- "version": "2.3.2-snapshot.9d04b21",
3
+ "version": "2.4.0",
4
4
  "description": "Core functionality for Universal Wallet Connector",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -16,10 +16,10 @@
16
16
  "src"
17
17
  ],
18
18
  "dependencies": {
19
- "@meshconnect/uwc-injected-connector": "0.23.2-snapshot.9d04b21",
20
- "@meshconnect/uwc-ton-connector": "0.9.0-snapshot.9d04b21",
21
- "@meshconnect/uwc-types": "0.27.1-snapshot.9d04b21",
22
- "@meshconnect/uwc-wallet-connect-connector": "0.14.5-snapshot.9d04b21"
19
+ "@meshconnect/uwc-injected-connector": "0.23.2",
20
+ "@meshconnect/uwc-ton-connector": "0.9.0",
21
+ "@meshconnect/uwc-types": "0.27.1",
22
+ "@meshconnect/uwc-wallet-connect-connector": "0.14.5"
23
23
  },
24
24
  "devDependencies": {
25
25
  "typescript": "^5.9.3"
@@ -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(name, data, sdkSessionId, now(), correlationId)
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 / disconnected / networkSwitching / change / log — name only
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.3.2'
2
+ export const UWC_CORE_VERSION = '2.4.0'