@spotpatch/shared 1.12.0 → 1.13.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.
Files changed (61) hide show
  1. package/dist/annotation-C0Me9mN2.d.cts +102 -0
  2. package/dist/annotation-C0Me9mN2.d.ts +102 -0
  3. package/dist/chunk-C2PJ4UUU.js +195 -0
  4. package/dist/chunk-C2PJ4UUU.js.map +1 -0
  5. package/dist/chunk-DYTWEIES.js +89 -0
  6. package/dist/chunk-DYTWEIES.js.map +1 -0
  7. package/dist/{chunk-JGOIBOFI.js → chunk-FPDSZDP2.js} +16 -2
  8. package/dist/chunk-FPDSZDP2.js.map +1 -0
  9. package/dist/chunk-IUTOVI5G.js +584 -0
  10. package/dist/chunk-IUTOVI5G.js.map +1 -0
  11. package/dist/{chunk-JU5HIWX7.js → chunk-YQ5GL523.js} +8 -173
  12. package/dist/chunk-YQ5GL523.js.map +1 -0
  13. package/dist/contextual-ask-B0mCFn92.d.cts +1451 -0
  14. package/dist/contextual-ask-B0mCFn92.d.ts +1451 -0
  15. package/dist/contextual-ask-browser.cjs +200 -0
  16. package/dist/contextual-ask-browser.cjs.map +1 -0
  17. package/dist/contextual-ask-browser.d.cts +31 -0
  18. package/dist/contextual-ask-browser.d.ts +31 -0
  19. package/dist/contextual-ask-browser.js +66 -0
  20. package/dist/contextual-ask-browser.js.map +1 -0
  21. package/dist/contextual-ask-node.cjs +968 -0
  22. package/dist/contextual-ask-node.cjs.map +1 -0
  23. package/dist/contextual-ask-node.d.cts +14 -0
  24. package/dist/contextual-ask-node.d.ts +14 -0
  25. package/dist/contextual-ask-node.js +122 -0
  26. package/dist/contextual-ask-node.js.map +1 -0
  27. package/dist/{data-flow-runtime-oq9m21IP.d.cts → data-flow-runtime-D8HPSb2i.d.cts} +13 -13
  28. package/dist/{data-flow-runtime-BelOgo8s.d.ts → data-flow-runtime-vKeEaJgT.d.ts} +13 -13
  29. package/dist/data-flow-runtime.cjs +2 -0
  30. package/dist/data-flow-runtime.cjs.map +1 -1
  31. package/dist/data-flow-runtime.d.cts +2 -2
  32. package/dist/data-flow-runtime.d.ts +2 -2
  33. package/dist/data-flow-runtime.js +1 -1
  34. package/dist/{endpoints-GedF44M2.d.cts → endpoints-O3ohYyAo.d.cts} +7 -1
  35. package/dist/{endpoints-GedF44M2.d.ts → endpoints-O3ohYyAo.d.ts} +7 -1
  36. package/dist/error-code-DRz2eqcB.d.cts +63 -0
  37. package/dist/error-code-DRz2eqcB.d.ts +63 -0
  38. package/dist/external-agent-node.cjs +142 -121
  39. package/dist/external-agent-node.cjs.map +1 -1
  40. package/dist/external-agent-node.d.cts +27 -26
  41. package/dist/external-agent-node.d.ts +27 -26
  42. package/dist/external-agent-node.js +4 -2
  43. package/dist/external-agent-node.js.map +1 -1
  44. package/dist/{external-handoff-BNUyMfNb.d.ts → external-handoff-DighrWn8.d.ts} +30 -130
  45. package/dist/{external-handoff-BNUyMfNb.d.cts → external-handoff-DwtFFR6F.d.cts} +30 -130
  46. package/dist/external-handoff-browser.cjs +2 -0
  47. package/dist/external-handoff-browser.cjs.map +1 -1
  48. package/dist/external-handoff-browser.d.cts +4 -3
  49. package/dist/external-handoff-browser.d.ts +4 -3
  50. package/dist/external-handoff-browser.js +1 -1
  51. package/dist/index.cjs +1144 -422
  52. package/dist/index.cjs.map +1 -1
  53. package/dist/index.d.cts +126 -178
  54. package/dist/index.d.ts +126 -178
  55. package/dist/index.js +97 -16
  56. package/dist/index.js.map +1 -1
  57. package/package.json +29 -2
  58. package/dist/chunk-JGOIBOFI.js.map +0 -1
  59. package/dist/chunk-JU5HIWX7.js.map +0 -1
  60. package/dist/{external-agent-control-BMoSq_xI.d.cts → external-agent-control-CRBbjDDk.d.cts} +46 -46
  61. package/dist/{external-agent-control-BMoSq_xI.d.ts → external-agent-control-CRBbjDDk.d.ts} +46 -46
@@ -1,105 +1,5 @@
1
1
  import { z } from 'zod';
2
-
3
- interface ContextBudget {
4
- readonly totalCharacters: number;
5
- readonly domCharacters: number;
6
- readonly cssCharacters: number;
7
- readonly codeCharacters: number;
8
- readonly maxCodeLines: number;
9
- readonly maxComponentDepth: number;
10
- }
11
- interface CodeContext {
12
- readonly relativePath: string;
13
- readonly language: "tsx" | "jsx";
14
- readonly startLine: number;
15
- readonly endLine: number;
16
- readonly excerpt: string;
17
- readonly boundary: "component" | "nearby-lines";
18
- }
19
-
20
- type SourceConfidence = "exact" | "probable" | "approximate" | "unknown";
21
- type SourceOrigin = "jsx-host" | "react-fiber" | "dom-ancestor" | "none";
22
- interface SourceRef {
23
- readonly fileId?: string;
24
- readonly relativePath?: string;
25
- readonly line?: number;
26
- readonly column?: number;
27
- readonly origin: SourceOrigin;
28
- readonly confidence: SourceConfidence;
29
- }
30
- interface ReactContext {
31
- readonly supported: boolean;
32
- readonly version?: string;
33
- readonly componentName?: string;
34
- readonly componentSourceId?: string;
35
- readonly sourceVersion?: string;
36
- readonly componentStack: readonly string[];
37
- readonly source?: SourceRef;
38
- }
39
-
40
- interface MatchedStyleRule {
41
- readonly selector: string;
42
- readonly declarations: string;
43
- readonly source?: string;
44
- readonly media?: string;
45
- }
46
- interface StyleContext {
47
- readonly classNames: readonly string[];
48
- readonly inlineStyle?: string;
49
- readonly matchedRules: readonly MatchedStyleRule[];
50
- readonly computed: Readonly<Record<string, string>>;
51
- readonly warnings: readonly string[];
52
- }
53
-
54
- interface PageContext {
55
- readonly url: string;
56
- readonly pathname: string;
57
- readonly title: string;
58
- readonly viewportWidth: number;
59
- readonly viewportHeight: number;
60
- readonly devicePixelRatio: number;
61
- }
62
- interface ElementContext {
63
- readonly tagName: string;
64
- readonly selector: string;
65
- readonly sanitizedHtml: string;
66
- readonly textPreview?: string;
67
- readonly role?: string;
68
- readonly rect: Readonly<{
69
- x: number;
70
- y: number;
71
- width: number;
72
- height: number;
73
- }>;
74
- }
75
- /** Protocol hard limit. Runtime configuration may choose a smaller limit. */
76
- declare const MAX_ANNOTATION_TARGETS = 20;
77
- /** Each target owns its requested change; the UI enforces the same bound. */
78
- declare const MAX_TARGET_INSTRUCTION_CHARACTERS = 2000;
79
- /** Keeps the complete, atomic user intent within the prompt and request budgets. */
80
- declare const MAX_ANNOTATION_INSTRUCTION_CHARACTERS = 4000;
81
- declare const SPOTPATCH_LOCALES: readonly ["en-US", "zh-CN"];
82
- type SpotPatchLocale = (typeof SPOTPATCH_LOCALES)[number];
83
- declare const SPOTPATCH_LOCALE_PREFERENCES: readonly ["auto", "en-US", "zh-CN"];
84
- type SpotPatchLocalePreference = (typeof SPOTPATCH_LOCALE_PREFERENCES)[number];
85
- interface SpotTargetContext {
86
- readonly instruction: string;
87
- readonly page?: Readonly<PageContext>;
88
- readonly source: SourceRef;
89
- readonly react: ReactContext;
90
- readonly element: ElementContext;
91
- readonly styles: StyleContext;
92
- readonly code?: CodeContext;
93
- readonly warnings: readonly string[];
94
- }
95
- interface SpotAnnotation {
96
- readonly schemaVersion: 3;
97
- readonly id: string;
98
- readonly locale: SpotPatchLocale;
99
- readonly page: Readonly<PageContext>;
100
- readonly targets: readonly SpotTargetContext[];
101
- readonly createdAt: string;
102
- }
2
+ import { S as SpotAnnotation } from './annotation-C0Me9mN2.cjs';
103
3
 
104
4
  declare const EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION: 1;
105
5
  declare const EXTERNAL_HANDOFF_BROKER_PROTOCOL_VERSION: 2;
@@ -144,10 +44,10 @@ type ExternalHandoffDispatchPhase = (typeof EXTERNAL_HANDOFF_DISPATCH_PHASES)[nu
144
44
  type ExternalHandoffReportableDispatchPhase = (typeof EXTERNAL_HANDOFF_REPORTABLE_DISPATCH_PHASES)[number];
145
45
 
146
46
  declare const externalHandoffReportableDispatchPhaseSchema: z.ZodEnum<{
147
- dispatching: "dispatching";
148
- completed: "completed";
149
47
  failed: "failed";
150
48
  dispatched: "dispatched";
49
+ completed: "completed";
50
+ dispatching: "dispatching";
151
51
  working: "working";
152
52
  "delivery-unknown": "delivery-unknown";
153
53
  }>;
@@ -167,8 +67,8 @@ declare const externalHandoffSummarySchema: z.ZodObject<{
167
67
  publishedAt: z.ZodISODateTime;
168
68
  expiresAt: z.ZodISODateTime;
169
69
  state: z.ZodEnum<{
170
- available: "available";
171
70
  expired: "expired";
71
+ available: "available";
172
72
  superseded: "superseded";
173
73
  }>;
174
74
  pickupCount: z.ZodNumber;
@@ -218,16 +118,16 @@ declare const externalHandoffSnapshotSchema: z.ZodObject<{
218
118
  line: z.ZodOptional<z.ZodNumber>;
219
119
  column: z.ZodOptional<z.ZodNumber>;
220
120
  origin: z.ZodEnum<{
221
- none: "none";
222
121
  "jsx-host": "jsx-host";
223
122
  "react-fiber": "react-fiber";
224
123
  "dom-ancestor": "dom-ancestor";
124
+ none: "none";
225
125
  }>;
226
126
  confidence: z.ZodEnum<{
227
- unknown: "unknown";
228
127
  exact: "exact";
229
128
  probable: "probable";
230
129
  approximate: "approximate";
130
+ unknown: "unknown";
231
131
  }>;
232
132
  }, z.core.$strict>;
233
133
  react: z.ZodObject<{
@@ -243,16 +143,16 @@ declare const externalHandoffSnapshotSchema: z.ZodObject<{
243
143
  line: z.ZodOptional<z.ZodNumber>;
244
144
  column: z.ZodOptional<z.ZodNumber>;
245
145
  origin: z.ZodEnum<{
246
- none: "none";
247
146
  "jsx-host": "jsx-host";
248
147
  "react-fiber": "react-fiber";
249
148
  "dom-ancestor": "dom-ancestor";
149
+ none: "none";
250
150
  }>;
251
151
  confidence: z.ZodEnum<{
252
- unknown: "unknown";
253
152
  exact: "exact";
254
153
  probable: "probable";
255
154
  approximate: "approximate";
155
+ unknown: "unknown";
256
156
  }>;
257
157
  }, z.core.$strict>>;
258
158
  }, z.core.$strict>;
@@ -307,8 +207,8 @@ declare const activeAdapterSummarySchema: z.ZodObject<{
307
207
  }>;
308
208
  state: z.ZodEnum<{
309
209
  ready: "ready";
310
- busy: "busy";
311
210
  blocked: "blocked";
211
+ busy: "busy";
312
212
  }>;
313
213
  canDispatch: z.ZodBoolean;
314
214
  connectedAt: z.ZodISODateTime;
@@ -322,10 +222,10 @@ declare const dispatchSummarySchema: z.ZodObject<{
322
222
  revision: z.ZodNumber;
323
223
  phase: z.ZodEnum<{
324
224
  queued: "queued";
325
- dispatching: "dispatching";
326
- completed: "completed";
327
225
  failed: "failed";
328
226
  dispatched: "dispatched";
227
+ completed: "completed";
228
+ dispatching: "dispatching";
329
229
  working: "working";
330
230
  "delivery-unknown": "delivery-unknown";
331
231
  }>;
@@ -365,16 +265,16 @@ declare const externalHandoffPublishRequestSchema: z.ZodObject<{
365
265
  line: z.ZodOptional<z.ZodNumber>;
366
266
  column: z.ZodOptional<z.ZodNumber>;
367
267
  origin: z.ZodEnum<{
368
- none: "none";
369
268
  "jsx-host": "jsx-host";
370
269
  "react-fiber": "react-fiber";
371
270
  "dom-ancestor": "dom-ancestor";
271
+ none: "none";
372
272
  }>;
373
273
  confidence: z.ZodEnum<{
374
- unknown: "unknown";
375
274
  exact: "exact";
376
275
  probable: "probable";
377
276
  approximate: "approximate";
277
+ unknown: "unknown";
378
278
  }>;
379
279
  }, z.core.$strict>;
380
280
  react: z.ZodObject<{
@@ -390,16 +290,16 @@ declare const externalHandoffPublishRequestSchema: z.ZodObject<{
390
290
  line: z.ZodOptional<z.ZodNumber>;
391
291
  column: z.ZodOptional<z.ZodNumber>;
392
292
  origin: z.ZodEnum<{
393
- none: "none";
394
293
  "jsx-host": "jsx-host";
395
294
  "react-fiber": "react-fiber";
396
295
  "dom-ancestor": "dom-ancestor";
296
+ none: "none";
397
297
  }>;
398
298
  confidence: z.ZodEnum<{
399
- unknown: "unknown";
400
299
  exact: "exact";
401
300
  probable: "probable";
402
301
  approximate: "approximate";
302
+ unknown: "unknown";
403
303
  }>;
404
304
  }, z.core.$strict>>;
405
305
  }, z.core.$strict>;
@@ -467,8 +367,8 @@ declare const externalHandoffCapabilitySchema: z.ZodObject<{
467
367
  }>;
468
368
  state: z.ZodEnum<{
469
369
  ready: "ready";
470
- busy: "busy";
471
370
  blocked: "blocked";
371
+ busy: "busy";
472
372
  }>;
473
373
  canDispatch: z.ZodBoolean;
474
374
  connectedAt: z.ZodISODateTime;
@@ -482,10 +382,10 @@ declare const externalHandoffCapabilitySchema: z.ZodObject<{
482
382
  revision: z.ZodNumber;
483
383
  phase: z.ZodEnum<{
484
384
  queued: "queued";
485
- dispatching: "dispatching";
486
- completed: "completed";
487
385
  failed: "failed";
488
386
  dispatched: "dispatched";
387
+ completed: "completed";
388
+ dispatching: "dispatching";
489
389
  working: "working";
490
390
  "delivery-unknown": "delivery-unknown";
491
391
  }>;
@@ -503,8 +403,8 @@ declare const externalHandoffPublishDeliverySchema: z.ZodDiscriminatedUnion<[z.Z
503
403
  }>;
504
404
  state: z.ZodEnum<{
505
405
  ready: "ready";
506
- busy: "busy";
507
406
  blocked: "blocked";
407
+ busy: "busy";
508
408
  }>;
509
409
  canDispatch: z.ZodBoolean;
510
410
  connectedAt: z.ZodISODateTime;
@@ -518,10 +418,10 @@ declare const externalHandoffPublishDeliverySchema: z.ZodDiscriminatedUnion<[z.Z
518
418
  revision: z.ZodNumber;
519
419
  phase: z.ZodEnum<{
520
420
  queued: "queued";
521
- dispatching: "dispatching";
522
- completed: "completed";
523
421
  failed: "failed";
524
422
  dispatched: "dispatched";
423
+ completed: "completed";
424
+ dispatching: "dispatching";
525
425
  working: "working";
526
426
  "delivery-unknown": "delivery-unknown";
527
427
  }>;
@@ -545,8 +445,8 @@ declare const externalHandoffPublishResultSchema: z.ZodObject<{
545
445
  publishedAt: z.ZodISODateTime;
546
446
  expiresAt: z.ZodISODateTime;
547
447
  state: z.ZodEnum<{
548
- available: "available";
549
448
  expired: "expired";
449
+ available: "available";
550
450
  superseded: "superseded";
551
451
  }>;
552
452
  pickupCount: z.ZodNumber;
@@ -563,8 +463,8 @@ declare const externalHandoffPublishResultSchema: z.ZodObject<{
563
463
  }>;
564
464
  state: z.ZodEnum<{
565
465
  ready: "ready";
566
- busy: "busy";
567
466
  blocked: "blocked";
467
+ busy: "busy";
568
468
  }>;
569
469
  canDispatch: z.ZodBoolean;
570
470
  connectedAt: z.ZodISODateTime;
@@ -578,10 +478,10 @@ declare const externalHandoffPublishResultSchema: z.ZodObject<{
578
478
  revision: z.ZodNumber;
579
479
  phase: z.ZodEnum<{
580
480
  queued: "queued";
581
- dispatching: "dispatching";
582
- completed: "completed";
583
481
  failed: "failed";
584
482
  dispatched: "dispatched";
483
+ completed: "completed";
484
+ dispatching: "dispatching";
585
485
  working: "working";
586
486
  "delivery-unknown": "delivery-unknown";
587
487
  }>;
@@ -607,8 +507,8 @@ declare const externalHandoffStatusResultSchema: z.ZodObject<{
607
507
  publishedAt: z.ZodISODateTime;
608
508
  expiresAt: z.ZodISODateTime;
609
509
  state: z.ZodEnum<{
610
- available: "available";
611
510
  expired: "expired";
511
+ available: "available";
612
512
  superseded: "superseded";
613
513
  }>;
614
514
  pickupCount: z.ZodNumber;
@@ -621,8 +521,8 @@ declare const externalHandoffStatusResultSchema: z.ZodObject<{
621
521
  }>;
622
522
  state: z.ZodEnum<{
623
523
  ready: "ready";
624
- busy: "busy";
625
524
  blocked: "blocked";
525
+ busy: "busy";
626
526
  }>;
627
527
  canDispatch: z.ZodBoolean;
628
528
  connectedAt: z.ZodISODateTime;
@@ -636,10 +536,10 @@ declare const externalHandoffStatusResultSchema: z.ZodObject<{
636
536
  revision: z.ZodNumber;
637
537
  phase: z.ZodEnum<{
638
538
  queued: "queued";
639
- dispatching: "dispatching";
640
- completed: "completed";
641
539
  failed: "failed";
642
540
  dispatched: "dispatched";
541
+ completed: "completed";
542
+ dispatching: "dispatching";
643
543
  working: "working";
644
544
  "delivery-unknown": "delivery-unknown";
645
545
  }>;
@@ -717,4 +617,4 @@ type ExternalHandoffPublishRequest = z.infer<typeof externalHandoffPublishReques
717
617
  type ExternalHandoffStatusRequest = z.infer<typeof externalHandoffStatusRequestSchema>;
718
618
  type ExternalHandoffResolveDeliveryRequest = z.infer<typeof externalHandoffResolveDeliveryRequestSchema>;
719
619
 
720
- export { externalHandoffResolveDeliveryRequestSchema as $, type ActiveAdapterSummary as A, type ElementContext as B, type ContextBudget as C, type DispatchSummary as D, EXTERNAL_HANDOFF_LIMITS as E, MAX_ANNOTATION_TARGETS as F, MAX_TARGET_INSTRUCTION_CHARACTERS as G, type MatchedStyleRule as H, SPOTPATCH_LOCALES as I, type SourceConfidence as J, type SourceOrigin as K, type SourceRef as L, MAX_ANNOTATION_INSTRUCTION_CHARACTERS as M, type SpotPatchLocalePreference as N, type SpotTargetContext as O, type PageContext as P, type StyleContext as Q, type ReactContext as R, type SpotAnnotation as S, activeAdapterSummarySchema as T, dispatchSummarySchema as U, externalHandoffCapabilityRequestSchema as V, externalHandoffCapabilitySchema as W, externalHandoffPublishDeliverySchema as X, externalHandoffPublishRequestSchema as Y, externalHandoffPublishResultSchema as Z, externalHandoffReportableDispatchPhaseSchema as _, type ExternalHandoffSnapshot as a, externalHandoffSnapshotSchema as a0, externalHandoffStatusRequestSchema as a1, externalHandoffStatusResultSchema as a2, externalHandoffSummarySchema as a3, EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS as b, EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES as c, EXTERNAL_HANDOFF_BROKER_PROTOCOL_VERSION as d, EXTERNAL_HANDOFF_DISPATCH_PHASES as e, EXTERNAL_HANDOFF_FRAMEWORKS as f, EXTERNAL_HANDOFF_REPORTABLE_DISPATCH_PHASES as g, EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION as h, EXTERNAL_HANDOFF_STATES as i, type ExternalHandoffActiveAdapterKind as j, type ExternalHandoffActiveAdapterState as k, type ExternalHandoffCapability as l, type ExternalHandoffDispatchPhase as m, type ExternalHandoffFramework as n, type ExternalHandoffPublishDelivery as o, type ExternalHandoffPublishRequest as p, type ExternalHandoffPublishResult as q, type ExternalHandoffReportableDispatchPhase as r, type ExternalHandoffResolveDeliveryRequest as s, type ExternalHandoffState as t, type ExternalHandoffStatusRequest as u, type ExternalHandoffStatusResult as v, type ExternalHandoffSummary as w, type SpotPatchLocale as x, SPOTPATCH_LOCALE_PREFERENCES as y, type CodeContext as z };
620
+ export { type ActiveAdapterSummary as A, externalHandoffCapabilitySchema as B, externalHandoffPublishDeliverySchema as C, type DispatchSummary as D, EXTERNAL_HANDOFF_LIMITS as E, externalHandoffPublishRequestSchema as F, externalHandoffPublishResultSchema as G, externalHandoffReportableDispatchPhaseSchema as H, externalHandoffResolveDeliveryRequestSchema as I, externalHandoffSnapshotSchema as J, externalHandoffStatusRequestSchema as K, externalHandoffStatusResultSchema as L, externalHandoffSummarySchema as M, type ExternalHandoffSnapshot as a, EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS as b, EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES as c, EXTERNAL_HANDOFF_BROKER_PROTOCOL_VERSION as d, EXTERNAL_HANDOFF_DISPATCH_PHASES as e, EXTERNAL_HANDOFF_FRAMEWORKS as f, EXTERNAL_HANDOFF_REPORTABLE_DISPATCH_PHASES as g, EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION as h, EXTERNAL_HANDOFF_STATES as i, type ExternalHandoffActiveAdapterKind as j, type ExternalHandoffActiveAdapterState as k, type ExternalHandoffCapability as l, type ExternalHandoffDispatchPhase as m, type ExternalHandoffFramework as n, type ExternalHandoffPublishDelivery as o, type ExternalHandoffPublishRequest as p, type ExternalHandoffPublishResult as q, type ExternalHandoffReportableDispatchPhase as r, type ExternalHandoffResolveDeliveryRequest as s, type ExternalHandoffState as t, type ExternalHandoffStatusRequest as u, type ExternalHandoffStatusResult as v, type ExternalHandoffSummary as w, activeAdapterSummarySchema as x, dispatchSummarySchema as y, externalHandoffCapabilityRequestSchema as z };
@@ -126,6 +126,8 @@ var SPOTPATCH_ENDPOINTS = Object.freeze({
126
126
  agentCapability: `${SPOTPATCH_API_BASE}/agent/capability`,
127
127
  agentWorkspaceHealth: `${SPOTPATCH_API_BASE}/agent/workspace-health`,
128
128
  agentJobs: `${SPOTPATCH_API_BASE}/agent/jobs`,
129
+ askCapability: `${SPOTPATCH_API_BASE}/ask/capability`,
130
+ askJobs: `${SPOTPATCH_API_BASE}/ask/jobs`,
129
131
  externalHandoffCapability: `${SPOTPATCH_API_BASE}/external-handoff/capability`,
130
132
  externalHandoffPublish: `${SPOTPATCH_API_BASE}/external-handoff/publish`,
131
133
  externalHandoffStatus: `${SPOTPATCH_API_BASE}/external-handoff/status`,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/external-handoff-browser.ts","../src/protocol/external-handoff-constants.ts","../src/protocol/endpoints.ts"],"sourcesContent":["import type { ERROR_CODES as GLOBAL_ERROR_CODES } from \"./errors/error-code.js\";\nimport type {\n EXTERNAL_AGENT_ACTIONS as GLOBAL_EXTERNAL_AGENT_ACTIONS,\n EXTERNAL_AGENT_AUTH_READINESS as GLOBAL_EXTERNAL_AGENT_AUTH_READINESS,\n EXTERNAL_AGENT_CHECK_OUTCOMES as GLOBAL_EXTERNAL_AGENT_CHECK_OUTCOMES,\n EXTERNAL_AGENT_CONNECTION_STATES as GLOBAL_EXTERNAL_AGENT_CONNECTION_STATES,\n EXTERNAL_AGENT_CONTROL_LIMITS as GLOBAL_EXTERNAL_AGENT_CONTROL_LIMITS,\n EXTERNAL_AGENT_DELIVERY_STATUSES as GLOBAL_EXTERNAL_AGENT_DELIVERY_STATUSES,\n EXTERNAL_AGENT_ERROR_CODES as GLOBAL_EXTERNAL_AGENT_ERROR_CODES,\n EXTERNAL_AGENT_ERROR_RECOVERABILITY as GLOBAL_EXTERNAL_AGENT_ERROR_RECOVERABILITY,\n EXTERNAL_AGENT_ERROR_STAGES as GLOBAL_EXTERNAL_AGENT_ERROR_STAGES,\n EXTERNAL_AGENT_EXECUTION_STATUSES as GLOBAL_EXTERNAL_AGENT_EXECUTION_STATUSES,\n EXTERNAL_AGENT_GRANT_STATES as GLOBAL_EXTERNAL_AGENT_GRANT_STATES,\n EXTERNAL_AGENT_MANAGED_PROFILE as GLOBAL_EXTERNAL_AGENT_MANAGED_PROFILE,\n EXTERNAL_AGENT_MANAGED_PHASES as GLOBAL_EXTERNAL_AGENT_MANAGED_PHASES,\n EXTERNAL_AGENT_MODES as GLOBAL_EXTERNAL_AGENT_MODES,\n EXTERNAL_AGENT_VALIDATION_OUTCOMES as GLOBAL_EXTERNAL_AGENT_VALIDATION_OUTCOMES,\n} from \"./protocol/external-agent-control.js\";\nimport type { EXTERNAL_HANDOFF_LIMITS as GLOBAL_EXTERNAL_HANDOFF_LIMITS } from \"./protocol/external-handoff-constants.js\";\n\n/** Browser-reachable errors only; keeps unrelated Agent/worktree codes out of the lazy UI. */\nexport const ERROR_CODES = Object.freeze({\n INVALID_REQUEST: \"INVALID_REQUEST\",\n INVALID_TOKEN: \"INVALID_TOKEN\",\n ORIGIN_NOT_ALLOWED: \"ORIGIN_NOT_ALLOWED\",\n EXTERNAL_HANDOFF_DISABLED: \"EXTERNAL_HANDOFF_DISABLED\",\n EXTERNAL_HANDOFF_UNAVAILABLE: \"EXTERNAL_HANDOFF_UNAVAILABLE\",\n HANDOFF_VALIDATION_FAILED: \"HANDOFF_VALIDATION_FAILED\",\n HANDOFF_SOURCE_STALE: \"HANDOFF_SOURCE_STALE\",\n HANDOFF_NOT_FOUND: \"HANDOFF_NOT_FOUND\",\n HANDOFF_EXPIRED: \"HANDOFF_EXPIRED\",\n HANDOFF_CURSOR_INVALID: \"HANDOFF_CURSOR_INVALID\",\n HANDOFF_RESPONSE_TOO_LARGE: \"HANDOFF_RESPONSE_TOO_LARGE\",\n EXTERNAL_AGENT_BUSY: \"EXTERNAL_AGENT_BUSY\",\n ACTIVE_DISPATCH_INVALID: \"ACTIVE_DISPATCH_INVALID\",\n SESSION_CLOSED: \"SESSION_CLOSED\",\n INTERNAL_ERROR: \"INTERNAL_ERROR\",\n} as const satisfies Pick<\n typeof GLOBAL_ERROR_CODES,\n | \"ACTIVE_DISPATCH_INVALID\"\n | \"EXTERNAL_AGENT_BUSY\"\n | \"EXTERNAL_HANDOFF_DISABLED\"\n | \"EXTERNAL_HANDOFF_UNAVAILABLE\"\n | \"HANDOFF_CURSOR_INVALID\"\n | \"HANDOFF_EXPIRED\"\n | \"HANDOFF_NOT_FOUND\"\n | \"HANDOFF_RESPONSE_TOO_LARGE\"\n | \"HANDOFF_SOURCE_STALE\"\n | \"HANDOFF_VALIDATION_FAILED\"\n | \"INTERNAL_ERROR\"\n | \"INVALID_REQUEST\"\n | \"INVALID_TOKEN\"\n | \"ORIGIN_NOT_ALLOWED\"\n | \"SESSION_CLOSED\"\n>);\nexport type ErrorCode = (typeof ERROR_CODES)[keyof typeof ERROR_CODES];\nconst ERROR_CODE_VALUES: readonly string[] = Object.values(ERROR_CODES);\n\nexport function isErrorCode(value: unknown): value is ErrorCode {\n return typeof value === \"string\" && ERROR_CODE_VALUES.includes(value);\n}\n\n/** Browser-consumed limits only; literal types make drift from the canonical limits fail. */\nexport const EXTERNAL_HANDOFF_LIMITS = Object.freeze({\n maximumConnectorReceipts: 64,\n maximumWaiters: 8,\n activeStatusPollMs: 1_000,\n} as const satisfies Pick<\n typeof GLOBAL_EXTERNAL_HANDOFF_LIMITS,\n \"activeStatusPollMs\" | \"maximumConnectorReceipts\" | \"maximumWaiters\"\n>);\n\nexport const EXTERNAL_AGENT_CONTROL_LIMITS = Object.freeze({\n maximumEventSubscribers: 4,\n eventHeartbeatMs: 15_000,\n eventReconnectMinimumMs: 500,\n eventReconnectMaximumMs: 10_000,\n maximumChangedFiles: 20,\n maximumChecks: 64,\n maximumEventLineBytes: 64 * 1_024,\n maximumResultDiffBytes: 512_000,\n} as const satisfies typeof GLOBAL_EXTERNAL_AGENT_CONTROL_LIMITS);\nexport const EXTERNAL_AGENT_MANAGED_PROFILE =\n \"managed-apply-v1\" as const satisfies typeof GLOBAL_EXTERNAL_AGENT_MANAGED_PROFILE;\n\n/** Browser-safe literal projections; type-only checks prevent protocol drift without Zod. */\nexport const EXTERNAL_AGENT_MODES = Object.freeze([\n \"inbox\",\n \"managed\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_MODES);\nexport const EXTERNAL_AGENT_CONNECTION_STATES = Object.freeze([\n \"disconnected\",\n \"diagnosing\",\n \"awaiting-consent\",\n \"connecting\",\n \"ready\",\n \"busy\",\n \"degraded\",\n \"error\",\n \"disconnecting\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_CONNECTION_STATES);\nexport const EXTERNAL_AGENT_AUTH_READINESS = Object.freeze([\n \"authenticated\",\n \"auth-not-required\",\n \"signed-out\",\n \"unknown\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_AUTH_READINESS);\nexport const EXTERNAL_AGENT_GRANT_STATES = Object.freeze([\n \"missing\",\n \"valid\",\n \"invalid\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_GRANT_STATES);\nexport const EXTERNAL_AGENT_DELIVERY_STATUSES = Object.freeze([\n \"queued\",\n \"dispatching\",\n \"accepted\",\n \"unknown\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_DELIVERY_STATUSES);\nexport const EXTERNAL_AGENT_EXECUTION_STATUSES = Object.freeze([\n \"not-observable\",\n \"started\",\n \"terminal-succeeded\",\n \"terminal-failed\",\n \"interrupted\",\n \"unknown\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_EXECUTION_STATUSES);\nexport const EXTERNAL_AGENT_MANAGED_PHASES = Object.freeze([\n \"preparing\",\n \"running\",\n \"auditing\",\n \"validating\",\n \"applying\",\n \"completed\",\n \"review-required\",\n \"failed\",\n \"cancelled\",\n \"cleanup-warning\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_MANAGED_PHASES);\nexport const EXTERNAL_AGENT_VALIDATION_OUTCOMES = Object.freeze([\n \"passed\",\n \"failed\",\n \"not-configured\",\n \"unavailable\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_VALIDATION_OUTCOMES);\nexport const EXTERNAL_AGENT_CHECK_OUTCOMES = Object.freeze([\n \"passed\",\n \"failed\",\n \"unavailable\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_CHECK_OUTCOMES);\nexport const EXTERNAL_AGENT_ERROR_CODES = Object.freeze([\n \"AGENT_BINARY_NOT_FOUND\",\n \"AGENT_BINARY_UNTRUSTED\",\n \"AGENT_VERSION_UNSUPPORTED\",\n \"APP_SERVER_HANDSHAKE_FAILED\",\n \"AGENT_AUTH_REQUIRED\",\n \"AGENT_MODEL_UNAVAILABLE\",\n \"AGENT_PROTOCOL_INCOMPATIBLE\",\n \"CODEX_CONFIG_ISOLATION_UNSUPPORTED\",\n \"MANAGED_GRANT_INVALID\",\n \"MANAGED_PLATFORM_UNSUPPORTED\",\n \"MANAGED_GIT_REQUIRED\",\n \"MANAGED_SNAPSHOT_FAILED\",\n \"MANAGED_SCOPE_VIOLATION\",\n \"MANAGED_CHANGE_LIMIT_EXCEEDED\",\n \"MANAGED_VALIDATION_FAILED\",\n \"MANAGED_WORKSPACE_CONFLICT\",\n \"MANAGED_APPLY_FAILED\",\n \"MANAGED_CLEANUP_INCOMPLETE\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_ERROR_CODES);\nexport const EXTERNAL_AGENT_ERROR_STAGES = Object.freeze([\n \"integration\",\n \"binary\",\n \"handshake\",\n \"auth\",\n \"model\",\n \"protocol\",\n \"snapshot\",\n \"audit\",\n \"validation\",\n \"apply\",\n \"cleanup\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_ERROR_STAGES);\nexport const EXTERNAL_AGENT_ERROR_RECOVERABILITY = Object.freeze([\n \"retry\",\n \"user-action\",\n \"reconfigure\",\n \"none\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_ERROR_RECOVERABILITY);\nexport const EXTERNAL_AGENT_ACTIONS = Object.freeze([\n \"install-agent\",\n \"use-supported-version\",\n \"sign-in\",\n \"choose-available-model\",\n \"use-inbox\",\n \"confirm-managed-access\",\n \"review-candidate-diff\",\n \"review-workspace-conflict\",\n \"retry\",\n \"inspect-cleanup-warning\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_ACTIONS);\n\nexport {\n EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS,\n EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES,\n EXTERNAL_HANDOFF_BROKER_PROTOCOL_VERSION,\n EXTERNAL_HANDOFF_DISPATCH_PHASES,\n EXTERNAL_HANDOFF_FRAMEWORKS,\n EXTERNAL_HANDOFF_REPORTABLE_DISPATCH_PHASES,\n EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION,\n EXTERNAL_HANDOFF_STATES,\n type ExternalHandoffActiveAdapterKind,\n type ExternalHandoffActiveAdapterState,\n type ExternalHandoffDispatchPhase,\n type ExternalHandoffFramework,\n type ExternalHandoffReportableDispatchPhase,\n type ExternalHandoffState,\n} from \"./protocol/external-handoff-constants.js\";\nexport { SPOTPATCH_ENDPOINTS, SPOTPATCH_TOKEN_HEADER } from \"./protocol/endpoints.js\";\nexport type {\n ExternalAgentAction,\n ExternalAgentConnectionState,\n ExternalAgentControlCancelRequest,\n ExternalAgentControlConnectRequest,\n ExternalAgentControlDisconnectRequest,\n ExternalAgentControlStatus,\n ExternalAgentErrorCode,\n ExternalAgentEvent,\n ExternalAgentEventsRequest,\n ExternalAgentManagedResult,\n ExternalAgentResultRequest,\n} from \"./protocol/external-agent-control.js\";\nexport type {\n ActiveAdapterSummary,\n DispatchSummary,\n ExternalHandoffCapability,\n ExternalHandoffPublishDelivery,\n ExternalHandoffPublishRequest,\n ExternalHandoffPublishResult,\n ExternalHandoffResolveDeliveryRequest,\n ExternalHandoffSnapshot,\n ExternalHandoffStatusRequest,\n ExternalHandoffStatusResult,\n ExternalHandoffSummary,\n} from \"./protocol/external-handoff.js\";\nexport type { SpotAnnotation, SpotPatchLocale } from \"./model/annotation.js\";\n","export const EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION = 1 as const;\nexport const EXTERNAL_HANDOFF_BROKER_PROTOCOL_VERSION = 2 as const;\nexport const EXTERNAL_HANDOFF_STATES = Object.freeze([\n \"available\",\n \"expired\",\n \"superseded\",\n] as const);\nexport const EXTERNAL_HANDOFF_FRAMEWORKS = Object.freeze([\"vite\", \"next\"] as const);\nexport const EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS = Object.freeze([\n \"claude-channel\",\n \"codex-app-server\",\n] as const);\nexport const EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES = Object.freeze([\n \"ready\",\n \"busy\",\n \"blocked\",\n] as const);\nexport const EXTERNAL_HANDOFF_DISPATCH_PHASES = Object.freeze([\n \"queued\",\n \"dispatching\",\n \"dispatched\",\n \"working\",\n \"completed\",\n \"failed\",\n \"delivery-unknown\",\n] as const);\nexport const EXTERNAL_HANDOFF_REPORTABLE_DISPATCH_PHASES = Object.freeze([\n \"dispatching\",\n \"dispatched\",\n \"working\",\n \"completed\",\n \"failed\",\n \"delivery-unknown\",\n] as const);\n\nexport const EXTERNAL_HANDOFF_LIMITS = Object.freeze({\n maximumSnapshotBytes: 256 * 1024,\n maximumPublishBodyBytes: 256 * 1024,\n maximumBrokerRequestBytes: 8 * 1024,\n maximumDescriptorBytes: 8 * 1024,\n maximumHistorySummaries: 8,\n maximumConnectorReceipts: 64,\n handoffTtlMs: 15 * 60 * 1_000,\n defaultWaitMs: 20_000,\n maximumWaitMs: 25_000,\n maximumWaiters: 8,\n maximumDescriptorsPerScan: 32,\n maximumProjectAncestors: 64,\n maximumBrokerHeaderBytes: 8 * 1024,\n maximumBrokerSockets: 32,\n brokerDiscoveryTimeoutMs: 750,\n brokerRequestTimeoutMs: 2_000,\n brokerWaitGraceMs: 2_000,\n maximumSetupConfigBytes: 1_024 * 1_024,\n maximumRequestIdRecords: 16,\n requestIdTtlMs: 15 * 60 * 1_000,\n activeHeartbeatIntervalMs: 3_000,\n activeLeaseDurationMs: 10_000,\n activeTransportWriteTimeoutMs: 5_000,\n activeDispatchTimeoutMs: 30 * 60 * 1_000,\n activeStatusPollMs: 1_000,\n} as const);\n\nexport type ExternalHandoffState = (typeof EXTERNAL_HANDOFF_STATES)[number];\nexport type ExternalHandoffFramework = (typeof EXTERNAL_HANDOFF_FRAMEWORKS)[number];\nexport type ExternalHandoffActiveAdapterKind =\n (typeof EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS)[number];\nexport type ExternalHandoffActiveAdapterState =\n (typeof EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES)[number];\nexport type ExternalHandoffDispatchPhase =\n (typeof EXTERNAL_HANDOFF_DISPATCH_PHASES)[number];\nexport type ExternalHandoffReportableDispatchPhase =\n (typeof EXTERNAL_HANDOFF_REPORTABLE_DISPATCH_PHASES)[number];\n","export const SPOTPATCH_API_BASE = \"/__spotpatch/v1\" as const;\nexport const SPOTPATCH_TOKEN_HEADER = \"X-SpotPatch-Token\" as const;\n\nexport const SPOTPATCH_ENDPOINTS = Object.freeze({\n bootstrap: `${SPOTPATCH_API_BASE}/bootstrap`,\n sourceContext: `${SPOTPATCH_API_BASE}/source-context`,\n openEditor: `${SPOTPATCH_API_BASE}/open-editor`,\n dataFlowComponentReport: `${SPOTPATCH_API_BASE}/data-flow/component-report`,\n dataFlowPageReport: `${SPOTPATCH_API_BASE}/data-flow/page-report`,\n agentCapability: `${SPOTPATCH_API_BASE}/agent/capability`,\n agentWorkspaceHealth: `${SPOTPATCH_API_BASE}/agent/workspace-health`,\n agentJobs: `${SPOTPATCH_API_BASE}/agent/jobs`,\n externalHandoffCapability: `${SPOTPATCH_API_BASE}/external-handoff/capability`,\n externalHandoffPublish: `${SPOTPATCH_API_BASE}/external-handoff/publish`,\n externalHandoffStatus: `${SPOTPATCH_API_BASE}/external-handoff/status`,\n externalHandoffResolveDelivery: `${SPOTPATCH_API_BASE}/external-handoff/resolve-delivery`,\n externalAgentControlStatus: `${SPOTPATCH_API_BASE}/external-agent/control/status`,\n externalAgentControlConnect: `${SPOTPATCH_API_BASE}/external-agent/control/connect`,\n externalAgentControlDisconnect: `${SPOTPATCH_API_BASE}/external-agent/control/disconnect`,\n externalAgentControlCancel: `${SPOTPATCH_API_BASE}/external-agent/control/cancel`,\n externalAgentEvents: `${SPOTPATCH_API_BASE}/external-agent/events`,\n externalAgentResult: `${SPOTPATCH_API_BASE}/external-agent/result`,\n});\n\nexport type AgentJobAction = \"events\" | \"result\" | \"cancel\" | \"apply\" | \"revert\";\n\nexport function getAgentJobEndpoint(jobId: string, action: AgentJobAction): string {\n return `${SPOTPATCH_ENDPOINTS.agentJobs}/${encodeURIComponent(jobId)}/${action}`;\n}\n"],"mappings":"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","names":["EXTERNAL_HANDOFF_LIMITS","EXTERNAL_HANDOFF_LIMITS"]}
1
+ {"version":3,"sources":["../src/external-handoff-browser.ts","../src/protocol/external-handoff-constants.ts","../src/protocol/endpoints.ts"],"sourcesContent":["import type { ERROR_CODES as GLOBAL_ERROR_CODES } from \"./errors/error-code.js\";\nimport type {\n EXTERNAL_AGENT_ACTIONS as GLOBAL_EXTERNAL_AGENT_ACTIONS,\n EXTERNAL_AGENT_AUTH_READINESS as GLOBAL_EXTERNAL_AGENT_AUTH_READINESS,\n EXTERNAL_AGENT_CHECK_OUTCOMES as GLOBAL_EXTERNAL_AGENT_CHECK_OUTCOMES,\n EXTERNAL_AGENT_CONNECTION_STATES as GLOBAL_EXTERNAL_AGENT_CONNECTION_STATES,\n EXTERNAL_AGENT_CONTROL_LIMITS as GLOBAL_EXTERNAL_AGENT_CONTROL_LIMITS,\n EXTERNAL_AGENT_DELIVERY_STATUSES as GLOBAL_EXTERNAL_AGENT_DELIVERY_STATUSES,\n EXTERNAL_AGENT_ERROR_CODES as GLOBAL_EXTERNAL_AGENT_ERROR_CODES,\n EXTERNAL_AGENT_ERROR_RECOVERABILITY as GLOBAL_EXTERNAL_AGENT_ERROR_RECOVERABILITY,\n EXTERNAL_AGENT_ERROR_STAGES as GLOBAL_EXTERNAL_AGENT_ERROR_STAGES,\n EXTERNAL_AGENT_EXECUTION_STATUSES as GLOBAL_EXTERNAL_AGENT_EXECUTION_STATUSES,\n EXTERNAL_AGENT_GRANT_STATES as GLOBAL_EXTERNAL_AGENT_GRANT_STATES,\n EXTERNAL_AGENT_MANAGED_PROFILE as GLOBAL_EXTERNAL_AGENT_MANAGED_PROFILE,\n EXTERNAL_AGENT_MANAGED_PHASES as GLOBAL_EXTERNAL_AGENT_MANAGED_PHASES,\n EXTERNAL_AGENT_MODES as GLOBAL_EXTERNAL_AGENT_MODES,\n EXTERNAL_AGENT_VALIDATION_OUTCOMES as GLOBAL_EXTERNAL_AGENT_VALIDATION_OUTCOMES,\n} from \"./protocol/external-agent-control.js\";\nimport type { EXTERNAL_HANDOFF_LIMITS as GLOBAL_EXTERNAL_HANDOFF_LIMITS } from \"./protocol/external-handoff-constants.js\";\n\n/** Browser-reachable errors only; keeps unrelated Agent/worktree codes out of the lazy UI. */\nexport const ERROR_CODES = Object.freeze({\n INVALID_REQUEST: \"INVALID_REQUEST\",\n INVALID_TOKEN: \"INVALID_TOKEN\",\n ORIGIN_NOT_ALLOWED: \"ORIGIN_NOT_ALLOWED\",\n EXTERNAL_HANDOFF_DISABLED: \"EXTERNAL_HANDOFF_DISABLED\",\n EXTERNAL_HANDOFF_UNAVAILABLE: \"EXTERNAL_HANDOFF_UNAVAILABLE\",\n HANDOFF_VALIDATION_FAILED: \"HANDOFF_VALIDATION_FAILED\",\n HANDOFF_SOURCE_STALE: \"HANDOFF_SOURCE_STALE\",\n HANDOFF_NOT_FOUND: \"HANDOFF_NOT_FOUND\",\n HANDOFF_EXPIRED: \"HANDOFF_EXPIRED\",\n HANDOFF_CURSOR_INVALID: \"HANDOFF_CURSOR_INVALID\",\n HANDOFF_RESPONSE_TOO_LARGE: \"HANDOFF_RESPONSE_TOO_LARGE\",\n EXTERNAL_AGENT_BUSY: \"EXTERNAL_AGENT_BUSY\",\n ACTIVE_DISPATCH_INVALID: \"ACTIVE_DISPATCH_INVALID\",\n SESSION_CLOSED: \"SESSION_CLOSED\",\n INTERNAL_ERROR: \"INTERNAL_ERROR\",\n} as const satisfies Pick<\n typeof GLOBAL_ERROR_CODES,\n | \"ACTIVE_DISPATCH_INVALID\"\n | \"EXTERNAL_AGENT_BUSY\"\n | \"EXTERNAL_HANDOFF_DISABLED\"\n | \"EXTERNAL_HANDOFF_UNAVAILABLE\"\n | \"HANDOFF_CURSOR_INVALID\"\n | \"HANDOFF_EXPIRED\"\n | \"HANDOFF_NOT_FOUND\"\n | \"HANDOFF_RESPONSE_TOO_LARGE\"\n | \"HANDOFF_SOURCE_STALE\"\n | \"HANDOFF_VALIDATION_FAILED\"\n | \"INTERNAL_ERROR\"\n | \"INVALID_REQUEST\"\n | \"INVALID_TOKEN\"\n | \"ORIGIN_NOT_ALLOWED\"\n | \"SESSION_CLOSED\"\n>);\nexport type ErrorCode = (typeof ERROR_CODES)[keyof typeof ERROR_CODES];\nconst ERROR_CODE_VALUES: readonly string[] = Object.values(ERROR_CODES);\n\nexport function isErrorCode(value: unknown): value is ErrorCode {\n return typeof value === \"string\" && ERROR_CODE_VALUES.includes(value);\n}\n\n/** Browser-consumed limits only; literal types make drift from the canonical limits fail. */\nexport const EXTERNAL_HANDOFF_LIMITS = Object.freeze({\n maximumConnectorReceipts: 64,\n maximumWaiters: 8,\n activeStatusPollMs: 1_000,\n} as const satisfies Pick<\n typeof GLOBAL_EXTERNAL_HANDOFF_LIMITS,\n \"activeStatusPollMs\" | \"maximumConnectorReceipts\" | \"maximumWaiters\"\n>);\n\nexport const EXTERNAL_AGENT_CONTROL_LIMITS = Object.freeze({\n maximumEventSubscribers: 4,\n eventHeartbeatMs: 15_000,\n eventReconnectMinimumMs: 500,\n eventReconnectMaximumMs: 10_000,\n maximumChangedFiles: 20,\n maximumChecks: 64,\n maximumEventLineBytes: 64 * 1_024,\n maximumResultDiffBytes: 512_000,\n} as const satisfies typeof GLOBAL_EXTERNAL_AGENT_CONTROL_LIMITS);\nexport const EXTERNAL_AGENT_MANAGED_PROFILE =\n \"managed-apply-v1\" as const satisfies typeof GLOBAL_EXTERNAL_AGENT_MANAGED_PROFILE;\n\n/** Browser-safe literal projections; type-only checks prevent protocol drift without Zod. */\nexport const EXTERNAL_AGENT_MODES = Object.freeze([\n \"inbox\",\n \"managed\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_MODES);\nexport const EXTERNAL_AGENT_CONNECTION_STATES = Object.freeze([\n \"disconnected\",\n \"diagnosing\",\n \"awaiting-consent\",\n \"connecting\",\n \"ready\",\n \"busy\",\n \"degraded\",\n \"error\",\n \"disconnecting\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_CONNECTION_STATES);\nexport const EXTERNAL_AGENT_AUTH_READINESS = Object.freeze([\n \"authenticated\",\n \"auth-not-required\",\n \"signed-out\",\n \"unknown\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_AUTH_READINESS);\nexport const EXTERNAL_AGENT_GRANT_STATES = Object.freeze([\n \"missing\",\n \"valid\",\n \"invalid\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_GRANT_STATES);\nexport const EXTERNAL_AGENT_DELIVERY_STATUSES = Object.freeze([\n \"queued\",\n \"dispatching\",\n \"accepted\",\n \"unknown\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_DELIVERY_STATUSES);\nexport const EXTERNAL_AGENT_EXECUTION_STATUSES = Object.freeze([\n \"not-observable\",\n \"started\",\n \"terminal-succeeded\",\n \"terminal-failed\",\n \"interrupted\",\n \"unknown\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_EXECUTION_STATUSES);\nexport const EXTERNAL_AGENT_MANAGED_PHASES = Object.freeze([\n \"preparing\",\n \"running\",\n \"auditing\",\n \"validating\",\n \"applying\",\n \"completed\",\n \"review-required\",\n \"failed\",\n \"cancelled\",\n \"cleanup-warning\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_MANAGED_PHASES);\nexport const EXTERNAL_AGENT_VALIDATION_OUTCOMES = Object.freeze([\n \"passed\",\n \"failed\",\n \"not-configured\",\n \"unavailable\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_VALIDATION_OUTCOMES);\nexport const EXTERNAL_AGENT_CHECK_OUTCOMES = Object.freeze([\n \"passed\",\n \"failed\",\n \"unavailable\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_CHECK_OUTCOMES);\nexport const EXTERNAL_AGENT_ERROR_CODES = Object.freeze([\n \"AGENT_BINARY_NOT_FOUND\",\n \"AGENT_BINARY_UNTRUSTED\",\n \"AGENT_VERSION_UNSUPPORTED\",\n \"APP_SERVER_HANDSHAKE_FAILED\",\n \"AGENT_AUTH_REQUIRED\",\n \"AGENT_MODEL_UNAVAILABLE\",\n \"AGENT_PROTOCOL_INCOMPATIBLE\",\n \"CODEX_CONFIG_ISOLATION_UNSUPPORTED\",\n \"MANAGED_GRANT_INVALID\",\n \"MANAGED_PLATFORM_UNSUPPORTED\",\n \"MANAGED_GIT_REQUIRED\",\n \"MANAGED_SNAPSHOT_FAILED\",\n \"MANAGED_SCOPE_VIOLATION\",\n \"MANAGED_CHANGE_LIMIT_EXCEEDED\",\n \"MANAGED_VALIDATION_FAILED\",\n \"MANAGED_WORKSPACE_CONFLICT\",\n \"MANAGED_APPLY_FAILED\",\n \"MANAGED_CLEANUP_INCOMPLETE\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_ERROR_CODES);\nexport const EXTERNAL_AGENT_ERROR_STAGES = Object.freeze([\n \"integration\",\n \"binary\",\n \"handshake\",\n \"auth\",\n \"model\",\n \"protocol\",\n \"snapshot\",\n \"audit\",\n \"validation\",\n \"apply\",\n \"cleanup\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_ERROR_STAGES);\nexport const EXTERNAL_AGENT_ERROR_RECOVERABILITY = Object.freeze([\n \"retry\",\n \"user-action\",\n \"reconfigure\",\n \"none\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_ERROR_RECOVERABILITY);\nexport const EXTERNAL_AGENT_ACTIONS = Object.freeze([\n \"install-agent\",\n \"use-supported-version\",\n \"sign-in\",\n \"choose-available-model\",\n \"use-inbox\",\n \"confirm-managed-access\",\n \"review-candidate-diff\",\n \"review-workspace-conflict\",\n \"retry\",\n \"inspect-cleanup-warning\",\n] as const satisfies typeof GLOBAL_EXTERNAL_AGENT_ACTIONS);\n\nexport {\n EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS,\n EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES,\n EXTERNAL_HANDOFF_BROKER_PROTOCOL_VERSION,\n EXTERNAL_HANDOFF_DISPATCH_PHASES,\n EXTERNAL_HANDOFF_FRAMEWORKS,\n EXTERNAL_HANDOFF_REPORTABLE_DISPATCH_PHASES,\n EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION,\n EXTERNAL_HANDOFF_STATES,\n type ExternalHandoffActiveAdapterKind,\n type ExternalHandoffActiveAdapterState,\n type ExternalHandoffDispatchPhase,\n type ExternalHandoffFramework,\n type ExternalHandoffReportableDispatchPhase,\n type ExternalHandoffState,\n} from \"./protocol/external-handoff-constants.js\";\nexport { SPOTPATCH_ENDPOINTS, SPOTPATCH_TOKEN_HEADER } from \"./protocol/endpoints.js\";\nexport type {\n ExternalAgentAction,\n ExternalAgentConnectionState,\n ExternalAgentControlCancelRequest,\n ExternalAgentControlConnectRequest,\n ExternalAgentControlDisconnectRequest,\n ExternalAgentControlStatus,\n ExternalAgentErrorCode,\n ExternalAgentEvent,\n ExternalAgentEventsRequest,\n ExternalAgentManagedResult,\n ExternalAgentResultRequest,\n} from \"./protocol/external-agent-control.js\";\nexport type {\n ActiveAdapterSummary,\n DispatchSummary,\n ExternalHandoffCapability,\n ExternalHandoffPublishDelivery,\n ExternalHandoffPublishRequest,\n ExternalHandoffPublishResult,\n ExternalHandoffResolveDeliveryRequest,\n ExternalHandoffSnapshot,\n ExternalHandoffStatusRequest,\n ExternalHandoffStatusResult,\n ExternalHandoffSummary,\n} from \"./protocol/external-handoff.js\";\nexport type { SpotAnnotation, SpotPatchLocale } from \"./model/annotation.js\";\n","export const EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION = 1 as const;\nexport const EXTERNAL_HANDOFF_BROKER_PROTOCOL_VERSION = 2 as const;\nexport const EXTERNAL_HANDOFF_STATES = Object.freeze([\n \"available\",\n \"expired\",\n \"superseded\",\n] as const);\nexport const EXTERNAL_HANDOFF_FRAMEWORKS = Object.freeze([\"vite\", \"next\"] as const);\nexport const EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS = Object.freeze([\n \"claude-channel\",\n \"codex-app-server\",\n] as const);\nexport const EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES = Object.freeze([\n \"ready\",\n \"busy\",\n \"blocked\",\n] as const);\nexport const EXTERNAL_HANDOFF_DISPATCH_PHASES = Object.freeze([\n \"queued\",\n \"dispatching\",\n \"dispatched\",\n \"working\",\n \"completed\",\n \"failed\",\n \"delivery-unknown\",\n] as const);\nexport const EXTERNAL_HANDOFF_REPORTABLE_DISPATCH_PHASES = Object.freeze([\n \"dispatching\",\n \"dispatched\",\n \"working\",\n \"completed\",\n \"failed\",\n \"delivery-unknown\",\n] as const);\n\nexport const EXTERNAL_HANDOFF_LIMITS = Object.freeze({\n maximumSnapshotBytes: 256 * 1024,\n maximumPublishBodyBytes: 256 * 1024,\n maximumBrokerRequestBytes: 8 * 1024,\n maximumDescriptorBytes: 8 * 1024,\n maximumHistorySummaries: 8,\n maximumConnectorReceipts: 64,\n handoffTtlMs: 15 * 60 * 1_000,\n defaultWaitMs: 20_000,\n maximumWaitMs: 25_000,\n maximumWaiters: 8,\n maximumDescriptorsPerScan: 32,\n maximumProjectAncestors: 64,\n maximumBrokerHeaderBytes: 8 * 1024,\n maximumBrokerSockets: 32,\n brokerDiscoveryTimeoutMs: 750,\n brokerRequestTimeoutMs: 2_000,\n brokerWaitGraceMs: 2_000,\n maximumSetupConfigBytes: 1_024 * 1_024,\n maximumRequestIdRecords: 16,\n requestIdTtlMs: 15 * 60 * 1_000,\n activeHeartbeatIntervalMs: 3_000,\n activeLeaseDurationMs: 10_000,\n activeTransportWriteTimeoutMs: 5_000,\n activeDispatchTimeoutMs: 30 * 60 * 1_000,\n activeStatusPollMs: 1_000,\n} as const);\n\nexport type ExternalHandoffState = (typeof EXTERNAL_HANDOFF_STATES)[number];\nexport type ExternalHandoffFramework = (typeof EXTERNAL_HANDOFF_FRAMEWORKS)[number];\nexport type ExternalHandoffActiveAdapterKind =\n (typeof EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS)[number];\nexport type ExternalHandoffActiveAdapterState =\n (typeof EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES)[number];\nexport type ExternalHandoffDispatchPhase =\n (typeof EXTERNAL_HANDOFF_DISPATCH_PHASES)[number];\nexport type ExternalHandoffReportableDispatchPhase =\n (typeof EXTERNAL_HANDOFF_REPORTABLE_DISPATCH_PHASES)[number];\n","export const SPOTPATCH_API_BASE = \"/__spotpatch/v1\" as const;\nexport const SPOTPATCH_TOKEN_HEADER = \"X-SpotPatch-Token\" as const;\n\nexport const SPOTPATCH_ENDPOINTS = Object.freeze({\n bootstrap: `${SPOTPATCH_API_BASE}/bootstrap`,\n sourceContext: `${SPOTPATCH_API_BASE}/source-context`,\n openEditor: `${SPOTPATCH_API_BASE}/open-editor`,\n dataFlowComponentReport: `${SPOTPATCH_API_BASE}/data-flow/component-report`,\n dataFlowPageReport: `${SPOTPATCH_API_BASE}/data-flow/page-report`,\n agentCapability: `${SPOTPATCH_API_BASE}/agent/capability`,\n agentWorkspaceHealth: `${SPOTPATCH_API_BASE}/agent/workspace-health`,\n agentJobs: `${SPOTPATCH_API_BASE}/agent/jobs`,\n askCapability: `${SPOTPATCH_API_BASE}/ask/capability`,\n askJobs: `${SPOTPATCH_API_BASE}/ask/jobs`,\n externalHandoffCapability: `${SPOTPATCH_API_BASE}/external-handoff/capability`,\n externalHandoffPublish: `${SPOTPATCH_API_BASE}/external-handoff/publish`,\n externalHandoffStatus: `${SPOTPATCH_API_BASE}/external-handoff/status`,\n externalHandoffResolveDelivery: `${SPOTPATCH_API_BASE}/external-handoff/resolve-delivery`,\n externalAgentControlStatus: `${SPOTPATCH_API_BASE}/external-agent/control/status`,\n externalAgentControlConnect: `${SPOTPATCH_API_BASE}/external-agent/control/connect`,\n externalAgentControlDisconnect: `${SPOTPATCH_API_BASE}/external-agent/control/disconnect`,\n externalAgentControlCancel: `${SPOTPATCH_API_BASE}/external-agent/control/cancel`,\n externalAgentEvents: `${SPOTPATCH_API_BASE}/external-agent/events`,\n externalAgentResult: `${SPOTPATCH_API_BASE}/external-agent/result`,\n});\n\nexport type AgentJobAction = \"events\" | \"result\" | \"cancel\" | \"apply\" | \"revert\";\nexport type AskJobAction = \"events\" | \"result\" | \"cancel\";\n\nexport function getAgentJobEndpoint(jobId: string, action: AgentJobAction): string {\n return `${SPOTPATCH_ENDPOINTS.agentJobs}/${encodeURIComponent(jobId)}/${action}`;\n}\n\nexport function getAskJobEndpoint(\n jobId: string,\n action: AskJobAction,\n options: Readonly<{ afterSequence?: number }> = {},\n): string {\n const endpoint = `${SPOTPATCH_ENDPOINTS.askJobs}/${encodeURIComponent(jobId)}/${action}`;\n if (action !== \"events\" && options.afterSequence !== undefined) {\n throw new RangeError(\"afterSequence is only valid for the events endpoint.\");\n }\n if (options.afterSequence === undefined) return endpoint;\n if (!Number.isSafeInteger(options.afterSequence) || options.afterSequence < 0) {\n throw new RangeError(\"afterSequence must be a non-negative safe integer.\");\n }\n return `${endpoint}?afterSequence=${String(options.afterSequence)}`;\n}\n"],"mappings":"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","names":["EXTERNAL_HANDOFF_LIMITS","EXTERNAL_HANDOFF_LIMITS"]}
@@ -1,6 +1,7 @@
1
- export { A as ActiveAdapterSummary, D as DispatchSummary, b as EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS, c as EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES, d as EXTERNAL_HANDOFF_BROKER_PROTOCOL_VERSION, e as EXTERNAL_HANDOFF_DISPATCH_PHASES, f as EXTERNAL_HANDOFF_FRAMEWORKS, g as EXTERNAL_HANDOFF_REPORTABLE_DISPATCH_PHASES, h as EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION, i as EXTERNAL_HANDOFF_STATES, j as ExternalHandoffActiveAdapterKind, k as ExternalHandoffActiveAdapterState, l as ExternalHandoffCapability, m as ExternalHandoffDispatchPhase, n as ExternalHandoffFramework, o as ExternalHandoffPublishDelivery, p as ExternalHandoffPublishRequest, q as ExternalHandoffPublishResult, r as ExternalHandoffReportableDispatchPhase, s as ExternalHandoffResolveDeliveryRequest, a as ExternalHandoffSnapshot, t as ExternalHandoffState, u as ExternalHandoffStatusRequest, v as ExternalHandoffStatusResult, w as ExternalHandoffSummary, S as SpotAnnotation, x as SpotPatchLocale } from './external-handoff-BNUyMfNb.cjs';
2
- export { S as SPOTPATCH_ENDPOINTS, a as SPOTPATCH_TOKEN_HEADER } from './endpoints-GedF44M2.cjs';
3
- export { E as ExternalAgentAction, a as ExternalAgentConnectionState, b as ExternalAgentControlCancelRequest, c as ExternalAgentControlConnectRequest, d as ExternalAgentControlDisconnectRequest, e as ExternalAgentControlStatus, f as ExternalAgentErrorCode, g as ExternalAgentEvent, h as ExternalAgentEventsRequest, i as ExternalAgentManagedResult, j as ExternalAgentResultRequest } from './external-agent-control-BMoSq_xI.cjs';
1
+ export { A as ActiveAdapterSummary, D as DispatchSummary, b as EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS, c as EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES, d as EXTERNAL_HANDOFF_BROKER_PROTOCOL_VERSION, e as EXTERNAL_HANDOFF_DISPATCH_PHASES, f as EXTERNAL_HANDOFF_FRAMEWORKS, g as EXTERNAL_HANDOFF_REPORTABLE_DISPATCH_PHASES, h as EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION, i as EXTERNAL_HANDOFF_STATES, j as ExternalHandoffActiveAdapterKind, k as ExternalHandoffActiveAdapterState, l as ExternalHandoffCapability, m as ExternalHandoffDispatchPhase, n as ExternalHandoffFramework, o as ExternalHandoffPublishDelivery, p as ExternalHandoffPublishRequest, q as ExternalHandoffPublishResult, r as ExternalHandoffReportableDispatchPhase, s as ExternalHandoffResolveDeliveryRequest, a as ExternalHandoffSnapshot, t as ExternalHandoffState, u as ExternalHandoffStatusRequest, v as ExternalHandoffStatusResult, w as ExternalHandoffSummary } from './external-handoff-DwtFFR6F.cjs';
2
+ export { S as SPOTPATCH_ENDPOINTS, a as SPOTPATCH_TOKEN_HEADER } from './endpoints-O3ohYyAo.cjs';
3
+ export { E as ExternalAgentAction, a as ExternalAgentConnectionState, b as ExternalAgentControlCancelRequest, c as ExternalAgentControlConnectRequest, d as ExternalAgentControlDisconnectRequest, e as ExternalAgentControlStatus, f as ExternalAgentErrorCode, g as ExternalAgentEvent, h as ExternalAgentEventsRequest, i as ExternalAgentManagedResult, j as ExternalAgentResultRequest } from './external-agent-control-CRBbjDDk.cjs';
4
+ export { S as SpotAnnotation, a as SpotPatchLocale } from './annotation-C0Me9mN2.cjs';
4
5
  import 'zod';
5
6
 
6
7
  /** Browser-reachable errors only; keeps unrelated Agent/worktree codes out of the lazy UI. */
@@ -1,6 +1,7 @@
1
- export { A as ActiveAdapterSummary, D as DispatchSummary, b as EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS, c as EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES, d as EXTERNAL_HANDOFF_BROKER_PROTOCOL_VERSION, e as EXTERNAL_HANDOFF_DISPATCH_PHASES, f as EXTERNAL_HANDOFF_FRAMEWORKS, g as EXTERNAL_HANDOFF_REPORTABLE_DISPATCH_PHASES, h as EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION, i as EXTERNAL_HANDOFF_STATES, j as ExternalHandoffActiveAdapterKind, k as ExternalHandoffActiveAdapterState, l as ExternalHandoffCapability, m as ExternalHandoffDispatchPhase, n as ExternalHandoffFramework, o as ExternalHandoffPublishDelivery, p as ExternalHandoffPublishRequest, q as ExternalHandoffPublishResult, r as ExternalHandoffReportableDispatchPhase, s as ExternalHandoffResolveDeliveryRequest, a as ExternalHandoffSnapshot, t as ExternalHandoffState, u as ExternalHandoffStatusRequest, v as ExternalHandoffStatusResult, w as ExternalHandoffSummary, S as SpotAnnotation, x as SpotPatchLocale } from './external-handoff-BNUyMfNb.js';
2
- export { S as SPOTPATCH_ENDPOINTS, a as SPOTPATCH_TOKEN_HEADER } from './endpoints-GedF44M2.js';
3
- export { E as ExternalAgentAction, a as ExternalAgentConnectionState, b as ExternalAgentControlCancelRequest, c as ExternalAgentControlConnectRequest, d as ExternalAgentControlDisconnectRequest, e as ExternalAgentControlStatus, f as ExternalAgentErrorCode, g as ExternalAgentEvent, h as ExternalAgentEventsRequest, i as ExternalAgentManagedResult, j as ExternalAgentResultRequest } from './external-agent-control-BMoSq_xI.js';
1
+ export { A as ActiveAdapterSummary, D as DispatchSummary, b as EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS, c as EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES, d as EXTERNAL_HANDOFF_BROKER_PROTOCOL_VERSION, e as EXTERNAL_HANDOFF_DISPATCH_PHASES, f as EXTERNAL_HANDOFF_FRAMEWORKS, g as EXTERNAL_HANDOFF_REPORTABLE_DISPATCH_PHASES, h as EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION, i as EXTERNAL_HANDOFF_STATES, j as ExternalHandoffActiveAdapterKind, k as ExternalHandoffActiveAdapterState, l as ExternalHandoffCapability, m as ExternalHandoffDispatchPhase, n as ExternalHandoffFramework, o as ExternalHandoffPublishDelivery, p as ExternalHandoffPublishRequest, q as ExternalHandoffPublishResult, r as ExternalHandoffReportableDispatchPhase, s as ExternalHandoffResolveDeliveryRequest, a as ExternalHandoffSnapshot, t as ExternalHandoffState, u as ExternalHandoffStatusRequest, v as ExternalHandoffStatusResult, w as ExternalHandoffSummary } from './external-handoff-DighrWn8.js';
2
+ export { S as SPOTPATCH_ENDPOINTS, a as SPOTPATCH_TOKEN_HEADER } from './endpoints-O3ohYyAo.js';
3
+ export { E as ExternalAgentAction, a as ExternalAgentConnectionState, b as ExternalAgentControlCancelRequest, c as ExternalAgentControlConnectRequest, d as ExternalAgentControlDisconnectRequest, e as ExternalAgentControlStatus, f as ExternalAgentErrorCode, g as ExternalAgentEvent, h as ExternalAgentEventsRequest, i as ExternalAgentManagedResult, j as ExternalAgentResultRequest } from './external-agent-control-CRBbjDDk.js';
4
+ export { S as SpotAnnotation, a as SpotPatchLocale } from './annotation-C0Me9mN2.js';
4
5
  import 'zod';
5
6
 
6
7
  /** Browser-reachable errors only; keeps unrelated Agent/worktree codes out of the lazy UI. */
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  SPOTPATCH_ENDPOINTS,
3
3
  SPOTPATCH_TOKEN_HEADER
4
- } from "./chunk-JGOIBOFI.js";
4
+ } from "./chunk-FPDSZDP2.js";
5
5
  import {
6
6
  EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS,
7
7
  EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES,