@opengeni/agent-proto 0.5.0 → 0.5.1-canary.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.
@@ -1,7 +1,7 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
3
  // protoc-gen-ts_proto v2.12.0
4
- // protoc v7.35.1
4
+ // protoc v5.28.3
5
5
  // source: opengeni_agent.proto
6
6
 
7
7
  /* eslint-disable */
@@ -478,6 +478,71 @@ export function goingOfflineReasonToJSON(object: GoingOfflineReason): string {
478
478
  }
479
479
  }
480
480
 
481
+ export enum AgentUpdateStage {
482
+ AGENT_UPDATE_STAGE_UNSPECIFIED = 0,
483
+ AGENT_UPDATE_STAGE_ACCEPTED = 1,
484
+ AGENT_UPDATE_STAGE_WAITING_FOR_IDLE = 2,
485
+ AGENT_UPDATE_STAGE_DOWNLOADING = 3,
486
+ AGENT_UPDATE_STAGE_VERIFYING = 4,
487
+ AGENT_UPDATE_STAGE_APPLYING = 5,
488
+ AGENT_UPDATE_STAGE_RESTARTING = 6,
489
+ AGENT_UPDATE_STAGE_FAILED = 7,
490
+ }
491
+
492
+ export function agentUpdateStageFromJSON(object: any): AgentUpdateStage {
493
+ switch (object) {
494
+ case 0:
495
+ case "AGENT_UPDATE_STAGE_UNSPECIFIED":
496
+ return AgentUpdateStage.AGENT_UPDATE_STAGE_UNSPECIFIED;
497
+ case 1:
498
+ case "AGENT_UPDATE_STAGE_ACCEPTED":
499
+ return AgentUpdateStage.AGENT_UPDATE_STAGE_ACCEPTED;
500
+ case 2:
501
+ case "AGENT_UPDATE_STAGE_WAITING_FOR_IDLE":
502
+ return AgentUpdateStage.AGENT_UPDATE_STAGE_WAITING_FOR_IDLE;
503
+ case 3:
504
+ case "AGENT_UPDATE_STAGE_DOWNLOADING":
505
+ return AgentUpdateStage.AGENT_UPDATE_STAGE_DOWNLOADING;
506
+ case 4:
507
+ case "AGENT_UPDATE_STAGE_VERIFYING":
508
+ return AgentUpdateStage.AGENT_UPDATE_STAGE_VERIFYING;
509
+ case 5:
510
+ case "AGENT_UPDATE_STAGE_APPLYING":
511
+ return AgentUpdateStage.AGENT_UPDATE_STAGE_APPLYING;
512
+ case 6:
513
+ case "AGENT_UPDATE_STAGE_RESTARTING":
514
+ return AgentUpdateStage.AGENT_UPDATE_STAGE_RESTARTING;
515
+ case 7:
516
+ case "AGENT_UPDATE_STAGE_FAILED":
517
+ return AgentUpdateStage.AGENT_UPDATE_STAGE_FAILED;
518
+ default:
519
+ throw new globalThis.Error("Unrecognized enum value " + object + " for enum AgentUpdateStage");
520
+ }
521
+ }
522
+
523
+ export function agentUpdateStageToJSON(object: AgentUpdateStage): string {
524
+ switch (object) {
525
+ case AgentUpdateStage.AGENT_UPDATE_STAGE_UNSPECIFIED:
526
+ return "AGENT_UPDATE_STAGE_UNSPECIFIED";
527
+ case AgentUpdateStage.AGENT_UPDATE_STAGE_ACCEPTED:
528
+ return "AGENT_UPDATE_STAGE_ACCEPTED";
529
+ case AgentUpdateStage.AGENT_UPDATE_STAGE_WAITING_FOR_IDLE:
530
+ return "AGENT_UPDATE_STAGE_WAITING_FOR_IDLE";
531
+ case AgentUpdateStage.AGENT_UPDATE_STAGE_DOWNLOADING:
532
+ return "AGENT_UPDATE_STAGE_DOWNLOADING";
533
+ case AgentUpdateStage.AGENT_UPDATE_STAGE_VERIFYING:
534
+ return "AGENT_UPDATE_STAGE_VERIFYING";
535
+ case AgentUpdateStage.AGENT_UPDATE_STAGE_APPLYING:
536
+ return "AGENT_UPDATE_STAGE_APPLYING";
537
+ case AgentUpdateStage.AGENT_UPDATE_STAGE_RESTARTING:
538
+ return "AGENT_UPDATE_STAGE_RESTARTING";
539
+ case AgentUpdateStage.AGENT_UPDATE_STAGE_FAILED:
540
+ return "AGENT_UPDATE_STAGE_FAILED";
541
+ default:
542
+ throw new globalThis.Error("Unrecognized enum value " + object + " for enum AgentUpdateStage");
543
+ }
544
+ }
545
+
481
546
  /** The logical byte stream an op-frame Data chunk belongs to. */
482
547
  export enum OpChannel {
483
548
  OP_CHANNEL_UNSPECIFIED = 0,
@@ -893,6 +958,20 @@ export interface Hello {
893
958
  * first connect.
894
959
  */
895
960
  resumeToken: string;
961
+ /**
962
+ * Lowercase sha256 of the exact running executable. The control plane uses
963
+ * this with agent_version to verify that a self-update's successor process is
964
+ * the build the signed manifest selected, not merely a process that reconnected.
965
+ */
966
+ binarySha256: string;
967
+ /**
968
+ * Durable proof written only after an explicitly requested update passed the
969
+ * signed-manifest, artifact signature+digest, atomic apply, and startup health
970
+ * gates. Repeating it on successor Hellos heals lost progress events.
971
+ */
972
+ completedUpdateOperationId: string;
973
+ completedUpdateTargetVersion: string;
974
+ completedUpdateBinarySha256: string;
896
975
  }
897
976
 
898
977
  /**
@@ -940,6 +1019,18 @@ export interface Capabilities {
940
1019
  * one machine may host multiple Chrome profiles.
941
1020
  */
942
1021
  browserBridge: boolean;
1022
+ /**
1023
+ * The runner enforces the optional per-connection operation memory policy on
1024
+ * every contained exec/git child. A control plane must fail closed rather than
1025
+ * send a configured policy to a runner that does not advertise this bit.
1026
+ */
1027
+ operationResourcePolicy: boolean;
1028
+ /**
1029
+ * The runner additionally understands and enforces cpu_max_millicores. This is
1030
+ * separate from the memory-policy bit so a newer control plane never sends a
1031
+ * CPU quota that an older memory-only runner would ignore as an unknown field.
1032
+ */
1033
+ operationCpuQuota: boolean;
943
1034
  }
944
1035
 
945
1036
  /**
@@ -1087,6 +1178,29 @@ export interface EnrollmentCredentials {
1087
1178
  relayToken: string;
1088
1179
  }
1089
1180
 
1181
+ /**
1182
+ * Optional policy selected for one Connected Machine enrollment. Absence means
1183
+ * the control plane requests no limit; there is deliberately no runner-created
1184
+ * default quota. cpu_max_millicores is an exact, period-independent public ratio.
1185
+ * The Linux runner selects a cgroup-v2 period within the kernel's 1ms..1s ABI so
1186
+ * every positive uint32 millicore value is represented without rounding or
1187
+ * silent loosening. Local runner policy and ancestor OS/cgroup policy may tighten
1188
+ * these values but never loosen them.
1189
+ */
1190
+ export interface OperationResourcePolicy {
1191
+ memoryMaxBytes?: string | undefined;
1192
+ memoryHighBytes?:
1193
+ | string
1194
+ | undefined;
1195
+ /**
1196
+ * Exact thousandths of one CPU (1000 = one CPU). Absence is unlimited.
1197
+ * The runner preserves the kernel cpu.max period when it can represent this
1198
+ * ratio exactly, otherwise minimally lengthens it to satisfy cgroup v2's 1 ms
1199
+ * minimum quota/period and 1 s maximum period without rounding the ratio.
1200
+ */
1201
+ cpuMaxMillicores?: number | undefined;
1202
+ }
1203
+
1090
1204
  export interface ExecRequest {
1091
1205
  /** argv[0] is the program; the agent does NOT shell-interpret unless `shell`. */
1092
1206
  command: string[];
@@ -1665,6 +1779,48 @@ export interface UpdateMayProceedResponse {
1665
1779
  activeSessions: number;
1666
1780
  }
1667
1781
 
1782
+ /**
1783
+ * Control-plane initiated, process-global self-update. This wraps the same
1784
+ * signed/minisign/sha256/atomic-rollback updater used by the local CLI; it is not
1785
+ * a second installer. The request is idempotent by operation_id and fenced by
1786
+ * the exact process subject plus its expected running version+digest.
1787
+ */
1788
+ export interface AgentUpdateApplyRequest {
1789
+ operationId: string;
1790
+ targetVersion: string;
1791
+ channel: string;
1792
+ expectedCurrentVersion: string;
1793
+ expectedCurrentSha256: string;
1794
+ /**
1795
+ * The deployment origin serving the signed channel manifest. The pinned
1796
+ * minisign key remains the trust root; this only chooses the fetch origin.
1797
+ */
1798
+ releaseBaseUrl: string;
1799
+ }
1800
+
1801
+ export interface AgentUpdateApplyResponse {
1802
+ accepted: boolean;
1803
+ operationId: string;
1804
+ currentVersion: string;
1805
+ currentSha256: string;
1806
+ targetVersion: string;
1807
+ }
1808
+
1809
+ /**
1810
+ * Durable, secret-free progress from the authoritative runner. A successful
1811
+ * RESTARTING event is still provisional: only the successor Hello completes the
1812
+ * update in the control plane.
1813
+ */
1814
+ export interface AgentUpdateProgress {
1815
+ operationId: string;
1816
+ targetVersion: string;
1817
+ stage: AgentUpdateStage;
1818
+ expectedBinarySha256: string;
1819
+ errorCode: string;
1820
+ retryable: boolean;
1821
+ rolledBack: boolean;
1822
+ }
1823
+
1668
1824
  /**
1669
1825
  * The terminal outcome of an op — carried in the Exit frame body AND echoed in
1670
1826
  * OpStatus once complete. Digests/totals are keyed by channel name
@@ -1866,7 +2022,8 @@ export interface OpProgress {
1866
2022
 
1867
2023
  /**
1868
2024
  * A server→runner cumulative ack + credit replenishment, published fire-and-forget
1869
- * on the ack subject (`agent.<ws>.<id>.ack`). Best-effort, healed by repetition.
2025
+ * on the exact process ack subject
2026
+ * (`agent.<ws>.<id>.connection.<instance>.ack`). Best-effort, healed by repetition.
1870
2027
  */
1871
2028
  export interface OpAck {
1872
2029
  opId: string;
@@ -1896,11 +2053,16 @@ export interface OpAck {
1896
2053
  export interface ControlRequest {
1897
2054
  requestId: string;
1898
2055
  epoch: number;
2056
+ /**
2057
+ * Per-connection policy snapshot attached to the operation request. It lives
2058
+ * on the envelope so request/reply Git and replayable OpStart share one
2059
+ * contract. Absent means unrestricted by the control plane.
2060
+ */
2061
+ resourcePolicy: OperationResourcePolicy | undefined;
1899
2062
  op:
1900
2063
  | { $case: "ping"; ping: PingRequest }
1901
2064
  | { $case: "hello"; hello: Hello }
1902
2065
  | { $case: "resume"; resume: ResumeRequest }
1903
- | { $case: "exec"; exec: ExecRequest }
1904
2066
  | { $case: "fsRead"; fsRead: FsReadRequest }
1905
2067
  | { $case: "fsWrite"; fsWrite: FsWriteRequest }
1906
2068
  | { $case: "fsList"; fsList: FsListRequest }
@@ -1931,6 +2093,7 @@ export interface ControlRequest {
1931
2093
  | { $case: "browserControlEnsure"; browserControlEnsure: BrowserControlEnsureRequest }
1932
2094
  | { $case: "browserFramesOpen"; browserFramesOpen: BrowserFramesOpenRequest }
1933
2095
  | { $case: "computerFramesOpen"; computerFramesOpen: ComputerFramesOpenRequest }
2096
+ | { $case: "agentUpdateApply"; agentUpdateApply: AgentUpdateApplyRequest }
1934
2097
  | undefined;
1935
2098
  }
1936
2099
 
@@ -1943,7 +2106,6 @@ export interface ControlResponse {
1943
2106
  | { $case: "ping"; ping: PingResponse }
1944
2107
  | { $case: "hello"; hello: HelloAck }
1945
2108
  | { $case: "resume"; resume: ResumeResponse }
1946
- | { $case: "exec"; exec: ExecResponse }
1947
2109
  | { $case: "fsRead"; fsRead: FsReadResponse }
1948
2110
  | { $case: "fsWrite"; fsWrite: FsWriteResponse }
1949
2111
  | { $case: "fsList"; fsList: FsListResponse }
@@ -1972,6 +2134,7 @@ export interface ControlResponse {
1972
2134
  | { $case: "browserControlEnsure"; browserControlEnsure: BrowserControlEnsureResponse }
1973
2135
  | { $case: "browserFramesOpen"; browserFramesOpen: BrowserFramesOpenResponse }
1974
2136
  | { $case: "computerFramesOpen"; computerFramesOpen: ComputerFramesOpenResponse }
2137
+ | { $case: "agentUpdateApply"; agentUpdateApply: AgentUpdateApplyResponse }
1975
2138
  | undefined;
1976
2139
  }
1977
2140
 
@@ -1993,10 +2156,10 @@ export interface HelloAck {
1993
2156
  */
1994
2157
  export interface AgentEvent {
1995
2158
  agentId: string;
1996
- event:
1997
- | { $case: "heartbeat"; heartbeat: Heartbeat }
1998
- | { $case: "goingOffline"; goingOffline: GoingOffline }
1999
- | undefined;
2159
+ event: { $case: "heartbeat"; heartbeat: Heartbeat } | { $case: "goingOffline"; goingOffline: GoingOffline } | {
2160
+ $case: "agentUpdateProgress";
2161
+ agentUpdateProgress: AgentUpdateProgress;
2162
+ } | undefined;
2000
2163
  }
2001
2164
 
2002
2165
  /** The control plane's ack of an AgentEvent (e.g. a HeartbeatAck). */
@@ -2331,6 +2494,10 @@ function createBaseHello(): Hello {
2331
2494
  capabilities: undefined,
2332
2495
  updateChannel: "",
2333
2496
  resumeToken: "",
2497
+ binarySha256: "",
2498
+ completedUpdateOperationId: "",
2499
+ completedUpdateTargetVersion: "",
2500
+ completedUpdateBinarySha256: "",
2334
2501
  };
2335
2502
  }
2336
2503
 
@@ -2366,6 +2533,18 @@ export const Hello: MessageFns<Hello> = {
2366
2533
  if (message.resumeToken !== "") {
2367
2534
  writer.uint32(82).string(message.resumeToken);
2368
2535
  }
2536
+ if (message.binarySha256 !== "") {
2537
+ writer.uint32(90).string(message.binarySha256);
2538
+ }
2539
+ if (message.completedUpdateOperationId !== "") {
2540
+ writer.uint32(98).string(message.completedUpdateOperationId);
2541
+ }
2542
+ if (message.completedUpdateTargetVersion !== "") {
2543
+ writer.uint32(106).string(message.completedUpdateTargetVersion);
2544
+ }
2545
+ if (message.completedUpdateBinarySha256 !== "") {
2546
+ writer.uint32(114).string(message.completedUpdateBinarySha256);
2547
+ }
2369
2548
  return writer;
2370
2549
  },
2371
2550
 
@@ -2456,6 +2635,38 @@ export const Hello: MessageFns<Hello> = {
2456
2635
  message.resumeToken = reader.string();
2457
2636
  continue;
2458
2637
  }
2638
+ case 11: {
2639
+ if (tag !== 90) {
2640
+ break;
2641
+ }
2642
+
2643
+ message.binarySha256 = reader.string();
2644
+ continue;
2645
+ }
2646
+ case 12: {
2647
+ if (tag !== 98) {
2648
+ break;
2649
+ }
2650
+
2651
+ message.completedUpdateOperationId = reader.string();
2652
+ continue;
2653
+ }
2654
+ case 13: {
2655
+ if (tag !== 106) {
2656
+ break;
2657
+ }
2658
+
2659
+ message.completedUpdateTargetVersion = reader.string();
2660
+ continue;
2661
+ }
2662
+ case 14: {
2663
+ if (tag !== 114) {
2664
+ break;
2665
+ }
2666
+
2667
+ message.completedUpdateBinarySha256 = reader.string();
2668
+ continue;
2669
+ }
2459
2670
  }
2460
2671
  if ((tag & 7) === 4 || tag === 0) {
2461
2672
  break;
@@ -2505,6 +2716,26 @@ export const Hello: MessageFns<Hello> = {
2505
2716
  : isSet(object.resume_token)
2506
2717
  ? globalThis.String(object.resume_token)
2507
2718
  : "",
2719
+ binarySha256: isSet(object.binarySha256)
2720
+ ? globalThis.String(object.binarySha256)
2721
+ : isSet(object.binary_sha256)
2722
+ ? globalThis.String(object.binary_sha256)
2723
+ : "",
2724
+ completedUpdateOperationId: isSet(object.completedUpdateOperationId)
2725
+ ? globalThis.String(object.completedUpdateOperationId)
2726
+ : isSet(object.completed_update_operation_id)
2727
+ ? globalThis.String(object.completed_update_operation_id)
2728
+ : "",
2729
+ completedUpdateTargetVersion: isSet(object.completedUpdateTargetVersion)
2730
+ ? globalThis.String(object.completedUpdateTargetVersion)
2731
+ : isSet(object.completed_update_target_version)
2732
+ ? globalThis.String(object.completed_update_target_version)
2733
+ : "",
2734
+ completedUpdateBinarySha256: isSet(object.completedUpdateBinarySha256)
2735
+ ? globalThis.String(object.completedUpdateBinarySha256)
2736
+ : isSet(object.completed_update_binary_sha256)
2737
+ ? globalThis.String(object.completed_update_binary_sha256)
2738
+ : "",
2508
2739
  };
2509
2740
  },
2510
2741
 
@@ -2540,6 +2771,18 @@ export const Hello: MessageFns<Hello> = {
2540
2771
  if (message.resumeToken !== "") {
2541
2772
  obj.resumeToken = message.resumeToken;
2542
2773
  }
2774
+ if (message.binarySha256 !== "") {
2775
+ obj.binarySha256 = message.binarySha256;
2776
+ }
2777
+ if (message.completedUpdateOperationId !== "") {
2778
+ obj.completedUpdateOperationId = message.completedUpdateOperationId;
2779
+ }
2780
+ if (message.completedUpdateTargetVersion !== "") {
2781
+ obj.completedUpdateTargetVersion = message.completedUpdateTargetVersion;
2782
+ }
2783
+ if (message.completedUpdateBinarySha256 !== "") {
2784
+ obj.completedUpdateBinarySha256 = message.completedUpdateBinarySha256;
2785
+ }
2543
2786
  return obj;
2544
2787
  },
2545
2788
 
@@ -2560,6 +2803,10 @@ export const Hello: MessageFns<Hello> = {
2560
2803
  : undefined;
2561
2804
  message.updateChannel = object.updateChannel ?? "";
2562
2805
  message.resumeToken = object.resumeToken ?? "";
2806
+ message.binarySha256 = object.binarySha256 ?? "";
2807
+ message.completedUpdateOperationId = object.completedUpdateOperationId ?? "";
2808
+ message.completedUpdateTargetVersion = object.completedUpdateTargetVersion ?? "";
2809
+ message.completedUpdateBinarySha256 = object.completedUpdateBinarySha256 ?? "";
2563
2810
  return message;
2564
2811
  },
2565
2812
  };
@@ -2577,6 +2824,8 @@ function createBaseCapabilities(): Capabilities {
2577
2824
  desktopUnavailableReason: "",
2578
2825
  opStream: false,
2579
2826
  browserBridge: false,
2827
+ operationResourcePolicy: false,
2828
+ operationCpuQuota: false,
2580
2829
  };
2581
2830
  }
2582
2831
 
@@ -2615,6 +2864,12 @@ export const Capabilities: MessageFns<Capabilities> = {
2615
2864
  if (message.browserBridge !== false) {
2616
2865
  writer.uint32(88).bool(message.browserBridge);
2617
2866
  }
2867
+ if (message.operationResourcePolicy !== false) {
2868
+ writer.uint32(96).bool(message.operationResourcePolicy);
2869
+ }
2870
+ if (message.operationCpuQuota !== false) {
2871
+ writer.uint32(104).bool(message.operationCpuQuota);
2872
+ }
2618
2873
  return writer;
2619
2874
  },
2620
2875
 
@@ -2713,6 +2968,22 @@ export const Capabilities: MessageFns<Capabilities> = {
2713
2968
  message.browserBridge = reader.bool();
2714
2969
  continue;
2715
2970
  }
2971
+ case 12: {
2972
+ if (tag !== 96) {
2973
+ break;
2974
+ }
2975
+
2976
+ message.operationResourcePolicy = reader.bool();
2977
+ continue;
2978
+ }
2979
+ case 13: {
2980
+ if (tag !== 104) {
2981
+ break;
2982
+ }
2983
+
2984
+ message.operationCpuQuota = reader.bool();
2985
+ continue;
2986
+ }
2716
2987
  }
2717
2988
  if ((tag & 7) === 4 || tag === 0) {
2718
2989
  break;
@@ -2755,6 +3026,16 @@ export const Capabilities: MessageFns<Capabilities> = {
2755
3026
  : isSet(object.browser_bridge)
2756
3027
  ? globalThis.Boolean(object.browser_bridge)
2757
3028
  : false,
3029
+ operationResourcePolicy: isSet(object.operationResourcePolicy)
3030
+ ? globalThis.Boolean(object.operationResourcePolicy)
3031
+ : isSet(object.operation_resource_policy)
3032
+ ? globalThis.Boolean(object.operation_resource_policy)
3033
+ : false,
3034
+ operationCpuQuota: isSet(object.operationCpuQuota)
3035
+ ? globalThis.Boolean(object.operationCpuQuota)
3036
+ : isSet(object.operation_cpu_quota)
3037
+ ? globalThis.Boolean(object.operation_cpu_quota)
3038
+ : false,
2758
3039
  };
2759
3040
  },
2760
3041
 
@@ -2793,6 +3074,12 @@ export const Capabilities: MessageFns<Capabilities> = {
2793
3074
  if (message.browserBridge !== false) {
2794
3075
  obj.browserBridge = message.browserBridge;
2795
3076
  }
3077
+ if (message.operationResourcePolicy !== false) {
3078
+ obj.operationResourcePolicy = message.operationResourcePolicy;
3079
+ }
3080
+ if (message.operationCpuQuota !== false) {
3081
+ obj.operationCpuQuota = message.operationCpuQuota;
3082
+ }
2796
3083
  return obj;
2797
3084
  },
2798
3085
 
@@ -2814,6 +3101,8 @@ export const Capabilities: MessageFns<Capabilities> = {
2814
3101
  message.desktopUnavailableReason = object.desktopUnavailableReason ?? "";
2815
3102
  message.opStream = object.opStream ?? false;
2816
3103
  message.browserBridge = object.browserBridge ?? false;
3104
+ message.operationResourcePolicy = object.operationResourcePolicy ?? false;
3105
+ message.operationCpuQuota = object.operationCpuQuota ?? false;
2817
3106
  return message;
2818
3107
  },
2819
3108
  };
@@ -4226,6 +4515,110 @@ export const EnrollmentCredentials: MessageFns<EnrollmentCredentials> = {
4226
4515
  },
4227
4516
  };
4228
4517
 
4518
+ function createBaseOperationResourcePolicy(): OperationResourcePolicy {
4519
+ return { memoryMaxBytes: undefined, memoryHighBytes: undefined, cpuMaxMillicores: undefined };
4520
+ }
4521
+
4522
+ export const OperationResourcePolicy: MessageFns<OperationResourcePolicy> = {
4523
+ encode(message: OperationResourcePolicy, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
4524
+ if (message.memoryMaxBytes !== undefined) {
4525
+ writer.uint32(8).uint64(message.memoryMaxBytes);
4526
+ }
4527
+ if (message.memoryHighBytes !== undefined) {
4528
+ writer.uint32(16).uint64(message.memoryHighBytes);
4529
+ }
4530
+ if (message.cpuMaxMillicores !== undefined) {
4531
+ writer.uint32(24).uint32(message.cpuMaxMillicores);
4532
+ }
4533
+ return writer;
4534
+ },
4535
+
4536
+ decode(input: BinaryReader | Uint8Array, length?: number): OperationResourcePolicy {
4537
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
4538
+ const end = length === undefined ? reader.len : reader.pos + length;
4539
+ const message = createBaseOperationResourcePolicy();
4540
+ while (reader.pos < end) {
4541
+ const tag = reader.uint32();
4542
+ switch (tag >>> 3) {
4543
+ case 1: {
4544
+ if (tag !== 8) {
4545
+ break;
4546
+ }
4547
+
4548
+ message.memoryMaxBytes = reader.uint64().toString();
4549
+ continue;
4550
+ }
4551
+ case 2: {
4552
+ if (tag !== 16) {
4553
+ break;
4554
+ }
4555
+
4556
+ message.memoryHighBytes = reader.uint64().toString();
4557
+ continue;
4558
+ }
4559
+ case 3: {
4560
+ if (tag !== 24) {
4561
+ break;
4562
+ }
4563
+
4564
+ message.cpuMaxMillicores = reader.uint32();
4565
+ continue;
4566
+ }
4567
+ }
4568
+ if ((tag & 7) === 4 || tag === 0) {
4569
+ break;
4570
+ }
4571
+ reader.skip(tag & 7);
4572
+ }
4573
+ return message;
4574
+ },
4575
+
4576
+ fromJSON(object: any): OperationResourcePolicy {
4577
+ return {
4578
+ memoryMaxBytes: isSet(object.memoryMaxBytes)
4579
+ ? globalThis.String(object.memoryMaxBytes)
4580
+ : isSet(object.memory_max_bytes)
4581
+ ? globalThis.String(object.memory_max_bytes)
4582
+ : undefined,
4583
+ memoryHighBytes: isSet(object.memoryHighBytes)
4584
+ ? globalThis.String(object.memoryHighBytes)
4585
+ : isSet(object.memory_high_bytes)
4586
+ ? globalThis.String(object.memory_high_bytes)
4587
+ : undefined,
4588
+ cpuMaxMillicores: isSet(object.cpuMaxMillicores)
4589
+ ? globalThis.Number(object.cpuMaxMillicores)
4590
+ : isSet(object.cpu_max_millicores)
4591
+ ? globalThis.Number(object.cpu_max_millicores)
4592
+ : undefined,
4593
+ };
4594
+ },
4595
+
4596
+ toJSON(message: OperationResourcePolicy): unknown {
4597
+ const obj: any = {};
4598
+ if (message.memoryMaxBytes !== undefined) {
4599
+ obj.memoryMaxBytes = message.memoryMaxBytes;
4600
+ }
4601
+ if (message.memoryHighBytes !== undefined) {
4602
+ obj.memoryHighBytes = message.memoryHighBytes;
4603
+ }
4604
+ if (message.cpuMaxMillicores !== undefined) {
4605
+ obj.cpuMaxMillicores = Math.round(message.cpuMaxMillicores);
4606
+ }
4607
+ return obj;
4608
+ },
4609
+
4610
+ create<I extends Exact<DeepPartial<OperationResourcePolicy>, I>>(base?: I): OperationResourcePolicy {
4611
+ return OperationResourcePolicy.fromPartial(base ?? ({} as any));
4612
+ },
4613
+ fromPartial<I extends Exact<DeepPartial<OperationResourcePolicy>, I>>(object: I): OperationResourcePolicy {
4614
+ const message = createBaseOperationResourcePolicy();
4615
+ message.memoryMaxBytes = object.memoryMaxBytes ?? undefined;
4616
+ message.memoryHighBytes = object.memoryHighBytes ?? undefined;
4617
+ message.cpuMaxMillicores = object.cpuMaxMillicores ?? undefined;
4618
+ return message;
4619
+ },
4620
+ };
4621
+
4229
4622
  function createBaseExecRequest(): ExecRequest {
4230
4623
  return { command: [], shell: false, cwd: "", env: {}, stdin: new Uint8Array(0), timeoutMs: 0 };
4231
4624
  }
@@ -10524,85 +10917,77 @@ export const UpdateMayProceedResponse: MessageFns<UpdateMayProceedResponse> = {
10524
10917
  },
10525
10918
  };
10526
10919
 
10527
- function createBaseOpExit(): OpExit {
10920
+ function createBaseAgentUpdateApplyRequest(): AgentUpdateApplyRequest {
10528
10921
  return {
10529
- exitCode: 0,
10530
- timedOut: false,
10531
- cancelled: false,
10532
- durationMs: "0",
10533
- digests: {},
10534
- totals: {},
10535
- failureCode: "",
10536
- failureDetail: {},
10922
+ operationId: "",
10923
+ targetVersion: "",
10924
+ channel: "",
10925
+ expectedCurrentVersion: "",
10926
+ expectedCurrentSha256: "",
10927
+ releaseBaseUrl: "",
10537
10928
  };
10538
10929
  }
10539
10930
 
10540
- export const OpExit: MessageFns<OpExit> = {
10541
- encode(message: OpExit, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
10542
- if (message.exitCode !== 0) {
10543
- writer.uint32(8).int32(message.exitCode);
10931
+ export const AgentUpdateApplyRequest: MessageFns<AgentUpdateApplyRequest> = {
10932
+ encode(message: AgentUpdateApplyRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
10933
+ if (message.operationId !== "") {
10934
+ writer.uint32(10).string(message.operationId);
10544
10935
  }
10545
- if (message.timedOut !== false) {
10546
- writer.uint32(16).bool(message.timedOut);
10936
+ if (message.targetVersion !== "") {
10937
+ writer.uint32(18).string(message.targetVersion);
10547
10938
  }
10548
- if (message.cancelled !== false) {
10549
- writer.uint32(24).bool(message.cancelled);
10939
+ if (message.channel !== "") {
10940
+ writer.uint32(26).string(message.channel);
10550
10941
  }
10551
- if (message.durationMs !== "0") {
10552
- writer.uint32(32).uint64(message.durationMs);
10942
+ if (message.expectedCurrentVersion !== "") {
10943
+ writer.uint32(34).string(message.expectedCurrentVersion);
10553
10944
  }
10554
- globalThis.Object.entries(message.digests).forEach(([key, value]: [string, string]) => {
10555
- OpExit_DigestsEntry.encode({ key: key as any, value }, writer.uint32(42).fork()).join();
10556
- });
10557
- globalThis.Object.entries(message.totals).forEach(([key, value]: [string, string]) => {
10558
- OpExit_TotalsEntry.encode({ key: key as any, value }, writer.uint32(50).fork()).join();
10559
- });
10560
- if (message.failureCode !== "") {
10561
- writer.uint32(58).string(message.failureCode);
10945
+ if (message.expectedCurrentSha256 !== "") {
10946
+ writer.uint32(42).string(message.expectedCurrentSha256);
10947
+ }
10948
+ if (message.releaseBaseUrl !== "") {
10949
+ writer.uint32(50).string(message.releaseBaseUrl);
10562
10950
  }
10563
- globalThis.Object.entries(message.failureDetail).forEach(([key, value]: [string, string]) => {
10564
- OpExit_FailureDetailEntry.encode({ key: key as any, value }, writer.uint32(66).fork()).join();
10565
- });
10566
10951
  return writer;
10567
10952
  },
10568
10953
 
10569
- decode(input: BinaryReader | Uint8Array, length?: number): OpExit {
10954
+ decode(input: BinaryReader | Uint8Array, length?: number): AgentUpdateApplyRequest {
10570
10955
  const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
10571
10956
  const end = length === undefined ? reader.len : reader.pos + length;
10572
- const message = createBaseOpExit();
10957
+ const message = createBaseAgentUpdateApplyRequest();
10573
10958
  while (reader.pos < end) {
10574
10959
  const tag = reader.uint32();
10575
10960
  switch (tag >>> 3) {
10576
10961
  case 1: {
10577
- if (tag !== 8) {
10962
+ if (tag !== 10) {
10578
10963
  break;
10579
10964
  }
10580
10965
 
10581
- message.exitCode = reader.int32();
10966
+ message.operationId = reader.string();
10582
10967
  continue;
10583
10968
  }
10584
10969
  case 2: {
10585
- if (tag !== 16) {
10970
+ if (tag !== 18) {
10586
10971
  break;
10587
10972
  }
10588
10973
 
10589
- message.timedOut = reader.bool();
10974
+ message.targetVersion = reader.string();
10590
10975
  continue;
10591
10976
  }
10592
10977
  case 3: {
10593
- if (tag !== 24) {
10978
+ if (tag !== 26) {
10594
10979
  break;
10595
10980
  }
10596
10981
 
10597
- message.cancelled = reader.bool();
10982
+ message.channel = reader.string();
10598
10983
  continue;
10599
10984
  }
10600
10985
  case 4: {
10601
- if (tag !== 32) {
10986
+ if (tag !== 34) {
10602
10987
  break;
10603
10988
  }
10604
10989
 
10605
- message.durationMs = reader.uint64().toString();
10990
+ message.expectedCurrentVersion = reader.string();
10606
10991
  continue;
10607
10992
  }
10608
10993
  case 5: {
@@ -10610,10 +10995,7 @@ export const OpExit: MessageFns<OpExit> = {
10610
10995
  break;
10611
10996
  }
10612
10997
 
10613
- const entry5 = OpExit_DigestsEntry.decode(reader, reader.uint32());
10614
- if (entry5.value !== undefined) {
10615
- message.digests[entry5.key] = entry5.value;
10616
- }
10998
+ message.expectedCurrentSha256 = reader.string();
10617
10999
  continue;
10618
11000
  }
10619
11001
  case 6: {
@@ -10621,22 +11003,524 @@ export const OpExit: MessageFns<OpExit> = {
10621
11003
  break;
10622
11004
  }
10623
11005
 
10624
- const entry6 = OpExit_TotalsEntry.decode(reader, reader.uint32());
10625
- if (entry6.value !== undefined) {
10626
- message.totals[entry6.key] = entry6.value;
10627
- }
11006
+ message.releaseBaseUrl = reader.string();
10628
11007
  continue;
10629
11008
  }
10630
- case 7: {
10631
- if (tag !== 58) {
10632
- break;
10633
- }
11009
+ }
11010
+ if ((tag & 7) === 4 || tag === 0) {
11011
+ break;
11012
+ }
11013
+ reader.skip(tag & 7);
11014
+ }
11015
+ return message;
11016
+ },
10634
11017
 
10635
- message.failureCode = reader.string();
10636
- continue;
10637
- }
10638
- case 8: {
10639
- if (tag !== 66) {
11018
+ fromJSON(object: any): AgentUpdateApplyRequest {
11019
+ return {
11020
+ operationId: isSet(object.operationId)
11021
+ ? globalThis.String(object.operationId)
11022
+ : isSet(object.operation_id)
11023
+ ? globalThis.String(object.operation_id)
11024
+ : "",
11025
+ targetVersion: isSet(object.targetVersion)
11026
+ ? globalThis.String(object.targetVersion)
11027
+ : isSet(object.target_version)
11028
+ ? globalThis.String(object.target_version)
11029
+ : "",
11030
+ channel: isSet(object.channel) ? globalThis.String(object.channel) : "",
11031
+ expectedCurrentVersion: isSet(object.expectedCurrentVersion)
11032
+ ? globalThis.String(object.expectedCurrentVersion)
11033
+ : isSet(object.expected_current_version)
11034
+ ? globalThis.String(object.expected_current_version)
11035
+ : "",
11036
+ expectedCurrentSha256: isSet(object.expectedCurrentSha256)
11037
+ ? globalThis.String(object.expectedCurrentSha256)
11038
+ : isSet(object.expected_current_sha256)
11039
+ ? globalThis.String(object.expected_current_sha256)
11040
+ : "",
11041
+ releaseBaseUrl: isSet(object.releaseBaseUrl)
11042
+ ? globalThis.String(object.releaseBaseUrl)
11043
+ : isSet(object.release_base_url)
11044
+ ? globalThis.String(object.release_base_url)
11045
+ : "",
11046
+ };
11047
+ },
11048
+
11049
+ toJSON(message: AgentUpdateApplyRequest): unknown {
11050
+ const obj: any = {};
11051
+ if (message.operationId !== "") {
11052
+ obj.operationId = message.operationId;
11053
+ }
11054
+ if (message.targetVersion !== "") {
11055
+ obj.targetVersion = message.targetVersion;
11056
+ }
11057
+ if (message.channel !== "") {
11058
+ obj.channel = message.channel;
11059
+ }
11060
+ if (message.expectedCurrentVersion !== "") {
11061
+ obj.expectedCurrentVersion = message.expectedCurrentVersion;
11062
+ }
11063
+ if (message.expectedCurrentSha256 !== "") {
11064
+ obj.expectedCurrentSha256 = message.expectedCurrentSha256;
11065
+ }
11066
+ if (message.releaseBaseUrl !== "") {
11067
+ obj.releaseBaseUrl = message.releaseBaseUrl;
11068
+ }
11069
+ return obj;
11070
+ },
11071
+
11072
+ create<I extends Exact<DeepPartial<AgentUpdateApplyRequest>, I>>(base?: I): AgentUpdateApplyRequest {
11073
+ return AgentUpdateApplyRequest.fromPartial(base ?? ({} as any));
11074
+ },
11075
+ fromPartial<I extends Exact<DeepPartial<AgentUpdateApplyRequest>, I>>(object: I): AgentUpdateApplyRequest {
11076
+ const message = createBaseAgentUpdateApplyRequest();
11077
+ message.operationId = object.operationId ?? "";
11078
+ message.targetVersion = object.targetVersion ?? "";
11079
+ message.channel = object.channel ?? "";
11080
+ message.expectedCurrentVersion = object.expectedCurrentVersion ?? "";
11081
+ message.expectedCurrentSha256 = object.expectedCurrentSha256 ?? "";
11082
+ message.releaseBaseUrl = object.releaseBaseUrl ?? "";
11083
+ return message;
11084
+ },
11085
+ };
11086
+
11087
+ function createBaseAgentUpdateApplyResponse(): AgentUpdateApplyResponse {
11088
+ return { accepted: false, operationId: "", currentVersion: "", currentSha256: "", targetVersion: "" };
11089
+ }
11090
+
11091
+ export const AgentUpdateApplyResponse: MessageFns<AgentUpdateApplyResponse> = {
11092
+ encode(message: AgentUpdateApplyResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
11093
+ if (message.accepted !== false) {
11094
+ writer.uint32(8).bool(message.accepted);
11095
+ }
11096
+ if (message.operationId !== "") {
11097
+ writer.uint32(18).string(message.operationId);
11098
+ }
11099
+ if (message.currentVersion !== "") {
11100
+ writer.uint32(26).string(message.currentVersion);
11101
+ }
11102
+ if (message.currentSha256 !== "") {
11103
+ writer.uint32(34).string(message.currentSha256);
11104
+ }
11105
+ if (message.targetVersion !== "") {
11106
+ writer.uint32(42).string(message.targetVersion);
11107
+ }
11108
+ return writer;
11109
+ },
11110
+
11111
+ decode(input: BinaryReader | Uint8Array, length?: number): AgentUpdateApplyResponse {
11112
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
11113
+ const end = length === undefined ? reader.len : reader.pos + length;
11114
+ const message = createBaseAgentUpdateApplyResponse();
11115
+ while (reader.pos < end) {
11116
+ const tag = reader.uint32();
11117
+ switch (tag >>> 3) {
11118
+ case 1: {
11119
+ if (tag !== 8) {
11120
+ break;
11121
+ }
11122
+
11123
+ message.accepted = reader.bool();
11124
+ continue;
11125
+ }
11126
+ case 2: {
11127
+ if (tag !== 18) {
11128
+ break;
11129
+ }
11130
+
11131
+ message.operationId = reader.string();
11132
+ continue;
11133
+ }
11134
+ case 3: {
11135
+ if (tag !== 26) {
11136
+ break;
11137
+ }
11138
+
11139
+ message.currentVersion = reader.string();
11140
+ continue;
11141
+ }
11142
+ case 4: {
11143
+ if (tag !== 34) {
11144
+ break;
11145
+ }
11146
+
11147
+ message.currentSha256 = reader.string();
11148
+ continue;
11149
+ }
11150
+ case 5: {
11151
+ if (tag !== 42) {
11152
+ break;
11153
+ }
11154
+
11155
+ message.targetVersion = reader.string();
11156
+ continue;
11157
+ }
11158
+ }
11159
+ if ((tag & 7) === 4 || tag === 0) {
11160
+ break;
11161
+ }
11162
+ reader.skip(tag & 7);
11163
+ }
11164
+ return message;
11165
+ },
11166
+
11167
+ fromJSON(object: any): AgentUpdateApplyResponse {
11168
+ return {
11169
+ accepted: isSet(object.accepted) ? globalThis.Boolean(object.accepted) : false,
11170
+ operationId: isSet(object.operationId)
11171
+ ? globalThis.String(object.operationId)
11172
+ : isSet(object.operation_id)
11173
+ ? globalThis.String(object.operation_id)
11174
+ : "",
11175
+ currentVersion: isSet(object.currentVersion)
11176
+ ? globalThis.String(object.currentVersion)
11177
+ : isSet(object.current_version)
11178
+ ? globalThis.String(object.current_version)
11179
+ : "",
11180
+ currentSha256: isSet(object.currentSha256)
11181
+ ? globalThis.String(object.currentSha256)
11182
+ : isSet(object.current_sha256)
11183
+ ? globalThis.String(object.current_sha256)
11184
+ : "",
11185
+ targetVersion: isSet(object.targetVersion)
11186
+ ? globalThis.String(object.targetVersion)
11187
+ : isSet(object.target_version)
11188
+ ? globalThis.String(object.target_version)
11189
+ : "",
11190
+ };
11191
+ },
11192
+
11193
+ toJSON(message: AgentUpdateApplyResponse): unknown {
11194
+ const obj: any = {};
11195
+ if (message.accepted !== false) {
11196
+ obj.accepted = message.accepted;
11197
+ }
11198
+ if (message.operationId !== "") {
11199
+ obj.operationId = message.operationId;
11200
+ }
11201
+ if (message.currentVersion !== "") {
11202
+ obj.currentVersion = message.currentVersion;
11203
+ }
11204
+ if (message.currentSha256 !== "") {
11205
+ obj.currentSha256 = message.currentSha256;
11206
+ }
11207
+ if (message.targetVersion !== "") {
11208
+ obj.targetVersion = message.targetVersion;
11209
+ }
11210
+ return obj;
11211
+ },
11212
+
11213
+ create<I extends Exact<DeepPartial<AgentUpdateApplyResponse>, I>>(base?: I): AgentUpdateApplyResponse {
11214
+ return AgentUpdateApplyResponse.fromPartial(base ?? ({} as any));
11215
+ },
11216
+ fromPartial<I extends Exact<DeepPartial<AgentUpdateApplyResponse>, I>>(object: I): AgentUpdateApplyResponse {
11217
+ const message = createBaseAgentUpdateApplyResponse();
11218
+ message.accepted = object.accepted ?? false;
11219
+ message.operationId = object.operationId ?? "";
11220
+ message.currentVersion = object.currentVersion ?? "";
11221
+ message.currentSha256 = object.currentSha256 ?? "";
11222
+ message.targetVersion = object.targetVersion ?? "";
11223
+ return message;
11224
+ },
11225
+ };
11226
+
11227
+ function createBaseAgentUpdateProgress(): AgentUpdateProgress {
11228
+ return {
11229
+ operationId: "",
11230
+ targetVersion: "",
11231
+ stage: 0,
11232
+ expectedBinarySha256: "",
11233
+ errorCode: "",
11234
+ retryable: false,
11235
+ rolledBack: false,
11236
+ };
11237
+ }
11238
+
11239
+ export const AgentUpdateProgress: MessageFns<AgentUpdateProgress> = {
11240
+ encode(message: AgentUpdateProgress, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
11241
+ if (message.operationId !== "") {
11242
+ writer.uint32(10).string(message.operationId);
11243
+ }
11244
+ if (message.targetVersion !== "") {
11245
+ writer.uint32(18).string(message.targetVersion);
11246
+ }
11247
+ if (message.stage !== 0) {
11248
+ writer.uint32(24).int32(message.stage);
11249
+ }
11250
+ if (message.expectedBinarySha256 !== "") {
11251
+ writer.uint32(34).string(message.expectedBinarySha256);
11252
+ }
11253
+ if (message.errorCode !== "") {
11254
+ writer.uint32(42).string(message.errorCode);
11255
+ }
11256
+ if (message.retryable !== false) {
11257
+ writer.uint32(48).bool(message.retryable);
11258
+ }
11259
+ if (message.rolledBack !== false) {
11260
+ writer.uint32(56).bool(message.rolledBack);
11261
+ }
11262
+ return writer;
11263
+ },
11264
+
11265
+ decode(input: BinaryReader | Uint8Array, length?: number): AgentUpdateProgress {
11266
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
11267
+ const end = length === undefined ? reader.len : reader.pos + length;
11268
+ const message = createBaseAgentUpdateProgress();
11269
+ while (reader.pos < end) {
11270
+ const tag = reader.uint32();
11271
+ switch (tag >>> 3) {
11272
+ case 1: {
11273
+ if (tag !== 10) {
11274
+ break;
11275
+ }
11276
+
11277
+ message.operationId = reader.string();
11278
+ continue;
11279
+ }
11280
+ case 2: {
11281
+ if (tag !== 18) {
11282
+ break;
11283
+ }
11284
+
11285
+ message.targetVersion = reader.string();
11286
+ continue;
11287
+ }
11288
+ case 3: {
11289
+ if (tag !== 24) {
11290
+ break;
11291
+ }
11292
+
11293
+ message.stage = reader.int32() as any;
11294
+ continue;
11295
+ }
11296
+ case 4: {
11297
+ if (tag !== 34) {
11298
+ break;
11299
+ }
11300
+
11301
+ message.expectedBinarySha256 = reader.string();
11302
+ continue;
11303
+ }
11304
+ case 5: {
11305
+ if (tag !== 42) {
11306
+ break;
11307
+ }
11308
+
11309
+ message.errorCode = reader.string();
11310
+ continue;
11311
+ }
11312
+ case 6: {
11313
+ if (tag !== 48) {
11314
+ break;
11315
+ }
11316
+
11317
+ message.retryable = reader.bool();
11318
+ continue;
11319
+ }
11320
+ case 7: {
11321
+ if (tag !== 56) {
11322
+ break;
11323
+ }
11324
+
11325
+ message.rolledBack = reader.bool();
11326
+ continue;
11327
+ }
11328
+ }
11329
+ if ((tag & 7) === 4 || tag === 0) {
11330
+ break;
11331
+ }
11332
+ reader.skip(tag & 7);
11333
+ }
11334
+ return message;
11335
+ },
11336
+
11337
+ fromJSON(object: any): AgentUpdateProgress {
11338
+ return {
11339
+ operationId: isSet(object.operationId)
11340
+ ? globalThis.String(object.operationId)
11341
+ : isSet(object.operation_id)
11342
+ ? globalThis.String(object.operation_id)
11343
+ : "",
11344
+ targetVersion: isSet(object.targetVersion)
11345
+ ? globalThis.String(object.targetVersion)
11346
+ : isSet(object.target_version)
11347
+ ? globalThis.String(object.target_version)
11348
+ : "",
11349
+ stage: isSet(object.stage) ? agentUpdateStageFromJSON(object.stage) : 0,
11350
+ expectedBinarySha256: isSet(object.expectedBinarySha256)
11351
+ ? globalThis.String(object.expectedBinarySha256)
11352
+ : isSet(object.expected_binary_sha256)
11353
+ ? globalThis.String(object.expected_binary_sha256)
11354
+ : "",
11355
+ errorCode: isSet(object.errorCode)
11356
+ ? globalThis.String(object.errorCode)
11357
+ : isSet(object.error_code)
11358
+ ? globalThis.String(object.error_code)
11359
+ : "",
11360
+ retryable: isSet(object.retryable) ? globalThis.Boolean(object.retryable) : false,
11361
+ rolledBack: isSet(object.rolledBack)
11362
+ ? globalThis.Boolean(object.rolledBack)
11363
+ : isSet(object.rolled_back)
11364
+ ? globalThis.Boolean(object.rolled_back)
11365
+ : false,
11366
+ };
11367
+ },
11368
+
11369
+ toJSON(message: AgentUpdateProgress): unknown {
11370
+ const obj: any = {};
11371
+ if (message.operationId !== "") {
11372
+ obj.operationId = message.operationId;
11373
+ }
11374
+ if (message.targetVersion !== "") {
11375
+ obj.targetVersion = message.targetVersion;
11376
+ }
11377
+ if (message.stage !== 0) {
11378
+ obj.stage = agentUpdateStageToJSON(message.stage);
11379
+ }
11380
+ if (message.expectedBinarySha256 !== "") {
11381
+ obj.expectedBinarySha256 = message.expectedBinarySha256;
11382
+ }
11383
+ if (message.errorCode !== "") {
11384
+ obj.errorCode = message.errorCode;
11385
+ }
11386
+ if (message.retryable !== false) {
11387
+ obj.retryable = message.retryable;
11388
+ }
11389
+ if (message.rolledBack !== false) {
11390
+ obj.rolledBack = message.rolledBack;
11391
+ }
11392
+ return obj;
11393
+ },
11394
+
11395
+ create<I extends Exact<DeepPartial<AgentUpdateProgress>, I>>(base?: I): AgentUpdateProgress {
11396
+ return AgentUpdateProgress.fromPartial(base ?? ({} as any));
11397
+ },
11398
+ fromPartial<I extends Exact<DeepPartial<AgentUpdateProgress>, I>>(object: I): AgentUpdateProgress {
11399
+ const message = createBaseAgentUpdateProgress();
11400
+ message.operationId = object.operationId ?? "";
11401
+ message.targetVersion = object.targetVersion ?? "";
11402
+ message.stage = object.stage ?? 0;
11403
+ message.expectedBinarySha256 = object.expectedBinarySha256 ?? "";
11404
+ message.errorCode = object.errorCode ?? "";
11405
+ message.retryable = object.retryable ?? false;
11406
+ message.rolledBack = object.rolledBack ?? false;
11407
+ return message;
11408
+ },
11409
+ };
11410
+
11411
+ function createBaseOpExit(): OpExit {
11412
+ return {
11413
+ exitCode: 0,
11414
+ timedOut: false,
11415
+ cancelled: false,
11416
+ durationMs: "0",
11417
+ digests: {},
11418
+ totals: {},
11419
+ failureCode: "",
11420
+ failureDetail: {},
11421
+ };
11422
+ }
11423
+
11424
+ export const OpExit: MessageFns<OpExit> = {
11425
+ encode(message: OpExit, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
11426
+ if (message.exitCode !== 0) {
11427
+ writer.uint32(8).int32(message.exitCode);
11428
+ }
11429
+ if (message.timedOut !== false) {
11430
+ writer.uint32(16).bool(message.timedOut);
11431
+ }
11432
+ if (message.cancelled !== false) {
11433
+ writer.uint32(24).bool(message.cancelled);
11434
+ }
11435
+ if (message.durationMs !== "0") {
11436
+ writer.uint32(32).uint64(message.durationMs);
11437
+ }
11438
+ globalThis.Object.entries(message.digests).forEach(([key, value]: [string, string]) => {
11439
+ OpExit_DigestsEntry.encode({ key: key as any, value }, writer.uint32(42).fork()).join();
11440
+ });
11441
+ globalThis.Object.entries(message.totals).forEach(([key, value]: [string, string]) => {
11442
+ OpExit_TotalsEntry.encode({ key: key as any, value }, writer.uint32(50).fork()).join();
11443
+ });
11444
+ if (message.failureCode !== "") {
11445
+ writer.uint32(58).string(message.failureCode);
11446
+ }
11447
+ globalThis.Object.entries(message.failureDetail).forEach(([key, value]: [string, string]) => {
11448
+ OpExit_FailureDetailEntry.encode({ key: key as any, value }, writer.uint32(66).fork()).join();
11449
+ });
11450
+ return writer;
11451
+ },
11452
+
11453
+ decode(input: BinaryReader | Uint8Array, length?: number): OpExit {
11454
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
11455
+ const end = length === undefined ? reader.len : reader.pos + length;
11456
+ const message = createBaseOpExit();
11457
+ while (reader.pos < end) {
11458
+ const tag = reader.uint32();
11459
+ switch (tag >>> 3) {
11460
+ case 1: {
11461
+ if (tag !== 8) {
11462
+ break;
11463
+ }
11464
+
11465
+ message.exitCode = reader.int32();
11466
+ continue;
11467
+ }
11468
+ case 2: {
11469
+ if (tag !== 16) {
11470
+ break;
11471
+ }
11472
+
11473
+ message.timedOut = reader.bool();
11474
+ continue;
11475
+ }
11476
+ case 3: {
11477
+ if (tag !== 24) {
11478
+ break;
11479
+ }
11480
+
11481
+ message.cancelled = reader.bool();
11482
+ continue;
11483
+ }
11484
+ case 4: {
11485
+ if (tag !== 32) {
11486
+ break;
11487
+ }
11488
+
11489
+ message.durationMs = reader.uint64().toString();
11490
+ continue;
11491
+ }
11492
+ case 5: {
11493
+ if (tag !== 42) {
11494
+ break;
11495
+ }
11496
+
11497
+ const entry5 = OpExit_DigestsEntry.decode(reader, reader.uint32());
11498
+ if (entry5.value !== undefined) {
11499
+ message.digests[entry5.key] = entry5.value;
11500
+ }
11501
+ continue;
11502
+ }
11503
+ case 6: {
11504
+ if (tag !== 50) {
11505
+ break;
11506
+ }
11507
+
11508
+ const entry6 = OpExit_TotalsEntry.decode(reader, reader.uint32());
11509
+ if (entry6.value !== undefined) {
11510
+ message.totals[entry6.key] = entry6.value;
11511
+ }
11512
+ continue;
11513
+ }
11514
+ case 7: {
11515
+ if (tag !== 58) {
11516
+ break;
11517
+ }
11518
+
11519
+ message.failureCode = reader.string();
11520
+ continue;
11521
+ }
11522
+ case 8: {
11523
+ if (tag !== 66) {
10640
11524
  break;
10641
11525
  }
10642
11526
 
@@ -12386,7 +13270,7 @@ export const OpAck: MessageFns<OpAck> = {
12386
13270
  };
12387
13271
 
12388
13272
  function createBaseControlRequest(): ControlRequest {
12389
- return { requestId: "", epoch: 0, op: undefined };
13273
+ return { requestId: "", epoch: 0, resourcePolicy: undefined, op: undefined };
12390
13274
  }
12391
13275
 
12392
13276
  export const ControlRequest: MessageFns<ControlRequest> = {
@@ -12397,6 +13281,9 @@ export const ControlRequest: MessageFns<ControlRequest> = {
12397
13281
  if (message.epoch !== 0) {
12398
13282
  writer.uint32(16).uint32(message.epoch);
12399
13283
  }
13284
+ if (message.resourcePolicy !== undefined) {
13285
+ OperationResourcePolicy.encode(message.resourcePolicy, writer.uint32(26).fork()).join();
13286
+ }
12400
13287
  switch (message.op?.$case) {
12401
13288
  case "ping":
12402
13289
  PingRequest.encode(message.op.ping, writer.uint32(82).fork()).join();
@@ -12407,9 +13294,6 @@ export const ControlRequest: MessageFns<ControlRequest> = {
12407
13294
  case "resume":
12408
13295
  ResumeRequest.encode(message.op.resume, writer.uint32(98).fork()).join();
12409
13296
  break;
12410
- case "exec":
12411
- ExecRequest.encode(message.op.exec, writer.uint32(106).fork()).join();
12412
- break;
12413
13297
  case "fsRead":
12414
13298
  FsReadRequest.encode(message.op.fsRead, writer.uint32(114).fork()).join();
12415
13299
  break;
@@ -12485,6 +13369,9 @@ export const ControlRequest: MessageFns<ControlRequest> = {
12485
13369
  case "computerFramesOpen":
12486
13370
  ComputerFramesOpenRequest.encode(message.op.computerFramesOpen, writer.uint32(306).fork()).join();
12487
13371
  break;
13372
+ case "agentUpdateApply":
13373
+ AgentUpdateApplyRequest.encode(message.op.agentUpdateApply, writer.uint32(314).fork()).join();
13374
+ break;
12488
13375
  }
12489
13376
  return writer;
12490
13377
  },
@@ -12512,6 +13399,14 @@ export const ControlRequest: MessageFns<ControlRequest> = {
12512
13399
  message.epoch = reader.uint32();
12513
13400
  continue;
12514
13401
  }
13402
+ case 3: {
13403
+ if (tag !== 26) {
13404
+ break;
13405
+ }
13406
+
13407
+ message.resourcePolicy = OperationResourcePolicy.decode(reader, reader.uint32());
13408
+ continue;
13409
+ }
12515
13410
  case 10: {
12516
13411
  if (tag !== 82) {
12517
13412
  break;
@@ -12536,14 +13431,6 @@ export const ControlRequest: MessageFns<ControlRequest> = {
12536
13431
  message.op = { $case: "resume", resume: ResumeRequest.decode(reader, reader.uint32()) };
12537
13432
  continue;
12538
13433
  }
12539
- case 13: {
12540
- if (tag !== 106) {
12541
- break;
12542
- }
12543
-
12544
- message.op = { $case: "exec", exec: ExecRequest.decode(reader, reader.uint32()) };
12545
- continue;
12546
- }
12547
13434
  case 14: {
12548
13435
  if (tag !== 114) {
12549
13436
  break;
@@ -12759,6 +13646,17 @@ export const ControlRequest: MessageFns<ControlRequest> = {
12759
13646
  };
12760
13647
  continue;
12761
13648
  }
13649
+ case 39: {
13650
+ if (tag !== 314) {
13651
+ break;
13652
+ }
13653
+
13654
+ message.op = {
13655
+ $case: "agentUpdateApply",
13656
+ agentUpdateApply: AgentUpdateApplyRequest.decode(reader, reader.uint32()),
13657
+ };
13658
+ continue;
13659
+ }
12762
13660
  }
12763
13661
  if ((tag & 7) === 4 || tag === 0) {
12764
13662
  break;
@@ -12776,14 +13674,17 @@ export const ControlRequest: MessageFns<ControlRequest> = {
12776
13674
  ? globalThis.String(object.request_id)
12777
13675
  : "",
12778
13676
  epoch: isSet(object.epoch) ? globalThis.Number(object.epoch) : 0,
13677
+ resourcePolicy: isSet(object.resourcePolicy)
13678
+ ? OperationResourcePolicy.fromJSON(object.resourcePolicy)
13679
+ : isSet(object.resource_policy)
13680
+ ? OperationResourcePolicy.fromJSON(object.resource_policy)
13681
+ : undefined,
12779
13682
  op: isSet(object.ping)
12780
13683
  ? { $case: "ping", ping: PingRequest.fromJSON(object.ping) }
12781
13684
  : isSet(object.hello)
12782
13685
  ? { $case: "hello", hello: Hello.fromJSON(object.hello) }
12783
13686
  : isSet(object.resume)
12784
13687
  ? { $case: "resume", resume: ResumeRequest.fromJSON(object.resume) }
12785
- : isSet(object.exec)
12786
- ? { $case: "exec", exec: ExecRequest.fromJSON(object.exec) }
12787
13688
  : isSet(object.fsRead)
12788
13689
  ? { $case: "fsRead", fsRead: FsReadRequest.fromJSON(object.fsRead) }
12789
13690
  : isSet(object.fs_read)
@@ -12898,6 +13799,10 @@ export const ControlRequest: MessageFns<ControlRequest> = {
12898
13799
  $case: "computerFramesOpen",
12899
13800
  computerFramesOpen: ComputerFramesOpenRequest.fromJSON(object.computer_frames_open),
12900
13801
  }
13802
+ : isSet(object.agentUpdateApply)
13803
+ ? { $case: "agentUpdateApply", agentUpdateApply: AgentUpdateApplyRequest.fromJSON(object.agentUpdateApply) }
13804
+ : isSet(object.agent_update_apply)
13805
+ ? { $case: "agentUpdateApply", agentUpdateApply: AgentUpdateApplyRequest.fromJSON(object.agent_update_apply) }
12901
13806
  : undefined,
12902
13807
  };
12903
13808
  },
@@ -12910,14 +13815,15 @@ export const ControlRequest: MessageFns<ControlRequest> = {
12910
13815
  if (message.epoch !== 0) {
12911
13816
  obj.epoch = Math.round(message.epoch);
12912
13817
  }
13818
+ if (message.resourcePolicy !== undefined) {
13819
+ obj.resourcePolicy = OperationResourcePolicy.toJSON(message.resourcePolicy);
13820
+ }
12913
13821
  if (message.op?.$case === "ping") {
12914
13822
  obj.ping = PingRequest.toJSON(message.op.ping);
12915
13823
  } else if (message.op?.$case === "hello") {
12916
13824
  obj.hello = Hello.toJSON(message.op.hello);
12917
13825
  } else if (message.op?.$case === "resume") {
12918
13826
  obj.resume = ResumeRequest.toJSON(message.op.resume);
12919
- } else if (message.op?.$case === "exec") {
12920
- obj.exec = ExecRequest.toJSON(message.op.exec);
12921
13827
  } else if (message.op?.$case === "fsRead") {
12922
13828
  obj.fsRead = FsReadRequest.toJSON(message.op.fsRead);
12923
13829
  } else if (message.op?.$case === "fsWrite") {
@@ -12968,6 +13874,8 @@ export const ControlRequest: MessageFns<ControlRequest> = {
12968
13874
  obj.browserFramesOpen = BrowserFramesOpenRequest.toJSON(message.op.browserFramesOpen);
12969
13875
  } else if (message.op?.$case === "computerFramesOpen") {
12970
13876
  obj.computerFramesOpen = ComputerFramesOpenRequest.toJSON(message.op.computerFramesOpen);
13877
+ } else if (message.op?.$case === "agentUpdateApply") {
13878
+ obj.agentUpdateApply = AgentUpdateApplyRequest.toJSON(message.op.agentUpdateApply);
12971
13879
  }
12972
13880
  return obj;
12973
13881
  },
@@ -12979,6 +13887,9 @@ export const ControlRequest: MessageFns<ControlRequest> = {
12979
13887
  const message = createBaseControlRequest();
12980
13888
  message.requestId = object.requestId ?? "";
12981
13889
  message.epoch = object.epoch ?? 0;
13890
+ message.resourcePolicy = (object.resourcePolicy !== undefined && object.resourcePolicy !== null)
13891
+ ? OperationResourcePolicy.fromPartial(object.resourcePolicy)
13892
+ : undefined;
12982
13893
  switch (object.op?.$case) {
12983
13894
  case "ping": {
12984
13895
  if (object.op?.ping !== undefined && object.op?.ping !== null) {
@@ -12998,12 +13909,6 @@ export const ControlRequest: MessageFns<ControlRequest> = {
12998
13909
  }
12999
13910
  break;
13000
13911
  }
13001
- case "exec": {
13002
- if (object.op?.exec !== undefined && object.op?.exec !== null) {
13003
- message.op = { $case: "exec", exec: ExecRequest.fromPartial(object.op.exec) };
13004
- }
13005
- break;
13006
- }
13007
13912
  case "fsRead": {
13008
13913
  if (object.op?.fsRead !== undefined && object.op?.fsRead !== null) {
13009
13914
  message.op = { $case: "fsRead", fsRead: FsReadRequest.fromPartial(object.op.fsRead) };
@@ -13172,6 +14077,15 @@ export const ControlRequest: MessageFns<ControlRequest> = {
13172
14077
  }
13173
14078
  break;
13174
14079
  }
14080
+ case "agentUpdateApply": {
14081
+ if (object.op?.agentUpdateApply !== undefined && object.op?.agentUpdateApply !== null) {
14082
+ message.op = {
14083
+ $case: "agentUpdateApply",
14084
+ agentUpdateApply: AgentUpdateApplyRequest.fromPartial(object.op.agentUpdateApply),
14085
+ };
14086
+ }
14087
+ break;
14088
+ }
13175
14089
  }
13176
14090
  return message;
13177
14091
  },
@@ -13199,9 +14113,6 @@ export const ControlResponse: MessageFns<ControlResponse> = {
13199
14113
  case "resume":
13200
14114
  ResumeResponse.encode(message.result.resume, writer.uint32(98).fork()).join();
13201
14115
  break;
13202
- case "exec":
13203
- ExecResponse.encode(message.result.exec, writer.uint32(106).fork()).join();
13204
- break;
13205
14116
  case "fsRead":
13206
14117
  FsReadResponse.encode(message.result.fsRead, writer.uint32(114).fork()).join();
13207
14118
  break;
@@ -13271,6 +14182,9 @@ export const ControlResponse: MessageFns<ControlResponse> = {
13271
14182
  case "computerFramesOpen":
13272
14183
  ComputerFramesOpenResponse.encode(message.result.computerFramesOpen, writer.uint32(306).fork()).join();
13273
14184
  break;
14185
+ case "agentUpdateApply":
14186
+ AgentUpdateApplyResponse.encode(message.result.agentUpdateApply, writer.uint32(314).fork()).join();
14187
+ break;
13274
14188
  }
13275
14189
  return writer;
13276
14190
  },
@@ -13322,14 +14236,6 @@ export const ControlResponse: MessageFns<ControlResponse> = {
13322
14236
  message.result = { $case: "resume", resume: ResumeResponse.decode(reader, reader.uint32()) };
13323
14237
  continue;
13324
14238
  }
13325
- case 13: {
13326
- if (tag !== 106) {
13327
- break;
13328
- }
13329
-
13330
- message.result = { $case: "exec", exec: ExecResponse.decode(reader, reader.uint32()) };
13331
- continue;
13332
- }
13333
14239
  case 14: {
13334
14240
  if (tag !== 114) {
13335
14241
  break;
@@ -13535,6 +14441,17 @@ export const ControlResponse: MessageFns<ControlResponse> = {
13535
14441
  };
13536
14442
  continue;
13537
14443
  }
14444
+ case 39: {
14445
+ if (tag !== 314) {
14446
+ break;
14447
+ }
14448
+
14449
+ message.result = {
14450
+ $case: "agentUpdateApply",
14451
+ agentUpdateApply: AgentUpdateApplyResponse.decode(reader, reader.uint32()),
14452
+ };
14453
+ continue;
14454
+ }
13538
14455
  }
13539
14456
  if ((tag & 7) === 4 || tag === 0) {
13540
14457
  break;
@@ -13558,8 +14475,6 @@ export const ControlResponse: MessageFns<ControlResponse> = {
13558
14475
  ? { $case: "hello", hello: HelloAck.fromJSON(object.hello) }
13559
14476
  : isSet(object.resume)
13560
14477
  ? { $case: "resume", resume: ResumeResponse.fromJSON(object.resume) }
13561
- : isSet(object.exec)
13562
- ? { $case: "exec", exec: ExecResponse.fromJSON(object.exec) }
13563
14478
  : isSet(object.fsRead)
13564
14479
  ? { $case: "fsRead", fsRead: FsReadResponse.fromJSON(object.fsRead) }
13565
14480
  : isSet(object.fs_read)
@@ -13672,6 +14587,10 @@ export const ControlResponse: MessageFns<ControlResponse> = {
13672
14587
  $case: "computerFramesOpen",
13673
14588
  computerFramesOpen: ComputerFramesOpenResponse.fromJSON(object.computer_frames_open),
13674
14589
  }
14590
+ : isSet(object.agentUpdateApply)
14591
+ ? { $case: "agentUpdateApply", agentUpdateApply: AgentUpdateApplyResponse.fromJSON(object.agentUpdateApply) }
14592
+ : isSet(object.agent_update_apply)
14593
+ ? { $case: "agentUpdateApply", agentUpdateApply: AgentUpdateApplyResponse.fromJSON(object.agent_update_apply) }
13675
14594
  : undefined,
13676
14595
  };
13677
14596
  },
@@ -13690,8 +14609,6 @@ export const ControlResponse: MessageFns<ControlResponse> = {
13690
14609
  obj.hello = HelloAck.toJSON(message.result.hello);
13691
14610
  } else if (message.result?.$case === "resume") {
13692
14611
  obj.resume = ResumeResponse.toJSON(message.result.resume);
13693
- } else if (message.result?.$case === "exec") {
13694
- obj.exec = ExecResponse.toJSON(message.result.exec);
13695
14612
  } else if (message.result?.$case === "fsRead") {
13696
14613
  obj.fsRead = FsReadResponse.toJSON(message.result.fsRead);
13697
14614
  } else if (message.result?.$case === "fsWrite") {
@@ -13738,6 +14655,8 @@ export const ControlResponse: MessageFns<ControlResponse> = {
13738
14655
  obj.browserFramesOpen = BrowserFramesOpenResponse.toJSON(message.result.browserFramesOpen);
13739
14656
  } else if (message.result?.$case === "computerFramesOpen") {
13740
14657
  obj.computerFramesOpen = ComputerFramesOpenResponse.toJSON(message.result.computerFramesOpen);
14658
+ } else if (message.result?.$case === "agentUpdateApply") {
14659
+ obj.agentUpdateApply = AgentUpdateApplyResponse.toJSON(message.result.agentUpdateApply);
13741
14660
  }
13742
14661
  return obj;
13743
14662
  },
@@ -13770,12 +14689,6 @@ export const ControlResponse: MessageFns<ControlResponse> = {
13770
14689
  }
13771
14690
  break;
13772
14691
  }
13773
- case "exec": {
13774
- if (object.result?.exec !== undefined && object.result?.exec !== null) {
13775
- message.result = { $case: "exec", exec: ExecResponse.fromPartial(object.result.exec) };
13776
- }
13777
- break;
13778
- }
13779
14692
  case "fsRead": {
13780
14693
  if (object.result?.fsRead !== undefined && object.result?.fsRead !== null) {
13781
14694
  message.result = { $case: "fsRead", fsRead: FsReadResponse.fromPartial(object.result.fsRead) };
@@ -13935,6 +14848,15 @@ export const ControlResponse: MessageFns<ControlResponse> = {
13935
14848
  }
13936
14849
  break;
13937
14850
  }
14851
+ case "agentUpdateApply": {
14852
+ if (object.result?.agentUpdateApply !== undefined && object.result?.agentUpdateApply !== null) {
14853
+ message.result = {
14854
+ $case: "agentUpdateApply",
14855
+ agentUpdateApply: AgentUpdateApplyResponse.fromPartial(object.result.agentUpdateApply),
14856
+ };
14857
+ }
14858
+ break;
14859
+ }
13938
14860
  }
13939
14861
  return message;
13940
14862
  },
@@ -14056,6 +14978,9 @@ export const AgentEvent: MessageFns<AgentEvent> = {
14056
14978
  case "goingOffline":
14057
14979
  GoingOffline.encode(message.event.goingOffline, writer.uint32(90).fork()).join();
14058
14980
  break;
14981
+ case "agentUpdateProgress":
14982
+ AgentUpdateProgress.encode(message.event.agentUpdateProgress, writer.uint32(98).fork()).join();
14983
+ break;
14059
14984
  }
14060
14985
  return writer;
14061
14986
  },
@@ -14091,6 +15016,17 @@ export const AgentEvent: MessageFns<AgentEvent> = {
14091
15016
  message.event = { $case: "goingOffline", goingOffline: GoingOffline.decode(reader, reader.uint32()) };
14092
15017
  continue;
14093
15018
  }
15019
+ case 12: {
15020
+ if (tag !== 98) {
15021
+ break;
15022
+ }
15023
+
15024
+ message.event = {
15025
+ $case: "agentUpdateProgress",
15026
+ agentUpdateProgress: AgentUpdateProgress.decode(reader, reader.uint32()),
15027
+ };
15028
+ continue;
15029
+ }
14094
15030
  }
14095
15031
  if ((tag & 7) === 4 || tag === 0) {
14096
15032
  break;
@@ -14113,6 +15049,16 @@ export const AgentEvent: MessageFns<AgentEvent> = {
14113
15049
  ? { $case: "goingOffline", goingOffline: GoingOffline.fromJSON(object.goingOffline) }
14114
15050
  : isSet(object.going_offline)
14115
15051
  ? { $case: "goingOffline", goingOffline: GoingOffline.fromJSON(object.going_offline) }
15052
+ : isSet(object.agentUpdateProgress)
15053
+ ? {
15054
+ $case: "agentUpdateProgress",
15055
+ agentUpdateProgress: AgentUpdateProgress.fromJSON(object.agentUpdateProgress),
15056
+ }
15057
+ : isSet(object.agent_update_progress)
15058
+ ? {
15059
+ $case: "agentUpdateProgress",
15060
+ agentUpdateProgress: AgentUpdateProgress.fromJSON(object.agent_update_progress),
15061
+ }
14116
15062
  : undefined,
14117
15063
  };
14118
15064
  },
@@ -14126,6 +15072,8 @@ export const AgentEvent: MessageFns<AgentEvent> = {
14126
15072
  obj.heartbeat = Heartbeat.toJSON(message.event.heartbeat);
14127
15073
  } else if (message.event?.$case === "goingOffline") {
14128
15074
  obj.goingOffline = GoingOffline.toJSON(message.event.goingOffline);
15075
+ } else if (message.event?.$case === "agentUpdateProgress") {
15076
+ obj.agentUpdateProgress = AgentUpdateProgress.toJSON(message.event.agentUpdateProgress);
14129
15077
  }
14130
15078
  return obj;
14131
15079
  },
@@ -14149,6 +15097,15 @@ export const AgentEvent: MessageFns<AgentEvent> = {
14149
15097
  }
14150
15098
  break;
14151
15099
  }
15100
+ case "agentUpdateProgress": {
15101
+ if (object.event?.agentUpdateProgress !== undefined && object.event?.agentUpdateProgress !== null) {
15102
+ message.event = {
15103
+ $case: "agentUpdateProgress",
15104
+ agentUpdateProgress: AgentUpdateProgress.fromPartial(object.event.agentUpdateProgress),
15105
+ };
15106
+ }
15107
+ break;
15108
+ }
14152
15109
  }
14153
15110
  return message;
14154
15111
  },