agentic-orchestrator 0.2.9 → 0.2.11
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/apps/control-plane/src/application/services/intake-service.ts +10 -2
- package/apps/control-plane/src/cli/retry-command-handler.ts +18 -3
- package/apps/control-plane/src/supervisor/build-wave-executor.ts +31 -0
- package/apps/control-plane/src/supervisor/planning-wave-executor.ts +38 -1
- package/apps/control-plane/src/supervisor/qa-wave-executor.ts +31 -0
- package/apps/control-plane/test/planning-wave-executor.spec.ts +7 -4
- package/dist/apps/control-plane/application/services/intake-service.js +9 -2
- package/dist/apps/control-plane/application/services/intake-service.js.map +1 -1
- package/dist/apps/control-plane/cli/retry-command-handler.js +10 -3
- package/dist/apps/control-plane/cli/retry-command-handler.js.map +1 -1
- package/dist/apps/control-plane/supervisor/build-wave-executor.d.ts +1 -0
- package/dist/apps/control-plane/supervisor/build-wave-executor.js +27 -0
- package/dist/apps/control-plane/supervisor/build-wave-executor.js.map +1 -1
- package/dist/apps/control-plane/supervisor/planning-wave-executor.d.ts +2 -0
- package/dist/apps/control-plane/supervisor/planning-wave-executor.js +33 -0
- package/dist/apps/control-plane/supervisor/planning-wave-executor.js.map +1 -1
- package/dist/apps/control-plane/supervisor/qa-wave-executor.d.ts +1 -0
- package/dist/apps/control-plane/supervisor/qa-wave-executor.js +27 -0
- package/dist/apps/control-plane/supervisor/qa-wave-executor.js.map +1 -1
- package/package.json +1 -1
|
@@ -604,6 +604,14 @@ function isOpenIntakeQuestion(question: QuestionEvidenceRecord): boolean {
|
|
|
604
604
|
return question.status === 'open' && isIntakeQuestion(question);
|
|
605
605
|
}
|
|
606
606
|
|
|
607
|
+
function resolveQuestionAmbiguityIds(details: Record<string, unknown>): string[] {
|
|
608
|
+
const fromPlural = normalizeAmbiguityIds(details.ambiguity_ids);
|
|
609
|
+
if (fromPlural.length > 0) {
|
|
610
|
+
return fromPlural;
|
|
611
|
+
}
|
|
612
|
+
return normalizeAmbiguityIds(details.ambiguity_id);
|
|
613
|
+
}
|
|
614
|
+
|
|
607
615
|
function isAnsweredIntakeClarification(question: QuestionEvidenceRecord): boolean {
|
|
608
616
|
return (
|
|
609
617
|
question.status === 'answered' &&
|
|
@@ -613,7 +621,7 @@ function isAnsweredIntakeClarification(question: QuestionEvidenceRecord): boolea
|
|
|
613
621
|
question.answered_at !== null &&
|
|
614
622
|
question.answered_by !== null &&
|
|
615
623
|
isIntakeQuestion(question) &&
|
|
616
|
-
|
|
624
|
+
resolveQuestionAmbiguityIds(question.details).length > 0
|
|
617
625
|
);
|
|
618
626
|
}
|
|
619
627
|
|
|
@@ -625,7 +633,7 @@ function buildClarificationAnswers(
|
|
|
625
633
|
return questions
|
|
626
634
|
.filter((question) => isAnsweredIntakeClarification(question))
|
|
627
635
|
.map((question) => {
|
|
628
|
-
const ambiguityIds =
|
|
636
|
+
const ambiguityIds = resolveQuestionAmbiguityIds(question.details);
|
|
629
637
|
const obligationIds = normalizeObligationIds(question.details.obligation_ids);
|
|
630
638
|
const resolutionStatus = ambiguityIds.every(
|
|
631
639
|
(ambiguityId) => ambiguityStatus.get(ambiguityId) === 'resolved',
|
|
@@ -34,10 +34,21 @@ interface RetryFeatureStatePayload {
|
|
|
34
34
|
reviewer_message?: string | null;
|
|
35
35
|
exhausted_at?: string | null;
|
|
36
36
|
};
|
|
37
|
+
recovery?: {
|
|
38
|
+
resume_phase?: string;
|
|
39
|
+
};
|
|
37
40
|
};
|
|
38
41
|
}
|
|
39
42
|
|
|
40
|
-
function resolveBlockedRetryStatus(
|
|
43
|
+
function resolveBlockedRetryStatus(
|
|
44
|
+
mode: string,
|
|
45
|
+
resumePhase: string | null,
|
|
46
|
+
): 'planning' | 'building' | 'qa' | 'ready_to_merge' | null {
|
|
47
|
+
// If recovery knows the phase where the failure occurred, resume there instead of
|
|
48
|
+
// inferring from the gate mode (which may not have been reached).
|
|
49
|
+
if (resumePhase === 'planning' || resumePhase === 'intake') {
|
|
50
|
+
return 'planning';
|
|
51
|
+
}
|
|
41
52
|
if (mode === 'fast') {
|
|
42
53
|
return 'building';
|
|
43
54
|
}
|
|
@@ -119,6 +130,9 @@ export class RetryCommandHandler {
|
|
|
119
130
|
}
|
|
120
131
|
const lastGateMode = statePayload.front_matter.evidence?.last_gate_mode;
|
|
121
132
|
const gates = statePayload.front_matter.gates ?? {};
|
|
133
|
+
const recovery = statePayload.front_matter.recovery as { resume_phase?: string } | undefined;
|
|
134
|
+
const recoveryResumePhase =
|
|
135
|
+
typeof recovery?.resume_phase === 'string' ? recovery.resume_phase : null;
|
|
122
136
|
const inferredMode =
|
|
123
137
|
typeof lastGateMode === 'string' && lastGateMode.length > 0
|
|
124
138
|
? lastGateMode
|
|
@@ -215,7 +229,8 @@ export class RetryCommandHandler {
|
|
|
215
229
|
gate_retry_count: 0,
|
|
216
230
|
last_retry_at: null,
|
|
217
231
|
};
|
|
218
|
-
const reroutedStatus =
|
|
232
|
+
const reroutedStatus =
|
|
233
|
+
status === 'blocked' ? resolveBlockedRetryStatus(inferredMode, recoveryResumePhase) : null;
|
|
219
234
|
if (reroutedStatus) {
|
|
220
235
|
frontMatterPatch.status = reroutedStatus;
|
|
221
236
|
frontMatterPatch.status_reason = `forced_retry:${inferredMode}`;
|
|
@@ -278,7 +293,7 @@ export class RetryCommandHandler {
|
|
|
278
293
|
},
|
|
279
294
|
};
|
|
280
295
|
} else if (status === 'blocked') {
|
|
281
|
-
const reroutedStatus = resolveBlockedRetryStatus(inferredMode);
|
|
296
|
+
const reroutedStatus = resolveBlockedRetryStatus(inferredMode, recoveryResumePhase);
|
|
282
297
|
const frontMatterPatch: Record<string, unknown> = {
|
|
283
298
|
gate_retry_count: 0,
|
|
284
299
|
last_retry_at: null,
|
|
@@ -483,6 +483,15 @@ export class BuildWaveExecutor {
|
|
|
483
483
|
await this.reactionsService.notifyEscalation(featureId, escalateCtx);
|
|
484
484
|
}
|
|
485
485
|
}
|
|
486
|
+
} catch (error) {
|
|
487
|
+
if ((error as Record<string, unknown>)?._failRun === true) {
|
|
488
|
+
throw error;
|
|
489
|
+
}
|
|
490
|
+
const msg = error instanceof Error ? error.message : String(error);
|
|
491
|
+
console.warn(
|
|
492
|
+
`[build-wave] feature ${featureId} failed, continuing with remaining features: ${msg}`,
|
|
493
|
+
);
|
|
494
|
+
await this.blockFeatureOnUnhandledError(featureId, error);
|
|
486
495
|
} finally {
|
|
487
496
|
if (this.safeCheckpointHook) {
|
|
488
497
|
await this.safeCheckpointHook();
|
|
@@ -549,6 +558,9 @@ export class BuildWaveExecutor {
|
|
|
549
558
|
if (this.providerMode !== 'live') {
|
|
550
559
|
throw error;
|
|
551
560
|
}
|
|
561
|
+
if ((error as Record<string, unknown>)?.normalizedResponse) {
|
|
562
|
+
return false;
|
|
563
|
+
}
|
|
552
564
|
const typed = error as { code?: string; message?: string };
|
|
553
565
|
const code =
|
|
554
566
|
typeof typed.code === 'string' && typed.code.length > 0
|
|
@@ -601,6 +613,7 @@ export class BuildWaveExecutor {
|
|
|
601
613
|
message,
|
|
602
614
|
});
|
|
603
615
|
if (policyAction === 'fail_run') {
|
|
616
|
+
(error as Record<string, unknown>)._failRun = true;
|
|
604
617
|
throw error;
|
|
605
618
|
}
|
|
606
619
|
await this.applyWorkerPolicyAction(featureId, policyAction, code, message, phase);
|
|
@@ -721,6 +734,7 @@ export class BuildWaveExecutor {
|
|
|
721
734
|
const error = new Error(message) as Error & {
|
|
722
735
|
code?: string;
|
|
723
736
|
details?: Record<string, unknown>;
|
|
737
|
+
_failRun?: boolean;
|
|
724
738
|
};
|
|
725
739
|
error.code = errorCode;
|
|
726
740
|
error.details = {
|
|
@@ -728,6 +742,7 @@ export class BuildWaveExecutor {
|
|
|
728
742
|
retryable: false,
|
|
729
743
|
requires_human: true,
|
|
730
744
|
};
|
|
745
|
+
error._failRun = true;
|
|
731
746
|
throw error;
|
|
732
747
|
}
|
|
733
748
|
await this.applyWorkerPolicyAction(featureId, action, errorCode, message, phase);
|
|
@@ -926,6 +941,20 @@ export class BuildWaveExecutor {
|
|
|
926
941
|
}
|
|
927
942
|
}
|
|
928
943
|
|
|
944
|
+
private async blockFeatureOnUnhandledError(featureId: string, error: unknown): Promise<void> {
|
|
945
|
+
const typed = error as { code?: string; message?: string };
|
|
946
|
+
const code =
|
|
947
|
+
typeof typed.code === 'string' && typed.code.length > 0
|
|
948
|
+
? typed.code
|
|
949
|
+
: 'unhandled_build_error';
|
|
950
|
+
const message = typed.message ?? String(error);
|
|
951
|
+
try {
|
|
952
|
+
await this.applyWorkerPolicyAction(featureId, 'block_feature', code, message, 'build');
|
|
953
|
+
} catch {
|
|
954
|
+
// Best-effort
|
|
955
|
+
}
|
|
956
|
+
}
|
|
957
|
+
|
|
929
958
|
private async applyWorkerPolicyAction(
|
|
930
959
|
featureId: string,
|
|
931
960
|
action:
|
|
@@ -941,6 +970,7 @@ export class BuildWaveExecutor {
|
|
|
941
970
|
const error = new Error(message) as Error & {
|
|
942
971
|
code?: string;
|
|
943
972
|
details?: Record<string, unknown>;
|
|
973
|
+
_failRun?: boolean;
|
|
944
974
|
};
|
|
945
975
|
error.code = errorCode;
|
|
946
976
|
error.details = {
|
|
@@ -948,6 +978,7 @@ export class BuildWaveExecutor {
|
|
|
948
978
|
retryable: false,
|
|
949
979
|
requires_human: true,
|
|
950
980
|
};
|
|
981
|
+
error._failRun = true;
|
|
951
982
|
throw error;
|
|
952
983
|
}
|
|
953
984
|
|
|
@@ -466,6 +466,15 @@ export class PlanningWaveExecutor {
|
|
|
466
466
|
plan_json: plan,
|
|
467
467
|
});
|
|
468
468
|
}
|
|
469
|
+
} catch (error) {
|
|
470
|
+
if (this.isFailRunPolicyError(error)) {
|
|
471
|
+
throw error;
|
|
472
|
+
}
|
|
473
|
+
const msg = error instanceof Error ? error.message : String(error);
|
|
474
|
+
console.warn(
|
|
475
|
+
`[planning-wave] feature ${featureId} failed, continuing with remaining features: ${msg}`,
|
|
476
|
+
);
|
|
477
|
+
await this.blockFeatureOnUnhandledError(featureId, error);
|
|
469
478
|
} finally {
|
|
470
479
|
if (this.safeCheckpointHook) {
|
|
471
480
|
await this.safeCheckpointHook();
|
|
@@ -1098,6 +1107,11 @@ export class PlanningWaveExecutor {
|
|
|
1098
1107
|
if (this.providerMode !== 'live') {
|
|
1099
1108
|
throw error;
|
|
1100
1109
|
}
|
|
1110
|
+
// Tool dispatch errors (normalizedResponse) are content errors, not provider failures.
|
|
1111
|
+
// Let them propagate to the outer catch which blocks the feature and continues.
|
|
1112
|
+
if ((error as Record<string, unknown>)?.normalizedResponse) {
|
|
1113
|
+
return false;
|
|
1114
|
+
}
|
|
1101
1115
|
const typed = error as { code?: string; message?: string };
|
|
1102
1116
|
const code =
|
|
1103
1117
|
typeof typed.code === 'string' && typed.code.length > 0
|
|
@@ -1128,6 +1142,7 @@ export class PlanningWaveExecutor {
|
|
|
1128
1142
|
message,
|
|
1129
1143
|
});
|
|
1130
1144
|
if (policyAction === 'fail_run') {
|
|
1145
|
+
(error as Record<string, unknown>)._failRun = true;
|
|
1131
1146
|
throw error;
|
|
1132
1147
|
}
|
|
1133
1148
|
await this.applyWorkerPolicyAction(featureId, policyAction, code, message, 'planning');
|
|
@@ -1184,13 +1199,14 @@ export class PlanningWaveExecutor {
|
|
|
1184
1199
|
if (this.outputLoopStallAction === 'fail_run') {
|
|
1185
1200
|
const error = new Error(
|
|
1186
1201
|
`Planner output loop detected after ${consecutiveIterations} consecutive identical iterations`,
|
|
1187
|
-
) as Error & { code?: string; details?: Record<string, unknown
|
|
1202
|
+
) as Error & { code?: string; details?: Record<string, unknown>; _failRun?: boolean };
|
|
1188
1203
|
error.code = ERROR_CODES.PROVIDER_OUTPUT_LOOP;
|
|
1189
1204
|
error.details = {
|
|
1190
1205
|
feature_id: featureId,
|
|
1191
1206
|
retryable: false,
|
|
1192
1207
|
requires_human: true,
|
|
1193
1208
|
};
|
|
1209
|
+
error._failRun = true;
|
|
1194
1210
|
throw error;
|
|
1195
1211
|
}
|
|
1196
1212
|
|
|
@@ -1530,6 +1546,25 @@ export class PlanningWaveExecutor {
|
|
|
1530
1546
|
};
|
|
1531
1547
|
}
|
|
1532
1548
|
|
|
1549
|
+
private isFailRunPolicyError(error: unknown): boolean {
|
|
1550
|
+
const typed = error as { _failRun?: boolean };
|
|
1551
|
+
return typed?._failRun === true;
|
|
1552
|
+
}
|
|
1553
|
+
|
|
1554
|
+
private async blockFeatureOnUnhandledError(featureId: string, error: unknown): Promise<void> {
|
|
1555
|
+
const typed = error as { code?: string; message?: string };
|
|
1556
|
+
const code =
|
|
1557
|
+
typeof typed.code === 'string' && typed.code.length > 0
|
|
1558
|
+
? typed.code
|
|
1559
|
+
: 'unhandled_planning_error';
|
|
1560
|
+
const message = typed.message ?? String(error);
|
|
1561
|
+
try {
|
|
1562
|
+
await this.applyWorkerPolicyAction(featureId, 'block_feature', code, message, 'planning');
|
|
1563
|
+
} catch {
|
|
1564
|
+
// Best-effort — if we can't block the feature, at least we logged above
|
|
1565
|
+
}
|
|
1566
|
+
}
|
|
1567
|
+
|
|
1533
1568
|
private async applyWorkerPolicyAction(
|
|
1534
1569
|
featureId: string,
|
|
1535
1570
|
action:
|
|
@@ -1545,6 +1580,7 @@ export class PlanningWaveExecutor {
|
|
|
1545
1580
|
const error = new Error(message) as Error & {
|
|
1546
1581
|
code?: string;
|
|
1547
1582
|
details?: Record<string, unknown>;
|
|
1583
|
+
_failRun?: boolean;
|
|
1548
1584
|
};
|
|
1549
1585
|
error.code = errorCode;
|
|
1550
1586
|
error.details = {
|
|
@@ -1552,6 +1588,7 @@ export class PlanningWaveExecutor {
|
|
|
1552
1588
|
retryable: false,
|
|
1553
1589
|
requires_human: true,
|
|
1554
1590
|
};
|
|
1591
|
+
error._failRun = true;
|
|
1555
1592
|
throw error;
|
|
1556
1593
|
}
|
|
1557
1594
|
|
|
@@ -462,6 +462,15 @@ export class QaWaveExecutor {
|
|
|
462
462
|
orchestrator_session_id: this.state.orchestratorSessionId ?? 'unknown',
|
|
463
463
|
qa_session_id: newQa.session_id,
|
|
464
464
|
});
|
|
465
|
+
} catch (error) {
|
|
466
|
+
if ((error as Record<string, unknown>)?._failRun === true) {
|
|
467
|
+
throw error;
|
|
468
|
+
}
|
|
469
|
+
const msg = error instanceof Error ? error.message : String(error);
|
|
470
|
+
console.warn(
|
|
471
|
+
`[qa-wave] feature ${featureId} failed, continuing with remaining features: ${msg}`,
|
|
472
|
+
);
|
|
473
|
+
await this.blockFeatureOnUnhandledError(featureId, error);
|
|
465
474
|
} finally {
|
|
466
475
|
if (this.safeCheckpointHook) {
|
|
467
476
|
await this.safeCheckpointHook();
|
|
@@ -470,6 +479,18 @@ export class QaWaveExecutor {
|
|
|
470
479
|
}
|
|
471
480
|
}
|
|
472
481
|
|
|
482
|
+
private async blockFeatureOnUnhandledError(featureId: string, error: unknown): Promise<void> {
|
|
483
|
+
const typed = error as { code?: string; message?: string };
|
|
484
|
+
const code =
|
|
485
|
+
typeof typed.code === 'string' && typed.code.length > 0 ? typed.code : 'unhandled_qa_error';
|
|
486
|
+
const message = typed.message ?? String(error);
|
|
487
|
+
try {
|
|
488
|
+
await this.applyWorkerPolicyAction(featureId, 'block_feature', code, message, 'qa');
|
|
489
|
+
} catch {
|
|
490
|
+
// Best-effort
|
|
491
|
+
}
|
|
492
|
+
}
|
|
493
|
+
|
|
473
494
|
private asRecord(value: unknown): Record<string, unknown> {
|
|
474
495
|
return value && typeof value === 'object' ? (value as Record<string, unknown>) : {};
|
|
475
496
|
}
|
|
@@ -530,6 +551,9 @@ export class QaWaveExecutor {
|
|
|
530
551
|
if (this.providerMode !== 'live') {
|
|
531
552
|
throw error;
|
|
532
553
|
}
|
|
554
|
+
if ((error as Record<string, unknown>)?.normalizedResponse) {
|
|
555
|
+
return false;
|
|
556
|
+
}
|
|
533
557
|
const typed = error as { code?: string; message?: string };
|
|
534
558
|
const code =
|
|
535
559
|
typeof typed.code === 'string' && typed.code.length > 0
|
|
@@ -568,6 +592,8 @@ export class QaWaveExecutor {
|
|
|
568
592
|
policyAction: 'block_feature',
|
|
569
593
|
message: `${message} (auto-retry once at same phase)`,
|
|
570
594
|
});
|
|
595
|
+
// Tag for propagation — the coordinator retries the feature on the next iteration
|
|
596
|
+
(error as Record<string, unknown>)._failRun = true;
|
|
571
597
|
return false;
|
|
572
598
|
}
|
|
573
599
|
|
|
@@ -579,6 +605,7 @@ export class QaWaveExecutor {
|
|
|
579
605
|
message,
|
|
580
606
|
});
|
|
581
607
|
if (policyAction === 'fail_run') {
|
|
608
|
+
(error as Record<string, unknown>)._failRun = true;
|
|
582
609
|
throw error;
|
|
583
610
|
}
|
|
584
611
|
await this.applyWorkerPolicyAction(featureId, policyAction, code, message, phase);
|
|
@@ -699,6 +726,7 @@ export class QaWaveExecutor {
|
|
|
699
726
|
const error = new Error(message) as Error & {
|
|
700
727
|
code?: string;
|
|
701
728
|
details?: Record<string, unknown>;
|
|
729
|
+
_failRun?: boolean;
|
|
702
730
|
};
|
|
703
731
|
error.code = errorCode;
|
|
704
732
|
error.details = {
|
|
@@ -706,6 +734,7 @@ export class QaWaveExecutor {
|
|
|
706
734
|
retryable: false,
|
|
707
735
|
requires_human: true,
|
|
708
736
|
};
|
|
737
|
+
error._failRun = true;
|
|
709
738
|
throw error;
|
|
710
739
|
}
|
|
711
740
|
await this.applyWorkerPolicyAction(featureId, action, errorCode, message, phase);
|
|
@@ -876,6 +905,7 @@ export class QaWaveExecutor {
|
|
|
876
905
|
const error = new Error(message) as Error & {
|
|
877
906
|
code?: string;
|
|
878
907
|
details?: Record<string, unknown>;
|
|
908
|
+
_failRun?: boolean;
|
|
879
909
|
};
|
|
880
910
|
error.code = errorCode;
|
|
881
911
|
error.details = {
|
|
@@ -883,6 +913,7 @@ export class QaWaveExecutor {
|
|
|
883
913
|
retryable: false,
|
|
884
914
|
requires_human: true,
|
|
885
915
|
};
|
|
916
|
+
error._failRun = true;
|
|
886
917
|
throw error;
|
|
887
918
|
}
|
|
888
919
|
|
|
@@ -1984,10 +1984,11 @@ describe('PlanningWaveExecutor live watchdog and semantic policies', () => {
|
|
|
1984
1984
|
);
|
|
1985
1985
|
});
|
|
1986
1986
|
|
|
1987
|
-
it('
|
|
1987
|
+
it('blocks individual feature on unmapped runtime errors instead of failing the run', async () => {
|
|
1988
1988
|
const toolCaller = createPlanningToolCaller([STATUS.PLANNING]);
|
|
1989
1989
|
const nonMappedError = new Error('bad output') as Error & { code?: string };
|
|
1990
1990
|
nonMappedError.code = ERROR_CODES.PROVIDER_OUTPUT_INVALID;
|
|
1991
|
+
const warnSpy = vi.spyOn(console, 'warn').mockImplementation(() => {});
|
|
1991
1992
|
const executor = new PlanningWaveExecutor({
|
|
1992
1993
|
toolCaller: toolCaller as never,
|
|
1993
1994
|
planGenerator: { generateInitialPlan: vi.fn() } as never,
|
|
@@ -1999,9 +2000,11 @@ describe('PlanningWaveExecutor live watchdog and semantic policies', () => {
|
|
|
1999
2000
|
},
|
|
2000
2001
|
});
|
|
2001
2002
|
|
|
2002
|
-
await
|
|
2003
|
-
|
|
2004
|
-
|
|
2003
|
+
await executor.run(['feature-a']);
|
|
2004
|
+
expect(warnSpy).toHaveBeenCalledWith(
|
|
2005
|
+
expect.stringContaining('[planning-wave] feature feature-a failed'),
|
|
2006
|
+
);
|
|
2007
|
+
warnSpy.mockRestore();
|
|
2005
2008
|
});
|
|
2006
2009
|
|
|
2007
2010
|
it('throws provider spawn failure when fail-run policy is configured', async () => {
|
|
@@ -450,6 +450,13 @@ function isIntakeQuestion(question) {
|
|
|
450
450
|
function isOpenIntakeQuestion(question) {
|
|
451
451
|
return question.status === 'open' && isIntakeQuestion(question);
|
|
452
452
|
}
|
|
453
|
+
function resolveQuestionAmbiguityIds(details) {
|
|
454
|
+
const fromPlural = normalizeAmbiguityIds(details.ambiguity_ids);
|
|
455
|
+
if (fromPlural.length > 0) {
|
|
456
|
+
return fromPlural;
|
|
457
|
+
}
|
|
458
|
+
return normalizeAmbiguityIds(details.ambiguity_id);
|
|
459
|
+
}
|
|
453
460
|
function isAnsweredIntakeClarification(question) {
|
|
454
461
|
return (question.status === 'answered' &&
|
|
455
462
|
question.question_id !== null &&
|
|
@@ -458,14 +465,14 @@ function isAnsweredIntakeClarification(question) {
|
|
|
458
465
|
question.answered_at !== null &&
|
|
459
466
|
question.answered_by !== null &&
|
|
460
467
|
isIntakeQuestion(question) &&
|
|
461
|
-
|
|
468
|
+
resolveQuestionAmbiguityIds(question.details).length > 0);
|
|
462
469
|
}
|
|
463
470
|
function buildClarificationAnswers(review, questions) {
|
|
464
471
|
const ambiguityStatus = new Map(review.ambiguities.map((item) => [item.id, item.status]));
|
|
465
472
|
return questions
|
|
466
473
|
.filter((question) => isAnsweredIntakeClarification(question))
|
|
467
474
|
.map((question) => {
|
|
468
|
-
const ambiguityIds =
|
|
475
|
+
const ambiguityIds = resolveQuestionAmbiguityIds(question.details);
|
|
469
476
|
const obligationIds = normalizeObligationIds(question.details.obligation_ids);
|
|
470
477
|
const resolutionStatus = ambiguityIds.every((ambiguityId) => ambiguityStatus.get(ambiguityId) === 'resolved')
|
|
471
478
|
? 'applied'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"intake-service.js","sourceRoot":"","sources":["../../../../../apps/control-plane/src/application/services/intake-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAcxD,OAAO,EACL,2BAA2B,EAC3B,kCAAkC,GACnC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,iCAAiC,EAAE,MAAM,2CAA2C,CAAC;AAsB9F,MAAM,0BAA0B,GAAG,0BAA0B,CAAC;AAC9D,MAAM,2BAA2B,GAAG,uCAAuC,CAAC;AAC5E,MAAM,4BAA4B,GAAG,qBAAqB,CAAC;AAE3D,MAAM,uBAAuB,GAA2C;IACtE,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,UAAU;IACrB,UAAU,EAAE,UAAU;IACtB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,UAAU;IAChB,WAAW,EAAE,aAAa;IAC1B,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,cAAc;IACpB,EAAE,EAAE,UAAU;IACd,UAAU,EAAE,cAAc;IAC1B,YAAY,EAAE,cAAc;IAC5B,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,UAAU;CACrB,CAAC;AAEF,MAAM,yBAAyB,GAA6C;IAC1E,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,UAAU;CAClB,CAAC;AAEF,SAAS,QAAQ,CAAC,KAAc;IAC9B,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,KAAgC,CAAC;AAC1C,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7C,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACzB,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAgB;IAC9C,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,yBAAyB,CAChC,KAAc,EACd,OAAe,EACf,MAAqB;IAErB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE;YAC5E,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9B,OAAO,GAAG,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,yBAAyB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAc;IAC3C,OAAO,sBAAsB,CAC3B,yBAAyB,CAAC,KAAK,EAAE,0BAA0B,EAAE,KAAK,CAAC,CACpE,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAc;IAC5C,OAAO,sBAAsB,CAC3B,yBAAyB,CAAC,KAAK,EAAE,2BAA2B,EAAE,KAAK,CAAC,CACrE,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAc;IAChD,OAAO,KAAK,KAAK,iBAAiB;QAChC,KAAK,KAAK,oBAAoB;QAC9B,KAAK,KAAK,gCAAgC;QAC1C,KAAK,KAAK,wBAAwB;QAClC,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAc;IAC3C,OAAO,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,gBAAgB,IAAI,KAAK,KAAK,UAAU;QAC/E,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,UAAU,CAAC;AACjB,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc;IACzC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;QACtE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QACnB,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAc;IAC5C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;QACtE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QACnB,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,SAAS,wBAAwB,CAC/B,KAAc,EACd,WAA0D,MAAM;IAEhE,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;QAC7C,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,wBAAwB,CAC/B,KAAc,EACd,WAAuD,IAAI;IAE3D,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,EAAE,GACN,qBAAqB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QACpC,qBAAqB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;QAC9C,QAAQ,EAAE,EAAE;QACZ,IAAI,CAAC;IACP,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,QAAQ,EAAE,OAAO,IAAI,IAAI,CAAC;IACvE,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,kBAAkB,GACtB,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC;IACjF,MAAM,MAAM,GAAG,wBAAwB,CACrC,MAAM,EAAE,MAAM,IAAI,kBAAkB,EACpC,QAAQ,EAAE,MAAM,IAAI,MAAM,CAC3B,CAAC;IACF,MAAM,aAAa,GAAG,sBAAsB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACrE,MAAM,UAAU,GAAwC;QACtD,EAAE;QACF,OAAO;QACP,MAAM;KACP,CAAC;IACF,MAAM,kBAAkB,GACtB,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,sBAAsB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAC9F,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,UAAU,CAAC,cAAc,GAAG,kBAAkB,CAAC;IACjD,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,kCAAkC,CACzC,KAAc,EACd,eAA2E;IAE3E,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACjD,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACjD,MAAM,YAAY,GAAG,qBAAqB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAClE,IACE,CAAC,UAAU;QACX,CAAC,MAAM;QACP,MAAM,KAAK,IAAI;QACf,CAAC,UAAU;QACX,CAAC,UAAU;QACX,YAAY,CAAC,MAAM,KAAK,CAAC,EACzB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,gBAAgB,GACpB,MAAM,EAAE,iBAAiB,KAAK,WAAW,IAAI,MAAM,EAAE,iBAAiB,KAAK,SAAS;QAClF,CAAC,CAAC,MAAM,CAAC,iBAAiB;QAC1B,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,UAAU,CAAC;YACpF,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,WAAW,CAAC;IAEpB,OAAO;QACL,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE,YAAY;QAC3B,cAAc,EAAE,sBAAsB,CAAC,MAAM,EAAE,cAAc,CAAC;QAC9D,MAAM;QACN,MAAM;QACN,WAAW,EAAE,UAAU;QACvB,WAAW,EAAE,UAAU;QACvB,iBAAiB,EAAE,gBAAgB;KACpC,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,oBAAsD,EACtD,iBAA0B;IAE1B,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC;QACvD,CAAC,CAAC,iBAAiB;aACd,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;aAC7C,MAAM,CAAC,CAAC,IAAI,EAA+C,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC;QACjF,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5E,MAAM,MAAM,GAAG,oBAAoB;SAChC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;SACnD,MAAM,CAAC,CAAC,IAAI,EAA+C,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC;SAC5E,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzC,OAAO,QAAQ;YACb,CAAC,CAAC;gBACE,GAAG,IAAI;gBACP,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,GAAG,CAAC,QAAQ,CAAC,cAAc,IAAI,QAAQ,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;oBAC/D,CAAC,CAAC,EAAE,cAAc,EAAE,QAAQ,CAAC,cAAc,EAAE;oBAC7C,CAAC,CAAC,EAAE,CAAC;aACR;YACH,CAAC,CAAC,IAAI,CAAC;IACX,CAAC,CAAC,CAAC;IACL,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7E,OAAO,CAAC,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,mCAAmC,CAC1C,KAAc,EACd,WAAwC;IAExC,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACnF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kCAAkC,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;SACxE,MAAM,CAAC,CAAC,IAAI,EAAqC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC;SAClE,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACpB,IAAI,IAAI,CAAC,WAAW,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC;YAC3C,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,8BAA8B,CACrC,KAAc,EACd,MAAqD,EACrD,iBAAoC;IAEpC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5F,MAAM,UAAU,GAAG,KAAK;SACrB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC3B,MAAM,WAAW,GACf,qBAAqB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,qBAAqB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;QAC3F,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC/E,MAAM,cAAc,GAAG,wBAAwB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAChE,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO;YACL,GAAG,cAAc;YACjB,MAAM;SACP,CAAC;IACJ,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,IAAI,EAA+C,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAEhF,OAAO,UAAU;SACd,MAAM,CACL,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,KAAK,KAAK,CAC3F;SACA,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,+BAA+B,CAAC,KAAc;IACrD,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;IAClD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,uBAAuB,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC;AACrD,CAAC;AAED,SAAS,iCAAiC,CAAC,KAAc;IACvD,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;IAClD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,yBAAyB,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC;AACvD,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAc;IAChD,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtD,IAAI,SAAS,KAAK,IAAI,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAC3C,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO;QACL,UAAU,EAAE,SAAS;QACrB,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC;QACtC,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;KACnC,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAAC,KAAc;IACjD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;SAC/C,MAAM,CAAC,CAAC,IAAI,EAA6B,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,oCAAoC,CAC3C,KAAc,EACd,kBAAiE;IAEjE,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,YAAY,GAAG,sBAAsB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IAC7E,MAAM,IAAI,GAAG,+BAA+B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1D,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;IACrF,MAAM,UAAU,GAAG,2BAA2B,CAC5C,MAAM,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CACrE,CAAC;IACF,MAAM,gBAAgB,GACpB,iCAAiC,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,UAAU,CAAC;IAC5E,MAAM,UAAU,GAAG,2BAA2B,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC;IAE9E,kFAAkF;IAClF,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,aAAa,EAAE,YAAY;QAC3B,IAAI;QACJ,IAAI;QACJ,WAAW;QACX,WAAW,EAAE,UAAU;QACvB,iBAAiB,EAAE,gBAAgB;QACnC,UAAU;KACX,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc;IACzC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,aAAa,KAAK,WAAW,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,MAAsC,CAAC;AAChD,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;QACnD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,MAAqC,CAAC;AAC/C,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC;QACnD,CAAC,CAAC,MAAM,CAAC,WAAW;aACf,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;aAC7C,MAAM,CAAC,CAAC,IAAI,EAA+C,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC;QACjF,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,oBAAoB,GAAG,mCAAmC,CAC9D,MAAM,CAAC,qBAAqB,EAC5B,WAAW,CACZ,CAAC;IACF,OAAO;QACL,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,OAAO,EAAE,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;QACjD,MAAM,EAAE,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC;QAC5C,cAAc,EAAE,sBAAsB,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC;QAClE,kBAAkB,EAChB,sBAAsB,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,oBAAoB,CAAC,MAAM;QAClF,WAAW;QACX,qBAAqB,EAAE,oBAAoB;QAC3C,0BAA0B,EAAE,mBAAmB,CAAC,MAAM,CAAC,0BAA0B,CAAC;QAClF,yBAAyB,EAAE,mBAAmB,CAAC,MAAM,CAAC,yBAAyB,CAAC;QAChF,eAAe,EAAE,0BAA0B,CAAC,MAAM,CAAC,eAAe,CAAC;QACnE,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,MAAM,EAAE;KAC9D,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,WAAwB;IAChD,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5C,OAAO,MAAM,IAAI,EAAE,CAAC;AACtB,CAAC;AAED,SAAS,wBAAwB,CAAC,MAA+B;IAC/D,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;AAC3D,CAAC;AAED,SAAS,kBAAkB,CAAC,SAAiB,EAAE,iBAAoC;IACjF,OAAO;QACL,UAAU,EAAE,SAAS;QACrB,OAAO,EAAE,CAAC;QACV,MAAM,EAAE,UAAU;QAClB,cAAc,EAAE,CAAC;QACjB,kBAAkB,EAAE,CAAC;QACrB,WAAW,EAAE,iBAAiB,CAAC,WAAW;QAC1C,qBAAqB,EAAE,EAAE;QACzB,0BAA0B,EAAE,iBAAiB,CAAC,gBAAgB;QAC9D,yBAAyB,EAAE,IAAI;QAC/B,eAAe,EAAE,IAAI;QACrB,eAAe,EAAE,MAAM,EAAE;KAC1B,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CACtB,WAAwB,EACxB,iBAA2C,EAC3C,gBAAyC,EACzC,MAA2B;IAE3B,MAAM,MAAM,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,sBAAsB,GAC1B,MAAM,CAAC,MAAM,KAAK,aAAa;QAC/B,MAAM,CAAC,MAAM,KAAK,aAAa;QAC/B,MAAM,CAAC,MAAM,KAAK,gBAAgB;QAChC,CAAC,CAAC,MAAM,CAAC,MAAM;QACf,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,UAAU;YAC5B,CAAC,CAAC,gBAAgB;gBAChB,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,WAAW,CAAC,MAAM,KAAK,MAAM,CAAC,cAAc;oBAC5C,CAAC,CAAC,gBAAgB;oBAClB,CAAC,CAAC,aAAa;YACnB,CAAC,CAAC,IAAI,CAAC;IACb,MAAM,kBAAkB,GACtB,OAAO,MAAM,CAAC,oBAAoB,KAAK,QAAQ;QAC7C,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM;YACpE,iBAAiB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM;YAC9E,CAAC,CAAC,CAAC;IACT,OAAO;QACL,MAAM,EACJ,sBAAsB;YACtB,CAAC,gBAAgB;gBACf,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,WAAW,CAAC,MAAM,KAAK,MAAM,CAAC,cAAc;oBAC5C,CAAC,CAAC,gBAAgB;oBAClB,CAAC,CAAC,aAAa,CAAC;QACtB,0BAA0B,EACxB,OAAO,MAAM,CAAC,0BAA0B,KAAK,QAAQ;YACnD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,0BAA0B,CAAC;YAC/C,CAAC,CAAC,CAAC,iBAAiB,EAAE,gBAAgB,IAAI,IAAI,CAAC;QACnD,yBAAyB,EAAE,gBAAgB;YACzC,CAAC,CAAC,OAAO,MAAM,CAAC,yBAAyB,KAAK,QAAQ;gBACpD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,yBAAyB,CAAC;gBAC9C,CAAC,CAAC,gBAAgB,CAAC,gBAAgB;YACrC,CAAC,CAAC,IAAI;QACR,oBAAoB,EAAE,kBAAkB;QACxC,gBAAgB,EAAE,gBAAgB;YAChC,CAAC,CAAC,OAAO,MAAM,CAAC,gBAAgB,KAAK,QAAQ;gBAC3C,CAAC,CAAC,MAAM,CAAC,gBAAgB;gBACzB,CAAC,CAAC,gBAAgB,CAAC,WAAW;YAChC,CAAC,CAAC,IAAI;QACR,eAAe,EAAE,gBAAgB;YAC/B,CAAC,CAAC,MAAM,CAAC,eAAe,KAAK,iBAAiB;gBAC5C,MAAM,CAAC,eAAe,KAAK,oBAAoB;gBAC/C,MAAM,CAAC,eAAe,KAAK,gCAAgC;gBAC3D,MAAM,CAAC,eAAe,KAAK,wBAAwB;gBACnD,CAAC,CAAC,MAAM,CAAC,eAAe;gBACxB,CAAC,CAAC,CAAC,MAAM,EAAE,eAAe,IAAI,IAAI,CAAC;YACrC,CAAC,CAAC,IAAI;KACT,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAc;IAC/C,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO;QACL,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC;QACzC,MAAM;QACN,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC;QAC7C,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;QAC7B,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC;QAC7C,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC;QAC3C,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;QAC/B,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC;QACpC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC;QACzC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC;QACzC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE;KACxC,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAC/B,QAAgC,EAChC,iBAAoC;IAEpC,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QACrF,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACpD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAC/D,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,UAAU,GAAG,WAAW,EAAE,CAAC;QAC5F,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CACL,QAAQ,CAAC,aAAa,KAAK,MAAM,CAAC,MAAM;QACxC,QAAQ,CAAC,YAAY,KAAK,MAAM,CAAC,MAAM;QACvC,QAAQ,CAAC,KAAK,KAAK,MAAM,CAAC,MAAM,CACjC,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAClC,QAAgC,EAChC,WAAmB;IAEnB,MAAM,QAAQ,GACZ,qBAAqB,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACvD,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC1C,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,qBAAqB,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,gCAAgC,CAAC,QAAgC;IACxE,OAAO,CACL,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,iBAAiB;QAClE,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,mBAAmB;QAChE,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,4BAA4B,CACzE,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,QAAgC;IACxD,OAAO,CACL,QAAQ,CAAC,aAAa,KAAK,MAAM,CAAC,MAAM;QACxC,QAAQ,CAAC,YAAY,KAAK,MAAM,CAAC,MAAM;QACvC,QAAQ,CAAC,KAAK,KAAK,MAAM,CAAC,MAAM,CACjC,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAgC;IAC5D,OAAO,QAAQ,CAAC,MAAM,KAAK,MAAM,IAAI,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,6BAA6B,CAAC,QAAgC;IACrE,OAAO,CACL,QAAQ,CAAC,MAAM,KAAK,UAAU;QAC9B,QAAQ,CAAC,WAAW,KAAK,IAAI;QAC7B,QAAQ,CAAC,MAAM,KAAK,IAAI;QACxB,QAAQ,CAAC,MAAM,KAAK,IAAI;QACxB,QAAQ,CAAC,WAAW,KAAK,IAAI;QAC7B,QAAQ,CAAC,WAAW,KAAK,IAAI;QAC7B,gBAAgB,CAAC,QAAQ,CAAC;QAC1B,qBAAqB,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,CACjE,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAChC,MAAoB,EACpB,SAAmC;IAEnC,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC1F,OAAO,SAAS;SACb,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,6BAA6B,CAAC,QAAQ,CAAC,CAAC;SAC7D,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QAChB,MAAM,YAAY,GAAG,qBAAqB,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC3E,MAAM,aAAa,GAAG,sBAAsB,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC9E,MAAM,gBAAgB,GAAG,YAAY,CAAC,KAAK,CACzC,CAAC,WAAW,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,UAAU,CACjE;YACC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,WAAW,CAAC;QAChB,OAAO;YACL,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,aAAa,EAAE,YAAY;YAC3B,cAAc,EAAE,aAAa;YAC7B,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,iBAAiB,EAAE,gBAAgB;SACA,CAAC;IACxC,CAAC,CAAC;SACD,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACpB,IAAI,IAAI,CAAC,WAAW,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC;YAC3C,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;AACP,CAAC;AAgBD,MAAM,OAAO,aAAa;IACP,IAAI,CAAoB;IACxB,SAAS,CAAoC;IAE9D,YACE,IAAuB,EACvB,YAA+C,IAAI,iCAAiC,EAAE;QAEtF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,qBAAqB,CAAC,SAAiB;QACrC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,8BAA8B,CAAC,CAAC;IACrF,CAAC;IAED,oBAAoB,CAAC,SAAiB;QACpC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,6BAA6B,CAAC,CAAC;IACpF,CAAC;IAED,gBAAgB,CAAC,SAAiB;QAChC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,oBAAoB,CAAC,CAAC;IAC3E,CAAC;IAED,aAAa,CAAC,SAAiB;QAC7B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,gBAAgB,CAAC,CAAC;IACvE,CAAC;IAED,QAAQ,CAAC,SAAiB;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC,CAAC;IAClE,CAAC;IAED,gBAAgB,CAAC,SAAiB;QAChC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,SAAiB;QAC3C,OAAO,mBAAmB,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IAC1F,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,SAAiB;QAC1C,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC;QAC/E,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,CAC/C,oCAAoC,EACpC,WAAW,CACZ,CAAC;QACF,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,kBAAkB,CAAC,WAAW,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,SAAiB;QACtC,OAAO,cAAc,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IAChF,CAAC;IAEO,kCAAkC,CACxC,SAAiB,EACjB,gBAAyB;QAEzB,MAAM,MAAM,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,iBAAiB,GAAG,0BAA0B,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAChF,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QACnF,MAAM,qBAAqB,GAAG,cAAc;aACzC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,oCAAoC,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;aAC5E,MAAM,CAAC,CAAC,IAAI,EAA8B,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QAE/D,MAAM,kBAAkB,GAAG,cAAc;aACtC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACnB,MAAM,UAAU,GAAG,oCAAoC,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;YACjF,IAAI,UAAU,EAAE,CAAC;gBACf,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC3B,OAAO;gBACL,KAAK;gBACL,aAAa,EAAE,QAAQ,CAAC,GAAG,EAAE,aAAa,CAAC;gBAC3C,IAAI,EAAE,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC;gBACzB,IAAI,EAAE,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC;aAClD,CAAC;QACJ,CAAC,CAAC;aACD,MAAM,CACL,CACE,IAAI,EAMJ,EAAE,CAAC,IAAI,KAAK,IAAI,CACnB,CAAC;QAEJ,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,MAAM;gBACJ,kBAAkB,EAAE,IAAI,CACtB,WAAW,CAAC,yBAAyB,EACrC,+EAA+E,EAC/E;oBACE,UAAU,EAAE,SAAS;oBACrB,mBAAmB,EAAE,kBAAkB;oBACvC,SAAS,EAAE,KAAK;oBAChB,cAAc,EAAE,IAAI;oBACpB,sBAAsB,EAAE;wBACtB,2EAA2E;wBAC3E,sFAAsF;wBACtF,6DAA6D;qBAC9D;iBACF,CACF;aACF,CAAC;QACJ,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC5C,MAAM,sBAAsB,GAAG,qBAAqB;aACjD,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;aAC7C,MAAM,CAAC,CAAC,YAAY,EAAE,EAAE;YACvB,IAAI,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;gBACxC,OAAO,IAAI,CAAC;YACd,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACpC,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;QACL,IAAI,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtC,OAAO,CAAC,IAAI,CACV,YAAY,SAAS,mBAAmB,sBAAsB,CAAC,MAAM,8BAA8B,sBAAsB,CAAC,sBAAsB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAChK,CAAC;QACJ,CAAC;QAED,OAAO;YACL,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,SAAS;YACpD,gBAAgB,EAAE,mBAAmB,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,MAAM,CAAC,gBAAgB;YACzF,aAAa,EACX,MAAM,CAAC,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC;YACnF,kBAAkB,EAAE,iBAAiB,IAAI,MAAM,CAAC,kBAAkB;YAClE,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,WAAW;YAC/D,wBAAwB,EACtB,MAAM,CAAC,wBAAwB,KAAK,IAAI;gBACtC,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,wBAAwB,CAAC;oBACrD,MAAM,CAAC,wBAAwB,CAAC;YACtC,WAAW,EAAE,qBAAqB;SACnC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,UAAkB,EAClB,KAAc,EACd,OAAe;QAEf,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QACrE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YACtB,MAAM;gBACJ,kBAAkB,EAAE,IAAI,CAAC,WAAW,CAAC,uBAAuB,EAAE,OAAO,EAAE;oBACrE,MAAM,EAAE,UAAU,CAAC,MAAM;oBACzB,SAAS,EAAE,KAAK;oBAChB,cAAc,EAAE,IAAI;iBACrB,CAAC;aACH,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iCAAiC,CAC7C,SAAiB,EACjB,gBAAyB;QAEzB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,CAC/C,oCAAoC,EACpC,gBAAgB,CACjB,CAAC;QACF,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YACtB,MAAM;gBACJ,kBAAkB,EAAE,IAAI,CACtB,WAAW,CAAC,yBAAyB,EACrC,4CAA4C,EAC5C;oBACE,UAAU,EAAE,SAAS;oBACrB,MAAM,EAAE,UAAU,CAAC,MAAM;oBACzB,SAAS,EAAE,KAAK;oBAChB,cAAc,EAAE,IAAI;oBACpB,sBAAsB,EAAE;wBACtB,uEAAuE;wBACvE,qCAAqC;wBACrC,0FAA0F;qBAC3F;iBACF,CACF;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,SAAiB,EACjB,KAAgD;QAEhD,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,CACjE,OAAO,CAAC,OAAO,CAAC;YACd,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC;YAC/B,IAAI;SACL,CAAC,CACH,CAAC;IACJ,CAAC;IAEO,sBAAsB;QAC5B,MAAM,MAAM,GAAG,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACvE,OAAO,MAAM,CAAC,oBAAoB,KAAK,IAAI,CAAC;IAC9C,CAAC;IAEO,8BAA8B;QACpC,MAAM,MAAM,GAAG,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACvE,OAAO,2BAA2B,CAAC,MAAM,CAAC,6BAA6B,CAAC,IAAI,MAAM,CAAC;IACrF,CAAC;IAEO,+BAA+B,CAAC,iBAAoC;QAC1E,OAAO,CACL,IAAI,CAAC,sBAAsB,EAAE;YAC7B,iBAAiB,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC;YAC1C,kCAAkC,CAChC,iBAAiB,CAAC,WAAW,EAC7B,IAAI,CAAC,8BAA8B,EAAE,CACtC,CACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,SAAiB;QAClD,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC;QACrE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACnE,OAAO,KAAK;aACT,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;aAC9C,MAAM,CAAC,CAAC,IAAI,EAAkC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IACrE,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,SAAiB,EACjB,iBAAoC,EACpC,gBAAyC;QAEzC,MAAM,cAAc,GAClB,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,IAAI,kBAAkB,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QAC/F,MAAM,WAAW,GAAG,sBAAsB,CACxC,iBAAiB,CAAC,WAAW,EAC7B,cAAc,CAAC,WAAW,CAC3B,CAAC;QACF,MAAM,sBAAsB,GAC1B,cAAc,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,gBAAgB;YACvD,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC;QAC5B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAC7D,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO;gBACL,GAAG,cAAc;gBACjB,WAAW;gBACX,qBAAqB,EAAE,mCAAmC,CACxD,cAAc,CAAC,qBAAqB,EACpC,WAAW,CACZ;gBACD,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,sBAAsB;gBAC9D,0BAA0B,EAAE,iBAAiB,CAAC,gBAAgB;gBAC9D,yBAAyB,EAAE,gBAAgB,EAAE,gBAAgB,IAAI,IAAI;gBACrE,eAAe,EACb,gBAAgB,EAAE,kBAAkB;oBACpC,0BAA0B,CAAC,cAAc,CAAC,eAAe,CAAC;oBAC1D,IAAI;aACP,CAAC;QACJ,CAAC;QACD,MAAM,mBAAmB,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC3F,MAAM,oBAAoB,GAAG,yBAAyB,CACpD;YACE,GAAG,cAAc;YACjB,WAAW;SACZ,EACD,SAAS,CACV,CAAC;QACF,OAAO;YACL,GAAG,cAAc;YACjB,WAAW;YACX,MAAM,EAAE,gBAAgB;gBACtB,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC;oBAC9B,CAAC,CAAC,gBAAgB;oBAClB,CAAC,CAAC,UAAU;YAChB,cAAc,EAAE,mBAAmB,CAAC,MAAM;YAC1C,kBAAkB,EAAE,oBAAoB,CAAC,MAAM;YAC/C,qBAAqB,EAAE,oBAAoB;YAC3C,0BAA0B,EAAE,iBAAiB,CAAC,gBAAgB;YAC9D,yBAAyB,EAAE,gBAAgB,EAAE,gBAAgB,IAAI,IAAI;YACrE,eAAe,EACb,gBAAgB,EAAE,kBAAkB;gBACpC,0BAA0B,CAAC,cAAc,CAAC,eAAe,CAAC;gBAC1D,IAAI;YACN,eAAe,EAAE,MAAM,EAAE;SAC1B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,SAAiB;QAC7C,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;QACtE,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QACD,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QACpE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;QAChG,MAAM,IAAI,CAAC,gBAAgB,CACzB,2BAA2B,EAC3B,UAAU,EACV,wCAAwC,CACzC,CAAC;QACF,MAAM,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,CAAC;IACtE,CAAC;IAEO,KAAK,CAAC,iCAAiC,CAC7C,SAAiB,EACjB,UAA4B,EAC5B,iBAAoC;QAEpC,MAAM,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,CAAC,kBAAkB,CAAC;QAC1E,IAAI,iBAAiB,KAAK,gCAAgC,EAAE,CAAC;YAC3D,OAAO;QACT,CAAC;QAED,IACE,iBAAiB,KAAK,iBAAiB;YACvC,CAAC,iBAAiB,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,CAAC,EACxF,CAAC;YACD,MAAM;gBACJ,kBAAkB,EAAE,IAAI,CACtB,WAAW,CAAC,yBAAyB,EACrC,yEAAyE,EACzE;oBACE,UAAU,EAAE,SAAS;oBACrB,uBAAuB,EAAE,iBAAiB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC7E,sBAAsB,EAAE,UAAU,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC9E,SAAS,EAAE,KAAK;oBAChB,cAAc,EAAE,IAAI;oBACpB,sBAAsB,EAAE;wBACtB,+DAA+D;wBAC/D,sEAAsE;qBACvE;iBACF,CACF;aACF,CAAC;QACJ,CAAC;QAED,IACE,iBAAiB,KAAK,oBAAoB;YAC1C,iBAAiB,KAAK,wBAAwB,EAC9C,CAAC;YACD,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAC7D,MAAM,mBAAmB,GAAG,SAAS,CAAC,MAAM,CAC1C,CAAC,QAAQ,EAAE,EAAE,CACX,QAAQ,CAAC,MAAM,KAAK,MAAM;YAC1B,CAAC,QAAQ,CAAC,aAAa,KAAK,MAAM,CAAC,MAAM;gBACvC,QAAQ,CAAC,YAAY,KAAK,MAAM,CAAC,MAAM;gBACvC,QAAQ,CAAC,KAAK,KAAK,MAAM,CAAC,MAAM,CAAC,CACtC,CAAC;QACF,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,MAAM;gBACJ,kBAAkB,EAAE,IAAI,CACtB,WAAW,CAAC,yBAAyB,EACrC,yEAAyE,EACzE;oBACE,UAAU,EAAE,SAAS;oBACrB,mBAAmB,EAAE,mBAAmB,CAAC,MAAM;oBAC/C,SAAS,EAAE,KAAK;oBAChB,cAAc,EAAE,IAAI;oBACpB,sBAAsB,EAAE;wBACtB,0DAA0D;wBAC1D,qEAAqE;qBACtE;iBACF,CACF;aACF,CAAC;QACJ,CAAC;QAED,MAAM,uBAAuB,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAC5D,wBAAwB,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CACtD,CAAC;QACF,IAAI,uBAAuB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzC,MAAM;gBACJ,kBAAkB,EAAE,IAAI,CACtB,WAAW,CAAC,yBAAyB,EACrC,wEAAwE,EACxE;oBACE,UAAU,EAAE,SAAS;oBACrB,kBAAkB,EAAE,iBAAiB;oBACrC,SAAS,EAAE,KAAK;oBAChB,cAAc,EAAE,IAAI;oBACpB,sBAAsB,EAAE;wBACtB,gFAAgF;wBAChF,uFAAuF;qBACxF;iBACF,CACF;aACF,CAAC;QACJ,CAAC;QAED,IAAI,iBAAiB,KAAK,oBAAoB,EAAE,CAAC;YAC/C,IAAI,UAAU,CAAC,oBAAoB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjD,MAAM;oBACJ,kBAAkB,EAAE,IAAI,CACtB,WAAW,CAAC,yBAAyB,EACrC,0EAA0E,EAC1E;wBACE,UAAU,EAAE,SAAS;wBACrB,SAAS,EAAE,KAAK;wBAChB,cAAc,EAAE,IAAI;qBACrB,CACF;iBACF,CAAC;YACJ,CAAC;YACD,MAAM,eAAe,GAAG,UAAU,CAAC,oBAAoB;iBACpD,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC;iBAChC,MAAM,CACL,CAAC,WAAW,EAAE,EAAE,CACd,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CACzC,2BAA2B,CAAC,QAAQ,EAAE,WAAW,CAAC,CACnD,CACJ,CAAC;YACJ,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,0EAA0E;gBAC1E,6EAA6E;gBAC7E,OAAO,CAAC,IAAI,CACV,YAAY,SAAS,KAAK,eAAe,CAAC,MAAM,yDAAyD,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,uBAAuB,CAAC,MAAM,4BAA4B,CACvN,CAAC;YACJ,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,gCAAgC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YAC5F,MAAM;gBACJ,kBAAkB,EAAE,IAAI,CACtB,WAAW,CAAC,yBAAyB,EACrC,4FAA4F,EAC5F;oBACE,UAAU,EAAE,SAAS;oBACrB,kBAAkB,EAAE,iBAAiB;oBACrC,SAAS,EAAE,KAAK;oBAChB,cAAc,EAAE,IAAI;oBACpB,sBAAsB,EAAE;wBACtB,4EAA4E;wBAC5E,6EAA6E;qBAC9E;iBACF,CACF;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,SAAiB;QAC7C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;QAC7D,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC1F,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC9D,MAAM,IAAI,CAAC,gBAAgB,CACzB,qCAAqC,EACrC,QAAQ,EACR,6CAA6C,CAC9C,CAAC;QAEF,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;YAC9E,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;YAC5D,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,OAAO,CAAC;YACjB,CAAC;YAED,MAAM,eAAe,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC;YAEvE,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;YAC9D,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;gBACvD,MAAM,IAAI,CAAC,gBAAgB,CACzB,2BAA2B,EAC3B,MAAM,EACN,wCAAwC,CACzC,CAAC;gBACF,MAAM,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;YAClE,CAAC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;QAE9C,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YACtD,GAAG,WAAW;YACd,MAAM,EAAE;gBACN,GAAG,gBAAgB,CAAC,WAAW,CAAC;gBAChC,MAAM,EAAE,WAAW,CAAC,MAAM,KAAK,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAAa;gBACvF,0BAA0B,EAAE,iBAAiB,CAAC,gBAAgB;gBAC9D,yBAAyB,EACvB,OAAO,gBAAgB,CAAC,WAAW,CAAC,CAAC,yBAAyB,KAAK,QAAQ;oBACzE,CAAC,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,yBAAyB;oBACzD,CAAC,CAAC,IAAI;gBACV,oBAAoB,EAAE,iBAAiB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC;qBACzF,MAAM;gBACT,gBAAgB,EACd,OAAO,gBAAgB,CAAC,WAAW,CAAC,CAAC,gBAAgB,KAAK,QAAQ;oBAChE,CAAC,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,gBAAgB;oBAChD,CAAC,CAAC,IAAI;gBACV,eAAe,EACb,OAAO,gBAAgB,CAAC,WAAW,CAAC,CAAC,eAAe,KAAK,QAAQ;oBAC/D,CAAC,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,eAAe;oBAC/C,CAAC,CAAC,IAAI;aACX;SACF,CAAC,CAAC,CAAC;QAEJ,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,SAAiB;QAM3C,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;QACxE,MAAM,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,CAAC,uBAAuB,EAAE,aAAa,EAAE,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC/E,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC;YACpC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;SAC/B,CAAC,CAAC;QACH,IAAI,gBAAgB,GAAG,uBAAuB,CAAC;QAC/C,IAAI,MAAM,GAAG,aAAa,IAAI,kBAAkB,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QAC/E,IAAI,KAAK,GAAG,YAAY,CAAC;QAEzB,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,+BAA+B,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACjF,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE;gBACjC,iBAAiB,EAAE;oBACjB,UAAU,EAAE,SAAS;oBACrB,gBAAgB,EAAE,iBAAiB,CAAC,gBAAgB;oBACpD,aAAa,EAAE,UAAU;oBACzB,kBAAkB,EAAE,gCAAgC;oBACpD,WAAW,EAAE,MAAM,EAAE;oBACrB,wBAAwB,EAAE,iBAAiB,CAAC,gBAAgB;oBAC5D,WAAW,EAAE,iBAAiB,CAAC,WAAW;iBAC3C;gBACD,gBAAgB,EAAE,EAAE;gBACpB,oBAAoB,EAAE,EAAE;gBACxB,mBAAmB,EAAE,KAAK;aAC3B,CAAC,CAAC;YACH,CAAC,gBAAgB,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACpD,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC;gBACpC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC;gBAChC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;aAC/B,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,iBAAiB;YACjB,gBAAgB;YAChB,MAAM,EAAE,MAAM,IAAI,kBAAkB,CAAC,SAAS,EAAE,iBAAiB,CAAC;YAClE,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,WAAW,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,CAAC;SACzF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,SAAiB,EACjB,UAA4B;QAS5B,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC;YACjD,MAAM;gBACJ,kBAAkB,EAAE,IAAI,CACtB,WAAW,CAAC,gBAAgB,EAC5B,qDAAqD,EACrD;oBACE,SAAS,EAAE,KAAK;oBAChB,cAAc,EAAE,IAAI;iBACrB,CACF;aACF,CAAC;QACJ,CAAC;QAED,MAAM,0BAA0B,GAAG,IAAI,CAAC,kCAAkC,CACxE,SAAS,EACT,UAAU,CAAC,iBAAiB,CAC7B,CAAC;QACF,MAAM,gBAAgB,GAAG,0BAAyD,CAAC;QACnF,IAAI,gBAAgB,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAC9C,MAAM;gBACJ,kBAAkB,EAAE,IAAI,CACtB,WAAW,CAAC,gBAAgB,EAC5B,oDAAoD,EACpD;oBACE,UAAU,EAAE,SAAS;oBACrB,mBAAmB,EAAE,gBAAgB,CAAC,UAAU;oBAChD,SAAS,EAAE,KAAK;oBAChB,cAAc,EAAE,IAAI;iBACrB,CACF;aACF,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,iCAAiC,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;QACpF,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;QACxE,MAAM,oBAAoB,GAAqB;YAC7C,iBAAiB,EAAE,gBAAgB;YACnC,gBAAgB,EAAE,8BAA8B,CAC9C,UAAU,CAAC,gBAAgB,EAC3B,MAAM,EACN,iBAAiB,CAClB;YACD,oBAAoB,EAAE,8BAA8B,CAClD,UAAU,CAAC,oBAAoB,EAC/B,UAAU,EACV,iBAAiB,CAClB;YACD,mBAAmB,EAAE,UAAU,CAAC,mBAAmB,KAAK,IAAI;SAC7D,CAAC;QACF,IACE,oBAAoB,CAAC,mBAAmB,KAAK,IAAI;YACjD,oBAAoB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,EAC5E,CAAC;YACD,MAAM;gBACJ,kBAAkB,EAAE,IAAI,CACtB,WAAW,CAAC,yBAAyB,EACrC,iFAAiF,EACjF;oBACE,UAAU,EAAE,SAAS;oBACrB,mBAAmB,EAAE,oBAAoB,CAAC,mBAAmB;oBAC7D,kBAAkB,EAAE,oBAAoB,CAAC,gBAAgB;yBACtD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC;yBACxC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;oBACzB,SAAS,EAAE,KAAK;oBAChB,cAAc,EAAE,IAAI;oBACpB,sBAAsB,EAAE;wBACtB,iEAAiE;wBACjE,iEAAiE;qBAClE;iBACF,CACF;aACF,CAAC;QACJ,CAAC;QACD,IACE,gBAAgB,CAAC,kBAAkB,KAAK,gCAAgC;YACxE,CAAC,IAAI,CAAC,+BAA+B,CAAC,iBAAiB,CAAC,EACxD,CAAC;YACD,MAAM;gBACJ,kBAAkB,EAAE,IAAI,CACtB,WAAW,CAAC,yBAAyB,EACrC,2EAA2E,EAC3E;oBACE,UAAU,EAAE,SAAS;oBACrB,oBAAoB,EAAE,IAAI,CAAC,sBAAsB,EAAE;oBACnD,kBAAkB,EAAE,IAAI,CAAC,8BAA8B,EAAE;oBACzD,SAAS,EAAE,KAAK;oBAChB,cAAc,EAAE,IAAI;iBACrB,CACF;aACF,CAAC;QACJ,CAAC;QACD,IACE,gBAAgB,CAAC,wBAAwB,KAAK,IAAI;YAClD,gBAAgB,CAAC,wBAAwB,KAAK,iBAAiB,CAAC,gBAAgB,EAChF,CAAC;YACD,OAAO,CAAC,IAAI,CACV,YAAY,SAAS,mDAAmD,gBAAgB,CAAC,wBAAwB,OAAO,iBAAiB,CAAC,gBAAgB,EAAE,CAC7J,CAAC;YACF,gBAAgB,CAAC,wBAAwB,GAAG,iBAAiB,CAAC,gBAAgB,CAAC;QACjF,CAAC;QACD,MAAM,IAAI,CAAC,iCAAiC,CAC1C,SAAS,EACT,oBAAoB,EACpB,iBAAiB,CAClB,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;YACnE,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;YACpE,MAAM,WAAW,GAAG;gBAClB,GAAG,oBAAoB,CAAC,gBAAgB;gBACxC,GAAG,oBAAoB,CAAC,oBAAoB;aAC7C,CAAC;YACF,MAAM,oBAAoB,GAAG,yBAAyB,CACpD;gBACE,UAAU,EAAE,SAAS;gBACrB,OAAO,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC;gBACrE,MAAM,EAAE,UAAU;gBAClB,cAAc,EAAE,CAAC;gBACjB,kBAAkB,EAAE,CAAC;gBACrB,WAAW;gBACX,qBAAqB,EAAE,EAAE;gBACzB,0BAA0B,EAAE,iBAAiB,CAAC,gBAAgB;gBAC9D,yBAAyB,EAAE,gBAAgB,CAAC,gBAAgB;gBAC5D,eAAe,EAAE,gBAAgB,CAAC,kBAAkB;gBACpD,eAAe,EAAE,MAAM,EAAE;aAC1B,EACD,gBAAgB,CACjB,CAAC;YACF,MAAM,MAAM,GAAiB;gBAC3B,UAAU,EAAE,SAAS;gBACrB,OAAO,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC;gBACrE,MAAM,EAAE,UAAU;gBAClB,cAAc,EAAE,CAAC;gBACjB,kBAAkB,EAAE,oBAAoB,CAAC,MAAM;gBAC/C,WAAW;gBACX,qBAAqB,EAAE,oBAAoB;gBAC3C,0BAA0B,EAAE,iBAAiB,CAAC,gBAAgB;gBAC9D,yBAAyB,EAAE,gBAAgB,CAAC,gBAAgB;gBAC5D,eAAe,EAAE,gBAAgB,CAAC,kBAAkB;gBACpD,eAAe,EAAE,MAAM,EAAE;aAC1B,CAAC;YACF,MAAM,IAAI,CAAC,gBAAgB,CACzB,2BAA2B,EAC3B,MAAM,EACN,wCAAwC,CACzC,CAAC;YAEF,MAAM,eAAe,CAAC,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,gBAAgB,CAAC,CAAC;YAC9E,MAAM,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;YAChE,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;gBAChD,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;aACzD,CAAC,CAAC;YAEH,OAAO;gBACL,yBAAyB,EAAE,gBAAgB,CAAC,gBAAgB;aAC7D,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YACtD,GAAG,WAAW;YACd,MAAM,EAAE,MAAM,CAAC,QAAQ;YACvB,KAAK,EAAE;gBACL,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBACtC,IAAI,EAAE,WAAW,CAAC,EAAE;aACrB;YACD,MAAM,EAAE;gBACN,GAAG,gBAAgB,CAAC,WAAW,CAAC;gBAChC,MAAM,EAAE,UAAU;gBAClB,0BAA0B,EAAE,iBAAiB,CAAC,gBAAgB;gBAC9D,yBAAyB,EAAE,gBAAgB,CAAC,gBAAgB;gBAC5D,oBAAoB,EAAE,CAAC;gBACvB,gBAAgB,EAAE,gBAAgB,CAAC,WAAW;gBAC9C,eAAe,EAAE,gBAAgB,CAAC,kBAAkB;aACrD;SACF,CAAC,CAAC,CAAC;QAEJ,OAAO;YACL,IAAI,EAAE;gBACJ,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,IAAI;gBACd,cAAc,EAAE,MAAM,CAAC,QAAQ;gBAC/B,yBAAyB,EAAE,MAAM,CAAC,yBAAyB;aAC5D;SACF,CAAC;IACJ,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"intake-service.js","sourceRoot":"","sources":["../../../../../apps/control-plane/src/application/services/intake-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,12 @@ import { ERROR_CODES } from '../core/error-codes.js';
|
|
|
2
2
|
import { GATE_RESULT, TOOLS } from '../core/constants.js';
|
|
3
3
|
import { buildMergeRepairQaReroute, isBlockedMergeGateFailure } from '../core/merge-repair.js';
|
|
4
4
|
import { callCliTool } from './tooling.js';
|
|
5
|
-
function resolveBlockedRetryStatus(mode) {
|
|
5
|
+
function resolveBlockedRetryStatus(mode, resumePhase) {
|
|
6
|
+
// If recovery knows the phase where the failure occurred, resume there instead of
|
|
7
|
+
// inferring from the gate mode (which may not have been reached).
|
|
8
|
+
if (resumePhase === 'planning' || resumePhase === 'intake') {
|
|
9
|
+
return 'planning';
|
|
10
|
+
}
|
|
6
11
|
if (mode === 'fast') {
|
|
7
12
|
return 'building';
|
|
8
13
|
}
|
|
@@ -75,6 +80,8 @@ export class RetryCommandHandler {
|
|
|
75
80
|
}
|
|
76
81
|
const lastGateMode = statePayload.front_matter.evidence?.last_gate_mode;
|
|
77
82
|
const gates = statePayload.front_matter.gates ?? {};
|
|
83
|
+
const recovery = statePayload.front_matter.recovery;
|
|
84
|
+
const recoveryResumePhase = typeof recovery?.resume_phase === 'string' ? recovery.resume_phase : null;
|
|
78
85
|
const inferredMode = typeof lastGateMode === 'string' && lastGateMode.length > 0
|
|
79
86
|
? lastGateMode
|
|
80
87
|
: status === 'building'
|
|
@@ -163,7 +170,7 @@ export class RetryCommandHandler {
|
|
|
163
170
|
gate_retry_count: 0,
|
|
164
171
|
last_retry_at: null,
|
|
165
172
|
};
|
|
166
|
-
const reroutedStatus = status === 'blocked' ? resolveBlockedRetryStatus(inferredMode) : null;
|
|
173
|
+
const reroutedStatus = status === 'blocked' ? resolveBlockedRetryStatus(inferredMode, recoveryResumePhase) : null;
|
|
167
174
|
if (reroutedStatus) {
|
|
168
175
|
frontMatterPatch.status = reroutedStatus;
|
|
169
176
|
frontMatterPatch.status_reason = `forced_retry:${inferredMode}`;
|
|
@@ -227,7 +234,7 @@ export class RetryCommandHandler {
|
|
|
227
234
|
};
|
|
228
235
|
}
|
|
229
236
|
else if (status === 'blocked') {
|
|
230
|
-
const reroutedStatus = resolveBlockedRetryStatus(inferredMode);
|
|
237
|
+
const reroutedStatus = resolveBlockedRetryStatus(inferredMode, recoveryResumePhase);
|
|
231
238
|
const frontMatterPatch = {
|
|
232
239
|
gate_retry_count: 0,
|
|
233
240
|
last_retry_at: null,
|