github-issue-tower-defence-management 2.154.9 → 2.155.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +45 -1
- package/bin/adapter/entry-points/cli/fleetConfig.js +33 -1
- package/bin/adapter/entry-points/cli/fleetConfig.js.map +1 -1
- package/bin/adapter/entry-points/cli/index.js +159 -51
- package/bin/adapter/entry-points/cli/index.js.map +1 -1
- package/bin/adapter/entry-points/cli/notifyFinishedIssuePreparationRetry.js +27 -0
- package/bin/adapter/entry-points/cli/notifyFinishedIssuePreparationRetry.js.map +1 -0
- package/bin/adapter/entry-points/cli/projectConfig.js +5 -0
- package/bin/adapter/entry-points/cli/projectConfig.js.map +1 -1
- package/bin/adapter/entry-points/cli/resumableSessionSelect.js +45 -0
- package/bin/adapter/entry-points/cli/resumableSessionSelect.js.map +1 -0
- package/bin/adapter/entry-points/console/ui-dist/assets/index-B_lVAA3P.css +2 -0
- package/bin/adapter/entry-points/console/ui-dist/assets/index-CN6FXgfc.js +93 -0
- package/bin/adapter/entry-points/console/ui-dist/index.html +2 -2
- package/bin/adapter/entry-points/console/webServer.js +20 -0
- package/bin/adapter/entry-points/console/webServer.js.map +1 -1
- package/bin/adapter/entry-points/handlers/HandleScheduledEventUseCaseHandler.js +30 -6
- package/bin/adapter/entry-points/handlers/HandleScheduledEventUseCaseHandler.js.map +1 -1
- package/bin/adapter/proxy/TokenListLoader.js +3 -2
- package/bin/adapter/proxy/TokenListLoader.js.map +1 -1
- package/bin/adapter/repositories/FileSystemResumableSessionTranscriptRepository.js +188 -0
- package/bin/adapter/repositories/FileSystemResumableSessionTranscriptRepository.js.map +1 -0
- package/bin/adapter/repositories/FileSystemWorkerSessionFailureStreakRepository.js +98 -0
- package/bin/adapter/repositories/FileSystemWorkerSessionFailureStreakRepository.js.map +1 -0
- package/bin/adapter/repositories/FileSystemWorkerSessionLogRepository.js +57 -0
- package/bin/adapter/repositories/FileSystemWorkerSessionLogRepository.js.map +1 -0
- package/bin/adapter/repositories/GitHubIssueCommentRepository.js +15 -2
- package/bin/adapter/repositories/GitHubIssueCommentRepository.js.map +1 -1
- package/bin/adapter/repositories/LocalStorageUrgentStoryLaunchHoldRepository.js +245 -0
- package/bin/adapter/repositories/LocalStorageUrgentStoryLaunchHoldRepository.js.map +1 -0
- package/bin/adapter/repositories/issue/ApiV3CheerioRestIssueRepository.js +110 -19
- package/bin/adapter/repositories/issue/ApiV3CheerioRestIssueRepository.js.map +1 -1
- package/bin/adapter/repositories/issue/RestIssueRepository.js +1 -0
- package/bin/adapter/repositories/issue/RestIssueRepository.js.map +1 -1
- package/bin/domain/entities/WorkerRequestText.js +6 -0
- package/bin/domain/entities/WorkerRequestText.js.map +1 -0
- package/bin/domain/entities/WorkerSessionFailureStreak.js +3 -0
- package/bin/domain/entities/WorkerSessionFailureStreak.js.map +1 -0
- package/bin/domain/services/commentCreateWithDedupRetry.js +46 -0
- package/bin/domain/services/commentCreateWithDedupRetry.js.map +1 -0
- package/bin/domain/usecases/AssignNoAssigneeIssueToManagerUseCase.js +2 -1
- package/bin/domain/usecases/AssignNoAssigneeIssueToManagerUseCase.js.map +1 -1
- package/bin/domain/usecases/CloseIssueAsRequestApplier.js +29 -0
- package/bin/domain/usecases/CloseIssueAsRequestApplier.js.map +1 -0
- package/bin/domain/usecases/HandleScheduledEventUseCase.js +1 -0
- package/bin/domain/usecases/HandleScheduledEventUseCase.js.map +1 -1
- package/bin/domain/usecases/NotifyFinishedIssuePreparationUseCase.js +61 -15
- package/bin/domain/usecases/NotifyFinishedIssuePreparationUseCase.js.map +1 -1
- package/bin/domain/usecases/ResumableSessionSelectUseCase.js +153 -0
- package/bin/domain/usecases/ResumableSessionSelectUseCase.js.map +1 -0
- package/bin/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.js +12 -7
- package/bin/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.js.map +1 -1
- package/bin/domain/usecases/RevertOrphanedPreparationUseCase.js +59 -21
- package/bin/domain/usecases/RevertOrphanedPreparationUseCase.js.map +1 -1
- package/bin/domain/usecases/StartPreparationUseCase.js +157 -3
- package/bin/domain/usecases/StartPreparationUseCase.js.map +1 -1
- package/bin/domain/usecases/WorkerSessionEndClassifyUseCase.js +225 -0
- package/bin/domain/usecases/WorkerSessionEndClassifyUseCase.js.map +1 -0
- package/bin/domain/usecases/adapter-interfaces/ResumableSessionTranscriptRepository.js +3 -0
- package/bin/domain/usecases/adapter-interfaces/ResumableSessionTranscriptRepository.js.map +1 -0
- package/bin/domain/usecases/adapter-interfaces/UrgentStoryLaunchHoldRepository.js +3 -0
- package/bin/domain/usecases/adapter-interfaces/UrgentStoryLaunchHoldRepository.js.map +1 -0
- package/bin/domain/usecases/adapter-interfaces/WorkerSessionFailureStreakRepository.js +3 -0
- package/bin/domain/usecases/adapter-interfaces/WorkerSessionFailureStreakRepository.js.map +1 -0
- package/bin/domain/usecases/adapter-interfaces/WorkerSessionLogRepository.js +3 -0
- package/bin/domain/usecases/adapter-interfaces/WorkerSessionLogRepository.js.map +1 -0
- package/bin/domain/usecases/extractCloseIssueAs.js +24 -0
- package/bin/domain/usecases/extractCloseIssueAs.js.map +1 -0
- package/bin/domain/usecases/findLastAgentReport.js +9 -3
- package/bin/domain/usecases/findLastAgentReport.js.map +1 -1
- package/bin/domain/usecases/isTransientApiError.js +3 -1
- package/bin/domain/usecases/isTransientApiError.js.map +1 -1
- package/bin/domain/usecases/urgentStoryLaunchHoldDecide.js +76 -0
- package/bin/domain/usecases/urgentStoryLaunchHoldDecide.js.map +1 -0
- package/package.json +1 -1
- package/types/adapter/entry-points/cli/fleetConfig.d.ts +3 -0
- package/types/adapter/entry-points/cli/fleetConfig.d.ts.map +1 -1
- package/types/adapter/entry-points/cli/index.d.ts.map +1 -1
- package/types/adapter/entry-points/cli/notifyFinishedIssuePreparationRetry.d.ts +8 -0
- package/types/adapter/entry-points/cli/notifyFinishedIssuePreparationRetry.d.ts.map +1 -0
- package/types/adapter/entry-points/cli/projectConfig.d.ts +3 -0
- package/types/adapter/entry-points/cli/projectConfig.d.ts.map +1 -1
- package/types/adapter/entry-points/cli/resumableSessionSelect.d.ts +12 -0
- package/types/adapter/entry-points/cli/resumableSessionSelect.d.ts.map +1 -0
- package/types/adapter/entry-points/console/webServer.d.ts +1 -0
- package/types/adapter/entry-points/console/webServer.d.ts.map +1 -1
- package/types/adapter/entry-points/handlers/HandleScheduledEventUseCaseHandler.d.ts +3 -0
- package/types/adapter/entry-points/handlers/HandleScheduledEventUseCaseHandler.d.ts.map +1 -1
- package/types/adapter/proxy/TokenListLoader.d.ts +1 -0
- package/types/adapter/proxy/TokenListLoader.d.ts.map +1 -1
- package/types/adapter/repositories/FileSystemResumableSessionTranscriptRepository.d.ts +13 -0
- package/types/adapter/repositories/FileSystemResumableSessionTranscriptRepository.d.ts.map +1 -0
- package/types/adapter/repositories/FileSystemWorkerSessionFailureStreakRepository.d.ts +12 -0
- package/types/adapter/repositories/FileSystemWorkerSessionFailureStreakRepository.d.ts.map +1 -0
- package/types/adapter/repositories/FileSystemWorkerSessionLogRepository.d.ts +5 -0
- package/types/adapter/repositories/FileSystemWorkerSessionLogRepository.d.ts.map +1 -0
- package/types/adapter/repositories/GitHubIssueCommentRepository.d.ts +5 -0
- package/types/adapter/repositories/GitHubIssueCommentRepository.d.ts.map +1 -1
- package/types/adapter/repositories/LocalStorageUrgentStoryLaunchHoldRepository.d.ts +30 -0
- package/types/adapter/repositories/LocalStorageUrgentStoryLaunchHoldRepository.d.ts.map +1 -0
- package/types/adapter/repositories/issue/ApiV3CheerioRestIssueRepository.d.ts +3 -1
- package/types/adapter/repositories/issue/ApiV3CheerioRestIssueRepository.d.ts.map +1 -1
- package/types/adapter/repositories/issue/RestIssueRepository.d.ts.map +1 -1
- package/types/domain/entities/Comment.d.ts +1 -0
- package/types/domain/entities/Comment.d.ts.map +1 -1
- package/types/domain/entities/SearchedIssue.d.ts +1 -0
- package/types/domain/entities/SearchedIssue.d.ts.map +1 -1
- package/types/domain/entities/WorkerRequestText.d.ts +2 -0
- package/types/domain/entities/WorkerRequestText.d.ts.map +1 -0
- package/types/domain/entities/WorkerSessionFailureStreak.d.ts +5 -0
- package/types/domain/entities/WorkerSessionFailureStreak.d.ts.map +1 -0
- package/types/domain/services/commentCreateWithDedupRetry.d.ts +11 -0
- package/types/domain/services/commentCreateWithDedupRetry.d.ts.map +1 -0
- package/types/domain/usecases/AssignNoAssigneeIssueToManagerUseCase.d.ts.map +1 -1
- package/types/domain/usecases/CloseIssueAsRequestApplier.d.ts +16 -0
- package/types/domain/usecases/CloseIssueAsRequestApplier.d.ts.map +1 -0
- package/types/domain/usecases/HandleScheduledEventUseCase.d.ts +1 -0
- package/types/domain/usecases/HandleScheduledEventUseCase.d.ts.map +1 -1
- package/types/domain/usecases/NotifyFinishedIssuePreparationUseCase.d.ts +4 -1
- package/types/domain/usecases/NotifyFinishedIssuePreparationUseCase.d.ts.map +1 -1
- package/types/domain/usecases/ResumableSessionSelectUseCase.d.ts +35 -0
- package/types/domain/usecases/ResumableSessionSelectUseCase.d.ts.map +1 -0
- package/types/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.d.ts +3 -1
- package/types/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.d.ts.map +1 -1
- package/types/domain/usecases/RevertOrphanedPreparationUseCase.d.ts +5 -2
- package/types/domain/usecases/RevertOrphanedPreparationUseCase.d.ts.map +1 -1
- package/types/domain/usecases/StartPreparationUseCase.d.ts +12 -1
- package/types/domain/usecases/StartPreparationUseCase.d.ts.map +1 -1
- package/types/domain/usecases/WorkerSessionEndClassifyUseCase.d.ts +27 -0
- package/types/domain/usecases/WorkerSessionEndClassifyUseCase.d.ts.map +1 -0
- package/types/domain/usecases/adapter-interfaces/ResumableSessionTranscriptRepository.d.ts +22 -0
- package/types/domain/usecases/adapter-interfaces/ResumableSessionTranscriptRepository.d.ts.map +1 -0
- package/types/domain/usecases/adapter-interfaces/UrgentStoryLaunchHoldRepository.d.ts +11 -0
- package/types/domain/usecases/adapter-interfaces/UrgentStoryLaunchHoldRepository.d.ts.map +1 -0
- package/types/domain/usecases/adapter-interfaces/WorkerSessionFailureStreakRepository.d.ts +7 -0
- package/types/domain/usecases/adapter-interfaces/WorkerSessionFailureStreakRepository.d.ts.map +1 -0
- package/types/domain/usecases/adapter-interfaces/WorkerSessionLogRepository.d.ts +11 -0
- package/types/domain/usecases/adapter-interfaces/WorkerSessionLogRepository.d.ts.map +1 -0
- package/types/domain/usecases/extractCloseIssueAs.d.ts +12 -0
- package/types/domain/usecases/extractCloseIssueAs.d.ts.map +1 -0
- package/types/domain/usecases/findLastAgentReport.d.ts +1 -0
- package/types/domain/usecases/findLastAgentReport.d.ts.map +1 -1
- package/types/domain/usecases/isTransientApiError.d.ts.map +1 -1
- package/types/domain/usecases/urgentStoryLaunchHoldDecide.d.ts +48 -0
- package/types/domain/usecases/urgentStoryLaunchHoldDecide.d.ts.map +1 -0
- package/bin/adapter/entry-points/console/ui-dist/assets/index-BCjejjC0.css +0 -2
- package/bin/adapter/entry-points/console/ui-dist/assets/index-CcgrBS5P.js +0 -93
|
@@ -12,6 +12,7 @@ const isAuthorAuthorizedForAutoStatusCheck_1 = require("./isAuthorAuthorizedForA
|
|
|
12
12
|
const issueReactivationTriggerIsPending_1 = require("./issueReactivationTriggerIsPending");
|
|
13
13
|
const issueSnapshotStalenessCheck_1 = require("./issueSnapshotStalenessCheck");
|
|
14
14
|
const OauthTokenSelectUseCase_1 = require("./OauthTokenSelectUseCase");
|
|
15
|
+
const urgentStoryLaunchHoldDecide_1 = require("./urgentStoryLaunchHoldDecide");
|
|
15
16
|
exports.NORMAL_CONCURRENT_LIMIT = 6;
|
|
16
17
|
const SEVEN_DAY_THROTTLE_START_THRESHOLD = 0.8;
|
|
17
18
|
const FIVE_HOUR_THROTTLE_START_THRESHOLD = 0.8;
|
|
@@ -19,6 +20,15 @@ exports.DEFAULT_FALLBACK_LLM_MODEL_NAME = 'claude-opus-4-8';
|
|
|
19
20
|
const LLM_AGENT_LABEL_PREFIX = 'llm-agent:';
|
|
20
21
|
exports.SPAWN_CANDIDATE_BRANCH_SOURCE_CONCURRENCY = 8;
|
|
21
22
|
exports.DEFAULT_MINIMUM_ISSUE_AGE_MS = 5 * 60 * 1000;
|
|
23
|
+
const URGENT_STORY_LAUNCH_HOLD_POLL_INTERVAL_MILLISECONDS = 10000;
|
|
24
|
+
const URGENT_STORY_LAUNCH_HOLD_TIMEOUT_SECONDS = 300;
|
|
25
|
+
const URGENT_STORY_LAUNCH_HOLD_BOUND_SECONDS = 420;
|
|
26
|
+
const URGENT_STORY_LAUNCH_HOLD_UTILIZATION_PERCENTAGE_THRESHOLD = 90;
|
|
27
|
+
const URGENT_STORY_LAUNCH_HOLD_TOKEN_MODEL_NAME = 'any-model';
|
|
28
|
+
const URGENT_STORY_LAUNCH_HOLD_LOG_PREFIX = 'urgentStoryLaunchHold: ';
|
|
29
|
+
const urgentStoryLaunchHoldFailureLog = (error) => {
|
|
30
|
+
console.error(`${URGENT_STORY_LAUNCH_HOLD_LOG_PREFIX}failed (${error instanceof Error ? error.message : String(error)}); the spawn goes ahead`);
|
|
31
|
+
};
|
|
22
32
|
const agentNameFromDesignation = (designation) => designation.startsWith(LLM_AGENT_LABEL_PREFIX)
|
|
23
33
|
? designation.slice(LLM_AGENT_LABEL_PREFIX.length).trim()
|
|
24
34
|
: designation.trim();
|
|
@@ -27,7 +37,7 @@ const canonicalPullRequestAdoptionReasonSentence = ({ canonicalPullRequest, adop
|
|
|
27
37
|
? `It was adopted because the latest agent session for this issue has its head branch \`${canonicalPullRequest.branchName}\` checked out.`
|
|
28
38
|
: null;
|
|
29
39
|
class StartPreparationUseCase {
|
|
30
|
-
constructor(projectRepository, issueRepository, localCommandRunner, claudeTokenUsageRepository, takeOwnershipSpawnRepository, gitHubGraphqlRateLimitRepository, issueLatestSessionBranchRepository) {
|
|
40
|
+
constructor(projectRepository, issueRepository, localCommandRunner, claudeTokenUsageRepository, takeOwnershipSpawnRepository, gitHubGraphqlRateLimitRepository, issueLatestSessionBranchRepository, urgentStoryLaunchHoldRepository = null, sleeper = null) {
|
|
31
41
|
this.projectRepository = projectRepository;
|
|
32
42
|
this.issueRepository = issueRepository;
|
|
33
43
|
this.localCommandRunner = localCommandRunner;
|
|
@@ -35,6 +45,8 @@ class StartPreparationUseCase {
|
|
|
35
45
|
this.takeOwnershipSpawnRepository = takeOwnershipSpawnRepository;
|
|
36
46
|
this.gitHubGraphqlRateLimitRepository = gitHubGraphqlRateLimitRepository;
|
|
37
47
|
this.issueLatestSessionBranchRepository = issueLatestSessionBranchRepository;
|
|
48
|
+
this.urgentStoryLaunchHoldRepository = urgentStoryLaunchHoldRepository;
|
|
49
|
+
this.sleeper = sleeper;
|
|
38
50
|
this.isWithinCooldown = (usage, nowEpochSeconds) => usage.blockedUntilEpoch > nowEpochSeconds;
|
|
39
51
|
this.isModelWeeklyLimitRejected = (usage) => {
|
|
40
52
|
const limit = usage.modelWeeklyLimits['seven_day'];
|
|
@@ -225,6 +237,125 @@ class StartPreparationUseCase {
|
|
|
225
237
|
}));
|
|
226
238
|
return [...selectedEntries, ...excluded];
|
|
227
239
|
};
|
|
240
|
+
this.urgentStoryLaunchHoldWait = async (target) => {
|
|
241
|
+
const holdRepository = this.urgentStoryLaunchHoldRepository;
|
|
242
|
+
const sleeper = this.sleeper;
|
|
243
|
+
if (holdRepository === null ||
|
|
244
|
+
sleeper === null ||
|
|
245
|
+
target.urgentStoryNames.length === 0) {
|
|
246
|
+
return;
|
|
247
|
+
}
|
|
248
|
+
const holdProgress = { boundReached: false };
|
|
249
|
+
await new Promise((resolve) => {
|
|
250
|
+
const holdBoundTimer = setTimeout(() => {
|
|
251
|
+
holdProgress.boundReached = true;
|
|
252
|
+
resolve();
|
|
253
|
+
}, URGENT_STORY_LAUNCH_HOLD_BOUND_SECONDS * 1000);
|
|
254
|
+
void this.urgentStoryLaunchHoldRun(holdRepository, sleeper, target, holdProgress).then(() => {
|
|
255
|
+
clearTimeout(holdBoundTimer);
|
|
256
|
+
resolve();
|
|
257
|
+
});
|
|
258
|
+
});
|
|
259
|
+
if (holdProgress.boundReached) {
|
|
260
|
+
console.warn(`${URGENT_STORY_LAUNCH_HOLD_LOG_PREFIX}stopped waiting for the hold of ${target.callerIssueUrl} after ${URGENT_STORY_LAUNCH_HOLD_BOUND_SECONDS}s; the spawn goes ahead`);
|
|
261
|
+
await this.urgentStoryLaunchHoldingRecordDelete(holdRepository);
|
|
262
|
+
}
|
|
263
|
+
};
|
|
264
|
+
this.urgentStoryLaunchHoldRun = async (holdRepository, sleeper, target, holdProgress) => {
|
|
265
|
+
try {
|
|
266
|
+
await this.urgentStoryLaunchHoldPoll(holdRepository, sleeper, target, holdProgress);
|
|
267
|
+
}
|
|
268
|
+
catch (error) {
|
|
269
|
+
urgentStoryLaunchHoldFailureLog(error);
|
|
270
|
+
}
|
|
271
|
+
await this.urgentStoryLaunchHoldingRecordDelete(holdRepository);
|
|
272
|
+
};
|
|
273
|
+
this.urgentStoryLaunchHoldingRecordDelete = async (holdRepository) => {
|
|
274
|
+
try {
|
|
275
|
+
await holdRepository.deleteHoldingRecord();
|
|
276
|
+
}
|
|
277
|
+
catch (error) {
|
|
278
|
+
urgentStoryLaunchHoldFailureLog(error);
|
|
279
|
+
}
|
|
280
|
+
};
|
|
281
|
+
this.urgentStoryLaunchHoldPoll = async (holdRepository, sleeper, target, holdProgress) => {
|
|
282
|
+
const { callerIssueUrl } = target;
|
|
283
|
+
const holdStartedAtMilliseconds = Date.now();
|
|
284
|
+
let holding = false;
|
|
285
|
+
for (;;) {
|
|
286
|
+
const evaluatedAt = new Date();
|
|
287
|
+
const decision = await this.urgentStoryLaunchHoldEvaluate(holdRepository, target, evaluatedAt);
|
|
288
|
+
if (holdProgress.boundReached) {
|
|
289
|
+
return;
|
|
290
|
+
}
|
|
291
|
+
const waitedSeconds = Math.round((evaluatedAt.getTime() - holdStartedAtMilliseconds) / 1000);
|
|
292
|
+
const proceedLog = (reason) => {
|
|
293
|
+
console.log(holding
|
|
294
|
+
? `${URGENT_STORY_LAUNCH_HOLD_LOG_PREFIX}released ${callerIssueUrl} after ${waitedSeconds}s: ${reason}`
|
|
295
|
+
: `${URGENT_STORY_LAUNCH_HOLD_LOG_PREFIX}${callerIssueUrl} proceeds to spawn: ${reason}`);
|
|
296
|
+
};
|
|
297
|
+
switch (decision.kind) {
|
|
298
|
+
case 'callerStoryIsUrgent':
|
|
299
|
+
console.log(`${URGENT_STORY_LAUNCH_HOLD_LOG_PREFIX}urgent-story task ${callerIssueUrl} (story ${decision.callerStory}) proceeds to spawn`);
|
|
300
|
+
return;
|
|
301
|
+
case 'urgentTaskDependsOnCaller':
|
|
302
|
+
console.log(`${URGENT_STORY_LAUNCH_HOLD_LOG_PREFIX}${callerIssueUrl} proceeds to spawn because urgent-story task ${decision.dependingUrgentIssueUrl} depends on it and is waiting in Awaiting Workspace`);
|
|
303
|
+
return;
|
|
304
|
+
case 'noUrgentTaskWaiting':
|
|
305
|
+
proceedLog('no urgent-story task of another project is waiting');
|
|
306
|
+
return;
|
|
307
|
+
case 'freeSlotCountUnknown':
|
|
308
|
+
console.warn(`${URGENT_STORY_LAUNCH_HOLD_LOG_PREFIX}cannot count free token slots; ${callerIssueUrl} spawns without the urgent-story hold`);
|
|
309
|
+
return;
|
|
310
|
+
case 'freeSlotsExceedWaitingUrgentTasks':
|
|
311
|
+
proceedLog(`${decision.freeSlotCount} free slot(s) exceed the ${decision.waitingUrgentIssueUrls.length} waiting urgent-story task(s)`);
|
|
312
|
+
return;
|
|
313
|
+
case 'hold':
|
|
314
|
+
break;
|
|
315
|
+
}
|
|
316
|
+
if (waitedSeconds >= URGENT_STORY_LAUNCH_HOLD_TIMEOUT_SECONDS) {
|
|
317
|
+
await holdRepository.recordTimedOutIssueUrls(decision.waitingUrgentIssueUrls, new Date());
|
|
318
|
+
console.warn(`${URGENT_STORY_LAUNCH_HOLD_LOG_PREFIX}stopped holding ${callerIssueUrl} after ${waitedSeconds}s; urgent-story task(s) still not spawned and not waited for during the next ${urgentStoryLaunchHoldDecide_1.URGENT_STORY_LAUNCH_HOLD_TIMED_OUT_ISSUE_IGNORED_SECONDS}s: ${decision.waitingUrgentIssueUrls.join(' ')}`);
|
|
319
|
+
return;
|
|
320
|
+
}
|
|
321
|
+
if (!holding) {
|
|
322
|
+
holding = true;
|
|
323
|
+
await holdRepository.createHoldingRecord(decision.callerProjectUrl);
|
|
324
|
+
console.log(`${URGENT_STORY_LAUNCH_HOLD_LOG_PREFIX}holding ${callerIssueUrl} (story ${decision.callerStory ?? 'unknown'}) because ${decision.waitingUrgentIssueUrls.length} urgent-story task(s) wait for ${decision.freeSlotCount} free slot(s): ${decision.waitingUrgentIssueUrls.join(' ')}`);
|
|
325
|
+
}
|
|
326
|
+
await sleeper.sleep(URGENT_STORY_LAUNCH_HOLD_POLL_INTERVAL_MILLISECONDS);
|
|
327
|
+
}
|
|
328
|
+
};
|
|
329
|
+
this.urgentStoryLaunchHoldEvaluate = async (holdRepository, target, evaluatedAt) => {
|
|
330
|
+
const decideInputWithoutFreeSlotCount = {
|
|
331
|
+
urgentStoryNames: target.urgentStoryNames,
|
|
332
|
+
callerIssueUrl: target.callerIssueUrl,
|
|
333
|
+
configuredProjectUrl: target.configuredProjectUrl,
|
|
334
|
+
manager: target.manager,
|
|
335
|
+
boardState: await holdRepository.readBoardState(evaluatedAt),
|
|
336
|
+
now: evaluatedAt,
|
|
337
|
+
};
|
|
338
|
+
const decisionWithoutFreeSlotCount = (0, urgentStoryLaunchHoldDecide_1.urgentStoryLaunchHoldDecide)({
|
|
339
|
+
...decideInputWithoutFreeSlotCount,
|
|
340
|
+
freeSlotCount: null,
|
|
341
|
+
});
|
|
342
|
+
if (decisionWithoutFreeSlotCount.kind !== 'freeSlotCountUnknown') {
|
|
343
|
+
return decisionWithoutFreeSlotCount;
|
|
344
|
+
}
|
|
345
|
+
return (0, urgentStoryLaunchHoldDecide_1.urgentStoryLaunchHoldDecide)({
|
|
346
|
+
...decideInputWithoutFreeSlotCount,
|
|
347
|
+
freeSlotCount: await this.urgentStoryLaunchHoldFreeSlotCountRead(holdRepository),
|
|
348
|
+
});
|
|
349
|
+
};
|
|
350
|
+
this.urgentStoryLaunchHoldFreeSlotCountRead = async (holdRepository) => {
|
|
351
|
+
const tokenUsages = await holdRepository.getAvailableTokenUsages();
|
|
352
|
+
if (tokenUsages.length === 0) {
|
|
353
|
+
return null;
|
|
354
|
+
}
|
|
355
|
+
const { tokensWithLimits } = this.selectRotationTokens(tokenUsages, URGENT_STORY_LAUNCH_HOLD_UTILIZATION_PERCENTAGE_THRESHOLD, URGENT_STORY_LAUNCH_HOLD_TOKEN_MODEL_NAME, null, Number.MAX_SAFE_INTEGER, exports.NORMAL_CONCURRENT_LIMIT);
|
|
356
|
+
const tokenInFlightCounts = await holdRepository.getTokenInFlightCounts();
|
|
357
|
+
return tokensWithLimits.reduce((freeSlotCount, { token, limit }) => freeSlotCount + Math.max(0, limit - (tokenInFlightCounts[token] ?? 0)), 0);
|
|
358
|
+
};
|
|
228
359
|
this.run = async (params) => {
|
|
229
360
|
const normalConcurrentLimit = params.normalConcurrentLimit ?? exports.NORMAL_CONCURRENT_LIMIT;
|
|
230
361
|
const tokenUsages = await this.claudeTokenUsageRepository.getAvailableTokenUsages();
|
|
@@ -436,10 +567,12 @@ class StartPreparationUseCase {
|
|
|
436
567
|
}
|
|
437
568
|
let branchName;
|
|
438
569
|
const relatedPRs = branchSource.relatedOpenPullRequests;
|
|
439
|
-
const
|
|
570
|
+
const isPullRequestInIssueRepository = (pr) => {
|
|
440
571
|
const match = /^https?:\/\/[^/]+\/([^/]+\/[^/]+)\//.exec(pr.url);
|
|
441
572
|
return match === null || match[1] === issue.nameWithOwner;
|
|
442
|
-
}
|
|
573
|
+
};
|
|
574
|
+
const sameRepoRelatedPRs = relatedPRs.filter(isPullRequestInIssueRepository);
|
|
575
|
+
const crossRepoRelatedPRs = relatedPRs.filter((pr) => !isPullRequestInIssueRepository(pr));
|
|
443
576
|
if (sameRepoRelatedPRs.length > 1) {
|
|
444
577
|
const latestSessionBranchName = await this.issueLatestSessionBranchRepository.findBranchNameByIssue(issue);
|
|
445
578
|
const canonicalPullRequestSelection = (0, canonicalPullRequestSelect_1.canonicalPullRequestSelect)([sameRepoRelatedPRs[0], ...sameRepoRelatedPRs.slice(1)], latestSessionBranchName);
|
|
@@ -490,6 +623,13 @@ class StartPreparationUseCase {
|
|
|
490
623
|
}
|
|
491
624
|
branchName = sameRepoRelatedPRs[0].branchName;
|
|
492
625
|
}
|
|
626
|
+
else if (crossRepoRelatedPRs.length === 1) {
|
|
627
|
+
if (crossRepoRelatedPRs[0].branchName === null) {
|
|
628
|
+
console.warn(`Skipping issue ${issue.url}: related open PR has unavailable head branch.`);
|
|
629
|
+
continue;
|
|
630
|
+
}
|
|
631
|
+
branchName = crossRepoRelatedPRs[0].branchName;
|
|
632
|
+
}
|
|
493
633
|
else {
|
|
494
634
|
branchName = `i${issue.number}`;
|
|
495
635
|
}
|
|
@@ -619,6 +759,12 @@ class StartPreparationUseCase {
|
|
|
619
759
|
await revertToAwaitingWorkspace('no LLM model is configured');
|
|
620
760
|
continue;
|
|
621
761
|
}
|
|
762
|
+
// Captured here, at the moment this use case decides to dispatch `aw`, rather than left for
|
|
763
|
+
// `aw` to approximate with its own `date -u` call after the process has already started.
|
|
764
|
+
// `NotifyFinishedIssuePreparationUseCase` uses it (via `--dispatchStartedAt` on
|
|
765
|
+
// notifyFinishedIssuePreparation, passed through by `aw`) to ignore an agent report posted
|
|
766
|
+
// before this session was dispatched.
|
|
767
|
+
const dispatchStartedAt = new Date().toISOString();
|
|
622
768
|
const awArgs = [
|
|
623
769
|
issue.url,
|
|
624
770
|
agent,
|
|
@@ -627,12 +773,20 @@ class StartPreparationUseCase {
|
|
|
627
773
|
params.configFilePath,
|
|
628
774
|
'--branch',
|
|
629
775
|
branchName,
|
|
776
|
+
'--dispatchStartedAt',
|
|
777
|
+
dispatchStartedAt,
|
|
630
778
|
];
|
|
631
779
|
if (params.codexHomeCandidates !== null &&
|
|
632
780
|
params.codexHomeCandidates.length > 0) {
|
|
633
781
|
const codexHome = params.codexHomeCandidates[startedInThisRunCount % params.codexHomeCandidates.length];
|
|
634
782
|
awArgs.push('--codexHome', codexHome);
|
|
635
783
|
}
|
|
784
|
+
await this.urgentStoryLaunchHoldWait({
|
|
785
|
+
callerIssueUrl: issue.url,
|
|
786
|
+
urgentStoryNames: params.urgentStoryNames ?? [],
|
|
787
|
+
configuredProjectUrl: params.projectUrl,
|
|
788
|
+
manager: params.manager,
|
|
789
|
+
});
|
|
636
790
|
const spawnResult = await this.localCommandRunner.runCommand('aw', awArgs, spawnEnv ? { env: spawnEnv } : undefined);
|
|
637
791
|
if (spawnResult.exitCode !== 0) {
|
|
638
792
|
await revertToAwaitingWorkspace(`aw exited with ${spawnResult.exitCode}. stdout: ${spawnResult.stdout} stderr: ${spawnResult.stderr}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StartPreparationUseCase.js","sourceRoot":"","sources":["../../../src/domain/usecases/StartPreparationUseCase.ts"],"names":[],"mappings":";;;AAGA,2EAAuE;AACvE,+DAIoC;AACpC,2EAA2E;AAC3E,2FAAsF;AACtF,uFAA0E;AAW1E,6EAGsC;AACtC,2EAAwE;AACxE,iGAA8F;AAC9F,2FAAwF;AACxF,+EAA4E;AAC5E,uEAImC;AAEtB,QAAA,uBAAuB,GAAG,CAAC,CAAC;AACzC,MAAM,kCAAkC,GAAG,GAAG,CAAC;AAC/C,MAAM,kCAAkC,GAAG,GAAG,CAAC;AAClC,QAAA,+BAA+B,GAAG,iBAAiB,CAAC;AACjE,MAAM,sBAAsB,GAAG,YAAY,CAAC;AAC/B,QAAA,yCAAyC,GAAG,CAAC,CAAC;AAC9C,QAAA,4BAA4B,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAenD,MAAM,wBAAwB,GAAG,CAAC,WAAmB,EAAU,EAAE,CACtE,WAAW,CAAC,UAAU,CAAC,sBAAsB,CAAC;IAC5C,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE;IACzD,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;AAHZ,QAAA,wBAAwB,4BAGZ;AAWzB,MAAM,0CAA0C,GAAG,CAAC,EAClD,oBAAoB,EACpB,cAAc,GACgB,EAAiB,EAAE,CACjD,cAAc,KAAK,uBAAuB;IACxC,CAAC,CAAC,wFAAwF,oBAAoB,CAAC,UAAU,iBAAiB;IAC1I,CAAC,CAAC,IAAI,CAAC;AAEX,MAAa,uBAAuB;IAClC,YACmB,iBAGhB,EACgB,eAgBhB,EACgB,kBAAsC,EACtC,0BAAsD,EACtD,4BAA0D,EAC1D,gCAAkE,EAClE,kCAAsE;QAzBtE,sBAAiB,GAAjB,iBAAiB,CAGjC;QACgB,oBAAe,GAAf,eAAe,CAgB/B;QACgB,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,+BAA0B,GAA1B,0BAA0B,CAA4B;QACtD,iCAA4B,GAA5B,4BAA4B,CAA8B;QAC1D,qCAAgC,GAAhC,gCAAgC,CAAkC;QAClE,uCAAkC,GAAlC,kCAAkC,CAAoC;QAGjF,qBAAgB,GAAG,CACzB,KAAuB,EACvB,eAAuB,EACd,EAAE,CAAC,KAAK,CAAC,iBAAiB,GAAG,eAAe,CAAC;QAEhD,+BAA0B,GAAG,CAAC,KAAuB,EAAW,EAAE;YACxE,MAAM,KAAK,GAAG,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;YACnD,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,CAAC;QAC/C,CAAC,CAAC;QAEM,wBAAmB,GAAG,CAC5B,KAAuB,EACvB,gBAA+B,EAC/B,iBAAgC,EACjB,EAAE;YACjB,MAAM,aAAa,GAAG,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;YAC3D,IAAI,aAAa,KAAK,SAAS,IAAI,aAAa,CAAC,QAAQ,EAAE,CAAC;gBAC1D,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,CACL,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC,IAAI,CACxC,CAAC,SAAS,EAAuB,EAAE,CACjC,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,EAAE,CACzC,IAAI,IAAI,CACV,CAAC;QACJ,CAAC,CAAC;QAEM,8BAAyB,GAAG,CAClC,KAAuB,EACvB,eAAuB,EACf,EAAE;YACV,MAAM,KAAK,GAAG,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;YACnD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,OAAO,KAAK,CAAC,QAAQ,GAAG,eAAe,CAAC;YAC1C,CAAC;YACD,OAAO,MAAM,CAAC,iBAAiB,CAAC;QAClC,CAAC,CAAC;QAEM,6CAAwC,GAAG,CACjD,CAAmB,EACnB,CAAmB,EACnB,eAAuB,EACf,EAAE;YACV,MAAM,kBAAkB,GAAG,IAAI,CAAC,yBAAyB,CACvD,CAAC,EACD,eAAe,CAChB,CAAC;YACF,MAAM,kBAAkB,GAAG,IAAI,CAAC,yBAAyB,CACvD,CAAC,EACD,eAAe,CAChB,CAAC;YACF,IAAI,kBAAkB,KAAK,kBAAkB,EAAE,CAAC;gBAC9C,OAAO,kBAAkB,GAAG,kBAAkB,CAAC;YACjD,CAAC;YACD,OAAO,CAAC,CAAC,mBAAmB,GAAG,CAAC,CAAC,mBAAmB,CAAC;QACvD,CAAC,CAAC;QAEM,2BAAsB,GAAG,CAC/B,WAAmB,EACnB,sBAA8B,EAC9B,qBAA6B,EACrB,EAAE;YACV,IAAI,WAAW,GAAG,sBAAsB,EAAE,CAAC;gBACzC,OAAO,qBAAqB,CAAC;YAC/B,CAAC;YACD,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,sBAAsB,CAAC,CAAC;YACnE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC,CAAC,CAAC;QACnE,CAAC,CAAC;QAEF,4BAAuB,GAAG,CACxB,mBAA2B,EAC3B,mBAA2B,EAC3B,eAAwB,EACxB,wBAAgC,+BAAuB,EAC/C,EAAE;YACV,MAAM,aAAa,GAAG,IAAI,CAAC,sBAAsB,CAC/C,mBAAmB,EACnB,kCAAkC,EAClC,qBAAqB,CACtB,CAAC;YACF,MAAM,aAAa,GAAG,IAAI,CAAC,sBAAsB,CAC/C,mBAAmB,EACnB,kCAAkC,EAClC,qBAAqB,CACtB,CAAC;YACF,MAAM,MAAM,GAAG,eAAe,IAAI,kDAAwB,CAAC;YAC3D,OAAO,IAAI,CAAC,GAAG,CACb,CAAC,EACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,aAAa,CAAC,GAAG,MAAM,CAAC,CAC5D,CAAC;QACJ,CAAC,CAAC;QAEF,oCAA+B,GAAG,CAChC,KAAY,EACZ,mBAAoC,EACpC,OAAe,EACf,GAAS,EACT,oBAA4B,oCAA4B,EAClB,EAAE;YACxC,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvC,OAAO,mBAAmB,CAAC;YAC7B,CAAC;YACD,IAAI,GAAG,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,iBAAiB,EAAE,CAAC;gBAClE,OAAO,iBAAiB,CAAC;YAC3B,CAAC;YACD,IAAI,IAAA,qEAAiC,EAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;gBAClD,MAAM,eAAe,GAAG,IAAI,IAAI,CAC9B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CACxE,CAAC;gBACF,OAAO,KAAK,CAAC,cAAc,KAAK,IAAI;oBAClC,KAAK,CAAC,cAAc,IAAI,eAAe;oBACvC,CAAC,CAAC,sBAAsB;oBACxB,CAAC,CAAC,0BAA0B,CAAC;YACjC,CAAC;YACD,IACE,CAAC,IAAA,2EAAoC,EAAC,KAAK,CAAC,MAAM,EAAE,mBAAmB,CAAC,EACxE,CAAC;gBACD,OAAO,kBAAkB,CAAC;YAC5B,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBACvC,OAAO,sBAAsB,CAAC;YAChC,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEM,iCAA4B,GAAG,KAAK,EAC1C,qBAA8B,EAC9B,mBAAoC,EACpC,OAAe,EACf,GAAS,EACT,OAAgB,EAChB,iBAAyB,EAIxB,EAAE;YACH,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAAU,CAAC;YACnD,KAAK,MAAM,SAAS,IAAI,qBAAqB,EAAE,CAAC;gBAC9C,IACE,IAAI,CAAC,+BAA+B,CAClC,SAAS,EACT,mBAAmB,EACnB,OAAO,EACP,GAAG,EACH,iBAAiB,CAClB,KAAK,IAAI,EACV,CAAC;oBACD,SAAS;gBACX,CAAC;gBACD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,CAClD,SAAS,CAAC,GAAG,EACb,OAAO,CACR,CAAC;gBACF,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;oBAC3B,OAAO,CAAC,IAAI,CACV,YAAY,SAAS,CAAC,GAAG,yEAAyE,CACnG,CAAC;oBACF,MAAM,IAAI,CAAC,eAAe,CAAC,2BAA2B,CACpD,OAAO,CAAC,EAAE,EACV,SAAS,CACV,CAAC;oBACF,wBAAwB,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;oBAC5C,SAAS;gBACX,CAAC;gBACD,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,wBAAwB,EAAE,CAAC;YAChE,CAAC;YACD,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC;QAC3D,CAAC,CAAC;QAEM,8BAAyB,GAAG,CAAC,MAAe,EAAe,EAAE;YACnE,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAU,CAAC;YAC/C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;oBAClC,SAAS;gBACX,CAAC;gBACD,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,yBAAyB,EAAE,CAAC;oBACvD,oBAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACrC,CAAC;YACH,CAAC;YACD,OAAO,oBAAoB,CAAC;QAC9B,CAAC,CAAC;QAEF,qCAAgC,GAAG,KAAK,EACtC,SAAmB,EACnB,yBAA8C,EACI,EAAE;YACpD,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAGnC,CAAC;YACJ,IAAI,SAAS,GAAG,CAAC,CAAC;YAClB,MAAM,iBAAiB,GAAG,KAAK,IAAmB,EAAE;gBAClD,OAAO,SAAS,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC;oBACpC,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;oBACtC,SAAS,IAAI,CAAC,CAAC;oBACf,IAAI,yBAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAC5C,sBAAsB,CAAC,GAAG,CAAC,QAAQ,EAAE;4BACnC,eAAe,EAAE,IAAI;4BACrB,uBAAuB,EACrB,MAAM,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,QAAQ,CAAC;yBAC1D,CAAC,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACN,sBAAsB,CAAC,GAAG,CAAC,QAAQ,EAAE;4BACnC,eAAe,EAAE,IAAI;4BACrB,uBAAuB,EAAE,EAAE;yBAC5B,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;YACF,MAAM,OAAO,CAAC,GAAG,CACf,KAAK,CAAC,IAAI,CACR;gBACE,MAAM,EAAE,IAAI,CAAC,GAAG,CACd,iDAAyC,EACzC,SAAS,CAAC,MAAM,CACjB;aACF,EACD,iBAAiB,CAClB,CACF,CAAC;YACF,OAAO,sBAAsB,CAAC;QAChC,CAAC,CAAC;QAEM,yBAAoB,GAAG,CAC7B,WAA+B,EAC/B,8BAAsC,EACtC,gBAA+B,EAC/B,iBAAgC,EAChC,aAAqB,EACrB,qBAA6B,EAW7B,EAAE;YACF,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;YAC1C,MAAM,cAAc,GAAG,WAAW;iBAC/B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;iBACjC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC;iBAC1C,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;iBACjE,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,mBAAmB,GAAG,GAAG,GAAG,8BAA8B,CACnE;iBACA,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBACjB,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CACpC,KAAK,EACL,gBAAgB,EAChB,iBAAiB,CAClB,CAAC;gBACF,IAAI,KAAK,KAAK,IAAI;oBAAE,OAAO,EAAE,CAAC;gBAC9B,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YAC5B,CAAC,CAAC;iBACD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACb,IAAI,CAAC,wCAAwC,CAC3C,CAAC,CAAC,KAAK,EACP,CAAC,CAAC,KAAK,EACP,eAAe,CAChB,CACF,CAAC;YAEJ,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAChC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC;YAC/D,CAAC;YAED,MAAM,gBAAgB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;gBACjE,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,KAAK;gBACL,KAAK,EAAE,IAAI,CAAC,uBAAuB,CACjC,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,eAAe,EACrB,qBAAqB,CACtB;gBACD,yBAAyB,EAAE,IAAI,CAAC,yBAAyB,CACvD,KAAK,EACL,eAAe,CAChB;gBACD,iBAAiB,EAAE,IAAA,sDAA4B,EAC7C,KAAK,CAAC,mBAAmB,CAC1B;aACF,CAAC,CAAC,CAAC;YAEJ,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC5E,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;YAE5D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACnE,MAAM,YAAY,GAAa,EAAE,CAAC;YAClC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC9C,KAAK,MAAM,CAAC,IAAI,gBAAgB,EAAE,CAAC;oBACjC,IAAI,CAAC,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC;wBACpB,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBAC7B,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,CAAC;QAClE,CAAC,CAAC;QAEF,uBAAkB,GAAG,CACnB,WAA+B,EAC/B,8BAAsC,EAChB,EAAE;YACxB,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;YAC1C,MAAM,cAAc,GAAG,WAAW;iBAC/B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;iBACjC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC;iBAC1C,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;iBACjE,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC;iBAC1D,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,mBAAmB,GAAG,GAAG,GAAG,8BAA8B,CACnE;iBACA,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACb,IAAI,CAAC,wCAAwC,CAAC,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,CACrE,CAAC;YACJ,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACxE,MAAM,QAAQ,GAAyB,WAAW;iBAC/C,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;iBACxD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACf,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;gBACtB,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;gBAC9C,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,QAAQ,EACN,KAAK,CAAC,gBAAgB,IAAI,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC;gBAClE,iBAAiB,EACf,CAAC,KAAK,CAAC,OAAO;oBACd,CAAC,KAAK,CAAC,gBAAgB;oBACvB,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,eAAe,CAAC;oBAC9C,CAAC,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC;oBACvC,KAAK,CAAC,mBAAmB,GAAG,GAAG,IAAI,8BAA8B;gBACnE,gBAAgB,EACd,CAAC,KAAK,CAAC,OAAO;oBACd,CAAC,KAAK,CAAC,gBAAgB;oBACvB,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,eAAe,CAAC;aAChD,CAAC,CAAC,CAAC;YACN,MAAM,eAAe,GAAyB,cAAc,CAAC,GAAG,CAC9D,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACV,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;gBACtB,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;gBAC9C,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,KAAK;gBACf,iBAAiB,EAAE,KAAK;gBACxB,gBAAgB,EAAE,KAAK;aACxB,CAAC,CACH,CAAC;YACF,OAAO,CAAC,GAAG,eAAe,EAAE,GAAG,QAAQ,CAAC,CAAC;QAC3C,CAAC,CAAC;QAEF,QAAG,GAAG,KAAK,EAAE,MAkBZ,EAA2D,EAAE;YAC5D,MAAM,qBAAqB,GACzB,MAAM,CAAC,qBAAqB,IAAI,+BAAuB,CAAC;YAC1D,MAAM,WAAW,GACf,MAAM,IAAI,CAAC,0BAA0B,CAAC,uBAAuB,EAAE,CAAC;YAClE,IAAI,cAAc,GAAoB,IAAI,CAAC;YAC3C,IAAI,YAAY,GAAkB,IAAI,CAAC;YACvC,IAAI,wBAAwB,GAMvB,EAAE,CAAC;YACR,IAAI,mBAAmB,GAA2B,EAAE,CAAC;YACrD,MAAM,aAAa,GACjB,WAAW,CAAC,MAAM,GAAG,CAAC;gBACpB,CAAC,CAAC,IAAI,CAAC,kBAAkB,CACrB,WAAW,EACX,MAAM,CAAC,8BAA8B,CACtC;gBACH,CAAC,CAAC,IAAI,CAAC;YACX,MAAM,2BAA2B,GAC/B,MAAM,CAAC,2BAA2B,IAAI,+BAAuB,CAAC;YAChE,IAAI,gCAAgC,GAAG,2BAA2B,CAAC;YACnE,MAAM,oBAAoB,GACxB,MAAM,CAAC,oBAAoB,IAAI,uCAA+B,CAAC;YACjE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,EACJ,MAAM,EAAE,cAAc,EACtB,YAAY,EAAE,WAAW,EACzB,gBAAgB,EAAE,6BAA6B,GAChD,GAAG,IAAI,CAAC,oBAAoB,CAC3B,WAAW,EACX,MAAM,CAAC,8BAA8B,EACrC,MAAM,CAAC,mBAAmB,EAC1B,oBAAoB,EACpB,2BAA2B,EAC3B,qBAAqB,CACtB,CAAC;gBACF,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAChC,OAAO,CAAC,IAAI,CACV,OAAO,WAAW,CAAC,MAAM,4KAA4K,MAAM,CAAC,8BAA8B,oCAAoC,CAC/Q,CAAC;oBACF,OAAO,EAAE,aAAa,EAAE,CAAC;gBAC3B,CAAC;gBACD,MAAM,IAAI,CAAC,0BAA0B,CAAC,gBAAgB,EAAE,CAAC;gBACzD,mBAAmB;oBACjB,MAAM,IAAI,CAAC,0BAA0B,CAAC,sBAAsB,EAAE,CAAC;gBACjE,cAAc,GAAG,cAAc,CAAC;gBAChC,wBAAwB,GAAG,6BAA6B,CAAC;gBACzD,gCAAgC,GAAG,WAAW,CAAC;gBAC/C,YAAY,GAAG,IAAI,CAAC,0BAA0B,CAAC,YAAY,EAAE,CAAC;YAChE,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACzE,MAAM,cAAc,GAClB,MAAM,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAExD,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CACjE,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,CACpC,CAAC;YACF,MAAM,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAC1D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,wCAAuB,CAC1C,CAAC;YACF,IAAI,CAAC,uBAAuB,EAAE,CAAC;gBAC7B,OAAO,CAAC,KAAK,CACX,8BAA8B,wCAAuB,yBAAyB,CAC/E,CAAC;gBACF,OAAO,EAAE,aAAa,EAAE,CAAC;YAC3B,CAAC;YACD,MAAM,6BAA6B,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAChE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,+CAA8B,CACjD,CAAC;YACF,MAAM,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAC1D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,iCAAgB,CACnC,CAAC;YAEF,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAC9B,IAAI,CAAC,4BAA4B,CAAC,oBAAoB,EAAE,CACzD,CAAC;YACF,MAAM,oBAAoB,GACxB,MAAM,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACnD,MAAM,4BAA4B,GAAG,eAAe,CAAC,MAAM,CACzD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,wCAAuB,CACpD,CAAC,MAAM,CAAC;YACT,IAAI,mCAAmC,GAAG,4BAA4B,CAAC;YACvE,IAAI,qBAAqB,GAAG,CAAC,CAAC;YAC9B,MAAM,uBAAuB,GAA2B,EAAE,CAAC;YAC3D,IAAI,4BAA4B,GAAG,KAAK,CAAC;YACzC,MAAM,eAAe,GAAG;gBACtB,iBAAiB,EAAE,CAAC;gBACpB,eAAe,EAAE,CAAC;gBAClB,oBAAoB,EAAE,CAAC;gBACvB,wBAAwB,EAAE,CAAC;gBAC3B,gBAAgB,EAAE,CAAC;gBACnB,oBAAoB,EAAE,CAAC;aACxB,CAAC;YAEF,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,iBAAiB,GACrB,MAAM,CAAC,iBAAiB,IAAI,oCAA4B,CAAC;YAE3D,MAAM,iCAAiC,GAAG,CAAC,KAAY,EAAW,EAAE,CAClE,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,0CAAmB,CAAC,CAAC;YACtE,MAAM,gBAAgB,GAAG,CAAC,KAAY,EAAW,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC;YAEzE,MAAM,8BAA8B,GAAG,eAAe,CAAC,MAAM,CAC3D,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,MAAM,KAAK,+CAA8B;gBAC/C,CAAC,KAAK,CAAC,QAAQ;gBACf,CAAC,KAAK,CAAC,IAAI;gBACX,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAC3B,CAAC;YACF,MAAM,2CAA2C,GAAG,oBAAoB;iBACrE,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,MAAM,KAAK,+CAA8B;gBAC/C,CAAC,KAAK,CAAC,QAAQ;gBACf,CAAC,KAAK,CAAC,IAAI;gBACX,gBAAgB,CAAC,KAAK,CAAC,CAC1B;iBACA,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;YACjE,MAAM,EAAE,aAAa,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,GACvE,MAAM,IAAI,CAAC,4BAA4B,CACrC,2CAA2C,EAC3C,MAAM,CAAC,mBAAmB,EAC1B,MAAM,CAAC,OAAO,EACd,GAAG,EACH,OAAO,EACP,iBAAiB,CAClB,CAAC;YACJ,MAAM,yCAAyC,GAC7C,2CAA2C,CAAC,MAAM,CAChD,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,GAAG,KAAK,sBAAsB,EAAE,GAAG;gBACzC,CAAC,wBAAwB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAC3C,CAAC;YACJ,MAAM,uBAAuB,GAC3B,sBAAsB,KAAK,IAAI;gBAC7B,CAAC,CAAC;oBACE,GAAG,8BAA8B;oBACjC,GAAG,yCAAyC;iBAC7C;gBACH,CAAC,CAAC;oBACE,sBAAsB;oBACtB,GAAG,8BAA8B;oBACjC,GAAG,yCAAyC;iBAC7C,CAAC;YAER,MAAM,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,IAAI,IAAI,CAAC;YACjE,MAAM,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,IAAI,IAAI,CAAC;YAEnE,IAAI,qBAAqB,KAAK,IAAI,EAAE,CAAC;gBACnC,MAAM,gBAAgB,GACpB,MAAM,IAAI,CAAC,gCAAgC,CAAC,wBAAwB,EAAE,CAAC;gBACzE,IACE,gBAAgB,KAAK,IAAI;oBACzB,gBAAgB,GAAG,qBAAqB,EACxC,CAAC;oBACD,OAAO,CAAC,IAAI,CACV,2BAA2B,gBAAgB,sBAAsB,qBAAqB,gCAAgC,CACvH,CAAC;oBACF,OAAO,EAAE,aAAa,EAAE,CAAC;gBAC3B,CAAC;gBACD,IAAI,gBAAgB,KAAK,IAAI,EAAE,CAAC;oBAC9B,OAAO,CAAC,IAAI,CACV,4DAA4D,CAC7D,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,MAAM,oBAAoB,GAAG,IAAI,CAAC,yBAAyB,CAAC;gBAC1D,GAAG,eAAe;gBAClB,GAAG,oBAAoB;aACxB,CAAC,CAAC;YACH,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,gCAAgC,CACxE,uBAAuB;iBACpB,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CACR,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC;gBAChC,IAAI,CAAC,+BAA+B,CAClC,KAAK,EACL,MAAM,CAAC,mBAAmB,EAC1B,MAAM,CAAC,OAAO,EACd,GAAG,EACH,iBAAiB,CAClB,KAAK,IAAI,CACb;iBACA,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC;iBACzB,KAAK,CACJ,CAAC,EACD,IAAI,CAAC,GAAG,CACN,CAAC,EACD,gCAAgC,GAAG,4BAA4B,CAChE,CACF,EACH,oBAAoB,CACrB,CAAC;YAEF,IACE,uBAAuB;gBACvB,MAAM,CAAC,mBAAmB,KAAK,IAAI;gBACnC,MAAM,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EACrC,CAAC;gBACD,KAAK,MAAM,KAAK,IAAI,uBAAuB,EAAE,CAAC;oBAC5C,IAAI,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC;wBAAE,SAAS;oBAC9C,MAAM,eAAe,GAAG,IAAI,CAAC,+BAA+B,CAC1D,KAAK,EACL,MAAM,CAAC,mBAAmB,EAC1B,MAAM,CAAC,OAAO,EACd,GAAG,EACH,iBAAiB,CAClB,CAAC;oBACF,IAAI,eAAe,KAAK,kBAAkB;wBAAE,SAAS;oBACrD,MAAM,WAAW,GAAG,wBAAwB,KAAK,CAAC,MAAM,6DAA6D,CAAC;oBACtH,MAAM,gBAAgB,GACpB,MAAM,IAAI,CAAC,eAAe,CAAC,6BAA6B,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACtE,IACE,CAAC,IAAA,8CAAuB,EACtB,WAAW,EACX,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC3B,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,SAAS,EAAE,CAAC,CAAC,SAAS;qBACvB,CAAC,CAAC,EACH,GAAG,CACJ,EACD,CAAC;wBACD,MAAM,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;oBACxE,CAAC;oBACD,MAAM,SAAS,GAAG,MAAM,IAAA,yDAA2B,EAAC;wBAClD,eAAe,EAAE,IAAI,CAAC,eAAe;wBACrC,OAAO;wBACP,aAAa,EAAE,KAAK;wBACpB,iBAAiB,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;wBACzC,uBAAuB,EAAE,gEAAgE;qBAC1F,CAAC,CAAC;oBACH,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;wBACjC,SAAS;oBACX,CAAC;oBACD,IAAI,CAAC;wBACH,MAAM,IAAI,CAAC,eAAe,CAAC,YAAY,CACrC,OAAO,EACP,KAAK,EACL,uBAAuB,CAAC,EAAE,CAC3B,CAAC;oBACJ,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,IAAI,CAAC,CAAC,KAAK,YAAY,uDAAqB,CAAC;4BAAE,MAAM,KAAK,CAAC;wBAC3D,OAAO,CAAC,IAAI,CACV,mEAAmE,KAAK,CAAC,GAAG,EAAE,CAC/E,CAAC;wBACF,SAAS;oBACX,CAAC;gBACH,CAAC;YACH,CAAC;YAED,KACE,IAAI,CAAC,GAAG,CAAC,EACT,CAAC,GAAG,uBAAuB,CAAC,MAAM;gBAClC,mCAAmC,GAAG,gCAAgC,EACtE,CAAC,EAAE,EACH,CAAC;gBACD,MAAM,KAAK,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;gBACzC,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvC,eAAe,CAAC,iBAAiB,EAAE,CAAC;oBACpC,SAAS;gBACX,CAAC;gBACD,IAAI,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;oBACpC,OAAO,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,GAAG,2BAA2B,CAAC,CAAC;oBAC/D,SAAS;gBACX,CAAC;gBACD,IAAI,oBAAoB,KAAK,IAAI,EAAE,CAAC;oBAClC,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,IAAI,GAAG,qBAAqB,CAAC;oBACxE,IAAI,iBAAiB,IAAI,oBAAoB,EAAE,CAAC;wBAC9C,OAAO,CAAC,IAAI,CACV,sBAAsB,iBAAiB,IAAI,oBAAoB,kDAAkD,CAClH,CAAC;wBACF,MAAM;oBACR,CAAC;gBACH,CAAC;gBACD,MAAM,eAAe,GAAG,IAAI,CAAC,+BAA+B,CAC1D,KAAK,EACL,MAAM,CAAC,mBAAmB,EAC1B,MAAM,CAAC,OAAO,EACd,GAAG,EACH,iBAAiB,CAClB,CAAC;gBACF,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;oBAC7B,eAAe,CAAC,eAAe,CAAC,EAAE,CAAC;oBACnC,SAAS;gBACX,CAAC;gBACD,IAAI,YAAY,GAAG,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACzD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;oBAC/B,MAAM,8BAA8B,GAClC,MAAM,IAAI,CAAC,gCAAgC,CACzC,CAAC,KAAK,CAAC,GAAG,CAAC,EACX,oBAAoB,CACrB,CAAC;oBACJ,MAAM,oBAAoB,GAAG,8BAA8B,CAAC,GAAG,CAC7D,KAAK,CAAC,GAAG,CACV,CAAC;oBACF,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;wBACvC,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;wBAC5D,YAAY,GAAG,oBAAoB,CAAC;oBACtC,CAAC;gBACH,CAAC;gBACD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;oBAC/B,OAAO,CAAC,KAAK,CACX,YAAY,KAAK,CAAC,GAAG,6DAA6D,CACnF,CAAC;oBACF,SAAS;gBACX,CAAC;gBACD,MAAM,IAAA,mEAA+B,EACnC,KAAK,EACL,OAAO,EACP,MAAM,CAAC,MAAM,IAAI,EAAE,EACnB,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,eAAe,CACrB,CAAC;gBACF,MAAM,SAAS,GAAG,iCAAiC,CAAC,KAAK,CAAC,CAAC;gBAC3D,MAAM,KAAK,GACT,CAAC,SAAS,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI;oBAChC,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC,IAAA,gCAAwB,EAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;oBAChD,MAAM,CAAC,gBAAgB,CAAC;gBAC1B,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;oBACvC,MAAM,SAAS,GAAG,MAAM,IAAA,yDAA2B,EAAC;wBAClD,eAAe,EAAE,IAAI,CAAC,eAAe;wBACrC,OAAO;wBACP,aAAa,EAAE,KAAK;wBACpB,iBAAiB,EAAE,CAAC,OAAO,CAAC;wBAC5B,uBAAuB,EAAE,+CAA+C;qBACzE,CAAC,CAAC;oBACH,IAAI,SAAS,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;wBAC5C,SAAS;oBACX,CAAC;oBACD,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;wBACjC,MAAM,aAAa,GAAG,MAAM,IAAA,qDAAyB,EACnD,IAAI,CAAC,iBAAiB,EACtB,OAAO,EACP,KAAK,CACN,CAAC;wBACF,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;4BAC3B,MAAM,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAC3C,KAAK,CAAC,GAAG,EACT,OAAO,EACP,aAAa,CACd,CAAC;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM;qBAChC,IAAI,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;oBACxD,EAAE,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;qBAC1B,IAAI,EAAE,CAAC;gBACV,IACE,CAAC,cAAc;oBACf,CAAC,MAAM,CAAC,mBAAmB;oBAC3B,cAAc,KAAK,IAAI,EACvB,CAAC;oBACD,OAAO,CAAC,KAAK,CACX,qCAAqC,KAAK,CAAC,GAAG,6DAA6D,CAC5G,CAAC;oBACF,SAAS;gBACX,CAAC;gBACD,IAAI,UAAkB,CAAC;gBACvB,MAAM,UAAU,GAAG,YAAY,CAAC,uBAAuB,CAAC;gBACxD,MAAM,kBAAkB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE;oBAClD,MAAM,KAAK,GAAG,qCAAqC,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBACjE,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,aAAa,CAAC;gBAC5D,CAAC,CAAC,CAAC;gBACH,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClC,MAAM,uBAAuB,GAC3B,MAAM,IAAI,CAAC,kCAAkC,CAAC,qBAAqB,CACjE,KAAK,CACN,CAAC;oBACJ,MAAM,6BAA6B,GAAG,IAAA,uDAA0B,EAC9D,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EACvD,uBAAuB,CACxB,CAAC;oBACF,MAAM,WAAW,GAAG,6BAA6B,CAAC,oBAAoB,CAAC;oBACvE,MAAM,YAAY,GAChB,6BAA6B,CAAC,qBAAqB,CAAC;oBACtD,MAAM,sBAAsB,GAC1B,0CAA0C,CACxC,6BAA6B,CAC9B,CAAC;oBACJ,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;wBACvC,MAAM,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;wBAC7D,IAAI,WAAW,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;4BACpC,MAAM,IAAI,CAAC,eAAe,CAAC,uBAAuB,CAChD,WAAW,CAAC,GAAG,EACf,WAAW,CAAC,UAAU,CACvB,CAAC;wBACJ,CAAC;wBACD,MAAM,sBAAsB,GAAG;4BAC7B,oFAAoF,KAAK,CAAC,GAAG,iCAAiC,WAAW,CAAC,GAAG,GAAG;4BAChJ,GAAG,CAAC,sBAAsB,KAAK,IAAI;gCACjC,CAAC,CAAC,EAAE;gCACJ,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC;yBAC9B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBACZ,MAAM,2BAA2B,GAC/B,MAAM,IAAI,CAAC,eAAe,CAAC,6BAA6B,CACtD,WAAW,CAAC,GAAG,CAChB,CAAC;wBACJ,IACE,CAAC,IAAA,8CAAuB,EACtB,sBAAsB,EACtB,2BAA2B,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BACtC,IAAI,EAAE,CAAC,CAAC,IAAI;4BACZ,SAAS,EAAE,CAAC,CAAC,SAAS;yBACvB,CAAC,CAAC,EACH,IAAI,IAAI,EAAE,CACX,EACD,CAAC;4BACD,MAAM,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAC3C,WAAW,CAAC,GAAG,EACf,sBAAsB,CACvB,CAAC;wBACJ,CAAC;oBACH,CAAC;oBACD,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAClE,MAAM,gBAAgB,GAAG;wBACvB,GAAG,YAAY,CAAC,MAAM,qGAAqG,aAAa,iBAAiB,WAAW,CAAC,GAAG,EAAE;wBAC1K,GAAG,CAAC,sBAAsB,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC;qBACrE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACb,MAAM,qBAAqB,GACzB,MAAM,IAAI,CAAC,eAAe,CAAC,6BAA6B,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACtE,IACE,CAAC,IAAA,8CAAuB,EACtB,gBAAgB,EAChB,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAChC,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,SAAS,EAAE,CAAC,CAAC,SAAS;qBACvB,CAAC,CAAC,EACH,IAAI,IAAI,EAAE,CACX,EACD,CAAC;wBACD,MAAM,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAC3C,KAAK,CAAC,GAAG,EACT,gBAAgB,CACjB,CAAC;oBACJ,CAAC;oBACD,IAAI,WAAW,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;wBACpC,OAAO,CAAC,IAAI,CACV,kBAAkB,KAAK,CAAC,GAAG,qDAAqD,CACjF,CAAC;wBACF,SAAS;oBACX,CAAC;oBACD,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC;gBACtC,CAAC;qBAAM,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC3C,IAAI,kBAAkB,CAAC,CAAC,CAAC,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;wBAC9C,OAAO,CAAC,IAAI,CACV,kBAAkB,KAAK,CAAC,GAAG,gDAAgD,CAC5E,CAAC;wBACF,SAAS;oBACX,CAAC;oBACD,UAAU,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;gBAChD,CAAC;qBAAM,CAAC;oBACN,UAAU,GAAG,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBAClC,CAAC;gBAED,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;oBACnC,OAAO,CAAC,KAAK,CACX,kBAAkB,KAAK,CAAC,GAAG,iDAAiD,UAAU,EAAE,CACzF,CAAC;oBACF,SAAS;gBACX,CAAC;gBAED,MAAM,SAAS,GAAG,MAAM,IAAA,yDAA2B,EAAC;oBAClD,eAAe,EAAE,IAAI,CAAC,eAAe;oBACrC,OAAO;oBACP,aAAa,EAAE,KAAK;oBACpB,iBAAiB,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;oBACzC,uBAAuB,EAAE,oDAAoD;iBAC9E,CAAC,CAAC;gBACH,IAAI,SAAS,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;oBAC5C,SAAS;gBACX,CAAC;gBACD,IAAI,SAAS,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC/B,OAAO,CAAC,IAAI,CACV,YAAY,KAAK,CAAC,GAAG,4DAA4D,CAClF,CAAC;oBACF,IAAI,SAAS,CAAC,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;wBACrD,MAAM,IAAI,CAAC,eAAe,CAAC,2BAA2B,CACpD,OAAO,CAAC,EAAE,EACV,KAAK,CACN,CAAC;wBACF,MAAM,IAAI,CAAC,eAAe,CAAC,yBAAyB,CAClD,OAAO,CAAC,EAAE,EACV,SAAS,CAAC,SAAS,CACpB,CAAC;oBACJ,CAAC;oBACD,SAAS;gBACX,CAAC;gBACD,IAAI,SAAS,CAAC,SAAS,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrD,OAAO,CAAC,IAAI,CACV,YAAY,KAAK,CAAC,GAAG,4DAA4D,CAClF,CAAC;oBACF,SAAS;gBACX,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,eAAe,CAAC,YAAY,CACrC,OAAO,EACP,KAAK,EACL,uBAAuB,CAAC,EAAE,CAC3B,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC,CAAC,KAAK,YAAY,uDAAqB,CAAC;wBAAE,MAAM,KAAK,CAAC;oBAC3D,OAAO,CAAC,IAAI,CACV,iEAAiE,KAAK,CAAC,GAAG,EAAE,CAC7E,CAAC;oBACF,SAAS;gBACX,CAAC;gBACD,KAAK,CAAC,MAAM,GAAG,wCAAuB,CAAC;gBAEvC,MAAM,yBAAyB,GAAG,KAAK,EACrC,MAAc,EACC,EAAE;oBACjB,OAAO,CAAC,KAAK,CACX,aAAa,KAAK,CAAC,GAAG,OAAO,+CAA8B,mCAAmC,MAAM,EAAE,CACvG,CAAC;oBACF,IAAI,CAAC,6BAA6B,EAAE,CAAC;wBACnC,OAAO,CAAC,KAAK,CACX,qCAAqC,+CAA8B,2BAA2B,KAAK,CAAC,GAAG,aAAa,wCAAuB,oBAAoB,CAChK,CAAC;wBACF,OAAO;oBACT,CAAC;oBACD,IAAI,CAAC;wBACH,MAAM,IAAI,CAAC,eAAe,CAAC,YAAY,CACrC,OAAO,EACP,KAAK,EACL,6BAA6B,CAAC,EAAE,CACjC,CAAC;oBACJ,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,IAAI,CAAC,CAAC,KAAK,YAAY,uDAAqB,CAAC;4BAAE,MAAM,KAAK,CAAC;wBAC3D,OAAO,CAAC,IAAI,CACV,kDAAkD,+CAA8B,0EAA0E,KAAK,CAAC,GAAG,EAAE,CACtK,CAAC;wBACF,OAAO;oBACT,CAAC;oBACD,KAAK,CAAC,MAAM,GAAG,+CAA8B,CAAC;gBAChD,CAAC,CAAC;gBAEF,IAAI,QAA4C,CAAC;gBACjD,IAAI,eAAe,GAAkB,IAAI,CAAC;gBAC1C,IAAI,iBAAiB,GAAkB,IAAI,CAAC;gBAC5C,IAAI,cAAc,KAAK,IAAI,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;oBACrD,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAU,CAAC;oBAClD,MAAM,aAAa,GAAG,GAGb,EAAE,CACT,IAAA,oDAA0B,EACxB,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBACnC,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;wBACtC,yBAAyB,EAAE,CAAC,CAAC,yBAAyB;wBACtD,4BAA4B,EAAE,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;4BAChE,CAAC,CAAC,CAAC;4BACH,CAAC,CAAC,CAAC,CAAC,KAAK;gCACP,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gCACnC,CAAC,uBAAuB,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;qBAC5C,CAAC,CAAC,CACJ,CAAC;oBACJ,IAAI,mBAAmB,GAA4C,IAAI,CAAC;oBACxE,IAAI,wBAAwB,GAAkB,IAAI,CAAC;oBACnD,SAAS,CAAC;wBACR,IAAI,SAAS,GAAG,aAAa,EAAE,CAAC;wBAChC,IAAI,SAAS,KAAK,IAAI,IAAI,CAAC,4BAA4B,EAAE,CAAC;4BACxD,4BAA4B,GAAG,IAAI,CAAC;4BACpC,mBAAmB;gCACjB,MAAM,IAAI,CAAC,0BAA0B,CAAC,sBAAsB,EAAE,CAAC;4BACjE,SAAS,GAAG,aAAa,EAAE,CAAC;wBAC9B,CAAC;wBACD,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;4BACvB,MAAM;wBACR,CAAC;wBACD,MAAM,gBAAgB,GAAG,SAAS,CAAC;wBACnC,MAAM,cAAc,GAAG,wBAAwB,CAAC,IAAI,CAClD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,gBAAgB,CAAC,KAAK,CAC1C,EAAE,KAAK,CAAC;wBACT,IAAI,QAAiB,CAAC;wBACtB,IAAI,CAAC;4BACH,QAAQ;gCACN,MAAM,IAAI,CAAC,0BAA0B,CAAC,sBAAsB,CAAC;oCAC3D,KAAK,EAAE,gBAAgB,CAAC,KAAK;oCAC7B,eAAe,EAAE,cAAc,IAAI,CAAC;oCACpC,QAAQ,EAAE,KAAK,CAAC,GAAG;iCACpB,CAAC,CAAC;wBACP,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,OAAO,CAAC,KAAK,CACX,4CAA4C,KAAK,CAAC,GAAG,KAAK,MAAM,CAAC,KAAK,CAAC,EAAE,CAC1E,CAAC;4BACF,wBAAwB,GAAG,yCAAyC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;4BACpF,MAAM;wBACR,CAAC;wBACD,IAAI,QAAQ,EAAE,CAAC;4BACb,mBAAmB,GAAG,gBAAgB,CAAC;4BACvC,MAAM;wBACR,CAAC;wBACD,uBAAuB,CAAC,GAAG,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;oBACtD,CAAC;oBACD,IAAI,wBAAwB,KAAK,IAAI,EAAE,CAAC;wBACtC,MAAM,yBAAyB,CAAC,wBAAwB,CAAC,CAAC;wBAC1D,SAAS;oBACX,CAAC;oBACD,IAAI,mBAAmB,KAAK,IAAI,EAAE,CAAC;wBACjC,MAAM,yBAAyB,CAC7B,8DAA8D,CAC/D,CAAC;wBACF,MAAM;oBACR,CAAC;oBACD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,CAAC;oBAC3C,eAAe,GAAG,mBAAmB,CAAC,KAAK,CAAC;oBAC5C,iBAAiB,GAAG,QAAQ,CAAC;oBAC7B,QAAQ,GAAG;wBACT,uBAAuB,EAAE,QAAQ;wBACjC,kBAAkB,EAAE,YAAY;qBACjC,CAAC;gBACJ,CAAC;gBACD,MAAM,KAAK,GACT,cAAc,IAAI,eAAe,IAAI,MAAM,CAAC,mBAAmB,CAAC;gBAClE,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,OAAO,CAAC,KAAK,CACX,qCAAqC,KAAK,CAAC,GAAG,6DAA6D,CAC5G,CAAC;oBACF,MAAM,yBAAyB,CAAC,4BAA4B,CAAC,CAAC;oBAC9D,SAAS;gBACX,CAAC;gBACD,MAAM,MAAM,GAAa;oBACvB,KAAK,CAAC,GAAG;oBACT,KAAK;oBACL,KAAK;oBACL,kBAAkB;oBAClB,MAAM,CAAC,cAAc;oBACrB,UAAU;oBACV,UAAU;iBACX,CAAC;gBACF,IACE,MAAM,CAAC,mBAAmB,KAAK,IAAI;oBACnC,MAAM,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EACrC,CAAC;oBACD,MAAM,SAAS,GACb,MAAM,CAAC,mBAAmB,CACxB,qBAAqB,GAAG,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAC1D,CAAC;oBACJ,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;gBACxC,CAAC;gBACD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAC1D,IAAI,EACJ,MAAM,EACN,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CACzC,CAAC;gBACF,IAAI,WAAW,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;oBAC/B,MAAM,yBAAyB,CAC7B,kBAAkB,WAAW,CAAC,QAAQ,aAAa,WAAW,CAAC,MAAM,YAAY,WAAW,CAAC,MAAM,EAAE,CACtG,CAAC;oBACF,SAAS;gBACX,CAAC;gBACD,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;oBAC/B,uBAAuB,CAAC,iBAAiB,CAAC;wBACxC,CAAC,uBAAuB,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC1D,CAAC;gBACD,qBAAqB,EAAE,CAAC;gBACxB,mCAAmC,EAAE,CAAC;YACxC,CAAC;YACD,OAAO,CAAC,GAAG,CACT,yCAAyC,MAAM,CAAC,UAAU,uBAAuB,eAAe,CAAC,iBAAiB,qBAAqB,eAAe,CAAC,eAAe,0BAA0B,eAAe,CAAC,oBAAoB,8BAA8B,eAAe,CAAC,wBAAwB,sBAAsB,eAAe,CAAC,gBAAgB,0BAA0B,eAAe,CAAC,oBAAoB,EAAE,CACja,CAAC;YACF,OAAO,EAAE,aAAa,EAAE,CAAC;QAC3B,CAAC,CAAC;IAxhCC,CAAC;CAyhCL;AArjCD,0DAqjCC"}
|
|
1
|
+
{"version":3,"file":"StartPreparationUseCase.js","sourceRoot":"","sources":["../../../src/domain/usecases/StartPreparationUseCase.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkerSessionEndClassifyUseCase = exports.WORKER_SESSION_CONSECUTIVE_FAILURE_THRESHOLD = void 0;
|
|
4
|
+
const isRecord_1 = require("./isRecord");
|
|
5
|
+
exports.WORKER_SESSION_CONSECUTIVE_FAILURE_THRESHOLD = 3;
|
|
6
|
+
const TERMINAL_REASON_KEY_TEXT = '"terminal_reason"';
|
|
7
|
+
const TERMINAL_REASON_STRING_VALUE_PREFIX_TEXT = '"terminal_reason":"';
|
|
8
|
+
const COMPLETED_TERMINAL_REASON = 'completed';
|
|
9
|
+
const BLOCKING_LIMIT_TERMINAL_REASON = 'blocking_limit';
|
|
10
|
+
const ERROR_RESULT_FLAG_TEXT = '"is_error":true';
|
|
11
|
+
const USAGE_LIMIT_RESULT_TEXT_PATTERN = /hit your [A-Za-z0-9 ]+ limit/;
|
|
12
|
+
const RATE_LIMIT_EVENT_TYPE_TEXT = '"type":"rate_limit_event"';
|
|
13
|
+
const REJECTED_STATUS_TEXT = '"status":"rejected"';
|
|
14
|
+
const HTTP_429_API_ERROR_STATUS_TEXT = '"api_error_status":429';
|
|
15
|
+
const SESSION_LIMIT_TEXT_PATTERN = /session limit/i;
|
|
16
|
+
const TOOL_USE_TYPE_TEXT = '"type":"tool_use"';
|
|
17
|
+
const USAGE_LIMIT_ENDING_DETECTED_LINE = 'usage-limit-ending-detected: consecutive failure counter not incremented';
|
|
18
|
+
const RATE_LIMIT_REJECTION_DETECTED_LINE = 'rate-limit-rejection-detected: consecutive failure counter not incremented';
|
|
19
|
+
const FAILURE_STREAK_RESET_LINE = 'consecutive-same-reason-failure: reset (run succeeded or no terminal_reason)';
|
|
20
|
+
const finalLineContaining = (lines, text) => {
|
|
21
|
+
for (let lineIndex = lines.length - 1; lineIndex >= 0; lineIndex -= 1) {
|
|
22
|
+
if (lines[lineIndex].includes(text)) {
|
|
23
|
+
return lines[lineIndex];
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return null;
|
|
27
|
+
};
|
|
28
|
+
const terminalReasonOf = (terminalLine) => {
|
|
29
|
+
const valuePrefixIndex = terminalLine.indexOf(TERMINAL_REASON_STRING_VALUE_PREFIX_TEXT);
|
|
30
|
+
if (valuePrefixIndex < 0) {
|
|
31
|
+
return '';
|
|
32
|
+
}
|
|
33
|
+
const [terminalReasonText] = terminalLine
|
|
34
|
+
.slice(valuePrefixIndex + TERMINAL_REASON_STRING_VALUE_PREFIX_TEXT.length)
|
|
35
|
+
.split('"');
|
|
36
|
+
return terminalReasonText.replace(/\r/g, '');
|
|
37
|
+
};
|
|
38
|
+
const parsedJsonOrNullOf = (line) => {
|
|
39
|
+
try {
|
|
40
|
+
const parsedLine = JSON.parse(line);
|
|
41
|
+
return parsedLine;
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
const isAssistantToolCallLine = (line) => {
|
|
48
|
+
if (!line.includes(TOOL_USE_TYPE_TEXT)) {
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
const parsedLine = parsedJsonOrNullOf(line);
|
|
52
|
+
if (!(0, isRecord_1.isRecord)(parsedLine) || parsedLine.type !== 'assistant') {
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
const message = parsedLine.message;
|
|
56
|
+
if (!(0, isRecord_1.isRecord)(message)) {
|
|
57
|
+
return false;
|
|
58
|
+
}
|
|
59
|
+
const content = message.content;
|
|
60
|
+
const contentItems = Array.isArray(content)
|
|
61
|
+
? content
|
|
62
|
+
: (0, isRecord_1.isRecord)(content)
|
|
63
|
+
? Object.values(content)
|
|
64
|
+
: [];
|
|
65
|
+
return contentItems.some((contentItem) => (0, isRecord_1.isRecord)(contentItem) && contentItem.type === 'tool_use');
|
|
66
|
+
};
|
|
67
|
+
const workerSessionLogEndingOf = (lines) => {
|
|
68
|
+
const finalTerminalLine = finalLineContaining(lines, TERMINAL_REASON_KEY_TEXT);
|
|
69
|
+
return {
|
|
70
|
+
finalTerminalLine,
|
|
71
|
+
terminalReason: finalTerminalLine === null ? '' : terminalReasonOf(finalTerminalLine),
|
|
72
|
+
usageLimitEndingFound: finalTerminalLine !== null &&
|
|
73
|
+
finalTerminalLine.includes(ERROR_RESULT_FLAG_TEXT) &&
|
|
74
|
+
USAGE_LIMIT_RESULT_TEXT_PATTERN.test(finalTerminalLine),
|
|
75
|
+
rejectedRateLimitEventFound: lines.some((line) => line.includes(RATE_LIMIT_EVENT_TYPE_TEXT) &&
|
|
76
|
+
line.includes(REJECTED_STATUS_TEXT)),
|
|
77
|
+
sessionLimitHttp429Found: lines.some((line) => line.includes(HTTP_429_API_ERROR_STATUS_TEXT) &&
|
|
78
|
+
SESSION_LIMIT_TEXT_PATTERN.test(line)),
|
|
79
|
+
assistantToolCallFound: lines.some(isAssistantToolCallLine),
|
|
80
|
+
};
|
|
81
|
+
};
|
|
82
|
+
const rateLimitRejectionOf = (logEnding, missingAgentNameReported) => {
|
|
83
|
+
if (missingAgentNameReported) {
|
|
84
|
+
return { rateLimitRejected: false, diagnosticLines: [] };
|
|
85
|
+
}
|
|
86
|
+
if (logEnding.usageLimitEndingFound) {
|
|
87
|
+
return {
|
|
88
|
+
rateLimitRejected: true,
|
|
89
|
+
diagnosticLines: [USAGE_LIMIT_ENDING_DETECTED_LINE],
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
if (logEnding.rejectedRateLimitEventFound &&
|
|
93
|
+
logEnding.terminalReason !== BLOCKING_LIMIT_TERMINAL_REASON &&
|
|
94
|
+
!logEnding.sessionLimitHttp429Found) {
|
|
95
|
+
return {
|
|
96
|
+
rateLimitRejected: true,
|
|
97
|
+
diagnosticLines: [RATE_LIMIT_REJECTION_DETECTED_LINE],
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
return { rateLimitRejected: false, diagnosticLines: [] };
|
|
101
|
+
};
|
|
102
|
+
const errorMessageOf = (error) => error instanceof Error ? error.message : String(error);
|
|
103
|
+
const failureStreakOutcomeWithoutMoveOf = (diagnosticLines) => ({
|
|
104
|
+
moveToFailedPreparation: false,
|
|
105
|
+
sessionErrorLine: null,
|
|
106
|
+
diagnosticLines,
|
|
107
|
+
});
|
|
108
|
+
class WorkerSessionEndClassifyUseCase {
|
|
109
|
+
constructor(workerSessionLogRepository, workerSessionFailureStreakRepository) {
|
|
110
|
+
this.workerSessionLogRepository = workerSessionLogRepository;
|
|
111
|
+
this.workerSessionFailureStreakRepository = workerSessionFailureStreakRepository;
|
|
112
|
+
this.run = async (input) => {
|
|
113
|
+
const logReadResult = await this.workerSessionLogRepository.readLines(input.sessionLogFilePath);
|
|
114
|
+
const logReadDiagnosticLines = logReadResult.outcome === 'unreadable'
|
|
115
|
+
? [
|
|
116
|
+
`worker-session-log-unreadable: ${input.sessionLogFilePath}: ${logReadResult.errorMessage}`,
|
|
117
|
+
]
|
|
118
|
+
: [];
|
|
119
|
+
const logEnding = workerSessionLogEndingOf(logReadResult.outcome === 'read' ? logReadResult.lines : []);
|
|
120
|
+
const rateLimitRejection = rateLimitRejectionOf(logEnding, input.missingAgentNameReported);
|
|
121
|
+
const failureStreakOutcome = await this.failureStreakUpdate(input, logEnding, rateLimitRejection.rateLimitRejected);
|
|
122
|
+
return {
|
|
123
|
+
moveToFailedPreparation: failureStreakOutcome.moveToFailedPreparation,
|
|
124
|
+
rateLimitRejected: rateLimitRejection.rateLimitRejected,
|
|
125
|
+
promptTooLongOnResume: input.sessionWasResumed &&
|
|
126
|
+
logEnding.terminalReason === BLOCKING_LIMIT_TERMINAL_REASON &&
|
|
127
|
+
!logEnding.assistantToolCallFound,
|
|
128
|
+
sessionErrorLine: failureStreakOutcome.sessionErrorLine,
|
|
129
|
+
diagnosticLines: [
|
|
130
|
+
...logReadDiagnosticLines,
|
|
131
|
+
...rateLimitRejection.diagnosticLines,
|
|
132
|
+
...failureStreakOutcome.diagnosticLines,
|
|
133
|
+
],
|
|
134
|
+
};
|
|
135
|
+
};
|
|
136
|
+
this.failureStreakUpdate = async (input, logEnding, rateLimitRejected) => {
|
|
137
|
+
if (logEnding.finalTerminalLine !== null &&
|
|
138
|
+
logEnding.terminalReason === '') {
|
|
139
|
+
return failureStreakOutcomeWithoutMoveOf([
|
|
140
|
+
`terminal_reason-extraction-failed: line found but value is empty, raw=${logEnding.finalTerminalLine}`,
|
|
141
|
+
]);
|
|
142
|
+
}
|
|
143
|
+
if (logEnding.terminalReason === '' ||
|
|
144
|
+
logEnding.terminalReason === COMPLETED_TERMINAL_REASON) {
|
|
145
|
+
return failureStreakOutcomeWithoutMoveOf(await this.failureStreakReset(input.issueUrl));
|
|
146
|
+
}
|
|
147
|
+
if (rateLimitRejected) {
|
|
148
|
+
return failureStreakOutcomeWithoutMoveOf([
|
|
149
|
+
RATE_LIMIT_REJECTION_DETECTED_LINE,
|
|
150
|
+
]);
|
|
151
|
+
}
|
|
152
|
+
const { storedStreak, diagnosticLines: storedStreakFindDiagnosticLines } = await this.failureStreakFind(input.issueUrl);
|
|
153
|
+
const countedStreak = {
|
|
154
|
+
terminalReason: logEnding.terminalReason,
|
|
155
|
+
consecutiveFailureCount: storedStreak !== null &&
|
|
156
|
+
storedStreak.terminalReason === logEnding.terminalReason
|
|
157
|
+
? storedStreak.consecutiveFailureCount + 1
|
|
158
|
+
: 1,
|
|
159
|
+
};
|
|
160
|
+
const countedStreakSaveDiagnosticLines = await this.failureStreakSave(input.issueUrl, countedStreak);
|
|
161
|
+
const countedStreakLines = [
|
|
162
|
+
...storedStreakFindDiagnosticLines,
|
|
163
|
+
...countedStreakSaveDiagnosticLines,
|
|
164
|
+
`consecutive-same-reason-failure[${countedStreak.terminalReason}]:${countedStreak.consecutiveFailureCount}/${exports.WORKER_SESSION_CONSECUTIVE_FAILURE_THRESHOLD}`,
|
|
165
|
+
];
|
|
166
|
+
if (countedStreak.consecutiveFailureCount <
|
|
167
|
+
exports.WORKER_SESSION_CONSECUTIVE_FAILURE_THRESHOLD ||
|
|
168
|
+
input.missingAgentNameReported) {
|
|
169
|
+
return failureStreakOutcomeWithoutMoveOf(countedStreakLines);
|
|
170
|
+
}
|
|
171
|
+
return {
|
|
172
|
+
moveToFailedPreparation: true,
|
|
173
|
+
sessionErrorLine: `Task failed ${countedStreak.consecutiveFailureCount} consecutive times with terminal_reason=${countedStreak.terminalReason}; moving to Failed Preparation status. URL=${input.issueUrl}`,
|
|
174
|
+
diagnosticLines: [
|
|
175
|
+
...countedStreakLines,
|
|
176
|
+
`consecutive-same-reason-failure-max-reached: moving to Failed Preparation, count=${countedStreak.consecutiveFailureCount}, reason=${countedStreak.terminalReason}, url=${input.issueUrl}`,
|
|
177
|
+
],
|
|
178
|
+
};
|
|
179
|
+
};
|
|
180
|
+
this.failureStreakReset = async (issueUrl) => {
|
|
181
|
+
const { storedStreak, diagnosticLines: storedStreakFindDiagnosticLines } = await this.failureStreakFind(issueUrl);
|
|
182
|
+
try {
|
|
183
|
+
await this.workerSessionFailureStreakRepository.deleteByIssueUrl(issueUrl);
|
|
184
|
+
}
|
|
185
|
+
catch (error) {
|
|
186
|
+
return [
|
|
187
|
+
...storedStreakFindDiagnosticLines,
|
|
188
|
+
`worker-session-failure-streak-undeletable: ${issueUrl}: ${errorMessageOf(error)}`,
|
|
189
|
+
];
|
|
190
|
+
}
|
|
191
|
+
return storedStreak === null
|
|
192
|
+
? storedStreakFindDiagnosticLines
|
|
193
|
+
: [...storedStreakFindDiagnosticLines, FAILURE_STREAK_RESET_LINE];
|
|
194
|
+
};
|
|
195
|
+
this.failureStreakFind = async (issueUrl) => {
|
|
196
|
+
try {
|
|
197
|
+
return {
|
|
198
|
+
storedStreak: await this.workerSessionFailureStreakRepository.findByIssueUrl(issueUrl),
|
|
199
|
+
diagnosticLines: [],
|
|
200
|
+
};
|
|
201
|
+
}
|
|
202
|
+
catch (error) {
|
|
203
|
+
return {
|
|
204
|
+
storedStreak: null,
|
|
205
|
+
diagnosticLines: [
|
|
206
|
+
`worker-session-failure-streak-unreadable: ${issueUrl}: ${errorMessageOf(error)}`,
|
|
207
|
+
],
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
};
|
|
211
|
+
this.failureStreakSave = async (issueUrl, streak) => {
|
|
212
|
+
try {
|
|
213
|
+
await this.workerSessionFailureStreakRepository.save(issueUrl, streak);
|
|
214
|
+
return [];
|
|
215
|
+
}
|
|
216
|
+
catch (error) {
|
|
217
|
+
return [
|
|
218
|
+
`worker-session-failure-streak-unwritable: ${issueUrl}: ${errorMessageOf(error)}`,
|
|
219
|
+
];
|
|
220
|
+
}
|
|
221
|
+
};
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
exports.WorkerSessionEndClassifyUseCase = WorkerSessionEndClassifyUseCase;
|
|
225
|
+
//# sourceMappingURL=WorkerSessionEndClassifyUseCase.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkerSessionEndClassifyUseCase.js","sourceRoot":"","sources":["../../../src/domain/usecases/WorkerSessionEndClassifyUseCase.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResumableSessionTranscriptRepository.js","sourceRoot":"","sources":["../../../../src/domain/usecases/adapter-interfaces/ResumableSessionTranscriptRepository.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UrgentStoryLaunchHoldRepository.js","sourceRoot":"","sources":["../../../../src/domain/usecases/adapter-interfaces/UrgentStoryLaunchHoldRepository.ts"],"names":[],"mappings":""}
|