@agent-link/agent 0.1.297 → 0.1.299

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
  import { spawnSync } from 'child_process';
2
2
  import { resolve } from 'path';
3
3
  import { isVersionStoreAdopted, loadCurrentVersion, validateVersionInstallation, } from './version-store.js';
4
- const BOOTSTRAP_COMMANDS = new Set(['version-store']);
4
+ const BOOTSTRAP_COMMANDS = new Set(['self-check', 'version-store']);
5
5
  export function createDelegationEnvironment(selected, environment = process.env) {
6
6
  return {
7
7
  ...environment,
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap-delegator.js","sourceRoot":"","sources":["../src/bootstrap-delegator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC;AAE5B,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;AAOtD,MAAM,UAAU,2BAA2B,CACzC,QAAqB,EACrB,cAAiC,OAAO,CAAC,GAAG;IAE5C,OAAO;QACL,GAAG,WAAW;QACd,8BAA8B,EAAE,GAAG;QACnC,0BAA0B,EAAE,QAAQ,CAAC,OAAO;KAC7C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,cAAsB,EACtB,IAAc;IAEd,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5D,IAAI,CAAC,qBAAqB,EAAE;QAAE,OAAO,IAAI,CAAC;IAC1C,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;IACrC,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC1B,2BAA2B,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACxC,OAAO,QAAQ,KAAK,OAAO,CAAC,cAAc,CAAC;QACzC,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,QAAqB,EACrB,IAAc;IAEd,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,EAAE;QACpE,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,IAAI;QACjB,GAAG,EAAE,2BAA2B,CAAC,QAAQ,CAAC;KAC3C,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,KAAK;QAAE,MAAM,MAAM,CAAC,KAAK,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"bootstrap-delegator.js","sourceRoot":"","sources":["../src/bootstrap-delegator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC;AAE5B,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC;AAOpE,MAAM,UAAU,2BAA2B,CACzC,QAAqB,EACrB,cAAiC,OAAO,CAAC,GAAG;IAE5C,OAAO;QACL,GAAG,WAAW;QACd,8BAA8B,EAAE,GAAG;QACnC,0BAA0B,EAAE,QAAQ,CAAC,OAAO;KAC7C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,cAAsB,EACtB,IAAc;IAEd,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5D,IAAI,CAAC,qBAAqB,EAAE;QAAE,OAAO,IAAI,CAAC;IAC1C,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;IACrC,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC1B,2BAA2B,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACxC,OAAO,QAAQ,KAAK,OAAO,CAAC,cAAc,CAAC;QACzC,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,QAAqB,EACrB,IAAc;IAEd,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,EAAE;QACpE,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,IAAI;QACjB,GAAG,EAAE,2BAA2B,CAAC,QAAQ,CAAC;KAC3C,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,KAAK;QAAE,MAAM,MAAM,CAAC,KAAK,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;AACnC,CAAC"}
@@ -6,10 +6,11 @@ import { computeLaunchSpecDigest, loadLaunchSpec, } from './launch-spec.js';
6
6
  import { getProcessStartIdentity, matchProcessStartIdentity, } from './process-identity.js';
7
7
  import { snapshotUpgradeLaunchSpec } from './upgrade-launch-spec.js';
8
8
  import { createExternalUpgradeJob, getExternalUpgradeJobDirectory, getExternalUpgradeJobPath, loadExternalUpgradeJob, transitionExternalUpgradeJob, } from './upgrade-job.js';
9
- import { acquireUpgradeLock, loadUpgradeLockOwner, loadUpgradeLockWorkerClaim, } from './upgrade-lock.js';
9
+ import { acquireUpgradeLock, hasUpgradeLock, loadUpgradeLockOwner, loadUpgradeLockWorkerClaim, } from './upgrade-lock.js';
10
10
  import { isVersionStoreAdopted, loadCurrentVersion, loadLastKnownGood, validateVersionInstallation, } from './version-store.js';
11
11
  import { getPackagedWorkerPath, cleanupUpgradeWorkerHost, startUpgradeWorker, } from './worker-host.js';
12
12
  const HANDOFF_WINDOW_MS = 2 * 60_000;
13
+ const TERMINAL_PHASES = ['failed', 'target-started'];
13
14
  function sameSelection(left, right) {
14
15
  return left.version === right.version
15
16
  && left.integrity === right.integrity
@@ -148,8 +149,29 @@ export async function startExternalWorkerUpgrade(options) {
148
149
  }
149
150
  try {
150
151
  let current = loadExternalUpgradeJob(jobId);
151
- const worker = loadUpgradeLockWorkerClaim() ?? loadUpgradeLockOwner().worker;
152
- let controllerOwnsCleanup = lock.tryClaimControllerCleanup();
152
+ let cleanupRequired = true;
153
+ if (!hasUpgradeLock()) {
154
+ current = loadExternalUpgradeJob(jobId);
155
+ if (!TERMINAL_PHASES.includes(current.phase)) {
156
+ throw new Error(`External upgrade lock disappeared in nonterminal phase ${current.phase}`);
157
+ }
158
+ cleanupRequired = false;
159
+ }
160
+ let worker;
161
+ if (cleanupRequired) {
162
+ try {
163
+ worker = loadUpgradeLockWorkerClaim() ?? loadUpgradeLockOwner().worker;
164
+ }
165
+ catch (lockError) {
166
+ if (lockError.code !== 'ENOENT')
167
+ throw lockError;
168
+ current = loadExternalUpgradeJob(jobId);
169
+ if (!TERMINAL_PHASES.includes(current.phase))
170
+ throw lockError;
171
+ cleanupRequired = false;
172
+ }
173
+ }
174
+ let controllerOwnsCleanup = cleanupRequired && lock.tryClaimControllerCleanup();
153
175
  if (!controllerOwnsCleanup
154
176
  && worker
155
177
  && (current.phase === 'created' || current.phase === 'worker-starting')) {
@@ -177,8 +199,20 @@ export async function startExternalWorkerUpgrade(options) {
177
199
  }
178
200
  }
179
201
  catch (cleanupError) {
180
- console.error(`[AgentLink] Could not finalize failed external upgrade ${jobId}: `
181
- + cleanupError.message);
202
+ let reportCleanupError = true;
203
+ if (cleanupError.code === 'ENOENT') {
204
+ try {
205
+ const current = loadExternalUpgradeJob(jobId);
206
+ reportCleanupError = !TERMINAL_PHASES.includes(current.phase);
207
+ }
208
+ catch {
209
+ reportCleanupError = true;
210
+ }
211
+ }
212
+ if (reportCleanupError) {
213
+ console.error(`[AgentLink] Could not finalize failed external upgrade ${jobId}: `
214
+ + cleanupError.message);
215
+ }
182
216
  }
183
217
  throw error;
184
218
  }
@@ -1 +1 @@
1
- {"version":3,"file":"external-upgrade.js","sourceRoot":"","sources":["../src/external-upgrade.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"external-upgrade.js","sourceRoot":"","sources":["../src/external-upgrade.ts"],"names":[],"mappings":"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"}
@@ -19,12 +19,12 @@ export function loadUpgradeLockOwner() {
19
19
  }
20
20
  return value;
21
21
  }
22
- function getHandoffClaimPath() {
23
- return join(getUpgradeLockPath(), 'handoff.claim');
22
+ function getHandoffClaimPath(nonce) {
23
+ return join(getUpgradeLockPath(), `handoff-${nonce}.claim`);
24
24
  }
25
- function loadHandoffClaim() {
25
+ function loadHandoffClaim(nonce) {
26
26
  try {
27
- const value = JSON.parse(readFileSync(getHandoffClaimPath(), 'utf8'));
27
+ const value = JSON.parse(readFileSync(getHandoffClaimPath(nonce), 'utf8'));
28
28
  if (value.schemaVersion !== 1
29
29
  || (value.role !== 'controller' && value.role !== 'worker')
30
30
  || typeof value.jobId !== 'string'
@@ -45,7 +45,7 @@ function loadHandoffClaim() {
45
45
  function tryCreateHandoffClaim(claim) {
46
46
  let handle;
47
47
  try {
48
- handle = openSync(getHandoffClaimPath(), 'wx', 0o600);
48
+ handle = openSync(getHandoffClaimPath(claim.nonce), 'wx', 0o600);
49
49
  }
50
50
  catch (error) {
51
51
  if (error.code === 'EEXIST')
@@ -63,7 +63,7 @@ function tryCreateHandoffClaim(claim) {
63
63
  }
64
64
  function releaseClaimedLock(jobId, nonce, role) {
65
65
  const owner = loadUpgradeLockOwner();
66
- const claim = loadHandoffClaim();
66
+ const claim = loadHandoffClaim(nonce);
67
67
  if (owner.jobId !== jobId
68
68
  || owner.nonce !== nonce
69
69
  || claim?.jobId !== jobId
@@ -118,18 +118,45 @@ export function acquireUpgradeLock(jobId) {
118
118
  return false;
119
119
  if (controllerClaimed)
120
120
  return true;
121
+ let current;
122
+ try {
123
+ current = loadUpgradeLockOwner();
124
+ }
125
+ catch (error) {
126
+ if (error.code === 'ENOENT')
127
+ return false;
128
+ throw error;
129
+ }
130
+ if (current.jobId !== owner.jobId || current.nonce !== owner.nonce)
131
+ return false;
121
132
  controllerClaimed = tryCreateHandoffClaim({
122
133
  schemaVersion: 1,
123
134
  role: 'controller',
124
135
  jobId: owner.jobId,
125
136
  nonce: owner.nonce,
126
137
  });
138
+ if (!controllerClaimed)
139
+ return false;
140
+ try {
141
+ current = loadUpgradeLockOwner();
142
+ }
143
+ catch (error) {
144
+ if (error.code === 'ENOENT') {
145
+ controllerClaimed = false;
146
+ return false;
147
+ }
148
+ throw error;
149
+ }
150
+ if (current.jobId !== owner.jobId || current.nonce !== owner.nonce) {
151
+ controllerClaimed = false;
152
+ return false;
153
+ }
127
154
  return controllerClaimed;
128
155
  },
129
156
  tryReclaimDeadWorkerCleanup(worker) {
130
157
  if (released || controllerClaimed)
131
158
  return false;
132
- const claim = loadHandoffClaim();
159
+ const claim = loadHandoffClaim(owner.nonce);
133
160
  if (claim?.role !== 'worker'
134
161
  || claim.jobId !== owner.jobId
135
162
  || claim.nonce !== owner.nonce
@@ -137,19 +164,19 @@ export function acquireUpgradeLock(jobId) {
137
164
  || claim.worker.processStartIdentity !== worker.processStartIdentity) {
138
165
  return false;
139
166
  }
140
- rmSync(getHandoffClaimPath());
167
+ rmSync(getHandoffClaimPath(owner.nonce));
141
168
  return this.tryClaimControllerCleanup();
142
169
  },
143
170
  abandonControllerCleanup() {
144
171
  if (!controllerClaimed || released)
145
172
  return;
146
- const claim = loadHandoffClaim();
173
+ const claim = loadHandoffClaim(owner.nonce);
147
174
  if (claim?.role !== 'controller'
148
175
  || claim.jobId !== owner.jobId
149
176
  || claim.nonce !== owner.nonce) {
150
177
  throw new Error('Upgrade controller cleanup claim changed unexpectedly');
151
178
  }
152
- rmSync(getHandoffClaimPath());
179
+ rmSync(getHandoffClaimPath(owner.nonce));
153
180
  controllerClaimed = false;
154
181
  },
155
182
  release() {
@@ -187,7 +214,7 @@ export function assignUpgradeLockWorker(jobId, nonce, worker) {
187
214
  }
188
215
  export function releaseUpgradeLockForWorker(jobId, nonce, worker) {
189
216
  const owner = loadUpgradeLockOwner();
190
- const claim = loadHandoffClaim();
217
+ const claim = loadHandoffClaim(nonce);
191
218
  if (owner.worker?.pid !== worker.pid
192
219
  || owner.worker?.processStartIdentity !== worker.processStartIdentity
193
220
  || claim?.role !== 'worker'
@@ -201,7 +228,8 @@ export function hasUpgradeLock() {
201
228
  return existsSync(getUpgradeLockPath());
202
229
  }
203
230
  export function loadUpgradeLockWorkerClaim() {
204
- const claim = loadHandoffClaim();
231
+ const owner = loadUpgradeLockOwner();
232
+ const claim = loadHandoffClaim(owner.nonce);
205
233
  return claim?.role === 'worker' ? claim.worker ?? null : null;
206
234
  }
207
235
  //# sourceMappingURL=upgrade-lock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"upgrade-lock.js","sourceRoot":"","sources":["../src/upgrade-lock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upgrade-lock.js","sourceRoot":"","sources":["../src/upgrade-lock.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.297",
3
+ "version": "0.1.299",
4
4
  "description": "AgentLink local agent CLI",
5
5
  "license": "MIT",
6
6
  "repository": {
package/worker/worker.cjs CHANGED
@@ -194,7 +194,7 @@ function assignLockWorker(job, worker) {
194
194
  ) {
195
195
  throw new Error('active upgrade lock does not belong to this job');
196
196
  }
197
- const claimPath = path.join(lockDirectory, 'handoff.claim');
197
+ const claimPath = path.join(lockDirectory, `handoff-${job.lockNonce}.claim`);
198
198
  const claimFd = fs.openSync(claimPath, 'wx', 0o600);
199
199
  try {
200
200
  fs.writeFileSync(claimFd, `${JSON.stringify({
@@ -501,7 +501,7 @@ async function startTarget(job) {
501
501
  function releaseLock(job, worker) {
502
502
  const lockDirectory = path.join(job.dataRoot, 'upgrades', 'active.lock');
503
503
  const owner = loadJson(path.join(lockDirectory, 'owner.json'));
504
- const claim = loadJson(path.join(lockDirectory, 'handoff.claim'));
504
+ const claim = loadJson(path.join(lockDirectory, `handoff-${job.lockNonce}.claim`));
505
505
  if (
506
506
  owner.jobId !== job.jobId
507
507
  || owner.nonce !== job.lockNonce