@agentteams/runner 0.0.98 → 0.0.100
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.
- package/dist/handlers/trigger-handler.d.ts +2 -0
- package/dist/handlers/trigger-handler.js +36 -5
- package/dist/handlers/trigger-handler.js.map +1 -1
- package/dist/handlers/trigger-handler.test.js +298 -0
- package/dist/handlers/trigger-handler.test.js.map +1 -1
- package/dist/runners/capabilities.js +1 -0
- package/dist/runners/capabilities.js.map +1 -1
- package/dist/runners/capabilities.test.js +12 -1
- package/dist/runners/capabilities.test.js.map +1 -1
- package/dist/runners/index.js +3 -0
- package/dist/runners/index.js.map +1 -1
- package/dist/runners/index.test.js +2 -0
- package/dist/runners/index.test.js.map +1 -1
- package/dist/runners/kimi-cli.d.ts +28 -0
- package/dist/runners/kimi-cli.js +257 -0
- package/dist/runners/kimi-cli.js.map +1 -0
- package/dist/runners/kimi-cli.test.d.ts +1 -0
- package/dist/runners/kimi-cli.test.js +118 -0
- package/dist/runners/kimi-cli.test.js.map +1 -0
- package/dist/types.d.ts +2 -0
- package/dist/utils/resolve-member-repo.d.ts +39 -0
- package/dist/utils/resolve-member-repo.js +180 -0
- package/dist/utils/resolve-member-repo.js.map +1 -0
- package/dist/utils/resolve-member-repo.test.d.ts +1 -0
- package/dist/utils/resolve-member-repo.test.js +201 -0
- package/dist/utils/resolve-member-repo.test.js.map +1 -0
- package/package.json +2 -2
|
@@ -4,6 +4,7 @@ import { createRunnerFactory } from '../runners/index.js';
|
|
|
4
4
|
import { TriggerLogReporter } from '../runners/log-reporter.js';
|
|
5
5
|
import { resolveRunnerHistoryPaths } from '../utils/runner-history.js';
|
|
6
6
|
import { isGitRepo, createWorktree } from '../utils/git-worktree.js';
|
|
7
|
+
import { resolveWorktreeAuthPath } from '../utils/resolve-member-repo.js';
|
|
7
8
|
type TriggerHandlerOptions = {
|
|
8
9
|
config: RuntimeConfig;
|
|
9
10
|
client: DaemonApiClient;
|
|
@@ -19,6 +20,7 @@ type TriggerHandlerDependencies = {
|
|
|
19
20
|
createLogReporter?: (client: DaemonApiClient, triggerId: string) => ReporterLike;
|
|
20
21
|
isGitRepo?: typeof isGitRepo;
|
|
21
22
|
createWorktree?: typeof createWorktree;
|
|
23
|
+
resolveWorktreeAuthPath?: typeof resolveWorktreeAuthPath;
|
|
22
24
|
readHistoryFile?: ReadHistoryFile;
|
|
23
25
|
writeHistoryFile?: WriteHistoryFile;
|
|
24
26
|
fetchAttachmentFile?: FetchAttachmentFile;
|
|
@@ -6,6 +6,7 @@ import { dirname, isAbsolute, join, relative, resolve, sep } from 'node:path';
|
|
|
6
6
|
import { homedir } from 'node:os';
|
|
7
7
|
import { resolveRunnerHistoryPaths } from '../utils/runner-history.js';
|
|
8
8
|
import { isGitRepo, createWorktree } from '../utils/git-worktree.js';
|
|
9
|
+
import { resolveWorktreeAuthPath } from '../utils/resolve-member-repo.js';
|
|
9
10
|
import { extractResultTextFromStreamJson } from '../runners/claude-code.js';
|
|
10
11
|
import { runOriginIssueSafeguard } from '../utils/origin-issue-safeguard.js';
|
|
11
12
|
import { describeUnsupportedRunnerOptions, runnerSupportsEffort, runnerSupportsFastMode, } from '../runners/capabilities.js';
|
|
@@ -17,6 +18,7 @@ export const createTriggerHandler = (options, dependencies = {}) => {
|
|
|
17
18
|
const createRunner = (dependencies.createRunnerFactory ?? createRunnerFactory)(config.runnerCmd);
|
|
18
19
|
const checkIsGitRepo = dependencies.isGitRepo ?? isGitRepo;
|
|
19
20
|
const createRunnerWorktree = dependencies.createWorktree ?? createWorktree;
|
|
21
|
+
const resolveMemberAuthPath = dependencies.resolveWorktreeAuthPath ?? resolveWorktreeAuthPath;
|
|
20
22
|
const createLogReporter = dependencies.createLogReporter ??
|
|
21
23
|
((apiClient, triggerId) => new TriggerLogReporter(apiClient, triggerId));
|
|
22
24
|
const readHistoryFile = dependencies.readHistoryFile ?? ((path, encoding) => readFile(path, encoding));
|
|
@@ -263,17 +265,46 @@ export const createTriggerHandler = (options, dependencies = {}) => {
|
|
|
263
265
|
await reportWorktreeFailure(trigger.id, reason, activeLogReporter);
|
|
264
266
|
throw new Error(reason);
|
|
265
267
|
}
|
|
268
|
+
let worktreeRepoPath = runtime.authPath;
|
|
266
269
|
if (!checkIsGitRepo(runtime.authPath)) {
|
|
267
|
-
|
|
268
|
-
|
|
270
|
+
// 구버전 API는 repositoryRemoteUrl 필드 자체가 없다(undefined). 그 경우
|
|
271
|
+
// 멤버 repo 해석을 시도하지 않고 기존 실패 동작을 그대로 유지한다.
|
|
272
|
+
if (runtime.repositoryRemoteUrl === undefined) {
|
|
273
|
+
const reason = `Not a git repository: ${runtime.authPath}`;
|
|
274
|
+
logger.warn('Worktree requested but authPath is not a git repo', {
|
|
275
|
+
triggerId: trigger.id,
|
|
276
|
+
authPath: runtime.authPath,
|
|
277
|
+
});
|
|
278
|
+
await reportWorktreeFailure(trigger.id, reason, activeLogReporter);
|
|
279
|
+
throw new Error(reason);
|
|
280
|
+
}
|
|
281
|
+
const resolution = resolveMemberAuthPath(runtime.authPath, runtime.repositoryRemoteUrl);
|
|
282
|
+
if ('error' in resolution) {
|
|
283
|
+
logger.warn('Worktree requested but member repository resolution failed', {
|
|
284
|
+
triggerId: trigger.id,
|
|
285
|
+
authPath: runtime.authPath,
|
|
286
|
+
repositoryId: runtime.repositoryId ?? null,
|
|
287
|
+
});
|
|
288
|
+
await reportWorktreeFailure(trigger.id, resolution.error, activeLogReporter);
|
|
289
|
+
throw new Error(resolution.error);
|
|
290
|
+
}
|
|
291
|
+
worktreeRepoPath = resolution.path;
|
|
292
|
+
// 제거 lifecycle 계약: poller는 knownAuthPaths의 각 경로에 resolveWorktreePath를
|
|
293
|
+
// 적용해 제거 대상을 찾으므로, 워크트리가 실제로 생성되는 멤버 repo 경로도
|
|
294
|
+
// 등록해야 한다. 비-git 루트만 등록하면 제거가 경로를 못 찾은 채 REMOVED로
|
|
295
|
+
// 보고되어 워크트리와 worktree/* 브랜치가 영구히 남는다.
|
|
296
|
+
if (onAuthPathDiscovered) {
|
|
297
|
+
onAuthPathDiscovered(worktreeRepoPath);
|
|
298
|
+
}
|
|
299
|
+
activeLogReporter.append('INFO', `Resolved member repository ${worktreeRepoPath} for worktree creation.`);
|
|
300
|
+
logger.info('Resolved member repository for worktree', {
|
|
269
301
|
triggerId: trigger.id,
|
|
270
302
|
authPath: runtime.authPath,
|
|
303
|
+
memberRepoPath: worktreeRepoPath,
|
|
271
304
|
});
|
|
272
|
-
await reportWorktreeFailure(trigger.id, reason, activeLogReporter);
|
|
273
|
-
throw new Error(reason);
|
|
274
305
|
}
|
|
275
306
|
try {
|
|
276
|
-
const worktreePath = createRunnerWorktree(
|
|
307
|
+
const worktreePath = createRunnerWorktree(worktreeRepoPath, {
|
|
277
308
|
worktreeId: runtime.worktreeId ?? trigger.id,
|
|
278
309
|
baseBranch: runtime.baseBranch,
|
|
279
310
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trigger-handler.js","sourceRoot":"","sources":["../../src/handlers/trigger-handler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"trigger-handler.js","sourceRoot":"","sources":["../../src/handlers/trigger-handler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAC9E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EACL,gCAAgC,EAChC,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,4BAA4B,CAAC;AAEpC,SAAS,oBAAoB,CAAC,GAAW;IACvC,OAAO,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;AACxC,CAAC;AA8BD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,OAA8B,EAAE,eAA2C,EAAE,EAAE,EAAE;IACpH,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC;IACzD,MAAM,YAAY,GAAG,CAAC,YAAY,CAAC,mBAAmB,IAAI,mBAAmB,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACjG,MAAM,cAAc,GAAG,YAAY,CAAC,SAAS,IAAI,SAAS,CAAC;IAC3D,MAAM,oBAAoB,GAAG,YAAY,CAAC,cAAc,IAAI,cAAc,CAAC;IAC3E,MAAM,qBAAqB,GAAG,YAAY,CAAC,uBAAuB,IAAI,uBAAuB,CAAC;IAC9F,MAAM,iBAAiB,GACrB,YAAY,CAAC,iBAAiB;QAC9B,CAAC,CAAC,SAA0B,EAAE,SAAiB,EAAgB,EAAE,CAAC,IAAI,kBAAkB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;IAClH,MAAM,eAAe,GACnB,YAAY,CAAC,eAAe,IAAI,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;IACjF,MAAM,gBAAgB,GACpB,YAAY,CAAC,gBAAgB;QAC7B,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YACvB,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,MAAM,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,MAAM,mBAAmB,GACvB,YAAY,CAAC,mBAAmB;QAChC,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;YACrB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,CAAC;YAC1C,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;YACrE,CAAC;YACD,OAAO,IAAI,UAAU,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,MAAM,yBAAyB,GAC7B,YAAY,CAAC,yBAAyB;QACtC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YACd,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,MAAM,mBAAmB,GAAG,YAAY,CAAC,yBAAyB,IAAI,yBAAyB,CAAC;IAChG,MAAM,gBAAgB,GAAG,MAAM,CAAC;IAChC,MAAM,uBAAuB,GAAG,IAAI,CAAC;IACrC,MAAM,aAAa,GAAG,YAAY,CAAC,aAAa,IAAI,MAAM,CAAC,WAAW,CAAC;IACvE,MAAM,eAAe,GAAG,YAAY,CAAC,eAAe,IAAI,MAAM,CAAC,aAAa,CAAC;IAC7E,MAAM,oBAAoB,GAAG,YAAY,CAAC,oBAAoB,IAAI,IAAI,CAAC;IACvE,MAAM,YAAY,GAAG,CAAC,OAAe,EAAU,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACjF,MAAM,6BAA6B,GAAG,sCAAsC,CAAC;IAC7E,MAAM,4BAA4B,GAAG,qCAAqC,CAAC;IAE3E,oFAAoF;IACpF,gFAAgF;IAChF,gFAAgF;IAChF,MAAM,8BAA8B,GAAG,iCAAiC,CAAC;IACzE,MAAM,+BAA+B,GAAG,kCAAkC,CAAC;IAE3E,MAAM,6BAA6B,GAAG,CAAC,QAAgB,EAA6C,EAAE;QACpG,IAAI,8BAA8B,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;QACzC,CAAC;QACD,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,GAAG,+BAA+B,CAAC,MAAM,CAAC,CAAC;QAC/F,OAAO,EAAE,QAAQ,EAAE,GAAG,SAAS,GAAG,+BAA+B,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAC1F,CAAC,CAAC;IAEF,MAAM,0BAA0B,GAAG,CAAC,QAAgB,EAAU,EAAE;QAC9D,MAAM,SAAS,GAAG,QAAQ;aACvB,SAAS,CAAC,MAAM,CAAC;aACjB,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC;aAC1B,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;aACnB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;aACvB,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;aAClB,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACjB,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC;IACzD,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,CAAC,aAAqB,EAAE,UAAkB,EAAQ,EAAE;QAChF,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;QAC3E,IACE,YAAY,KAAK,EAAE;YACnB,CAAC,YAAY,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,EAC5F,CAAC;YACD,OAAO;QACT,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,6CAA6C,UAAU,EAAE,CAAC,CAAC;IAC7E,CAAC,CAAC;IAEF,MAAM,0BAA0B,GAAG,KAAK,EACtC,WAAmD,EACnD,aAA4B,EAC5B,SAAiB,EACiD,EAAE;QACpE,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7C,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;QACjG,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QAC7F,qBAAqB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;QACpD,MAAM,KAAK,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAEhD,MAAM,UAAU,GAA4D,EAAE,CAAC;QAC/E,KAAK,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;YACxD,MAAM,QAAQ,GAAG,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,0BAA0B,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7I,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YAChD,qBAAqB,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YAChD,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YAChE,MAAM,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAClC,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;YACxB,UAAU,CAAC,IAAI,CAAC,EAAE,GAAG,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;QAChD,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,GAAG,IAAI,QAAQ,CAAC;IAE9D,MAAM,uBAAuB,GAAG,CAC9B,YAAoB,EACpB,WAAoE,EAC5D,EAAE;QACV,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,YAAY,CAAC;QACtB,CAAC;QAED,MAAM,KAAK,GAAG;YACZ,mBAAmB;YACnB,gHAAgH;YAChH,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC5C,GAAG,KAAK,GAAG,CAAC,KAAK,UAAU,CAAC,YAAY,EAAE;gBAC1C,mBAAmB,UAAU,CAAC,QAAQ,EAAE;gBACxC,cAAc,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;gBAC5C,oBAAoB,UAAU,CAAC,SAAS,EAAE;aAC3C,CAAC;SACH,CAAC;QAEF,OAAO,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IAC5D,CAAC,CAAC;IAEF,MAAM,mBAAmB,GAAG,CAAC,YAAoB,EAAE,WAA0B,EAAE,UAAyB,EAAU,EAAE;QAClH,OAAO,YAAY;aAChB,UAAU,CAAC,6BAA6B,EAAE,WAAW,IAAI,wCAAwC,CAAC;aAClG,UAAU,CAAC,4BAA4B,EAAE,UAAU,IAAI,wCAAwC,CAAC,CAAC;IACtG,CAAC,CAAC;IAEF,kDAAkD;IAClD,mDAAmD;IACnD,oDAAoD;IACpD,MAAM,mBAAmB,GAAG,KAAK,EAAE,WAA0B,EAA0B,EAAE;QACvF,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAC3D,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9C,OAAO,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE;gBAChD,WAAW;gBACX,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC,CAAC;IAEF,uDAAuD;IACvD,wDAAwD;IACxD,4BAA4B;IAC5B,MAAM,aAAa,GAAG,KAAK,EACzB,SAAiB,EACjB,WAA0B,EAC1B,QAA6B,EAC7B,QAAwD,EACY,EAAE;QACtE,MAAM,eAAe,GAAG,MAAM,mBAAmB,CAAC,WAAW,CAAC,CAAC;QAC/D,yDAAyD;QACzD,6DAA6D;QAC7D,MAAM,cAAc,GAAG,eAAe,KAAK,IAAI,CAAC;QAChD,IAAI,gBAAgB,GAAkB,IAAI,CAAC;QAE3C,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;YAC7B,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,6BAA6B,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC;YAC3G,gBAAgB,GAAG,QAAQ,CAAC;YAC5B,IAAI,UAAU,EAAE,CAAC;gBACf,uDAAuD;gBACvD,sDAAsD;gBACtD,QAAQ,EAAE,MAAM,CACd,MAAM,EACN,uHAAuH,CACxH,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7D,0CAA0C;YAC1C,MAAM,YAAY,GAAG,+BAA+B,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC1E,gBAAgB,GAAG,oBAAoB,CAAC,YAAY,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;YAC7E,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,gBAAgB,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;YACxD,CAAC;YACD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,sFAAsF,CAAC,CAAC;QACnH,CAAC;QAED,IAAI,gBAAgB,KAAK,IAAI,EAAE,CAAC;YAC9B,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;QACxD,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,oBAAoB,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;YAC/D,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;QACjE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,oDAAoD;YACpD,MAAM,CAAC,IAAI,CAAC,+DAA+D,EAAE;gBAC3E,SAAS;gBACT,WAAW;gBACX,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;YACH,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,qFAAqF,CAAC,CAAC;YAChH,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;QACxD,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,CAAC,UAAkB,EAAE,YAAqB,EAAU,EAAE;QACjF,MAAM,WAAW,GAAG,YAAY;YAC9B,CAAC,CAAC,mCAAmC,YAAY,EAAE;YACnD,CAAC,CAAC,iFAAiF,CAAC;QACtF,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;QAClC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,aAAa,EAAE,WAAW,EAAE,uBAAuB,EAAE,EAAE,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChH,CAAC;QAED,MAAM,SAAS,GACb,OAAO,CAAC,MAAM,GAAG,uBAAuB;YACtC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,uBAAuB,CAAC,GAAG,mBAAmB;YACjE,CAAC,CAAC,OAAO,CAAC;QAEd,OAAO;YACL,aAAa;YACb,WAAW;YACX,4CAA4C;YAC5C,EAAE;YACF,SAAS;YACT,EAAE;YACF,wBAAwB;YACxB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,8BAA8B,GAAG,KAAK,EAC1C,iBAAgC,EAChC,qBAAoC,EACrB,EAAE;QACjB,MAAM,kBAAkB,GAAG,YAAY,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAE5E,IAAI,CAAC,iBAAiB,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1D,OAAO;QACT,CAAC;QAED,MAAM,gBAAgB,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAC3F,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,KAAK,EACjC,SAAiB,EACjB,MAAc,EACd,QAA6B,EACd,EAAE;QACjB,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,oBAAoB,CAAC,SAAS,EAAE,QAAQ,EAAE,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC;QACvF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,0CAA0C,EAAE;gBACtD,SAAS;gBACT,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,KAAK,EAAE,OAAsB,EAAiB,EAAE;QACrD,IAAI,WAAW,GAAwB,IAAI,CAAC;QAC5C,IAAI,kBAAkB,GAAkB,IAAI,CAAC;QAC7C,IAAI,cAAc,GAA0B,IAAI,CAAC;QACjD,IAAI,aAAa,GAAkB,IAAI,CAAC;QAExC,IAAI,CAAC;YACH,IAAI,OAAO,CAAC,eAAe,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;gBAC3E,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;YACjF,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;gBACvC,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC7D,WAAW,GAAG,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YACpD,MAAM,iBAAiB,GAAG,WAAW,CAAC;YACtC,iBAAiB,CAAC,KAAK,EAAE,CAAC;YAC1B,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,+BAA+B,OAAO,CAAC,UAAU,GAAG,CAAC,CAAC;YAEvF,IAAI,OAAO,CAAC,QAAQ,IAAI,oBAAoB,EAAE,CAAC;gBAC7C,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACzC,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE;gBACrC,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC;aACvC,CAAC,CAAC;YACH,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,kCAAkC,OAAO,CAAC,aAAa,IAAI,CAAC,CAAC;YAE9F,IAAI,iBAAiB,GAAG,OAAO,CAAC,QAAQ,CAAC;YAEzC,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;gBACxB,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACtB,MAAM,MAAM,GAAG,oDAAoD,CAAC;oBACpE,MAAM,CAAC,IAAI,CAAC,mDAAmD,EAAE;wBAC/D,SAAS,EAAE,OAAO,CAAC,EAAE;qBACtB,CAAC,CAAC;oBACH,MAAM,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;oBACnE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC1B,CAAC;gBAED,IAAI,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;gBAExC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACtC,0DAA0D;oBAC1D,0CAA0C;oBAC1C,IAAI,OAAO,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;wBAC9C,MAAM,MAAM,GAAG,yBAAyB,OAAO,CAAC,QAAQ,EAAE,CAAC;wBAC3D,MAAM,CAAC,IAAI,CAAC,mDAAmD,EAAE;4BAC/D,SAAS,EAAE,OAAO,CAAC,EAAE;4BACrB,QAAQ,EAAE,OAAO,CAAC,QAAQ;yBAC3B,CAAC,CAAC;wBACH,MAAM,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;wBACnE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;oBAC1B,CAAC;oBAED,MAAM,UAAU,GAAG,qBAAqB,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;oBACxF,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;wBAC1B,MAAM,CAAC,IAAI,CAAC,4DAA4D,EAAE;4BACxE,SAAS,EAAE,OAAO,CAAC,EAAE;4BACrB,QAAQ,EAAE,OAAO,CAAC,QAAQ;4BAC1B,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI;yBAC3C,CAAC,CAAC;wBACH,MAAM,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;wBAC7E,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;oBACpC,CAAC;oBAED,gBAAgB,GAAG,UAAU,CAAC,IAAI,CAAC;oBACnC,sEAAsE;oBACtE,8CAA8C;oBAC9C,kDAAkD;oBAClD,sCAAsC;oBACtC,IAAI,oBAAoB,EAAE,CAAC;wBACzB,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;oBACzC,CAAC;oBACD,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,8BAA8B,gBAAgB,yBAAyB,CAAC,CAAC;oBAC1G,MAAM,CAAC,IAAI,CAAC,yCAAyC,EAAE;wBACrD,SAAS,EAAE,OAAO,CAAC,EAAE;wBACrB,QAAQ,EAAE,OAAO,CAAC,QAAQ;wBAC1B,cAAc,EAAE,gBAAgB;qBACjC,CAAC,CAAC;gBACL,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,YAAY,GAAG,oBAAoB,CAAC,gBAAgB,EAAE;wBAC1D,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,EAAE;wBAC5C,UAAU,EAAE,OAAO,CAAC,UAAU;qBAC/B,CAAC,CAAC;oBACH,iBAAiB,GAAG,YAAY,CAAC;oBACjC,MAAM,MAAM,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;oBACxD,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,uBAAuB,YAAY,GAAG,CAAC,CAAC;oBACzE,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE;wBAC1C,SAAS,EAAE,OAAO,CAAC,EAAE;wBACrB,YAAY;qBACb,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAChE,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;wBACvC,SAAS,EAAE,OAAO,CAAC,EAAE;wBACrB,KAAK,EAAE,MAAM;qBACd,CAAC,CAAC;oBACH,MAAM,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;oBACnE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC;YAED,MAAM,YAAY,GAAG,mBAAmB,CAAC,iBAAiB,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;YACjG,kBAAkB,GAAG,YAAY,CAAC,kBAAkB,CAAC;YACrD,MAAM,8BAA8B,CAAC,YAAY,CAAC,iBAAiB,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;YACpG,IAAI,iBAAiB,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/E,aAAa,GAAG,IAAI,CAAC,iBAAiB,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YAC9F,CAAC;YACD,MAAM,qBAAqB,GAAG,MAAM,0BAA0B,CAC5D,OAAO,CAAC,WAAW,EACnB,iBAAiB,EACjB,OAAO,CAAC,EAAE,CACX,CAAC;YACF,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrC,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,qBAAqB,CAAC,MAAM,mCAAmC,CAAC,CAAC;YAClH,CAAC;YACD,MAAM,YAAY,GAAG,uBAAuB,CAC1C,mBAAmB,CAAC,OAAO,CAAC,YAAY,EAAE,YAAY,CAAC,kBAAkB,EAAE,YAAY,CAAC,iBAAiB,CAAC,EAC1G,qBAAqB,CACtB,CAAC;YAEF,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAChD,MAAM,gBAAgB,GAAG,IAAI,eAAe,EAAE,CAAC;YAC/C,IAAI,eAAe,GAAG,KAAK,CAAC;YAC5B,IAAI,mBAAmB,GAAG,KAAK,CAAC;YAChC,MAAM,oBAAoB,GAAG,KAAK,IAAI,EAAE;gBACtC,IAAI,eAAe,IAAI,mBAAmB,EAAE,CAAC;oBAC3C,OAAO;gBACT,CAAC;gBAED,mBAAmB,GAAG,IAAI,CAAC;gBAC3B,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBACpE,IAAI,SAAS,EAAE,CAAC;wBACd,eAAe,GAAG,IAAI,CAAC;wBACvB,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,kDAAkD,CAAC,CAAC;wBACrF,gBAAgB,CAAC,KAAK,EAAE,CAAC;oBAC3B,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE;wBACnD,SAAS,EAAE,OAAO,CAAC,EAAE;wBACrB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;qBAC9D,CAAC,CAAC;gBACL,CAAC;wBAAS,CAAC;oBACT,mBAAmB,GAAG,KAAK,CAAC;gBAC9B,CAAC;YACH,CAAC,CAAC;YACF,MAAM,oBAAoB,EAAE,CAAC;YAC7B,cAAc,GAAG,aAAa,CAAC,GAAG,EAAE;gBAClC,KAAK,oBAAoB,EAAE,CAAC;YAC9B,CAAC,EAAE,oBAAoB,CAAC,CAAC;YACzB,MAAM,cAAc,GAAG,sBAAsB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;YAC7F,MAAM,YAAY,GAAG,oBAAoB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;YACtF,iEAAiE;YACjE,qDAAqD;YACrD,wCAAwC;YACxC,KAAK,MAAM,WAAW,IAAI,gCAAgC,CAAC,OAAO,CAAC,UAAU,EAAE;gBAC7E,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,EAAE,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,wDAAwD,EAAE;oBACpE,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,MAAM,EAAE,WAAW,CAAC,MAAM;iBAC3B,CAAC,CAAC;gBACH,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;YACxD,CAAC;YACD,oFAAoF;YACpF,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC;gBACjC,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,MAAM,EAAE,YAAY;gBACpB,QAAQ,EAAE,iBAAiB;gBAC3B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,QAAQ,EAAE,cAAc;gBACxB,MAAM,EAAE,YAAY;gBACpB,MAAM,EAAE,gBAAgB,CAAC,MAAM;gBAC/B,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;oBACvB,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBAC1C,CAAC;gBACD,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;oBACvB,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBAC1C,CAAC;aACF,CAAC,CAAC;YACH,eAAe,CAAC,cAAc,CAAC,CAAC;YAChC,cAAc,GAAG,IAAI,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE;gBACrC,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,QAAQ,EAAE,SAAS,CAAC,QAAQ;aAC7B,CAAC,CAAC;YACH,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,iCAAiC,SAAS,CAAC,QAAQ,GAAG,CAAC,CAAC;YACnF,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,EAAE,EAAE,kBAAkB,EAAE,WAAW,EAAE;gBAC1F,UAAU,EAAE,SAAS,CAAC,UAAU,IAAI,EAAE;gBACtC,YAAY,EAAE,SAAS,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY;aAC5E,CAAC,CAAC;YAEH,oDAAoD;YACpD,gEAAgE;YAChE,0DAA0D;YAC1D,4DAA4D;YAC5D,MAAM,uBAAuB,GAAG,SAAS,CAAC,YAAY,KAAK,IAAI,IAAI,cAAc,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;YAC1G,IAAI,uBAAuB,EAAE,CAAC;gBAC5B,yDAAyD;gBACzD,WAAW,CAAC,MAAM,CAChB,MAAM,EACN,yJAAyJ,CAC1J,CAAC;YACJ,CAAC;YAED,yDAAyD;YACzD,wDAAwD;YACxD,mDAAmD;YACnD,MAAM,yBAAyB,GAAG,SAAS,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;YACtG,IAAI,yBAAyB,EAAE,CAAC;gBAC9B,WAAW,CAAC,MAAM,CAChB,MAAM,EACN,8IAA8I,CAC/I,CAAC;YACJ,CAAC;YAED,MAAM,WAAW,CAAC,IAAI,EAAE,CAAC;YAEzB,mDAAmD;YACnD,KAAK,uBAAuB,CAAC,OAAO,CAAC,MAAM,EAAE,kBAAkB,EAAE,iBAAiB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC7F,0DAA0D;YAC5D,CAAC,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS;gBAChC,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC,SAAS,CAAC,QAAQ,KAAK,CAAC;oBACxB,CAAC,CAAC,cAAc;wBACd,CAAC,CAAC,MAAM;wBACR,CAAC,CAAC,cAAc;oBAClB,CAAC,CAAC,uBAAuB;wBACvB,CAAC,CAAC,cAAc;wBAChB,CAAC,CAAC,QAAQ,CAAC;YACjB,MAAM,YAAY,GAChB,MAAM,KAAK,QAAQ;gBACjB,CAAC,CAAC,SAAS,CAAC,YAAY,IAAI,SAAS,CAAC,UAAU,IAAI,2BAA2B,SAAS,CAAC,QAAQ,EAAE;gBACnG,CAAC,CAAC,MAAM,KAAK,WAAW;oBACtB,CAAC,CAAC,SAAS,CAAC,YAAY,IAAI,0BAA0B;oBACtD,CAAC,CAAC,SAAS,CAAC;YAClB,MAAM,MAAM,CAAC,mBAAmB,CAC9B,OAAO,CAAC,EAAE,EACV,MAAM,EACN,YAAY,CAAC,CAAC,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAC9D,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE;gBAC/B,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,MAAM;aACP,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,cAAc,EAAE,CAAC;gBACnB,eAAe,CAAC,cAAc,CAAC,CAAC;gBAChC,cAAc,GAAG,IAAI,CAAC;YACxB,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE;gBACtC,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;YAEH,IAAI,CAAC;gBACH,WAAW,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACrF,MAAM,aAAa,CAAC,OAAO,CAAC,EAAE,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC;gBACjE,IAAI,WAAW,EAAE,CAAC;oBAChB,MAAM,WAAW,CAAC,IAAI,EAAE,CAAC;gBAC3B,CAAC;gBACD,MAAM,WAAW,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC3E,MAAM,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,EAAE,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAC;YAC5F,CAAC;YAAC,OAAO,WAAW,EAAE,CAAC;gBACrB,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE;oBACjD,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,KAAK,EAAE,WAAW,YAAY,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC;iBAChF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,aAAa,EAAE,CAAC;gBAClB,IAAI,CAAC;oBACH,MAAM,yBAAyB,CAAC,aAAa,CAAC,CAAC;gBACjD,CAAC;gBAAC,OAAO,YAAY,EAAE,CAAC;oBACtB,MAAM,CAAC,IAAI,CAAC,8CAA8C,EAAE;wBAC1D,SAAS,EAAE,OAAO,CAAC,EAAE;wBACrB,aAAa;wBACb,KAAK,EAAE,YAAY,YAAY,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;qBACnF,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import assert from 'node:assert/strict';
|
|
2
2
|
import test, { mock } from 'node:test';
|
|
3
|
+
import { execFileSync } from 'node:child_process';
|
|
4
|
+
import { existsSync } from 'node:fs';
|
|
3
5
|
import { mkdtemp, rm, stat } from 'node:fs/promises';
|
|
4
6
|
import { tmpdir } from 'node:os';
|
|
5
7
|
import { join } from 'node:path';
|
|
6
8
|
import { logger } from '../logger.js';
|
|
7
9
|
import { createTriggerHandler } from './trigger-handler.js';
|
|
10
|
+
import { startPolling } from '../poller.js';
|
|
8
11
|
const trigger = {
|
|
9
12
|
id: 'trigger-1',
|
|
10
13
|
prompt: 'Implement feature',
|
|
@@ -651,6 +654,301 @@ test('createTriggerHandler fails without running the runner when worktree authPa
|
|
|
651
654
|
assert.deepEqual(clientCalls.at(-1)?.args, ['trigger-1', 'FAILED', 'Not a git repository: /auth/path']);
|
|
652
655
|
assert.equal(clientCalls.some((entry) => entry.method === 'isTriggerCancelRequested'), false);
|
|
653
656
|
});
|
|
657
|
+
test('createTriggerHandler resolves a member repo via remoteUrl when worktree authPath is not a git repo', async () => {
|
|
658
|
+
const clientCalls = [];
|
|
659
|
+
const runnerInputs = [];
|
|
660
|
+
const createWorktreeCalls = [];
|
|
661
|
+
const resolveCalls = [];
|
|
662
|
+
const discoveredAuthPaths = [];
|
|
663
|
+
const worktreeRuntime = {
|
|
664
|
+
...runtime,
|
|
665
|
+
useWorktree: true,
|
|
666
|
+
repositoryId: 'repo-1',
|
|
667
|
+
repositoryRemoteUrl: 'https://github.com/rlarua/kma-ui.git',
|
|
668
|
+
baseBranch: 'dev',
|
|
669
|
+
worktreeId: 'worktree-1',
|
|
670
|
+
};
|
|
671
|
+
const client = {
|
|
672
|
+
fetchTriggerRuntime: async () => worktreeRuntime,
|
|
673
|
+
isTriggerCancelRequested: async () => false,
|
|
674
|
+
updateTriggerHistory: async (...args) => {
|
|
675
|
+
clientCalls.push({ method: 'updateTriggerHistory', args });
|
|
676
|
+
},
|
|
677
|
+
updateTriggerStatus: async (...args) => {
|
|
678
|
+
clientCalls.push({ method: 'updateTriggerStatus', args });
|
|
679
|
+
},
|
|
680
|
+
reportWorktreeStatus: async (...args) => {
|
|
681
|
+
clientCalls.push({ method: 'reportWorktreeStatus', args });
|
|
682
|
+
},
|
|
683
|
+
};
|
|
684
|
+
const handler = createTriggerHandler({
|
|
685
|
+
config: {
|
|
686
|
+
daemonToken: 'daemon-token',
|
|
687
|
+
apiUrl: 'https://api.example',
|
|
688
|
+
pollingIntervalMs: 5000,
|
|
689
|
+
maxPollingIntervalMs: 120_000,
|
|
690
|
+
timeoutMs: 1500,
|
|
691
|
+
idleTimeoutMs: 500,
|
|
692
|
+
runnerCmd: 'opencode',
|
|
693
|
+
preventSleepWhileBusy: false,
|
|
694
|
+
},
|
|
695
|
+
client: client,
|
|
696
|
+
onAuthPathDiscovered: (authPath) => {
|
|
697
|
+
discoveredAuthPaths.push(authPath);
|
|
698
|
+
},
|
|
699
|
+
}, {
|
|
700
|
+
createRunnerFactory: () => () => ({
|
|
701
|
+
run: async (input) => {
|
|
702
|
+
runnerInputs.push({ authPath: input.authPath });
|
|
703
|
+
return { exitCode: 0 };
|
|
704
|
+
},
|
|
705
|
+
}),
|
|
706
|
+
createLogReporter: () => ({
|
|
707
|
+
start: () => undefined,
|
|
708
|
+
append: () => undefined,
|
|
709
|
+
stop: async () => undefined,
|
|
710
|
+
}),
|
|
711
|
+
isGitRepo: () => false,
|
|
712
|
+
resolveWorktreeAuthPath: (authPath, remoteUrl) => {
|
|
713
|
+
resolveCalls.push({ authPath, remoteUrl });
|
|
714
|
+
return { path: '/auth/path/kma-ui' };
|
|
715
|
+
},
|
|
716
|
+
createWorktree: (authPath) => {
|
|
717
|
+
createWorktreeCalls.push(authPath);
|
|
718
|
+
return '/auth/path/.kma-ui-worktrees/wt-worktree-1';
|
|
719
|
+
},
|
|
720
|
+
readHistoryFile: async () => '### Summary\n- done\n',
|
|
721
|
+
resolveRunnerHistoryPaths: () => ({
|
|
722
|
+
currentHistoryPath: '/auth/path/.kma-ui-worktrees/wt-worktree-1/.agentteams/runner/history/trigger-1.md',
|
|
723
|
+
parentHistoryPath: null,
|
|
724
|
+
}),
|
|
725
|
+
});
|
|
726
|
+
await handler({ ...trigger, useWorktree: true, baseBranch: 'dev', worktreeId: 'worktree-1', parentTriggerId: null });
|
|
727
|
+
assert.deepEqual(resolveCalls, [{ authPath: '/auth/path', remoteUrl: 'https://github.com/rlarua/kma-ui.git' }]);
|
|
728
|
+
// 제거 lifecycle 계약: poller가 worktree 제거 경로를 찾을 수 있도록
|
|
729
|
+
// 해석된 멤버 repo 경로도 authPath로 등록되어야 한다.
|
|
730
|
+
assert.deepEqual(discoveredAuthPaths, ['/auth/path', '/auth/path/kma-ui']);
|
|
731
|
+
assert.deepEqual(createWorktreeCalls, ['/auth/path/kma-ui']);
|
|
732
|
+
assert.deepEqual(runnerInputs, [{ authPath: '/auth/path/.kma-ui-worktrees/wt-worktree-1' }]);
|
|
733
|
+
assert.deepEqual(clientCalls.find((entry) => entry.method === 'reportWorktreeStatus')?.args, ['trigger-1', 'ACTIVE']);
|
|
734
|
+
assert.deepEqual(clientCalls.at(-1)?.args, ['trigger-1', 'DONE', undefined]);
|
|
735
|
+
});
|
|
736
|
+
test('createTriggerHandler fails without running the runner when member repo resolution fails', async () => {
|
|
737
|
+
const clientCalls = [];
|
|
738
|
+
const runnerInputs = [];
|
|
739
|
+
const resolutionError = 'Worktree requested but no member repository under /auth/path has an origin remote matching ' +
|
|
740
|
+
'https://github.com/rlarua/kma-ui.git. Turn off the runner box (worktree) option and request the run again.';
|
|
741
|
+
const worktreeRuntime = {
|
|
742
|
+
...runtime,
|
|
743
|
+
useWorktree: true,
|
|
744
|
+
repositoryId: 'repo-1',
|
|
745
|
+
repositoryRemoteUrl: 'https://github.com/rlarua/kma-ui.git',
|
|
746
|
+
baseBranch: 'dev',
|
|
747
|
+
worktreeId: 'worktree-1',
|
|
748
|
+
};
|
|
749
|
+
const client = {
|
|
750
|
+
fetchTriggerRuntime: async () => worktreeRuntime,
|
|
751
|
+
isTriggerCancelRequested: async (...args) => {
|
|
752
|
+
clientCalls.push({ method: 'isTriggerCancelRequested', args });
|
|
753
|
+
return false;
|
|
754
|
+
},
|
|
755
|
+
updateTriggerHistory: async (...args) => {
|
|
756
|
+
clientCalls.push({ method: 'updateTriggerHistory', args });
|
|
757
|
+
},
|
|
758
|
+
updateTriggerStatus: async (...args) => {
|
|
759
|
+
clientCalls.push({ method: 'updateTriggerStatus', args });
|
|
760
|
+
},
|
|
761
|
+
reportWorktreeStatus: async (...args) => {
|
|
762
|
+
clientCalls.push({ method: 'reportWorktreeStatus', args });
|
|
763
|
+
},
|
|
764
|
+
};
|
|
765
|
+
const handler = createTriggerHandler({
|
|
766
|
+
config: {
|
|
767
|
+
daemonToken: 'daemon-token',
|
|
768
|
+
apiUrl: 'https://api.example',
|
|
769
|
+
pollingIntervalMs: 5000,
|
|
770
|
+
maxPollingIntervalMs: 120_000,
|
|
771
|
+
timeoutMs: 1500,
|
|
772
|
+
idleTimeoutMs: 500,
|
|
773
|
+
runnerCmd: 'opencode',
|
|
774
|
+
preventSleepWhileBusy: false,
|
|
775
|
+
},
|
|
776
|
+
client: client,
|
|
777
|
+
}, {
|
|
778
|
+
createRunnerFactory: () => () => ({
|
|
779
|
+
run: async (input) => {
|
|
780
|
+
runnerInputs.push({ authPath: input.authPath });
|
|
781
|
+
return { exitCode: 0 };
|
|
782
|
+
},
|
|
783
|
+
}),
|
|
784
|
+
createLogReporter: () => ({
|
|
785
|
+
start: () => undefined,
|
|
786
|
+
append: () => undefined,
|
|
787
|
+
stop: async () => undefined,
|
|
788
|
+
}),
|
|
789
|
+
isGitRepo: () => false,
|
|
790
|
+
resolveWorktreeAuthPath: () => ({ error: resolutionError }),
|
|
791
|
+
readHistoryFile: async () => '',
|
|
792
|
+
resolveRunnerHistoryPaths: () => ({
|
|
793
|
+
currentHistoryPath: '/auth/path/.agentteams/runner/history/trigger-1.md',
|
|
794
|
+
parentHistoryPath: null,
|
|
795
|
+
}),
|
|
796
|
+
});
|
|
797
|
+
await handler({ ...trigger, useWorktree: true, baseBranch: 'dev', worktreeId: 'worktree-1', parentTriggerId: null });
|
|
798
|
+
assert.deepEqual(runnerInputs, []);
|
|
799
|
+
assert.deepEqual(clientCalls.at(0)?.args, ['trigger-1', 'FAILED', resolutionError]);
|
|
800
|
+
assert.deepEqual(clientCalls.at(-1)?.args, ['trigger-1', 'FAILED', resolutionError]);
|
|
801
|
+
assert.equal(clientCalls.some((entry) => entry.method === 'isTriggerCancelRequested'), false);
|
|
802
|
+
});
|
|
803
|
+
// handler↔poller lifecycle 계약 테스트(실제 git): 비-git 루트에서 멤버 repo 해석으로
|
|
804
|
+
// 생성한 워크트리는 이후 REMOVE_REQUESTED 처리 시 실제 디렉터리와 worktree/* 브랜치가
|
|
805
|
+
// 삭제되어야 한다. 해석 경로가 authPath로 등록되지 않으면 poller가 경로를 못 찾은 채
|
|
806
|
+
// REMOVED로 보고하는 회귀를 막는다.
|
|
807
|
+
test('worktrees created via member repo resolution are removed by the poller lifecycle', async () => {
|
|
808
|
+
const root = await mkdtemp(join(tmpdir(), 'trigger-handler-lifecycle-'));
|
|
809
|
+
try {
|
|
810
|
+
// .invalid TLD는 DNS가 즉시 실패해 removeWorktree의 원격 브랜치 정리(ls-remote)가
|
|
811
|
+
// 네트워크 대기 없이 스킵된다.
|
|
812
|
+
const memberRepo = join(root, 'kma-ui');
|
|
813
|
+
execFileSync('git', ['init', memberRepo], { stdio: 'pipe' });
|
|
814
|
+
execFileSync('git', ['-C', memberRepo, 'config', 'user.email', 'test@test.com'], { stdio: 'pipe' });
|
|
815
|
+
execFileSync('git', ['-C', memberRepo, 'config', 'user.name', 'Test'], { stdio: 'pipe' });
|
|
816
|
+
execFileSync('git', ['-C', memberRepo, 'commit', '--allow-empty', '-m', 'initial'], { stdio: 'pipe' });
|
|
817
|
+
execFileSync('git', ['-C', memberRepo, 'remote', 'add', 'origin', 'git@git.invalid:team/kma-ui.git'], {
|
|
818
|
+
stdio: 'pipe',
|
|
819
|
+
});
|
|
820
|
+
const discoveredAuthPaths = [];
|
|
821
|
+
const handlerWorktreeReports = [];
|
|
822
|
+
const client = {
|
|
823
|
+
fetchTriggerRuntime: async () => ({
|
|
824
|
+
...runtime,
|
|
825
|
+
authPath: root,
|
|
826
|
+
useWorktree: true,
|
|
827
|
+
repositoryId: 'repo-1',
|
|
828
|
+
repositoryRemoteUrl: 'https://git.invalid/team/kma-ui.git',
|
|
829
|
+
baseBranch: null,
|
|
830
|
+
worktreeId: 'lifecycle-1',
|
|
831
|
+
}),
|
|
832
|
+
isTriggerCancelRequested: async () => false,
|
|
833
|
+
updateTriggerHistory: async () => undefined,
|
|
834
|
+
updateTriggerStatus: async () => undefined,
|
|
835
|
+
reportWorktreeStatus: async (triggerId, status) => {
|
|
836
|
+
handlerWorktreeReports.push({ triggerId, status });
|
|
837
|
+
},
|
|
838
|
+
};
|
|
839
|
+
// isGitRepo/resolveWorktreeAuthPath/createWorktree는 주입하지 않는다 — 실제 구현이
|
|
840
|
+
// 멤버 repo를 해석하고 진짜 git worktree를 만들어야 lifecycle이 검증된다.
|
|
841
|
+
const handler = createTriggerHandler({
|
|
842
|
+
config: {
|
|
843
|
+
daemonToken: 'daemon-token',
|
|
844
|
+
apiUrl: 'https://api.example',
|
|
845
|
+
pollingIntervalMs: 5000,
|
|
846
|
+
maxPollingIntervalMs: 120_000,
|
|
847
|
+
timeoutMs: 1500,
|
|
848
|
+
idleTimeoutMs: 500,
|
|
849
|
+
runnerCmd: 'opencode',
|
|
850
|
+
preventSleepWhileBusy: false,
|
|
851
|
+
},
|
|
852
|
+
client: client,
|
|
853
|
+
onAuthPathDiscovered: (authPath) => {
|
|
854
|
+
discoveredAuthPaths.push(authPath);
|
|
855
|
+
},
|
|
856
|
+
}, {
|
|
857
|
+
createRunnerFactory: () => () => ({
|
|
858
|
+
run: async () => ({ exitCode: 0 }),
|
|
859
|
+
}),
|
|
860
|
+
createLogReporter: () => ({
|
|
861
|
+
start: () => undefined,
|
|
862
|
+
append: () => undefined,
|
|
863
|
+
stop: async () => undefined,
|
|
864
|
+
}),
|
|
865
|
+
readHistoryFile: async () => '### Summary\n- done\n',
|
|
866
|
+
resolveRunnerHistoryPaths: () => ({
|
|
867
|
+
currentHistoryPath: join(root, 'history.md'),
|
|
868
|
+
parentHistoryPath: null,
|
|
869
|
+
}),
|
|
870
|
+
});
|
|
871
|
+
await handler({
|
|
872
|
+
...trigger,
|
|
873
|
+
useWorktree: true,
|
|
874
|
+
baseBranch: null,
|
|
875
|
+
worktreeId: 'lifecycle-1',
|
|
876
|
+
parentTriggerId: null,
|
|
877
|
+
});
|
|
878
|
+
const worktreePath = join(root, '.kma-ui-worktrees', 'wt-lifecycle-1');
|
|
879
|
+
assert.equal(existsSync(worktreePath), true);
|
|
880
|
+
assert.equal(discoveredAuthPaths.includes(memberRepo), true);
|
|
881
|
+
assert.deepEqual(handlerWorktreeReports, [{ triggerId: 'trigger-1', status: 'ACTIVE' }]);
|
|
882
|
+
// 데몬 재시작 후 poller가 persist된 auth path들로 제거 요청을 처리하는 상황.
|
|
883
|
+
const pollerReports = [];
|
|
884
|
+
const removalTrigger = {
|
|
885
|
+
...trigger,
|
|
886
|
+
id: 'trigger-1',
|
|
887
|
+
useWorktree: true,
|
|
888
|
+
worktreeId: 'lifecycle-1',
|
|
889
|
+
worktreeStatus: 'REMOVE_REQUESTED',
|
|
890
|
+
parentTriggerId: null,
|
|
891
|
+
};
|
|
892
|
+
let keepAliveResolve = null;
|
|
893
|
+
const pollingPromise = startPolling({
|
|
894
|
+
daemonToken: 'daemon-token',
|
|
895
|
+
apiUrl: 'https://api.example',
|
|
896
|
+
pollingIntervalMs: 5000,
|
|
897
|
+
maxPollingIntervalMs: 120_000,
|
|
898
|
+
timeoutMs: 1500,
|
|
899
|
+
idleTimeoutMs: 500,
|
|
900
|
+
runnerCmd: 'opencode',
|
|
901
|
+
preventSleepWhileBusy: false,
|
|
902
|
+
}, () => async () => undefined, {
|
|
903
|
+
createClient: () => ({
|
|
904
|
+
fetchPollState: async () => ({
|
|
905
|
+
data: {
|
|
906
|
+
orphanedCancelRequestedTriggerIds: [],
|
|
907
|
+
pendingWorktreeRemovals: [removalTrigger],
|
|
908
|
+
pendingTrigger: null,
|
|
909
|
+
},
|
|
910
|
+
}),
|
|
911
|
+
claimTrigger: async () => ({ ok: true, conflict: false }),
|
|
912
|
+
updateTriggerStatus: async () => undefined,
|
|
913
|
+
reportWorktreeStatus: async (triggerId, status, worktreeError) => {
|
|
914
|
+
pollerReports.push({ triggerId, status, worktreeError });
|
|
915
|
+
},
|
|
916
|
+
notifyUpdate: async () => undefined,
|
|
917
|
+
ackRestartRequest: async () => undefined,
|
|
918
|
+
}),
|
|
919
|
+
runCleanup: async () => undefined,
|
|
920
|
+
runConventionSync: async () => undefined,
|
|
921
|
+
setTimeout: (() => ({ ref() { }, unref() { } })),
|
|
922
|
+
clearTimeout: (() => undefined),
|
|
923
|
+
processOn: (() => undefined),
|
|
924
|
+
processExit: (() => {
|
|
925
|
+
throw new Error('should not exit');
|
|
926
|
+
}),
|
|
927
|
+
now: () => 0,
|
|
928
|
+
loadAuthPaths: () => [...discoveredAuthPaths],
|
|
929
|
+
saveAuthPath: () => '/tmp/auth-paths.json',
|
|
930
|
+
keepAlive: () => new Promise((resolve) => {
|
|
931
|
+
keepAliveResolve = resolve;
|
|
932
|
+
}),
|
|
933
|
+
});
|
|
934
|
+
await new Promise((resolve) => setImmediate(resolve));
|
|
935
|
+
assert.deepEqual(pollerReports, [{ triggerId: 'trigger-1', status: 'REMOVED', worktreeError: undefined }]);
|
|
936
|
+
assert.equal(existsSync(worktreePath), false);
|
|
937
|
+
const branches = execFileSync('git', ['-C', memberRepo, 'branch', '--list', 'worktree/lifecycle-1'], {
|
|
938
|
+
encoding: 'utf8',
|
|
939
|
+
});
|
|
940
|
+
assert.equal(branches.trim(), '');
|
|
941
|
+
const resolveKeepAlive = keepAliveResolve ??
|
|
942
|
+
(() => {
|
|
943
|
+
throw new Error('keepAlive resolver was not registered');
|
|
944
|
+
});
|
|
945
|
+
resolveKeepAlive();
|
|
946
|
+
await pollingPromise;
|
|
947
|
+
}
|
|
948
|
+
finally {
|
|
949
|
+
await rm(root, { recursive: true, force: true });
|
|
950
|
+
}
|
|
951
|
+
});
|
|
654
952
|
test('createTriggerHandler downgrades an idle-timeout to NEEDS_REVIEW when a history file was uploaded', async () => {
|
|
655
953
|
const clientCalls = [];
|
|
656
954
|
const client = {
|