@agentteams/runner 0.0.116 → 0.0.118

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/api-client.js +10 -1
  2. package/dist/api-client.js.map +1 -1
  3. package/dist/commands/init.js +2 -1
  4. package/dist/commands/init.js.map +1 -1
  5. package/dist/executable.js +25 -14
  6. package/dist/executable.js.map +1 -1
  7. package/dist/executable.test.js +38 -1
  8. package/dist/executable.test.js.map +1 -1
  9. package/dist/help.d.ts +16 -0
  10. package/dist/help.js +35 -0
  11. package/dist/help.js.map +1 -0
  12. package/dist/help.test.d.ts +1 -0
  13. package/dist/help.test.js +42 -0
  14. package/dist/help.test.js.map +1 -0
  15. package/dist/index.js +2 -18
  16. package/dist/index.js.map +1 -1
  17. package/dist/utils/auto-update.js +84 -35
  18. package/dist/utils/auto-update.js.map +1 -1
  19. package/dist/utils/auto-update.test.js +269 -0
  20. package/dist/utils/auto-update.test.js.map +1 -1
  21. package/dist/utils/convention-sync.d.ts +2 -0
  22. package/dist/utils/convention-sync.js +11 -4
  23. package/dist/utils/convention-sync.js.map +1 -1
  24. package/dist/utils/convention-sync.test.js +37 -2
  25. package/dist/utils/convention-sync.test.js.map +1 -1
  26. package/dist/utils/model-enumerator.d.ts +6 -2
  27. package/dist/utils/model-enumerator.js +19 -5
  28. package/dist/utils/model-enumerator.js.map +1 -1
  29. package/dist/utils/model-enumerator.test.js +79 -4
  30. package/dist/utils/model-enumerator.test.js.map +1 -1
  31. package/dist/utils/npm-global-permission.js +4 -3
  32. package/dist/utils/npm-global-permission.js.map +1 -1
  33. package/dist/utils/npm-install-error.d.ts +9 -1
  34. package/dist/utils/npm-install-error.js +27 -5
  35. package/dist/utils/npm-install-error.js.map +1 -1
  36. package/dist/utils/npm-install-error.test.js +23 -1
  37. package/dist/utils/npm-install-error.test.js.map +1 -1
  38. package/native/bin/win32-x64/agentrunner-launcher.exe +0 -0
  39. package/native/bin/win32-x64/manifest.json +2 -2
  40. package/package.json +3 -2
  41. package/readme.md +14 -2
@@ -1,7 +1,7 @@
1
1
  import { createRequire } from 'node:module';
2
2
  import { runExecutableSync } from '../executable.js';
3
3
  import { logger } from '../logger.js';
4
- import { classifyInstallError, describeInstallError } from './npm-install-error.js';
4
+ import { classifyInstallError, describeInstallError, requiresManualFix, } from './npm-install-error.js';
5
5
  import { canWriteGlobalNpmRoot as canWriteGlobalNpmRootDefault } from './npm-global-permission.js';
6
6
  const require = createRequire(import.meta.url);
7
7
  const packageJson = require('../../package.json');
@@ -9,23 +9,36 @@ const CLI_PACKAGE = '@agentteams/cli';
9
9
  const RUNNER_PACKAGE = '@agentteams/runner';
10
10
  const COOLDOWN_MS = 60 * 60 * 1000; // 1시간
11
11
  /**
12
- * 권한 차단은 사용자가 직접 고치기 전에는 절대 풀리지 않는다. 1시간마다 같은 EACCES를 반복해도
13
- * 얻는 것이 없으므로 대상 버전이 바뀔 때까지 24시간 대기한다.
12
+ * 권한 차단·전역 bin 이름 충돌은 사용자가 직접 고치기 전에는 절대 풀리지 않는다. 1시간마다 같은
13
+ * EACCES/EEXIST를 반복해도 얻는 것이 없으므로 대상 버전이 바뀔 때까지 24시간 대기한다.
14
14
  */
15
- const PERMISSION_BLOCKED_COOLDOWN_MS = 24 * 60 * 60 * 1000;
15
+ const MANUAL_FIX_COOLDOWN_MS = 24 * 60 * 60 * 1000;
16
+ /**
17
+ * 설치 실패가 아직 해소되지 않았을 때 "이미 최신인지"만 확인하는 프로브 주기.
18
+ * 설치 백오프(권한 실패 시 24시간)와 분리해, 사용자가 CLI를 직접 설치하면 최대 이 주기 안에
19
+ * 차단 상태가 자가 해제되게 한다. `npm list -g`는 동기 실행이라 폴링마다 돌리지는 않는다.
20
+ */
21
+ const FAILURE_PROBE_COOLDOWN_MS = 5 * 60 * 1000;
16
22
  const PERMISSION_BLOCKED_HINT = 'AgentRunner cannot write to the global npm directory, so auto-update is blocked. ' +
17
23
  'Install the update manually with elevated permissions, or switch npm to a user-level prefix.';
18
24
  let lastSuccessfulRunnerVersion = null;
19
25
  /** 패키지별 마지막 설치 시도. 대상 버전이 바뀌면 쿨다운과 무관하게 즉시 다시 시도한다. */
20
26
  const lastUpdateAttempts = new Map();
21
- /** 권한 차단으로 판정된 (package, version). 대상 버전이 바뀌면 즉시 재시도할 수 있게 버전을 함께 들고 있는다. */
22
- const permissionBlockedVersions = new Map();
27
+ /** 사용자 조치 전까지 회복 불가로 판정된 (package, version). 대상 버전이 바뀌면 즉시 재시도할 수 있게 버전을 함께 들고 있는다. */
28
+ const manualFixBlockedVersions = new Map();
23
29
  /** 아직 서버에 전달하지 못한 실패 보고. 설치 백오프와 무관하게 매 폴링마다 재시도한다. */
24
30
  const pendingFailureReports = new Map();
25
31
  /** 보고가 성공한 실패 식별자. 서버 중복 계약과 같은 (version, reason) 조합만 억제한다. */
26
32
  const reportedFailures = new Map();
27
33
  /** 아직 서버에 전달하지 못한 설치 성공 (package → version). 매 폴링마다 재시도한다. */
28
34
  const pendingSuccessReports = new Map();
35
+ /**
36
+ * 이미 최신인 패키지를 성공으로 보고한 (package → version).
37
+ * 프로세스당 같은 조합을 한 번만 큐에 넣어 폴링마다 재보고하지 않는다.
38
+ */
39
+ const upToDateReported = new Map();
40
+ /** 설치 백오프와 무관하게 돌린 "이미 최신인지" 프로브의 마지막 실행 시각(package → at). */
41
+ const lastFailureProbes = new Map();
29
42
  /** 서버의 중복 억제 계약과 동일하게 (version, reason)까지 봐야 사유 전환이 다시 보고된다. */
30
43
  const failureIdentity = (input) => `${input.version}::${input.reason}`;
31
44
  const getCurrentRunnerVersion = () => packageJson.version ?? '0.0.0';
@@ -47,21 +60,35 @@ const needsUpdate = (currentVersion, latestVersion) => {
47
60
  const installPackage = (packageName, version, deps) => {
48
61
  deps.runExecutableSync('npm', ['install', '-g', `${packageName}@${version}`]);
49
62
  };
50
- /** 권한 차단으로 백오프 중인지 판정한다. 대상 버전이 바뀌었으면 백오프를 해제한다. */
51
- const isPermissionBlocked = (pkg, targetVersion) => permissionBlockedVersions.get(pkg) === targetVersion;
63
+ /** 사용자 조치 대기로 백오프 중인지 판정한다. 대상 버전이 바뀌었으면 백오프를 해제한다. */
64
+ const isManualFixBlocked = (pkg, targetVersion) => manualFixBlockedVersions.get(pkg) === targetVersion;
52
65
  /**
53
66
  * 설치를 시도해도 되는 시점인지 판정한다.
54
67
  *
55
- * 대상 버전이 직전 시도와 다르면 쿨다운(권한 차단 24시간 포함)을 무시하고 즉시 시도한다.
68
+ * 대상 버전이 직전 시도와 다르면 쿨다운(사용자 조치 대기 24시간 포함)을 무시하고 즉시 시도한다.
56
69
  * 권한·패키징 문제를 고친 새 버전이 나왔는데 최대 1시간을 기다리는 일을 막는다.
57
70
  */
58
71
  const shouldAttemptInstall = (pkg, targetVersion, now) => {
59
72
  const lastAttempt = lastUpdateAttempts.get(pkg);
60
73
  if (!lastAttempt || lastAttempt.targetVersion !== targetVersion)
61
74
  return true;
62
- const cooldown = isPermissionBlocked(pkg, targetVersion) ? PERMISSION_BLOCKED_COOLDOWN_MS : COOLDOWN_MS;
75
+ const cooldown = isManualFixBlocked(pkg, targetVersion) ? MANUAL_FIX_COOLDOWN_MS : COOLDOWN_MS;
63
76
  return now - lastAttempt.at >= cooldown;
64
77
  };
78
+ /** 서버에 남아 있는 차단 상태를 아직 해제하지 못했는지 판정한다. */
79
+ const hasUnresolvedFailure = (pkg) => manualFixBlockedVersions.has(pkg) || pendingFailureReports.has(pkg) || reportedFailures.has(pkg);
80
+ /**
81
+ * 설치 백오프에 걸려 있어도 "이미 최신인지"만 확인해도 되는 시점인지 판정한다.
82
+ *
83
+ * 사용자가 안내대로 CLI를 직접 설치하면 설치 쿨다운(권한 실패 시 24시간)이 끝날 때까지 기다리지 않고
84
+ * 자가 해제되어야 한다. 반대로 차단 상태가 없으면 프로브할 이유가 없으므로 설치 주기만 따른다.
85
+ */
86
+ const shouldProbeWhileBlocked = (pkg, now) => {
87
+ if (!hasUnresolvedFailure(pkg))
88
+ return false;
89
+ const lastProbe = lastFailureProbes.get(pkg);
90
+ return lastProbe === undefined || now - lastProbe >= FAILURE_PROBE_COOLDOWN_MS;
91
+ };
65
92
  /** 프리플라이트가 판정 불가로 throw하면 fail-open — 기존처럼 설치를 시도한다. */
66
93
  const resolveCanWriteGlobalNpmRoot = (deps) => {
67
94
  const check = deps.canWriteGlobalNpmRoot ?? canWriteGlobalNpmRootDefault;
@@ -82,15 +109,18 @@ export const maybeAutoUpdate = async (meta, deps = {}) => {
82
109
  let runnerUpdated = false;
83
110
  /**
84
111
  * 실패를 미보고 큐에 넣는다. 전송은 설치 백오프와 분리된 `flushPendingReports`가 담당하므로,
85
- * 24시간 권한 백오프에 걸린 뒤에도 다음 폴링마다 보고만 재시도된다.
112
+ * 24시간 백오프에 걸린 뒤에도 다음 폴링마다 보고만 재시도된다.
113
+ *
114
+ * `blockedUntilManualFix`는 서버로 보내는 `reason`과 별개다 — bin 이름 충돌은 `UNKNOWN`으로
115
+ * 보고되지만 사용자가 충돌 파일을 치우기 전까지는 재시도해도 소용없으므로 백오프 대상이다.
86
116
  */
87
- const recordFailure = (input) => {
88
- if (input.reason === 'PERMISSION_DENIED') {
89
- const alreadyBlocked = permissionBlockedVersions.get(input.package) === input.version;
90
- permissionBlockedVersions.set(input.package, input.version);
117
+ const recordFailure = (input, blockedUntilManualFix) => {
118
+ if (blockedUntilManualFix) {
119
+ const alreadyBlocked = manualFixBlockedVersions.get(input.package) === input.version;
120
+ manualFixBlockedVersions.set(input.package, input.version);
91
121
  if (!alreadyBlocked) {
92
122
  // 로그 폭주를 막기 위해 버전당 1회만 조치 안내를 남긴다.
93
- resolvedLogger.warn(PERMISSION_BLOCKED_HINT, {
123
+ resolvedLogger.warn(input.reason === 'PERMISSION_DENIED' ? PERMISSION_BLOCKED_HINT : input.message, {
94
124
  package: input.package,
95
125
  targetVersion: input.version,
96
126
  });
@@ -103,10 +133,11 @@ export const maybeAutoUpdate = async (meta, deps = {}) => {
103
133
  };
104
134
  /** 설치 성공을 미보고 큐에 넣는다. 서버는 이 보고로 해당 패키지의 실패 상태를 해제한다. */
105
135
  const recordSuccess = (pkg, version) => {
106
- permissionBlockedVersions.delete(pkg);
136
+ manualFixBlockedVersions.delete(pkg);
107
137
  pendingFailureReports.delete(pkg);
108
138
  reportedFailures.delete(pkg);
109
139
  pendingSuccessReports.set(pkg, version);
140
+ upToDateReported.set(pkg, version);
110
141
  };
111
142
  /**
112
143
  * 미보고 상태를 서버로 흘려보낸다. 설치 쿨다운과 무관하게 폴링마다 1회씩 재시도하고,
@@ -154,7 +185,7 @@ export const maybeAutoUpdate = async (meta, deps = {}) => {
154
185
  version,
155
186
  reason: 'PERMISSION_DENIED',
156
187
  message: PERMISSION_BLOCKED_HINT,
157
- });
188
+ }, true);
158
189
  return false;
159
190
  }
160
191
  try {
@@ -173,27 +204,43 @@ export const maybeAutoUpdate = async (meta, deps = {}) => {
173
204
  version,
174
205
  reason,
175
206
  message: describeInstallError(error),
176
- });
207
+ }, requiresManualFix(error));
177
208
  return false;
178
209
  }
179
210
  };
180
211
  // CLI 업데이트
181
- if (meta.cliLatestVersion && shouldAttemptInstall('cli', meta.cliLatestVersion, now)) {
182
- lastUpdateAttempts.set('cli', { at: now, targetVersion: meta.cliLatestVersion });
183
- const currentCliVersion = getInstalledCliVersion({
184
- runExecutableSync: resolvedRunExecutableSync,
185
- logger: resolvedLogger,
186
- });
187
- if (needsUpdate(currentCliVersion, meta.cliLatestVersion)) {
188
- resolvedLogger.info('Auto-updating CLI', {
189
- currentVersion: currentCliVersion,
190
- targetVersion: meta.cliLatestVersion,
212
+ if (meta.cliLatestVersion) {
213
+ const canInstallCli = shouldAttemptInstall('cli', meta.cliLatestVersion, now);
214
+ // 설치가 백오프에 걸려 있어도 차단 상태가 남아 있으면 최신 여부 확인만 따로 돌린다.
215
+ const probeOnly = !canInstallCli && shouldProbeWhileBlocked('cli', now);
216
+ if (canInstallCli || probeOnly) {
217
+ if (canInstallCli) {
218
+ lastUpdateAttempts.set('cli', { at: now, targetVersion: meta.cliLatestVersion });
219
+ }
220
+ lastFailureProbes.set('cli', now);
221
+ const currentCliVersion = getInstalledCliVersion({
222
+ runExecutableSync: resolvedRunExecutableSync,
223
+ logger: resolvedLogger,
191
224
  });
192
- if (tryInstall('cli', CLI_PACKAGE, meta.cliLatestVersion)) {
193
- cliUpdated = true;
194
- resolvedLogger.info('CLI auto-update completed', {
195
- version: meta.cliLatestVersion,
196
- });
225
+ if (needsUpdate(currentCliVersion, meta.cliLatestVersion)) {
226
+ if (canInstallCli) {
227
+ resolvedLogger.info('Auto-updating CLI', {
228
+ currentVersion: currentCliVersion,
229
+ targetVersion: meta.cliLatestVersion,
230
+ });
231
+ if (tryInstall('cli', CLI_PACKAGE, meta.cliLatestVersion)) {
232
+ cliUpdated = true;
233
+ resolvedLogger.info('CLI auto-update completed', {
234
+ version: meta.cliLatestVersion,
235
+ });
236
+ }
237
+ }
238
+ }
239
+ else if (currentCliVersion !== null && upToDateReported.get('cli') !== meta.cliLatestVersion) {
240
+ // 사용자가 직접 최신 CLI를 깐 경우 설치를 건너뛰므로, 성공 보고를 1회 보내 서버의
241
+ // stale 실패 상태를 자가 해제한다. 로컬 실패 상태도 함께 지워 프로브를 수렴시킨다.
242
+ // runner 패키지는 pendingVersion을 덮어쓰므로 같은 no-op 보고를 하지 않는다.
243
+ recordSuccess('cli', meta.cliLatestVersion);
197
244
  }
198
245
  }
199
246
  }
@@ -224,9 +271,11 @@ export const maybeAutoUpdate = async (meta, deps = {}) => {
224
271
  export const resetAutoUpdateState = () => {
225
272
  lastSuccessfulRunnerVersion = null;
226
273
  lastUpdateAttempts.clear();
227
- permissionBlockedVersions.clear();
274
+ manualFixBlockedVersions.clear();
228
275
  pendingFailureReports.clear();
229
276
  reportedFailures.clear();
230
277
  pendingSuccessReports.clear();
278
+ upToDateReported.clear();
279
+ lastFailureProbes.clear();
231
280
  };
232
281
  //# sourceMappingURL=auto-update.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auto-update.js","sourceRoot":"","sources":["../../src/utils/auto-update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto-update.js","sourceRoot":"","sources":["../../src/utils/auto-update.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,9 @@
1
+ import { createRequire } from 'node:module';
1
2
  import { test } from 'node:test';
2
3
  import assert from 'node:assert/strict';
3
4
  import { maybeAutoUpdate, resetAutoUpdateState } from './auto-update.js';
5
+ const require = createRequire(import.meta.url);
6
+ const installedRunnerVersion = require('../../package.json').version;
4
7
  test('maybeAutoUpdate calls onUpdateSucceeded after successful install', async () => {
5
8
  resetAutoUpdateState();
6
9
  let installCalled = false;
@@ -75,6 +78,12 @@ const EACCES_INSTALL_ERROR_MESSAGE = [
75
78
  'npm ERR! path /usr/local/lib/node_modules/@agentteams/runner',
76
79
  'npm ERR! errno -13',
77
80
  ].join('\n');
81
+ const EEXIST_INSTALL_ERROR_MESSAGE = [
82
+ 'Command failed: /usr/bin/npm install -g @agentteams/runner@99.9.9',
83
+ 'npm ERR! code EEXIST',
84
+ 'npm ERR! path /usr/local/bin/agr',
85
+ 'npm ERR! File exists: /usr/local/bin/agr',
86
+ ].join('\n');
78
87
  test('maybeAutoUpdate reports EACCES install failure as PERMISSION_DENIED exactly once', async () => {
79
88
  resetAutoUpdateState();
80
89
  const failures = [];
@@ -142,6 +151,50 @@ test('maybeAutoUpdate does not retry a permission-blocked install within 24 hour
142
151
  assert.equal(installCount, 1, 'should not retry install within the permission-blocked backoff');
143
152
  assert.equal(failureCount, 1, 'should not report the same failure again');
144
153
  });
154
+ test('maybeAutoUpdate does not retry a global bin conflict within 24 hours', async () => {
155
+ resetAutoUpdateState();
156
+ let installCount = 0;
157
+ const failures = [];
158
+ const warnings = [];
159
+ const deps = {
160
+ runExecutableSync: (name, args) => {
161
+ if (name === 'npm' && args[0] === 'install') {
162
+ installCount++;
163
+ throw new Error(EEXIST_INSTALL_ERROR_MESSAGE);
164
+ }
165
+ return '';
166
+ },
167
+ logger: {
168
+ info: () => { },
169
+ warn: (message) => {
170
+ warnings.push(message);
171
+ },
172
+ error: () => { },
173
+ },
174
+ now: () => 20000000,
175
+ canWriteGlobalNpmRoot: () => true,
176
+ onUpdateFailed: async (input) => {
177
+ failures.push(input);
178
+ },
179
+ };
180
+ const meta = {
181
+ cliLatestVersion: null,
182
+ runnerLatestVersion: '99.9.9',
183
+ };
184
+ await maybeAutoUpdate(meta, deps);
185
+ assert.equal(installCount, 1);
186
+ // 서버로 가는 reason 계약은 넓히지 않았으므로 UNKNOWN 그대로 보고한다.
187
+ assert.equal(failures[0]?.reason, 'UNKNOWN');
188
+ assert.match(failures[0]?.message ?? '', /remove or rename that file/u);
189
+ assert.equal(warnings.length, 1, 'the remediation hint should be logged once per target version');
190
+ // 1시간 쿨다운은 지났지만 사용자 조치 대기 백오프(24시간) 안이므로 재시도하지 않는다.
191
+ await maybeAutoUpdate(meta, { ...deps, now: () => 20000000 + 2 * 60 * 60 * 1000 });
192
+ assert.equal(installCount, 1, 'should not retry install within the manual-fix backoff');
193
+ assert.equal(failures.length, 1, 'should not report the same failure again');
194
+ // 24시간이 지나면 다시 시도한다 — 사용자가 충돌 파일을 치웠을 수 있다.
195
+ await maybeAutoUpdate(meta, { ...deps, now: () => 20000000 + 25 * 60 * 60 * 1000 });
196
+ assert.equal(installCount, 2, 'should retry once the manual-fix backoff elapses');
197
+ });
145
198
  test('maybeAutoUpdate RETRIES notification if it failed before', async () => {
146
199
  resetAutoUpdateState();
147
200
  let notifyCount = 0;
@@ -447,4 +500,220 @@ test('maybeAutoUpdate reports a CLI install success so the server can clear the
447
500
  await maybeAutoUpdate({ cliLatestVersion: '1.1.1', runnerLatestVersion: null }, { ...deps, canWriteGlobalNpmRoot: () => canWrite, now: () => 100000000 + 60 * 1000 });
448
501
  assert.deepEqual(successes, [{ package: 'cli', version: '1.1.1' }]);
449
502
  });
503
+ const installedCliVersion = (version) => (name, args) => {
504
+ if (name === 'npm' && args[0] === 'list') {
505
+ return JSON.stringify({ dependencies: { '@agentteams/cli': { version } } });
506
+ }
507
+ throw new Error(`unexpected command: ${name} ${args.join(' ')}`);
508
+ };
509
+ test('maybeAutoUpdate reports CLI success once when the installed version is already latest', async () => {
510
+ resetAutoUpdateState();
511
+ const successes = [];
512
+ let now = 110000000;
513
+ const deps = {
514
+ runExecutableSync: installedCliVersion('1.2.3'),
515
+ logger: {
516
+ info: () => { },
517
+ warn: () => { },
518
+ error: () => { },
519
+ },
520
+ now: () => now,
521
+ canWriteGlobalNpmRoot: () => true,
522
+ onUpdateSucceeded: async (input) => {
523
+ successes.push(input);
524
+ },
525
+ };
526
+ const meta = {
527
+ cliLatestVersion: '1.2.3',
528
+ runnerLatestVersion: null,
529
+ };
530
+ await maybeAutoUpdate(meta, deps);
531
+ await maybeAutoUpdate(meta, deps);
532
+ now += 60 * 1000;
533
+ await maybeAutoUpdate(meta, deps);
534
+ assert.deepEqual(successes, [{ package: 'cli', version: '1.2.3' }]);
535
+ });
536
+ test('maybeAutoUpdate retries the already-latest CLI success report if the first notify throws', async () => {
537
+ resetAutoUpdateState();
538
+ const successes = [];
539
+ let shouldFail = true;
540
+ const deps = {
541
+ runExecutableSync: installedCliVersion('2.0.0'),
542
+ logger: {
543
+ info: () => { },
544
+ warn: () => { },
545
+ error: () => { },
546
+ },
547
+ now: () => 120000000,
548
+ canWriteGlobalNpmRoot: () => true,
549
+ onUpdateSucceeded: async (input) => {
550
+ if (shouldFail) {
551
+ shouldFail = false;
552
+ throw new Error('Network error');
553
+ }
554
+ successes.push(input);
555
+ },
556
+ };
557
+ const meta = {
558
+ cliLatestVersion: '2.0.0',
559
+ runnerLatestVersion: null,
560
+ };
561
+ await maybeAutoUpdate(meta, deps);
562
+ assert.equal(successes.length, 0);
563
+ await maybeAutoUpdate(meta, deps);
564
+ assert.deepEqual(successes, [{ package: 'cli', version: '2.0.0' }]);
565
+ });
566
+ test('maybeAutoUpdate does not report runner success when the installed runner is already latest', async () => {
567
+ resetAutoUpdateState();
568
+ const successes = [];
569
+ const deps = {
570
+ runExecutableSync: () => {
571
+ throw new Error('runner already-latest path must not install');
572
+ },
573
+ logger: {
574
+ info: () => { },
575
+ warn: () => { },
576
+ error: () => { },
577
+ },
578
+ now: () => 130000000,
579
+ canWriteGlobalNpmRoot: () => true,
580
+ onUpdateSucceeded: async (input) => {
581
+ successes.push(input);
582
+ },
583
+ };
584
+ await maybeAutoUpdate({ cliLatestVersion: null, runnerLatestVersion: installedRunnerVersion }, deps);
585
+ assert.deepEqual(successes, []);
586
+ });
587
+ test('maybeAutoUpdate does not report CLI success when the installed version cannot be read', async () => {
588
+ resetAutoUpdateState();
589
+ const successes = [];
590
+ const deps = {
591
+ runExecutableSync: () => {
592
+ throw new Error('npm list failed');
593
+ },
594
+ logger: {
595
+ info: () => { },
596
+ warn: () => { },
597
+ error: () => { },
598
+ },
599
+ now: () => 140000000,
600
+ canWriteGlobalNpmRoot: () => true,
601
+ onUpdateSucceeded: async (input) => {
602
+ successes.push(input);
603
+ },
604
+ };
605
+ await maybeAutoUpdate({ cliLatestVersion: '3.0.0', runnerLatestVersion: null }, deps);
606
+ assert.deepEqual(successes, []);
607
+ });
608
+ test('resetAutoUpdateState allows another already-latest CLI success report', async () => {
609
+ resetAutoUpdateState();
610
+ const successes = [];
611
+ const deps = {
612
+ runExecutableSync: installedCliVersion('4.0.0'),
613
+ logger: {
614
+ info: () => { },
615
+ warn: () => { },
616
+ error: () => { },
617
+ },
618
+ now: () => 150000000,
619
+ canWriteGlobalNpmRoot: () => true,
620
+ onUpdateSucceeded: async (input) => {
621
+ successes.push(input);
622
+ },
623
+ };
624
+ const meta = {
625
+ cliLatestVersion: '4.0.0',
626
+ runnerLatestVersion: null,
627
+ };
628
+ await maybeAutoUpdate(meta, deps);
629
+ assert.equal(successes.length, 1);
630
+ resetAutoUpdateState();
631
+ await maybeAutoUpdate(meta, deps);
632
+ assert.deepEqual(successes, [
633
+ { package: 'cli', version: '4.0.0' },
634
+ { package: 'cli', version: '4.0.0' },
635
+ ]);
636
+ });
637
+ test('maybeAutoUpdate clears a permission-blocked CLI failure once the user installs it manually', async () => {
638
+ resetAutoUpdateState();
639
+ const successes = [];
640
+ const failures = [];
641
+ let installedCli = '1.0.0';
642
+ let installCount = 0;
643
+ let now = 200000000;
644
+ const deps = {
645
+ runExecutableSync: (name, args) => {
646
+ if (name === 'npm' && args[0] === 'list') {
647
+ return JSON.stringify({ dependencies: { '@agentteams/cli': { version: installedCli } } });
648
+ }
649
+ if (name === 'npm' && args[0] === 'install') {
650
+ installCount++;
651
+ throw new Error(EACCES_INSTALL_ERROR_MESSAGE);
652
+ }
653
+ throw new Error(`unexpected command: ${name} ${args.join(' ')}`);
654
+ },
655
+ logger: {
656
+ info: () => { },
657
+ warn: () => { },
658
+ error: () => { },
659
+ },
660
+ now: () => now,
661
+ canWriteGlobalNpmRoot: () => true,
662
+ onUpdateSucceeded: async (input) => {
663
+ successes.push(input);
664
+ },
665
+ onUpdateFailed: async (input) => {
666
+ failures.push({ package: input.package, version: input.version, reason: input.reason });
667
+ },
668
+ };
669
+ const meta = { cliLatestVersion: '3.0.0', runnerLatestVersion: null };
670
+ await maybeAutoUpdate(meta, deps);
671
+ assert.equal(installCount, 1);
672
+ assert.deepEqual(failures, [{ package: 'cli', version: '3.0.0', reason: 'PERMISSION_DENIED' }]);
673
+ // 사용자가 안내대로 직접 설치했다. 설치는 24시간 백오프에 갇혀 있지만 최신 여부 프로브는 따로 돌아야 한다.
674
+ installedCli = '3.0.0';
675
+ now += 60 * 1000;
676
+ await maybeAutoUpdate(meta, deps);
677
+ assert.deepEqual(successes, [], '프로브 주기(5분) 안에서는 다시 확인하지 않는다');
678
+ now += 5 * 60 * 1000;
679
+ await maybeAutoUpdate(meta, deps);
680
+ assert.equal(installCount, 1, '자가 해제 프로브가 설치 백오프를 깨뜨려서는 안 된다');
681
+ assert.deepEqual(successes, [{ package: 'cli', version: '3.0.0' }], '24시간 백오프를 기다리지 않고 성공 보고로 서버의 차단 상태를 해제해야 한다');
682
+ // 해제 이후에는 차단 상태가 없으므로 프로브도 멈추고 같은 보고를 반복하지 않는다.
683
+ now += 10 * 60 * 1000;
684
+ await maybeAutoUpdate(meta, deps);
685
+ assert.deepEqual(successes, [{ package: 'cli', version: '3.0.0' }]);
686
+ });
687
+ test('maybeAutoUpdate does not probe the installed CLI version while no failure is pending', async () => {
688
+ resetAutoUpdateState();
689
+ let listCount = 0;
690
+ let now = 210000000;
691
+ const deps = {
692
+ runExecutableSync: (name, args) => {
693
+ if (name === 'npm' && args[0] === 'list') {
694
+ listCount++;
695
+ return JSON.stringify({ dependencies: { '@agentteams/cli': { version: '1.0.0' } } });
696
+ }
697
+ if (name === 'npm' && args[0] === 'install') {
698
+ return '';
699
+ }
700
+ throw new Error(`unexpected command: ${name} ${args.join(' ')}`);
701
+ },
702
+ logger: {
703
+ info: () => { },
704
+ warn: () => { },
705
+ error: () => { },
706
+ },
707
+ now: () => now,
708
+ canWriteGlobalNpmRoot: () => true,
709
+ onUpdateSucceeded: async () => { },
710
+ };
711
+ const meta = { cliLatestVersion: '3.0.0', runnerLatestVersion: null };
712
+ await maybeAutoUpdate(meta, deps);
713
+ assert.equal(listCount, 1);
714
+ // 설치가 성공한 뒤에는 차단 상태가 없다 — 설치 쿨다운(1시간) 밖의 프로브가 추가로 돌면 안 된다.
715
+ now += 30 * 60 * 1000;
716
+ await maybeAutoUpdate(meta, deps);
717
+ assert.equal(listCount, 1, '차단 상태가 없으면 설치 주기 밖에서 npm list를 돌리지 않는다');
718
+ });
450
719
  //# sourceMappingURL=auto-update.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auto-update.test.js","sourceRoot":"","sources":["../../src/utils/auto-update.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto-update.test.js","sourceRoot":"","sources":["../../src/utils/auto-update.test.ts"],"names":[],"mappings":"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"}