@beeos-ai/device-agent 0.10.2 → 0.12.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 (136) hide show
  1. package/dist/adapters/agent-gateway-client.d.ts +143 -14
  2. package/dist/adapters/agent-gateway-client.js +112 -17
  3. package/dist/adapters/agent-gateway-client.js.map +1 -1
  4. package/dist/agent-runtime/adapters/base.d.ts +3 -0
  5. package/dist/agent-runtime/adapters/base.js.map +1 -1
  6. package/dist/agent-runtime/adapters/mock.d.ts +3 -0
  7. package/dist/agent-runtime/adapters/mock.js +2 -0
  8. package/dist/agent-runtime/adapters/mock.js.map +1 -1
  9. package/dist/agent-runtime/adapters/openai.d.ts +1 -0
  10. package/dist/agent-runtime/adapters/openai.js +9 -6
  11. package/dist/agent-runtime/adapters/openai.js.map +1 -1
  12. package/dist/agent-runtime/agent-runner.d.ts +3 -0
  13. package/dist/agent-runtime/agent-runner.js +3 -0
  14. package/dist/agent-runtime/agent-runner.js.map +1 -1
  15. package/dist/agent-runtime/core.d.ts +7 -5
  16. package/dist/agent-runtime/core.js +48 -22
  17. package/dist/agent-runtime/core.js.map +1 -1
  18. package/dist/agent-runtime/index.d.ts +1 -0
  19. package/dist/agent-runtime/index.js +1 -0
  20. package/dist/agent-runtime/index.js.map +1 -1
  21. package/dist/agent-runtime/models/base.d.ts +2 -0
  22. package/dist/agent-runtime/models/client.d.ts +1 -0
  23. package/dist/agent-runtime/models/client.js +1 -0
  24. package/dist/agent-runtime/models/client.js.map +1 -1
  25. package/dist/agent-runtime/models/vlm/base.d.ts +2 -0
  26. package/dist/agent-runtime/models/vlm/base.js +7 -1
  27. package/dist/agent-runtime/models/vlm/base.js.map +1 -1
  28. package/dist/agent-runtime/models/vlm/general.js +10 -1
  29. package/dist/agent-runtime/models/vlm/general.js.map +1 -1
  30. package/dist/agent-runtime/models/vlm/guiowl.js +4 -0
  31. package/dist/agent-runtime/models/vlm/guiowl.js.map +1 -1
  32. package/dist/agent-runtime/modes/hybrid/index.d.ts +3 -0
  33. package/dist/agent-runtime/modes/hybrid/index.js +6 -1
  34. package/dist/agent-runtime/modes/hybrid/index.js.map +1 -1
  35. package/dist/agent-runtime/observation-mode.d.ts +14 -0
  36. package/dist/agent-runtime/observation-mode.js +20 -0
  37. package/dist/agent-runtime/observation-mode.js.map +1 -0
  38. package/dist/agent-runtime/plan-executor.d.ts +7 -7
  39. package/dist/agent-runtime/plan-executor.js +41 -7
  40. package/dist/agent-runtime/plan-executor.js.map +1 -1
  41. package/dist/api.js +1 -0
  42. package/dist/api.js.map +1 -1
  43. package/dist/app/agent-host.js +6 -3
  44. package/dist/app/agent-host.js.map +1 -1
  45. package/dist/app/multi-device-host.d.ts +4 -0
  46. package/dist/app/multi-device-host.js +4 -0
  47. package/dist/app/multi-device-host.js.map +1 -1
  48. package/dist/app/session-manager.d.ts +6 -2
  49. package/dist/app/session-manager.js +33 -9
  50. package/dist/app/session-manager.js.map +1 -1
  51. package/dist/bootstrap.d.ts +7 -0
  52. package/dist/bootstrap.js +18 -2
  53. package/dist/bootstrap.js.map +1 -1
  54. package/dist/config/loader.d.ts +1 -0
  55. package/dist/config/loader.js +7 -0
  56. package/dist/config/loader.js.map +1 -1
  57. package/dist/config/schema.d.ts +6 -0
  58. package/dist/config/schema.js +2 -0
  59. package/dist/config/schema.js.map +1 -1
  60. package/dist/core/task-outcome.d.ts +23 -3
  61. package/dist/core/task-outcome.js +61 -8
  62. package/dist/core/task-outcome.js.map +1 -1
  63. package/dist/device/android.js +23 -12
  64. package/dist/device/android.js.map +1 -1
  65. package/dist/fleet/adapters/process/in-process-manager.d.ts +4 -0
  66. package/dist/fleet/adapters/process/in-process-manager.js +4 -0
  67. package/dist/fleet/adapters/process/in-process-manager.js.map +1 -1
  68. package/dist/fleet/adapters/state/beeos-cli-store.d.ts +6 -3
  69. package/dist/fleet/adapters/state/beeos-cli-store.js +6 -3
  70. package/dist/fleet/adapters/state/beeos-cli-store.js.map +1 -1
  71. package/dist/fleet/domain/device.d.ts +7 -5
  72. package/dist/fleet/domain/device.js.map +1 -1
  73. package/dist/fleet/http/status-client.d.ts +1 -0
  74. package/dist/fleet/http/status-client.js +9 -0
  75. package/dist/fleet/http/status-client.js.map +1 -1
  76. package/dist/fleet/http/status-server.d.ts +8 -0
  77. package/dist/fleet/http/status-server.js +24 -0
  78. package/dist/fleet/http/status-server.js.map +1 -1
  79. package/dist/fleet/installer/spawn-env.js +6 -0
  80. package/dist/fleet/installer/spawn-env.js.map +1 -1
  81. package/dist/fleet/ports/state-registry.d.ts +5 -4
  82. package/dist/fleet/ports/state-registry.js +5 -4
  83. package/dist/fleet/ports/state-registry.js.map +1 -1
  84. package/dist/fleet/state/state-json.d.ts +3 -3
  85. package/dist/fleet/supervisor.js +22 -5
  86. package/dist/fleet/supervisor.js.map +1 -1
  87. package/dist/inbound/acp/handlers/session.d.ts +2 -1
  88. package/dist/inbound/acp/handlers/session.js +16 -1
  89. package/dist/inbound/acp/handlers/session.js.map +1 -1
  90. package/dist/inbound/cli/fleet-command.js +70 -2
  91. package/dist/inbound/cli/fleet-command.js.map +1 -1
  92. package/dist/inbound/cli/main.js +8 -1
  93. package/dist/inbound/cli/main.js.map +1 -1
  94. package/dist/inbound/cli/run-command.d.ts +3 -0
  95. package/dist/inbound/cli/run-command.js +13 -0
  96. package/dist/inbound/cli/run-command.js.map +1 -1
  97. package/dist/index.d.ts +3 -2
  98. package/dist/index.js +2 -1
  99. package/dist/index.js.map +1 -1
  100. package/dist/messaging/message-client.d.ts +53 -0
  101. package/dist/messaging/message-client.js +82 -0
  102. package/dist/messaging/message-client.js.map +1 -0
  103. package/dist/messaging/token-provider.d.ts +1 -1
  104. package/dist/messaging/token-provider.js +0 -3
  105. package/dist/messaging/token-provider.js.map +1 -1
  106. package/dist/plugins/agent-sync/index.d.ts +54 -21
  107. package/dist/plugins/agent-sync/index.js +487 -59
  108. package/dist/plugins/agent-sync/index.js.map +1 -1
  109. package/dist/plugins/http-debug/index.js +2 -1
  110. package/dist/plugins/http-debug/index.js.map +1 -1
  111. package/dist/plugins/http-debug/server.d.ts +9 -1
  112. package/dist/plugins/http-debug/server.js +36 -14
  113. package/dist/plugins/http-debug/server.js.map +1 -1
  114. package/dist/plugins/message-bus/busy-reply.d.ts +2 -2
  115. package/dist/plugins/message-bus/cancel.d.ts +2 -2
  116. package/dist/plugins/message-bus/cancel.js.map +1 -1
  117. package/dist/plugins/message-bus/device-command.d.ts +3 -3
  118. package/dist/plugins/message-bus/device-command.js.map +1 -1
  119. package/dist/plugins/message-bus/inbound.d.ts +5 -4
  120. package/dist/plugins/message-bus/inbound.js +22 -1
  121. package/dist/plugins/message-bus/inbound.js.map +1 -1
  122. package/dist/plugins/message-bus/index.d.ts +3 -2
  123. package/dist/plugins/message-bus/index.js +8 -44
  124. package/dist/plugins/message-bus/index.js.map +1 -1
  125. package/dist/plugins/message-bus/ms-channel-notifier.d.ts +2 -2
  126. package/dist/plugins/message-bus/ms-channel-notifier.js +18 -2
  127. package/dist/plugins/message-bus/ms-channel-notifier.js.map +1 -1
  128. package/dist/ports/agent-core.d.ts +11 -3
  129. package/dist/ports/agent-host.d.ts +5 -0
  130. package/dist/runtime-authority/canonical.d.ts +7 -0
  131. package/dist/runtime-authority/canonical.js +36 -0
  132. package/dist/runtime-authority/canonical.js.map +1 -0
  133. package/dist/runtime-authority/contract.d.ts +30 -0
  134. package/dist/runtime-authority/contract.js +50 -0
  135. package/dist/runtime-authority/contract.js.map +1 -0
  136. package/package.json +5 -5
@@ -1,17 +1,20 @@
1
1
  /**
2
2
  * Adapter — Agent Gateway HTTP client (Ed25519-authenticated).
3
3
  *
4
- * Mirrors the Python `agent_gateway_client.py` and the Go middleware in
4
+ * Mirrors the Go middleware in
5
5
  * `backend/services/agent-gateway/internal/agentauth/verify.go`:
6
6
  *
7
7
  * - Headers: X-Agent-Public-Key / X-Agent-Signature / X-Agent-Timestamp / X-Agent-Nonce
8
- * - Signature: ed25519(privateKey, "METHOD|PATH|timestamp|nonce") (PATH excludes query)
8
+ * - Read/control requests use path-bound Ed25519 authentication.
9
+ * - Authority mutations use body-bound authentication or a signed
10
+ * canonical runtime identity proof, as required by each endpoint.
9
11
  * - Timestamp: unix seconds (string)
10
12
  * - Nonce: random UUID v4 (replay-protected by Redis with ±5 min skew)
11
13
  *
12
14
  * Endpoints used:
13
15
  * - `fetchBridgeConfig()` — `GET /api/v1/bridge/config` (geo-aware Bridge URL)
14
- * - `syncAgents()` — `POST /api/v1/agents/sync` (Agent Identity registration)
16
+ * - runtime register/heartbeat — acquire and renew a memory-only lease
17
+ * - `syncAgents()` — publish a lease-fenced agent projection
15
18
  */
16
19
  export interface BridgeConfig {
17
20
  url: string;
@@ -71,6 +74,7 @@ export interface AgentSkillInput {
71
74
  }
72
75
  export interface AgentDeclarationInput {
73
76
  name: string;
77
+ displayName?: string;
74
78
  description?: string;
75
79
  version?: string;
76
80
  capabilities?: AgentCapabilitiesInput;
@@ -92,11 +96,117 @@ export interface SyncAgentsResult {
92
96
  updated: number;
93
97
  deactivated: number;
94
98
  agents: SyncedAgentRecord[];
99
+ accepted: boolean;
100
+ acceptanceStatus: string;
101
+ snapshotId: string;
102
+ runtimeEpoch: string;
103
+ revision: string;
104
+ canonicalHash: string;
95
105
  }
96
106
  export interface SyncAgentsOptions {
97
107
  agentGatewayUrl: string;
98
108
  identity: AgentGatewayIdentity;
99
- agents: AgentDeclarationInput[];
109
+ request: RuntimeAgentSyncRequest;
110
+ timeoutMs?: number;
111
+ fetchImpl?: typeof fetch;
112
+ now?: () => number;
113
+ randomUUID?: () => string;
114
+ }
115
+ export interface RuntimeIdentityProof {
116
+ signaturePurpose: "runtime.register" | "runtime.heartbeat";
117
+ instanceIdentityKeyId: string;
118
+ nonce: string;
119
+ signedAt: string;
120
+ payloadHash: string;
121
+ signature: string;
122
+ }
123
+ export interface RuntimeRegistrationPayload {
124
+ registrationId: string;
125
+ handlerIdentity: string;
126
+ contractRevision: string;
127
+ manifestDigest: string;
128
+ runtimeRpcProtocolVersion: number;
129
+ runtimeMethods: string[];
130
+ capabilities: string[];
131
+ journalStoreId: string;
132
+ journalGeneration: string;
133
+ }
134
+ export type RuntimeRegistrationRequest = RuntimeRegistrationPayload & RuntimeIdentityProof;
135
+ export interface RuntimeActiveLease {
136
+ instanceId: string;
137
+ leaseId: string;
138
+ runtimeEpoch: string;
139
+ runtimeLeaseCredential: string;
140
+ leaseExpiresAt: string;
141
+ heartbeatIntervalMs: number;
142
+ }
143
+ export interface RuntimeRegistrationResult {
144
+ status: "active" | "fenced";
145
+ runtimeEpoch: string;
146
+ activeRuntimeEpoch?: string;
147
+ instanceId?: string;
148
+ leaseId?: string;
149
+ runtimeLeaseCredential?: string;
150
+ leaseExpiresAt?: string;
151
+ heartbeatIntervalMs?: number;
152
+ }
153
+ export interface RuntimeHeartbeatPayload {
154
+ leaseId: string;
155
+ handlerIdentity: string;
156
+ runtimeEpoch: string;
157
+ }
158
+ export type RuntimeHeartbeatRequest = RuntimeHeartbeatPayload & RuntimeIdentityProof;
159
+ export interface RuntimeHeartbeatResult {
160
+ status: "renewed" | "fenced" | "expired";
161
+ activeRuntimeEpoch?: string;
162
+ runtimeLeaseCredential?: string;
163
+ leaseExpiresAt?: string;
164
+ }
165
+ export interface RuntimeProjectionCapabilities {
166
+ canvas: boolean;
167
+ terminal: boolean;
168
+ webSsh: boolean;
169
+ fileSystem: boolean;
170
+ image: boolean;
171
+ audio: boolean;
172
+ mcp: boolean;
173
+ cron: boolean;
174
+ streaming: boolean;
175
+ pushNotifications: boolean;
176
+ }
177
+ export interface RuntimeProjectionSkill {
178
+ skillKey: string;
179
+ name: string;
180
+ description?: string;
181
+ enabled: boolean;
182
+ version?: string;
183
+ }
184
+ export interface RuntimeAgentProjection {
185
+ runtimeAgentUid: string;
186
+ localKey: string;
187
+ displayName: string;
188
+ description?: string;
189
+ version?: string;
190
+ avatarUrl?: string;
191
+ homepage?: string;
192
+ defaultModel?: string;
193
+ capabilities: RuntimeProjectionCapabilities;
194
+ skills: RuntimeProjectionSkill[];
195
+ skillsComplete: boolean;
196
+ }
197
+ export interface RuntimeAgentSyncRequest {
198
+ runtimeEpoch: string;
199
+ revision: string;
200
+ snapshotId: string;
201
+ canonicalHash: string;
202
+ agentsComplete: boolean;
203
+ skillsComplete: boolean;
204
+ agents: RuntimeAgentProjection[];
205
+ runtimeLeaseCredential: string;
206
+ }
207
+ interface RuntimeRequestOptions {
208
+ agentGatewayUrl: string;
209
+ identity: AgentGatewayIdentity;
100
210
  timeoutMs?: number;
101
211
  fetchImpl?: typeof fetch;
102
212
  now?: () => number;
@@ -165,15 +275,17 @@ export interface UpdateAgentConfigOptions {
165
275
  * adapter is shipped to keep the contract symmetric with the GET.
166
276
  */
167
277
  export declare function updateAgentConfig(opts: UpdateAgentConfigOptions): Promise<void>;
278
+ export declare function buildRuntimeIdentityProof(purpose: RuntimeIdentityProof["signaturePurpose"], payload: RuntimeRegistrationPayload | RuntimeHeartbeatPayload, opts: Pick<RuntimeRequestOptions, "identity" | "now" | "randomUUID">): RuntimeIdentityProof;
279
+ export declare function registerRuntime(opts: RuntimeRequestOptions & {
280
+ payload: RuntimeRegistrationPayload;
281
+ }): Promise<RuntimeRegistrationResult>;
282
+ export declare function heartbeatRuntime(opts: RuntimeRequestOptions & {
283
+ registrationId: string;
284
+ payload: RuntimeHeartbeatPayload;
285
+ }): Promise<RuntimeHeartbeatResult>;
168
286
  /**
169
- * POST /api/v1/agents/sync — declare the full set of agents this
170
- * instance hosts. Agent Identity Service reconciles on the platform
171
- * side (create / update / deactivate). Throws `AgentGatewayError`
172
- * on non-2xx or transport failures.
173
- *
174
- * For device-agent this is called once per boot with a single
175
- * agent declaration so the device shows up in the platform's Agents
176
- * directory (Dashboard → Agents).
287
+ * POST /api/v1/agents/sync publishes a complete, lease-fenced Types4
288
+ * projection. The exact request body is bound into the Ed25519 signature.
177
289
  */
178
290
  export declare function syncAgents(opts: SyncAgentsOptions): Promise<SyncAgentsResult>;
179
291
  /**
@@ -305,14 +417,31 @@ export interface ResolveAgentFileOptions {
305
417
  */
306
418
  export declare function resolveAgentFile(opts: ResolveAgentFileOptions): Promise<ResolvedAgentFile>;
307
419
  /**
308
- * Build the four `X-Agent-*` Ed25519 auth headers for an HTTP request.
309
- * Exposed for unit tests and adapters that talk to other AGW endpoints.
420
+ * Build the four `X-Agent-*` Ed25519 auth headers (agent-auth v2).
421
+ *
422
+ * Preimage: METHOD|PATH||bodyHash|timestamp|nonce
423
+ * bodyHash = lowercase hex SHA-256 of exact body bytes (empty body for GET).
424
+ * Does NOT send X-Agent-Body-SHA256 — hash lives only in the signature.
310
425
  */
311
426
  export declare function buildAuthHeaders(opts: {
312
427
  method: string;
313
428
  /** URL path WITHOUT query string. */
314
429
  path: string;
315
430
  identity: AgentGatewayIdentity;
431
+ /** Exact body bytes that will be sent; omit for GET / empty. */
432
+ body?: string | Uint8Array | null;
433
+ now?: () => number;
434
+ randomUUID?: () => string;
435
+ }): Record<string, string>;
436
+ /**
437
+ * @deprecated Use buildAuthHeaders with `body` — same v2 preimage, no Body-SHA256 header.
438
+ */
439
+ export declare function buildBodyBoundAuthHeaders(opts: {
440
+ method: string;
441
+ path: string;
442
+ body: string | Uint8Array;
443
+ identity: AgentGatewayIdentity;
316
444
  now?: () => number;
317
445
  randomUUID?: () => string;
318
446
  }): Record<string, string>;
447
+ export {};
@@ -1,19 +1,24 @@
1
1
  /**
2
2
  * Adapter — Agent Gateway HTTP client (Ed25519-authenticated).
3
3
  *
4
- * Mirrors the Python `agent_gateway_client.py` and the Go middleware in
4
+ * Mirrors the Go middleware in
5
5
  * `backend/services/agent-gateway/internal/agentauth/verify.go`:
6
6
  *
7
7
  * - Headers: X-Agent-Public-Key / X-Agent-Signature / X-Agent-Timestamp / X-Agent-Nonce
8
- * - Signature: ed25519(privateKey, "METHOD|PATH|timestamp|nonce") (PATH excludes query)
8
+ * - Read/control requests use path-bound Ed25519 authentication.
9
+ * - Authority mutations use body-bound authentication or a signed
10
+ * canonical runtime identity proof, as required by each endpoint.
9
11
  * - Timestamp: unix seconds (string)
10
12
  * - Nonce: random UUID v4 (replay-protected by Redis with ±5 min skew)
11
13
  *
12
14
  * Endpoints used:
13
15
  * - `fetchBridgeConfig()` — `GET /api/v1/bridge/config` (geo-aware Bridge URL)
14
- * - `syncAgents()` — `POST /api/v1/agents/sync` (Agent Identity registration)
16
+ * - runtime register/heartbeat — acquire and renew a memory-only lease
17
+ * - `syncAgents()` — publish a lease-fenced agent projection
15
18
  */
16
19
  import { sign } from "@beeos-ai/bridge-client";
20
+ import { runtimeDomainHash, sha256Hex } from "../runtime-authority/canonical.js";
21
+ import { RUNTIME_HEARTBEAT_HASH_DOMAIN, RUNTIME_REGISTRATION_HASH_DOMAIN, } from "../runtime-authority/contract.js";
17
22
  export class AgentGatewayError extends Error {
18
23
  status;
19
24
  body;
@@ -109,6 +114,7 @@ export async function updateAgentConfig(opts) {
109
114
  ...buildAuthHeaders({
110
115
  method: "PUT",
111
116
  path,
117
+ body,
112
118
  identity: opts.identity,
113
119
  now: opts.now,
114
120
  randomUUID: opts.randomUUID,
@@ -117,24 +123,83 @@ export async function updateAgentConfig(opts) {
117
123
  };
118
124
  await gwRequest("PUT", url, headers, body, opts.timeoutMs ?? 10_000, opts.fetchImpl);
119
125
  }
126
+ export function buildRuntimeIdentityProof(purpose, payload, opts) {
127
+ const domain = purpose === "runtime.register"
128
+ ? RUNTIME_REGISTRATION_HASH_DOMAIN
129
+ : RUNTIME_HEARTBEAT_HASH_DOMAIN;
130
+ const payloadHash = runtimeDomainHash(domain, payload);
131
+ const signedAt = new Date(opts.now ? opts.now() : Date.now()).toISOString();
132
+ const nonce = opts.randomUUID
133
+ ? opts.randomUUID()
134
+ : globalThis.crypto.randomUUID();
135
+ const instanceIdentityKeyId = `device:${sha256Hex(opts.identity.publicKey)}`;
136
+ const message = [
137
+ "beeos-runtime-identity-v1",
138
+ purpose,
139
+ instanceIdentityKeyId,
140
+ signedAt,
141
+ nonce,
142
+ payloadHash,
143
+ ].join("\n");
144
+ return {
145
+ signaturePurpose: purpose,
146
+ instanceIdentityKeyId,
147
+ nonce,
148
+ signedAt,
149
+ payloadHash,
150
+ signature: Buffer.from(sign(message, opts.identity.privateKey)).toString("base64url"),
151
+ };
152
+ }
153
+ export async function registerRuntime(opts) {
154
+ const path = "/api/v1/runtime/registrations";
155
+ const body = JSON.stringify({
156
+ ...opts.payload,
157
+ ...buildRuntimeIdentityProof("runtime.register", opts.payload, opts),
158
+ });
159
+ return (await gwRequest("POST", `${trimSlash(opts.agentGatewayUrl)}${path}`, {
160
+ ...buildAuthHeaders({
161
+ method: "POST",
162
+ path,
163
+ body,
164
+ identity: opts.identity,
165
+ now: opts.now,
166
+ randomUUID: opts.randomUUID,
167
+ }),
168
+ "Content-Type": "application/json",
169
+ }, body, opts.timeoutMs ?? 10_000, opts.fetchImpl));
170
+ }
171
+ export async function heartbeatRuntime(opts) {
172
+ const encodedRegistrationId = encodeURIComponent(opts.registrationId);
173
+ const path = `/api/v1/runtime/registrations/${encodedRegistrationId}/heartbeat`;
174
+ const body = JSON.stringify({
175
+ ...opts.payload,
176
+ ...buildRuntimeIdentityProof("runtime.heartbeat", opts.payload, opts),
177
+ });
178
+ return (await gwRequest("POST", `${trimSlash(opts.agentGatewayUrl)}${path}`, {
179
+ ...buildAuthHeaders({
180
+ method: "POST",
181
+ path: decodeURIComponent(path),
182
+ body,
183
+ identity: opts.identity,
184
+ now: opts.now,
185
+ randomUUID: opts.randomUUID,
186
+ }),
187
+ "Content-Type": "application/json",
188
+ }, body, opts.timeoutMs ?? 10_000, opts.fetchImpl));
189
+ }
120
190
  /**
121
- * POST /api/v1/agents/sync — declare the full set of agents this
122
- * instance hosts. Agent Identity Service reconciles on the platform
123
- * side (create / update / deactivate). Throws `AgentGatewayError`
124
- * on non-2xx or transport failures.
125
- *
126
- * For device-agent this is called once per boot with a single
127
- * agent declaration so the device shows up in the platform's Agents
128
- * directory (Dashboard → Agents).
191
+ * POST /api/v1/agents/sync publishes a complete, lease-fenced Types4
192
+ * projection. The exact request body is bound into the Ed25519 signature.
129
193
  */
130
194
  export async function syncAgents(opts) {
131
195
  const path = "/api/v1/agents/sync";
132
196
  const url = `${trimSlash(opts.agentGatewayUrl)}${path}`;
133
- const body = JSON.stringify({ agents: opts.agents });
197
+ const body = JSON.stringify(opts.request);
134
198
  const headers = {
135
199
  ...buildAuthHeaders({
136
200
  method: "POST",
137
201
  path,
202
+ body,
138
203
  identity: opts.identity,
139
204
  now: opts.now,
140
205
  randomUUID: opts.randomUUID,
@@ -163,6 +228,16 @@ export async function syncAgents(opts) {
163
228
  updated: typeof obj.updated === "number" ? obj.updated : 0,
164
229
  deactivated: typeof obj.deactivated === "number" ? obj.deactivated : 0,
165
230
  agents,
231
+ accepted: obj.accepted !== false,
232
+ acceptanceStatus: typeof obj.acceptanceStatus === "string" ? obj.acceptanceStatus : "",
233
+ snapshotId: typeof obj.snapshotId === "string" ? obj.snapshotId : "",
234
+ runtimeEpoch: typeof obj.runtimeEpoch === "string"
235
+ ? obj.runtimeEpoch
236
+ : String(obj.runtimeEpoch ?? ""),
237
+ revision: typeof obj.revision === "string"
238
+ ? obj.revision
239
+ : String(obj.revision ?? ""),
240
+ canonicalHash: typeof obj.canonicalHash === "string" ? obj.canonicalHash : "",
166
241
  };
167
242
  }
168
243
  /**
@@ -196,6 +271,7 @@ export async function presignFileUpload(opts) {
196
271
  ...buildAuthHeaders({
197
272
  method: "POST",
198
273
  path,
274
+ body,
199
275
  identity: opts.identity,
200
276
  now: opts.now,
201
277
  randomUUID: opts.randomUUID,
@@ -284,6 +360,7 @@ export async function confirmFileUpload(opts) {
284
360
  ...buildAuthHeaders({
285
361
  method: "POST",
286
362
  path,
363
+ body,
287
364
  identity: opts.identity,
288
365
  now: opts.now,
289
366
  randomUUID: opts.randomUUID,
@@ -330,7 +407,8 @@ export async function resolveAgentFile(opts) {
330
407
  const url = `${trimSlash(opts.agentGatewayUrl)}${path}`;
331
408
  const headers = buildAuthHeaders({
332
409
  method: "GET",
333
- path,
410
+ // Go r.URL.Path is decoded; sign the decoded form (same as claw).
411
+ path: decodeURIComponent(path),
334
412
  identity: opts.identity,
335
413
  now: opts.now,
336
414
  randomUUID: opts.randomUUID,
@@ -354,14 +432,25 @@ export async function resolveAgentFile(opts) {
354
432
  };
355
433
  }
356
434
  /**
357
- * Build the four `X-Agent-*` Ed25519 auth headers for an HTTP request.
358
- * Exposed for unit tests and adapters that talk to other AGW endpoints.
435
+ * Build the four `X-Agent-*` Ed25519 auth headers (agent-auth v2).
436
+ *
437
+ * Preimage: METHOD|PATH||bodyHash|timestamp|nonce
438
+ * bodyHash = lowercase hex SHA-256 of exact body bytes (empty body for GET).
439
+ * Does NOT send X-Agent-Body-SHA256 — hash lives only in the signature.
359
440
  */
360
441
  export function buildAuthHeaders(opts) {
361
442
  const tsMs = opts.now ? opts.now() : Date.now();
362
443
  const timestamp = Math.floor(tsMs / 1000).toString();
363
- const nonce = opts.randomUUID ? opts.randomUUID() : globalThis.crypto.randomUUID();
364
- const message = `${opts.method.toUpperCase()}|${opts.path}|${timestamp}|${nonce}`;
444
+ const nonce = opts.randomUUID
445
+ ? opts.randomUUID()
446
+ : globalThis.crypto.randomUUID();
447
+ const bodyBytes = opts.body === undefined || opts.body === null
448
+ ? Buffer.alloc(0)
449
+ : typeof opts.body === "string"
450
+ ? Buffer.from(opts.body, "utf8")
451
+ : Buffer.from(opts.body);
452
+ const bodyHash = sha256Hex(bodyBytes);
453
+ const message = `${opts.method.toUpperCase()}|${opts.path}||${bodyHash}|${timestamp}|${nonce}`;
365
454
  const signature = sign(message, opts.identity.privateKey);
366
455
  return {
367
456
  "X-Agent-Public-Key": Buffer.from(opts.identity.publicKey).toString("base64"),
@@ -370,6 +459,12 @@ export function buildAuthHeaders(opts) {
370
459
  "X-Agent-Nonce": nonce,
371
460
  };
372
461
  }
462
+ /**
463
+ * @deprecated Use buildAuthHeaders with `body` — same v2 preimage, no Body-SHA256 header.
464
+ */
465
+ export function buildBodyBoundAuthHeaders(opts) {
466
+ return buildAuthHeaders(opts);
467
+ }
373
468
  async function gwGet(url, headers, timeoutMs, fetchImpl) {
374
469
  return gwRequest("GET", url, headers, undefined, timeoutMs, fetchImpl);
375
470
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent-gateway-client.js","sourceRoot":"","sources":["../../src/adapters/agent-gateway-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AA6B/C,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAGxB;IACA;IAHlB,YACE,OAAe,EACC,MAAe,EACf,IAAa;QAE7B,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,WAAM,GAAN,MAAM,CAAS;QACf,SAAI,GAAJ,IAAI,CAAS;QAG7B,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAA8B;IAE9B,MAAM,IAAI,GAAG,uBAAuB,CAAC;IACrC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9E,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC;IAEhE,MAAM,OAAO,GAAG,gBAAgB,CAAC;QAC/B,MAAM,EAAE,KAAK;QACb,IAAI;QACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,UAAU,EAAE,IAAI,CAAC,UAAU;KAC5B,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,IAAI,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACjF,MAAM,CAAC,GAAI,IAAgC,CAAC,GAAG,CAAC;IAChD,MAAM,CAAC,GAAI,IAAgC,CAAC,MAAM,CAAC;IACnD,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,iBAAiB,CACzB,iDAAiD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CACzE,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAC5D,CAAC;AAuGD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAA6B;IAE7B,MAAM,IAAI,GAAG,sBAAsB,CAAC;IACpC,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,CAAC;IAExD,MAAM,OAAO,GAAG,gBAAgB,CAAC;QAC/B,MAAM,EAAE,KAAK;QACb,IAAI;QACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,UAAU,EAAE,IAAI,CAAC,UAAU;KAC5B,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,CAAC,MAAM,KAAK,CACvB,GAAG,EACH,OAAO,EACP,IAAI,CAAC,SAAS,IAAI,MAAM,EACxB,IAAI,CAAC,SAAS,CACf,CAAmC,CAAC;IACrC,MAAM,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;IACpD,MAAM,WAAW,GAAG,GAAG,CAAC,aAAa,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IACrE,MAAM,UAAU,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAG,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IAClE,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QACtD,CAAC,CAAE,GAAG,CAAC,kBAAkB,CAAe;QACxC,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,eAAe,GAAuB,SAAS;SAClD,MAAM,CACL,CAAC,CAAC,EAAgC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,CAClE;SACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,EAAE,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,CAAY,CAAC,CAAC,CAAC,EAAE;QAC1D,IAAI,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,MAAM,CAAY,CAAC,CAAC,CAAC,EAAE;QAChE,QAAQ,EACN,OAAO,CAAC,CAAC,UAAU,CAAC,KAAK,QAAQ;YAC/B,CAAC,CAAE,CAAC,CAAC,UAAU,CAAY;YAC3B,CAAC,CAAC,EAAE;KACT,CAAC,CAAC,CAAC;IAEN,OAAO;QACL,SAAS;QACT,QAAQ;QACR,eAAe;QACf,UAAU,EAAE,CAAC,CAAC,aAAa,IAAI,GAAG,CAAC,IAAI,SAAS,KAAK,EAAE;KACxD,CAAC;AACJ,CAAC;AAYD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAA8B;IAE9B,MAAM,IAAI,GAAG,sBAAsB,CAAC;IACpC,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,CAAC;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;IAElE,MAAM,OAAO,GAAG;QACd,GAAG,gBAAgB,CAAC;YAClB,MAAM,EAAE,KAAK;YACb,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;QACF,cAAc,EAAE,kBAAkB;KACnC,CAAC;IAEF,MAAM,SAAS,CACb,KAAK,EACL,GAAG,EACH,OAAO,EACP,IAAI,EACJ,IAAI,CAAC,SAAS,IAAI,MAAM,EACxB,IAAI,CAAC,SAAS,CACf,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,IAAuB;IAEvB,MAAM,IAAI,GAAG,qBAAqB,CAAC;IACnC,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,CAAC;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAErD,MAAM,OAAO,GAAG;QACd,GAAG,gBAAgB,CAAC;YAClB,MAAM,EAAE,MAAM;YACd,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;QACF,cAAc,EAAE,kBAAkB;KACnC,CAAC;IAEF,MAAM,IAAI,GAAG,MAAM,SAAS,CAC1B,MAAM,EACN,GAAG,EACH,OAAO,EACP,IAAI,EACJ,IAAI,CAAC,SAAS,IAAI,MAAM,EACxB,IAAI,CAAC,SAAS,CACf,CAAC;IACF,uEAAuE;IACvE,yEAAyE;IACzE,6BAA6B;IAC7B,MAAM,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;IACpD,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1D,MAAM,MAAM,GAAwB,SAAS;SAC1C,MAAM,CAAC,CAAC,CAAC,EAAgC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,CAAC;SACzE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QACtB,UAAU,EAAE,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;QACvE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;QAC1B,WAAW,EAAE,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;QAC1E,WAAW,EAAE,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;QAC1E,OAAO,EAAE,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;QAC9D,MAAM,EAAE,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;KAC5D,CAAC,CAAC,CAAC;IACN,OAAO;QACL,OAAO,EAAE,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1D,OAAO,EAAE,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1D,WAAW,EAAE,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACtE,MAAM;KACP,CAAC;AACJ,CAAC;AAkCD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAA8B;IAE9B,MAAM,IAAI,GAAG,6BAA6B,CAAC;IAC3C,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,CAAC;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;KACxB,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG;QACd,GAAG,gBAAgB,CAAC;YAClB,MAAM,EAAE,MAAM;YACd,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;QACF,cAAc,EAAE,kBAAkB;KACnC,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,MAAM,SAAS,CAC3B,MAAM,EACN,GAAG,EACH,OAAO,EACP,IAAI,EACJ,IAAI,CAAC,SAAS,IAAI,MAAM,EACxB,IAAI,CAAC,SAAS,CACf,CAAmC,CAAC;IACrC,MAAM,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;IACpD,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,MAAM,SAAS,GAAG,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,MAAM,WAAW,GAAG,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/E,MAAM,iBAAiB,GACrB,OAAO,GAAG,CAAC,iBAAiB,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IACxE,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,iBAAiB,CACzB,gDAAgD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CACxE,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC;AAC/D,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAMvC;IACC,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,IAAI,UAAU,CAAC,KAAK,CAAC;IAC7C,IAAI,OAAO,CAAC,KAAK,UAAU,EAAE,CAAC;QAC5B,MAAM,IAAI,iBAAiB,CAAC,oDAAoD,CAAC,CAAC;IACpF,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,eAAe,EAAE,CAAC;IACnC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,CAAC;IACvE,IAAI,CAAC;QACH,sEAAsE;QACtE,6EAA6E;QAC7E,sEAAsE;QACtE,oEAAoE;QACpE,gEAAgE;QAChE,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE;YACnC,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,EAAE,cAAc,EAAE,IAAI,CAAC,QAAQ,EAAE;YAC1C,IAAI,EAAE,IAAI,CAAC,KAA4B;YACvC,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,IAAI,iBAAiB,CACzB,yBAAyB,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,EACzD,IAAI,CAAC,MAAM,EACX,IAAI,CACL,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,iBAAiB;YAAE,MAAM,CAAC,CAAC;QAC5C,IAAK,CAAW,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACvC,MAAM,IAAI,iBAAiB,CAAC,iCAAiC,IAAI,CAAC,SAAS,IAAI,MAAM,IAAI,CAAC,CAAC;QAC7F,CAAC;QACD,MAAM,IAAI,iBAAiB,CAAC,yBAA0B,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/E,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAcD;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAA8B;IAE9B,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,iBAAiB,CAAC,iCAAiC,CAAC,CAAC;IACjF,MAAM,IAAI,GAAG,6BAA6B,CAAC;IAC3C,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,CAAC;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAErD,MAAM,OAAO,GAAG;QACd,GAAG,gBAAgB,CAAC;YAClB,MAAM,EAAE,MAAM;YACd,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;QACF,cAAc,EAAE,kBAAkB;KACnC,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,MAAM,SAAS,CAC3B,MAAM,EACN,GAAG,EACH,OAAO,EACP,IAAI,EACJ,IAAI,CAAC,SAAS,IAAI,MAAM,EACxB,IAAI,CAAC,SAAS,CACf,CAAmC,CAAC;IACrC,MAAM,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;IACpD,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,MAAM,QAAQ,GAAG,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,MAAM,QAAQ,GAAG,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/E,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,iBAAiB,CACzB,sCAAsC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAC9D,CAAC;IACJ,CAAC;IACD,OAAO;QACL,MAAM;QACN,QAAQ;QACR,QAAQ;QACR,IAAI;QACJ,WAAW;KACZ,CAAC;AACJ,CAAC;AA2BD;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAA6B;IAE7B,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,iBAAiB,CAAC,gCAAgC,CAAC,CAAC;IAChF,MAAM,IAAI,GAAG,uBAAuB,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;IAC9E,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,CAAC;IACxD,MAAM,OAAO,GAAG,gBAAgB,CAAC;QAC/B,MAAM,EAAE,KAAK;QACb,IAAI;QACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,UAAU,EAAE,IAAI,CAAC,UAAU;KAC5B,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,IAAI,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAEzE,CAAC;IACT,MAAM,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;IACpD,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,MAAM,QAAQ,GAAG,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,MAAM,QAAQ,GAAG,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/E,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,iBAAiB,CACzB,SAAS,IAAI,CAAC,MAAM,sCAAsC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAClF,CAAC;IACJ,CAAC;IACD,OAAO;QACL,MAAM,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM;QAC7B,QAAQ;QACR,QAAQ;QACR,IAAI;QACJ,WAAW;KACZ,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAOhC;IACC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;IAChD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;IACrD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IACnF,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;IAClF,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAE1D,OAAO;QACL,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7E,mBAAmB,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC9D,mBAAmB,EAAE,SAAS;QAC9B,eAAe,EAAE,KAAK;KACvB,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,KAAK,CAClB,GAAW,EACX,OAA+B,EAC/B,SAAiB,EACjB,SAAwB;IAExB,OAAO,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AACzE,CAAC;AAED,KAAK,UAAU,SAAS,CACtB,MAAc,EACd,GAAW,EACX,OAA+B,EAC/B,IAAwB,EACxB,SAAiB,EACjB,SAAwB;IAExB,MAAM,CAAC,GAAG,SAAS,IAAI,UAAU,CAAC,KAAK,CAAC;IACxC,IAAI,OAAO,CAAC,KAAK,UAAU,EAAE,CAAC;QAC5B,MAAM,IAAI,iBAAiB,CAAC,oDAAoD,CAAC,CAAC;IACpF,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,eAAe,EAAE,CAAC;IACnC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;IACxD,IAAI,CAAC;QACH,MAAM,IAAI,GAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;QACnE,IAAI,IAAI,KAAK,SAAS;YAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACzC,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,IAAI,iBAAiB,CACzB,iCAAiC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,EACjE,IAAI,CAAC,MAAM,EACX,IAAI,CACL,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,iBAAiB;YAAE,MAAM,CAAC,CAAC;QAC5C,IAAK,CAAW,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACvC,MAAM,IAAI,iBAAiB,CAAC,yCAAyC,SAAS,IAAI,CAAC,CAAC;QACtF,CAAC;QACD,MAAM,IAAI,iBAAiB,CAAC,iCAAkC,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;IACvF,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,IAAc;IACxC,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,CAAS;IAC1B,OAAO,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"agent-gateway-client.js","sourceRoot":"","sources":["../../src/adapters/agent-gateway-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EACL,6BAA6B,EAC7B,gCAAgC,GACjC,MAAM,kCAAkC,CAAC;AA6B1C,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAGxB;IACA;IAHlB,YACE,OAAe,EACC,MAAe,EACf,IAAa;QAE7B,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,WAAM,GAAN,MAAM,CAAS;QACf,SAAI,GAAJ,IAAI,CAAS;QAG7B,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAA8B;IAE9B,MAAM,IAAI,GAAG,uBAAuB,CAAC;IACrC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9E,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC;IAEhE,MAAM,OAAO,GAAG,gBAAgB,CAAC;QAC/B,MAAM,EAAE,KAAK;QACb,IAAI;QACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,UAAU,EAAE,IAAI,CAAC,UAAU;KAC5B,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,IAAI,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACjF,MAAM,CAAC,GAAI,IAAgC,CAAC,GAAG,CAAC;IAChD,MAAM,CAAC,GAAI,IAAgC,CAAC,MAAM,CAAC;IACnD,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,iBAAiB,CACzB,iDAAiD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CACzE,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAC5D,CAAC;AAiOD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAA6B;IAE7B,MAAM,IAAI,GAAG,sBAAsB,CAAC;IACpC,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,CAAC;IAExD,MAAM,OAAO,GAAG,gBAAgB,CAAC;QAC/B,MAAM,EAAE,KAAK;QACb,IAAI;QACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,UAAU,EAAE,IAAI,CAAC,UAAU;KAC5B,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,CAAC,MAAM,KAAK,CACvB,GAAG,EACH,OAAO,EACP,IAAI,CAAC,SAAS,IAAI,MAAM,EACxB,IAAI,CAAC,SAAS,CACf,CAAmC,CAAC;IACrC,MAAM,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;IACpD,MAAM,WAAW,GAAG,GAAG,CAAC,aAAa,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IACrE,MAAM,UAAU,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAG,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IAClE,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QACtD,CAAC,CAAE,GAAG,CAAC,kBAAkB,CAAe;QACxC,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,eAAe,GAAuB,SAAS;SAClD,MAAM,CACL,CAAC,CAAC,EAAgC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,CAClE;SACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,EAAE,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,CAAY,CAAC,CAAC,CAAC,EAAE;QAC1D,IAAI,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,MAAM,CAAY,CAAC,CAAC,CAAC,EAAE;QAChE,QAAQ,EACN,OAAO,CAAC,CAAC,UAAU,CAAC,KAAK,QAAQ;YAC/B,CAAC,CAAE,CAAC,CAAC,UAAU,CAAY;YAC3B,CAAC,CAAC,EAAE;KACT,CAAC,CAAC,CAAC;IAEN,OAAO;QACL,SAAS;QACT,QAAQ;QACR,eAAe;QACf,UAAU,EAAE,CAAC,CAAC,aAAa,IAAI,GAAG,CAAC,IAAI,SAAS,KAAK,EAAE;KACxD,CAAC;AACJ,CAAC;AAYD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAA8B;IAE9B,MAAM,IAAI,GAAG,sBAAsB,CAAC;IACpC,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,CAAC;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;IAElE,MAAM,OAAO,GAAG;QACd,GAAG,gBAAgB,CAAC;YAClB,MAAM,EAAE,KAAK;YACb,IAAI;YACJ,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;QACF,cAAc,EAAE,kBAAkB;KACnC,CAAC;IAEF,MAAM,SAAS,CACb,KAAK,EACL,GAAG,EACH,OAAO,EACP,IAAI,EACJ,IAAI,CAAC,SAAS,IAAI,MAAM,EACxB,IAAI,CAAC,SAAS,CACf,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,OAAiD,EACjD,OAA6D,EAC7D,IAAoE;IAEpE,MAAM,MAAM,GACV,OAAO,KAAK,kBAAkB;QAC5B,CAAC,CAAC,gCAAgC;QAClC,CAAC,CAAC,6BAA6B,CAAC;IACpC,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5E,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU;QAC3B,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE;QACnB,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IACnC,MAAM,qBAAqB,GAAG,UAAU,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;IAC7E,MAAM,OAAO,GAAG;QACd,2BAA2B;QAC3B,OAAO;QACP,qBAAqB;QACrB,QAAQ;QACR,KAAK;QACL,WAAW;KACZ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACb,OAAO;QACL,gBAAgB,EAAE,OAAO;QACzB,qBAAqB;QACrB,KAAK;QACL,QAAQ;QACR,WAAW;QACX,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CACtE,WAAW,CACZ;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAqE;IAErE,MAAM,IAAI,GAAG,+BAA+B,CAAC;IAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC1B,GAAG,IAAI,CAAC,OAAO;QACf,GAAG,yBAAyB,CAAC,kBAAkB,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC;KAChC,CAAC,CAAC;IACxC,OAAO,CAAC,MAAM,SAAS,CACrB,MAAM,EACN,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,EAC3C;QACE,GAAG,gBAAgB,CAAC;YAClB,MAAM,EAAE,MAAM;YACd,IAAI;YACJ,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;QACF,cAAc,EAAE,kBAAkB;KACnC,EACD,IAAI,EACJ,IAAI,CAAC,SAAS,IAAI,MAAM,EACxB,IAAI,CAAC,SAAS,CACf,CAA8B,CAAC;AAClC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAGC;IAED,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACtE,MAAM,IAAI,GAAG,iCAAiC,qBAAqB,YAAY,CAAC;IAChF,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC1B,GAAG,IAAI,CAAC,OAAO;QACf,GAAG,yBAAyB,CAAC,mBAAmB,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC;KACpC,CAAC,CAAC;IACrC,OAAO,CAAC,MAAM,SAAS,CACrB,MAAM,EACN,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,EAC3C;QACE,GAAG,gBAAgB,CAAC;YAClB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,kBAAkB,CAAC,IAAI,CAAC;YAC9B,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;QACF,cAAc,EAAE,kBAAkB;KACnC,EACD,IAAI,EACJ,IAAI,CAAC,SAAS,IAAI,MAAM,EACxB,IAAI,CAAC,SAAS,CACf,CAA2B,CAAC;AAC/B,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,IAAuB;IAEvB,MAAM,IAAI,GAAG,qBAAqB,CAAC;IACnC,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,CAAC;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAE1C,MAAM,OAAO,GAAG;QACd,GAAG,gBAAgB,CAAC;YAClB,MAAM,EAAE,MAAM;YACd,IAAI;YACJ,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;QACF,cAAc,EAAE,kBAAkB;KACnC,CAAC;IAEF,MAAM,IAAI,GAAG,MAAM,SAAS,CAC1B,MAAM,EACN,GAAG,EACH,OAAO,EACP,IAAI,EACJ,IAAI,CAAC,SAAS,IAAI,MAAM,EACxB,IAAI,CAAC,SAAS,CACf,CAAC;IACF,uEAAuE;IACvE,yEAAyE;IACzE,6BAA6B;IAC7B,MAAM,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;IACpD,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1D,MAAM,MAAM,GAAwB,SAAS;SAC1C,MAAM,CAAC,CAAC,CAAC,EAAgC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,CAAC;SACzE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QACtB,UAAU,EAAE,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;QACvE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;QAC1B,WAAW,EAAE,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;QAC1E,WAAW,EAAE,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;QAC1E,OAAO,EAAE,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;QAC9D,MAAM,EAAE,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;KAC5D,CAAC,CAAC,CAAC;IACN,OAAO;QACL,OAAO,EAAE,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1D,OAAO,EAAE,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1D,WAAW,EAAE,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACtE,MAAM;QACN,QAAQ,EAAE,GAAG,CAAC,QAAQ,KAAK,KAAK;QAChC,gBAAgB,EACd,OAAO,GAAG,CAAC,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE;QACtE,UAAU,EAAE,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;QACpE,YAAY,EACV,OAAO,GAAG,CAAC,YAAY,KAAK,QAAQ;YAClC,CAAC,CAAC,GAAG,CAAC,YAAY;YAClB,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC;QACpC,QAAQ,EACN,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ;YAC9B,CAAC,CAAC,GAAG,CAAC,QAAQ;YACd,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;QAChC,aAAa,EACX,OAAO,GAAG,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE;KACjE,CAAC;AACJ,CAAC;AAkCD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAA8B;IAE9B,MAAM,IAAI,GAAG,6BAA6B,CAAC;IAC3C,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,CAAC;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;KACxB,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG;QACd,GAAG,gBAAgB,CAAC;YAClB,MAAM,EAAE,MAAM;YACd,IAAI;YACJ,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;QACF,cAAc,EAAE,kBAAkB;KACnC,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,MAAM,SAAS,CAC3B,MAAM,EACN,GAAG,EACH,OAAO,EACP,IAAI,EACJ,IAAI,CAAC,SAAS,IAAI,MAAM,EACxB,IAAI,CAAC,SAAS,CACf,CAAmC,CAAC;IACrC,MAAM,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;IACpD,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,MAAM,SAAS,GAAG,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,MAAM,WAAW,GAAG,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/E,MAAM,iBAAiB,GACrB,OAAO,GAAG,CAAC,iBAAiB,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IACxE,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,iBAAiB,CACzB,gDAAgD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CACxE,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC;AAC/D,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAMvC;IACC,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,IAAI,UAAU,CAAC,KAAK,CAAC;IAC7C,IAAI,OAAO,CAAC,KAAK,UAAU,EAAE,CAAC;QAC5B,MAAM,IAAI,iBAAiB,CAAC,oDAAoD,CAAC,CAAC;IACpF,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,eAAe,EAAE,CAAC;IACnC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,CAAC;IACvE,IAAI,CAAC;QACH,sEAAsE;QACtE,6EAA6E;QAC7E,sEAAsE;QACtE,oEAAoE;QACpE,gEAAgE;QAChE,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE;YACnC,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,EAAE,cAAc,EAAE,IAAI,CAAC,QAAQ,EAAE;YAC1C,IAAI,EAAE,IAAI,CAAC,KAA4B;YACvC,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,IAAI,iBAAiB,CACzB,yBAAyB,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,EACzD,IAAI,CAAC,MAAM,EACX,IAAI,CACL,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,iBAAiB;YAAE,MAAM,CAAC,CAAC;QAC5C,IAAK,CAAW,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACvC,MAAM,IAAI,iBAAiB,CAAC,iCAAiC,IAAI,CAAC,SAAS,IAAI,MAAM,IAAI,CAAC,CAAC;QAC7F,CAAC;QACD,MAAM,IAAI,iBAAiB,CAAC,yBAA0B,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/E,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAcD;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAA8B;IAE9B,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,iBAAiB,CAAC,iCAAiC,CAAC,CAAC;IACjF,MAAM,IAAI,GAAG,6BAA6B,CAAC;IAC3C,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,CAAC;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAErD,MAAM,OAAO,GAAG;QACd,GAAG,gBAAgB,CAAC;YAClB,MAAM,EAAE,MAAM;YACd,IAAI;YACJ,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;QACF,cAAc,EAAE,kBAAkB;KACnC,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,MAAM,SAAS,CAC3B,MAAM,EACN,GAAG,EACH,OAAO,EACP,IAAI,EACJ,IAAI,CAAC,SAAS,IAAI,MAAM,EACxB,IAAI,CAAC,SAAS,CACf,CAAmC,CAAC;IACrC,MAAM,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;IACpD,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,MAAM,QAAQ,GAAG,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,MAAM,QAAQ,GAAG,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/E,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,iBAAiB,CACzB,sCAAsC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAC9D,CAAC;IACJ,CAAC;IACD,OAAO;QACL,MAAM;QACN,QAAQ;QACR,QAAQ;QACR,IAAI;QACJ,WAAW;KACZ,CAAC;AACJ,CAAC;AA2BD;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAA6B;IAE7B,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,iBAAiB,CAAC,gCAAgC,CAAC,CAAC;IAChF,MAAM,IAAI,GAAG,uBAAuB,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;IAC9E,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,CAAC;IACxD,MAAM,OAAO,GAAG,gBAAgB,CAAC;QAC/B,MAAM,EAAE,KAAK;QACb,kEAAkE;QAClE,IAAI,EAAE,kBAAkB,CAAC,IAAI,CAAC;QAC9B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,UAAU,EAAE,IAAI,CAAC,UAAU;KAC5B,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,IAAI,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAEzE,CAAC;IACT,MAAM,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;IACpD,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,MAAM,QAAQ,GAAG,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,MAAM,QAAQ,GAAG,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/E,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,iBAAiB,CACzB,SAAS,IAAI,CAAC,MAAM,sCAAsC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAClF,CAAC;IACJ,CAAC;IACD,OAAO;QACL,MAAM,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM;QAC7B,QAAQ;QACR,QAAQ;QACR,IAAI;QACJ,WAAW;KACZ,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAShC;IACC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;IAChD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;IACrD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU;QAC3B,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE;QACnB,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IACnC,MAAM,SAAS,GACb,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI;QAC3C,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACjB,CAAC,CAAC,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;YAC7B,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC;YAChC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IACtC,MAAM,OAAO,GACX,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;IACjF,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAE1D,OAAO;QACL,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7E,mBAAmB,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC9D,mBAAmB,EAAE,SAAS;QAC9B,eAAe,EAAE,KAAK;KACvB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CAAC,IAOzC;IACC,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAED,KAAK,UAAU,KAAK,CAClB,GAAW,EACX,OAA+B,EAC/B,SAAiB,EACjB,SAAwB;IAExB,OAAO,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AACzE,CAAC;AAED,KAAK,UAAU,SAAS,CACtB,MAAc,EACd,GAAW,EACX,OAA+B,EAC/B,IAAwB,EACxB,SAAiB,EACjB,SAAwB;IAExB,MAAM,CAAC,GAAG,SAAS,IAAI,UAAU,CAAC,KAAK,CAAC;IACxC,IAAI,OAAO,CAAC,KAAK,UAAU,EAAE,CAAC;QAC5B,MAAM,IAAI,iBAAiB,CAAC,oDAAoD,CAAC,CAAC;IACpF,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,eAAe,EAAE,CAAC;IACnC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;IACxD,IAAI,CAAC;QACH,MAAM,IAAI,GAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;QACnE,IAAI,IAAI,KAAK,SAAS;YAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACzC,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,IAAI,iBAAiB,CACzB,iCAAiC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,EACjE,IAAI,CAAC,MAAM,EACX,IAAI,CACL,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,iBAAiB;YAAE,MAAM,CAAC,CAAC;QAC5C,IAAK,CAAW,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACvC,MAAM,IAAI,iBAAiB,CAAC,yCAAyC,SAAS,IAAI,CAAC,CAAC;QACtF,CAAC;QACD,MAAM,IAAI,iBAAiB,CAAC,iCAAkC,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;IACvF,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,IAAc;IACxC,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,CAAS;IAC1B,OAAO,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,CAAC"}
@@ -14,6 +14,7 @@
14
14
  * different `AgentLoop` instances.)
15
15
  */
16
16
  import type { Action, Observation } from "@beeos-ai/device-common";
17
+ import type { ObservationProfile } from "../observation-mode.js";
17
18
  /**
18
19
  * Token / cost accounting reported by adapters per prediction. Aggregated by
19
20
  * `AgentLoop` over a single run and surfaced via `AgentRunResult.usage`.
@@ -131,6 +132,8 @@ export interface IModelAdapter {
131
132
  readonly name: string;
132
133
  /** Human-readable model identifier the adapter is configured against. */
133
134
  readonly modelName?: string;
135
+ /** Observation inputs this model protocol can consume. */
136
+ readonly observationProfile?: ObservationProfile;
134
137
  /**
135
138
  * Whether this adapter consumes the per-step `Observation.uiDump`. When
136
139
  * `false` (default — matches Open-AutoGLM upstream pure-vision flow,
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/agent-runtime/adapters/base.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAkKH;;;GAGG;AACH,MAAM,UAAU,cAAc,CAC5B,MAAc,EACd,OAA4C,EAAE;IAE9C,OAAO;QACL,MAAM;QACN,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;QAC/B,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,IAAI,GAAG;QACvD,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;QACxD,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;KACpC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/agent-runtime/adapters/base.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAqKH;;;GAGG;AACH,MAAM,UAAU,cAAc,CAC5B,MAAc,EACd,OAA4C,EAAE;IAE9C,OAAO;QACL,MAAM;QACN,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;QAC/B,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,IAAI,GAAG;QACvD,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;QACxD,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;KACpC,CAAC;AACJ,CAAC"}
@@ -9,6 +9,7 @@
9
9
  */
10
10
  import { type Action, type Observation } from "@beeos-ai/device-common";
11
11
  import type { IModelAdapter, Prediction, StepHistory } from "./base.js";
12
+ import type { ObservationProfile } from "../observation-mode.js";
12
13
  export interface MockAdapterOptions {
13
14
  /** Pre-baked actions to emit, in order. */
14
15
  script?: Action[];
@@ -25,11 +26,13 @@ export interface MockAdapterOptions {
25
26
  * to `false` to mirror the upstream Open-AutoGLM pure-vision flow.
26
27
  */
27
28
  consumesUiDump?: boolean;
29
+ observationProfile?: ObservationProfile;
28
30
  }
29
31
  export declare class MockAdapter implements IModelAdapter {
30
32
  readonly name: string;
31
33
  readonly modelName = "mock";
32
34
  readonly consumesUiDump: boolean;
35
+ readonly observationProfile?: ObservationProfile;
33
36
  private readonly script;
34
37
  private readonly fallback;
35
38
  private readonly rationalePrefix;
@@ -14,6 +14,7 @@ export class MockAdapter {
14
14
  name;
15
15
  modelName = "mock";
16
16
  consumesUiDump;
17
+ observationProfile;
17
18
  script;
18
19
  fallback;
19
20
  rationalePrefix;
@@ -24,6 +25,7 @@ export class MockAdapter {
24
25
  this.fallback = opts.fallback ?? makeAction("done", { payload: { message: "mock-finished" } });
25
26
  this.rationalePrefix = opts.rationalePrefix ?? "";
26
27
  this.consumesUiDump = opts.consumesUiDump ?? false;
28
+ this.observationProfile = opts.observationProfile;
27
29
  }
28
30
  /** Append additional actions to the running script (test helper). */
29
31
  enqueue(...actions) {
@@ -1 +1 @@
1
- {"version":3,"file":"mock.js","sourceRoot":"","sources":["../../../src/agent-runtime/adapters/mock.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAiC,MAAM,yBAAyB,CAAC;AAGpF,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAoBhD,MAAM,OAAO,WAAW;IACb,IAAI,CAAS;IACb,SAAS,GAAG,MAAM,CAAC;IACnB,cAAc,CAAU;IAEhB,MAAM,CAAW;IACjB,QAAQ,CAAS;IACjB,eAAe,CAAS;IACjC,MAAM,GAAG,CAAC,CAAC;IAEnB,YAAY,OAA2B,EAAE;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,UAAU,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC;QAC/F,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC;QAClD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,KAAK,CAAC;IACrD,CAAC;IAED,qEAAqE;IACrE,OAAO,CAAC,GAAG,OAAiB;QAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;IAC/B,CAAC;IAED,6CAA6C;IAC7C,KAAK;QACH,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAClB,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,YAAyB,EAAE,OAAsB;QACnE,MAAM,MAAM,GACV,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjG,MAAM,SAAS,GACb,GAAG,IAAI,CAAC,eAAe,QAAQ,OAAO,CAAC,MAAM,GAAG,CAAC,WAAW,MAAM,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;QACnF,OAAO,cAAc,CAAC,MAAM,EAAE;YAC5B,SAAS;YACT,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,CAAC;YAClC,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;YAC1C,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;SACpC,CAAC,CAAC;IACL,CAAC;CACF;AAED,eAAe,CAAC;IACd,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,WAAW,EAAE;CACjC,CAAC,CAAC"}
1
+ {"version":3,"file":"mock.js","sourceRoot":"","sources":["../../../src/agent-runtime/adapters/mock.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAiC,MAAM,yBAAyB,CAAC;AAIpF,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAqBhD,MAAM,OAAO,WAAW;IACb,IAAI,CAAS;IACb,SAAS,GAAG,MAAM,CAAC;IACnB,cAAc,CAAU;IACxB,kBAAkB,CAAsB;IAEhC,MAAM,CAAW;IACjB,QAAQ,CAAS;IACjB,eAAe,CAAS;IACjC,MAAM,GAAG,CAAC,CAAC;IAEnB,YAAY,OAA2B,EAAE;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,UAAU,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC;QAC/F,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC;QAClD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,KAAK,CAAC;QACnD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC;IACpD,CAAC;IAED,qEAAqE;IACrE,OAAO,CAAC,GAAG,OAAiB;QAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;IAC/B,CAAC;IAED,6CAA6C;IAC7C,KAAK;QACH,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAClB,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,YAAyB,EAAE,OAAsB;QACnE,MAAM,MAAM,GACV,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjG,MAAM,SAAS,GACb,GAAG,IAAI,CAAC,eAAe,QAAQ,OAAO,CAAC,MAAM,GAAG,CAAC,WAAW,MAAM,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;QACnF,OAAO,cAAc,CAAC,MAAM,EAAE;YAC5B,SAAS;YACT,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,CAAC;YAClC,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;YAC1C,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;SACpC,CAAC,CAAC;IACL,CAAC;CACF;AAED,eAAe,CAAC;IACd,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,WAAW,EAAE;CACjC,CAAC,CAAC"}
@@ -50,6 +50,7 @@ export declare class OpenAIAdapter implements IModelAdapter {
50
50
  readonly name: string;
51
51
  readonly modelName: string;
52
52
  readonly consumesUiDump: boolean;
53
+ readonly observationProfile: import("../observation-mode.js").ObservationProfile;
53
54
  private readonly client;
54
55
  private readonly lang;
55
56
  private readonly imageTransport;
@@ -21,17 +21,16 @@ import { makeScreenInfo } from "../../types.js";
21
21
  import { makePrediction } from "./base.js";
22
22
  import { registerAdapter } from "./registry.js";
23
23
  /**
24
- * Legacy `model/vlm/*` names that splice the UI hierarchy XML into the
25
- * VLM prompt. The default for everything else is the Open-AutoGLM upstream
26
- * pure-vision flow (screenshot + `current_app` only) — adding adapters that
27
- * truly read `screenInfo.uiXml` to this set will let `AgentLoop.observe()`
28
- * fetch `mcp.uiDump()` for them automatically.
24
+ * The generic fallback consumes both screenshot and UI hierarchy. Known
25
+ * mobile-model adapters keep their original pure-vision protocol unless the
26
+ * caller explicitly requests another supported observation mode.
29
27
  */
30
- const LEGACY_ADAPTERS_CONSUMING_UI_DUMP = new Set(["guiowl"]);
28
+ const LEGACY_ADAPTERS_CONSUMING_UI_DUMP = new Set(["general"]);
31
29
  export class OpenAIAdapter {
32
30
  name;
33
31
  modelName;
34
32
  consumesUiDump;
33
+ observationProfile;
35
34
  client;
36
35
  lang;
37
36
  imageTransport;
@@ -51,6 +50,10 @@ export class OpenAIAdapter {
51
50
  this.consumesUiDump =
52
51
  opts.consumesUiDump ??
53
52
  LEGACY_ADAPTERS_CONSUMING_UI_DUMP.has(this.client.adapterName.toLowerCase());
53
+ this.observationProfile = this.client.observationProfile ?? {
54
+ defaultMode: this.consumesUiDump ? "hybrid" : "vision",
55
+ supportedModes: this.consumesUiDump ? ["hybrid"] : ["vision"],
56
+ };
54
57
  }
55
58
  supportsEnv(env) {
56
59
  // Mobile/computer/browser are all serviced by the same legacy adapters —