agentskeptic 0.1.6 → 0.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/README.md +41 -99
  2. package/dist/ciLockWorkflow.d.ts +67 -2
  3. package/dist/ciLockWorkflow.d.ts.map +1 -1
  4. package/dist/ciLockWorkflow.js +144 -131
  5. package/dist/ciLockWorkflow.js.map +1 -1
  6. package/dist/cli/lockOrchestration.d.ts +26 -0
  7. package/dist/cli/lockOrchestration.d.ts.map +1 -0
  8. package/dist/cli/lockOrchestration.js +562 -0
  9. package/dist/cli/lockOrchestration.js.map +1 -0
  10. package/dist/cli/lockOrchestration.test.d.ts +2 -0
  11. package/dist/cli/lockOrchestration.test.d.ts.map +1 -0
  12. package/dist/cli/lockOrchestration.test.js +99 -0
  13. package/dist/cli/lockOrchestration.test.js.map +1 -0
  14. package/dist/cli.js +139 -70
  15. package/dist/cli.js.map +1 -1
  16. package/dist/commercial/licensePreflight.d.ts +7 -2
  17. package/dist/commercial/licensePreflight.d.ts.map +1 -1
  18. package/dist/commercial/licensePreflight.js +6 -5
  19. package/dist/commercial/licensePreflight.js.map +1 -1
  20. package/dist/commercial/licensePreflight.test.js +23 -3
  21. package/dist/commercial/licensePreflight.test.js.map +1 -1
  22. package/dist/commercial/postVerifyOutcomeBeacon.d.ts +13 -0
  23. package/dist/commercial/postVerifyOutcomeBeacon.d.ts.map +1 -0
  24. package/dist/commercial/postVerifyOutcomeBeacon.js +33 -0
  25. package/dist/commercial/postVerifyOutcomeBeacon.js.map +1 -0
  26. package/dist/commercial/quickVerifyFunnelTerminalStatus.d.ts +5 -0
  27. package/dist/commercial/quickVerifyFunnelTerminalStatus.d.ts.map +1 -0
  28. package/dist/commercial/quickVerifyFunnelTerminalStatus.js +11 -0
  29. package/dist/commercial/quickVerifyFunnelTerminalStatus.js.map +1 -0
  30. package/dist/commercial/verifyWorkloadClassify.d.ts +17 -0
  31. package/dist/commercial/verifyWorkloadClassify.d.ts.map +1 -0
  32. package/dist/commercial/verifyWorkloadClassify.js +47 -0
  33. package/dist/commercial/verifyWorkloadClassify.js.map +1 -0
  34. package/dist/commercial/verifyWorkloadClassify.test.d.ts +2 -0
  35. package/dist/commercial/verifyWorkloadClassify.test.d.ts.map +1 -0
  36. package/dist/commercial/verifyWorkloadClassify.test.js +45 -0
  37. package/dist/commercial/verifyWorkloadClassify.test.js.map +1 -0
  38. package/dist/enforceCli.d.ts.map +1 -1
  39. package/dist/enforceCli.js +8 -28
  40. package/dist/enforceCli.js.map +1 -1
  41. package/dist/publicDistribution.generated.d.ts +2 -0
  42. package/dist/publicDistribution.generated.d.ts.map +1 -1
  43. package/dist/publicDistribution.generated.js +2 -0
  44. package/dist/publicDistribution.generated.js.map +1 -1
  45. package/dist/quickVerify/buildQuickContractEventsNdjson.d.ts +1 -0
  46. package/dist/quickVerify/buildQuickContractEventsNdjson.d.ts.map +1 -1
  47. package/dist/quickVerify/buildQuickContractEventsNdjson.js +11 -5
  48. package/dist/quickVerify/buildQuickContractEventsNdjson.js.map +1 -1
  49. package/dist/quickVerify/buildSyntheticRowParams.d.ts +7 -0
  50. package/dist/quickVerify/buildSyntheticRowParams.d.ts.map +1 -0
  51. package/dist/quickVerify/buildSyntheticRowParams.js +13 -0
  52. package/dist/quickVerify/buildSyntheticRowParams.js.map +1 -0
  53. package/dist/quickVerify/buildSyntheticRowParams.test.d.ts +2 -0
  54. package/dist/quickVerify/buildSyntheticRowParams.test.d.ts.map +1 -0
  55. package/dist/quickVerify/buildSyntheticRowParams.test.js +19 -0
  56. package/dist/quickVerify/buildSyntheticRowParams.test.js.map +1 -0
  57. package/dist/quickVerify/exportTool.d.ts +5 -0
  58. package/dist/quickVerify/exportTool.d.ts.map +1 -1
  59. package/dist/quickVerify/exportTool.js +19 -0
  60. package/dist/quickVerify/exportTool.js.map +1 -1
  61. package/dist/quickVerify/flatKeyToJsonPointer.d.ts +16 -0
  62. package/dist/quickVerify/flatKeyToJsonPointer.d.ts.map +1 -0
  63. package/dist/quickVerify/flatKeyToJsonPointer.js +44 -0
  64. package/dist/quickVerify/flatKeyToJsonPointer.js.map +1 -0
  65. package/dist/quickVerify/flatKeyToJsonPointer.test.d.ts +2 -0
  66. package/dist/quickVerify/flatKeyToJsonPointer.test.d.ts.map +1 -0
  67. package/dist/quickVerify/flatKeyToJsonPointer.test.js +19 -0
  68. package/dist/quickVerify/flatKeyToJsonPointer.test.js.map +1 -0
  69. package/dist/quickVerify/ingest.d.ts +1 -0
  70. package/dist/quickVerify/ingest.d.ts.map +1 -1
  71. package/dist/quickVerify/ingest.js +1 -1
  72. package/dist/quickVerify/ingest.js.map +1 -1
  73. package/dist/quickVerify/planRowUnit.pointer-promotion.test.d.ts +2 -0
  74. package/dist/quickVerify/planRowUnit.pointer-promotion.test.d.ts.map +1 -0
  75. package/dist/quickVerify/planRowUnit.pointer-promotion.test.js +30 -0
  76. package/dist/quickVerify/planRowUnit.pointer-promotion.test.js.map +1 -0
  77. package/dist/quickVerify/quickParamPointerNegatives.test.d.ts +2 -0
  78. package/dist/quickVerify/quickParamPointerNegatives.test.d.ts.map +1 -0
  79. package/dist/quickVerify/quickParamPointerNegatives.test.js +25 -0
  80. package/dist/quickVerify/quickParamPointerNegatives.test.js.map +1 -0
  81. package/dist/quickVerify/quickParamPointerPromotionGoldens.test.d.ts +2 -0
  82. package/dist/quickVerify/quickParamPointerPromotionGoldens.test.d.ts.map +1 -0
  83. package/dist/quickVerify/quickParamPointerPromotionGoldens.test.js +34 -0
  84. package/dist/quickVerify/quickParamPointerPromotionGoldens.test.js.map +1 -0
  85. package/dist/quickVerify/quickParamPointerReplay.test.d.ts +2 -0
  86. package/dist/quickVerify/quickParamPointerReplay.test.d.ts.map +1 -0
  87. package/dist/quickVerify/quickParamPointerReplay.test.js +23 -0
  88. package/dist/quickVerify/quickParamPointerReplay.test.js.map +1 -0
  89. package/dist/quickVerify/quickVerifyScope.d.ts +1 -1
  90. package/dist/quickVerify/quickVerifyScope.js +1 -1
  91. package/dist/quickVerify/rowUnit.d.ts +8 -0
  92. package/dist/quickVerify/rowUnit.d.ts.map +1 -1
  93. package/dist/quickVerify/rowUnit.js +17 -2
  94. package/dist/quickVerify/rowUnit.js.map +1 -1
  95. package/dist/quickVerify/runQuickVerify.d.ts.map +1 -1
  96. package/dist/quickVerify/runQuickVerify.js +69 -5
  97. package/dist/quickVerify/runQuickVerify.js.map +1 -1
  98. package/dist/quickVerify/verificationRequestFingerprint.d.ts +6 -0
  99. package/dist/quickVerify/verificationRequestFingerprint.d.ts.map +1 -0
  100. package/dist/quickVerify/verificationRequestFingerprint.js +23 -0
  101. package/dist/quickVerify/verificationRequestFingerprint.js.map +1 -0
  102. package/dist/quickVerify/verificationRequestFingerprint.test.d.ts +2 -0
  103. package/dist/quickVerify/verificationRequestFingerprint.test.d.ts.map +1 -0
  104. package/dist/quickVerify/verificationRequestFingerprint.test.js +26 -0
  105. package/dist/quickVerify/verificationRequestFingerprint.test.js.map +1 -0
  106. package/dist/standardVerifyWorkflowCli.d.ts +13 -0
  107. package/dist/standardVerifyWorkflowCli.d.ts.map +1 -1
  108. package/dist/standardVerifyWorkflowCli.js +32 -19
  109. package/dist/standardVerifyWorkflowCli.js.map +1 -1
  110. package/dist/telemetry/cliInstallId.d.ts +8 -0
  111. package/dist/telemetry/cliInstallId.d.ts.map +1 -0
  112. package/dist/telemetry/cliInstallId.js +72 -0
  113. package/dist/telemetry/cliInstallId.js.map +1 -0
  114. package/dist/telemetry/fetchWithTimeout.d.ts +6 -0
  115. package/dist/telemetry/fetchWithTimeout.d.ts.map +1 -0
  116. package/dist/telemetry/fetchWithTimeout.js +15 -0
  117. package/dist/telemetry/fetchWithTimeout.js.map +1 -0
  118. package/dist/telemetry/maybeEmitOssClaimTicketUrl.d.ts +8 -0
  119. package/dist/telemetry/maybeEmitOssClaimTicketUrl.d.ts.map +1 -0
  120. package/dist/telemetry/maybeEmitOssClaimTicketUrl.js +22 -0
  121. package/dist/telemetry/maybeEmitOssClaimTicketUrl.js.map +1 -0
  122. package/dist/telemetry/ossClaimOrigin.d.ts +6 -0
  123. package/dist/telemetry/ossClaimOrigin.d.ts.map +1 -0
  124. package/dist/telemetry/ossClaimOrigin.js +9 -0
  125. package/dist/telemetry/ossClaimOrigin.js.map +1 -0
  126. package/dist/telemetry/ossClaimOrigin.test.d.ts +2 -0
  127. package/dist/telemetry/ossClaimOrigin.test.d.ts.map +1 -0
  128. package/dist/telemetry/ossClaimOrigin.test.js +9 -0
  129. package/dist/telemetry/ossClaimOrigin.test.js.map +1 -0
  130. package/dist/telemetry/postOssClaimTicket.d.ts +14 -0
  131. package/dist/telemetry/postOssClaimTicket.d.ts.map +1 -0
  132. package/dist/telemetry/postOssClaimTicket.js +42 -0
  133. package/dist/telemetry/postOssClaimTicket.js.map +1 -0
  134. package/dist/telemetry/postProductActivationEvent.d.ts +25 -0
  135. package/dist/telemetry/postProductActivationEvent.d.ts.map +1 -0
  136. package/dist/telemetry/postProductActivationEvent.js +71 -0
  137. package/dist/telemetry/postProductActivationEvent.js.map +1 -0
  138. package/dist/telemetry/postProductActivationEvent.test.d.ts +2 -0
  139. package/dist/telemetry/postProductActivationEvent.test.d.ts.map +1 -0
  140. package/dist/telemetry/postProductActivationEvent.test.js +65 -0
  141. package/dist/telemetry/postProductActivationEvent.test.js.map +1 -0
  142. package/dist/telemetry/productActivationHeaders.d.ts +5 -0
  143. package/dist/telemetry/productActivationHeaders.d.ts.map +1 -0
  144. package/dist/telemetry/productActivationHeaders.js +5 -0
  145. package/dist/telemetry/productActivationHeaders.js.map +1 -0
  146. package/dist/telemetry/resolveTelemetrySource.d.ts +7 -0
  147. package/dist/telemetry/resolveTelemetrySource.d.ts.map +1 -0
  148. package/dist/telemetry/resolveTelemetrySource.js +10 -0
  149. package/dist/telemetry/resolveTelemetrySource.js.map +1 -0
  150. package/package.json +8 -7
  151. package/schemas/quick-verify-report.schema.json +1 -1
@@ -0,0 +1,562 @@
1
+ /**
2
+ * Batch/quick CI lock orchestration: R → VS → LOCK → VO → BC → JSON → footers → exit.
3
+ * Normative telemetry ordering: docs/funnel-observability-ssot.md
4
+ */
5
+ import { randomUUID } from "node:crypto";
6
+ import path from "path";
7
+ import { CLI_OPERATIONAL_CODES, cliErrorEnvelope, formatOperationalMessage, } from "../failureCatalog.js";
8
+ import { TruthLayerError } from "../truthLayerError.js";
9
+ import { runLicensePreflightIfNeeded } from "../commercial/licensePreflight.js";
10
+ import { postVerifyOutcomeBeacon } from "../commercial/postVerifyOutcomeBeacon.js";
11
+ import { quickVerifyVerdictToTerminalStatus } from "../commercial/quickVerifyFunnelTerminalStatus.js";
12
+ import { classifyBatchVerifyWorkload, classifyQuickVerifyWorkload, } from "../commercial/verifyWorkloadClassify.js";
13
+ import { LICENSE_PREFLIGHT_ENABLED } from "../generated/commercialBuildFlags.js";
14
+ import { argValue, parseBatchVerifyCliArgs, parseQuickCliArgs, removeArgPair } from "../cliArgv.js";
15
+ import { executeBatchLockFromParsed, executeQuickLockFromParsed, parseBatchLockXorAndParsed, parseQuickLockXorAndParsed, } from "../ciLockWorkflow.js";
16
+ import { emitVerifyWorkflowCliJsonAndExitByStatus } from "../standardVerifyWorkflowCli.js";
17
+ import { formatDistributionFooter } from "../distributionFooter.js";
18
+ import { maybeEmitOssClaimTicketUrlToStderr } from "../telemetry/maybeEmitOssClaimTicketUrl.js";
19
+ import { postProductActivationEvent } from "../telemetry/postProductActivationEvent.js";
20
+ import { stableStringify } from "../quickVerify/canonicalJson.js";
21
+ import { formatQuickVerifyHumanReport } from "../quickVerify/formatQuickVerifyHumanReport.js";
22
+ function writeCliError(code, message) {
23
+ console.error(cliErrorEnvelope(code, message));
24
+ }
25
+ /** OSS batch/quick: stderr when user passes --expect-lock (machine-checked). */
26
+ export const EXPECT_LOCK_REQUIRES_COMMERCIAL_BUILD_MESSAGE = "The OSS build supports --output-lock only; --expect-lock and agentskeptic enforce require the commercial build. Policy: docs/commercial-enforce-gate-normative.md";
27
+ /** Post-success stderr (monetized boundary); machine-checked literals. */
28
+ export const LOCK_SUCCESS_MONETIZED_BOUNDARY_LINE_A = "[agentskeptic] Paid compare and drift gates use agentskeptic enforce with --expect-lock (commercial).";
29
+ export const LOCK_SUCCESS_MONETIZED_BOUNDARY_LINE_B = "[agentskeptic] OSS verify can still emit --output-lock fixtures for CI without a subscription.";
30
+ export const ENFORCE_COMPARE_ONLY_REJECT_OUTPUT_LOCK_MESSAGE = "agentskeptic enforce is compare-only: use --expect-lock <path> against an existing lock; generate locks with batch or quick verify using --output-lock.";
31
+ function stderrWrite(s) {
32
+ process.stderr.write(s);
33
+ }
34
+ function emitMonetizedBoundaryFootersOnSuccess() {
35
+ stderrWrite(`${LOCK_SUCCESS_MONETIZED_BOUNDARY_LINE_A}\n`);
36
+ stderrWrite(`${LOCK_SUCCESS_MONETIZED_BOUNDARY_LINE_B}\n`);
37
+ }
38
+ function activationRunIdFromEnv() {
39
+ return (process.env.AGENTSKEPTIC_RUN_ID?.trim() ||
40
+ process.env.WORKFLOW_VERIFIER_RUN_ID?.trim() ||
41
+ randomUUID());
42
+ }
43
+ function terminalStatusFromWorkflowResult(r) {
44
+ if (r.status === "complete")
45
+ return "complete";
46
+ if (r.status === "inconsistent")
47
+ return "inconsistent";
48
+ return "incomplete";
49
+ }
50
+ /** @throws TruthLayerError — enforce batch: --expect-lock only (no --output-lock). */
51
+ export function parseEnforceBatchExpectLockRoute(restArgs) {
52
+ if (argValue(restArgs, "--output-lock") !== undefined) {
53
+ throw new TruthLayerError(CLI_OPERATIONAL_CODES.ENFORCE_USAGE, ENFORCE_COMPARE_ONLY_REJECT_OUTPUT_LOCK_MESSAGE);
54
+ }
55
+ const lockPath = argValue(restArgs, "--expect-lock");
56
+ if (lockPath === undefined) {
57
+ throw new TruthLayerError(CLI_OPERATIONAL_CODES.ENFORCE_USAGE, "enforce batch requires --expect-lock <path>.");
58
+ }
59
+ const parsed = parseBatchVerifyCliArgs(removeArgPair(restArgs, "--expect-lock"));
60
+ if (parsed.shareReportOrigin !== undefined) {
61
+ throw new TruthLayerError(CLI_OPERATIONAL_CODES.ENFORCE_USAGE, "--share-report-origin is not supported with enforce batch.");
62
+ }
63
+ return { parsed, lockKind: "expect", lockPath };
64
+ }
65
+ /** @throws TruthLayerError */
66
+ export function parseEnforceQuickExpectLockRoute(restArgs) {
67
+ if (argValue(restArgs, "--output-lock") !== undefined) {
68
+ throw new TruthLayerError(CLI_OPERATIONAL_CODES.ENFORCE_USAGE, ENFORCE_COMPARE_ONLY_REJECT_OUTPUT_LOCK_MESSAGE);
69
+ }
70
+ const lockPath = argValue(restArgs, "--expect-lock");
71
+ if (lockPath === undefined) {
72
+ throw new TruthLayerError(CLI_OPERATIONAL_CODES.ENFORCE_USAGE, "enforce quick requires --expect-lock <path>.");
73
+ }
74
+ const pq = parseQuickCliArgs(removeArgPair(restArgs, "--expect-lock"));
75
+ if (pq.shareReportOrigin !== undefined) {
76
+ throw new TruthLayerError(CLI_OPERATIONAL_CODES.ENFORCE_USAGE, "--share-report-origin is not supported with enforce quick.");
77
+ }
78
+ return { pq, lockPath };
79
+ }
80
+ async function maybePostVerifyOutcomeAndBeaconBatch(input) {
81
+ if (!input.shouldEmit)
82
+ return;
83
+ const ts = terminalStatusFromWorkflowResult(input.result);
84
+ await postProductActivationEvent({
85
+ phase: "verify_outcome",
86
+ run_id: input.activationRunId,
87
+ issued_at: new Date().toISOString(),
88
+ workload_class: input.workloadClass,
89
+ subcommand: "batch_verify",
90
+ build_profile: input.buildProfile,
91
+ terminal_status: ts,
92
+ });
93
+ if (!input.suppressOssClaim) {
94
+ await maybeEmitOssClaimTicketUrlToStderr({
95
+ run_id: input.activationRunId,
96
+ terminal_status: ts,
97
+ workload_class: input.workloadClass,
98
+ subcommand: "batch_verify",
99
+ build_profile: input.buildProfile,
100
+ });
101
+ }
102
+ if (LICENSE_PREFLIGHT_ENABLED && input.runId !== null) {
103
+ await postVerifyOutcomeBeacon({
104
+ runId: input.runId,
105
+ terminal_status: ts,
106
+ workload_class: input.workloadClass,
107
+ subcommand: "batch_verify",
108
+ });
109
+ }
110
+ }
111
+ async function maybePostVerifyOutcomeAndBeaconQuick(input) {
112
+ if (!input.shouldEmit)
113
+ return;
114
+ const ts = quickVerifyVerdictToTerminalStatus(input.verdict);
115
+ await postProductActivationEvent({
116
+ phase: "verify_outcome",
117
+ run_id: input.activationRunId,
118
+ issued_at: new Date().toISOString(),
119
+ workload_class: input.workloadClass,
120
+ subcommand: "quick_verify",
121
+ build_profile: input.buildProfile,
122
+ terminal_status: ts,
123
+ });
124
+ if (!input.suppressOssClaim) {
125
+ await maybeEmitOssClaimTicketUrlToStderr({
126
+ run_id: input.activationRunId,
127
+ terminal_status: ts,
128
+ workload_class: input.workloadClass,
129
+ subcommand: "quick_verify",
130
+ build_profile: input.buildProfile,
131
+ });
132
+ }
133
+ if (LICENSE_PREFLIGHT_ENABLED && input.runId !== null) {
134
+ await postVerifyOutcomeBeacon({
135
+ runId: input.runId,
136
+ terminal_status: ts,
137
+ workload_class: input.workloadClass,
138
+ subcommand: "quick_verify",
139
+ });
140
+ }
141
+ }
142
+ /**
143
+ * `agentskeptic` batch entry when exactly one lock flag is present (verify CLI, not enforce).
144
+ */
145
+ export async function orchestrateVerifyBatchLockRun(restArgs) {
146
+ let route;
147
+ try {
148
+ route = parseBatchLockXorAndParsed(restArgs);
149
+ }
150
+ catch (e) {
151
+ if (e instanceof TruthLayerError) {
152
+ writeCliError(e.code, e.message);
153
+ process.exit(3);
154
+ }
155
+ throw e;
156
+ }
157
+ if (route.lockKind === "expect" && !LICENSE_PREFLIGHT_ENABLED) {
158
+ writeCliError(CLI_OPERATIONAL_CODES.ENFORCE_REQUIRES_COMMERCIAL_BUILD, EXPECT_LOCK_REQUIRES_COMMERCIAL_BUILD_MESSAGE);
159
+ process.exit(3);
160
+ }
161
+ const activationRunId = activationRunIdFromEnv();
162
+ let preflight = { runId: null };
163
+ if (LICENSE_PREFLIGHT_ENABLED) {
164
+ const intent = route.lockKind === "output" ? "verify" : "enforce";
165
+ try {
166
+ preflight = await runLicensePreflightIfNeeded(intent, { runId: activationRunId });
167
+ }
168
+ catch (e) {
169
+ if (e instanceof TruthLayerError) {
170
+ writeCliError(e.code, e.message);
171
+ process.exit(3);
172
+ }
173
+ const msg = e instanceof Error ? e.message : String(e);
174
+ writeCliError(CLI_OPERATIONAL_CODES.INTERNAL_ERROR, formatOperationalMessage(msg));
175
+ process.exit(3);
176
+ }
177
+ }
178
+ const buildProfile = LICENSE_PREFLIGHT_ENABLED ? "commercial" : "oss";
179
+ const workloadClass = classifyBatchVerifyWorkload({
180
+ eventsPath: route.parsed.eventsPath,
181
+ registryPath: route.parsed.registryPath,
182
+ database: route.parsed.database,
183
+ });
184
+ const suppressOssClaim = route.parsed.noTruthReport || route.parsed.shareReportOrigin !== undefined;
185
+ await postProductActivationEvent({
186
+ phase: "verify_started",
187
+ run_id: activationRunId,
188
+ issued_at: new Date().toISOString(),
189
+ workload_class: workloadClass,
190
+ subcommand: "batch_verify",
191
+ build_profile: buildProfile,
192
+ });
193
+ const truthReport = route.parsed.noTruthReport ?
194
+ () => { }
195
+ : (report) => {
196
+ stderrWrite(`${report}\n`);
197
+ stderrWrite(formatDistributionFooter());
198
+ };
199
+ const terminal = await executeBatchLockFromParsed({
200
+ parsed: route.parsed,
201
+ lockKind: route.lockKind,
202
+ lockAbsolutePath: path.resolve(route.lockPath),
203
+ truthReport,
204
+ });
205
+ const voBeaconEligible = terminal.tag === "workflow_terminal" ||
206
+ terminal.tag === "lock_mismatch" ||
207
+ (terminal.tag === "operational" && terminal.verifiedResult !== undefined);
208
+ if (voBeaconEligible) {
209
+ const resultForTelemetry = terminal.tag === "operational" ? terminal.verifiedResult : terminal.result;
210
+ await maybePostVerifyOutcomeAndBeaconBatch({
211
+ shouldEmit: true,
212
+ runId: preflight.runId,
213
+ result: resultForTelemetry,
214
+ workloadClass,
215
+ activationRunId,
216
+ buildProfile,
217
+ suppressOssClaim,
218
+ });
219
+ }
220
+ if (terminal.tag === "workflow_terminal") {
221
+ emitVerifyWorkflowCliJsonAndExitByStatus(terminal.result, {
222
+ consoleLog: (line) => {
223
+ console.log(line);
224
+ },
225
+ exit: (code) => {
226
+ if (code === 0)
227
+ emitMonetizedBoundaryFootersOnSuccess();
228
+ process.exit(code);
229
+ },
230
+ });
231
+ return;
232
+ }
233
+ if (terminal.tag === "lock_mismatch") {
234
+ emitVerifyWorkflowCliJsonAndExitByStatus(terminal.result, {
235
+ consoleLog: (line) => {
236
+ console.log(line);
237
+ },
238
+ exit: () => {
239
+ /* no-op: we exit 4 below */
240
+ },
241
+ });
242
+ writeCliError(CLI_OPERATIONAL_CODES.VERIFICATION_OUTPUT_LOCK_MISMATCH, "Lock fixture does not match verification output.");
243
+ process.exit(4);
244
+ }
245
+ writeCliError(terminal.envelope.code, terminal.envelope.message);
246
+ process.exit(3);
247
+ }
248
+ /** `agentskeptic enforce batch` (commercial build only — caller gates OSS). */
249
+ export async function orchestrateEnforceBatchLockRun(restArgs) {
250
+ let route;
251
+ try {
252
+ route = parseEnforceBatchExpectLockRoute(restArgs);
253
+ }
254
+ catch (e) {
255
+ if (e instanceof TruthLayerError) {
256
+ writeCliError(e.code, e.message);
257
+ process.exit(3);
258
+ }
259
+ throw e;
260
+ }
261
+ const activationRunId = activationRunIdFromEnv();
262
+ let preflight = { runId: null };
263
+ try {
264
+ preflight = await runLicensePreflightIfNeeded("enforce", { runId: activationRunId });
265
+ }
266
+ catch (e) {
267
+ if (e instanceof TruthLayerError) {
268
+ writeCliError(e.code, e.message);
269
+ process.exit(3);
270
+ }
271
+ const msg = e instanceof Error ? e.message : String(e);
272
+ writeCliError(CLI_OPERATIONAL_CODES.INTERNAL_ERROR, formatOperationalMessage(msg));
273
+ process.exit(3);
274
+ }
275
+ const workloadClass = classifyBatchVerifyWorkload({
276
+ eventsPath: route.parsed.eventsPath,
277
+ registryPath: route.parsed.registryPath,
278
+ database: route.parsed.database,
279
+ });
280
+ const suppressOssClaim = route.parsed.noTruthReport || route.parsed.shareReportOrigin !== undefined;
281
+ await postProductActivationEvent({
282
+ phase: "verify_started",
283
+ run_id: activationRunId,
284
+ issued_at: new Date().toISOString(),
285
+ workload_class: workloadClass,
286
+ subcommand: "batch_verify",
287
+ build_profile: "commercial",
288
+ });
289
+ const truthReport = route.parsed.noTruthReport ?
290
+ () => { }
291
+ : (report) => {
292
+ stderrWrite(`${report}\n`);
293
+ stderrWrite(formatDistributionFooter());
294
+ };
295
+ const terminal = await executeBatchLockFromParsed({
296
+ parsed: route.parsed,
297
+ lockKind: "expect",
298
+ lockAbsolutePath: path.resolve(route.lockPath),
299
+ truthReport,
300
+ });
301
+ const voBeaconEligible = terminal.tag === "workflow_terminal" ||
302
+ terminal.tag === "lock_mismatch" ||
303
+ (terminal.tag === "operational" && terminal.verifiedResult !== undefined);
304
+ if (voBeaconEligible) {
305
+ const resultForTelemetry = terminal.tag === "operational" ? terminal.verifiedResult : terminal.result;
306
+ await maybePostVerifyOutcomeAndBeaconBatch({
307
+ shouldEmit: true,
308
+ runId: preflight.runId,
309
+ result: resultForTelemetry,
310
+ workloadClass,
311
+ activationRunId,
312
+ buildProfile: "commercial",
313
+ suppressOssClaim,
314
+ });
315
+ }
316
+ if (terminal.tag === "workflow_terminal") {
317
+ emitVerifyWorkflowCliJsonAndExitByStatus(terminal.result, {
318
+ consoleLog: (line) => {
319
+ console.log(line);
320
+ },
321
+ exit: (code) => {
322
+ if (code === 0)
323
+ emitMonetizedBoundaryFootersOnSuccess();
324
+ process.exit(code);
325
+ },
326
+ });
327
+ return;
328
+ }
329
+ if (terminal.tag === "lock_mismatch") {
330
+ emitVerifyWorkflowCliJsonAndExitByStatus(terminal.result, {
331
+ consoleLog: (line) => {
332
+ console.log(line);
333
+ },
334
+ exit: () => { },
335
+ });
336
+ writeCliError(CLI_OPERATIONAL_CODES.VERIFICATION_OUTPUT_LOCK_MISMATCH, "Lock fixture does not match verification output.");
337
+ process.exit(4);
338
+ }
339
+ writeCliError(terminal.envelope.code, terminal.envelope.message);
340
+ process.exit(3);
341
+ }
342
+ /** `agentskeptic quick` with exactly one lock flag. */
343
+ export async function orchestrateVerifyQuickLockRun(restArgs) {
344
+ let route;
345
+ try {
346
+ route = parseQuickLockXorAndParsed(restArgs);
347
+ }
348
+ catch (e) {
349
+ if (e instanceof TruthLayerError) {
350
+ writeCliError(e.code, e.message);
351
+ process.exit(3);
352
+ }
353
+ throw e;
354
+ }
355
+ if (route.lockKind === "expect" && !LICENSE_PREFLIGHT_ENABLED) {
356
+ writeCliError(CLI_OPERATIONAL_CODES.ENFORCE_REQUIRES_COMMERCIAL_BUILD, EXPECT_LOCK_REQUIRES_COMMERCIAL_BUILD_MESSAGE);
357
+ process.exit(3);
358
+ }
359
+ const activationRunId = activationRunIdFromEnv();
360
+ let preflight = { runId: null };
361
+ if (LICENSE_PREFLIGHT_ENABLED) {
362
+ const intent = route.lockKind === "output" ? "verify" : "enforce";
363
+ try {
364
+ preflight = await runLicensePreflightIfNeeded(intent, { runId: activationRunId });
365
+ }
366
+ catch (e) {
367
+ if (e instanceof TruthLayerError) {
368
+ writeCliError(e.code, e.message);
369
+ process.exit(3);
370
+ }
371
+ const msg = e instanceof Error ? e.message : String(e);
372
+ writeCliError(CLI_OPERATIONAL_CODES.INTERNAL_ERROR, formatOperationalMessage(msg));
373
+ process.exit(3);
374
+ }
375
+ }
376
+ const buildProfile = LICENSE_PREFLIGHT_ENABLED ? "commercial" : "oss";
377
+ const workloadClass = classifyQuickVerifyWorkload({
378
+ inputPath: route.pq.inputPath,
379
+ sqlitePath: route.pq.dbPath ?? undefined,
380
+ postgresUrl: route.pq.postgresUrl ?? undefined,
381
+ });
382
+ const suppressOssClaim = route.pq.shareReportOrigin !== undefined;
383
+ await postProductActivationEvent({
384
+ phase: "verify_started",
385
+ run_id: activationRunId,
386
+ issued_at: new Date().toISOString(),
387
+ workload_class: workloadClass,
388
+ subcommand: "quick_verify",
389
+ build_profile: buildProfile,
390
+ });
391
+ const terminal = await executeQuickLockFromParsed({
392
+ pq: route.pq,
393
+ lockKind: route.lockKind,
394
+ lockAbsolutePath: path.resolve(route.lockPath),
395
+ });
396
+ const voBeaconEligible = terminal.tag === "workflow_terminal" ||
397
+ terminal.tag === "lock_mismatch" ||
398
+ (terminal.tag === "operational" && terminal.verifiedOutcome !== undefined);
399
+ if (voBeaconEligible) {
400
+ const verdict = terminal.tag === "operational" ? terminal.verifiedOutcome.report.verdict : terminal.report.verdict;
401
+ await maybePostVerifyOutcomeAndBeaconQuick({
402
+ shouldEmit: true,
403
+ runId: preflight.runId,
404
+ verdict,
405
+ workloadClass,
406
+ activationRunId,
407
+ buildProfile,
408
+ suppressOssClaim,
409
+ });
410
+ }
411
+ if (terminal.tag === "workflow_terminal") {
412
+ try {
413
+ process.stdout.write(stableStringify(terminal.report) + "\n");
414
+ }
415
+ catch (e) {
416
+ const msg = e instanceof Error ? e.message : String(e);
417
+ writeCliError(CLI_OPERATIONAL_CODES.INTERNAL_ERROR, formatOperationalMessage(`stdout: ${msg}`));
418
+ process.exit(3);
419
+ }
420
+ const human = formatQuickVerifyHumanReport(terminal.report, {
421
+ workflowId: terminal.pq.workflowIdQuick,
422
+ eventsPath: terminal.pq.emitEventsPath !== undefined ? terminal.pq.emitEventsPath : undefined,
423
+ registryPath: terminal.pq.exportPath,
424
+ dbFlag: terminal.pq.dbPath ?? undefined,
425
+ postgresUrl: terminal.pq.postgresUrl !== undefined,
426
+ });
427
+ console.error(human);
428
+ stderrWrite(formatDistributionFooter());
429
+ if (terminal.exitCode === 0)
430
+ emitMonetizedBoundaryFootersOnSuccess();
431
+ process.exit(terminal.exitCode);
432
+ }
433
+ if (terminal.tag === "lock_mismatch") {
434
+ try {
435
+ process.stdout.write(stableStringify(terminal.report) + "\n");
436
+ }
437
+ catch (e) {
438
+ const msg = e instanceof Error ? e.message : String(e);
439
+ writeCliError(CLI_OPERATIONAL_CODES.INTERNAL_ERROR, formatOperationalMessage(`stdout: ${msg}`));
440
+ process.exit(3);
441
+ }
442
+ const human = formatQuickVerifyHumanReport(terminal.report, {
443
+ workflowId: terminal.pq.workflowIdQuick,
444
+ eventsPath: terminal.pq.emitEventsPath !== undefined ? terminal.pq.emitEventsPath : undefined,
445
+ registryPath: terminal.pq.exportPath,
446
+ dbFlag: terminal.pq.dbPath ?? undefined,
447
+ postgresUrl: terminal.pq.postgresUrl !== undefined,
448
+ });
449
+ console.error(human);
450
+ writeCliError(CLI_OPERATIONAL_CODES.VERIFICATION_OUTPUT_LOCK_MISMATCH, "Lock fixture does not match verification output.");
451
+ process.exit(4);
452
+ }
453
+ writeCliError(terminal.envelope.code, terminal.envelope.message);
454
+ process.exit(3);
455
+ }
456
+ /** `agentskeptic enforce quick` (commercial only). */
457
+ export async function orchestrateEnforceQuickLockRun(restArgs) {
458
+ let route;
459
+ try {
460
+ route = parseEnforceQuickExpectLockRoute(restArgs);
461
+ }
462
+ catch (e) {
463
+ if (e instanceof TruthLayerError) {
464
+ writeCliError(e.code, e.message);
465
+ process.exit(3);
466
+ }
467
+ throw e;
468
+ }
469
+ const activationRunId = activationRunIdFromEnv();
470
+ let preflight = { runId: null };
471
+ try {
472
+ preflight = await runLicensePreflightIfNeeded("enforce", { runId: activationRunId });
473
+ }
474
+ catch (e) {
475
+ if (e instanceof TruthLayerError) {
476
+ writeCliError(e.code, e.message);
477
+ process.exit(3);
478
+ }
479
+ const msg = e instanceof Error ? e.message : String(e);
480
+ writeCliError(CLI_OPERATIONAL_CODES.INTERNAL_ERROR, formatOperationalMessage(msg));
481
+ process.exit(3);
482
+ }
483
+ const workloadClass = classifyQuickVerifyWorkload({
484
+ inputPath: route.pq.inputPath,
485
+ sqlitePath: route.pq.dbPath ?? undefined,
486
+ postgresUrl: route.pq.postgresUrl ?? undefined,
487
+ });
488
+ const suppressOssClaim = route.pq.shareReportOrigin !== undefined;
489
+ await postProductActivationEvent({
490
+ phase: "verify_started",
491
+ run_id: activationRunId,
492
+ issued_at: new Date().toISOString(),
493
+ workload_class: workloadClass,
494
+ subcommand: "quick_verify",
495
+ build_profile: "commercial",
496
+ });
497
+ const terminal = await executeQuickLockFromParsed({
498
+ pq: route.pq,
499
+ lockKind: "expect",
500
+ lockAbsolutePath: path.resolve(route.lockPath),
501
+ });
502
+ const voBeaconEligible = terminal.tag === "workflow_terminal" ||
503
+ terminal.tag === "lock_mismatch" ||
504
+ (terminal.tag === "operational" && terminal.verifiedOutcome !== undefined);
505
+ if (voBeaconEligible) {
506
+ const verdict = terminal.tag === "operational" ? terminal.verifiedOutcome.report.verdict : terminal.report.verdict;
507
+ await maybePostVerifyOutcomeAndBeaconQuick({
508
+ shouldEmit: true,
509
+ runId: preflight.runId,
510
+ verdict,
511
+ workloadClass,
512
+ activationRunId,
513
+ buildProfile: "commercial",
514
+ suppressOssClaim,
515
+ });
516
+ }
517
+ if (terminal.tag === "workflow_terminal") {
518
+ try {
519
+ process.stdout.write(stableStringify(terminal.report) + "\n");
520
+ }
521
+ catch (e) {
522
+ const msg = e instanceof Error ? e.message : String(e);
523
+ writeCliError(CLI_OPERATIONAL_CODES.INTERNAL_ERROR, formatOperationalMessage(`stdout: ${msg}`));
524
+ process.exit(3);
525
+ }
526
+ const human = formatQuickVerifyHumanReport(terminal.report, {
527
+ workflowId: terminal.pq.workflowIdQuick,
528
+ eventsPath: terminal.pq.emitEventsPath !== undefined ? terminal.pq.emitEventsPath : undefined,
529
+ registryPath: terminal.pq.exportPath,
530
+ dbFlag: terminal.pq.dbPath ?? undefined,
531
+ postgresUrl: terminal.pq.postgresUrl !== undefined,
532
+ });
533
+ console.error(human);
534
+ stderrWrite(formatDistributionFooter());
535
+ if (terminal.exitCode === 0)
536
+ emitMonetizedBoundaryFootersOnSuccess();
537
+ process.exit(terminal.exitCode);
538
+ }
539
+ if (terminal.tag === "lock_mismatch") {
540
+ try {
541
+ process.stdout.write(stableStringify(terminal.report) + "\n");
542
+ }
543
+ catch (e) {
544
+ const msg = e instanceof Error ? e.message : String(e);
545
+ writeCliError(CLI_OPERATIONAL_CODES.INTERNAL_ERROR, formatOperationalMessage(`stdout: ${msg}`));
546
+ process.exit(3);
547
+ }
548
+ const human = formatQuickVerifyHumanReport(terminal.report, {
549
+ workflowId: terminal.pq.workflowIdQuick,
550
+ eventsPath: terminal.pq.emitEventsPath !== undefined ? terminal.pq.emitEventsPath : undefined,
551
+ registryPath: terminal.pq.exportPath,
552
+ dbFlag: terminal.pq.dbPath ?? undefined,
553
+ postgresUrl: terminal.pq.postgresUrl !== undefined,
554
+ });
555
+ console.error(human);
556
+ writeCliError(CLI_OPERATIONAL_CODES.VERIFICATION_OUTPUT_LOCK_MISMATCH, "Lock fixture does not match verification output.");
557
+ process.exit(4);
558
+ }
559
+ writeCliError(terminal.envelope.code, terminal.envelope.message);
560
+ process.exit(3);
561
+ }
562
+ //# sourceMappingURL=lockOrchestration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lockOrchestration.js","sourceRoot":"","sources":["../../src/cli/lockOrchestration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,kCAAkC,EAAE,MAAM,kDAAkD,CAAC;AACtG,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,GAC5B,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,EAAE,QAAQ,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEpG,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC1B,0BAA0B,EAC1B,0BAA0B,GAE3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,wCAAwC,EAAE,MAAM,iCAAiC,CAAC;AAC3F,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,kCAAkC,EAAE,MAAM,4CAA4C,CAAC;AAChG,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gDAAgD,CAAC;AAI9F,SAAS,aAAa,CAAC,IAAY,EAAE,OAAe;IAClD,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;AACjD,CAAC;AAED,gFAAgF;AAChF,MAAM,CAAC,MAAM,6CAA6C,GACxD,mKAAmK,CAAC;AAEtK,0EAA0E;AAC1E,MAAM,CAAC,MAAM,sCAAsC,GACjD,uGAAuG,CAAC;AAC1G,MAAM,CAAC,MAAM,sCAAsC,GACjD,gGAAgG,CAAC;AAEnG,MAAM,CAAC,MAAM,+CAA+C,GAC1D,yJAAyJ,CAAC;AAE5J,SAAS,WAAW,CAAC,CAAS;IAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,qCAAqC;IAC5C,WAAW,CAAC,GAAG,sCAAsC,IAAI,CAAC,CAAC;IAC3D,WAAW,CAAC,GAAG,sCAAsC,IAAI,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,sBAAsB;IAC7B,OAAO,CACL,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,EAAE;QACvC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,IAAI,EAAE;QAC5C,UAAU,EAAE,CACb,CAAC;AACJ,CAAC;AAED,SAAS,gCAAgC,CAAC,CAAiB;IACzD,IAAI,CAAC,CAAC,MAAM,KAAK,UAAU;QAAE,OAAO,UAAU,CAAC;IAC/C,IAAI,CAAC,CAAC,MAAM,KAAK,cAAc;QAAE,OAAO,cAAc,CAAC;IACvD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,gCAAgC,CAAC,QAAkB;IACjE,IAAI,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC,KAAK,SAAS,EAAE,CAAC;QACtD,MAAM,IAAI,eAAe,CAAC,qBAAqB,CAAC,aAAa,EAAE,+CAA+C,CAAC,CAAC;IAClH,CAAC;IACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IACrD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,eAAe,CACvB,qBAAqB,CAAC,aAAa,EACnC,8CAA8C,CAC/C,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,uBAAuB,CAAC,aAAa,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;IACjF,IAAI,MAAM,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;QAC3C,MAAM,IAAI,eAAe,CACvB,qBAAqB,CAAC,aAAa,EACnC,4DAA4D,CAC7D,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;AAClD,CAAC;AAED,8BAA8B;AAC9B,MAAM,UAAU,gCAAgC,CAAC,QAAkB;IACjE,IAAI,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC,KAAK,SAAS,EAAE,CAAC;QACtD,MAAM,IAAI,eAAe,CAAC,qBAAqB,CAAC,aAAa,EAAE,+CAA+C,CAAC,CAAC;IAClH,CAAC;IACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IACrD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,eAAe,CACvB,qBAAqB,CAAC,aAAa,EACnC,8CAA8C,CAC/C,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,GAAG,iBAAiB,CAAC,aAAa,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;IACvE,IAAI,EAAE,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;QACvC,MAAM,IAAI,eAAe,CACvB,qBAAqB,CAAC,aAAa,EACnC,4DAA4D,CAC7D,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC;AAC1B,CAAC;AAED,KAAK,UAAU,oCAAoC,CAAC,KAQnD;IACC,IAAI,CAAC,KAAK,CAAC,UAAU;QAAE,OAAO;IAC9B,MAAM,EAAE,GAAG,gCAAgC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC1D,MAAM,0BAA0B,CAAC;QAC/B,KAAK,EAAE,gBAAgB;QACvB,MAAM,EAAE,KAAK,CAAC,eAAe;QAC7B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,cAAc,EAAE,KAAK,CAAC,aAAa;QACnC,UAAU,EAAE,cAAc;QAC1B,aAAa,EAAE,KAAK,CAAC,YAAY;QACjC,eAAe,EAAE,EAAE;KACpB,CAAC,CAAC;IACH,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAC5B,MAAM,kCAAkC,CAAC;YACvC,MAAM,EAAE,KAAK,CAAC,eAAe;YAC7B,eAAe,EAAE,EAAE;YACnB,cAAc,EAAE,KAAK,CAAC,aAAa;YACnC,UAAU,EAAE,cAAc;YAC1B,aAAa,EAAE,KAAK,CAAC,YAAY;SAClC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,yBAAyB,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QACtD,MAAM,uBAAuB,CAAC;YAC5B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,eAAe,EAAE,EAAE;YACnB,cAAc,EAAE,KAAK,CAAC,aAAa;YACnC,UAAU,EAAE,cAAc;SAC3B,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,KAAK,UAAU,oCAAoC,CAAC,KAQnD;IACC,IAAI,CAAC,KAAK,CAAC,UAAU;QAAE,OAAO;IAC9B,MAAM,EAAE,GAAG,kCAAkC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7D,MAAM,0BAA0B,CAAC;QAC/B,KAAK,EAAE,gBAAgB;QACvB,MAAM,EAAE,KAAK,CAAC,eAAe;QAC7B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,cAAc,EAAE,KAAK,CAAC,aAAa;QACnC,UAAU,EAAE,cAAc;QAC1B,aAAa,EAAE,KAAK,CAAC,YAAY;QACjC,eAAe,EAAE,EAAE;KACpB,CAAC,CAAC;IACH,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAC5B,MAAM,kCAAkC,CAAC;YACvC,MAAM,EAAE,KAAK,CAAC,eAAe;YAC7B,eAAe,EAAE,EAAE;YACnB,cAAc,EAAE,KAAK,CAAC,aAAa;YACnC,UAAU,EAAE,cAAc;YAC1B,aAAa,EAAE,KAAK,CAAC,YAAY;SAClC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,yBAAyB,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QACtD,MAAM,uBAAuB,CAAC;YAC5B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,eAAe,EAAE,EAAE;YACnB,cAAc,EAAE,KAAK,CAAC,aAAa;YACnC,UAAU,EAAE,cAAc;SAC3B,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAAC,QAAkB;IACpE,IAAI,KAA2B,CAAC;IAChC,IAAI,CAAC;QACH,KAAK,GAAG,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,eAAe,EAAE,CAAC;YACjC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAC9D,aAAa,CAAC,qBAAqB,CAAC,iCAAiC,EAAE,6CAA6C,CAAC,CAAC;QACtH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,eAAe,GAAG,sBAAsB,EAAE,CAAC;IACjD,IAAI,SAAS,GAAG,EAAE,KAAK,EAAE,IAAqB,EAAE,CAAC;IACjD,IAAI,yBAAyB,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAE,QAAkB,CAAC,CAAC,CAAE,SAAmB,CAAC;QACxF,IAAI,CAAC;YACH,SAAS,GAAG,MAAM,2BAA2B,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;QACpF,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,eAAe,EAAE,CAAC;gBACjC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;gBACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,GAAG,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACvD,aAAa,CAAC,qBAAqB,CAAC,cAAc,EAAE,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC;YACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,MAAM,YAAY,GAAG,yBAAyB,CAAC,CAAC,CAAE,YAAsB,CAAC,CAAC,CAAE,KAAe,CAAC;IAC5F,MAAM,aAAa,GAAG,2BAA2B,CAAC;QAChD,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU;QACnC,YAAY,EAAE,KAAK,CAAC,MAAM,CAAC,YAAY;QACvC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ;KAChC,CAAC,CAAC;IACH,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC,aAAa,IAAI,KAAK,CAAC,MAAM,CAAC,iBAAiB,KAAK,SAAS,CAAC;IAEpG,MAAM,0BAA0B,CAAC;QAC/B,KAAK,EAAE,gBAAgB;QACvB,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,cAAc,EAAE,aAAa;QAC7B,UAAU,EAAE,cAAc;QAC1B,aAAa,EAAE,YAAY;KAC5B,CAAC,CAAC;IAEH,MAAM,WAAW,GACf,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC1B,GAAG,EAAE,GAAE,CAAC;QACV,CAAC,CAAC,CAAC,MAAc,EAAE,EAAE;YACjB,WAAW,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC;YAC3B,WAAW,CAAC,wBAAwB,EAAE,CAAC,CAAC;QAC1C,CAAC,CAAC;IAEN,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAAC;QAChD,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;QAC9C,WAAW;KACZ,CAAC,CAAC;IAEH,MAAM,gBAAgB,GACpB,QAAQ,CAAC,GAAG,KAAK,mBAAmB;QACpC,QAAQ,CAAC,GAAG,KAAK,eAAe;QAChC,CAAC,QAAQ,CAAC,GAAG,KAAK,aAAa,IAAI,QAAQ,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC;IAE5E,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,kBAAkB,GACtB,QAAQ,CAAC,GAAG,KAAK,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC9E,MAAM,oCAAoC,CAAC;YACzC,UAAU,EAAE,IAAI;YAChB,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,MAAM,EAAE,kBAAkB;YAC1B,aAAa;YACb,eAAe;YACf,YAAY;YACZ,gBAAgB;SACjB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,QAAQ,CAAC,GAAG,KAAK,mBAAmB,EAAE,CAAC;QACzC,wCAAwC,CAAC,QAAQ,CAAC,MAAM,EAAE;YACxD,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE;gBACnB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;YACD,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;gBACb,IAAI,IAAI,KAAK,CAAC;oBAAE,qCAAqC,EAAE,CAAC;gBACxD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC;SACF,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,IAAI,QAAQ,CAAC,GAAG,KAAK,eAAe,EAAE,CAAC;QACrC,wCAAwC,CAAC,QAAQ,CAAC,MAAM,EAAE;YACxD,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE;gBACnB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;YACD,IAAI,EAAE,GAAG,EAAE;gBACT,4BAA4B;YAC9B,CAAC;SACF,CAAC,CAAC;QACH,aAAa,CACX,qBAAqB,CAAC,iCAAiC,EACvD,kDAAkD,CACnD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,+EAA+E;AAC/E,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAAC,QAAkB;IACrE,IAAI,KAA2B,CAAC;IAChC,IAAI,CAAC;QACH,KAAK,GAAG,gCAAgC,CAAC,QAAQ,CAAC,CAAC;IACrD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,eAAe,EAAE,CAAC;YACjC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;IAED,MAAM,eAAe,GAAG,sBAAsB,EAAE,CAAC;IACjD,IAAI,SAAS,GAAG,EAAE,KAAK,EAAE,IAAqB,EAAE,CAAC;IACjD,IAAI,CAAC;QACH,SAAS,GAAG,MAAM,2BAA2B,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;IACvF,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,eAAe,EAAE,CAAC;YACjC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,GAAG,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACvD,aAAa,CAAC,qBAAqB,CAAC,cAAc,EAAE,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,aAAa,GAAG,2BAA2B,CAAC;QAChD,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU;QACnC,YAAY,EAAE,KAAK,CAAC,MAAM,CAAC,YAAY;QACvC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ;KAChC,CAAC,CAAC;IACH,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC,aAAa,IAAI,KAAK,CAAC,MAAM,CAAC,iBAAiB,KAAK,SAAS,CAAC;IAEpG,MAAM,0BAA0B,CAAC;QAC/B,KAAK,EAAE,gBAAgB;QACvB,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,cAAc,EAAE,aAAa;QAC7B,UAAU,EAAE,cAAc;QAC1B,aAAa,EAAE,YAAY;KAC5B,CAAC,CAAC;IAEH,MAAM,WAAW,GACf,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC1B,GAAG,EAAE,GAAE,CAAC;QACV,CAAC,CAAC,CAAC,MAAc,EAAE,EAAE;YACjB,WAAW,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC;YAC3B,WAAW,CAAC,wBAAwB,EAAE,CAAC,CAAC;QAC1C,CAAC,CAAC;IAEN,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAAC;QAChD,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,QAAQ,EAAE,QAAQ;QAClB,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;QAC9C,WAAW;KACZ,CAAC,CAAC;IAEH,MAAM,gBAAgB,GACpB,QAAQ,CAAC,GAAG,KAAK,mBAAmB;QACpC,QAAQ,CAAC,GAAG,KAAK,eAAe;QAChC,CAAC,QAAQ,CAAC,GAAG,KAAK,aAAa,IAAI,QAAQ,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC;IAE5E,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,kBAAkB,GACtB,QAAQ,CAAC,GAAG,KAAK,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC9E,MAAM,oCAAoC,CAAC;YACzC,UAAU,EAAE,IAAI;YAChB,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,MAAM,EAAE,kBAAkB;YAC1B,aAAa;YACb,eAAe;YACf,YAAY,EAAE,YAAY;YAC1B,gBAAgB;SACjB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,QAAQ,CAAC,GAAG,KAAK,mBAAmB,EAAE,CAAC;QACzC,wCAAwC,CAAC,QAAQ,CAAC,MAAM,EAAE;YACxD,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE;gBACnB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;YACD,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;gBACb,IAAI,IAAI,KAAK,CAAC;oBAAE,qCAAqC,EAAE,CAAC;gBACxD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC;SACF,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,IAAI,QAAQ,CAAC,GAAG,KAAK,eAAe,EAAE,CAAC;QACrC,wCAAwC,CAAC,QAAQ,CAAC,MAAM,EAAE;YACxD,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE;gBACnB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;YACD,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;SACf,CAAC,CAAC;QACH,aAAa,CACX,qBAAqB,CAAC,iCAAiC,EACvD,kDAAkD,CACnD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,uDAAuD;AACvD,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAAC,QAAkB;IACpE,IAAI,KAAoD,CAAC;IACzD,IAAI,CAAC;QACH,KAAK,GAAG,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,eAAe,EAAE,CAAC;YACjC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAC9D,aAAa,CAAC,qBAAqB,CAAC,iCAAiC,EAAE,6CAA6C,CAAC,CAAC;QACtH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,eAAe,GAAG,sBAAsB,EAAE,CAAC;IACjD,IAAI,SAAS,GAAG,EAAE,KAAK,EAAE,IAAqB,EAAE,CAAC;IACjD,IAAI,yBAAyB,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAE,QAAkB,CAAC,CAAC,CAAE,SAAmB,CAAC;QACxF,IAAI,CAAC;YACH,SAAS,GAAG,MAAM,2BAA2B,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;QACpF,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,eAAe,EAAE,CAAC;gBACjC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;gBACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,GAAG,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACvD,aAAa,CAAC,qBAAqB,CAAC,cAAc,EAAE,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC;YACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,MAAM,YAAY,GAAG,yBAAyB,CAAC,CAAC,CAAE,YAAsB,CAAC,CAAC,CAAE,KAAe,CAAC;IAC5F,MAAM,aAAa,GAAG,2BAA2B,CAAC;QAChD,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS;QAC7B,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,IAAI,SAAS;QACxC,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,IAAI,SAAS;KAC/C,CAAC,CAAC;IACH,MAAM,gBAAgB,GAAG,KAAK,CAAC,EAAE,CAAC,iBAAiB,KAAK,SAAS,CAAC;IAElE,MAAM,0BAA0B,CAAC;QAC/B,KAAK,EAAE,gBAAgB;QACvB,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,cAAc,EAAE,aAAa;QAC7B,UAAU,EAAE,cAAc;QAC1B,aAAa,EAAE,YAAY;KAC5B,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAAC;QAChD,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;KAC/C,CAAC,CAAC;IAEH,MAAM,gBAAgB,GACpB,QAAQ,CAAC,GAAG,KAAK,mBAAmB;QACpC,QAAQ,CAAC,GAAG,KAAK,eAAe;QAChC,CAAC,QAAQ,CAAC,GAAG,KAAK,aAAa,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC;IAE7E,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,OAAO,GACX,QAAQ,CAAC,GAAG,KAAK,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,eAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;QACtG,MAAM,oCAAoC,CAAC;YACzC,UAAU,EAAE,IAAI;YAChB,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,OAAO;YACP,aAAa;YACb,eAAe;YACf,YAAY;YACZ,gBAAgB;SACjB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,QAAQ,CAAC,GAAG,KAAK,mBAAmB,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,GAAG,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACvD,aAAa,CAAC,qBAAqB,CAAC,cAAc,EAAE,wBAAwB,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC;YAChG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,KAAK,GAAG,4BAA4B,CAAC,QAAQ,CAAC,MAAM,EAAE;YAC1D,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,eAAe;YACvC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;YAC7F,YAAY,EAAE,QAAQ,CAAC,EAAE,CAAC,UAAU;YACpC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,MAAM,IAAI,SAAS;YACvC,WAAW,EAAE,QAAQ,CAAC,EAAE,CAAC,WAAW,KAAK,SAAS;SACnD,CAAC,CAAC;QACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,WAAW,CAAC,wBAAwB,EAAE,CAAC,CAAC;QACxC,IAAI,QAAQ,CAAC,QAAQ,KAAK,CAAC;YAAE,qCAAqC,EAAE,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,QAAQ,CAAC,GAAG,KAAK,eAAe,EAAE,CAAC;QACrC,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,GAAG,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACvD,aAAa,CAAC,qBAAqB,CAAC,cAAc,EAAE,wBAAwB,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC;YAChG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,KAAK,GAAG,4BAA4B,CAAC,QAAQ,CAAC,MAAM,EAAE;YAC1D,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,eAAe;YACvC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;YAC7F,YAAY,EAAE,QAAQ,CAAC,EAAE,CAAC,UAAU;YACpC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,MAAM,IAAI,SAAS;YACvC,WAAW,EAAE,QAAQ,CAAC,EAAE,CAAC,WAAW,KAAK,SAAS;SACnD,CAAC,CAAC;QACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,aAAa,CACX,qBAAqB,CAAC,iCAAiC,EACvD,kDAAkD,CACnD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,sDAAsD;AACtD,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAAC,QAAkB;IACrE,IAAI,KAA+C,CAAC;IACpD,IAAI,CAAC;QACH,KAAK,GAAG,gCAAgC,CAAC,QAAQ,CAAC,CAAC;IACrD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,eAAe,EAAE,CAAC;YACjC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;IAED,MAAM,eAAe,GAAG,sBAAsB,EAAE,CAAC;IACjD,IAAI,SAAS,GAAG,EAAE,KAAK,EAAE,IAAqB,EAAE,CAAC;IACjD,IAAI,CAAC;QACH,SAAS,GAAG,MAAM,2BAA2B,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;IACvF,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,eAAe,EAAE,CAAC;YACjC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,GAAG,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACvD,aAAa,CAAC,qBAAqB,CAAC,cAAc,EAAE,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,aAAa,GAAG,2BAA2B,CAAC;QAChD,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS;QAC7B,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,IAAI,SAAS;QACxC,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,IAAI,SAAS;KAC/C,CAAC,CAAC;IACH,MAAM,gBAAgB,GAAG,KAAK,CAAC,EAAE,CAAC,iBAAiB,KAAK,SAAS,CAAC;IAElE,MAAM,0BAA0B,CAAC;QAC/B,KAAK,EAAE,gBAAgB;QACvB,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,cAAc,EAAE,aAAa;QAC7B,UAAU,EAAE,cAAc;QAC1B,aAAa,EAAE,YAAY;KAC5B,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAAC;QAChD,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,QAAQ,EAAE,QAAQ;QAClB,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;KAC/C,CAAC,CAAC;IAEH,MAAM,gBAAgB,GACpB,QAAQ,CAAC,GAAG,KAAK,mBAAmB;QACpC,QAAQ,CAAC,GAAG,KAAK,eAAe;QAChC,CAAC,QAAQ,CAAC,GAAG,KAAK,aAAa,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC;IAE7E,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,OAAO,GACX,QAAQ,CAAC,GAAG,KAAK,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,eAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;QACtG,MAAM,oCAAoC,CAAC;YACzC,UAAU,EAAE,IAAI;YAChB,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,OAAO;YACP,aAAa;YACb,eAAe;YACf,YAAY,EAAE,YAAY;YAC1B,gBAAgB;SACjB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,QAAQ,CAAC,GAAG,KAAK,mBAAmB,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,GAAG,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACvD,aAAa,CAAC,qBAAqB,CAAC,cAAc,EAAE,wBAAwB,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC;YAChG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,KAAK,GAAG,4BAA4B,CAAC,QAAQ,CAAC,MAAM,EAAE;YAC1D,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,eAAe;YACvC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;YAC7F,YAAY,EAAE,QAAQ,CAAC,EAAE,CAAC,UAAU;YACpC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,MAAM,IAAI,SAAS;YACvC,WAAW,EAAE,QAAQ,CAAC,EAAE,CAAC,WAAW,KAAK,SAAS;SACnD,CAAC,CAAC;QACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,WAAW,CAAC,wBAAwB,EAAE,CAAC,CAAC;QACxC,IAAI,QAAQ,CAAC,QAAQ,KAAK,CAAC;YAAE,qCAAqC,EAAE,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,QAAQ,CAAC,GAAG,KAAK,eAAe,EAAE,CAAC;QACrC,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,GAAG,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACvD,aAAa,CAAC,qBAAqB,CAAC,cAAc,EAAE,wBAAwB,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC;YAChG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,KAAK,GAAG,4BAA4B,CAAC,QAAQ,CAAC,MAAM,EAAE;YAC1D,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,eAAe;YACvC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;YAC7F,YAAY,EAAE,QAAQ,CAAC,EAAE,CAAC,UAAU;YACpC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,MAAM,IAAI,SAAS;YACvC,WAAW,EAAE,QAAQ,CAAC,EAAE,CAAC,WAAW,KAAK,SAAS;SACnD,CAAC,CAAC;QACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,aAAa,CACX,qBAAqB,CAAC,iCAAiC,EACvD,kDAAkD,CACnD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=lockOrchestration.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lockOrchestration.test.d.ts","sourceRoot":"","sources":["../../src/cli/lockOrchestration.test.ts"],"names":[],"mappings":""}