@agent-link/agent 0.1.319 → 0.1.321

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.
@@ -6,6 +6,7 @@ const BOOTSTRAP_COMMANDS = new Set([
6
6
  'upgrade-status',
7
7
  'upgrade-log',
8
8
  'upgrade-repair',
9
+ 'rollback',
9
10
  ]);
10
11
  function requiresBootstrap(args) {
11
12
  if (args[0] === 'version-store')
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap-delegator.js","sourceRoot":"","sources":["../src/bootstrap-delegator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bootstrap-delegator.js","sourceRoot":"","sources":["../src/bootstrap-delegator.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -30,6 +30,7 @@ import { startExternalWorkerUpgrade } from './external-upgrade.js';
30
30
  import { loadUpgradeStatus, readUpgradeLog, repairExternalUpgrade, } from './upgrade-operations.js';
31
31
  import { interpretWorkerUpgradeResult } from './worker-upgrade-cli-result.js';
32
32
  import { completeInstalledVersionBridge } from './install-bridge.js';
33
+ import { rollbackToVersion, UserRollbackError, } from './user-rollback.js';
33
34
  const require = createRequire(import.meta.url);
34
35
  const pkg = require('../package.json');
35
36
  const qrcode = require('qrcode-terminal');
@@ -942,6 +943,38 @@ program
942
943
  });
943
944
  });
944
945
  // ── Upgrade ──
946
+ program
947
+ .command('rollback <version>')
948
+ .description('Roll back the running Agent to a stable published version')
949
+ .action(async (targetVersion) => {
950
+ if (process.env.AGENTLINK_PID) {
951
+ console.error('ERROR: Cannot roll back from within the AgentLink web terminal.');
952
+ console.error('Run this command from a separate local terminal.');
953
+ process.exitCode = 1;
954
+ return;
955
+ }
956
+ try {
957
+ const result = await rollbackToVersion(targetVersion, {
958
+ onPlan: (current, target) => {
959
+ console.log(`Rollback: ${current} -> ${target}`);
960
+ console.log('This is a user-requested rollback using the managed runtime store.');
961
+ },
962
+ });
963
+ if (result.status === 'already-current') {
964
+ console.log(`Already running requested version ${result.runningVersion}.`);
965
+ }
966
+ else {
967
+ console.log(`Rollback completed. Running version: ${result.runningVersion}.`);
968
+ }
969
+ }
970
+ catch (error) {
971
+ console.error(error.message);
972
+ if (error instanceof UserRollbackError) {
973
+ console.error(`Recovery: ${error.recovery}`);
974
+ }
975
+ process.exitCode = 1;
976
+ }
977
+ });
945
978
  program
946
979
  .command('upgrade-status [job-id]')
947
980
  .description('Show durable local external-upgrade status')
@@ -1027,6 +1060,7 @@ program
1027
1060
  const targetSelection = stageRuntimeBundle(await prepareRuntimeBundle(runtimeRelease.manifest), runtimeRelease.manifestUrl);
1028
1061
  const result = await startExternalWorkerUpgrade({
1029
1062
  targetSelection,
1063
+ operation: 'upgrade',
1030
1064
  channel,
1031
1065
  waitForTargetStarted: true,
1032
1066
  });
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { type RuntimeState } from './config.js';
2
- import { type ExternalUpgradeJob } from './upgrade-job.js';
2
+ import { type ExternalUpgradeJob, type ExternalUpgradeOperation } from './upgrade-job.js';
3
3
  import { type VersionPointer } from './version-store.js';
4
4
  import { type WorkerHostDeps, type WorkerHostResult } from './worker-host.js';
5
5
  export interface ExternalUpgradeResult {
@@ -8,6 +8,7 @@ export interface ExternalUpgradeResult {
8
8
  }
9
9
  export interface ExternalUpgradeOptions {
10
10
  targetSelection: VersionPointer;
11
+ operation?: ExternalUpgradeOperation;
11
12
  channel: 'latest' | 'beta';
12
13
  requestId?: string;
13
14
  prepareTarget?: (job: ExternalUpgradeJob) => Promise<VersionPointer>;
@@ -19,8 +20,11 @@ export interface ExternalUpgradeOptions {
19
20
  targetStartTimeoutMs?: number;
20
21
  finalizationTimeoutMs?: number;
21
22
  waitForTargetStarted?: boolean;
23
+ waitForCompletion?: boolean;
24
+ completionTimeoutMs?: number;
22
25
  testFailLocalHealthVersion?: string;
23
26
  now?: () => Date;
24
27
  sleep?: (milliseconds: number) => Promise<void>;
25
28
  }
29
+ export declare function validateExternalUpgradeTarget(current: string, target: string, operation: ExternalUpgradeOperation): void;
26
30
  export declare function startExternalWorkerUpgrade(options: ExternalUpgradeOptions): Promise<ExternalUpgradeResult>;
@@ -16,19 +16,26 @@ function sameSelection(left, right) {
16
16
  && left.integrity === right.integrity
17
17
  && resolve(left.entry) === resolve(right.entry);
18
18
  }
19
- function isStrictlyNewerVersion(current, target) {
20
- const stable = /^\d+\.\d+\.\d+$/;
19
+ export function validateExternalUpgradeTarget(current, target, operation) {
20
+ const stable = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$/;
21
21
  if (!stable.test(current) || !stable.test(target)) {
22
22
  throw new Error('External upgrade versions must use stable major.minor.patch');
23
23
  }
24
24
  const currentParts = current.split('.').map(Number);
25
25
  const targetParts = target.split('.').map(Number);
26
+ let comparison = 0;
26
27
  for (let index = 0; index < 3; index++) {
27
28
  if (targetParts[index] !== currentParts[index]) {
28
- return targetParts[index] > currentParts[index];
29
+ comparison = targetParts[index] > currentParts[index] ? 1 : -1;
30
+ break;
29
31
  }
30
32
  }
31
- return false;
33
+ if (operation === 'upgrade' && comparison <= 0) {
34
+ throw new Error(`Target ${target} must be newer than current ${current}`);
35
+ }
36
+ if (operation === 'rollback' && comparison >= 0) {
37
+ throw new Error(`Rollback target ${target} must be older than current ${current}`);
38
+ }
32
39
  }
33
40
  async function waitForPhase(jobId, accepted, timeoutMs, sleep) {
34
41
  const deadline = Date.now() + timeoutMs;
@@ -85,6 +92,7 @@ export async function startExternalWorkerUpgrade(options) {
85
92
  let jobCreated = false;
86
93
  let workerHost = null;
87
94
  try {
95
+ const operation = options.operation ?? 'upgrade';
88
96
  const sourceSelection = loadCurrentVersion();
89
97
  const lastKnownGoodSelection = loadLastKnownGood();
90
98
  if (!sourceSelection || !lastKnownGoodSelection) {
@@ -92,9 +100,7 @@ export async function startExternalWorkerUpgrade(options) {
92
100
  }
93
101
  validateVersionInstallation(sourceSelection);
94
102
  validateVersionInstallation(lastKnownGoodSelection);
95
- if (!isStrictlyNewerVersion(sourceSelection.version, targetSelection.version)) {
96
- throw new Error(`Target ${targetSelection.version} must be newer than current ${sourceSelection.version}`);
97
- }
103
+ validateExternalUpgradeTarget(sourceSelection.version, targetSelection.version, operation);
98
104
  const runtime = options.runtime ?? loadRuntimeState();
99
105
  if (!runtime)
100
106
  throw new Error('External upgrade requires running Agent state');
@@ -102,6 +108,7 @@ export async function startExternalWorkerUpgrade(options) {
102
108
  let job = createExternalUpgradeJob({
103
109
  jobId,
104
110
  requestId: options.requestId ?? randomUUID(),
111
+ operation,
105
112
  channel: options.channel,
106
113
  sourceVersion: sourceSelection.version,
107
114
  targetVersion: targetSelection.version,
@@ -118,7 +125,9 @@ export async function startExternalWorkerUpgrade(options) {
118
125
  restartOwner: 'worker',
119
126
  sourceSelection,
120
127
  targetSelection,
121
- lastKnownGoodSelection,
128
+ lastKnownGoodSelection: operation === 'rollback'
129
+ ? sourceSelection
130
+ : lastKnownGoodSelection,
122
131
  lockNonce: lock.owner.nonce,
123
132
  handoffExpiresAt: new Date(createdAt.getTime() + HANDOFF_WINDOW_MS).toISOString(),
124
133
  now: createdAt,
@@ -170,7 +179,11 @@ export async function startExternalWorkerUpgrade(options) {
170
179
  ], options.handoffTimeoutMs ?? 10_000, sleep);
171
180
  const finalJob = options.waitForTargetStarted === false
172
181
  ? loadExternalUpgradeJob(jobId)
173
- : await waitForPhase(jobId, ['relay-pending', 'completed', 'rolled-back', 'repair-required'], options.targetStartTimeoutMs ?? 30_000, sleep);
182
+ : await waitForPhase(jobId, options.waitForCompletion
183
+ ? ['completed', 'rolled-back', 'repair-required']
184
+ : ['relay-pending', 'completed', 'rolled-back', 'repair-required'], options.waitForCompletion
185
+ ? options.completionTimeoutMs ?? 120_000
186
+ : options.targetStartTimeoutMs ?? 30_000, sleep);
174
187
  if (finalJob.phase === 'completed' || finalJob.phase === 'rolled-back') {
175
188
  await waitForFinalization(finalJob, options.finalizationTimeoutMs ?? 5000, sleep);
176
189
  }
@@ -1 +1 @@
1
- {"version":3,"file":"external-upgrade.js","sourceRoot":"","sources":["../src/external-upgrade.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,YAAY,EACZ,UAAU,GACX,MAAM,IAAI,CAAC;AACZ,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EACL,UAAU,EACV,cAAc,EACd,gBAAgB,GAEjB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,uBAAuB,EACvB,cAAc,GAEf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EACL,wBAAwB,EACxB,8BAA8B,EAC9B,yBAAyB,EACzB,yBAAyB,EACzB,sBAAsB,EACtB,4BAA4B,GAE7B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,6BAA6B,EAC7B,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,2BAA2B,GAE5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,GAGnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,MAAM,iBAAiB,GAAG,CAAC,GAAG,MAAM,CAAC;AAyBrC,SAAS,aAAa,CAAC,IAAoB,EAAE,KAAqB;IAChE,OAAO,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;WAChC,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;WAClC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAe,EAAE,MAAc;IAC7D,MAAM,MAAM,GAAG,iBAAiB,CAAC;IACjC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IACjF,CAAC;IACD,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACpD,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAClD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;QACvC,IAAI,WAAW,CAAC,KAAK,CAAC,KAAK,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/C,OAAO,WAAW,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,KAAa,EACb,QAAgD,EAChD,SAAiB,EACjB,KAA8C;IAE9C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IACxC,IAAI,IAAI,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACzC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7B,IAAI,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC/C,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,mCAAmC,IAAI,CAAC,KAAK,IAAI,eAAe,EAAE,CAAC,CAAC;QACtF,CAAC;QACD,MAAM,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,uCAAuC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;AACvE,CAAC;AAED,KAAK,UAAU,mBAAmB,CAChC,GAAuB,EACvB,SAAiB,EACjB,KAA8C;IAE9C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IACxC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC,6BAA6B,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,SAAS,CAAC;YAAE,OAAO;QACrE,MAAM,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,KAAK,0CAA0C,CAAC,CAAC;AAC3F,CAAC;AAED,SAAS,eAAe,CAAC,OAAqB,EAAE,MAAsB;IAKpE,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;IACjG,CAAC;IACD,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/F,IACE,OAAO,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI;WAClC,OAAO,CAAC,YAAY,CAAC,eAAe,KAAK,MAAM,CAAC,OAAO,EAC1D,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;IACtF,CAAC;IACD,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAClE,IAAI,CAAC,oBAAoB;QAAE,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IACnG,MAAM,cAAc,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;IAClD,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,OAA+B;IAE/B,IAAI,CAAC,qBAAqB,EAAE,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,qBAAqB,EAAE,CAAC;IACxB,IAAI,CAAC,OAAO,CAAC,aAAa;QAAE,2BAA2B,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IACjF,IAAI,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC;IACxB,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;IAC3B,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACvC,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,UAAU,GAA4B,IAAI,CAAC;IAC/C,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;QAC7C,MAAM,sBAAsB,GAAG,iBAAiB,EAAE,CAAC;QACnD,IAAI,CAAC,eAAe,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;QACD,2BAA2B,CAAC,eAAe,CAAC,CAAC;QAC7C,2BAA2B,CAAC,sBAAsB,CAAC,CAAC;QACpD,IAAI,CAAC,sBAAsB,CAAC,eAAe,CAAC,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9E,MAAM,IAAI,KAAK,CACb,UAAU,eAAe,CAAC,OAAO,+BAA+B,eAAe,CAAC,OAAO,EAAE,CAC1F,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,gBAAgB,EAAE,CAAC;QACtD,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QAC/E,MAAM,eAAe,GAAG,eAAe,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QAClE,IAAI,GAAG,GAAG,wBAAwB,CAAC;YACjC,KAAK;YACL,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,UAAU,EAAE;YAC5C,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,aAAa,EAAE,eAAe,CAAC,OAAO;YACtC,aAAa,EAAE,eAAe,CAAC,OAAO;YACtC,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC;YAC7B,cAAc,EAAE,eAAe,CAAC,cAAc;YAC9C,gBAAgB,EAAE,uBAAuB,CAAC,eAAe,CAAC,UAAU,CAAC;YACrE,UAAU,EAAE;gBACV,GAAG,EAAE,OAAO,CAAC,GAAI;gBACjB,oBAAoB,EAAE,eAAe,CAAC,oBAAoB;gBAC1D,iBAAiB,EAAE,OAAO,CAAC,iBAAkB;gBAC7C,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,cAAc,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9E;YACD,YAAY,EAAE,QAAQ;YACtB,eAAe;YACf,eAAe;YACf,sBAAsB;YACtB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;YAC3B,gBAAgB,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,iBAAiB,CAAC,CAAC,WAAW,EAAE;YACjF,GAAG,EAAE,SAAS;SACf,CAAC,CAAC;QACH,UAAU,GAAG,IAAI,CAAC;QAClB,OAAO,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAC1B,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YAC3D,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,eAAe,CAAC,EAAE,CAAC;gBACvD,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;YACtF,CAAC;YACD,eAAe,GAAG,iBAAiB,CAAC;YACpC,2BAA2B,CAAC,eAAe,CAAC,CAAC;YAC7C,GAAG,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC;QAC/B,GAAG,GAAG,4BAA4B,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE;YACnD,gBAAgB,EAAE,IAAI,IAAI,CACxB,gBAAgB,CAAC,OAAO,EAAE,GAAG,iBAAiB,CAC/C,CAAC,WAAW,EAAE;YACf,GAAG,EAAE,gBAAgB;SACtB,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,OAAO,CAAC,gBAAgB,IAAI,qBAAqB,EAAE,CAAC;QACzE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,YAAY,EAAE,CAAC,CAAC;QACrG,MAAM,UAAU,GAAG,OAAO,CAAC,8BAA8B,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC;QAChF,YAAY,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QACvC,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO;YAAE,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAC/D,4BAA4B,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;QACvD,UAAU,GAAG,kBAAkB,CAAC;YAC9B,KAAK;YACL,OAAO,EAAE,yBAAyB,CAAC,KAAK,CAAC;YACzC,UAAU;YACV,QAAQ,EAAE,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI;YAC9C,0BAA0B,EAAE,OAAO,CAAC,0BAA0B;SAC/D,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;QAC3B,MAAM,UAAU,CAAC,OAAO,CAAC;QACzB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC,YAAY,CAAC,EAAE,CAC7C,IAAI,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;QACvE,MAAM,YAAY,CAChB,KAAK,EACL;YACE,cAAc;YACd,oBAAoB;YACpB,mBAAmB;YACnB,WAAW;YACX,iBAAiB;YACjB,qBAAqB;YACrB,eAAe;YACf,WAAW;YACX,aAAa;YACb,iBAAiB;SAClB,EACD,OAAO,CAAC,gBAAgB,IAAI,MAAM,EAClC,KAAK,CACN,CAAC;QACF,MAAM,QAAQ,GAAG,OAAO,CAAC,oBAAoB,KAAK,KAAK;YACrD,CAAC,CAAC,sBAAsB,CAAC,KAAK,CAAC;YAC/B,CAAC,CAAC,MAAM,YAAY,CAClB,KAAK,EACL,CAAC,eAAe,EAAE,WAAW,EAAE,aAAa,EAAE,iBAAiB,CAAC,EAChE,OAAO,CAAC,oBAAoB,IAAI,MAAM,EACtC,KAAK,CACN,CAAC;QACJ,IAAI,QAAQ,CAAC,KAAK,KAAK,WAAW,IAAI,QAAQ,CAAC,KAAK,KAAK,aAAa,EAAE,CAAC;YACvE,MAAM,mBAAmB,CACvB,QAAQ,EACR,OAAO,CAAC,qBAAqB,IAAI,IAAI,EACrC,KAAK,CACN,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,MAAM,KAAK,CAAC;QACd,CAAC;QACD,IAAI,CAAC;YACH,IAAI,OAAO,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAC5C,IAAI,eAAe,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;gBACtB,OAAO,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;gBACxC,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC9C,MAAM,IAAI,KAAK,CAAC,0DAA0D,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC7F,CAAC;gBACD,eAAe,GAAG,KAAK,CAAC;YAC1B,CAAC;YACD,IAAI,MAAM,CAAC;YACX,IAAI,eAAe,EAAE,CAAC;gBACpB,IAAI,CAAC;oBACH,MAAM,GAAG,0BAA0B,EAAE,IAAI,oBAAoB,EAAE,CAAC,MAAM,CAAC;gBACzE,CAAC;gBAAC,OAAO,SAAS,EAAE,CAAC;oBACnB,IAAK,SAAmC,CAAC,IAAI,KAAK,QAAQ;wBAAE,MAAM,SAAS,CAAC;oBAC5E,OAAO,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;oBACxC,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,KAAK,CAAC;wBAAE,MAAM,SAAS,CAAC;oBAC/D,eAAe,GAAG,KAAK,CAAC;gBAC1B,CAAC;YACH,CAAC;YACD,IAAI,qBAAqB,GAAG,eAAe,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;YAChF,IACE,CAAC,qBAAqB;mBACnB,MAAM;mBACN;oBACD,SAAS;oBACT,aAAa;oBACb,WAAW;oBACX,SAAS;oBACT,eAAe;oBACf,iBAAiB;iBAClB,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,EACzB,CAAC;gBACD,MAAM,QAAQ,GAAG,yBAAyB,CACxC,MAAM,CAAC,GAAG,EACV,MAAM,CAAC,oBAAoB,CAC5B,CAAC;gBACF,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBACnE,qBAAqB,GAAG,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC;gBACnE,CAAC;YACH,CAAC;YACD,IAAI,qBAAqB,EAAE,CAAC;gBAC1B,OAAO,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;gBACxC,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAC/B,IAAI,UAAU;wBAAE,wBAAwB,CAAC,UAAU,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;oBAC7E,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,CAAC;qBAAM,IAAI,CAAC;oBACV,SAAS;oBACT,aAAa;oBACb,WAAW;oBACX,SAAS;oBACT,eAAe;oBACf,iBAAiB;iBAClB,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC1B,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAClC,CAAC;qBAAM,CAAC;oBACN,IAAI,UAAU;wBAAE,wBAAwB,CAAC,UAAU,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;oBAC7E,4BAA4B,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAG,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;oBACnF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,YAAY,EAAE,CAAC;YACtB,IAAI,kBAAkB,GAAG,IAAI,CAAC;YAC9B,IAAK,YAAsC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC9D,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;oBAC9C,kBAAkB,GAAG,CAAC,yBAAyB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBACjE,CAAC;gBAAC,MAAM,CAAC;oBACP,kBAAkB,GAAG,IAAI,CAAC;gBAC5B,CAAC;YACH,CAAC;YACD,IAAI,kBAAkB,EAAE,CAAC;gBACvB,OAAO,CAAC,KAAK,CACX,0DAA0D,KAAK,IAAI;sBAChE,YAAsB,CAAC,OAAO,CAClC,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"external-upgrade.js","sourceRoot":"","sources":["../src/external-upgrade.ts"],"names":[],"mappings":"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"}
package/dist/providers.js CHANGED
@@ -8,7 +8,7 @@
8
8
  import { readFileSync, writeFileSync, existsSync, mkdirSync } from 'fs';
9
9
  import { join } from 'path';
10
10
  import { CONFIG_DIR } from './config.js';
11
- import { resolveClaudeCommand, resolveBrainCommand } from './sdk.js';
11
+ import { resolveAgencyCommand, resolveBrainCommand, resolveClaudeCommand, } from './sdk.js';
12
12
  // ── Constants ──────────────────────────────────────────────────────────────
13
13
  const PROVIDERS_FILE = join(CONFIG_DIR, 'providers.json');
14
14
  const BUILTIN_PROVIDERS = [
@@ -42,7 +42,7 @@ const BUILTIN_PROVIDERS = [
42
42
  id: 'agency',
43
43
  name: 'Agency (Claude)',
44
44
  preset: 'custom',
45
- command: 'agency.exe',
45
+ command: 'agency',
46
46
  args: ['claude'],
47
47
  shell: false,
48
48
  appendFlags: true,
@@ -63,7 +63,7 @@ const BUILTIN_PROVIDERS = [
63
63
  id: 'agency-copilot',
64
64
  name: 'Agency (Copilot)',
65
65
  preset: 'custom',
66
- command: 'agency.exe',
66
+ command: 'agency',
67
67
  args: ['copilot'],
68
68
  shell: false,
69
69
  appendFlags: false,
@@ -163,6 +163,12 @@ export function resolveProviderCommand(provider) {
163
163
  return resolveClaudeCommand();
164
164
  case 'brain':
165
165
  return resolveBrainCommand();
166
+ case 'agency':
167
+ case 'agency-copilot':
168
+ if (provider.command === 'agency' || provider.command === 'agency.exe') {
169
+ return resolveAgencyCommand(provider.args || []);
170
+ }
171
+ break;
166
172
  }
167
173
  }
168
174
  if (provider.shell && provider.args?.length) {
@@ -1 +1 @@
1
- {"version":3,"file":"providers.js","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"providers.js","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":"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"}
package/dist/sdk.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export type CachedExecutable = 'claude' | 'brain' | 'copilot' | 'codex';
1
+ export type CachedExecutable = 'claude' | 'brain' | 'agency' | 'copilot' | 'codex';
2
2
  export type ResolvedExecPaths = Partial<Record<CachedExecutable, string>>;
3
3
  /**
4
4
  * Warm the executable path cache. Call once at process startup:
@@ -37,6 +37,7 @@ export declare function resolveClaudeCommand(): ResolvedCommand;
37
37
  * have it on PATH, so we check well-known locations first.
38
38
  */
39
39
  export declare function resolveBrainCommand(): ResolvedCommand;
40
+ export declare function resolveAgencyCommand(prefixArgs?: string[]): ResolvedCommand;
40
41
  /**
41
42
  * Pipe an AsyncIterable of messages into a child stdin as JSON lines.
42
43
  */
package/dist/sdk.js CHANGED
@@ -7,16 +7,18 @@ import { platform, homedir } from 'os';
7
7
  import { join, dirname } from 'path';
8
8
  import { existsSync, readFileSync } from 'fs';
9
9
  import { execSync, execFileSync } from 'child_process';
10
- const EXECUTABLES = ['claude', 'brain', 'copilot', 'codex'];
10
+ const EXECUTABLES = ['claude', 'brain', 'agency', 'copilot', 'codex'];
11
11
  const CACHE_ENV = {
12
12
  claude: 'AGENTLINK_CACHED_CLAUDE_PATH',
13
13
  brain: 'AGENTLINK_CACHED_BRAIN_PATH',
14
+ agency: 'AGENTLINK_CACHED_AGENCY_PATH',
14
15
  copilot: 'AGENTLINK_CACHED_COPILOT_PATH',
15
16
  codex: 'AGENTLINK_CACHED_CODEX_PATH',
16
17
  };
17
18
  const OVERRIDE_ENV = {
18
19
  claude: 'CLAUDE_PATH',
19
20
  brain: 'BRAIN_PATH',
21
+ agency: 'AGENCY_PATH',
20
22
  copilot: 'COPILOT_PATH',
21
23
  };
22
24
  const cachedExecPaths = {};
@@ -323,6 +325,11 @@ export function resolveBrainCommand() {
323
325
  console.error(`[SDK] resolveBrainCommand: brain not found in any known location, falling back to bare 'brain' command`);
324
326
  return { command: 'brain', prefixArgs: [], spawnOpts: { shell: true } };
325
327
  }
328
+ export function resolveAgencyCommand(prefixArgs = []) {
329
+ const executablePath = resolveExecutablePath('agency') || 'agency';
330
+ console.log(`[SDK] resolveAgencyCommand: executablePath=${executablePath}`);
331
+ return { command: executablePath, prefixArgs, spawnOpts: {} };
332
+ }
326
333
  /**
327
334
  * Pipe an AsyncIterable of messages into a child stdin as JSON lines.
328
335
  */
package/dist/sdk.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ export interface UpgradeJob {
14
14
  error?: string;
15
15
  }
16
16
  export declare const EXTERNAL_UPGRADE_PROTOCOL_VERSION = 1;
17
+ export type ExternalUpgradeOperation = 'upgrade' | 'rollback';
17
18
  export type ExternalUpgradePhase = 'created' | 'downloading' | 'verifying' | 'staging' | 'self-checking' | 'worker-starting' | 'worker-ready' | 'shutdown-requested' | 'old-agent-stopped' | 'switching' | 'target-starting' | 'target-local-health' | 'relay-pending' | 'rolling-back' | 'rollback-starting' | 'rollback-local-health' | 'repair-starting' | 'completed' | 'rolled-back' | 'repair-required' | 'failed';
18
19
  export interface ProcessIdentity {
19
20
  pid: number;
@@ -23,6 +24,7 @@ export interface ExternalUpgradeJob {
23
24
  schemaVersion: 2;
24
25
  jobId: string;
25
26
  requestId: string;
27
+ operation: ExternalUpgradeOperation;
26
28
  channel: ReleaseChannel;
27
29
  sourceVersion: string;
28
30
  targetVersion: string;
@@ -78,7 +80,8 @@ export declare function updateUpgradeJob(jobId: string, phase: UpgradeJobPhase,
78
80
  now?: Date;
79
81
  }): UpgradeJob;
80
82
  export declare function validateExternalUpgradeJob(value: unknown): ExternalUpgradeJob;
81
- export declare function createExternalUpgradeJob(input: Omit<ExternalUpgradeJob, 'schemaVersion' | 'phase' | 'createdAt' | 'updatedAt' | 'error'> & {
83
+ export declare function createExternalUpgradeJob(input: Omit<ExternalUpgradeJob, 'schemaVersion' | 'operation' | 'phase' | 'createdAt' | 'updatedAt' | 'error'> & {
84
+ operation?: ExternalUpgradeOperation;
82
85
  now?: Date;
83
86
  }): ExternalUpgradeJob;
84
87
  export declare function loadExternalUpgradeJob(jobId: string): ExternalUpgradeJob;
@@ -158,6 +158,10 @@ export function validateExternalUpgradeJob(value) {
158
158
  if (job.channel !== 'latest' && job.channel !== 'beta') {
159
159
  throw new Error('External upgrade job channel is unsupported');
160
160
  }
161
+ const operation = job.operation ?? 'upgrade';
162
+ if (operation !== 'upgrade' && operation !== 'rollback') {
163
+ throw new Error('External upgrade job operation is unsupported');
164
+ }
161
165
  if (job.restartOwner !== 'worker') {
162
166
  throw new Error('External upgrade job restartOwner must be worker');
163
167
  }
@@ -201,6 +205,7 @@ export function validateExternalUpgradeJob(value) {
201
205
  schemaVersion: 2,
202
206
  jobId,
203
207
  requestId: requireString(job.requestId, 'requestId'),
208
+ operation,
204
209
  channel: job.channel,
205
210
  sourceVersion: requireString(job.sourceVersion, 'sourceVersion'),
206
211
  targetVersion: requireString(job.targetVersion, 'targetVersion'),
@@ -1 +1 @@
1
- {"version":3,"file":"upgrade-job.js","sourceRoot":"","sources":["../src/upgrade-job.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upgrade-job.js","sourceRoot":"","sources":["../src/upgrade-job.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ import { dirname, join, resolve } from 'path';
6
6
  import { clearRuntimePid, isProcessAlive, loadRuntimeState } from './config.js';
7
7
  import { getExternalUpgradeEventsPath, getExternalUpgradeJobPath, getUpgradeRoot, isExternalUpgradeTerminal, loadExternalUpgradeJob, markExternalUpgradeRepaired, transitionExternalUpgradeJob, } from './upgrade-job.js';
8
8
  import { acquireUpgradeLock, hasUpgradeLock, loadUpgradeLockOwner, reclaimStaleUpgradeLock, } from './upgrade-lock.js';
9
- import { loadCurrentVersion, loadLastKnownGood, validateVersionInstallation, writeVersionPointer, getCurrentVersionPath, getVersionDirectory, getVersionsRoot, } from './version-store.js';
9
+ import { loadCurrentVersion, loadLastKnownGood, validateVersionInstallation, writeVersionPointer, getCurrentVersionPath, getLastKnownGoodPath, getVersionDirectory, getVersionsRoot, } from './version-store.js';
10
10
  import { installStableLauncher, spawnStableLauncher, validateStableLauncher, } from './launcher-manager.js';
11
11
  import { lookupProcessStartIdentity, matchProcessStartIdentity, } from './process-identity.js';
12
12
  import { computeLaunchSpecDigest, loadLaunchSpec } from './launch-spec.js';
@@ -264,10 +264,8 @@ export async function repairExternalUpgrade(deps = {}) {
264
264
  if (job.phase !== 'repair-required' && job.phase !== 'repair-starting') {
265
265
  throw new Error(`Upgrade ${job.jobId} is ${job.phase}; repair is not required`);
266
266
  }
267
- const lkg = loadLastKnownGood();
268
- if (!lkg)
269
- throw new Error('Last-known-good selection is missing');
270
- validateVersionInstallation(lkg);
267
+ const recoverySelection = job.lastKnownGoodSelection;
268
+ validateVersionInstallation(recoverySelection);
271
269
  try {
272
270
  validateStableLauncher();
273
271
  }
@@ -320,7 +318,8 @@ export async function repairExternalUpgrade(deps = {}) {
320
318
  clearRepairLauncher: !!job.repairLauncher
321
319
  && previousRepairLauncherState?.status !== 'match',
322
320
  });
323
- writeVersionPointer(getCurrentVersionPath(), lkg);
321
+ writeVersionPointer(getLastKnownGoodPath(), recoverySelection);
322
+ writeVersionPointer(getCurrentVersionPath(), recoverySelection);
324
323
  let launcherPid = job.repairLauncher?.pid ?? 0;
325
324
  const repairRuntimeState = job.repairRuntime
326
325
  ? matchProcessStartIdentity(job.repairRuntime.pid, job.repairRuntime.processStartIdentity)
@@ -1 +1 @@
1
- {"version":3,"file":"upgrade-operations.js","sourceRoot":"","sources":["../src/upgrade-operations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upgrade-operations.js","sourceRoot":"","sources":["../src/upgrade-operations.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,QAAQ,GACT,MAAM,IAAI,CAAC;AACZ,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAChF,OAAO,EACL,4BAA4B,EAC5B,yBAAyB,EACzB,cAAc,EACd,yBAAyB,EACzB,sBAAsB,EACtB,2BAA2B,EAC3B,4BAA4B,GAG7B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,2BAA2B,EAC3B,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAE3E,MAAM,MAAM,GAAG,uBAAuB,CAAC;AACvC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAC7B,MAAM,cAAc,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;AAC7C,MAAM,kBAAkB,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;AAE5C,SAAS,YAAY,CAAC,KAAa;IACjC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,EAAE,CAAC,CAAC;IAC7E,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,SAAS,CAAC,GAAW;IAC5B,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAQ,KAA+B,CAAC,IAAI,KAAK,OAAO,CAAC;IAC3D,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,IAAI,KAAK;QAAE,OAAO,sBAAsB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,EAAE,EAAE,aAAa,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAA+C,CAAC;IACzG,IAAI,KAAK,CAAC,aAAa,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,sBAAsB,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,MAAM,GAAG,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG;QACZ,4BAA4B,CAAC,GAAG,CAAC,KAAK,CAAC;QACvC,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC;KAClE,CAAC;IACF,OAAO,KAAK;SACT,MAAM,CAAC,UAAU,CAAC;SAClB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;SACvC,IAAI,CAAC,EAAE,CAAC;SACR,OAAO,CAAC,gBAAgB,EAAE,mBAAmB,CAAC;SAC9C,OAAO,CAAC,yBAAyB,EAAE,cAAc,CAAC;SAClD,OAAO,CAAC,8CAA8C,EAAE,cAAc,CAAC,CAAC;AAC7E,CAAC;AAED,SAAS,eAAe,CAAC,OAAyD;IAChF,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC;IACvC,IAAI,CAAC,SAAS;QAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC,CAAC;IACjG,OAAO,IAAI,OAAO,CAAC,CAAC,aAAa,EAAE,YAAY,EAAE,EAAE;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;YAC3B,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACP,IAAI,EAAE,aAAa,SAAS,CAAC,IAAI,EAAE;gBACnC,aAAa,EAAE,UAAU,SAAS,CAAC,KAAK,EAAE;aAC3C;SACF,EAAE,QAAQ,CAAC,EAAE;YACZ,MAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC9D,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gBACtB,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;oBACpE,IAAI,QAAQ,CAAC,UAAU,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;wBAChD,YAAY,CAAC,IAAI,KAAK,CAAC,wCAAwC,QAAQ,CAAC,UAAU,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC/F,CAAC;yBAAM,CAAC;wBACN,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAC/B,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,YAAY,CAAC,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC,CAAC;gBAChF,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC,CAAC,CAAC;QACrG,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,GAAuB,EACvB,SAAS,GAAG,MAAM;IAElB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IACxC,IAAI,SAAS,GAAG,8CAA8C,CAAC;IAC/D,IAAI,gBAAgB,GAAG,GAAG,CAAC,aAAa,IAAI,IAAI,CAAC;IACjD,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;YACnC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBAChD,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;YACzE,CAAC;YACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,MAAM,MAAM,GAAG,0BAA0B,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACvD,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC9B,MAAM,IAAI,KAAK,CACb,yDACE,MAAM,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MACpD,EAAE,CACH,CAAC;gBACJ,CAAC;gBACD,gBAAgB,GAAG;oBACjB,GAAG,EAAE,OAAO,CAAC,GAAG;oBAChB,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;oBAC5C,oBAAoB,EAAE,MAAM,CAAC,QAAQ;iBACtC,CAAC;YACJ,CAAC;YACD,MAAM,aAAa,GAAG,yBAAyB,CAC7C,gBAAgB,CAAC,GAAG,EACpB,gBAAgB,CAAC,oBAAoB,CACtC,CAAC;YACF,IACE,OAAO,CAAC,GAAG,KAAK,gBAAgB,CAAC,GAAG;mBACjC,OAAO,CAAC,iBAAiB,KAAK,gBAAgB,CAAC,iBAAiB;mBAChE,aAAa,CAAC,MAAM,KAAK,OAAO;mBAChC,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC;mBAC5B,OAAO,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI;mBACrC,OAAO,CAAC,YAAY,CAAC,eAAe,KAAK,GAAG,CAAC,sBAAsB,CAAC,OAAO;mBAC3E,OAAO,CAAC,YAAY,CAAC,iBAAiB,KAAK,GAAG,CAAC,sBAAsB,CAAC,SAAS;mBAC/E,OAAO,CAAC,YAAY,KAAK,GAAG,CAAC,KAAK;mBAClC,OAAO,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;mBACrE,OAAO,CAAC,gBAAgB,KAAK,GAAG,CAAC,gBAAgB;mBACjD,uBAAuB,CAAC,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,KAAK,GAAG,CAAC,gBAAgB,EACvF,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;YAC7F,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;YAC9C,MAAM,kBAAkB,GAAG,UAAU,CAAC,QAAQ,CAAC;iBAC5C,MAAM,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;iBAChC,MAAM,CAAC,KAAK,CAAC,CAAC;YACjB,MAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS,KAAK,GAAG,CAAC,UAAU,CAAC,SAAS;mBAClE,kBAAkB,KAAK,GAAG,CAAC,UAAU,CAAC,cAAc;mBACpD,MAAM,CAAC,UAAU,EAAE,SAAS,KAAK,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC;YAC/D,MAAM,YAAY,GAAG,OAAO,CAAC,mBAAmB,CAAC;YACjD,MAAM,qBAAqB,GAAG,YAAY;mBACrC,YAAY,CAAC,iBAAiB,KAAK,GAAG,CAAC,UAAU,CAAC,SAAS;mBAC3D,YAAY,CAAC,SAAS,KAAK,OAAO,CAAC,SAAS;mBAC5C,YAAY,CAAC,cAAc,KAAK,kBAAkB;mBAClD,MAAM,CAAC,UAAU,EAAE,SAAS,KAAK,OAAO,CAAC,SAAS;mBAClD,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC;YAC5D,IACE,MAAM,CAAC,GAAG,KAAK,OAAO,CAAC,GAAG;mBACvB,MAAM,CAAC,OAAO,KAAK,GAAG,CAAC,sBAAsB,CAAC,OAAO;mBACrD,MAAM,CAAC,QAAQ,EAAE,KAAK,KAAK,MAAM;mBACjC,MAAM,CAAC,UAAU,EAAE,aAAa,KAAK,IAAI;mBACzC,MAAM,CAAC,UAAU,EAAE,YAAY,KAAK,IAAI;mBACxC,CAAC,CAAC,gBAAgB,IAAI,CAAC,qBAAqB,CAAC,EAChD,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;YACnE,CAAC;YACD,GAAG,GAAG,4BAA4B,CAAC,GAAG,CAAC,KAAK,EAAE,iBAAiB,EAAE;gBAC/D,aAAa,EAAE,gBAAgB;aAChC,CAAC,CAAC;YACH,OAAO,gBAAgB,CAAC;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,SAAS,GAAI,KAAe,CAAC,OAAO,CAAC;YACrC,IAAI,CAAC,GAAG,CAAC,aAAa;gBAAE,gBAAgB,GAAG,IAAI,CAAC;QAClD,CAAC;QACD,MAAM,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;AAC7B,CAAC;AAED,KAAK,UAAU,oBAAoB,CACjC,GAAW,EACX,SAAS,GAAG,IAAI;IAEhB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IACxC,IAAI,SAAS,GAAG,gCAAgC,CAAC;IACjD,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,0BAA0B,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC9B,OAAO,EAAE,GAAG,EAAE,oBAAoB,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;QACxD,CAAC;QACD,SAAS,GAAG,MAAM,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;QACrE,MAAM,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC;IAChE,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,kDAAkD,SAAS,EAAE,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,oBAAoB,CAAC,OAAe;IAC3C,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO;QAAE,OAAO,EAAE,CAAC;IAC5C,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE;QAC7D,QAAQ,EAAE,MAAM;QAChB,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC7C,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,CAAC,MAAc,EAAQ,EAAE;QACrC,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YAC7C,KAAK,CAAC,GAAG,CAAC,CAAC;YACX,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,CAAC;IACF,KAAK,CAAC,OAAO,CAAC,CAAC;IACf,OAAO,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QAC/B,MAAM,MAAM,GAAG,0BAA0B,CAAC,GAAG,CAAC,CAAC;QAC/C,OAAO,MAAM,CAAC,MAAM,KAAK,OAAO;YAC9B,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,oBAAoB,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;YAClD,CAAC,CAAC,EAAE,CAAC;IACT,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,yBAAyB,CAAC,QAAyB;IAChE,MAAM,KAAK,GAAG,yBAAyB,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IACrF,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAC7D,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU;YAAE,OAAO;QACxC,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO;QACrE,MAAM,IAAI,KAAK,CAAC,sCAAsC,QAAQ,CAAC,GAAG,8CAA8C,CAAC,CAAC;IACpH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,gDAAgD,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACjF,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,YAAY,CAAC,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE;gBACvE,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,MAAM;aAChB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,yBAAyB,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;YACrF,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;gBAAE,MAAM,KAAK,CAAC;YACtE,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzD,MAAM,IAAI,KAAK,CACb,sDAAsD,QAAQ,CAAC,GAAG,yCAAyC,CAC5G,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO;IACT,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,GAAG,oBAAoB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC/D,KAAK,MAAM,MAAM,IAAI,IAAI,EAAE,CAAC;QAC1B,IAAI,yBAAyB,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,oBAAoB,CAAC,CAAC,MAAM,KAAK,OAAO;YAAE,SAAS;QACpG,IAAI,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAAC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAC1D,IAAK,KAA+B,CAAC,IAAI,KAAK,OAAO;gBAAE,MAAM,KAAK,CAAC;QACrE,CAAC;IACH,CAAC;IACD,MAAM,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;IAC/D,KAAK,MAAM,MAAM,IAAI,IAAI,EAAE,CAAC;QAC1B,IAAI,yBAAyB,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,oBAAoB,CAAC,CAAC,MAAM,KAAK,OAAO;YAAE,SAAS;QACpG,IAAI,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAAC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAC1D,IAAK,KAA+B,CAAC,IAAI,KAAK,OAAO;gBAAE,MAAM,KAAK,CAAC;QACrE,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,OAOxC,EAAE;IAIJ,IAAI,GAAG,GAAG,iBAAiB,EAAE,CAAC;IAC9B,IAAI,GAAG,CAAC,KAAK,KAAK,iBAAiB,IAAI,GAAG,CAAC,KAAK,KAAK,iBAAiB,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,WAAW,GAAG,CAAC,KAAK,OAAO,GAAG,CAAC,KAAK,0BAA0B,CAAC,CAAC;IAClF,CAAC;IACD,MAAM,iBAAiB,GAAG,GAAG,CAAC,sBAAsB,CAAC;IACrD,2BAA2B,CAAC,iBAAiB,CAAC,CAAC;IAC/C,IAAI,CAAC;QACH,sBAAsB,EAAE,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,qBAAqB,EAAE,CAAC;IAC1B,CAAC;IACD,uBAAuB,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,kBAAkB,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IAChE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;QACnC,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,IAAI,yBAAyB,CAAC;QACzE,IAAI,GAAG,CAAC,KAAK,KAAK,iBAAiB,EAAE,CAAC;YACpC,MAAM,YAAY,GAAG,OAAO,EAAE,GAAG,IAAI,OAAO,CAAC,iBAAiB;gBAC5D,CAAC,CAAC;oBACA,GAAG,CAAC,UAAU;oBACd,GAAG,CAAC,aAAa;oBACjB,GAAG,CAAC,eAAe;oBACnB,GAAG,CAAC,aAAa;iBAClB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAChB,QAAQ,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG;uBAC1B,QAAQ,EAAE,iBAAiB,KAAK,OAAO,CAAC,iBAAiB,CAAC;gBAC/D,CAAC,CAAC,SAAS,CAAC;YACd,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,KAAK,GAAG,yBAAyB,CACrC,YAAY,CAAC,GAAG,EAChB,YAAY,CAAC,oBAAoB,CAClC,CAAC;gBACF,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC7B,MAAM,IAAI,KAAK,CAAC,2DAA2D,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC5F,CAAC;gBACD,MAAM,SAAS,CAAC,YAAY,CAAC,CAAC;YAChC,CAAC;YACD,IAAI,OAAO,EAAE,GAAG,EAAE,CAAC;gBACjB,eAAe,CACb,OAAO,CAAC,iBAAiB;oBACvB,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,EAAE;oBACpE,CAAC,CAAC,OAAO,CAAC,GAAG,CAChB,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,0BAA0B,GAAG,GAAG,CAAC,aAAa;YAClD,CAAC,CAAC,yBAAyB,CACzB,GAAG,CAAC,aAAa,CAAC,GAAG,EACrB,GAAG,CAAC,aAAa,CAAC,oBAAoB,CACvC;YACD,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,2BAA2B,GAAG,GAAG,CAAC,cAAc;YACpD,CAAC,CAAC,yBAAyB,CACzB,GAAG,CAAC,cAAc,CAAC,GAAG,EACtB,GAAG,CAAC,cAAc,CAAC,oBAAoB,CACxC;YACD,CAAC,CAAC,IAAI,CAAC;QACT,KAAK,MAAM,KAAK,IAAI,CAAC,0BAA0B,EAAE,2BAA2B,CAAC,EAAE,CAAC;YAC9E,IAAI,KAAK,EAAE,MAAM,KAAK,OAAO,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,iDAAiD,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;QACD,GAAG,GAAG,4BAA4B,CAAC,GAAG,CAAC,KAAK,EAAE,iBAAiB,EAAE;YAC/D,KAAK,EAAE,IAAI;YACX,kBAAkB,EAAE,CAAC,CAAC,GAAG,CAAC,aAAa;mBAClC,0BAA0B,EAAE,MAAM,KAAK,OAAO;YACnD,mBAAmB,EAAE,CAAC,CAAC,GAAG,CAAC,cAAc;mBACpC,2BAA2B,EAAE,MAAM,KAAK,OAAO;SACrD,CAAC,CAAC;QACH,mBAAmB,CAAC,oBAAoB,EAAE,EAAE,iBAAiB,CAAC,CAAC;QAC/D,mBAAmB,CAAC,qBAAqB,EAAE,EAAE,iBAAiB,CAAC,CAAC;QAEhE,IAAI,WAAW,GAAG,GAAG,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,CAAC;QAC/C,MAAM,kBAAkB,GAAG,GAAG,CAAC,aAAa;YAC1C,CAAC,CAAC,yBAAyB,CACzB,GAAG,CAAC,aAAa,CAAC,GAAG,EACrB,GAAG,CAAC,aAAa,CAAC,oBAAoB,CACvC;YACD,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,mBAAmB,GAAG,GAAG,CAAC,cAAc;YAC5C,CAAC,CAAC,yBAAyB,CACzB,GAAG,CAAC,cAAc,CAAC,GAAG,EACtB,GAAG,CAAC,cAAc,CAAC,oBAAoB,CACxC;YACD,CAAC,CAAC,IAAI,CAAC;QACT,IAAI,sBAAsB,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC;YACH,IAAI,kBAAkB,EAAE,MAAM,KAAK,OAAO,IAAI,mBAAmB,EAAE,MAAM,KAAK,OAAO,EAAE,CAAC;gBACtF,WAAW,GAAG,IAAI,CAAC,aAAa;oBAC9B,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC;oBACxC,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,cAAc,EAAE;wBACxC,YAAY,EAAE,GAAG,CAAC,KAAK;wBACvB,aAAa,EAAE,QAAQ;qBACxB,CAAC,CAAC;gBACL,sBAAsB,GAAG,WAAW,CAAC;gBACrC,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,WAAW,CAAC,CAAC;gBACzD,GAAG,GAAG,4BAA4B,CAAC,GAAG,CAAC,KAAK,EAAE,iBAAiB,EAAE;oBAC/D,cAAc,EAAE,QAAQ;iBACzB,CAAC,CAAC;gBACH,sBAAsB,GAAG,CAAC,CAAC;YAC7B,CAAC;YACD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,qBAAqB,CAAC,CAAC,GAAG,CAAC,CAAC;YAC/E,IAAI,aAAa,EAAE,CAAC;gBAClB,GAAG,GAAG,4BAA4B,CAAC,GAAG,CAAC,KAAK,EAAE,iBAAiB,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;YACtF,CAAC;YACD,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAC;gBACrD,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;YACrF,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,cAAc,GAAG,kBAAmB,KAAe,CAAC,OAAO,EAAE,CAAC;YACpE,MAAM,SAAS,GAAG,4BAA4B,CAAC,GAAG,CAAC,KAAK,EAAE,iBAAiB,EAAE;gBAC3E,KAAK,EAAE,cAAc;aACtB,CAAC,CAAC;YACH,MAAM,aAAa,GAAa,EAAE,CAAC;YACnC,IAAI,mBAAgD,CAAC;YACrD,IAAI,sBAAsB,EAAE,CAAC;gBAC3B,MAAM,MAAM,GAAG,0BAA0B,CAAC,sBAAsB,CAAC,CAAC;gBAClE,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC9B,mBAAmB,GAAG;wBACpB,GAAG,EAAE,sBAAsB;wBAC3B,oBAAoB,EAAE,MAAM,CAAC,QAAQ;qBACtC,CAAC;gBACJ,CAAC;qBAAM,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBACrC,aAAa,CAAC,IAAI,CAChB,+CAA+C,sBAAsB,KAAK,MAAM,CAAC,KAAK,EAAE,CACzF,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,KAAK,MAAM,QAAQ,IAAI;gBACrB,SAAS,CAAC,cAAc;gBACxB,SAAS,CAAC,aAAa;gBACvB,mBAAmB;aACpB,EAAE,CAAC;gBACF,IAAI,CAAC,QAAQ;oBAAE,SAAS;gBACxB,IAAI,CAAC;oBACH,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAC5B,CAAC;gBAAC,OAAO,YAAY,EAAE,CAAC;oBACtB,aAAa,CAAC,IAAI,CAAE,YAAsB,CAAC,OAAO,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YACD,IAAI,aAAa,CAAC,MAAM,EAAE,CAAC;gBACzB,4BAA4B,CAAC,GAAG,CAAC,KAAK,EAAE,iBAAiB,EAAE;oBACzD,KAAK,EAAE,GAAG,cAAc,qBAAqB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;iBACxE,CAAC,CAAC;YACL,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,iEAAkE,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/G,CAAC;QACD,MAAM,QAAQ,GAAG,2BAA2B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACxD,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxC,CAAC;YAAS,CAAC;QACT,UAAU,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,KAAa,EACb,OAEI,EAAE;IAEN,MAAM,GAAG,GAAG,sBAAsB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IACxD,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,mBAAmB,CAAC;IAChE,IAAI,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACzC,IAAI,CAAC,cAAc,EAAE;YAAE,OAAO,UAAU,CAAC;QACzC,aAAa,CAAC,GAAG,CAAC,cAAc,EAAE;YAChC,YAAY,EAAE,GAAG,CAAC,KAAK;SACxB,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,GAAG,CAAC,KAAK,KAAK,iBAAiB,EAAE,CAAC;QACpC,KAAK,MAAM,QAAQ,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;YAC/D,IAAI,CAAC,QAAQ;gBAAE,SAAS;YACxB,MAAM,KAAK,GAAG,yBAAyB,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;YACrF,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;gBAAE,OAAO,gBAAgB,CAAC;YACtD,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBAC7B,MAAM,IAAI,KAAK,CAAC,iDAAiD,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;QACD,aAAa,CAAC,GAAG,CAAC,cAAc,EAAE;YAChC,YAAY,EAAE,GAAG,CAAC,KAAK;YACvB,aAAa,EAAE,QAAQ;SACxB,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QACf,MAAM,MAAM,GAAG,yBAAyB,CACtC,GAAG,CAAC,MAAM,CAAC,GAAG,EACd,GAAG,CAAC,MAAM,CAAC,oBAAoB,CAChC,CAAC;QACF,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO;YAAE,OAAO,gBAAgB,CAAC;QACvD,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,6CAA6C,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IACD,aAAa,CAAC,GAAG,CAAC,cAAc,EAAE;QAChC,YAAY,EAAE,GAAG,CAAC,KAAK;KACxB,CAAC,CAAC;IACH,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,4BAA4B,CAAC,IAA0B;IAC9D,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,OAAO,IAAI,CAAC,kBAAkB,EAAE,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;QAClE,IAAI,OAAO;YAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAC1F,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,KAAK,KAAK,iBAAiB,EAAE,CAAC;YAC7E,KAAK,MAAM,OAAO,IAAI;gBACpB,GAAG,CAAC,eAAe;gBACnB,GAAG,CAAC,eAAe;gBACnB,GAAG,CAAC,sBAAsB;aAC3B,EAAE,CAAC;gBACF,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,GAAG,GAAG,IAAI,IAAI,EAAE;IAKlD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACpD,IAAI,WAAW,GAAkB,IAAI,CAAC;IACtC,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAGzD,CAAC;YACF,IACE,MAAM,CAAC,aAAa,KAAK,CAAC;mBACvB,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ;mBAChC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAC5B,CAAC;gBACD,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACN,cAAc,GAAG,IAAI,CAAC;YACxB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,cAAc,GAAG,IAAI,CAAC;QACxB,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAG,UAAU,CAAC,WAAW,CAAC;QAClC,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;aAChD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aAC/D,OAAO,CAAC,KAAK,CAAC,EAAE;YACf,IAAI,CAAC;gBACH,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9C,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC,CAAC;QACJ,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,YAAY,GAAG,4BAA4B,CAAC,IAAI,CAAC,CAAC;IACxD,IAAI,eAAe,GAAkB,IAAI,CAAC;IAC1C,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAC9B,IAAI,cAAc,EAAE,EAAE,CAAC;QACrB,IAAI,CAAC;YACH,eAAe,GAAG,oBAAoB,EAAE,CAAC,KAAK,CAAC;QACjD,CAAC;QAAC,MAAM,CAAC;YACP,iBAAiB,GAAG,IAAI,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,MAAM,eAAe,GAAa,EAAE,CAAC;IACrC,MAAM,cAAc,GAAa,EAAE,CAAC;IACpC,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,WAAW,CAAC,YAAY,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;aAChE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;aAC3E,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;aAC5C,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;QAC3E,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YACvF,MAAM,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,YAAY,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YACvE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;gBAAE,SAAS;YAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAC/C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACnD,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACrC,GAAG,CAAC,KAAK,KAAK,KAAK,IAAI,CAAC,CAAC,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,KAAK,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACrG,0EAA0E;YAC1E,qEAAqE;YACrE,MAAM,eAAe,GAAG,iBAAiB,IAAI,eAAe,KAAK,IAAI,CAAC;YACtE,IACE,CAAC,cAAc;mBACZ,CAAC,eAAe;mBAChB,GAAG,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,GAAG,kBAAkB,EACjE,CAAC;gBACD,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBAClD,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,aAAa,GAAG,IAAI;SACvB,MAAM,CAAC,GAAG,CAAC,EAAE,CACZ,CAAC,cAAc;WACZ,GAAG,CAAC,KAAK,KAAK,WAAW;WACzB,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC;WACpC,GAAG,CAAC,KAAK,KAAK,iBAAiB,CAAC;SACpC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACnF,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,cAAc,CAAC;QAC1E,MAAM,WAAW,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,iBAAiB,CAAC;QACpE,IAAI,MAAM,IAAI,WAAW,EAAE,CAAC;YAC1B,MAAM,SAAS,GAAG,OAAO,CAAC,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YAChE,MAAM,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACpD,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IACD,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,CAAC;AAC1D,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { isProcessAlive, loadRuntimeState } from './config.js';
2
+ import { type ExternalUpgradeOptions, type ExternalUpgradeResult } from './external-upgrade.js';
3
+ import { stageRuntimeBundle } from './version-stager.js';
4
+ import { fetchRuntimeManifest, prepareRuntimeBundle } from './runtime-release.js';
5
+ import { loadLatestExternalUpgradeJob, transitionExternalUpgradeJob, type ExternalUpgradeJob } from './upgrade-job.js';
6
+ import { hasUpgradeLock } from './upgrade-lock.js';
7
+ import { isVersionStoreAdopted, loadCurrentVersion, loadLastKnownGood } from './version-store.js';
8
+ export interface UserRollbackResult {
9
+ status: 'already-current' | 'completed';
10
+ currentVersion: string;
11
+ targetVersion: string;
12
+ runningVersion: string;
13
+ job?: ExternalUpgradeJob;
14
+ }
15
+ export declare class UserRollbackError extends Error {
16
+ readonly recovery: string;
17
+ constructor(message: string, recovery: string);
18
+ }
19
+ export interface UserRollbackDeps {
20
+ isAdopted: typeof isVersionStoreAdopted;
21
+ loadCurrent: typeof loadCurrentVersion;
22
+ loadLastKnownGood: typeof loadLastKnownGood;
23
+ loadRuntime: typeof loadRuntimeState;
24
+ processAlive: typeof isProcessAlive;
25
+ hasActiveLock: typeof hasUpgradeLock;
26
+ loadLatestJob: typeof loadLatestExternalUpgradeJob;
27
+ fetchManifest: typeof fetchRuntimeManifest;
28
+ prepareBundle: typeof prepareRuntimeBundle;
29
+ stageBundle: typeof stageRuntimeBundle;
30
+ transitionJob: typeof transitionExternalUpgradeJob;
31
+ startExternalUpgrade: (options: ExternalUpgradeOptions) => Promise<ExternalUpgradeResult>;
32
+ onPlan: (currentVersion: string, targetVersion: string) => void;
33
+ }
34
+ export declare function rollbackToVersion(targetVersion: string, overrides?: Partial<UserRollbackDeps>): Promise<UserRollbackResult>;
@@ -0,0 +1,173 @@
1
+ import { isProcessAlive, loadRuntimeState } from './config.js';
2
+ import { startExternalWorkerUpgrade, validateExternalUpgradeTarget, } from './external-upgrade.js';
3
+ import { createRuntimeBundlePointer, stageRuntimeBundle, } from './version-stager.js';
4
+ import { fetchRuntimeManifest, prepareRuntimeBundle, selectRuntimeBundle, } from './runtime-release.js';
5
+ import { loadLatestExternalUpgradeJob, transitionExternalUpgradeJob, } from './upgrade-job.js';
6
+ import { hasUpgradeLock } from './upgrade-lock.js';
7
+ import { isVersionStoreAdopted, loadCurrentVersion, loadLastKnownGood, validateVersionInstallation, } from './version-store.js';
8
+ export class UserRollbackError extends Error {
9
+ recovery;
10
+ constructor(message, recovery) {
11
+ super(message);
12
+ this.recovery = recovery;
13
+ this.name = 'UserRollbackError';
14
+ }
15
+ }
16
+ const DEFAULT_DEPS = {
17
+ isAdopted: isVersionStoreAdopted,
18
+ loadCurrent: loadCurrentVersion,
19
+ loadLastKnownGood,
20
+ loadRuntime: loadRuntimeState,
21
+ processAlive: isProcessAlive,
22
+ hasActiveLock: hasUpgradeLock,
23
+ loadLatestJob: loadLatestExternalUpgradeJob,
24
+ fetchManifest: fetchRuntimeManifest,
25
+ prepareBundle: prepareRuntimeBundle,
26
+ stageBundle: stageRuntimeBundle,
27
+ transitionJob: transitionExternalUpgradeJob,
28
+ startExternalUpgrade: startExternalWorkerUpgrade,
29
+ onPlan: () => { },
30
+ };
31
+ function sameSelection(left, right) {
32
+ return left.version === right.version
33
+ && left.integrity === right.integrity
34
+ && left.entry === right.entry;
35
+ }
36
+ function validateRunningSource(runtime, current, processAlive) {
37
+ if (!runtime?.pid
38
+ || !runtime.processInstanceId
39
+ || !processAlive(runtime.pid)
40
+ || runtime.versionStore?.active !== true
41
+ || runtime.versionStore.selectedVersion !== current.version
42
+ || runtime.versionStore.selectedIntegrity !== current.integrity) {
43
+ throw new Error('The running Agent does not match the immutable current-version selection');
44
+ }
45
+ }
46
+ function assertCompletedState(target, deps) {
47
+ const current = deps.loadCurrent();
48
+ const lastKnownGood = deps.loadLastKnownGood();
49
+ const runtime = deps.loadRuntime();
50
+ if (!current || !lastKnownGood) {
51
+ throw new Error('Rollback completed without current and last-known-good selections');
52
+ }
53
+ validateVersionInstallation(current);
54
+ validateVersionInstallation(lastKnownGood);
55
+ validateRunningSource(runtime, current, deps.processAlive);
56
+ if (!sameSelection(current, target) || !sameSelection(lastKnownGood, target)) {
57
+ throw new Error('Rollback completed with inconsistent current or last-known-good state');
58
+ }
59
+ return runtime.versionStore.selectedVersion;
60
+ }
61
+ function recoveryForJob(job, sourceVersion) {
62
+ if (!job) {
63
+ return `The current Agent ${sourceVersion} remains running. Fix the reported error and retry.`;
64
+ }
65
+ if (job.phase === 'rolled-back') {
66
+ return `The original Agent ${sourceVersion} was restored. Fix the target issue and retry.`;
67
+ }
68
+ if (job.phase === 'repair-required' || job.phase === 'repair-starting') {
69
+ return 'Run agentlink-client upgrade-repair, then verify with agentlink-client upgrade-status.';
70
+ }
71
+ if (job.phase === 'failed') {
72
+ return `The current Agent ${sourceVersion} remains running. Fix the reported error and retry.`;
73
+ }
74
+ return `Rollback job ${job.jobId} is ${job.phase}. Run agentlink-client upgrade-status `
75
+ + `${job.jobId}; restart the configured Agent service or daemon to resume interrupted recovery.`;
76
+ }
77
+ export async function rollbackToVersion(targetVersion, overrides = {}) {
78
+ const deps = { ...DEFAULT_DEPS, ...overrides };
79
+ if (!deps.isAdopted()) {
80
+ throw new UserRollbackError('Rollback requires an Agent adopted into the immutable version store.', 'Upgrade to a managed-runtime Agent version, start it normally, and retry rollback.');
81
+ }
82
+ const current = deps.loadCurrent();
83
+ const lastKnownGood = deps.loadLastKnownGood();
84
+ if (!current || !lastKnownGood) {
85
+ throw new UserRollbackError('Rollback requires valid current and last-known-good selections.', 'Run agentlink-client upgrade-status; if repair is required, run agentlink-client upgrade-repair.');
86
+ }
87
+ try {
88
+ validateVersionInstallation(current);
89
+ validateVersionInstallation(lastKnownGood);
90
+ validateRunningSource(deps.loadRuntime(), current, deps.processAlive);
91
+ }
92
+ catch (error) {
93
+ throw new UserRollbackError(`Rollback preflight failed: ${error.message}`, 'Restore the configured Agent service or daemon, then run agentlink-client upgrade-repair if requested.');
94
+ }
95
+ deps.onPlan(current.version, targetVersion);
96
+ if (deps.hasActiveLock()) {
97
+ const active = deps.loadLatestJob();
98
+ throw new UserRollbackError(active
99
+ ? `Another ${active.operation} job ${active.jobId} is ${active.phase}.`
100
+ : 'Another upgrade or rollback job owns the active lock.', active?.phase === 'repair-required'
101
+ ? 'Run agentlink-client upgrade-repair before retrying rollback.'
102
+ : 'Run agentlink-client upgrade-status and wait for the active job to finish; '
103
+ + 'if it is interrupted, restart the configured Agent service or daemon to resume recovery.');
104
+ }
105
+ const previousJob = deps.loadLatestJob();
106
+ if (previousJob?.phase === 'repair-required' || previousJob?.phase === 'repair-starting') {
107
+ throw new UserRollbackError(`External ${previousJob.operation} job ${previousJob.jobId} requires repair.`, 'Run agentlink-client upgrade-repair before retrying rollback.');
108
+ }
109
+ if (targetVersion === current.version) {
110
+ if (!sameSelection(current, lastKnownGood)) {
111
+ throw new UserRollbackError('The requested version is running, but current and last-known-good are inconsistent.', 'Run agentlink-client upgrade-status; if repair is required, run agentlink-client upgrade-repair.');
112
+ }
113
+ return {
114
+ status: 'already-current',
115
+ currentVersion: current.version,
116
+ targetVersion,
117
+ runningVersion: current.version,
118
+ };
119
+ }
120
+ try {
121
+ validateExternalUpgradeTarget(current.version, targetVersion, 'rollback');
122
+ }
123
+ catch (error) {
124
+ throw new UserRollbackError(error.message, `Choose a stable version older than ${current.version}.`);
125
+ }
126
+ let createdJobId = null;
127
+ try {
128
+ const release = await deps.fetchManifest(targetVersion, {
129
+ manifestUrl: process.env.AGENTLINK_TEST_FAULTS === '1'
130
+ ? process.env.AGENTLINK_UPGRADE_RUNTIME_MANIFEST
131
+ : undefined,
132
+ });
133
+ const bundle = selectRuntimeBundle(release.manifest);
134
+ const targetSelection = createRuntimeBundlePointer(release.manifest, bundle, release.manifestUrl);
135
+ const result = await deps.startExternalUpgrade({
136
+ targetSelection,
137
+ operation: 'rollback',
138
+ channel: 'latest',
139
+ waitForTargetStarted: true,
140
+ waitForCompletion: true,
141
+ onJobCreated: job => {
142
+ createdJobId = job.jobId;
143
+ },
144
+ prepareTarget: async (job) => {
145
+ deps.transitionJob(job.jobId, 'downloading');
146
+ const prepared = await deps.prepareBundle(release.manifest);
147
+ deps.transitionJob(job.jobId, 'verifying');
148
+ deps.transitionJob(job.jobId, 'staging');
149
+ const selection = deps.stageBundle(prepared, release.manifestUrl);
150
+ deps.transitionJob(job.jobId, 'self-checking');
151
+ return selection;
152
+ },
153
+ });
154
+ if (result.job.phase !== 'completed') {
155
+ throw new Error(result.job.phase === 'rolled-back'
156
+ ? `Target ${targetVersion} failed health checks and the source was restored`
157
+ : `Rollback ended in ${result.job.phase}: ${result.job.error ?? 'unknown error'}`);
158
+ }
159
+ const runningVersion = assertCompletedState(targetSelection, deps);
160
+ return {
161
+ status: 'completed',
162
+ currentVersion: current.version,
163
+ targetVersion,
164
+ runningVersion,
165
+ job: result.job,
166
+ };
167
+ }
168
+ catch (error) {
169
+ const job = createdJobId ? deps.loadLatestJob() : null;
170
+ throw new UserRollbackError(`Rollback failed: ${error.message}`, recoveryForJob(job, current.version));
171
+ }
172
+ }
173
+ //# sourceMappingURL=user-rollback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-rollback.js","sourceRoot":"","sources":["../src/user-rollback.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-link/agent",
3
- "version": "0.1.319",
3
+ "version": "0.1.321",
4
4
  "description": "AgentLink local agent CLI",
5
5
  "license": "MIT",
6
6
  "repository": {
package/worker/worker.cjs CHANGED
@@ -60,16 +60,18 @@ function loadJson(file) {
60
60
 
61
61
  function loadJob(jobPath) {
62
62
  const job = loadJson(jobPath);
63
+ const operation = job?.operation || 'upgrade';
63
64
  if (
64
65
  !job
65
66
  || job.schemaVersion !== 2
66
67
  || typeof job.jobId !== 'string'
68
+ || !['upgrade', 'rollback'].includes(operation)
67
69
  || job.restartOwner !== 'worker'
68
70
  || path.resolve(job.dataRoot) !== path.resolve(process.env.AGENTLINK_HOME || '')
69
71
  ) {
70
72
  throw new Error('job schema or data root is invalid');
71
73
  }
72
- return job;
74
+ return { ...job, operation };
73
75
  }
74
76
 
75
77
  function appendEvent(jobPath, job, code, detail) {
@@ -443,18 +445,19 @@ function validateSelection(job, pointer) {
443
445
  }
444
446
  }
445
447
 
446
- function isStrictlyNewerVersion(current, target) {
447
- if (!/^\d+\.\d+\.\d+$/.test(current) || !/^\d+\.\d+\.\d+$/.test(target)) {
448
+ function compareStableVersions(current, target) {
449
+ const stable = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$/;
450
+ if (!stable.test(current) || !stable.test(target)) {
448
451
  throw new Error('upgrade versions must use stable major.minor.patch');
449
452
  }
450
453
  const currentParts = current.split('.').map(Number);
451
454
  const targetParts = target.split('.').map(Number);
452
455
  for (let index = 0; index < 3; index++) {
453
456
  if (targetParts[index] !== currentParts[index]) {
454
- return targetParts[index] > currentParts[index];
457
+ return targetParts[index] > currentParts[index] ? 1 : -1;
455
458
  }
456
459
  }
457
- return false;
460
+ return 0;
458
461
  }
459
462
 
460
463
  function sameSelection(left, right) {
@@ -474,11 +477,17 @@ function selectTarget(job) {
474
477
  ) {
475
478
  throw new Error('current selection changed after worker handoff');
476
479
  }
477
- if (!isStrictlyNewerVersion(current.version, job.targetSelection.version)) {
480
+ const comparison = compareStableVersions(current.version, job.targetSelection.version);
481
+ if (job.operation === 'upgrade' && comparison <= 0) {
478
482
  throw new Error(
479
483
  `target ${job.targetSelection.version} is not newer than current ${current.version}`,
480
484
  );
481
485
  }
486
+ if (job.operation === 'rollback' && comparison >= 0) {
487
+ throw new Error(
488
+ `rollback target ${job.targetSelection.version} is not older than current ${current.version}`,
489
+ );
490
+ }
482
491
  validateSelection(job, job.targetSelection);
483
492
  atomicJson(path.join(job.dataRoot, 'current-version.json'), job.targetSelection);
484
493
  }
@@ -858,8 +867,18 @@ function relayHealthy(health) {
858
867
 
859
868
  async function waitForRelay(job, health) {
860
869
  let current = health;
870
+ const configuredTimeout = Number(process.env.AGENTLINK_UPGRADE_RELAY_TIMEOUT_MS);
871
+ const rollbackTimeout = Number.isFinite(configuredTimeout)
872
+ ? Math.min(Math.max(configuredTimeout, 1000), 120000)
873
+ : 30000;
874
+ const deadline = job.operation === 'rollback'
875
+ ? Date.now() + rollbackTimeout
876
+ : Number.POSITIVE_INFINITY;
861
877
  while (true) {
862
878
  if (relayHealthy(current)) return current;
879
+ if (Date.now() >= deadline) {
880
+ throw new Error('mandatory relay health failed before the rollback deadline');
881
+ }
863
882
  await new Promise(resolve => setTimeout(resolve, 1000));
864
883
  current = await waitForLocalHealth(job, job.targetSelection, current.identity, 2000);
865
884
  }