@ai-matrx/desktop-protocol 0.21.21 → 0.21.23

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/dist/index.cjs CHANGED
@@ -55,6 +55,10 @@ __export(src_exports, {
55
55
  AppsChatsPlaceResult: () => AppsChatsPlaceResult,
56
56
  AppsChatsStarParams: () => AppsChatsStarParams,
57
57
  AppsChatsStarResult: () => AppsChatsStarResult,
58
+ AppsChatsTitlesCheckParams: () => AppsChatsTitlesCheckParams,
59
+ AppsChatsTitlesCheckResult: () => AppsChatsTitlesCheckResult,
60
+ AppsChatsTitlesPushParams: () => AppsChatsTitlesPushParams,
61
+ AppsChatsTitlesPushResult: () => AppsChatsTitlesPushResult,
58
62
  AppsChatsWatchParams: () => AppsChatsWatchParams,
59
63
  AppsChatsWatchResult: () => AppsChatsWatchResult,
60
64
  AppsChatsWatchStateEvent: () => AppsChatsWatchStateEvent,
@@ -122,6 +126,34 @@ __export(src_exports, {
122
126
  AudioSetLevelsParams: () => AudioSetLevelsParams,
123
127
  BEARER_PREFIX: () => BEARER_PREFIX,
124
128
  BROADCAST_CID: () => BROADCAST_CID,
129
+ BrowserCallError: () => BrowserCallError,
130
+ BrowserCallParams: () => BrowserCallParams,
131
+ BrowserCallPhase: () => BrowserCallPhase,
132
+ BrowserCallResult: () => BrowserCallResult,
133
+ BrowserClientInstance: () => BrowserClientInstance,
134
+ BrowserDisconnectParams: () => BrowserDisconnectParams,
135
+ BrowserDisconnectResult: () => BrowserDisconnectResult,
136
+ BrowserInvokeEvent: () => BrowserInvokeEvent,
137
+ BrowserKind: () => BrowserKind,
138
+ BrowserPairCodeParams: () => BrowserPairCodeParams,
139
+ BrowserPairCodeResult: () => BrowserPairCodeResult,
140
+ BrowserPairRequest: () => BrowserPairRequest,
141
+ BrowserPairResetParams: () => BrowserPairResetParams,
142
+ BrowserPairResult: () => BrowserPairResult,
143
+ BrowserProgressEvent: () => BrowserProgressEvent,
144
+ BrowserProgressParams: () => BrowserProgressParams,
145
+ BrowserProgressResult: () => BrowserProgressResult,
146
+ BrowserRegisterParams: () => BrowserRegisterParams,
147
+ BrowserRegisterResult: () => BrowserRegisterResult,
148
+ BrowserResultParams: () => BrowserResultParams,
149
+ BrowserResultResult: () => BrowserResultResult,
150
+ BrowserSession: () => BrowserSession,
151
+ BrowserSessionState: () => BrowserSessionState,
152
+ BrowserSessionsChangedEvent: () => BrowserSessionsChangedEvent,
153
+ BrowserSessionsParams: () => BrowserSessionsParams,
154
+ BrowserSessionsResult: () => BrowserSessionsResult,
155
+ BrowserSetEnabledParams: () => BrowserSetEnabledParams,
156
+ BrowserSetEnabledResult: () => BrowserSetEnabledResult,
125
157
  CLOSE_RULES: () => CLOSE_RULES,
126
158
  CONTRACT_SHA256: () => CONTRACT_SHA256,
127
159
  CancelMsg: () => CancelMsg,
@@ -164,6 +196,8 @@ __export(src_exports, {
164
196
  DEFAULT_MAX_FRAME_PAYLOAD_BYTES: () => DEFAULT_MAX_FRAME_PAYLOAD_BYTES,
165
197
  DEFAULT_MAX_MESSAGE_BYTES: () => DEFAULT_MAX_MESSAGE_BYTES,
166
198
  DEFAULT_WINDOW_BYTES: () => DEFAULT_WINDOW_BYTES,
199
+ DISCOVERY_FILE: () => DISCOVERY_FILE,
200
+ DesktopHealth: () => DesktopHealth,
167
201
  DesktopProtocolError: () => DesktopProtocolError,
168
202
  DeviceId: () => DeviceId,
169
203
  DiagErrorEntry: () => DiagErrorEntry,
@@ -291,6 +325,7 @@ __export(src_exports, {
291
325
  LEGACY_ACTIONS: () => LEGACY_ACTIONS,
292
326
  LEGACY_DISPATCHERS: () => LEGACY_DISPATCHERS,
293
327
  Limits: () => Limits,
328
+ MATRX_EXTENSION_IDS: () => MATRX_EXTENSION_IDS,
294
329
  MlInstallPhase: () => MlInstallPhase,
295
330
  MlInstallProgress: () => MlInstallProgress,
296
331
  MlProgress: () => MlProgress,
@@ -452,6 +487,8 @@ __export(src_exports, {
452
487
  TOOL_GROUPS: () => TOOL_GROUPS,
453
488
  TOOL_LEVELS: () => TOOL_LEVELS,
454
489
  TOOL_PLATFORMS: () => TOOL_PLATFORMS,
490
+ TitleCopies: () => TitleCopies,
491
+ TitleMismatch: () => TitleMismatch,
455
492
  ToolLevel: () => ToolLevel,
456
493
  ToolLevelResult: () => ToolLevelResult,
457
494
  ToolName: () => ToolName,
@@ -522,7 +559,7 @@ module.exports = __toCommonJS(src_exports);
522
559
  var import_zod = require("zod");
523
560
  var import_uuid = require("@ai-matrx/kit/uuid");
524
561
  var PROTOCOL_MAJOR = 1;
525
- var PROTOCOL_MINOR = 27;
562
+ var PROTOCOL_MINOR = 29;
526
563
  var PROTOCOL_VERSION = `${PROTOCOL_MAJOR}.${PROTOCOL_MINOR}`;
527
564
  var ProtocolVersion = import_zod.z.string().regex(/^[1-9][0-9]{0,2}\.[0-9]{1,3}$/);
528
565
  var RequestId = import_zod.z.string().min(1).max(64).regex(/^[A-Za-z0-9_-]+$/);
@@ -595,8 +632,19 @@ var ErrorReason = import_zod2.z.enum([
595
632
  // RESOURCE_BUSY (retryable): the service is starting or restarting
596
633
  "service_restarted",
597
634
  // RESOURCE_GONE: the service died while this request ran
598
- "service_failed"
635
+ "service_failed",
599
636
  // INTERNAL: the service could not be started (see models.status)
637
+ // 1.28 (REASONS_SINCE): the `browser` capability (the AI Matrx extension as Matrx 2's client)
638
+ "browser_not_connected",
639
+ // NOT_FOUND: no browser with the extension is connected (or none routable)
640
+ "browser_ambiguous",
641
+ // CONFLICT: several browsers are connected and none was named
642
+ "browser_account_mismatch",
643
+ // AUTH_FORBIDDEN: the named browser is signed in to another account
644
+ "browser_connection_off",
645
+ // AUTH_FORBIDDEN: the person turned Browser connection off
646
+ "awaiting_confirmation"
647
+ // TIMEOUT: the person did not answer the browser's confirmation in time
600
648
  ]);
601
649
  var FsPatchEditFailure = import_zod2.z.strictObject({ edit_index: nonNegInt, reason: import_zod2.z.string().max(300) });
602
650
  var ProtocolErrorBody = import_zod2.z.strictObject({
@@ -1854,6 +1902,44 @@ var AppsChatsColdResult = import_zod14.z.strictObject({
1854
1902
  /** Chats working right now (not waiting). */
1855
1903
  working: nonNegInt
1856
1904
  });
1905
+ var TitleCopies = import_zod14.z.strictObject({
1906
+ window: ChatPlace,
1907
+ /** Record copies in that window holding a different name (main keeps one per account folder). */
1908
+ copies: nonNegInt,
1909
+ titles: import_zod14.z.array(import_zod14.z.strictObject({ title: import_zod14.z.string().max(2e3), source: import_zod14.z.string().max(32) })).max(50)
1910
+ });
1911
+ var TitleMismatch = import_zod14.z.strictObject({
1912
+ chat_id: ChatId,
1913
+ /** The right name: the latest one a person gave it (in any window, or in Matrx), else the newest automatic title. */
1914
+ title: import_zod14.z.string().max(2e3),
1915
+ title_source: import_zod14.z.enum(["user", "auto"]),
1916
+ /** Where the right name came from: a window, "matrx", or "ledger" (decided earlier). */
1917
+ decided_from: import_zod14.z.string().max(64),
1918
+ kind: import_zod14.z.enum(["user_vs_auto", "user_vs_user", "auto_vs_auto", "source_only"]),
1919
+ windows: import_zod14.z.array(ChatPlace).max(200),
1920
+ differs_in: import_zod14.z.array(TitleCopies).max(200)
1921
+ });
1922
+ var AppsChatsTitlesCheckParams = import_zod14.z.strictObject({ app_key: AppKey });
1923
+ var AppsChatsTitlesCheckResult = import_zod14.z.strictObject({
1924
+ app_key: AppKey,
1925
+ chats_total: nonNegInt,
1926
+ chats_in_several_windows: nonNegInt,
1927
+ /** Chats with a different name in some window (or in Matrx). */
1928
+ chats_with_a_different_name: nonNegInt,
1929
+ copies_to_write: nonNegInt,
1930
+ chats: import_zod14.z.array(TitleMismatch).max(5e3)
1931
+ });
1932
+ var AppsChatsTitlesPushParams = import_zod14.z.strictObject({ app_key: AppKey, chat_id: ChatId.optional(), dry_run: import_zod14.z.boolean().optional() });
1933
+ var AppsChatsTitlesPushResult = import_zod14.z.strictObject({
1934
+ app_key: AppKey,
1935
+ /** Record files rewritten (title and titleSource only, each backed up first). */
1936
+ written: nonNegInt,
1937
+ chats_fixed: nonNegInt,
1938
+ /** Copies that could not be written (left for the next push). */
1939
+ failed: nonNegInt,
1940
+ /** Still different after the push (dry_run: would be written). */
1941
+ chats_with_a_different_name: nonNegInt
1942
+ });
1857
1943
  var AppsChatsOpenParams = import_zod14.z.strictObject({ app_key: AppKey, chat_id: ChatId, window: ChatPlace.optional() });
1858
1944
  var SpendSplit = import_zod14.z.strictObject({ main: import_zod14.z.number(), helpers: import_zod14.z.number() });
1859
1945
  var SpendScopes = import_zod14.z.strictObject({ today: SpendSplit, week: SpendSplit });
@@ -3042,6 +3128,114 @@ var CodingHistoryProgressEvent = import_zod32.z.strictObject({
3042
3128
  failed: nonNegInt
3043
3129
  });
3044
3130
 
3131
+ // src/schema/browser.ts
3132
+ var import_zod33 = require("zod");
3133
+ var BrowserClientInstance = import_zod33.z.string().min(1).max(64).regex(/^[A-Za-z0-9_.:-]+$/);
3134
+ var BrowserKind = import_zod33.z.enum(["chrome", "edge", "brave", "arc", "opera", "vivaldi", "chromium", "firefox", "other"]);
3135
+ var BrowserSessionState = import_zod33.z.enum(["connected", "different_account", "extension_signed_out", "device_signed_out", "unverified"]);
3136
+ var BrowserSession = import_zod33.z.strictObject({
3137
+ client_instance: BrowserClientInstance,
3138
+ /** What the person sees ("Chrome — Work"), set by the extension. */
3139
+ client_label: import_zod33.z.string().min(1).max(128),
3140
+ browser: BrowserKind,
3141
+ extension_version: import_zod33.z.string().min(1).max(32),
3142
+ state: BrowserSessionState,
3143
+ /** True only for `connected`: an agent's call can reach this session. */
3144
+ routable: import_zod33.z.boolean(),
3145
+ /** The extension's account email from its token (null when signed out or unknown). */
3146
+ account_email: import_zod33.z.string().max(320).nullable(),
3147
+ connected_at_ms: epochMs,
3148
+ last_call_at_ms: epochMs.nullable(),
3149
+ calls: nonNegInt,
3150
+ errors: nonNegInt,
3151
+ /** Call latency over the last 200 calls; null before the first. */
3152
+ p50_ms: nonNegInt.nullable(),
3153
+ p95_ms: nonNegInt.nullable(),
3154
+ /** A call is waiting for the person to confirm it in the browser. */
3155
+ awaiting_confirmation: import_zod33.z.boolean()
3156
+ });
3157
+ var BrowserRegisterParams = import_zod33.z.strictObject({
3158
+ client_instance: BrowserClientInstance,
3159
+ client_label: import_zod33.z.string().min(1).max(128),
3160
+ browser: BrowserKind,
3161
+ extension_version: import_zod33.z.string().min(1).max(32),
3162
+ /** The extension's current AI Matrx access token, checked against the device owner; null when signed out. */
3163
+ account_token: import_zod33.z.string().min(16).max(8192).nullable()
3164
+ });
3165
+ var BrowserRegisterResult = import_zod33.z.strictObject({ session: BrowserSession });
3166
+ var BrowserCallError = import_zod33.z.strictObject({
3167
+ message: import_zod33.z.string().max(1e3),
3168
+ /** The extension's own error code, when it has one ("tool_not_found", "denied"). */
3169
+ code: import_zod33.z.string().max(64).nullable()
3170
+ });
3171
+ var BrowserResultParams = import_zod33.z.strictObject({
3172
+ call_id: import_zod33.z.string().min(1).max(64),
3173
+ ok: import_zod33.z.boolean(),
3174
+ /** The tool's result when ok (any JSON). */
3175
+ result: import_zod33.z.unknown(),
3176
+ error: BrowserCallError.nullable()
3177
+ });
3178
+ var BrowserResultResult = import_zod33.z.strictObject({ accepted: import_zod33.z.boolean() });
3179
+ var BrowserCallPhase = import_zod33.z.enum(["awaiting_confirmation", "running"]);
3180
+ var BrowserProgressParams = import_zod33.z.strictObject({ call_id: import_zod33.z.string().min(1).max(64), phase: BrowserCallPhase });
3181
+ var BrowserProgressResult = import_zod33.z.strictObject({ accepted: import_zod33.z.boolean() });
3182
+ var BrowserSessionsParams = import_zod33.z.strictObject({});
3183
+ var BrowserSessionsResult = import_zod33.z.strictObject({
3184
+ /** The person's Browser connection switch. Off: no pairing, no extension sessions. */
3185
+ enabled: import_zod33.z.boolean(),
3186
+ /** Whether Matrx 2 is signed in (without an owner no session is routable). */
3187
+ owner_signed_in: import_zod33.z.boolean(),
3188
+ sessions: import_zod33.z.array(BrowserSession).max(64)
3189
+ });
3190
+ var BrowserDisconnectParams = import_zod33.z.strictObject({ client_instance: BrowserClientInstance });
3191
+ var BrowserDisconnectResult = import_zod33.z.strictObject({ disconnected: import_zod33.z.boolean() });
3192
+ var BrowserSetEnabledParams = import_zod33.z.strictObject({ enabled: import_zod33.z.boolean() });
3193
+ var BrowserSetEnabledResult = import_zod33.z.strictObject({ enabled: import_zod33.z.boolean() });
3194
+ var BrowserPairCodeParams = import_zod33.z.strictObject({});
3195
+ var BrowserPairCodeResult = import_zod33.z.strictObject({ code: import_zod33.z.string().min(16).max(128) });
3196
+ var BrowserPairResetParams = import_zod33.z.strictObject({});
3197
+ var BrowserCallParams = import_zod33.z.strictObject({
3198
+ tool: import_zod33.z.string().min(1).max(96).regex(/^[a-z][a-z0-9_]*$/),
3199
+ args: import_zod33.z.record(import_zod33.z.string(), import_zod33.z.unknown()),
3200
+ /** Which session; default: the most recently active routable one (BROWSER ambiguity → CONFLICT). */
3201
+ client_instance: BrowserClientInstance.optional(),
3202
+ /** How long to wait, including a person's confirmation; default 120 s. */
3203
+ timeout_ms: import_zod33.z.int().min(1e3).max(6e5).optional()
3204
+ });
3205
+ var BrowserCallResult = import_zod33.z.strictObject({
3206
+ client_instance: BrowserClientInstance,
3207
+ result: import_zod33.z.unknown(),
3208
+ duration_ms: nonNegInt
3209
+ });
3210
+ var BrowserInvokeEvent = import_zod33.z.strictObject({
3211
+ call_id: import_zod33.z.string().min(1).max(64),
3212
+ tool: import_zod33.z.string().min(1).max(96),
3213
+ args: import_zod33.z.record(import_zod33.z.string(), import_zod33.z.unknown()),
3214
+ deadline_ms: epochMs
3215
+ });
3216
+ var BrowserSessionsChangedEvent = import_zod33.z.strictObject({ count: nonNegInt, enabled: import_zod33.z.boolean() });
3217
+ var BrowserProgressEvent = import_zod33.z.strictObject({
3218
+ call_id: import_zod33.z.string().min(1).max(64),
3219
+ client_instance: BrowserClientInstance,
3220
+ phase: BrowserCallPhase
3221
+ });
3222
+ var DesktopHealth = import_zod33.z.strictObject({
3223
+ status: import_zod33.z.literal("ok"),
3224
+ service: import_zod33.z.literal("matrx-desktop"),
3225
+ version: import_zod33.z.string().max(32),
3226
+ protocol_version: import_zod33.z.string().max(16),
3227
+ ws_path: import_zod33.z.literal("/v1/connect"),
3228
+ device_id: import_zod33.z.string().max(64),
3229
+ browser_connection: import_zod33.z.enum(["on", "off"])
3230
+ });
3231
+ var BrowserPairRequest = import_zod33.z.strictObject({ client_instance: BrowserClientInstance });
3232
+ var BrowserPairResult = import_zod33.z.strictObject({ pair_token: import_zod33.z.string().min(16).max(128), ws_path: import_zod33.z.literal("/v1/connect") });
3233
+ var MATRX_EXTENSION_IDS = {
3234
+ store: "hnfolienncfklkgmdjjmhhegglimlamg",
3235
+ development: "cihdmkcdjjckfhjpgoedmgfpoljebaml"
3236
+ };
3237
+ var DISCOVERY_FILE = { live: "matrx2.json", development: "matrx2-dev.json" };
3238
+
3045
3239
  // src/schema/registry.ts
3046
3240
  var FS_ERR = ["NOT_FOUND", "PERMISSION_DENIED_OS", "INVALID_PARAMS", "RESOURCE_BUSY", "INTERNAL"];
3047
3241
  var OPS = {
@@ -3104,6 +3298,8 @@ var OPS = {
3104
3298
  // 1.11: Going cold, Spend, sync health, windows upkeep.
3105
3299
  "apps.chats.cold": { params: AppsChatsColdParams, result: AppsChatsColdResult, kind: "unary", since: "1.11", errors: ["NOT_FOUND", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
3106
3300
  "apps.chats.open": { params: AppsChatsOpenParams, result: AppsWindowActionResult, kind: "unary", since: "1.11", errors: ["NOT_FOUND", "CONFLICT", "TIMEOUT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
3301
+ "apps.chats.titles_check": { params: AppsChatsTitlesCheckParams, result: AppsChatsTitlesCheckResult, kind: "unary", since: "1.29", errors: ["NOT_FOUND", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
3302
+ "apps.chats.titles_push": { params: AppsChatsTitlesPushParams, result: AppsChatsTitlesPushResult, kind: "unary", since: "1.29", errors: ["NOT_FOUND", "CONFLICT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
3107
3303
  "apps.spend": { params: AppsSpendParams, result: AppsSpendResult, kind: "unary", since: "1.11", errors: ["NOT_FOUND", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
3108
3304
  "apps.sync.status": { params: AppsSyncStatusParams, result: AppsSyncStatusResult, kind: "unary", since: "1.11", errors: ["NOT_FOUND", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
3109
3305
  "apps.sync.run": { params: AppsSyncRunParams, result: AppsWindowActionResult, kind: "unary", since: "1.11", errors: ["NOT_FOUND", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
@@ -3187,7 +3383,17 @@ var OPS = {
3187
3383
  // 1.26: the app's own update (it installs only once every window quit) and bringing the windows back.
3188
3384
  "apps.windows.update_state": { params: AppsWindowsUpdateStateParams, result: AppsWindowsUpdateStateResult, kind: "unary", since: "1.26", errors: ["NOT_FOUND", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
3189
3385
  "apps.windows.reopen": { params: AppsWindowsReopenParams, result: AppsWindowsReopenResult, kind: "unary", since: "1.26", errors: ["NOT_FOUND", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
3190
- "apps.windows.update_and_reopen": { params: AppsWindowsUpdateAndReopenParams, result: AppsWindowsUpdateAndReopenResult, kind: "unary", since: "1.26", errors: ["NOT_FOUND", "CONFLICT", "TIMEOUT", "PLATFORM_UNSUPPORTED", "INTERNAL"] }
3386
+ "apps.windows.update_and_reopen": { params: AppsWindowsUpdateAndReopenParams, result: AppsWindowsUpdateAndReopenResult, kind: "unary", since: "1.26", errors: ["NOT_FOUND", "CONFLICT", "TIMEOUT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
3387
+ // 1.28: the AI Matrx extension as a client (register, result, progress), the Browsers screen, and agents' calls.
3388
+ "browser.register": { params: BrowserRegisterParams, result: BrowserRegisterResult, kind: "unary", since: "1.28", errors: ["AUTH_FORBIDDEN", "INVALID_PARAMS", "INTERNAL"] },
3389
+ "browser.result": { params: BrowserResultParams, result: BrowserResultResult, kind: "unary", since: "1.28", errors: ["AUTH_FORBIDDEN", "PAYLOAD_TOO_LARGE"] },
3390
+ "browser.progress": { params: BrowserProgressParams, result: BrowserProgressResult, kind: "unary", since: "1.28", errors: ["AUTH_FORBIDDEN"] },
3391
+ "browser.sessions": { params: BrowserSessionsParams, result: BrowserSessionsResult, kind: "unary", since: "1.28", errors: ["INTERNAL"] },
3392
+ "browser.disconnect": { params: BrowserDisconnectParams, result: BrowserDisconnectResult, kind: "unary", since: "1.28", errors: ["NOT_FOUND", "AUTH_FORBIDDEN"] },
3393
+ "browser.set_enabled": { params: BrowserSetEnabledParams, result: BrowserSetEnabledResult, kind: "unary", since: "1.28", errors: ["AUTH_FORBIDDEN", "INTERNAL"] },
3394
+ "browser.pair_code": { params: BrowserPairCodeParams, result: BrowserPairCodeResult, kind: "unary", since: "1.28", errors: ["AUTH_FORBIDDEN", "INTERNAL"] },
3395
+ "browser.pair_reset": { params: BrowserPairResetParams, result: BrowserPairCodeResult, kind: "unary", since: "1.28", errors: ["AUTH_FORBIDDEN", "INTERNAL"] },
3396
+ "browser.call": { params: BrowserCallParams, result: BrowserCallResult, kind: "unary", since: "1.28", errors: ["NOT_FOUND", "CONFLICT", "AUTH_FORBIDDEN", "INVALID_PARAMS", "TIMEOUT", "CANCELLED", "RESOURCE_GONE", "PAYLOAD_TOO_LARGE", "INTERNAL"] }
3191
3397
  };
3192
3398
  var EVENTS = {
3193
3399
  "fs.changed": FsChangedEvent,
@@ -3201,7 +3407,10 @@ var EVENTS = {
3201
3407
  "coding.history.progress": CodingHistoryProgressEvent,
3202
3408
  "relay.device_status": RelayDeviceStatusEvent,
3203
3409
  "relay.auth_expiring": RelayAuthExpiringEvent,
3204
- "diag.errors.changed": DiagErrorsChangedEvent
3410
+ "diag.errors.changed": DiagErrorsChangedEvent,
3411
+ "browser.invoke": BrowserInvokeEvent,
3412
+ "browser.sessions_changed": BrowserSessionsChangedEvent,
3413
+ "browser.progress": BrowserProgressEvent
3205
3414
  };
3206
3415
  var SERVICES = {
3207
3416
  ml: {
@@ -3585,6 +3794,12 @@ var NAMED_SCHEMAS = {
3585
3794
  AppsChatsColdParams,
3586
3795
  AppsChatsColdResult,
3587
3796
  AppsChatsOpenParams,
3797
+ TitleCopies,
3798
+ TitleMismatch,
3799
+ AppsChatsTitlesCheckParams,
3800
+ AppsChatsTitlesCheckResult,
3801
+ AppsChatsTitlesPushParams,
3802
+ AppsChatsTitlesPushResult,
3588
3803
  SpendSplit,
3589
3804
  SpendScopes,
3590
3805
  SpendAccount,
@@ -3654,7 +3869,36 @@ var NAMED_SCHEMAS = {
3654
3869
  AppsWindowsReopenParams,
3655
3870
  AppsWindowsReopenResult,
3656
3871
  AppsWindowsUpdateAndReopenParams,
3657
- AppsWindowsUpdateAndReopenResult
3872
+ AppsWindowsUpdateAndReopenResult,
3873
+ BrowserClientInstance,
3874
+ BrowserKind,
3875
+ BrowserSessionState,
3876
+ BrowserSession,
3877
+ BrowserRegisterParams,
3878
+ BrowserRegisterResult,
3879
+ BrowserCallError,
3880
+ BrowserResultParams,
3881
+ BrowserResultResult,
3882
+ BrowserCallPhase,
3883
+ BrowserProgressParams,
3884
+ BrowserProgressResult,
3885
+ BrowserSessionsParams,
3886
+ BrowserSessionsResult,
3887
+ BrowserDisconnectParams,
3888
+ BrowserDisconnectResult,
3889
+ BrowserSetEnabledParams,
3890
+ BrowserSetEnabledResult,
3891
+ BrowserPairCodeParams,
3892
+ BrowserPairCodeResult,
3893
+ BrowserPairResetParams,
3894
+ BrowserCallParams,
3895
+ BrowserCallResult,
3896
+ BrowserInvokeEvent,
3897
+ BrowserSessionsChangedEvent,
3898
+ BrowserProgressEvent,
3899
+ DesktopHealth,
3900
+ BrowserPairRequest,
3901
+ BrowserPairResult
3658
3902
  };
3659
3903
 
3660
3904
  // src/versioning.ts
@@ -3687,7 +3931,12 @@ var REASONS_SINCE = {
3687
3931
  download_failed: "1.2",
3688
3932
  service_starting: "1.2",
3689
3933
  service_restarted: "1.2",
3690
- service_failed: "1.2"
3934
+ service_failed: "1.2",
3935
+ browser_not_connected: "1.28",
3936
+ browser_ambiguous: "1.28",
3937
+ browser_account_mismatch: "1.28",
3938
+ browser_connection_off: "1.28",
3939
+ awaiting_confirmation: "1.28"
3691
3940
  };
3692
3941
  function statusForPeer(status, version) {
3693
3942
  const rule = NULL_SINCE["RelayDeviceStatusEvent.since_ms"];
@@ -3806,7 +4055,7 @@ function forPeer(op, part, value, version) {
3806
4055
  var VERSIONED_RESULT_OPS = [.../* @__PURE__ */ new Set([...RESULT_PATH.keys(), ...WINDOW_RESULTS.keys(), ...NESTED_RESULTS.keys()])];
3807
4056
 
3808
4057
  // src/contract.ts
3809
- var CONTRACT_SHA256 = "eece2e5eba3e6e33126a0fda2fad8c91abe9c878fbfdc98bd049ff5af126cb09";
4058
+ var CONTRACT_SHA256 = "5994ab9f6c2dba636a90e18c99bd3a90736f23782b3f8df9e0d2d7234b8e2b1b";
3810
4059
 
3811
4060
  // src/close-policy.ts
3812
4061
  var CLOSE_RULES = {