@unotest/protocol 0.26.1 → 0.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +54 -0
- package/dist/index.d.ts +135 -6
- package/dist/index.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,59 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.28.0] - 2026-09-01
|
|
4
|
+
|
|
5
|
+
## [0.27.0] - 2026-08-31
|
|
6
|
+
|
|
7
|
+
### Minor Changes
|
|
8
|
+
|
|
9
|
+
- Schedule provenance and the push fingerprint. `ScheduleEntry` gains
|
|
10
|
+
optional `source: "config" | "file"`, stamped by `mergeSchedules`
|
|
11
|
+
(so `schedules --json` carries it; neither half ever writes it) —
|
|
12
|
+
what lets a UI showing the merged set tell "edit the file" from
|
|
13
|
+
"edit the config". New `canonicalScheduleSet()` — the canonical text
|
|
14
|
+
a schedules fingerprint hashes: sorted by target, `source`-blind.
|
|
15
|
+
`BundleManifest` gains optional `schedulesFingerprint` (sha256 of the
|
|
16
|
+
effective set at pack time, advisory), and
|
|
17
|
+
`SCHEDULES_FINGERPRINT_ENV` names the env var a box's
|
|
18
|
+
viewer-supervisor hands the deployed viewer next to the bundle id.
|
|
19
|
+
|
|
20
|
+
- `schedule-spec`: the schedule-builder subset of cron is now public —
|
|
21
|
+
`specFromCron` / `cronFromSpec` / `nextTickFromSpec` /
|
|
22
|
+
`formatNextTick` / `describeCron` and friends, pure and
|
|
23
|
+
dependency-free (moved here from the viewer, so the CLI's next-run
|
|
24
|
+
preview and the viewer's popup share one implementation). It is a
|
|
25
|
+
PREVIEW, not an engine: expressions outside the subset map to `null`,
|
|
26
|
+
and the full cron engine still lives only with the executor.
|
|
27
|
+
`IRunnerAdapter` gains optional `schedulesArgs()` — argv that prints
|
|
28
|
+
the project's effective schedule set as JSON (web:
|
|
29
|
+
`["schedules", "--json"]`).
|
|
30
|
+
|
|
31
|
+
- c843d21: Schedules from the viewer — for collections and single tests.
|
|
32
|
+
|
|
33
|
+
Right-click a test or a collection in the viewer → **Schedule…**: a
|
|
34
|
+
human schedule builder (frequency select — every 5/15 min, hourly,
|
|
35
|
+
every 2/4/6/12 h, daily, weekly — plus toggle badges for minutes,
|
|
36
|
+
hours and weekdays; multi-select, so `04` + `16` × `00` + `30` runs
|
|
37
|
+
four times a day). Saved to `unotest/schedules.yaml`, versioned next
|
|
38
|
+
to the tests; a box applies it after commit & sync. The Home screen
|
|
39
|
+
gains a `last run | schedule` toggle: in schedule mode tiles are
|
|
40
|
+
tinted by how often a test runs (grey = not scheduled), with an
|
|
41
|
+
upcoming list and per-tile next-run times in your browser's clock.
|
|
42
|
+
|
|
43
|
+
Under the hood:
|
|
44
|
+
|
|
45
|
+
- `unotest/schedules.yaml` is a new schedule registry; `unotest-web
|
|
46
|
+
schedules [--json]` prints it merged with the config's `schedules`
|
|
47
|
+
(the file wins on a duplicate target), so boxes pick both up
|
|
48
|
+
unchanged.
|
|
49
|
+
- A schedule entry may now target a single test: `scenario:
|
|
50
|
+
<ref>` instead of `collection: <name>`.
|
|
51
|
+
- `unotest-web e2e <name> --scheduled[=index]` runs a test the way its
|
|
52
|
+
entry says (env + prepare, exit 94 when prepare fails) — the
|
|
53
|
+
per-test mirror of `collection --scheduled`.
|
|
54
|
+
- Viewer server: `GET/PUT /api/schedules` (validated by the same
|
|
55
|
+
parser the CLI reads the file with).
|
|
56
|
+
|
|
3
57
|
## [0.26.1] - 2026-08-30
|
|
4
58
|
|
|
5
59
|
### Patch Changes
|
package/dist/index.d.ts
CHANGED
|
@@ -119,6 +119,11 @@ declare const ENV_FILE = "unotest/.env";
|
|
|
119
119
|
/** Secret scenario variables, beside `.env` under `unotest/`. Same KEY=VALUE
|
|
120
120
|
* format; secrecy is a property of THIS file (not a name heuristic). */
|
|
121
121
|
declare const SECRETS_FILE = "unotest/.secrets";
|
|
122
|
+
/** Schedule registry edited by the viewer (`schedules:` array of
|
|
123
|
+
* `ScheduleEntry`). Relative to project root. Merged with the
|
|
124
|
+
* `schedules` of `unotest.config` by `unotest-web schedules` — this
|
|
125
|
+
* file wins on a duplicate target. */
|
|
126
|
+
declare const SCHEDULES_FILE = "unotest/schedules.yaml";
|
|
122
127
|
/** Env/secrets file naming spans TWO axes (M-11):
|
|
123
128
|
*
|
|
124
129
|
* - TARGET (dash, M-10): `.env` is the shared base AND web's file (bare
|
|
@@ -1123,6 +1128,12 @@ declare const BOX_TOKEN_ENV = "UNOTEST_BOX_TOKEN";
|
|
|
1123
1128
|
* the answer to "which code produced this" after the environment has
|
|
1124
1129
|
* moved on. Never set locally — there is no bundle there. */
|
|
1125
1130
|
declare const BUNDLE_ID_ENV = "UNOTEST_BUNDLE_ID";
|
|
1131
|
+
/** Set by a box's viewer-supervisor next to {@link BUNDLE_ID_ENV}: the
|
|
1132
|
+
* manifest's `schedulesFingerprint`, so the deployed viewer can compare
|
|
1133
|
+
* the set it reads with the set recorded at push and say out loud when
|
|
1134
|
+
* the project's config computed something different in the box's
|
|
1135
|
+
* environment. Never set locally. */
|
|
1136
|
+
declare const SCHEDULES_FINGERPRINT_ENV = "UNOTEST_SCHEDULES_FINGERPRINT";
|
|
1126
1137
|
/** Where the code came from — provenance, never identity. A bundle is
|
|
1127
1138
|
* identified by its CONTENT (see `bundleId`): the sha of a dirty working
|
|
1128
1139
|
* tree is not unique, and two people can push different trees from the
|
|
@@ -1167,6 +1178,13 @@ interface BundleManifest {
|
|
|
1167
1178
|
* here can supply LOGIN" at upload instead of an hour later. Optional:
|
|
1168
1179
|
* a bundle packed by an older CLI carries none. */
|
|
1169
1180
|
declaredVariables?: string[];
|
|
1181
|
+
/** sha256 of `canonicalScheduleSet` over the EFFECTIVE schedules
|
|
1182
|
+
* (`schedules --json`) as the pusher's machine computed them. The
|
|
1183
|
+
* config is user JS: a box re-computes the set in its own
|
|
1184
|
+
* environment, and this is what lets it notice — and say — that it
|
|
1185
|
+
* got a different answer than the person who pushed saw. Advisory
|
|
1186
|
+
* provenance, absent from bundles packed by an older CLI. */
|
|
1187
|
+
schedulesFingerprint?: string;
|
|
1170
1188
|
/** Payload size, excluding this manifest. Diagnostics and limits — a
|
|
1171
1189
|
* box states its cap in these terms. */
|
|
1172
1190
|
fileCount: number;
|
|
@@ -1295,10 +1313,8 @@ interface WorkspaceFile {
|
|
|
1295
1313
|
* viewer: the bundle UI stays hidden rather than half-populated. */
|
|
1296
1314
|
declare function parseWorkspaceFile(value: unknown): WorkspaceFile | null;
|
|
1297
1315
|
|
|
1298
|
-
/**
|
|
1299
|
-
interface
|
|
1300
|
-
/** Collection name — the file stem under `_collections/`. */
|
|
1301
|
-
collection: string;
|
|
1316
|
+
/** Fields every schedule carries, whatever it targets. */
|
|
1317
|
+
interface ScheduleEntryBase {
|
|
1302
1318
|
/** Standard 5-field cron expression, interpreted by whoever executes
|
|
1303
1319
|
* the schedule. Opaque to every public package. */
|
|
1304
1320
|
cron: string;
|
|
@@ -1315,21 +1331,126 @@ interface ScheduleEntry {
|
|
|
1315
1331
|
* the yaml stays the single authority on parallelism. Carried here so
|
|
1316
1332
|
* an executor can weigh the run's queue ticket (a suite costs its
|
|
1317
1333
|
* worker count in a host-wide pool) without parsing yaml itself.
|
|
1318
|
-
* Absent when the manifest declares none, or does not exist
|
|
1334
|
+
* Absent when the manifest declares none, or does not exist — and
|
|
1335
|
+
* always absent on a scenario entry (one test weighs 1). */
|
|
1319
1336
|
workers?: number;
|
|
1337
|
+
/** Where the entry was declared — stamped by {@link mergeSchedules},
|
|
1338
|
+
* so it appears in `schedules --json` and nowhere else: neither half
|
|
1339
|
+
* ever WRITES it (the yaml stays clean, the config schema does not
|
|
1340
|
+
* know it). It is what lets a UI showing the merged set tell "edit
|
|
1341
|
+
* this in the file" from "this is the config's, go edit the config".
|
|
1342
|
+
* Provenance, never identity: {@link canonicalScheduleSet} drops it. */
|
|
1343
|
+
source?: "config" | "file";
|
|
1344
|
+
}
|
|
1345
|
+
/** One scheduled run of one collection. */
|
|
1346
|
+
interface CollectionScheduleEntry extends ScheduleEntryBase {
|
|
1347
|
+
/** Collection name — the file stem under `_collections/`. */
|
|
1348
|
+
collection: string;
|
|
1349
|
+
scenario?: never;
|
|
1350
|
+
}
|
|
1351
|
+
/** One scheduled run of one scenario — a schedule set on a single test.
|
|
1352
|
+
* Kept as an ALTERNATIVE field rather than a `kind` discriminator so
|
|
1353
|
+
* the wire shape of collection entries never changed: an executor that
|
|
1354
|
+
* predates scenario schedules drops these entries individually (its
|
|
1355
|
+
* `parseScheduleEntry` finds no `collection`) and keeps running the
|
|
1356
|
+
* suites it understands. */
|
|
1357
|
+
interface ScenarioScheduleEntry extends ScheduleEntryBase {
|
|
1358
|
+
/** Scenario name — the file stem relative to the test dir. */
|
|
1359
|
+
scenario: string;
|
|
1360
|
+
collection?: never;
|
|
1320
1361
|
}
|
|
1362
|
+
type ScheduleEntry = CollectionScheduleEntry | ScenarioScheduleEntry;
|
|
1363
|
+
/** The entry's target as one value — for keying (one schedule per
|
|
1364
|
+
* target), log lines and metric series. */
|
|
1365
|
+
declare function scheduleTarget(e: ScheduleEntry): {
|
|
1366
|
+
kind: "collection" | "scenario";
|
|
1367
|
+
name: string;
|
|
1368
|
+
};
|
|
1321
1369
|
/** Structural validation of one entry read from JSON. Null for anything
|
|
1322
1370
|
* we cannot trust — a consumer skips it rather than scheduling a run it
|
|
1323
1371
|
* does not understand. A malformed `workers` is dropped alone (the
|
|
1324
1372
|
* engine's weight then defaults to 1) — losing a weight is recoverable,
|
|
1325
1373
|
* losing a schedule is a suite that silently stops running. */
|
|
1326
1374
|
declare function parseScheduleEntry(value: unknown): ScheduleEntry | null;
|
|
1375
|
+
/** Parsed `unotest/schedules.yaml` (see `SCHEDULES_FILE`) — the
|
|
1376
|
+
* viewer-managed registry. Takes the ALREADY-parsed yaml value: this
|
|
1377
|
+
* package stays runtime-dep-free, the caller owns the yaml library.
|
|
1378
|
+
*
|
|
1379
|
+
* Strict where the box payload is lenient: this file is written by the
|
|
1380
|
+
* viewer and edited by humans, and silently dropping an entry here
|
|
1381
|
+
* would un-schedule a suite with nobody told. Any problem names the
|
|
1382
|
+
* entry and fails the whole read. */
|
|
1383
|
+
declare function parseSchedulesDoc(value: unknown): {
|
|
1384
|
+
entries: ScheduleEntry[];
|
|
1385
|
+
} | {
|
|
1386
|
+
error: string;
|
|
1387
|
+
};
|
|
1388
|
+
/** Config `schedules` + the viewer's file, as ONE list — the shape both
|
|
1389
|
+
* `schedules --json` prints and `--scheduled=<index>` indexes into, so
|
|
1390
|
+
* it must be computed in exactly one way. The file wins on a duplicate
|
|
1391
|
+
* target; config entries keep their relative order, file entries
|
|
1392
|
+
* follow. Each entry is stamped with its `source` here — the single
|
|
1393
|
+
* point that knows which half an entry came from. */
|
|
1394
|
+
declare function mergeSchedules(config: readonly ScheduleEntry[], file: readonly ScheduleEntry[]): ScheduleEntry[];
|
|
1395
|
+
/** Canonical text of an effective schedule set — what the bundle
|
|
1396
|
+
* fingerprint hashes (`computeSchedulesFingerprint` in
|
|
1397
|
+
* `@unotest/core`). Two sides compute it independently — the pusher's
|
|
1398
|
+
* machine at pack time, the box after unpacking — and a difference
|
|
1399
|
+
* means the project's config computed something else in the box's
|
|
1400
|
+
* environment, so the canon must depend on nothing but the entries:
|
|
1401
|
+
* sorted by target (declaration order is presentation), `source`
|
|
1402
|
+
* dropped (provenance, not identity), fields serialised in one fixed
|
|
1403
|
+
* order. Byte-order comparison, not locale collation. */
|
|
1404
|
+
declare function canonicalScheduleSet(entries: readonly ScheduleEntry[]): string;
|
|
1327
1405
|
/** Parse the whole `schedules --json` payload. Null when the text is not
|
|
1328
1406
|
* a JSON array — the caller reports "could not read the schedules"
|
|
1329
1407
|
* rather than silently running nothing. Entries that fail validation
|
|
1330
1408
|
* are dropped individually and counted by the caller. */
|
|
1331
1409
|
declare function parseSchedulesJson(text: string): ScheduleEntry[] | null;
|
|
1332
1410
|
|
|
1411
|
+
/** What the frequency select offers. `off` (no schedule) is popup
|
|
1412
|
+
* state, not a spec — a spec always runs. */
|
|
1413
|
+
type ScheduleFreq = "m5" | "m15" | "h1" | "h2" | "h4" | "h6" | "h12" | "daily" | "weekly";
|
|
1414
|
+
interface ScheduleSpec {
|
|
1415
|
+
freq: ScheduleFreq;
|
|
1416
|
+
/** Minutes-of-hour badges, 0–55 step 5. Ignored by m5/m15. */
|
|
1417
|
+
minutes: number[];
|
|
1418
|
+
/** Hours-of-day badges, 0–23. Only daily/weekly. */
|
|
1419
|
+
hours: number[];
|
|
1420
|
+
/** Cron day-of-week numbers (0 = Sun). Only weekly. */
|
|
1421
|
+
days: number[];
|
|
1422
|
+
}
|
|
1423
|
+
/** Which pickers a frequency shows. One table, used by the popup for
|
|
1424
|
+
* rendering and by the builder for which fields matter. */
|
|
1425
|
+
declare const FREQ_FIELDS: Record<ScheduleFreq, {
|
|
1426
|
+
minutes: boolean;
|
|
1427
|
+
hours: boolean;
|
|
1428
|
+
days: boolean;
|
|
1429
|
+
}>;
|
|
1430
|
+
declare function cronFromSpec(s: ScheduleSpec): string;
|
|
1431
|
+
/** Inverse of {@link cronFromSpec} — null for any expression the popup
|
|
1432
|
+
* could not have generated. */
|
|
1433
|
+
declare function specFromCron(cron: string): ScheduleSpec | null;
|
|
1434
|
+
/** Human line for a cron the viewer shows anywhere outside the popup —
|
|
1435
|
+
* tree tooltips, menu labels, hover cards. Raw string when the
|
|
1436
|
+
* expression is not one of ours. */
|
|
1437
|
+
declare function describeCron(cron: string): string;
|
|
1438
|
+
declare function describeSpec(s: ScheduleSpec): string;
|
|
1439
|
+
/** Epoch ms of the first run strictly after `afterMs`, in the CALLER's
|
|
1440
|
+
* timezone (declared next to every rendering as "your clock" — a box
|
|
1441
|
+
* usually ticks in UTC). Minute-walk on purpose: a weekly spec matches
|
|
1442
|
+
* within 8 days, ~11k cheap iterations worst case, and there is no
|
|
1443
|
+
* cron-engine arithmetic to get subtly wrong. Only for specs the
|
|
1444
|
+
* builder can express — a custom cron has no next tick here. */
|
|
1445
|
+
declare function nextTickFromSpec(s: ScheduleSpec, afterMs: number): number;
|
|
1446
|
+
/** `today 14:05` / `tomorrow 03:00` / `Mon 03:00` — enough precision
|
|
1447
|
+
* for a dashboard, no relative-time maths to go stale on screen. */
|
|
1448
|
+
declare function formatNextTick(tickMs: number, nowMs: number): string;
|
|
1449
|
+
/** Chip labels, cron order Sun=0 — the popup renders Mon-first via
|
|
1450
|
+
* {@link WEEK_CHIP_ORDER}. */
|
|
1451
|
+
declare const DAY_SHORT: readonly string[];
|
|
1452
|
+
declare const WEEK_CHIP_ORDER: readonly number[];
|
|
1453
|
+
|
|
1333
1454
|
/** Blob root under the runs root. Leading underscore for the same reason
|
|
1334
1455
|
* as `_scenarios`: derived, internal, and can never be mistaken for a
|
|
1335
1456
|
* `YYYY` shard directory. */
|
|
@@ -1512,6 +1633,14 @@ interface IRunnerAdapter {
|
|
|
1512
1633
|
* app-launch capability and the viewer hides the feature for this
|
|
1513
1634
|
* target. Example: `["app-server"]`. */
|
|
1514
1635
|
appServerArgs?(): string[];
|
|
1636
|
+
/** Argv (after the bin path) that prints the project's EFFECTIVE
|
|
1637
|
+
* schedule set — config-declared entries merged with the
|
|
1638
|
+
* viewer-managed file — as a `ScheduleEntry[]` JSON array on stdout
|
|
1639
|
+
* (web: `["schedules", "--json"]`). The one parser of the project's
|
|
1640
|
+
* config, asked across a process boundary: a deployed viewer shows
|
|
1641
|
+
* the set through this instead of re-reading half of it. Absent →
|
|
1642
|
+
* the target has no schedules command and the viewer says so. */
|
|
1643
|
+
schedulesArgs?(): string[];
|
|
1515
1644
|
/** Path inputs the App panel renders for this target (M-17) — each
|
|
1516
1645
|
* spec becomes an input + file-picker button whose value is saved
|
|
1517
1646
|
* into the target's env file (`envKey`). The viewer stays
|
|
@@ -2318,4 +2447,4 @@ declare const JUDGE_ENV: {
|
|
|
2318
2447
|
readonly skipPreflight: "UNOTEST_JUDGE_SKIP_PREFLIGHT";
|
|
2319
2448
|
};
|
|
2320
2449
|
|
|
2321
|
-
export { ARTIFACTS_ROOT_ENV, type AddVariablePlan, type AddVariablePlanInput, type AppPathPickerSpec, type AppServerEvent, type AuthoringRunRequest, BLOBS_DIR, BOX_TOKEN_ENV, BOX_URL_ENV, BUNDLE_ID_ENV, BUNDLE_MANIFEST_FILE, BUNDLE_SCHEMA_VERSION, BUNDLE_UPLOAD_PATH, type BreakpointEntry, type BreakpointsFile, type BundleGitInfo, type BundleManifest, type BundleUploadError, type BundleUploadErrorCode, type BundleUploadOk, type BundleUploadResponse, type BundleUploadStatus, type BundleVariableGap, CI_RUN_PATH, COLLECTIONS_SUBDIR, COLLECTION_NAME_FORBIDDEN_RE, COMMANDS_FILE, type CheckSeverity, type CiProviderId, type CiQueuedRun, type CiRunAccepted, type CiRunError, type CiRunErrorCode, type CiRunRequest, type CiRunResponse, type CollectionMeta, type CollectionRunArtifact, type CollectionRunFinishedEvent, type CollectionRunRequest, type CollectionRunStartedEvent, type CollectionRunTab, type CollectionScenarioFinishedEvent, type CollectionScenarioStartedEvent, type CollectionTab, DAY_INDEX_FILE, type DbgCommand, type DbgCommandAbort, type DbgCommandClearBp, type DbgCommandContinue, type DbgCommandKind, type DbgCommandPause, type DbgCommandPickerStart, type DbgCommandPickerStop, type DbgCommandProbe, type DbgCommandRecord, type DbgCommandSetBp, type DbgCommandSnapshot, type DbgCommandStep, type DbgCommandWheel, type DebugCapabilities, type DoctorCheck, type DoctorContext, type DslDiagnostic, type DslValidateContext, type DslVocabArg, type DslVocabCategory, type DslVocabEntry, E2E_SUBDIR, ENV_FILE, EXPECT_FAIL_ANNOTATION, type EnqueueRunInput, type EnvChangedMessage, type EnvFile, type EnvUpdate, type EnvVar, type ErrorMessage, type FailureBundleWrittenEvent, type FsBreakpointsChangedMessage, type FsCollectionRunStepMessage, type FsCollectionsChangedMessage, type FsHelpersChangedMessage, type FsRunFinishedMessage, type FsRunStartedMessage, type FsRunStepMessage, type FsScenariosChangedMessage, HEARTBEAT_FILE, HELPERS_SUBDIR, type HelperMeta, type HelperTab, type HostRequirement, type IDslLanguageService, type ILaunchedProcess, type IProcessLauncher, type IRunQueue, type IRunnerAdapter, InvalidBlobHashError, JUDGE_ENV, JUDGE_ROUTES, type JudgeErrorResponse, type JudgeHealthResponse, type JudgeRequest, type JudgeVerdict, type JudgeVerdictEvent, LOCK_FILE, LOG_FILE, type LaunchSpec, type LocatorPickedEvent, type LockFile, type LogLineMessage, type Matcher, type OverviewTab, PICKER_SNAPSHOT_FILE, type ParsedTicketName, type PausedEvent, type PickerMode, type ProbeMatch, type ProbePinned, type ProbeResult, type ProbeResultEvent, QUEUE_DISABLED_ENV, QUEUE_GLOBAL_DIR_ENV, QUEUE_GLOBAL_SLOTS_ENV, QUEUE_LEASE_ENV, QUEUE_MUTEX_FILE, QUEUE_PRIORITIES, QUEUE_RUNNING_DIR, QUEUE_SCHEMA_VERSION, QUEUE_SLOTS_DIR, QUEUE_SUBDIR, QUEUE_TICKETS_DIR, type QueueChangedMessage, type QueueEntry, type QueuePoolState, type QueuePriority, type QueueProducer, type QueueProducerKind, type QueueSnapshot, type QueueTicket, type QueueTicketCi, type QueueTicketKind, type QueueTicketSource, RUNNER_CONFIG_KEYS, RUNS_SUBDIR, RUNTIME_FILE, RUN_INDEX_SCHEMA_VERSION, RUN_MANIFEST_FILE, RUN_SOURCES_FILE, type RecordedActionKind, type RegexLiteral, type ResumedEvent, type RunArtifact, type RunFinishedEvent, type RunId, type RunIndexEntry, type RunIndexHeader, type RunKind, type RunManifest, type RunMeta, type RunOutcome, type RunQueueLease, type RunQueueTicketHandle, type RunRequest, type RunSources, type RunStartedEvent, type RunStatus, RunnerAdapterNotFoundError, RunnerNotConfiguredError, type RuntimeState, type RuntimeStateFile, SCENARIOS_INDEX_DIR, SCENARIOS_LATEST_FILE, SCENARIO_RECENT_WINDOW, SECRETS_FILE, SEGMENT_NAME_FORBIDDEN_RE, SNAPSHOTS_SUBDIR, STDERR_FILE, STDOUT_FILE, STEPS_FILE, type ScenarioAnnotations, type ScenarioLatestEntry, type ScenarioMeta, type ScenarioRunRequest, type ScenarioRunTab, type ScenarioTab, type ScenariosLatest, type ScenariosPayload, type ScheduleEntry, type ScreenshotEvent, type SnapshotTab, type StepFailEvent, type StepOkEvent, type StepStartedEvent, TERMINAL_RUNTIME_STATES, TERMINAL_WS_EVENT, type TabKind, type TabKindName, type TerminalClientMessage, type TerminalCloseMessage, type TerminalDataMessage, type TerminalErrorMessage, type TerminalExitMessage, type TerminalKind, type TerminalOutputMessage, type TerminalResizeMessage, type TerminalServerMessage, type TerminalSpawnMessage, type ToolCallEvent, type ToolResultEvent, UNOTEST_DIR, UnplaceableRunIdError, UnsupportedRunKindError, type VariableCategory, type VariableKind, type VariablePlanError, WORKSPACE_FILE, WORKSPACE_SCHEMA_VERSION, type WheelChangedEvent, type WorkspaceBundle, type WorkspaceFile, type WsMessage, type WsMessageKind, activeEnvName, artifactsRootFrom, blobPathFor, blobRelPathFor, blobRelSegmentsFor, blobsRootFor, categorizeVariable, compareQueueTicketNames, debugDirFor, debuggerFileFor, deleteShadowWarning, describeBundle, describeTicketCi, envFileFor, envKeys, envLayerFilesFor, envNamesFromDirListing, foldScenarioRun, insertEnvVar, isAnnotationLine, isExternalVarName, isFailingStatus, isQueueDirName, isRecord, isRegexLiteral, isRunnerConfigKey, isRunsDirName, isTerminalRuntimeState, makeQueueTicketName, makeRunId, parseAppServerEvent, parseBundleManifest, parseBundleUploadResponse, parseCiProvider, parseCiRunRequest, parseCiRunResponse, parseEnvContent, parseQueueTicket, parseQueueTicketName, parseScenarioAnnotations, parseScheduleEntry, parseSchedulesJson, parseWorkspaceFile, planAddVariable, projectQueueRoot, projectRunDirFor, projectRunsRoot, queueDirFor, queuePriorityFromRank, queuePriorityRank, regexLiteral, removeEnvVar, requireRunDirFor, runDirFor, runIdStartedAt, runsDirFor, sanitizeRunIdSegment, scenarioIndexFileName, scenarioRefFromFileName, secretsFileFor, secretsLayerFilesFor, serializeEnvValue, shardDaysDescending, shardDirFor, shardPathForRunId, shardPathForTimestamp, testDirFor, validateCollectionName, validateSegmentName };
|
|
2450
|
+
export { ARTIFACTS_ROOT_ENV, type AddVariablePlan, type AddVariablePlanInput, type AppPathPickerSpec, type AppServerEvent, type AuthoringRunRequest, BLOBS_DIR, BOX_TOKEN_ENV, BOX_URL_ENV, BUNDLE_ID_ENV, BUNDLE_MANIFEST_FILE, BUNDLE_SCHEMA_VERSION, BUNDLE_UPLOAD_PATH, type BreakpointEntry, type BreakpointsFile, type BundleGitInfo, type BundleManifest, type BundleUploadError, type BundleUploadErrorCode, type BundleUploadOk, type BundleUploadResponse, type BundleUploadStatus, type BundleVariableGap, CI_RUN_PATH, COLLECTIONS_SUBDIR, COLLECTION_NAME_FORBIDDEN_RE, COMMANDS_FILE, type CheckSeverity, type CiProviderId, type CiQueuedRun, type CiRunAccepted, type CiRunError, type CiRunErrorCode, type CiRunRequest, type CiRunResponse, type CollectionMeta, type CollectionRunArtifact, type CollectionRunFinishedEvent, type CollectionRunRequest, type CollectionRunStartedEvent, type CollectionRunTab, type CollectionScenarioFinishedEvent, type CollectionScenarioStartedEvent, type CollectionScheduleEntry, type CollectionTab, DAY_INDEX_FILE, DAY_SHORT, type DbgCommand, type DbgCommandAbort, type DbgCommandClearBp, type DbgCommandContinue, type DbgCommandKind, type DbgCommandPause, type DbgCommandPickerStart, type DbgCommandPickerStop, type DbgCommandProbe, type DbgCommandRecord, type DbgCommandSetBp, type DbgCommandSnapshot, type DbgCommandStep, type DbgCommandWheel, type DebugCapabilities, type DoctorCheck, type DoctorContext, type DslDiagnostic, type DslValidateContext, type DslVocabArg, type DslVocabCategory, type DslVocabEntry, E2E_SUBDIR, ENV_FILE, EXPECT_FAIL_ANNOTATION, type EnqueueRunInput, type EnvChangedMessage, type EnvFile, type EnvUpdate, type EnvVar, type ErrorMessage, FREQ_FIELDS, type FailureBundleWrittenEvent, type FsBreakpointsChangedMessage, type FsCollectionRunStepMessage, type FsCollectionsChangedMessage, type FsHelpersChangedMessage, type FsRunFinishedMessage, type FsRunStartedMessage, type FsRunStepMessage, type FsScenariosChangedMessage, HEARTBEAT_FILE, HELPERS_SUBDIR, type HelperMeta, type HelperTab, type HostRequirement, type IDslLanguageService, type ILaunchedProcess, type IProcessLauncher, type IRunQueue, type IRunnerAdapter, InvalidBlobHashError, JUDGE_ENV, JUDGE_ROUTES, type JudgeErrorResponse, type JudgeHealthResponse, type JudgeRequest, type JudgeVerdict, type JudgeVerdictEvent, LOCK_FILE, LOG_FILE, type LaunchSpec, type LocatorPickedEvent, type LockFile, type LogLineMessage, type Matcher, type OverviewTab, PICKER_SNAPSHOT_FILE, type ParsedTicketName, type PausedEvent, type PickerMode, type ProbeMatch, type ProbePinned, type ProbeResult, type ProbeResultEvent, QUEUE_DISABLED_ENV, QUEUE_GLOBAL_DIR_ENV, QUEUE_GLOBAL_SLOTS_ENV, QUEUE_LEASE_ENV, QUEUE_MUTEX_FILE, QUEUE_PRIORITIES, QUEUE_RUNNING_DIR, QUEUE_SCHEMA_VERSION, QUEUE_SLOTS_DIR, QUEUE_SUBDIR, QUEUE_TICKETS_DIR, type QueueChangedMessage, type QueueEntry, type QueuePoolState, type QueuePriority, type QueueProducer, type QueueProducerKind, type QueueSnapshot, type QueueTicket, type QueueTicketCi, type QueueTicketKind, type QueueTicketSource, RUNNER_CONFIG_KEYS, RUNS_SUBDIR, RUNTIME_FILE, RUN_INDEX_SCHEMA_VERSION, RUN_MANIFEST_FILE, RUN_SOURCES_FILE, type RecordedActionKind, type RegexLiteral, type ResumedEvent, type RunArtifact, type RunFinishedEvent, type RunId, type RunIndexEntry, type RunIndexHeader, type RunKind, type RunManifest, type RunMeta, type RunOutcome, type RunQueueLease, type RunQueueTicketHandle, type RunRequest, type RunSources, type RunStartedEvent, type RunStatus, RunnerAdapterNotFoundError, RunnerNotConfiguredError, type RuntimeState, type RuntimeStateFile, SCENARIOS_INDEX_DIR, SCENARIOS_LATEST_FILE, SCENARIO_RECENT_WINDOW, SCHEDULES_FILE, SCHEDULES_FINGERPRINT_ENV, SECRETS_FILE, SEGMENT_NAME_FORBIDDEN_RE, SNAPSHOTS_SUBDIR, STDERR_FILE, STDOUT_FILE, STEPS_FILE, type ScenarioAnnotations, type ScenarioLatestEntry, type ScenarioMeta, type ScenarioRunRequest, type ScenarioRunTab, type ScenarioScheduleEntry, type ScenarioTab, type ScenariosLatest, type ScenariosPayload, type ScheduleEntry, type ScheduleFreq, type ScheduleSpec, type ScreenshotEvent, type SnapshotTab, type StepFailEvent, type StepOkEvent, type StepStartedEvent, TERMINAL_RUNTIME_STATES, TERMINAL_WS_EVENT, type TabKind, type TabKindName, type TerminalClientMessage, type TerminalCloseMessage, type TerminalDataMessage, type TerminalErrorMessage, type TerminalExitMessage, type TerminalKind, type TerminalOutputMessage, type TerminalResizeMessage, type TerminalServerMessage, type TerminalSpawnMessage, type ToolCallEvent, type ToolResultEvent, UNOTEST_DIR, UnplaceableRunIdError, UnsupportedRunKindError, type VariableCategory, type VariableKind, type VariablePlanError, WEEK_CHIP_ORDER, WORKSPACE_FILE, WORKSPACE_SCHEMA_VERSION, type WheelChangedEvent, type WorkspaceBundle, type WorkspaceFile, type WsMessage, type WsMessageKind, activeEnvName, artifactsRootFrom, blobPathFor, blobRelPathFor, blobRelSegmentsFor, blobsRootFor, canonicalScheduleSet, categorizeVariable, compareQueueTicketNames, cronFromSpec, debugDirFor, debuggerFileFor, deleteShadowWarning, describeBundle, describeCron, describeSpec, describeTicketCi, envFileFor, envKeys, envLayerFilesFor, envNamesFromDirListing, foldScenarioRun, formatNextTick, insertEnvVar, isAnnotationLine, isExternalVarName, isFailingStatus, isQueueDirName, isRecord, isRegexLiteral, isRunnerConfigKey, isRunsDirName, isTerminalRuntimeState, makeQueueTicketName, makeRunId, mergeSchedules, nextTickFromSpec, parseAppServerEvent, parseBundleManifest, parseBundleUploadResponse, parseCiProvider, parseCiRunRequest, parseCiRunResponse, parseEnvContent, parseQueueTicket, parseQueueTicketName, parseScenarioAnnotations, parseScheduleEntry, parseSchedulesDoc, parseSchedulesJson, parseWorkspaceFile, planAddVariable, projectQueueRoot, projectRunDirFor, projectRunsRoot, queueDirFor, queuePriorityFromRank, queuePriorityRank, regexLiteral, removeEnvVar, requireRunDirFor, runDirFor, runIdStartedAt, runsDirFor, sanitizeRunIdSegment, scenarioIndexFileName, scenarioRefFromFileName, scheduleTarget, secretsFileFor, secretsLayerFilesFor, serializeEnvValue, shardDaysDescending, shardDirFor, shardPathForRunId, shardPathForTimestamp, specFromCron, testDirFor, validateCollectionName, validateSegmentName };
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x1f456e=_0x3d64;(function(_0x1d96a3,_0x502878){const _0x1d86eb={_0x3cad26:0xf3,_0x570be5:0x15a,_0x464e22:0x186},_0x5e4ad3=_0x3d64,_0x4ca2bb=_0x1d96a3();while(!![]){try{const _0x96bf67=parseInt(_0x5e4ad3(0x18b))/0x1+parseInt(_0x5e4ad3(0x1c2))/0x2*(-parseInt(_0x5e4ad3(0x1ae))/0x3)+parseInt(_0x5e4ad3(0x172))/0x4+parseInt(_0x5e4ad3(0x1a2))/0x5+-parseInt(_0x5e4ad3(0xf8))/0x6+parseInt(_0x5e4ad3(_0x1d86eb._0x3cad26))/0x7*(parseInt(_0x5e4ad3(_0x1d86eb._0x570be5))/0x8)+parseInt(_0x5e4ad3(_0x1d86eb._0x464e22))/0x9*(-parseInt(_0x5e4ad3(0x13f))/0xa);if(_0x96bf67===_0x502878)break;else _0x4ca2bb['push'](_0x4ca2bb['shift']());}catch(_0x1079d5){_0x4ca2bb['push'](_0x4ca2bb['shift']());}}}(_0x2707,0xcf466));var __defProp=Object[_0x1f456e(0x134)],__name=(_0x2c2a73,_0x306fa4)=>__defProp(_0x2c2a73,_0x1f456e(0x1b9),{'value':_0x306fa4,'configurable':!![]});function parseAppServerEvent(_0x167da8){const _0x16db44={_0x36450b:0xeb,_0x96e8e3:0x1a5,_0x5ae6e4:0x13b,_0x2b1f94:0x11d},_0x2cecfc=_0x1f456e,_0x4664a6=_0x167da8[_0x2cecfc(_0x16db44._0x36450b)]();if(!_0x4664a6[_0x2cecfc(0x118)]('{'))return null;try{const _0x3350bc=JSON[_0x2cecfc(0x162)](_0x4664a6);if(_0x3350bc[_0x2cecfc(_0x16db44._0x96e8e3)]==='app-server:ready'||_0x3350bc[_0x2cecfc(_0x16db44._0x96e8e3)]===_0x2cecfc(_0x16db44._0x5ae6e4)||_0x3350bc['kind']===_0x2cecfc(_0x16db44._0x2b1f94))return _0x3350bc;return null;}catch{return null;}}function _0x3d64(_0x25ad30,_0x1a9709){_0x25ad30=_0x25ad30-0xe6;const _0x2707e0=_0x2707();let _0x3d6433=_0x2707e0[_0x25ad30];if(_0x3d64['fIJVeE']===undefined){var _0x2078ac=function(_0x5ad325){const _0x27ec8a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2c2a73='',_0x306fa4='';for(let _0x167da8=0x0,_0x4664a6,_0x3350bc,_0x4554db=0x0;_0x3350bc=_0x5ad325['charAt'](_0x4554db++);~_0x3350bc&&(_0x4664a6=_0x167da8%0x4?_0x4664a6*0x40+_0x3350bc:_0x3350bc,_0x167da8++%0x4)?_0x2c2a73+=String['fromCharCode'](0xff&_0x4664a6>>(-0x2*_0x167da8&0x6)):0x0){_0x3350bc=_0x27ec8a['indexOf'](_0x3350bc);}for(let _0x151b01=0x0,_0x36338b=_0x2c2a73['length'];_0x151b01<_0x36338b;_0x151b01++){_0x306fa4+='%'+('00'+_0x2c2a73['charCodeAt'](_0x151b01)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x306fa4);};_0x3d64['xXFchn']=_0x2078ac,_0x3d64['qXfdiE']={},_0x3d64['fIJVeE']=!![];}const _0x41e87a=_0x2707e0[0x0],_0x28b826=_0x25ad30+_0x41e87a,_0x10bd07=_0x3d64['qXfdiE'][_0x28b826];return!_0x10bd07?(_0x3d6433=_0x3d64['xXFchn'](_0x3d6433),_0x3d64['qXfdiE'][_0x28b826]=_0x3d6433):_0x3d6433=_0x10bd07,_0x3d6433;}__name(parseAppServerEvent,_0x1f456e(0x10a));function isRecord(_0x4554db){const _0x4f4bda=_0x1f456e;return typeof _0x4554db===_0x4f4bda(0x10d)&&_0x4554db!==null&&!Array['isArray'](_0x4554db);}__name(isRecord,_0x1f456e(0x1ec));var UNOTEST_DIR=_0x1f456e(0x1af),E2E_SUBDIR=_0x1f456e(0x19e),HELPERS_SUBDIR=_0x1f456e(0x179),COLLECTIONS_SUBDIR=_0x1f456e(0x10c),RUNS_SUBDIR=_0x1f456e(0xea),SNAPSHOTS_SUBDIR='.snapshots';function testDirFor(_0x151b01){return''+E2E_SUBDIR+_0x151b01;}__name(testDirFor,_0x1f456e(0x110));function runsDirFor(_0x36338b,_0x4867b5){return''+RUNS_SUBDIR+_0x36338b+(_0x4867b5?'.'+_0x4867b5:'');}__name(runsDirFor,_0x1f456e(0x19c));function isRunsDirName(_0x31d563){const _0xbc0d35={_0x84ef74:0x118},_0x2a060f=_0x1f456e;return _0x31d563===RUNS_SUBDIR||_0x31d563[_0x2a060f(0x118)](RUNS_SUBDIR+'-')||_0x31d563[_0x2a060f(_0xbc0d35._0x84ef74)](RUNS_SUBDIR+'.');}__name(isRunsDirName,_0x1f456e(0x1c0));function debugDirFor(_0x3fcd86){return'.debug'+_0x3fcd86;}__name(debugDirFor,_0x1f456e(0x157));function debuggerFileFor(_0x448b27){const _0x3f976=_0x1f456e;return UNOTEST_DIR+_0x3f976(0x1aa)+_0x448b27+'.json';}__name(debuggerFileFor,_0x1f456e(0x125));var LOCK_FILE=_0x1f456e(0x154),LOG_FILE='.viewer.log',STEPS_FILE='steps.jsonl',HEARTBEAT_FILE=_0x1f456e(0x171),DAY_INDEX_FILE=_0x1f456e(0x159),SCENARIOS_INDEX_DIR=_0x1f456e(0x17b),SCENARIOS_LATEST_FILE=_0x1f456e(0x16a),STDOUT_FILE=_0x1f456e(0x181),STDERR_FILE=_0x1f456e(0x147),COMMANDS_FILE=_0x1f456e(0x14d),RUNTIME_FILE=_0x1f456e(0x122),PICKER_SNAPSHOT_FILE=_0x1f456e(0x191),ENV_FILE=_0x1f456e(0x1e3),SECRETS_FILE=_0x1f456e(0xfb);function envFileFor(_0x38d22e,_0x421d4a){return''+ENV_FILE+_0x38d22e+(_0x421d4a?'.'+_0x421d4a:'');}__name(envFileFor,_0x1f456e(0x119));function secretsFileFor(_0x38eb1d,_0x3a8719){return''+SECRETS_FILE+_0x38eb1d+(_0x3a8719?'.'+_0x3a8719:'');}__name(secretsFileFor,_0x1f456e(0x105));function envLayerFilesFor(_0x188017,_0x549df0){return layersFor(ENV_FILE,_0x188017,_0x549df0);}__name(envLayerFilesFor,'envLayerFilesFor');function secretsLayerFilesFor(_0x42174d,_0x572f6f){return layersFor(SECRETS_FILE,_0x42174d,_0x572f6f);}__name(secretsLayerFilesFor,'secretsLayerFilesFor');function layersFor(_0x1adbbc,_0x145cbd,_0x3772bd){const _0x4794e4=_0x1f456e,_0x44f5d2=[_0x1adbbc];if(_0x145cbd)_0x44f5d2[_0x4794e4(0x1d5)](''+_0x1adbbc+_0x145cbd);if(_0x3772bd){_0x44f5d2['push'](_0x1adbbc+'.'+_0x3772bd);if(_0x145cbd)_0x44f5d2['push'](''+_0x1adbbc+_0x145cbd+'.'+_0x3772bd);}return _0x44f5d2;}__name(layersFor,'layersFor');var ARTIFACTS_ROOT_ENV=_0x1f456e(0x1ac);function artifactsRootFrom(_0x53ba1e,_0x19387d){const _0x1192a3=_0x53ba1e[ARTIFACTS_ROOT_ENV]?.['trim']();return _0x1192a3?_0x1192a3:_0x19387d;}__name(artifactsRootFrom,_0x1f456e(0x168));function activeEnvName(_0x1593cb){const _0x576978={_0x483ba8:0x150,_0x134054:0xeb},_0x537a19=_0x1f456e,_0xd0b5aa=_0x1593cb[_0x537a19(_0x576978._0x483ba8)]?.[_0x537a19(_0x576978._0x134054)]();return _0xd0b5aa?_0xd0b5aa:void 0x0;}__name(activeEnvName,_0x1f456e(0x166));var RESERVED_ENV_NAMES=new Set([_0x1f456e(0x1c4),_0x1f456e(0x1d9),_0x1f456e(0x1ef)]);function envNamesFromDirListing(_0x5ac762,_0x141e5d){const _0x5ab2c7={_0x4c0b79:0x138},_0x115d96=_0x1f456e,_0x5b4f0c=['.env',_0x115d96(0x163)]['flatMap'](_0x26a38e=>_0x141e5d?[_0x26a38e,''+_0x26a38e+_0x141e5d]:[_0x26a38e]),_0x4156af=new Set();for(const _0x3d0d94 of _0x5ac762){for(const _0x48e264 of _0x5b4f0c){const _0x117538=_0x48e264+'.';if(!_0x3d0d94[_0x115d96(0x118)](_0x117538))continue;const _0x595d1d=_0x3d0d94[_0x115d96(0x10e)](_0x117538[_0x115d96(0x187)]);if(!_0x595d1d||_0x595d1d[_0x115d96(0xfc)]('/'))continue;if(RESERVED_ENV_NAMES[_0x115d96(_0x5ab2c7._0x4c0b79)](_0x595d1d))continue;_0x4156af[_0x115d96(0x1d0)](_0x595d1d);}}return[..._0x4156af][_0x115d96(0xe6)]();}__name(envNamesFromDirListing,_0x1f456e(0x128));function isRegexLiteral(_0x57fe27){const _0x1e81b7={_0x456b5a:0x10d,_0x13da5b:0x1a5,_0xa4f978:0x12d},_0x33e72c=_0x1f456e;return typeof _0x57fe27===_0x33e72c(_0x1e81b7._0x456b5a)&&_0x57fe27!==null&&_0x57fe27[_0x33e72c(_0x1e81b7._0x13da5b)]===_0x33e72c(_0x1e81b7._0xa4f978)&&typeof _0x57fe27[_0x33e72c(0x15d)]===_0x33e72c(0x14f)&&typeof _0x57fe27['flags']===_0x33e72c(0x14f);}__name(isRegexLiteral,'isRegexLiteral');function regexLiteral(_0x2a3982,_0x1fec94=''){const _0x39d3d5={_0x415dcf:0x12d},_0x4bf85b=_0x1f456e;return{'kind':_0x4bf85b(_0x39d3d5._0x415dcf),'source':_0x2a3982,'flags':_0x1fec94};}__name(regexLiteral,_0x1f456e(0xf7));var RAND_BYTES=0x6;function makeRunId(_0x1ea968){const _0x38eaee={_0x3515fb:0x1c5,_0x20d250:0x13c,_0x212b18:0x187},_0x1ad7ad=_0x1f456e,_0x29d7f3=sanitizeRunIdSegment(_0x1ea968),_0x29f014=Date['now']()[_0x1ad7ad(0x16e)](0x24),_0x37a194=new Uint8Array(RAND_BYTES);globalThis[_0x1ad7ad(_0x38eaee._0x3515fb)][_0x1ad7ad(_0x38eaee._0x20d250)](_0x37a194);let _0x33d2cc='';for(let _0x4c7a57=0x0;_0x4c7a57<_0x37a194[_0x1ad7ad(_0x38eaee._0x212b18)];_0x4c7a57++){_0x33d2cc+=_0x37a194[_0x4c7a57][_0x1ad7ad(0x16e)](0x10)[_0x1ad7ad(0x152)](0x2,'0');}return _0x29d7f3+'-'+_0x29f014+'-'+_0x33d2cc;}__name(makeRunId,_0x1f456e(0x196));function sanitizeRunIdSegment(_0x20aa8f){const _0x2600af={_0x2e78dd:0x1c6,_0x35a493:0x14b},_0x14e810=_0x1f456e,_0x518277=_0x20aa8f[_0x14e810(0x1c6)](/[^a-zA-Z0-9_-]+/g,'-')[_0x14e810(_0x2600af._0x2e78dd)](/-+/g,'-')[_0x14e810(0x1c6)](/^-|-$/g,'');return _0x518277[_0x14e810(0x187)]>0x0?_0x518277:_0x14e810(_0x2600af._0x35a493);}__name(sanitizeRunIdSegment,'sanitizeRunIdSegment');var RANDOM_SUFFIX_RE=/^[0-9a-f]{6,}$/,MIN_PLAUSIBLE_MS=Date[_0x1f456e(0x13a)](0x7e4,0x0,0x1),MAX_PLAUSIBLE_MS=Date[_0x1f456e(0x13a)](0x834,0x0,0x1);function runIdStartedAt(_0x32f072){const _0x1d9d04={_0x501e77:0x187},_0x506678=_0x1f456e,_0xd7562a=_0x32f072[_0x506678(0x184)]('-');if(_0xd7562a[_0x506678(_0x1d9d04._0x501e77)]<0x3)return null;const _0x580fb5=_0xd7562a[_0xd7562a[_0x506678(_0x1d9d04._0x501e77)]-0x1];if(!RANDOM_SUFFIX_RE[_0x506678(0x1ee)](_0x580fb5))return null;const _0xf56632=_0xd7562a[_0xd7562a['length']-0x2];if(!/^[0-9a-z]+$/['test'](_0xf56632))return null;const _0x29bc64=parseInt(_0xf56632,0x24);if(!Number[_0x506678(0x14c)](_0x29bc64))return null;if(_0x29bc64<MIN_PLAUSIBLE_MS||_0x29bc64>=MAX_PLAUSIBLE_MS)return null;return _0x29bc64;}__name(runIdStartedAt,_0x1f456e(0x151));function shardPathForTimestamp(_0x3ccdff){const _0x248ea8=_0x1f456e,_0x2a44c3=new Date(_0x3ccdff),_0x47295a=String(_0x2a44c3[_0x248ea8(0x117)]())[_0x248ea8(0x152)](0x4,'0'),_0x13bebd=String(_0x2a44c3[_0x248ea8(0x1d4)]()+0x1)[_0x248ea8(0x152)](0x2,'0'),_0x5c66b7=String(_0x2a44c3[_0x248ea8(0x10b)]())['padStart'](0x2,'0');return _0x47295a+'/'+_0x13bebd+'/'+_0x5c66b7;}__name(shardPathForTimestamp,_0x1f456e(0x11a));function shardPathForRunId(_0xc862ea){const _0x591234=runIdStartedAt(_0xc862ea);return _0x591234===null?null:shardPathForTimestamp(_0x591234);}__name(shardPathForRunId,_0x1f456e(0x115));function runDirFor(_0x4d90c0,_0x3fd45e){const _0x50d7af=shardPathForRunId(_0x3fd45e);return _0x50d7af===null?null:_0x4d90c0+'/'+_0x50d7af+'/'+_0x3fd45e;}__name(runDirFor,_0x1f456e(0x1b5));var UnplaceableRunIdError=class extends Error{static{__name(this,_0x1f456e(0x15b));}constructor(_0x47c66f){const _0x190556={_0x1509bf:0x15b},_0x17a9aa=_0x1f456e;super(_0x17a9aa(0x1c3)+_0x47c66f),this[_0x17a9aa(0x1b9)]=_0x17a9aa(_0x190556._0x1509bf);}};function requireRunDirFor(_0x5cad41,_0x158aad){const _0xb948d7=runDirFor(_0x5cad41,_0x158aad);if(_0xb948d7===null)throw new UnplaceableRunIdError(_0x158aad);return _0xb948d7;}__name(requireRunDirFor,_0x1f456e(0x13d));function projectRunsRoot(_0x2ebced='',_0x5c0cd7){return UNOTEST_DIR+'/'+runsDirFor(_0x2ebced,_0x5c0cd7);}__name(projectRunsRoot,_0x1f456e(0xfa));function projectRunDirFor(_0x32b595,_0x4683d4='',_0x5d59c6){return requireRunDirFor(projectRunsRoot(_0x4683d4,_0x5d59c6),_0x32b595);}__name(projectRunDirFor,_0x1f456e(0x1a7));function shardDirFor(_0x13fed2,_0x4187e2){return _0x13fed2+'/'+shardPathForTimestamp(_0x4187e2);}__name(shardDirFor,_0x1f456e(0x1b8));function*shardDaysDescending(_0x491a26,_0x4d3651,_0x4d3fb7){const _0x4e3db5={_0x548883:0x18a},_0xf54603=_0x1f456e,_0x5fce7a=0x5265c00;let _0xef0c80=Math[_0xf54603(_0x4e3db5._0x548883)](_0x4d3651/_0x5fce7a)*_0x5fce7a;for(let _0x856339=0x0;_0x856339<_0x4d3fb7;_0x856339++){yield shardDirFor(_0x491a26,_0xef0c80),_0xef0c80-=_0x5fce7a;}}__name(shardDaysDescending,'shardDaysDescending');var RUN_INDEX_SCHEMA_VERSION=0x2,SCENARIO_RECENT_WINDOW=0xc;function isFailingStatus(_0x325d17){const _0x1dc7b0={_0x23ffc2:0x1d2},_0x12270c=_0x1f456e;return _0x325d17===_0x12270c(_0x1dc7b0._0x23ffc2)||_0x325d17===_0x12270c(0x1a1);}__name(isFailingStatus,_0x1f456e(0x155));function foldScenarioRun(_0x50a5e2,_0x57ff4d){const _0x6b8932={_0x38cef1:0x137,_0x5cf313:0x17c,_0x1b7866:0x1db,_0x35a38e:0x10e,_0x31061b:0x18f},_0x5e9d8b=_0x1f456e,_0x395bfb={'lastRunId':_0x57ff4d[_0x5e9d8b(0x1bc)],'lastStatus':_0x57ff4d[_0x5e9d8b(0x1db)],'lastAt':_0x57ff4d[_0x5e9d8b(0x18f)],'lastDurationMs':_0x57ff4d[_0x5e9d8b(_0x6b8932._0x38cef1)],'recent':[..._0x50a5e2?.[_0x5e9d8b(_0x6b8932._0x5cf313)]??[],_0x57ff4d[_0x5e9d8b(_0x6b8932._0x1b7866)]][_0x5e9d8b(_0x6b8932._0x35a38e)](-SCENARIO_RECENT_WINDOW)};if(!isFailingStatus(_0x57ff4d['status']))return{..._0x395bfb,'failStreak':0x0,'failingSince':null};const _0xf1b6b=(_0x50a5e2?.[_0x5e9d8b(0x1de)]??0x0)+0x1;return{..._0x395bfb,'failStreak':_0xf1b6b,'failingSince':_0xf1b6b===0x1?_0x57ff4d[_0x5e9d8b(0x18f)]:_0x50a5e2?.[_0x5e9d8b(0x1cf)]??_0x57ff4d[_0x5e9d8b(_0x6b8932._0x31061b)]};}__name(foldScenarioRun,'foldScenarioRun');function scenarioIndexFileName(_0x4792cf){const _0x44dd91={_0x5b2dd8:0x1c8},_0x25b1f9=_0x1f456e;return encodeURIComponent(_0x4792cf)+_0x25b1f9(_0x44dd91._0x5b2dd8);}__name(scenarioIndexFileName,'scenarioIndexFileName');function scenarioRefFromFileName(_0x29ba0e){const _0x4ee1d3={_0xba456d:0x10e,_0x4557db:0x1c8,_0x2ce6ef:0x187},_0x9a5cca=_0x1f456e;if(!_0x29ba0e['endsWith']('.jsonl'))return null;try{return decodeURIComponent(_0x29ba0e[_0x9a5cca(_0x4ee1d3._0xba456d)](0x0,-_0x9a5cca(_0x4ee1d3._0x4557db)[_0x9a5cca(_0x4ee1d3._0x2ce6ef)]));}catch{return null;}}__name(scenarioRefFromFileName,_0x1f456e(0x1e2));var CI_RUN_PATH='/api/box/ci/run',PROVIDER_IDS=[_0x1f456e(0x141),_0x1f456e(0x169),_0x1f456e(0x1dc)],RUN_ERROR_CODES=['unauthorized','scope-mismatch',_0x1f456e(0x1b7),_0x1f456e(0x12a),'no-collections','malformed',_0x1f456e(0x1e8)];function parseCiRunRequest(_0x546561){const _0x588704={_0x5f0bac:0x14f,_0x130497:0x187,_0x34f797:0x1b1,_0x226173:0x167},_0x3717c0=_0x1f456e;if(!isRecord(_0x546561))return null;const {bundleId:_0x4d8315,environment:_0x25bbf9,collections:_0x4622c9,pr:_0x1f4147,branch:_0x5b7659,sha:_0x2c6492}=_0x546561;if(typeof _0x4d8315!==_0x3717c0(0x14f)||_0x4d8315[_0x3717c0(0x187)]===0x0)return null;if(typeof _0x25bbf9!==_0x3717c0(_0x588704._0x5f0bac)||_0x25bbf9[_0x3717c0(_0x588704._0x130497)]===0x0)return null;let _0x23dffa=null;if(_0x4622c9!==void 0x0){if(!Array[_0x3717c0(0x18e)](_0x4622c9))return null;if(_0x4622c9[_0x3717c0(_0x588704._0x34f797)](_0xb35d32=>typeof _0xb35d32!=='string'||_0xb35d32[_0x3717c0(0x187)]===0x0))return null;_0x23dffa=_0x4622c9;}if(_0x1f4147!==void 0x0&&(typeof _0x1f4147!=='number'||!Number[_0x3717c0(0x111)](_0x1f4147)))return null;for(const _0x58ce77 of[_0x5b7659,_0x2c6492]){if(_0x58ce77!==void 0x0&&typeof _0x58ce77!==_0x3717c0(_0x588704._0x5f0bac))return null;}return{'bundleId':_0x4d8315,'environment':_0x25bbf9,..._0x23dffa?{'collections':_0x23dffa}:{},...typeof _0x1f4147===_0x3717c0(_0x588704._0x226173)?{'pr':_0x1f4147}:{},...typeof _0x5b7659==='string'?{'branch':_0x5b7659}:{},...typeof _0x2c6492===_0x3717c0(_0x588704._0x5f0bac)?{'sha':_0x2c6492}:{}};}__name(parseCiRunRequest,_0x1f456e(0x139));function parseCiRunResponse(_0x10fad9){const _0xb4b029={_0x389d2d:0x12e,_0x178a9c:0x167},_0x1bb827=_0x1f456e;if(!isRecord(_0x10fad9))return null;if(isRecord(_0x10fad9['error'])){const {code:_0x3ba2de,message:_0x950b80}=_0x10fad9[_0x1bb827(_0xb4b029._0x389d2d)];if(!RUN_ERROR_CODES[_0x1bb827(0xfc)](_0x3ba2de))return null;if(typeof _0x950b80!==_0x1bb827(0x14f))return null;return{'error':{'code':_0x3ba2de,'message':_0x950b80}};}const {status:_0x3d6190,bundleId:_0x131aa4,environment:_0x577291,runs:_0x539b83,superseded:_0x2a5b26}=_0x10fad9;if(_0x3d6190!==_0x1bb827(0x1bb))return null;if(typeof _0x131aa4!==_0x1bb827(0x14f)||typeof _0x577291!==_0x1bb827(0x14f))return null;if(!Array[_0x1bb827(0x18e)](_0x539b83))return null;const _0x3bba69=[];for(const _0x1ad4e8 of _0x539b83){if(!isRecord(_0x1ad4e8))return null;const {runId:_0x5cc16e,collection:_0x300396}=_0x1ad4e8;if(typeof _0x5cc16e!=='string'||typeof _0x300396!=='string')return null;_0x3bba69['push']({'runId':_0x5cc16e,'collection':_0x300396});}if(_0x2a5b26!==void 0x0&&typeof _0x2a5b26!==_0x1bb827(0x167))return null;return{'status':'queued','bundleId':_0x131aa4,'environment':_0x577291,'runs':_0x3bba69,...typeof _0x2a5b26===_0x1bb827(_0xb4b029._0x178a9c)?{'superseded':_0x2a5b26}:{}};}__name(parseCiRunResponse,_0x1f456e(0x1ba));function parseCiProvider(_0x1a17fb){const _0x2a6847=_0x1f456e;return PROVIDER_IDS[_0x2a6847(0xfc)](_0x1a17fb)?_0x1a17fb:null;}__name(parseCiProvider,_0x1f456e(0x14e));var QUEUE_SUBDIR='.queue',QUEUE_TICKETS_DIR=_0x1f456e(0x198),QUEUE_RUNNING_DIR='running',QUEUE_SLOTS_DIR='slots',QUEUE_MUTEX_FILE='.mutex',QUEUE_LEASE_ENV=_0x1f456e(0x114),QUEUE_DISABLED_ENV=_0x1f456e(0xec),QUEUE_GLOBAL_DIR_ENV=_0x1f456e(0x189),QUEUE_GLOBAL_SLOTS_ENV='UNOTEST_QUEUE_GLOBAL_SLOTS',QUEUE_SCHEMA_VERSION=0x1;function queueDirFor(_0x4784e8,_0x1549ce){return''+QUEUE_SUBDIR+_0x4784e8+(_0x1549ce?'.'+_0x1549ce:'');}__name(queueDirFor,_0x1f456e(0x148));function isQueueDirName(_0x1826cb){const _0x949af9={_0x54f374:0x118},_0x1ec942=_0x1f456e;return _0x1826cb===QUEUE_SUBDIR||_0x1826cb[_0x1ec942(_0x949af9._0x54f374)](QUEUE_SUBDIR+'-')||_0x1826cb[_0x1ec942(0x118)](QUEUE_SUBDIR+'.');}__name(isQueueDirName,_0x1f456e(0x108));function projectQueueRoot(_0x38bf8c='',_0x5c2e6d){return UNOTEST_DIR+'/'+queueDirFor(_0x38bf8c,_0x5c2e6d);}__name(projectQueueRoot,'projectQueueRoot');var PRIORITY_RANKS=Object[_0x1f456e(0x174)]({'maintenance':0x0,'interactive':0x1,'ci':0x2,'schedule':0x3}),RANK_PRIORITIES=[_0x1f456e(0x1cd),_0x1f456e(0x1b4),'ci',_0x1f456e(0x120)],QUEUE_PRIORITIES=RANK_PRIORITIES;function queuePriorityRank(_0x328945){return PRIORITY_RANKS[_0x328945];}__name(queuePriorityRank,_0x1f456e(0x19f));function queuePriorityFromRank(_0x6301bd){return RANK_PRIORITIES[_0x6301bd]??null;}__name(queuePriorityFromRank,_0x1f456e(0x1e6));function describeTicketCi(_0x34726e){const _0x33d784={_0x224f4a:0x1a9,_0x34dd56:0x197,_0x3612b6:0x197,_0x38e9f7:0x10e,_0x43289c:0x1a3},_0x4923d3=_0x1f456e,_0x540b95=_0x34726e['sha']?'@'+_0x34726e[_0x4923d3(_0x33d784._0x224f4a)][_0x4923d3(0x10e)](0x0,0x7):'';if(_0x34726e['pr']!==void 0x0)return'PR\x20#'+_0x34726e['pr']+_0x540b95;if(_0x34726e[_0x4923d3(_0x33d784._0x34dd56)]!==void 0x0)return''+_0x34726e[_0x4923d3(_0x33d784._0x3612b6)]+_0x540b95;return _0x540b95[_0x4923d3(0x187)]>0x0?_0x540b95[_0x4923d3(_0x33d784._0x38e9f7)](0x1):_0x34726e[_0x4923d3(_0x33d784._0x43289c)];}__name(describeTicketCi,_0x1f456e(0x1e0));function makeQueueTicketName(_0xc222df,_0x48db1a,_0x4d1bad){const _0x2965b1={_0x2160e5:0x16e},_0x17b4d7=_0x1f456e;return queuePriorityRank(_0xc222df)+'-'+_0x48db1a[_0x17b4d7(_0x2965b1._0x2160e5)](0x24)+'-'+_0x4d1bad+_0x17b4d7(0x100);}function _0x2707(){const _0x105d41=['C2nLBMfYAw8','BxvZDcbIzsbHihn0CMLUzW','uNvUBMvYtM90q29UzMLNDxjLzevYCM9Y','x2HLBhbLCNm','CgfYC2vty2HLzhvSzuvUDhj5','x3nJzw5HCMLVCW','CMvJzw50','zw52s2v5CW','C2vYAwfSAxPLrw52vMfSDwu','l2HLywX0Aa','CMvTB3zLrw52vMfY','C3rKB3v0lMXVzW','qxbW','z2L0','C3bSAxq','y29TCgfYzvf1zxvLvgLJA2v0tMfTzxm','mJC5qLPYy0nT','BgvUz3rO','y29TCgXLDgvK','vu5pvevtvf9rvuvvrv9hte9cquXFreLs','zMXVB3i','mZK0ntK2y2n4rvj4','yxnZAwDUBwvUDevUDhjPzxm','Aw5Zzxj0rw52vMfY','AxnbCNjHEq','C3rHCNrLzef0','refuqujbu0vFvvjm','CgLJA2vYlxnUyxbZAg90lNr4Da','vu5pvevtvf9kvurhrv9dtefvrevFqKLo','y2XP','tK9Fq09mt1i','DMfSAwrHDgvdB2XSzwn0Aw9UtMfTzq','BwfRzvj1BKLK','yNjHBMnO','DgLJA2v0CW','CgXHBKfKzfzHCMLHyMXL','ywjVCNrLza','vu5pvevtvf9kvurhrv9wt1rf','CNvUC0rPCKzVCG','CNvUBMvY','ztjL','CxvLDwvqCMLVCML0EvjHBMS','BwfUAwzLC3qUANnVBG','Aw50zxjYDxb0zwq','mZGZmZa3nuDLthvkva','ChjVDMLKzxi','BxvZDcbUB3qGyMuGzw1WDhK','A2LUza','yMXVyLjLBfnLz21LBNrZrM9Y','ChjVAMvJDfj1BKrPCKzVCG','vu5pvevtvf9tte9xx01p','C2HH','lY5Kzwj1z2DLCG','vu5pvevtvf9kvurhrv9srvrssuvt','vu5pvevtvf9buLrjrKfdvfnFuK9pva','yMXVyNnsB290rM9Y','nNrMtgPHBG','Dw5VDgvZDa','Aw52ywXPzc1Uyw1L','C29Tzq','C2vJCMv0C0nVBNrLBNq','uNvUBMvYqwrHChrLCK5VDezVDw5KrxjYB3i','Aw50zxjHy3rPDMu','CNvUrgLYrM9Y','igLZig5VDcbHigTUB3DUihj1BM5LCIbZzxr0Aw5NiokaLcbJAg9VC2uGB25LigzYB20GDgHLihj1BM5LCI1JB25MAwCGBgLZDc4','Dw5RBM93BI1LBNzPCM9UBwvUDa','C2HHCMreAxjgB3i','BMfTzq','CgfYC2vdAvj1BLjLC3bVBNnL','CxvLDwvK','CNvUswq','zgvZy3jPyMvcDw5KBgu','Dg9mB3DLCKnHC2u','CgfYC2vwyxjPywjSzuDHChm','AxnsDw5ZrgLYtMfTzq','C291CMnLCY5QC29U','mtq2ody2ueT6sxjo','CNvUswqGy2fYCMLLCYbUBYb0Aw1LC3rHBxaSignHBM5VDcbWBgfJzsbPDcbPBIbHihnOyxjKoIa','zxHHBxbSzq','y3j5ChrV','CMvWBgfJzq','C2vJCMv0CW','lMPZB25S','yNvUzgXLswq','BxvZDcbUB3qGC3rHCNqGD2L0AcaNxYCGkhjLC2vYDMvKkq','zMLUzeLUzgv4','DgvYBwLUywW','BwfPBNrLBMfUy2u','AwqTBwLZBwf0y2G','zMfPBgLUz1nPBMnL','ywrK','AxnuzxjTAw5HBfj1BNrPBwvtDgf0zq','zMfPBgvK','vu5pvevtvf9kvurhrv9bq0nfu1nFve9lru4','z2v0vvrdtw9UDgG','ChvZAa','yNvUzgXLlMPZB24','vu5pvevtvf9kvurhrv9ut0TftG','yM9VBgvHBG','C2fTCgXL','vu5pvevtvf9kvurhrv9nt0rfta','C3rHDhvZ','yxbP','Dw5RBM93BI1YDw5UzxiTA2v5','zMfPBfn0CMvHAW','vu5pvevtvf9mt0nbteu','zgvZy3jPyMvuAwnRzxrdAq','BxvZDcbUB3qGC3rHCNqGD2L0AcaNlIC','C2nLBMfYAw9szwzgCM9TrMLSzu5HBwu','Dw5VDgvZDc8Uzw52','l2fWAs9IB3GVyNvUzgXLCW','l2P1zgDL','CxvLDwvqCMLVCML0EuzYB21syw5R','vu5pvevtvf9mt0DFtevwruW','C3rVCMfNzq','AxnbC3nPz25Tzw50t2y','AxnfEhrLCM5HBfzHCK5HBwu','Aw5KzxHpzG','AxnszwnVCMq','DMfSAwrHDgvtzwDTzw50tMfTzq','DgvZDa','DgvTCgXHDgu','Ag9ZDa','C29YDa','vu5pvevtvf9ct1HFve9lru4','vu5pvevtvf9iruferuq','zw52','lNj1BNm','DhjPBq','vu5pvevtvf9ot19rvuvvrq','C2nOzw1HvMvYC2LVBG','CgfYC2vrDwv1zvrPy2TLDa','vu5pvevtvf9kvurhrv9nt0rf','CMfUAW','CgfYC2vfBNzdB250zw50','zw52q29UDgvUDa','mZa4zNLHthvM','zgvSzxrLu2HHzg93v2fYBMLUzW','zxHPC3rZ','yMXVyLjLBfbHDgHgB3i','CMvNzxHmAxrLCMfS','otCYnJK1nfDPvK9NCq','vu5pvevtvf9kvurhrv9usu1ft1vux01t','ChjVAMvJDfj1BNnsB290','Dw5VDgvZDc8UC2vJCMv0CW','Aw5JBhvKzxm','vu5pvevtvf9eruzbvuXux05bvKLhqvrjt05FveLnru9vvf9nuW','vu5pvevtvf9eruzbvuXux1rjtuvpvvrFtvm','vu5pvevtvf9kvurhrv9quKvbtujmrq','lMPZB24','iI4G','sw52ywXPzejSB2jiyxnOrxjYB3i','vu5pvevtvf9usu1fwK9orq','igLZigfSC28GC2v0igLUihvUB3rLC3qVlMvUDIdIGjqGDgHLihnLy3jLDcb2ywX1zsbUB3CGC2HHzg93CYbPDc4','C2vJCMv0C0zPBgvgB3i','zhvWBgLJyxrL','CgfYC2vcDw5KBgu','AxnrDwv1zurPCK5HBwu','vu5pvevtvf9erujvr19quKvwsuvxx0jzvevt','CgfYC2vbChbtzxj2zxjfDMvUDa','z2v0vvrdrgf0zq','x2nVBgXLy3rPB25Z','B2jQzwn0','C2XPy2u','CMvZzxj2zwrvBMrLCNnJB3jL','DgvZDerPCKzVCG','AxnjBNrLz2vY','y3jLyxrLzef0','zxHLyW','vu5pvevtvf9rvuvvrv9mruftrq','C2HHCMrqyxrOrM9YuNvUswq','vu5pvevtvf9orvrxt1jl','z2v0vvrdrNvSBfLLyxi','C3rHCNrZv2L0Aa','zw52rMLSzuzVCG','C2HHCMrqyxrOrM9YvgLTzxn0yw1W','BwnW','CgfYC2vhAxrjBMzV','yxbWlxnLCNzLCJPLCNjVCG','vu5pvevtvf9kvurhrv9vuKW','AxnbBM5VDgf0Aw9UtgLUzq','C2nOzwr1Bgu','CMfUzg9T','CNvUDgLTzs5QC29U','icH3AxaP','zxHWzwn0lwzHAwW','zgvIDwDNzxjgAwXLrM9Y','uNvUBMvY','lNDVCMTZCgfJzs5QC29U','zw52tMfTzxngCM9TrgLYtgLZDgLUzW','AxnsDw5UzxjdB25MAwDlzxK','Dw5RBM93BI1IDw5KBgu','y3jLyxrLza','CgfYC2vcDw5KBgvnyw5PzMvZDa','CMvNzxG','zxjYB3i','BwfRzvf1zxvLvgLJA2v0tMfTzq','yMXVyIbOyxnOig11C3qGyMuGBg93zxjJyxnLigHLEcWGz290oIa','vu5pvevtvf9dt05tt0Xf','CgfYC2vuAwnRzxrdAq','igLZigfSC28GC2v0igLUihLVDxiGC2HLBgWGzw52AxjVBM1LBNqG4OcuigL0ihDPBgWGA2vLCcbYzxnVBhzPBMCGzNjVBsb0AgvYzsaODgHLigvUDMLYB25Tzw50ihDPBNmGB3zLCIb0AguGzMLSzsKU','zgvMAw5LuhjVCgvYDhK','yxv0Ag9YAw5N','vu5pvevtvf9erujvr19lruvqx0nbteXt','zhvYyxrPB25nCW','AgfZ','CgfYC2vdAvj1BLjLCxvLC3q','vvrd','yxbWlxnLCNzLCJPYzxvZzwq','z2v0uMfUzg9TvMfSDwvZ','CMvXDwLYzvj1BKrPCKzVCG','iYaTls0G','nZm1mtbbu2XJCva','DMLLD2vY','z2L0AhvI','DMfSAwrHDgvgC1nHzMvoyw1L','CNvUBMvYici','vu5pvevtvf9erujvrW','CgfYC2vcDw5KBgvvCgXVywrszxnWB25Zzq','CgLK','C3rKzxjYlMXVzW','CxvLDwveAxjgB3i','vu5pvevtvf9kvurhrv9it1nu','vu5pvevtvf9kvurhrv9dquXmx1rjtuvpvvrFtvm','CNvU','AxngAw5PDgu','y29TBwfUzhmUANnVBMW','CgfYC2vdAvbYB3zPzgvY','C3rYAw5N','vu5pvevtvf9ftLy','CNvUswrtDgfYDgvKqxq','CgfKu3rHCNq','vu5pvevtvf9cvu5etevFsuq','lNzPzxDLCI5SB2nR','AxngywLSAw5Nu3rHDhvZ','y2fUBM90igXVywqGCNvUBMvYigfKyxb0zxiGiG','zgvIDwDeAxjgB3i','AM9PBG','x2rHEs5QC29UBa','mJC4nJGWzK9wD0PL','vw5WBgfJzwfIBgvsDw5jzevYCM9Y','ig11C3qGyMuGvvbqrvjFu05bs0uGkguUzY4Gqvbqx0jbu0vFvvjmksbZBYbHihnJzw5HCMLVignHBIbYzwzLCMvUy2uGAxqGyNKGBMfTzs4','C291CMnL','rK9sq0vFq09mt1i','vu5pvevtvf9dqunirv9esvi','vu5pvevtvf9kvurhrv9mt0DFtevwruW','vu5pvevtvf9qt1bvuf9huKfdrv9nuW','CgfYC2u','lNnLy3jLDhm','vu5pvevtvf9erujvr19nqvHFqLLurvm','CgfYC2vrDwv1zvrPy2TLDe5HBwu','ywn0AxzLrw52tMfTzq','BNvTyMvY','yxj0AwzHy3rZuM9VDezYB20','z2L0BgfI','x2XHDgvZDc5QC29U','zw5KC1DPDgG','C3rYAw5NtgLZDa','CgfYC2vty2vUyxjPB0fUBM90yxrPB25Z','Dg9tDhjPBMC','C2vJCMv0','yMXVyLbHDgHgB3i','AgvHCNrIzwf0','nJaZodeYr2THBfb4','yxbW','zNjLzxPL','x2jSB2jZ'];_0x2707=function(){return _0x105d41;};return _0x2707();}__name(makeQueueTicketName,_0x1f456e(0x12f));var TICKET_NAME_RE=/^([0-3])-([0-9a-z]+)-([0-9a-f]+)\.json$/;function parseQueueTicketName(_0x242b8e){const _0x45d307={_0x1bef9c:0x113,_0x5e4893:0x14c},_0x19fd1e=_0x1f456e,_0x5f4528=TICKET_NAME_RE[_0x19fd1e(_0x45d307._0x1bef9c)](_0x242b8e);if(!_0x5f4528)return null;const _0x209dd2=Number(_0x5f4528[0x1]),_0x47dfee=queuePriorityFromRank(_0x209dd2);if(_0x47dfee===null)return null;const _0x21a933=parseInt(_0x5f4528[0x2],0x24);if(!Number[_0x19fd1e(_0x45d307._0x5e4893)](_0x21a933))return null;return{'rank':_0x209dd2,'priority':_0x47dfee,'createdAt':_0x21a933,'random':_0x5f4528[0x3]};}__name(parseQueueTicketName,_0x1f456e(0x165));function compareQueueTicketNames(_0x10c928,_0x52127d){const _0xfe946d={_0x2fdbb:0xf0,_0x48facd:0xf0,_0x443698:0xf0,_0x4a787c:0x112,_0x180928:0x112,_0x29232e:0x121},_0x25772c=_0x1f456e,_0xf7d2a7=parseQueueTicketName(_0x10c928),_0x2dc934=parseQueueTicketName(_0x52127d);if(!_0xf7d2a7||!_0x2dc934)return _0x10c928<_0x52127d?-0x1:_0x10c928>_0x52127d?0x1:0x0;if(_0xf7d2a7['rank']!==_0x2dc934[_0x25772c(_0xfe946d._0x2fdbb)])return _0xf7d2a7[_0x25772c(_0xfe946d._0x48facd)]-_0x2dc934[_0x25772c(_0xfe946d._0x443698)];if(_0xf7d2a7[_0x25772c(0x112)]!==_0x2dc934[_0x25772c(_0xfe946d._0x4a787c)])return _0xf7d2a7[_0x25772c(0x112)]-_0x2dc934[_0x25772c(_0xfe946d._0x180928)];return _0xf7d2a7[_0x25772c(0x121)]<_0x2dc934[_0x25772c(0x121)]?-0x1:_0xf7d2a7[_0x25772c(_0xfe946d._0x29232e)]>_0x2dc934[_0x25772c(0x121)]?0x1:0x0;}__name(compareQueueTicketNames,_0x1f456e(0x185));var TICKET_KINDS=[_0x1f456e(0x176),'collection',_0x1f456e(0x135),_0x1f456e(0x1cd)],PRODUCER_KINDS=[_0x1f456e(0x193),_0x1f456e(0x140),_0x1f456e(0x11b),_0x1f456e(0x120),'ci'];function parseQueueTicket(_0x5183a7){const _0x2a17bd={_0x40abcf:0x187,_0x593a12:0xfc,_0x222e03:0x14c,_0xa73180:0xfc,_0x5aeefc:0x14f,_0x58487e:0x1c9,_0xaccbfc:0x1a5,_0xb0fc2d:0x146,_0x359f14:0x1f0},_0x8b9d9b=_0x1f456e;if(!isRecord(_0x5183a7))return null;const {schemaVersion:_0x40cf25,runId:_0x250366,kind:_0x307abd,ref:_0x3619a8,env:_0x4532b7,priority:_0x24788e,weight:_0x306679,producer:_0x437d1d,source:_0x476fea,ci:_0x56f617,createdAt:_0x538784}=_0x5183a7;if(_0x40cf25!==QUEUE_SCHEMA_VERSION)return null;if(typeof _0x250366!==_0x8b9d9b(0x14f)||_0x250366[_0x8b9d9b(_0x2a17bd._0x40abcf)]===0x0)return null;if(typeof _0x3619a8!==_0x8b9d9b(0x14f))return null;if(!TICKET_KINDS['includes'](_0x307abd))return null;if(!QUEUE_PRIORITIES[_0x8b9d9b(_0x2a17bd._0x593a12)](_0x24788e))return null;if(typeof _0x306679!=='number'||!Number[_0x8b9d9b(_0x2a17bd._0x222e03)](_0x306679)||_0x306679<0x1)return null;if(typeof _0x538784!==_0x8b9d9b(0x167)||!Number['isFinite'](_0x538784))return null;if(!isRecord(_0x437d1d))return null;if(!PRODUCER_KINDS[_0x8b9d9b(_0x2a17bd._0xa73180)](_0x437d1d['kind']))return null;if(typeof _0x437d1d['pid']!=='number'||typeof _0x437d1d[_0x8b9d9b(0x1f0)]!==_0x8b9d9b(_0x2a17bd._0x5aeefc))return null;if(_0x4532b7!==void 0x0&&typeof _0x4532b7!=='string')return null;let _0x2d3cec=null;if(_0x476fea!==void 0x0){if(!isRecord(_0x476fea)||typeof _0x476fea['bundleId']!=='string'||_0x476fea[_0x8b9d9b(_0x2a17bd._0x58487e)][_0x8b9d9b(_0x2a17bd._0x40abcf)]===0x0)return null;_0x2d3cec={'bundleId':_0x476fea[_0x8b9d9b(0x1c9)]};}let _0x1db3d5=null;if(_0x56f617!==void 0x0){_0x1db3d5=parseTicketCi(_0x56f617);if(_0x1db3d5===null)return null;}return{'schemaVersion':QUEUE_SCHEMA_VERSION,'runId':_0x250366,'kind':_0x307abd,'ref':_0x3619a8,'priority':_0x24788e,'weight':_0x306679,'producer':{'kind':_0x437d1d[_0x8b9d9b(_0x2a17bd._0xaccbfc)],'pid':_0x437d1d[_0x8b9d9b(_0x2a17bd._0xb0fc2d)],'host':_0x437d1d[_0x8b9d9b(_0x2a17bd._0x359f14)]},'createdAt':_0x538784,...typeof _0x4532b7===_0x8b9d9b(_0x2a17bd._0x5aeefc)?{'env':_0x4532b7}:{},..._0x2d3cec?{'source':_0x2d3cec}:{},..._0x1db3d5?{'ci':_0x1db3d5}:{}};}__name(parseQueueTicket,_0x1f456e(0xee));function parseTicketCi(_0x4d6814){const _0x4b90f0={_0x1a4a0c:0x1a3,_0x59912e:0x111,_0x2de4e1:0x14f,_0x8bacf2:0x167},_0x30092a=_0x1f456e;if(!isRecord(_0x4d6814))return null;const _0x2f66ad=parseCiProvider(_0x4d6814[_0x30092a(_0x4b90f0._0x1a4a0c)]);if(_0x2f66ad===null)return null;const {repo:_0x2469fb,branch:_0xa5801a,sha:_0x290778,pr:_0x439491,checkId:_0x3b2770}=_0x4d6814;for(const _0x43b716 of[_0x2469fb,_0xa5801a,_0x290778,_0x3b2770]){if(_0x43b716!==void 0x0&&typeof _0x43b716!=='string')return null;}if(_0x439491!==void 0x0&&(typeof _0x439491!=='number'||!Number[_0x30092a(_0x4b90f0._0x59912e)](_0x439491)))return null;return{'provider':_0x2f66ad,...typeof _0x2469fb===_0x30092a(0x14f)?{'repo':_0x2469fb}:{},...typeof _0xa5801a===_0x30092a(_0x4b90f0._0x2de4e1)?{'branch':_0xa5801a}:{},...typeof _0x290778===_0x30092a(0x14f)?{'sha':_0x290778}:{},...typeof _0x439491===_0x30092a(_0x4b90f0._0x8bacf2)?{'pr':_0x439491}:{},...typeof _0x3b2770==='string'?{'checkId':_0x3b2770}:{}};}__name(parseTicketCi,_0x1f456e(0x132));var BUNDLE_SCHEMA_VERSION=0x1,BUNDLE_MANIFEST_FILE=_0x1f456e(0x1d6),BUNDLE_UPLOAD_PATH=_0x1f456e(0x1e4),BOX_URL_ENV='UNOTEST_BOX_URL',BOX_TOKEN_ENV=_0x1f456e(0xe7),BUNDLE_ID_ENV=_0x1f456e(0x153);function parseGitInfo(_0x261804){const _0x321e14={_0x33a409:0x1d8,_0x55ec87:0x14f,_0x2b8144:0x14f},_0x1cc1ae=_0x1f456e;if(!isRecord(_0x261804))return null;const {repo:_0x1111f1,branch:_0x4f130f,sha:_0x2052f6,dirty:_0x51369d}=_0x261804;if(typeof _0x51369d!==_0x1cc1ae(_0x321e14._0x33a409))return null;for(const _0x123138 of[_0x1111f1,_0x4f130f,_0x2052f6]){if(_0x123138!==void 0x0&&typeof _0x123138!==_0x1cc1ae(_0x321e14._0x55ec87))return null;}return{'dirty':_0x51369d,...typeof _0x1111f1===_0x1cc1ae(_0x321e14._0x55ec87)?{'repo':_0x1111f1}:{},...typeof _0x4f130f===_0x1cc1ae(0x14f)?{'branch':_0x4f130f}:{},...typeof _0x2052f6===_0x1cc1ae(_0x321e14._0x2b8144)?{'sha':_0x2052f6}:{}};}__name(parseGitInfo,_0x1f456e(0x11c));function parseBundleManifest(_0x3b2213){const _0x563d3e={_0x168d2a:0x14f,_0x55055d:0x1ee,_0x3d96e4:0x14f,_0xa38849:0x14c,_0x398b35:0x111,_0x14a9c6:0x167,_0x53459d:0x187},_0x505d1e=_0x1f456e;if(!isRecord(_0x3b2213))return null;const {schemaVersion:_0x531279,bundleId:_0x266a5a,sha256:_0x54328d,createdAt:_0x4235d5,webVersion:_0x3aae9f,author:_0x527dde,git:_0x3a8ac2,fileCount:_0x166df4,byteSize:_0x5a0351,declaredVariables:_0x4fcbb2}=_0x3b2213;if(_0x531279!==BUNDLE_SCHEMA_VERSION)return null;if(typeof _0x266a5a!==_0x505d1e(_0x563d3e._0x168d2a)||_0x266a5a['length']===0x0)return null;if(_0x54328d!==void 0x0&&!/^[0-9a-f]{64}$/[_0x505d1e(_0x563d3e._0x55055d)](String(_0x54328d)))return null;if(typeof _0x3aae9f!==_0x505d1e(_0x563d3e._0x3d96e4)||_0x3aae9f[_0x505d1e(0x187)]===0x0)return null;if(typeof _0x4235d5!=='number'||!Number[_0x505d1e(_0x563d3e._0xa38849)](_0x4235d5))return null;if(typeof _0x166df4!=='number'||!Number[_0x505d1e(_0x563d3e._0x398b35)](_0x166df4))return null;if(typeof _0x5a0351!==_0x505d1e(_0x563d3e._0x14a9c6)||!Number['isInteger'](_0x5a0351))return null;if(_0x527dde!==void 0x0&&typeof _0x527dde!=='string')return null;let _0x10a0c5=null;if(_0x3a8ac2!==void 0x0){_0x10a0c5=parseGitInfo(_0x3a8ac2);if(_0x10a0c5===null)return null;}const _0x1e8b67=Array['isArray'](_0x4fcbb2)?_0x4fcbb2['filter'](_0xaecde5=>typeof _0xaecde5===_0x505d1e(0x14f)):[];return{'schemaVersion':BUNDLE_SCHEMA_VERSION,'bundleId':_0x266a5a,...typeof _0x54328d===_0x505d1e(0x14f)?{'sha256':_0x54328d}:{},'createdAt':_0x4235d5,'webVersion':_0x3aae9f,'fileCount':_0x166df4,'byteSize':_0x5a0351,...typeof _0x527dde==='string'?{'author':_0x527dde}:{},..._0x10a0c5?{'git':_0x10a0c5}:{},..._0x1e8b67[_0x505d1e(_0x563d3e._0x53459d)]>0x0?{'declaredVariables':_0x1e8b67}:{}};}__name(parseBundleManifest,_0x1f456e(0x12c));function describeBundle(_0x481d94){const _0x58b3fd={_0x1d5a67:0x183,_0x3f9d8d:0x1a9,_0x4635db:0x197},_0x2f77de=_0x1f456e,_0x220980=_0x481d94[_0x2f77de(_0x58b3fd._0x1d5a67)];if(!_0x220980||_0x220980['branch']===void 0x0&&_0x220980['sha']===void 0x0)return _0x481d94[_0x2f77de(0x1c9)];const _0x3ce3f7=_0x220980[_0x2f77de(_0x58b3fd._0x3f9d8d)]?_0x220980['sha']['slice'](0x0,0x7):'?',_0xbcd43d=_0x220980[_0x2f77de(_0x58b3fd._0x4635db)]??'?';return _0xbcd43d+'@'+_0x3ce3f7+(_0x220980['dirty']?_0x2f77de(0x123):'');}__name(describeBundle,_0x1f456e(0x1bd));var UPLOAD_ERROR_CODES=['unauthorized','too-large','malformed',_0x1f456e(0x1ce),'min-version','scope-mismatch',_0x1f456e(0x1e8)];function parseBundleUploadResponse(_0xb9631a){const _0x43febb={_0x50b7a9:0x12e,_0x37c558:0x14f,_0x4f7ebe:0xf5},_0x473324=_0x1f456e;if(!isRecord(_0xb9631a))return null;if(isRecord(_0xb9631a[_0x473324(_0x43febb._0x50b7a9)])){const {code:_0x41e445,message:_0x5780b6}=_0xb9631a[_0x473324(0x12e)];if(!UPLOAD_ERROR_CODES[_0x473324(0xfc)](_0x41e445))return null;if(typeof _0x5780b6!==_0x473324(_0x43febb._0x37c558))return null;return{'error':{'code':_0x41e445,'message':_0x5780b6}};}const {status:_0x438b64,bundleId:_0x478f3f}=_0xb9631a;if(_0x438b64!==_0x473324(0x12b)&&_0x438b64!==_0x473324(_0x43febb._0x4f7ebe))return null;if(typeof _0x478f3f!=='string'||_0x478f3f[_0x473324(0x187)]===0x0)return null;const _0x2d2826=parseVariableGaps(_0xb9631a['variableGaps']);return _0x2d2826===null?{'status':_0x438b64,'bundleId':_0x478f3f}:{'status':_0x438b64,'bundleId':_0x478f3f,'variableGaps':_0x2d2826};}__name(parseBundleUploadResponse,_0x1f456e(0x145));function parseVariableGaps(_0x4b68b3){const _0x56a4f1={_0xf792c5:0x18e,_0x1db080:0x14f,_0x249741:0x187},_0x1cc21f=_0x1f456e;if(!Array[_0x1cc21f(_0x56a4f1._0xf792c5)](_0x4b68b3))return null;const _0x7a9c98=[];for(const _0x59003d of _0x4b68b3){if(!isRecord(_0x59003d))continue;const {project:_0x32c7c9,environment:_0x17a6a7,missing:_0x48b473}=_0x59003d;if(typeof _0x32c7c9!==_0x1cc21f(_0x56a4f1._0x1db080)||typeof _0x17a6a7!==_0x1cc21f(_0x56a4f1._0x1db080))continue;if(!Array[_0x1cc21f(0x18e)](_0x48b473))continue;const _0x4473e5=_0x48b473['filter'](_0x29cb8d=>typeof _0x29cb8d==='string');if(_0x4473e5[_0x1cc21f(0x187)]>0x0)_0x7a9c98[_0x1cc21f(0x1d5)]({'project':_0x32c7c9,'environment':_0x17a6a7,'missing':_0x4473e5});}return _0x7a9c98[_0x1cc21f(_0x56a4f1._0x249741)]>0x0?_0x7a9c98:null;}__name(parseVariableGaps,_0x1f456e(0x1bf));var WORKSPACE_SCHEMA_VERSION=0x1,WORKSPACE_FILE=_0x1f456e(0x127);function stringList(_0x592518){const _0x5b7831={_0x5ba089:0x1b1},_0x51c88f=_0x1f456e;if(!Array[_0x51c88f(0x18e)](_0x592518))return null;if(_0x592518[_0x51c88f(_0x5b7831._0x5ba089)](_0x2f4112=>typeof _0x2f4112!=='string'))return null;return _0x592518;}__name(stringList,_0x1f456e(0x16c));function parseBundle(_0x23949a){const _0x5bf20c={_0x18c98e:0x14f,_0x2646a5:0x1d8,_0x35d740:0x167,_0x4c7e99:0x14f,_0x1f4f74:0x14f},_0x528e2e=_0x1f456e;if(!isRecord(_0x23949a))return null;const {bundleId:_0x1ff03a,label:_0x26c452,branch:_0x4b877d,sha:_0x474101,dirty:_0x5867ac,author:_0x4d4680,createdAt:_0x1f1e93,webVersion:_0x17aa99}=_0x23949a;if(typeof _0x1ff03a!==_0x528e2e(0x14f)||_0x1ff03a[_0x528e2e(0x187)]===0x0)return null;if(typeof _0x26c452!=='string'||typeof _0x17aa99!==_0x528e2e(_0x5bf20c._0x18c98e))return null;if(typeof _0x5867ac!==_0x528e2e(_0x5bf20c._0x2646a5))return null;if(typeof _0x1f1e93!==_0x528e2e(_0x5bf20c._0x35d740)||!Number[_0x528e2e(0x14c)](_0x1f1e93))return null;for(const _0x459d5e of[_0x4b877d,_0x474101,_0x4d4680]){if(_0x459d5e!==void 0x0&&typeof _0x459d5e!==_0x528e2e(_0x5bf20c._0x18c98e))return null;}return{'bundleId':_0x1ff03a,'label':_0x26c452,'dirty':_0x5867ac,'createdAt':_0x1f1e93,'webVersion':_0x17aa99,...typeof _0x4b877d===_0x528e2e(_0x5bf20c._0x4c7e99)?{'branch':_0x4b877d}:{},...typeof _0x474101===_0x528e2e(_0x5bf20c._0x1f4f74)?{'sha':_0x474101}:{},...typeof _0x4d4680==='string'?{'author':_0x4d4680}:{}};}__name(parseBundle,_0x1f456e(0x107));function parseWorkspaceFile(_0x1faf62){const _0x123f22={_0x4772e0:0x1d8,_0x11a473:0x167},_0x5d4120=_0x1f456e;if(!isRecord(_0x1faf62))return null;if(_0x1faf62[_0x5d4120(0xed)]!==WORKSPACE_SCHEMA_VERSION)return null;const {workspace:_0x3952f4,environment:_0x16143c,allowSwitch:_0x28c032,currentBundleId:_0x20a055,switchedBy:_0x29a259,switchedAt:_0x22a6c8,bundles:_0x27f269,variables:_0x41649f,secrets:_0x483deb,switchPath:_0x28b38a}=_0x1faf62;if(typeof _0x3952f4!=='string'||typeof _0x16143c!==_0x5d4120(0x14f))return null;if(typeof _0x28c032!==_0x5d4120(_0x123f22._0x4772e0))return null;if(!Array[_0x5d4120(0x18e)](_0x27f269))return null;const _0x5da384=[];for(const _0x54e02f of _0x27f269){const _0x7c3f44=parseBundle(_0x54e02f);if(!_0x7c3f44)return null;_0x5da384['push'](_0x7c3f44);}const _0x1facbc=stringList(_0x41649f),_0x271c24=stringList(_0x483deb);if(!_0x1facbc||!_0x271c24)return null;for(const _0x5576a8 of[_0x20a055,_0x29a259,_0x28b38a]){if(_0x5576a8!==void 0x0&&typeof _0x5576a8!==_0x5d4120(0x14f))return null;}if(_0x22a6c8!==void 0x0&&typeof _0x22a6c8!==_0x5d4120(0x167))return null;return{'schemaVersion':WORKSPACE_SCHEMA_VERSION,'workspace':_0x3952f4,'environment':_0x16143c,'allowSwitch':_0x28c032,'bundles':_0x5da384,'variables':_0x1facbc,'secrets':_0x271c24,...typeof _0x20a055===_0x5d4120(0x14f)?{'currentBundleId':_0x20a055}:{},...typeof _0x29a259===_0x5d4120(0x14f)?{'switchedBy':_0x29a259}:{},...typeof _0x22a6c8===_0x5d4120(_0x123f22._0x11a473)?{'switchedAt':_0x22a6c8}:{},...typeof _0x28b38a==='string'?{'switchPath':_0x28b38a}:{}};}__name(parseWorkspaceFile,'parseWorkspaceFile');function parseScheduleEntry(_0x3c93f5){const _0x295aaf={_0x10a3b5:0x14f,_0x32e837:0xeb,_0x245a95:0x167},_0x256310=_0x1f456e;if(!isRecord(_0x3c93f5))return null;const {collection:_0x241d4b,cron:_0x29396f,env:_0x570031,prepare:_0x306a09,workers:_0x245b27}=_0x3c93f5;if(typeof _0x241d4b!==_0x256310(0x14f)||_0x241d4b['length']===0x0)return null;if(typeof _0x29396f!==_0x256310(_0x295aaf._0x10a3b5)||_0x29396f[_0x256310(_0x295aaf._0x32e837)]()[_0x256310(0x187)]===0x0)return null;if(_0x570031!==void 0x0&&typeof _0x570031!==_0x256310(_0x295aaf._0x10a3b5))return null;if(_0x306a09!==void 0x0&&typeof _0x306a09!==_0x256310(_0x295aaf._0x10a3b5))return null;const _0x4668f2=typeof _0x245b27===_0x256310(_0x295aaf._0x245a95)&&Number['isInteger'](_0x245b27)&&_0x245b27>=0x1?_0x245b27:void 0x0;return{'collection':_0x241d4b,'cron':_0x29396f,..._0x570031!==void 0x0?{'env':_0x570031}:{},..._0x306a09!==void 0x0?{'prepare':_0x306a09}:{},..._0x4668f2!==void 0x0?{'workers':_0x4668f2}:{}};}__name(parseScheduleEntry,_0x1f456e(0x17a));function parseSchedulesJson(_0x2254c2){const _0x6039bc={_0x534947:0x1d5},_0x218bd8=_0x1f456e;let _0x527fd2;try{_0x527fd2=JSON[_0x218bd8(0x162)](_0x2254c2);}catch{return null;}if(!Array[_0x218bd8(0x18e)](_0x527fd2))return null;const _0x2034e4=[];for(const _0x4c2f9c of _0x527fd2){const _0x4b543f=parseScheduleEntry(_0x4c2f9c);if(_0x4b543f)_0x2034e4[_0x218bd8(_0x6039bc._0x534947)](_0x4b543f);}return _0x2034e4;}__name(parseSchedulesJson,'parseSchedulesJson');var BLOBS_DIR=_0x1f456e(0x175),GENERATION_SEP='~',HASH_RE=/^[0-9a-f]{8,}$/,InvalidBlobHashError=class extends Error{static{__name(this,_0x1f456e(0x102));}constructor(_0x184749){const _0x1673aa={_0x462817:0x102},_0x3475e0=_0x1f456e;super(_0x3475e0(0x130)+_0x184749),this[_0x3475e0(0x1b9)]=_0x3475e0(_0x1673aa._0x462817);}};function blobPathFor(_0x871821,_0x2e90b0,_0x3b09ed,_0x36f0fd=0x0){return _0x871821+'/'+blobRelPathFor(_0x2e90b0,_0x3b09ed,_0x36f0fd);}__name(blobPathFor,_0x1f456e(0x170));function blobRelSegmentsFor(_0x180487,_0xc79989,_0x1e87e7=0x0){const _0xb9df6b={_0x5a2ae8:0x1ee,_0x4938bd:0x10e},_0x437b4d=_0x1f456e;if(!HASH_RE[_0x437b4d(_0xb9df6b._0x5a2ae8)](_0x180487))throw new InvalidBlobHashError(_0x180487);const _0x1b9095=_0x1e87e7>0x0?''+GENERATION_SEP+_0x1e87e7:'';return[BLOBS_DIR,_0x180487[_0x437b4d(0x10e)](0x0,0x2),_0x180487[_0x437b4d(_0xb9df6b._0x4938bd)](0x2,0x4),''+_0x180487+_0x1b9095+'.'+_0xc79989];}__name(blobRelSegmentsFor,_0x1f456e(0x1a6));function blobRelPathFor(_0x3fbe57,_0x2103fe,_0x64c58c=0x0){const _0x406cc7={_0x5549ae:0x158},_0x3e2dba=_0x1f456e;return blobRelSegmentsFor(_0x3fbe57,_0x2103fe,_0x64c58c)[_0x3e2dba(_0x406cc7._0x5549ae)]('/');}__name(blobRelPathFor,_0x1f456e(0xf6));function blobsRootFor(_0x537a3e){return _0x537a3e+'/'+BLOBS_DIR;}__name(blobsRootFor,_0x1f456e(0x1ad));var FS_UNSAFE_NAME_RE=/[\\/:*?"<>|\x00-\x1f]/;function validateFsSafeName(_0x42e5bb,_0x1d2ba0){const _0x4c8f66={_0x13028d:0x177,_0x65edc9:0xeb,_0x1c4cab:0x1e1,_0x35eb64:0x10f},_0x28a157=_0x1f456e;if(typeof _0x42e5bb!==_0x28a157(0x14f))return _0x28a157(_0x4c8f66._0x13028d);const _0xc23e88=_0x42e5bb[_0x28a157(_0x4c8f66._0x65edc9)]();if(_0xc23e88['length']===0x0)return _0x28a157(0x1a4);if(_0xc23e88==='.'||_0xc23e88==='..')return'must\x20not\x20be\x20\x22.\x22\x20or\x20\x22..\x22';if(_0xc23e88[_0x28a157(0x118)]('.'))return _0x28a157(_0x4c8f66._0x1c4cab);if(_0x1d2ba0?.[_0x28a157(_0x4c8f66._0x35eb64)]&&_0xc23e88['startsWith']('_'))return _0x28a157(0x1ca);if(FS_UNSAFE_NAME_RE['test'](_0xc23e88))return'must\x20not\x20contain\x20\x5c\x20/\x20:\x20*\x20?\x20\x22\x20<\x20>\x20|\x20or\x20control\x20characters';return null;}__name(validateFsSafeName,_0x1f456e(0x142));var COLLECTION_NAME_FORBIDDEN_RE=FS_UNSAFE_NAME_RE;function validateCollectionName(_0x1409d8){return validateFsSafeName(_0x1409d8);}__name(validateCollectionName,_0x1f456e(0x195));var RUN_MANIFEST_FILE=_0x1f456e(0x1a0),RUN_SOURCES_FILE=_0x1f456e(0x1c1),UnsupportedRunKindError=class extends Error{static{__name(this,'UnsupportedRunKindError');}constructor(_0x53e73f,_0x433a37){const _0x3a0747=_0x1f456e;super(_0x3a0747(0x143)+_0x433a37+'\x22\x20does\x20not\x20support\x20run\x20kind\x20\x22'+_0x53e73f+'\x22'),this['name']='UnsupportedRunKindError';}},RunnerAdapterNotFoundError=class extends Error{static{__name(this,_0x1f456e(0x1b3));}constructor(_0x5e7412,_0x3f6242){const _0x12217c={_0x987318:0x156},_0x381793=_0x1f456e;super(_0x381793(_0x12217c._0x987318)+_0x5e7412+_0x381793(0x101)+_0x3f6242),this['name']=_0x381793(0x1b3);}},RunnerNotConfiguredError=class extends Error{static{__name(this,'RunnerNotConfiguredError');}constructor(_0x24381b){const _0x3c1833=_0x1f456e;super(_0x24381b),this[_0x3c1833(0x1b9)]=_0x3c1833(0x178);}},EXPECT_FAIL_ANNOTATION=_0x1f456e(0x124),ANNOTATION_RE=/^\s*\/\/\s*@([a-z0-9-]+)\s*$/;function isAnnotationLine(_0x1703a5){return ANNOTATION_RE['test'](_0x1703a5);}__name(isAnnotationLine,_0x1f456e(0x11f));function parseScenarioAnnotations(_0x5eb7d2){const _0x12bebb={_0x1bd2c8:0xeb,_0x14ed07:0x118,_0x4479d6:0x1d0},_0x3f4f51=_0x1f456e,_0x43cf61=new Set();for(const _0x504d40 of _0x5eb7d2['split'](/\r?\n/)){const _0x134b6f=_0x504d40[_0x3f4f51(_0x12bebb._0x1bd2c8)]();if(_0x134b6f==='')continue;if(!_0x134b6f[_0x3f4f51(_0x12bebb._0x14ed07)]('//'))break;const _0x11b46f=_0x134b6f['match'](ANNOTATION_RE);if(_0x11b46f)_0x43cf61[_0x3f4f51(_0x12bebb._0x4479d6)](_0x11b46f[0x1]);}return{'expectFail':_0x43cf61[_0x3f4f51(0x138)](EXPECT_FAIL_ANNOTATION)};}__name(parseScenarioAnnotations,_0x1f456e(0x16d));var SEGMENT_NAME_FORBIDDEN_RE=FS_UNSAFE_NAME_RE;function validateSegmentName(_0xda5703){return validateFsSafeName(_0xda5703,{'reservedUnderscore':!![]});}__name(validateSegmentName,_0x1f456e(0x1ed));var TERMINAL_WS_EVENT=_0x1f456e(0x1cc),RUNNER_CONFIG_KEYS=new Set(['UNOTEST_BROWSER',_0x1f456e(0xe8),_0x1f456e(0x1a8),_0x1f456e(0xfe),_0x1f456e(0xfd),_0x1f456e(0x161),_0x1f456e(0x1df),_0x1f456e(0x103),_0x1f456e(0x1e7),_0x1f456e(0x144),'UNOTEST_DEBUG_DIR',_0x1f456e(0x164),_0x1f456e(0x109),'UNOTEST_DEBUG_HTML_MAX_BYTES',_0x1f456e(0x136),_0x1f456e(0x116),_0x1f456e(0x131),_0x1f456e(0x15f),_0x1f456e(0x194),_0x1f456e(0x15e),_0x1f456e(0x190)]);function isRunnerConfigKey(_0x260be4){const _0x16c98b={_0xdb846:0x138},_0x3e627c=_0x1f456e;return RUNNER_CONFIG_KEYS[_0x3e627c(_0x16c98b._0xdb846)](_0x260be4);}__name(isRunnerConfigKey,_0x1f456e(0x129));function categorizeVariable(_0x44a8be){const _0x1844c1={_0x196617:0x15d,_0x26afe3:0x16f,_0x113085:0x19d},_0x4da939=_0x1f456e;if(_0x44a8be[_0x4da939(_0x1844c1._0x196617)]===_0x4da939(0x1c7))return _0x4da939(_0x1844c1._0x26afe3);return isRunnerConfigKey(_0x44a8be[_0x4da939(0x1b9)])?_0x4da939(_0x1844c1._0x113085):_0x4da939(0x173);}__name(categorizeVariable,'categorizeVariable');function isExternalVarName(_0x16936e){return/^[A-Z][A-Z0-9_]*$/['test'](_0x16936e);}__name(isExternalVarName,_0x1f456e(0x1ea));var ENV_KEY_RE=/^[A-Za-z_][A-Za-z0-9_]*$/;function*assignmentEntries(_0x31c166){const _0x1d2c78={_0x14c5fa:0x184,_0x336197:0x1eb,_0x39192f:0x1ee},_0x3d7df5=_0x1f456e;for(const _0x387503 of _0x31c166[_0x3d7df5(_0x1d2c78._0x14c5fa)](/\r?\n/)){const _0x6e9440=_0x387503['trim']();if(_0x6e9440===''||_0x6e9440[_0x3d7df5(0x118)]('#'))continue;const _0x340d5a=_0x6e9440[_0x3d7df5(_0x1d2c78._0x336197)]('=');if(_0x340d5a<=0x0)continue;const _0x8b7fd0=_0x6e9440[_0x3d7df5(0x10e)](0x0,_0x340d5a)['trim']();if(!ENV_KEY_RE[_0x3d7df5(_0x1d2c78._0x39192f)](_0x8b7fd0))continue;yield[_0x8b7fd0,_0x6e9440[_0x3d7df5(0x10e)](_0x340d5a+0x1)[_0x3d7df5(0xeb)]()];}}__name(assignmentEntries,_0x1f456e(0x18c));function parseEnvContent(_0x5a2793){const _0x423462=_0x1f456e,_0xf89c25={};for(const [_0x41d52e,_0x42d416]of assignmentEntries(_0x5a2793)){let _0x8ba335=_0x42d416;if(_0x8ba335['length']>=0x2){const _0x5d8f93=_0x8ba335[0x0],_0x2addea=_0x8ba335[_0x8ba335[_0x423462(0x187)]-0x1];(_0x5d8f93==='\x22'||_0x5d8f93==='\x27')&&_0x5d8f93===_0x2addea&&(_0x8ba335=_0x8ba335[_0x423462(0x10e)](0x1,-0x1));}_0xf89c25[_0x41d52e]=_0x8ba335;}return _0xf89c25;}__name(parseEnvContent,_0x1f456e(0xf1));function serializeEnvValue(_0x11157c){const _0x4098d1={_0x422cf5:0x1c6},_0x4cb5df=_0x1f456e;if(_0x11157c==='')return'';if(/[\s#"'=\\]|^[`]/[_0x4cb5df(0x1ee)](_0x11157c)||/[\n\r]/['test'](_0x11157c)){const _0x9aa512=_0x11157c['replace'](/\\/g,'\x5c\x5c')[_0x4cb5df(0x1c6)](/"/g,'\x5c\x22')[_0x4cb5df(_0x4098d1._0x422cf5)](/\n/g,'\x5cn')[_0x4cb5df(_0x4098d1._0x422cf5)](/\r/g,'\x5cr');return'\x22'+_0x9aa512+'\x22';}return _0x11157c;}__name(serializeEnvValue,_0x1f456e(0x17e));function envKeys(_0xceeec9){const _0x1e4346={_0x4b83b1:0x1d0},_0x3d64f3=_0x1f456e,_0x35b2a1=new Set();for(const [_0x4b44fd]of assignmentEntries(_0xceeec9))_0x35b2a1[_0x3d64f3(_0x1e4346._0x4b83b1)](_0x4b44fd);return _0x35b2a1;}__name(envKeys,_0x1f456e(0x17d));function isSectionDivider(_0x4c9756){const _0x14144e={_0x47a3cb:0x1ee},_0x5d8553=_0x1f456e,_0x2c9d10=_0x4c9756[_0x5d8553(0xeb)]();return _0x2c9d10['startsWith']('#')&&/---/[_0x5d8553(_0x14144e._0x47a3cb)](_0x2c9d10);}__name(isSectionDivider,'isSectionDivider');function isAssignmentLine(_0x37cdca){const _0x431558={_0x3f32c8:0x118,_0x630781:0x1eb,_0x383753:0xeb},_0x562670=_0x1f456e,_0x247000=_0x37cdca['trim']();if(_0x247000===''||_0x247000[_0x562670(_0x431558._0x3f32c8)]('#'))return![];const _0x27bd85=_0x247000[_0x562670(_0x431558._0x630781)]('=');return _0x27bd85>0x0&&ENV_KEY_RE['test'](_0x247000[_0x562670(0x10e)](0x0,_0x27bd85)[_0x562670(_0x431558._0x383753)]());}__name(isAssignmentLine,'isAssignmentLine');function isAssignmentOf(_0x36fb5e,_0x1c1eed){const _0x4a4b31={_0x5c41bd:0x118,_0x328fd6:0x1eb},_0x32694b=_0x1f456e,_0x458201=_0x36fb5e['trim']();if(_0x458201===''||_0x458201[_0x32694b(_0x4a4b31._0x5c41bd)]('#'))return![];const _0x1c1090=_0x458201[_0x32694b(_0x4a4b31._0x328fd6)]('=');if(_0x1c1090<=0x0)return![];return _0x458201['slice'](0x0,_0x1c1090)[_0x32694b(0xeb)]()===_0x1c1eed;}__name(isAssignmentOf,_0x1f456e(0x1e9));function splitLines(_0x159ed2){const _0x147510={_0x417251:0x16b},_0xbf8684=_0x1f456e,_0x4c625e=_0x159ed2[_0xbf8684(_0x147510._0x417251)]('\x0a'),_0x1fdf94=_0x4c625e?_0x159ed2[_0xbf8684(0x10e)](0x0,-0x1):_0x159ed2;return{'lines':_0x1fdf94===''?[]:_0x1fdf94[_0xbf8684(0x184)]('\x0a'),'trailingNewline':_0x4c625e};}__name(splitLines,'splitLines');function joinLines(_0x3ac6ce,_0x108815){const _0x40e818={_0x4c6062:0x158},_0x5daef7=_0x1f456e,_0x1285b7=_0x3ac6ce[_0x5daef7(_0x40e818._0x4c6062)]('\x0a');return _0x108815||_0x1285b7===''?_0x1285b7+'\x0a':_0x1285b7;}__name(joinLines,'joinLines');function insertEnvVar(_0x5c790a,_0x87c8e0,_0xa99877,_0x34f6bf){const _0x4d515c={_0x4e5755:0x1cb,_0x251fd5:0x187,_0xf5f54c:0x187,_0x587ddd:0x1d5},_0x545c35=_0x1f456e,_0x143576=_0x87c8e0+'='+serializeEnvValue(_0xa99877),{lines:_0x5b339d,trailingNewline:_0x3a3285}=splitLines(_0x5c790a);if(_0x34f6bf){const _0x4b582b=new RegExp('\x5cb'+_0x34f6bf[_0x545c35(0x1be)]()+'\x5cb'),_0x712f95=_0x5b339d[_0x545c35(_0x4d515c._0x4e5755)](_0x1d0275=>isSectionDivider(_0x1d0275)&&_0x4b582b[_0x545c35(0x1ee)](_0x1d0275['toLowerCase']()));if(_0x712f95!==-0x1){let _0x246d2e=_0x5b339d[_0x545c35(_0x4d515c._0x251fd5)];for(let _0x21b0b0=_0x712f95+0x1;_0x21b0b0<_0x5b339d['length'];_0x21b0b0++){if(isSectionDivider(_0x5b339d[_0x21b0b0])){_0x246d2e=_0x21b0b0;break;}}let _0x312bff=-0x1,_0x5d918f=-0x1;for(let _0x3b2834=_0x712f95+0x1;_0x3b2834<_0x246d2e;_0x3b2834++){if(_0x5b339d[_0x3b2834]['trim']()!=='')_0x5d918f=_0x3b2834;if(isAssignmentLine(_0x5b339d[_0x3b2834]))_0x312bff=_0x3b2834;}const _0x151b19=_0x312bff>=0x0?_0x312bff:_0x5d918f,_0x428d60=_0x151b19>=0x0?_0x151b19+0x1:_0x712f95+0x1;return _0x5b339d['splice'](_0x428d60,0x0,_0x143576),joinLines(_0x5b339d,_0x3a3285||_0x5b339d[_0x545c35(_0x4d515c._0xf5f54c)]>0x0);}if(_0x5b339d[_0x545c35(0x187)]>0x0)_0x5b339d[_0x545c35(_0x4d515c._0x587ddd)]('');return _0x5b339d['push'](_0x545c35(0x13e)+_0x34f6bf+'\x20---',_0x143576),joinLines(_0x5b339d,!![]);}return _0x5b339d[_0x545c35(0x1d5)](_0x143576),joinLines(_0x5b339d,!![]);}__name(insertEnvVar,_0x1f456e(0x18d));function removeEnvVar(_0x230d3b,_0xe7b953){const _0xac832f={_0x204efa:0x187,_0x4ef7e9:0x187},_0x54df3a=_0x1f456e,{lines:_0x5979e3,trailingNewline:_0x3f7b51}=splitLines(_0x230d3b),_0x527f6e=_0x5979e3['filter'](_0x2a9bc0=>!isAssignmentOf(_0x2a9bc0,_0xe7b953)),_0x4f3927=_0x527f6e[_0x54df3a(_0xac832f._0x204efa)]!==_0x5979e3[_0x54df3a(_0xac832f._0x4ef7e9)];return{'content':joinLines(_0x527f6e,_0x3f7b51),'removed':_0x4f3927};}__name(removeEnvVar,_0x1f456e(0x180));var SECTION_BY_KIND={'app':_0x1f456e(0x182),'runner':_0x1f456e(0x126),'secret':void 0x0};function planAddVariable(_0x2fd052){const _0x43f906={_0x1cf3f4:0x19d,_0x9a0b37:0xf2,_0x26e4c3:0x138,_0x457cea:0x1b2,_0x34ef75:0x138,_0x3435ec:0x16f,_0x538b3b:0xfb,_0x1a4a91:0x16f,_0x105cb6:0x104},_0x3100ff=_0x1f456e,{name:_0x53f312,kind:_0x30441c}=_0x2fd052;if(_0x30441c===_0x3100ff(_0x43f906._0x1cf3f4)){if(!isRunnerConfigKey(_0x53f312))return{'ok':![],'code':_0x3100ff(0x1dd),'message':_0x53f312+_0x3100ff(0x1b6)};}else{if(!isExternalVarName(_0x53f312))return{'ok':![],'code':_0x3100ff(0x1b0),'message':_0x53f312+_0x3100ff(0x15c)};}const _0x4351b5=envKeys(_0x2fd052[_0x3100ff(_0x43f906._0x9a0b37)])[_0x3100ff(_0x43f906._0x26e4c3)](_0x53f312),_0x1acb97=envKeys(_0x2fd052[_0x3100ff(_0x43f906._0x457cea)])[_0x3100ff(_0x43f906._0x34ef75)](_0x53f312),_0xc61f47=_0x30441c===_0x3100ff(_0x43f906._0x3435ec)?'secrets':_0x3100ff(0xe9),_0x4d1950=_0xc61f47===_0x3100ff(0x1c7)?_0x1acb97:_0x4351b5,_0x4c27c4=_0xc61f47===_0x3100ff(0x1c7)?_0x3100ff(_0x43f906._0x538b3b):_0x3100ff(0x1e3);if(_0x4d1950)return{'ok':![],'code':_0x3100ff(0x106),'message':_0x53f312+'\x20already\x20exists\x20in\x20'+_0x4c27c4+'\x20—\x20pick\x20a\x20different\x20name\x20or\x20edit\x20the\x20existing\x20value.'};const _0xa118d9=[];return _0x30441c===_0x3100ff(_0x43f906._0x1a4a91)&&_0x4351b5&&_0xa118d9[_0x3100ff(0x1d5)](_0x53f312+_0x3100ff(_0x43f906._0x105cb6)),_0x30441c!=='secret'&&_0x1acb97&&_0xa118d9['push'](_0x53f312+'\x20is\x20also\x20set\x20in\x20unotest/.secrets\x20—\x20the\x20secret\x20value\x20shadows\x20this\x20one.'),{'ok':!![],'target':_0xc61f47,'sectionLabel':SECTION_BY_KIND[_0x30441c],'warnings':_0xa118d9};}__name(planAddVariable,_0x1f456e(0x199));function deleteShadowWarning(_0x10757c,_0xc6e91c,_0xc43936){const _0x8898cc=_0x1f456e;if(_0xc43936!==void 0x0&&_0xc43936!==_0xc6e91c)return[_0x10757c+_0x8898cc(0x133)];return[];}__name(deleteShadowWarning,_0x1f456e(0xf4));var TERMINAL_RUNTIME_STATES=[_0x1f456e(0x188),_0x1f456e(0x1d2),_0x1f456e(0x19a)];function isTerminalRuntimeState(_0x4eef8a){const _0x2034d9={_0x4301de:0xfc},_0x202945=_0x1f456e;return TERMINAL_RUNTIME_STATES[_0x202945(_0x2034d9._0x4301de)](_0x4eef8a);}__name(isTerminalRuntimeState,_0x1f456e(0x1d1));var JUDGE_ROUTES={'judge':_0x1f456e(0x1e5),'health':_0x1f456e(0x17f)},JUDGE_ENV={'mode':_0x1f456e(0xef),'url':_0x1f456e(0x11e),'token':_0x1f456e(0x1d7),'requestTimeoutMs':_0x1f456e(0xf9),'preamble':_0x1f456e(0xff),'provider':'UNOTEST_JUDGE_PROVIDER','model':_0x1f456e(0x1da),'callTimeoutMs':_0x1f456e(0x14a),'retries':_0x1f456e(0x1ab),'vote':_0x1f456e(0x19b),'accessToken':_0x1f456e(0x1d3),'claudeBin':_0x1f456e(0x192),'host':_0x1f456e(0x149),'port':'UNOTEST_JUDGE_PORT','logLevel':_0x1f456e(0x160),'skipPreflight':'UNOTEST_JUDGE_SKIP_PREFLIGHT'};export{ARTIFACTS_ROOT_ENV,BLOBS_DIR,BOX_TOKEN_ENV,BOX_URL_ENV,BUNDLE_ID_ENV,BUNDLE_MANIFEST_FILE,BUNDLE_SCHEMA_VERSION,BUNDLE_UPLOAD_PATH,CI_RUN_PATH,COLLECTIONS_SUBDIR,COLLECTION_NAME_FORBIDDEN_RE,COMMANDS_FILE,DAY_INDEX_FILE,E2E_SUBDIR,ENV_FILE,EXPECT_FAIL_ANNOTATION,HEARTBEAT_FILE,HELPERS_SUBDIR,InvalidBlobHashError,JUDGE_ENV,JUDGE_ROUTES,LOCK_FILE,LOG_FILE,PICKER_SNAPSHOT_FILE,QUEUE_DISABLED_ENV,QUEUE_GLOBAL_DIR_ENV,QUEUE_GLOBAL_SLOTS_ENV,QUEUE_LEASE_ENV,QUEUE_MUTEX_FILE,QUEUE_PRIORITIES,QUEUE_RUNNING_DIR,QUEUE_SCHEMA_VERSION,QUEUE_SLOTS_DIR,QUEUE_SUBDIR,QUEUE_TICKETS_DIR,RUNNER_CONFIG_KEYS,RUNS_SUBDIR,RUNTIME_FILE,RUN_INDEX_SCHEMA_VERSION,RUN_MANIFEST_FILE,RUN_SOURCES_FILE,RunnerAdapterNotFoundError,RunnerNotConfiguredError,SCENARIOS_INDEX_DIR,SCENARIOS_LATEST_FILE,SCENARIO_RECENT_WINDOW,SECRETS_FILE,SEGMENT_NAME_FORBIDDEN_RE,SNAPSHOTS_SUBDIR,STDERR_FILE,STDOUT_FILE,STEPS_FILE,TERMINAL_RUNTIME_STATES,TERMINAL_WS_EVENT,UNOTEST_DIR,UnplaceableRunIdError,UnsupportedRunKindError,WORKSPACE_FILE,WORKSPACE_SCHEMA_VERSION,activeEnvName,artifactsRootFrom,blobPathFor,blobRelPathFor,blobRelSegmentsFor,blobsRootFor,categorizeVariable,compareQueueTicketNames,debugDirFor,debuggerFileFor,deleteShadowWarning,describeBundle,describeTicketCi,envFileFor,envKeys,envLayerFilesFor,envNamesFromDirListing,foldScenarioRun,insertEnvVar,isAnnotationLine,isExternalVarName,isFailingStatus,isQueueDirName,isRecord,isRegexLiteral,isRunnerConfigKey,isRunsDirName,isTerminalRuntimeState,makeQueueTicketName,makeRunId,parseAppServerEvent,parseBundleManifest,parseBundleUploadResponse,parseCiProvider,parseCiRunRequest,parseCiRunResponse,parseEnvContent,parseQueueTicket,parseQueueTicketName,parseScenarioAnnotations,parseScheduleEntry,parseSchedulesJson,parseWorkspaceFile,planAddVariable,projectQueueRoot,projectRunDirFor,projectRunsRoot,queueDirFor,queuePriorityFromRank,queuePriorityRank,regexLiteral,removeEnvVar,requireRunDirFor,runDirFor,runIdStartedAt,runsDirFor,sanitizeRunIdSegment,scenarioIndexFileName,scenarioRefFromFileName,secretsFileFor,secretsLayerFilesFor,serializeEnvValue,shardDaysDescending,shardDirFor,shardPathForRunId,shardPathForTimestamp,testDirFor,validateCollectionName,validateSegmentName};
|
|
1
|
+
const _0x1cbcb3=_0x22ae;(function(_0x845f7a,_0xc6526a){const _0x3be8e5={_0x5bd178:0x161,_0xa221ef:0x21a,_0xa794f8:0x1bb,_0x1be1b1:0x17d,_0x3fe546:0x191,_0x5a31b5:0x21e},_0x2cc997=_0x22ae,_0x2899a9=_0x845f7a();while(!![]){try{const _0x156172=-parseInt(_0x2cc997(0x221))/0x1+parseInt(_0x2cc997(0x231))/0x2+parseInt(_0x2cc997(_0x3be8e5._0x5bd178))/0x3*(-parseInt(_0x2cc997(_0x3be8e5._0xa221ef))/0x4)+parseInt(_0x2cc997(0x1ff))/0x5+-parseInt(_0x2cc997(_0x3be8e5._0xa794f8))/0x6+parseInt(_0x2cc997(0x1e3))/0x7*(-parseInt(_0x2cc997(_0x3be8e5._0x1be1b1))/0x8)+-parseInt(_0x2cc997(_0x3be8e5._0x3fe546))/0x9*(-parseInt(_0x2cc997(_0x3be8e5._0x5a31b5))/0xa);if(_0x156172===_0xc6526a)break;else _0x2899a9['push'](_0x2899a9['shift']());}catch(_0x4bd26f){_0x2899a9['push'](_0x2899a9['shift']());}}}(_0x28d7,0xbdff3));var __defProp=Object[_0x1cbcb3(0x1fe)],__name=(_0x168e35,_0x86ec57)=>__defProp(_0x168e35,_0x1cbcb3(0x27a),{'value':_0x86ec57,'configurable':!![]});function parseAppServerEvent(_0x48bcb6){const _0x519f8c={_0x557f1d:0x200,_0x261c30:0x219,_0x247771:0x19f},_0x19bc67=_0x1cbcb3,_0x2e2af3=_0x48bcb6[_0x19bc67(0x22b)]();if(!_0x2e2af3[_0x19bc67(_0x519f8c._0x557f1d)]('{'))return null;try{const _0x34fa98=JSON[_0x19bc67(0x1e7)](_0x2e2af3);if(_0x34fa98[_0x19bc67(0x219)]===_0x19bc67(0x238)||_0x34fa98[_0x19bc67(_0x519f8c._0x261c30)]===_0x19bc67(0x261)||_0x34fa98[_0x19bc67(0x219)]===_0x19bc67(_0x519f8c._0x247771))return _0x34fa98;return null;}catch{return null;}}__name(parseAppServerEvent,_0x1cbcb3(0x16f));function isRecord(_0x34c811){const _0x51d77c=_0x1cbcb3;return typeof _0x34c811===_0x51d77c(0x187)&&_0x34c811!==null&&!Array['isArray'](_0x34c811);}__name(isRecord,_0x1cbcb3(0x205));var UNOTEST_DIR=_0x1cbcb3(0x14d),E2E_SUBDIR=_0x1cbcb3(0x236),HELPERS_SUBDIR=_0x1cbcb3(0x193),COLLECTIONS_SUBDIR=_0x1cbcb3(0x249),RUNS_SUBDIR=_0x1cbcb3(0x1e8),SNAPSHOTS_SUBDIR=_0x1cbcb3(0x246);function testDirFor(_0xd29284){return''+E2E_SUBDIR+_0xd29284;}__name(testDirFor,_0x1cbcb3(0x1b2));function runsDirFor(_0x42ad71,_0x1272be){return''+RUNS_SUBDIR+_0x42ad71+(_0x1272be?'.'+_0x1272be:'');}__name(runsDirFor,_0x1cbcb3(0x21c));function isRunsDirName(_0x442cf5){const _0x43db8a={_0x348d0e:0x200},_0x5914f7=_0x1cbcb3;return _0x442cf5===RUNS_SUBDIR||_0x442cf5[_0x5914f7(0x200)](RUNS_SUBDIR+'-')||_0x442cf5[_0x5914f7(_0x43db8a._0x348d0e)](RUNS_SUBDIR+'.');}__name(isRunsDirName,_0x1cbcb3(0x270));function debugDirFor(_0x255b15){const _0x344af4=_0x1cbcb3;return _0x344af4(0x260)+_0x255b15;}__name(debugDirFor,_0x1cbcb3(0x179));function debuggerFileFor(_0x102b7a){const _0x5fa1c4={_0x5ca589:0x1f0},_0x1ecfa1=_0x1cbcb3;return UNOTEST_DIR+_0x1ecfa1(_0x5fa1c4._0x5ca589)+_0x102b7a+_0x1ecfa1(0x163);}__name(debuggerFileFor,'debuggerFileFor');var LOCK_FILE=_0x1cbcb3(0x15f),LOG_FILE='.viewer.log',STEPS_FILE='steps.jsonl',HEARTBEAT_FILE='heartbeat',DAY_INDEX_FILE=_0x1cbcb3(0x1cd),SCENARIOS_INDEX_DIR=_0x1cbcb3(0x262),SCENARIOS_LATEST_FILE='_latest.json',STDOUT_FILE=_0x1cbcb3(0x25d),STDERR_FILE=_0x1cbcb3(0x263),COMMANDS_FILE=_0x1cbcb3(0x23d),RUNTIME_FILE=_0x1cbcb3(0x256),PICKER_SNAPSHOT_FILE=_0x1cbcb3(0x220),ENV_FILE=_0x1cbcb3(0x1e9),SECRETS_FILE=_0x1cbcb3(0x188),SCHEDULES_FILE=_0x1cbcb3(0x1c6);function envFileFor(_0x24ed1b,_0x1eaf9d){return''+ENV_FILE+_0x24ed1b+(_0x1eaf9d?'.'+_0x1eaf9d:'');}__name(envFileFor,'envFileFor');function secretsFileFor(_0x31307e,_0x369bc9){return''+SECRETS_FILE+_0x31307e+(_0x369bc9?'.'+_0x369bc9:'');}__name(secretsFileFor,'secretsFileFor');function envLayerFilesFor(_0x2636e1,_0x2788f1){return layersFor(ENV_FILE,_0x2636e1,_0x2788f1);}__name(envLayerFilesFor,'envLayerFilesFor');function secretsLayerFilesFor(_0x132c6a,_0x5f39b3){return layersFor(SECRETS_FILE,_0x132c6a,_0x5f39b3);}__name(secretsLayerFilesFor,_0x1cbcb3(0x25b));function layersFor(_0x18f199,_0x53437d,_0x463da3){const _0x200378={_0x1dd01a:0x258},_0x2f0214=_0x1cbcb3,_0x5eba27=[_0x18f199];if(_0x53437d)_0x5eba27[_0x2f0214(0x258)](''+_0x18f199+_0x53437d);if(_0x463da3){_0x5eba27[_0x2f0214(_0x200378._0x1dd01a)](_0x18f199+'.'+_0x463da3);if(_0x53437d)_0x5eba27[_0x2f0214(0x258)](''+_0x18f199+_0x53437d+'.'+_0x463da3);}return _0x5eba27;}__name(layersFor,_0x1cbcb3(0x22d));var ARTIFACTS_ROOT_ENV=_0x1cbcb3(0x141);function artifactsRootFrom(_0x44b06f,_0x50fc55){const _0x28f195=_0x44b06f[ARTIFACTS_ROOT_ENV]?.['trim']();return _0x28f195?_0x28f195:_0x50fc55;}__name(artifactsRootFrom,_0x1cbcb3(0x223));function activeEnvName(_0x516610){const _0x11a604={_0x475cb3:0x19c,_0x34a593:0x22b},_0x2e4f43=_0x1cbcb3,_0x329c39=_0x516610[_0x2e4f43(_0x11a604._0x475cb3)]?.[_0x2e4f43(_0x11a604._0x34a593)]();return _0x329c39?_0x329c39:void 0x0;}__name(activeEnvName,_0x1cbcb3(0x239));var RESERVED_ENV_NAMES=new Set([_0x1cbcb3(0x143),'sample','template']);function envNamesFromDirListing(_0x3b734d,_0x5f1f47){const _0x3c3457={_0x164585:0x16b,_0x5c9d06:0x1e6,_0x56b930:0x26c,_0x579fac:0x1c5,_0x340c85:0x1cb},_0x37d93e=_0x1cbcb3,_0x3cc89d=[_0x37d93e(_0x3c3457._0x164585),'.secrets'][_0x37d93e(_0x3c3457._0x5c9d06)](_0x849724=>_0x5f1f47?[_0x849724,''+_0x849724+_0x5f1f47]:[_0x849724]),_0x5267b5=new Set();for(const _0x503032 of _0x3b734d){for(const _0x43079a of _0x3cc89d){const _0x23e2ba=_0x43079a+'.';if(!_0x503032['startsWith'](_0x23e2ba))continue;const _0xf91e50=_0x503032[_0x37d93e(_0x3c3457._0x56b930)](_0x23e2ba[_0x37d93e(0x242)]);if(!_0xf91e50||_0xf91e50[_0x37d93e(0x235)]('/'))continue;if(RESERVED_ENV_NAMES['has'](_0xf91e50))continue;_0x5267b5[_0x37d93e(_0x3c3457._0x579fac)](_0xf91e50);}}return[..._0x5267b5][_0x37d93e(_0x3c3457._0x340c85)]();}__name(envNamesFromDirListing,_0x1cbcb3(0x248));function isRegexLiteral(_0x22edcc){const _0x3831a5={_0x27dd14:0x187,_0xafa63d:0x1d6,_0x1d73dc:0x24a},_0x5dd1f6=_0x1cbcb3;return typeof _0x22edcc===_0x5dd1f6(_0x3831a5._0x27dd14)&&_0x22edcc!==null&&_0x22edcc[_0x5dd1f6(0x219)]===_0x5dd1f6(_0x3831a5._0xafa63d)&&typeof _0x22edcc[_0x5dd1f6(0x15b)]===_0x5dd1f6(0x201)&&typeof _0x22edcc[_0x5dd1f6(_0x3831a5._0x1d73dc)]===_0x5dd1f6(0x201);}__name(isRegexLiteral,'isRegexLiteral');function regexLiteral(_0x1257a8,_0x4073cf=''){const _0x449ceb=_0x1cbcb3;return{'kind':_0x449ceb(0x1d6),'source':_0x1257a8,'flags':_0x4073cf};}__name(regexLiteral,_0x1cbcb3(0x196));var RAND_BYTES=0x6;function makeRunId(_0x27fdee){const _0x467a83={_0x164c60:0x173,_0x2c1010:0x23b,_0x4ff868:0x242},_0x396dfd=_0x1cbcb3,_0x3dd78f=sanitizeRunIdSegment(_0x27fdee),_0x157a14=Date['now']()[_0x396dfd(_0x467a83._0x164c60)](0x24),_0x2a0dee=new Uint8Array(RAND_BYTES);globalThis[_0x396dfd(_0x467a83._0x2c1010)][_0x396dfd(0x198)](_0x2a0dee);let _0x5c4b5e='';for(let _0x1b8632=0x0;_0x1b8632<_0x2a0dee[_0x396dfd(_0x467a83._0x4ff868)];_0x1b8632++){_0x5c4b5e+=_0x2a0dee[_0x1b8632][_0x396dfd(0x173)](0x10)[_0x396dfd(0x1f1)](0x2,'0');}return _0x3dd78f+'-'+_0x157a14+'-'+_0x5c4b5e;}function _0x22ae(_0x15ac9a,_0x197996){_0x15ac9a=_0x15ac9a-0x13a;const _0x28d704=_0x28d7();let _0x22ae30=_0x28d704[_0x15ac9a];if(_0x22ae['XGvXBH']===undefined){var _0x1fee54=function(_0x9ff539){const _0x39e73f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x168e35='',_0x86ec57='';for(let _0x48bcb6=0x0,_0x2e2af3,_0x34fa98,_0x34c811=0x0;_0x34fa98=_0x9ff539['charAt'](_0x34c811++);~_0x34fa98&&(_0x2e2af3=_0x48bcb6%0x4?_0x2e2af3*0x40+_0x34fa98:_0x34fa98,_0x48bcb6++%0x4)?_0x168e35+=String['fromCharCode'](0xff&_0x2e2af3>>(-0x2*_0x48bcb6&0x6)):0x0){_0x34fa98=_0x39e73f['indexOf'](_0x34fa98);}for(let _0xd29284=0x0,_0x42ad71=_0x168e35['length'];_0xd29284<_0x42ad71;_0xd29284++){_0x86ec57+='%'+('00'+_0x168e35['charCodeAt'](_0xd29284)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x86ec57);};_0x22ae['liVsGr']=_0x1fee54,_0x22ae['OPQzpl']={},_0x22ae['XGvXBH']=!![];}const _0x31fb81=_0x28d704[0x0],_0x5cce8f=_0x15ac9a+_0x31fb81,_0xdad0d5=_0x22ae['OPQzpl'][_0x5cce8f];return!_0xdad0d5?(_0x22ae30=_0x22ae['liVsGr'](_0x22ae30),_0x22ae['OPQzpl'][_0x5cce8f]=_0x22ae30):_0x22ae30=_0xdad0d5,_0x22ae30;}__name(makeRunId,_0x1cbcb3(0x225));function sanitizeRunIdSegment(_0x50495){const _0x5cca29={_0xd5da43:0x1af},_0xb2ecdf=_0x1cbcb3,_0x57e9db=_0x50495['replace'](/[^a-zA-Z0-9_-]+/g,'-')[_0xb2ecdf(_0x5cca29._0xd5da43)](/-+/g,'-')[_0xb2ecdf(_0x5cca29._0xd5da43)](/^-|-$/g,'');return _0x57e9db[_0xb2ecdf(0x242)]>0x0?_0x57e9db:'run';}__name(sanitizeRunIdSegment,_0x1cbcb3(0x279));var RANDOM_SUFFIX_RE=/^[0-9a-f]{6,}$/,MIN_PLAUSIBLE_MS=Date[_0x1cbcb3(0x17f)](0x7e4,0x0,0x1),MAX_PLAUSIBLE_MS=Date[_0x1cbcb3(0x17f)](0x834,0x0,0x1);function runIdStartedAt(_0x343a98){const _0x512052={_0x5d0646:0x242,_0x3602bf:0x240},_0x212d68=_0x1cbcb3,_0x1e1e28=_0x343a98['split']('-');if(_0x1e1e28[_0x212d68(_0x512052._0x5d0646)]<0x3)return null;const _0x38ef00=_0x1e1e28[_0x1e1e28['length']-0x1];if(!RANDOM_SUFFIX_RE[_0x212d68(_0x512052._0x3602bf)](_0x38ef00))return null;const _0x25126a=_0x1e1e28[_0x1e1e28[_0x212d68(0x242)]-0x2];if(!/^[0-9a-z]+$/[_0x212d68(_0x512052._0x3602bf)](_0x25126a))return null;const _0x3138d6=parseInt(_0x25126a,0x24);if(!Number['isFinite'](_0x3138d6))return null;if(_0x3138d6<MIN_PLAUSIBLE_MS||_0x3138d6>=MAX_PLAUSIBLE_MS)return null;return _0x3138d6;}__name(runIdStartedAt,_0x1cbcb3(0x1fb));function shardPathForTimestamp(_0x29fd21){const _0x1b6505={_0x31c0a8:0x1f1,_0x5e8c06:0x19a},_0x33d578=_0x1cbcb3,_0x4f2f61=new Date(_0x29fd21),_0x188713=String(_0x4f2f61[_0x33d578(0x1a7)]())[_0x33d578(_0x1b6505._0x31c0a8)](0x4,'0'),_0x5f0d66=String(_0x4f2f61[_0x33d578(_0x1b6505._0x5e8c06)]()+0x1)['padStart'](0x2,'0'),_0x2836c0=String(_0x4f2f61[_0x33d578(0x271)]())[_0x33d578(0x1f1)](0x2,'0');return _0x188713+'/'+_0x5f0d66+'/'+_0x2836c0;}__name(shardPathForTimestamp,_0x1cbcb3(0x19e));function shardPathForRunId(_0x537553){const _0x159de1=runIdStartedAt(_0x537553);return _0x159de1===null?null:shardPathForTimestamp(_0x159de1);}__name(shardPathForRunId,'shardPathForRunId');function runDirFor(_0x35dd03,_0x4b2675){const _0x3725cb=shardPathForRunId(_0x4b2675);return _0x3725cb===null?null:_0x35dd03+'/'+_0x3725cb+'/'+_0x4b2675;}__name(runDirFor,'runDirFor');var UnplaceableRunIdError=class extends Error{static{__name(this,'UnplaceableRunIdError');}constructor(_0x5d2d15){const _0xdfefa7=_0x1cbcb3;super('runId\x20carries\x20no\x20timestamp,\x20cannot\x20place\x20it\x20in\x20a\x20shard:\x20'+_0x5d2d15),this[_0xdfefa7(0x27a)]='UnplaceableRunIdError';}};function requireRunDirFor(_0xd57d3e,_0x2de898){const _0x563f45=runDirFor(_0xd57d3e,_0x2de898);if(_0x563f45===null)throw new UnplaceableRunIdError(_0x2de898);return _0x563f45;}__name(requireRunDirFor,_0x1cbcb3(0x18f));function projectRunsRoot(_0x1aa562='',_0x2a2bba){return UNOTEST_DIR+'/'+runsDirFor(_0x1aa562,_0x2a2bba);}__name(projectRunsRoot,_0x1cbcb3(0x24e));function projectRunDirFor(_0x25b880,_0x3b7d75='',_0x187a8c){return requireRunDirFor(projectRunsRoot(_0x3b7d75,_0x187a8c),_0x25b880);}__name(projectRunDirFor,_0x1cbcb3(0x20f));function shardDirFor(_0x37d89a,_0x2e2d6a){return _0x37d89a+'/'+shardPathForTimestamp(_0x2e2d6a);}__name(shardDirFor,_0x1cbcb3(0x153));function*shardDaysDescending(_0x597843,_0x165bd1,_0x38317a){const _0x5e565e=0x5265c00;let _0xaf0b22=Math['floor'](_0x165bd1/_0x5e565e)*_0x5e565e;for(let _0x190f19=0x0;_0x190f19<_0x38317a;_0x190f19++){yield shardDirFor(_0x597843,_0xaf0b22),_0xaf0b22-=_0x5e565e;}}__name(shardDaysDescending,_0x1cbcb3(0x1f2));var RUN_INDEX_SCHEMA_VERSION=0x2,SCENARIO_RECENT_WINDOW=0xc;function isFailingStatus(_0x22ca48){const _0x19ec50=_0x1cbcb3;return _0x22ca48===_0x19ec50(0x149)||_0x22ca48===_0x19ec50(0x1d5);}__name(isFailingStatus,'isFailingStatus');function foldScenarioRun(_0x2676fa,_0x558ab6){const _0x1396d1={_0x5a8e53:0x176,_0x3d2794:0x180,_0x56995b:0x13e,_0x463f8f:0x1d7,_0x599dfd:0x13e,_0x355bf6:0x169},_0x255265=_0x1cbcb3,_0x2b69c9={'lastRunId':_0x558ab6[_0x255265(_0x1396d1._0x5a8e53)],'lastStatus':_0x558ab6[_0x255265(_0x1396d1._0x3d2794)],'lastAt':_0x558ab6[_0x255265(_0x1396d1._0x56995b)],'lastDurationMs':_0x558ab6[_0x255265(0x1bc)],'recent':[..._0x2676fa?.['recent']??[],_0x558ab6[_0x255265(_0x1396d1._0x3d2794)]][_0x255265(0x26c)](-SCENARIO_RECENT_WINDOW)};if(!isFailingStatus(_0x558ab6[_0x255265(_0x1396d1._0x3d2794)]))return{..._0x2b69c9,'failStreak':0x0,'failingSince':null};const _0x2c3a43=(_0x2676fa?.[_0x255265(_0x1396d1._0x463f8f)]??0x0)+0x1;return{..._0x2b69c9,'failStreak':_0x2c3a43,'failingSince':_0x2c3a43===0x1?_0x558ab6[_0x255265(_0x1396d1._0x599dfd)]:_0x2676fa?.[_0x255265(_0x1396d1._0x355bf6)]??_0x558ab6[_0x255265(0x13e)]};}__name(foldScenarioRun,_0x1cbcb3(0x17e));function scenarioIndexFileName(_0x5f2809){const _0x5bc52f={_0x547ee1:0x203},_0x2a4ef9=_0x1cbcb3;return encodeURIComponent(_0x5f2809)+_0x2a4ef9(_0x5bc52f._0x547ee1);}__name(scenarioIndexFileName,'scenarioIndexFileName');function scenarioRefFromFileName(_0x806b15){const _0x5c189f={_0x7e1133:0x203,_0x41fcf5:0x203},_0x2f0e4e=_0x1cbcb3;if(!_0x806b15['endsWith'](_0x2f0e4e(_0x5c189f._0x7e1133)))return null;try{return decodeURIComponent(_0x806b15['slice'](0x0,-_0x2f0e4e(_0x5c189f._0x41fcf5)['length']));}catch{return null;}}__name(scenarioRefFromFileName,_0x1cbcb3(0x1a9));var CI_RUN_PATH='/api/box/ci/run',PROVIDER_IDS=[_0x1cbcb3(0x1c2),'gitlab',_0x1cbcb3(0x1d0)],RUN_ERROR_CODES=[_0x1cbcb3(0x1a1),_0x1cbcb3(0x1b8),_0x1cbcb3(0x15d),'unknown-bundle',_0x1cbcb3(0x1a6),_0x1cbcb3(0x259),_0x1cbcb3(0x167)];function parseCiRunRequest(_0x4398e4){const _0x1132cf={_0xb5878d:0x242,_0xe72ca7:0x1bf,_0x7b06e9:0x20e,_0x173f73:0x201},_0x226e80=_0x1cbcb3;if(!isRecord(_0x4398e4))return null;const {bundleId:_0x37a73a,environment:_0xaf3fdb,collections:_0x36e991,pr:_0x2436ec,branch:_0x380998,sha:_0x21b44f}=_0x4398e4;if(typeof _0x37a73a!==_0x226e80(0x201)||_0x37a73a[_0x226e80(0x242)]===0x0)return null;if(typeof _0xaf3fdb!==_0x226e80(0x201)||_0xaf3fdb[_0x226e80(_0x1132cf._0xb5878d)]===0x0)return null;let _0x1c1a1b=null;if(_0x36e991!==void 0x0){if(!Array['isArray'](_0x36e991))return null;if(_0x36e991['some'](_0x1e2abd=>typeof _0x1e2abd!=='string'||_0x1e2abd[_0x226e80(0x242)]===0x0))return null;_0x1c1a1b=_0x36e991;}if(_0x2436ec!==void 0x0&&(typeof _0x2436ec!==_0x226e80(_0x1132cf._0xe72ca7)||!Number[_0x226e80(_0x1132cf._0x7b06e9)](_0x2436ec)))return null;for(const _0x1b1770 of[_0x380998,_0x21b44f]){if(_0x1b1770!==void 0x0&&typeof _0x1b1770!==_0x226e80(_0x1132cf._0x173f73))return null;}return{'bundleId':_0x37a73a,'environment':_0xaf3fdb,..._0x1c1a1b?{'collections':_0x1c1a1b}:{},...typeof _0x2436ec===_0x226e80(_0x1132cf._0xe72ca7)?{'pr':_0x2436ec}:{},...typeof _0x380998===_0x226e80(_0x1132cf._0x173f73)?{'branch':_0x380998}:{},...typeof _0x21b44f===_0x226e80(_0x1132cf._0x173f73)?{'sha':_0x21b44f}:{}};}__name(parseCiRunRequest,_0x1cbcb3(0x15a));function parseCiRunResponse(_0x18f1d5){const _0x4a62ee={_0x382253:0x20a,_0x1f0745:0x154,_0x4f9c17:0x201,_0x2b40da:0x201,_0x142477:0x1bf},_0x4666b1=_0x1cbcb3;if(!isRecord(_0x18f1d5))return null;if(isRecord(_0x18f1d5[_0x4666b1(0x20a)])){const {code:_0x17d3aa,message:_0x46ea92}=_0x18f1d5[_0x4666b1(_0x4a62ee._0x382253)];if(!RUN_ERROR_CODES[_0x4666b1(0x235)](_0x17d3aa))return null;if(typeof _0x46ea92!=='string')return null;return{'error':{'code':_0x17d3aa,'message':_0x46ea92}};}const {status:_0x4ffadf,bundleId:_0x2d1e90,environment:_0x40a7a0,runs:_0x6d47db,superseded:_0x136cad}=_0x18f1d5;if(_0x4ffadf!==_0x4666b1(_0x4a62ee._0x1f0745))return null;if(typeof _0x2d1e90!==_0x4666b1(_0x4a62ee._0x4f9c17)||typeof _0x40a7a0!=='string')return null;if(!Array['isArray'](_0x6d47db))return null;const _0x268e6a=[];for(const _0x1f745 of _0x6d47db){if(!isRecord(_0x1f745))return null;const {runId:_0x6aa5a0,collection:_0xc5b65a}=_0x1f745;if(typeof _0x6aa5a0!==_0x4666b1(0x201)||typeof _0xc5b65a!==_0x4666b1(_0x4a62ee._0x2b40da))return null;_0x268e6a[_0x4666b1(0x258)]({'runId':_0x6aa5a0,'collection':_0xc5b65a});}if(_0x136cad!==void 0x0&&typeof _0x136cad!==_0x4666b1(_0x4a62ee._0x142477))return null;return{'status':_0x4666b1(0x154),'bundleId':_0x2d1e90,'environment':_0x40a7a0,'runs':_0x268e6a,...typeof _0x136cad===_0x4666b1(0x1bf)?{'superseded':_0x136cad}:{}};}__name(parseCiRunResponse,_0x1cbcb3(0x1ac));function parseCiProvider(_0x39f4bf){const _0x303a03=_0x1cbcb3;return PROVIDER_IDS[_0x303a03(0x235)](_0x39f4bf)?_0x39f4bf:null;}__name(parseCiProvider,_0x1cbcb3(0x1ce));var QUEUE_SUBDIR=_0x1cbcb3(0x152),QUEUE_TICKETS_DIR=_0x1cbcb3(0x1d9),QUEUE_RUNNING_DIR='running',QUEUE_SLOTS_DIR=_0x1cbcb3(0x1b1),QUEUE_MUTEX_FILE=_0x1cbcb3(0x13d),QUEUE_LEASE_ENV=_0x1cbcb3(0x1cf),QUEUE_DISABLED_ENV=_0x1cbcb3(0x150),QUEUE_GLOBAL_DIR_ENV='UNOTEST_QUEUE_GLOBAL_DIR',QUEUE_GLOBAL_SLOTS_ENV='UNOTEST_QUEUE_GLOBAL_SLOTS',QUEUE_SCHEMA_VERSION=0x1;function queueDirFor(_0x52031a,_0x234425){return''+QUEUE_SUBDIR+_0x52031a+(_0x234425?'.'+_0x234425:'');}__name(queueDirFor,_0x1cbcb3(0x1ad));function isQueueDirName(_0x207125){const _0x41d213={_0x230fe1:0x200},_0x507ee1=_0x1cbcb3;return _0x207125===QUEUE_SUBDIR||_0x207125['startsWith'](QUEUE_SUBDIR+'-')||_0x207125[_0x507ee1(_0x41d213._0x230fe1)](QUEUE_SUBDIR+'.');}__name(isQueueDirName,_0x1cbcb3(0x214));function projectQueueRoot(_0x40d8b2='',_0x13ea7a){return UNOTEST_DIR+'/'+queueDirFor(_0x40d8b2,_0x13ea7a);}__name(projectQueueRoot,_0x1cbcb3(0x21f));var PRIORITY_RANKS=Object[_0x1cbcb3(0x15e)]({'maintenance':0x0,'interactive':0x1,'ci':0x2,'schedule':0x3}),RANK_PRIORITIES=[_0x1cbcb3(0x253),_0x1cbcb3(0x168),'ci',_0x1cbcb3(0x20b)],QUEUE_PRIORITIES=RANK_PRIORITIES;function queuePriorityRank(_0xf13879){return PRIORITY_RANKS[_0xf13879];}__name(queuePriorityRank,_0x1cbcb3(0x1d2));function queuePriorityFromRank(_0x10ca07){return RANK_PRIORITIES[_0x10ca07]??null;}__name(queuePriorityFromRank,'queuePriorityFromRank');function describeTicketCi(_0x2265cf){const _0x2e83c0={_0x1f9029:0x16c,_0x38251f:0x16c,_0x4f481e:0x142,_0x2a486c:0x208},_0x87c528=_0x1cbcb3,_0x58df81=_0x2265cf[_0x87c528(_0x2e83c0._0x1f9029)]?'@'+_0x2265cf[_0x87c528(_0x2e83c0._0x38251f)][_0x87c528(0x26c)](0x0,0x7):'';if(_0x2265cf['pr']!==void 0x0)return _0x87c528(0x1ba)+_0x2265cf['pr']+_0x58df81;if(_0x2265cf[_0x87c528(_0x2e83c0._0x4f481e)]!==void 0x0)return''+_0x2265cf['branch']+_0x58df81;return _0x58df81['length']>0x0?_0x58df81[_0x87c528(0x26c)](0x1):_0x2265cf[_0x87c528(_0x2e83c0._0x2a486c)];}__name(describeTicketCi,_0x1cbcb3(0x1ee));function makeQueueTicketName(_0x3afa69,_0x4be002,_0x1e16f0){const _0x963dd6=_0x1cbcb3;return queuePriorityRank(_0x3afa69)+'-'+_0x4be002['toString'](0x24)+'-'+_0x1e16f0+_0x963dd6(0x163);}__name(makeQueueTicketName,'makeQueueTicketName');var TICKET_NAME_RE=/^([0-3])-([0-9a-z]+)-([0-9a-f]+)\.json$/;function parseQueueTicketName(_0x2f6aaf){const _0x3ada74=TICKET_NAME_RE['exec'](_0x2f6aaf);if(!_0x3ada74)return null;const _0xcb1d88=Number(_0x3ada74[0x1]),_0x5fdb7e=queuePriorityFromRank(_0xcb1d88);if(_0x5fdb7e===null)return null;const _0x562d46=parseInt(_0x3ada74[0x2],0x24);if(!Number['isFinite'](_0x562d46))return null;return{'rank':_0xcb1d88,'priority':_0x5fdb7e,'createdAt':_0x562d46,'random':_0x3ada74[0x3]};}__name(parseQueueTicketName,_0x1cbcb3(0x1c0));function compareQueueTicketNames(_0x3ec635,_0x2a82fb){const _0x5f4174={_0x337578:0x217,_0x16e770:0x1a8,_0x1e4378:0x18a},_0x5ac288=_0x1cbcb3,_0x51da0f=parseQueueTicketName(_0x3ec635),_0x5cb5fa=parseQueueTicketName(_0x2a82fb);if(!_0x51da0f||!_0x5cb5fa)return _0x3ec635<_0x2a82fb?-0x1:_0x3ec635>_0x2a82fb?0x1:0x0;if(_0x51da0f[_0x5ac288(0x217)]!==_0x5cb5fa[_0x5ac288(0x217)])return _0x51da0f['rank']-_0x5cb5fa[_0x5ac288(_0x5f4174._0x337578)];if(_0x51da0f['createdAt']!==_0x5cb5fa[_0x5ac288(_0x5f4174._0x16e770)])return _0x51da0f['createdAt']-_0x5cb5fa['createdAt'];return _0x51da0f['random']<_0x5cb5fa[_0x5ac288(0x18a)]?-0x1:_0x51da0f[_0x5ac288(0x18a)]>_0x5cb5fa[_0x5ac288(_0x5f4174._0x1e4378)]?0x1:0x0;}__name(compareQueueTicketNames,_0x1cbcb3(0x26d));var TICKET_KINDS=[_0x1cbcb3(0x269),'collection',_0x1cbcb3(0x216),_0x1cbcb3(0x253)],PRODUCER_KINDS=[_0x1cbcb3(0x159),_0x1cbcb3(0x1a4),_0x1cbcb3(0x1d3),_0x1cbcb3(0x20b),'ci'];function parseQueueTicket(_0x985ba8){const _0x55ab9d={_0xf379cf:0x201,_0x1ca969:0x201,_0x24a2a8:0x219,_0x531216:0x242,_0x2c5f6b:0x162},_0xbe142e=_0x1cbcb3;if(!isRecord(_0x985ba8))return null;const {schemaVersion:_0x1557e5,runId:_0x4816fa,kind:_0x113af8,ref:_0xa3150b,env:_0x18e382,priority:_0x2bd88d,weight:_0x17b661,producer:_0x219549,source:_0x127776,ci:_0x41c47f,createdAt:_0x59d7bb}=_0x985ba8;if(_0x1557e5!==QUEUE_SCHEMA_VERSION)return null;if(typeof _0x4816fa!==_0xbe142e(_0x55ab9d._0xf379cf)||_0x4816fa[_0xbe142e(0x242)]===0x0)return null;if(typeof _0xa3150b!==_0xbe142e(_0x55ab9d._0x1ca969))return null;if(!TICKET_KINDS[_0xbe142e(0x235)](_0x113af8))return null;if(!QUEUE_PRIORITIES['includes'](_0x2bd88d))return null;if(typeof _0x17b661!==_0xbe142e(0x1bf)||!Number['isFinite'](_0x17b661)||_0x17b661<0x1)return null;if(typeof _0x59d7bb!==_0xbe142e(0x1bf)||!Number[_0xbe142e(0x1b9)](_0x59d7bb))return null;if(!isRecord(_0x219549))return null;if(!PRODUCER_KINDS['includes'](_0x219549[_0xbe142e(_0x55ab9d._0x24a2a8)]))return null;if(typeof _0x219549[_0xbe142e(0x257)]!=='number'||typeof _0x219549[_0xbe142e(0x162)]!==_0xbe142e(0x201))return null;if(_0x18e382!==void 0x0&&typeof _0x18e382!==_0xbe142e(0x201))return null;let _0x394df8=null;if(_0x127776!==void 0x0){if(!isRecord(_0x127776)||typeof _0x127776[_0xbe142e(0x145)]!=='string'||_0x127776['bundleId'][_0xbe142e(_0x55ab9d._0x531216)]===0x0)return null;_0x394df8={'bundleId':_0x127776[_0xbe142e(0x145)]};}let _0x54447d=null;if(_0x41c47f!==void 0x0){_0x54447d=parseTicketCi(_0x41c47f);if(_0x54447d===null)return null;}return{'schemaVersion':QUEUE_SCHEMA_VERSION,'runId':_0x4816fa,'kind':_0x113af8,'ref':_0xa3150b,'priority':_0x2bd88d,'weight':_0x17b661,'producer':{'kind':_0x219549[_0xbe142e(0x219)],'pid':_0x219549[_0xbe142e(0x257)],'host':_0x219549[_0xbe142e(_0x55ab9d._0x2c5f6b)]},'createdAt':_0x59d7bb,...typeof _0x18e382===_0xbe142e(0x201)?{'env':_0x18e382}:{},..._0x394df8?{'source':_0x394df8}:{},..._0x54447d?{'ci':_0x54447d}:{}};}__name(parseQueueTicket,'parseQueueTicket');function parseTicketCi(_0x37c8a7){const _0x15c0a9={_0x26d6e5:0x1bf,_0x2f7f80:0x201},_0x1ed728=_0x1cbcb3;if(!isRecord(_0x37c8a7))return null;const _0x517492=parseCiProvider(_0x37c8a7[_0x1ed728(0x208)]);if(_0x517492===null)return null;const {repo:_0x34c161,branch:_0x23cdae,sha:_0xabbe00,pr:_0x433a95,checkId:_0x2d3600}=_0x37c8a7;for(const _0x5b0fa6 of[_0x34c161,_0x23cdae,_0xabbe00,_0x2d3600]){if(_0x5b0fa6!==void 0x0&&typeof _0x5b0fa6!==_0x1ed728(0x201))return null;}if(_0x433a95!==void 0x0&&(typeof _0x433a95!==_0x1ed728(_0x15c0a9._0x26d6e5)||!Number['isInteger'](_0x433a95)))return null;return{'provider':_0x517492,...typeof _0x34c161===_0x1ed728(0x201)?{'repo':_0x34c161}:{},...typeof _0x23cdae===_0x1ed728(0x201)?{'branch':_0x23cdae}:{},...typeof _0xabbe00===_0x1ed728(0x201)?{'sha':_0xabbe00}:{},...typeof _0x433a95==='number'?{'pr':_0x433a95}:{},...typeof _0x2d3600===_0x1ed728(_0x15c0a9._0x2f7f80)?{'checkId':_0x2d3600}:{}};}__name(parseTicketCi,_0x1cbcb3(0x155));var BUNDLE_SCHEMA_VERSION=0x1,BUNDLE_MANIFEST_FILE=_0x1cbcb3(0x22c),BUNDLE_UPLOAD_PATH=_0x1cbcb3(0x1ea),BOX_URL_ENV='UNOTEST_BOX_URL',BOX_TOKEN_ENV='UNOTEST_BOX_TOKEN',BUNDLE_ID_ENV=_0x1cbcb3(0x14b),SCHEDULES_FINGERPRINT_ENV='UNOTEST_SCHEDULES_FINGERPRINT';function parseGitInfo(_0x37a33a){const _0x5223ed={_0x4bce58:0x197,_0x11f581:0x201},_0x2e48fc=_0x1cbcb3;if(!isRecord(_0x37a33a))return null;const {repo:_0x43572c,branch:_0x1e1a3b,sha:_0x5b4bd9,dirty:_0x445395}=_0x37a33a;if(typeof _0x445395!==_0x2e48fc(_0x5223ed._0x4bce58))return null;for(const _0x59fdd9 of[_0x43572c,_0x1e1a3b,_0x5b4bd9]){if(_0x59fdd9!==void 0x0&&typeof _0x59fdd9!=='string')return null;}return{'dirty':_0x445395,...typeof _0x43572c===_0x2e48fc(_0x5223ed._0x11f581)?{'repo':_0x43572c}:{},...typeof _0x1e1a3b===_0x2e48fc(0x201)?{'branch':_0x1e1a3b}:{},...typeof _0x5b4bd9===_0x2e48fc(_0x5223ed._0x11f581)?{'sha':_0x5b4bd9}:{}};}__name(parseGitInfo,_0x1cbcb3(0x1a3));function parseBundleManifest(_0x5d3eff){const _0x368225={_0x44c6d2:0x201,_0x1817c9:0x242,_0x3d3f4:0x20e,_0x42dd83:0x20e},_0x355e5d=_0x1cbcb3;if(!isRecord(_0x5d3eff))return null;const {schemaVersion:_0x2d67e3,bundleId:_0x3aa498,sha256:_0x1edb90,createdAt:_0x40b36c,webVersion:_0xb4f812,author:_0x507e0f,git:_0x3630b9,fileCount:_0x2ab519,byteSize:_0x4ae86a,declaredVariables:_0xbaaeff,schedulesFingerprint:_0x514eb0}=_0x5d3eff;if(_0x2d67e3!==BUNDLE_SCHEMA_VERSION)return null;if(typeof _0x3aa498!==_0x355e5d(_0x368225._0x44c6d2)||_0x3aa498[_0x355e5d(_0x368225._0x1817c9)]===0x0)return null;if(_0x1edb90!==void 0x0&&!/^[0-9a-f]{64}$/[_0x355e5d(0x240)](String(_0x1edb90)))return null;if(typeof _0xb4f812!==_0x355e5d(0x201)||_0xb4f812['length']===0x0)return null;if(typeof _0x40b36c!==_0x355e5d(0x1bf)||!Number['isFinite'](_0x40b36c))return null;if(typeof _0x2ab519!=='number'||!Number[_0x355e5d(_0x368225._0x3d3f4)](_0x2ab519))return null;if(typeof _0x4ae86a!=='number'||!Number[_0x355e5d(_0x368225._0x42dd83)](_0x4ae86a))return null;if(_0x507e0f!==void 0x0&&typeof _0x507e0f!=='string')return null;let _0x2bed7d=null;if(_0x3630b9!==void 0x0){_0x2bed7d=parseGitInfo(_0x3630b9);if(_0x2bed7d===null)return null;}const _0x311462=Array['isArray'](_0xbaaeff)?_0xbaaeff['filter'](_0xb0cecf=>typeof _0xb0cecf==='string'):[],_0x36b0f0=typeof _0x514eb0===_0x355e5d(0x201)&&/^[0-9a-f]{64}$/[_0x355e5d(0x240)](_0x514eb0)?_0x514eb0:void 0x0;return{'schemaVersion':BUNDLE_SCHEMA_VERSION,'bundleId':_0x3aa498,...typeof _0x1edb90===_0x355e5d(0x201)?{'sha256':_0x1edb90}:{},'createdAt':_0x40b36c,'webVersion':_0xb4f812,'fileCount':_0x2ab519,'byteSize':_0x4ae86a,...typeof _0x507e0f==='string'?{'author':_0x507e0f}:{},..._0x2bed7d?{'git':_0x2bed7d}:{},..._0x311462[_0x355e5d(0x242)]>0x0?{'declaredVariables':_0x311462}:{},..._0x36b0f0!==void 0x0?{'schedulesFingerprint':_0x36b0f0}:{}};}__name(parseBundleManifest,_0x1cbcb3(0x195));function describeBundle(_0x574d5c){const _0x22e659={_0x4f8b84:0x16c},_0x410e10=_0x1cbcb3,_0xf55e64=_0x574d5c[_0x410e10(0x165)];if(!_0xf55e64||_0xf55e64[_0x410e10(0x142)]===void 0x0&&_0xf55e64['sha']===void 0x0)return _0x574d5c['bundleId'];const _0x1bc465=_0xf55e64[_0x410e10(_0x22e659._0x4f8b84)]?_0xf55e64[_0x410e10(_0x22e659._0x4f8b84)][_0x410e10(0x26c)](0x0,0x7):'?',_0x3a49dd=_0xf55e64['branch']??'?';return _0x3a49dd+'@'+_0x1bc465+(_0xf55e64[_0x410e10(0x27b)]?_0x410e10(0x202):'');}__name(describeBundle,_0x1cbcb3(0x24c));var UPLOAD_ERROR_CODES=[_0x1cbcb3(0x1a1),_0x1cbcb3(0x22a),_0x1cbcb3(0x259),_0x1cbcb3(0x226),_0x1cbcb3(0x1ed),_0x1cbcb3(0x1b8),_0x1cbcb3(0x167)];function parseBundleUploadResponse(_0x3bd2b6){const _0x385dad={_0x104266:0x20a,_0xb9db18:0x1c3,_0x3b200e:0x201,_0x4ea4ba:0x24f},_0x4ed3d5=_0x1cbcb3;if(!isRecord(_0x3bd2b6))return null;if(isRecord(_0x3bd2b6[_0x4ed3d5(_0x385dad._0x104266)])){const {code:_0x10fe97,message:_0x4c8d77}=_0x3bd2b6[_0x4ed3d5(0x20a)];if(!UPLOAD_ERROR_CODES['includes'](_0x10fe97))return null;if(typeof _0x4c8d77!==_0x4ed3d5(0x201))return null;return{'error':{'code':_0x10fe97,'message':_0x4c8d77}};}const {status:_0x1c9171,bundleId:_0x576beb}=_0x3bd2b6;if(_0x1c9171!==_0x4ed3d5(_0x385dad._0xb9db18)&&_0x1c9171!==_0x4ed3d5(0x1e4))return null;if(typeof _0x576beb!==_0x4ed3d5(_0x385dad._0x3b200e)||_0x576beb['length']===0x0)return null;const _0x106a1a=parseVariableGaps(_0x3bd2b6[_0x4ed3d5(_0x385dad._0x4ea4ba)]);return _0x106a1a===null?{'status':_0x1c9171,'bundleId':_0x576beb}:{'status':_0x1c9171,'bundleId':_0x576beb,'variableGaps':_0x106a1a};}__name(parseBundleUploadResponse,'parseBundleUploadResponse');function parseVariableGaps(_0x24314e){const _0x103664={_0x31a4ce:0x201,_0x529725:0x258},_0x240f29=_0x1cbcb3;if(!Array[_0x240f29(0x25f)](_0x24314e))return null;const _0x2670f3=[];for(const _0xb9107e of _0x24314e){if(!isRecord(_0xb9107e))continue;const {project:_0x1dc61e,environment:_0x2684c5,missing:_0x59b87e}=_0xb9107e;if(typeof _0x1dc61e!==_0x240f29(_0x103664._0x31a4ce)||typeof _0x2684c5!==_0x240f29(0x201))continue;if(!Array['isArray'](_0x59b87e))continue;const _0x59dfcf=_0x59b87e[_0x240f29(0x184)](_0x794764=>typeof _0x794764==='string');if(_0x59dfcf['length']>0x0)_0x2670f3[_0x240f29(_0x103664._0x529725)]({'project':_0x1dc61e,'environment':_0x2684c5,'missing':_0x59dfcf});}return _0x2670f3[_0x240f29(0x242)]>0x0?_0x2670f3:null;}__name(parseVariableGaps,_0x1cbcb3(0x227));var WORKSPACE_SCHEMA_VERSION=0x1,WORKSPACE_FILE=_0x1cbcb3(0x1be);function stringList(_0x5576d8){const _0x48ce={_0x40a861:0x27c},_0x3eb210=_0x1cbcb3;if(!Array['isArray'](_0x5576d8))return null;if(_0x5576d8[_0x3eb210(_0x48ce._0x40a861)](_0x104441=>typeof _0x104441!==_0x3eb210(0x201)))return null;return _0x5576d8;}__name(stringList,_0x1cbcb3(0x14c));function parseBundle(_0x2260e3){const _0x219f35={_0x416d8d:0x201,_0x6ad26a:0x197,_0x193651:0x1bf,_0x2927da:0x1b9,_0x1dd17d:0x201,_0x373363:0x201},_0x26b087=_0x1cbcb3;if(!isRecord(_0x2260e3))return null;const {bundleId:_0x4cff8d,label:_0x1bf0ca,branch:_0x56ba1a,sha:_0x4399af,dirty:_0xc1fde,author:_0x5659d6,createdAt:_0x1b7864,webVersion:_0x9cd615}=_0x2260e3;if(typeof _0x4cff8d!=='string'||_0x4cff8d[_0x26b087(0x242)]===0x0)return null;if(typeof _0x1bf0ca!==_0x26b087(_0x219f35._0x416d8d)||typeof _0x9cd615!=='string')return null;if(typeof _0xc1fde!==_0x26b087(_0x219f35._0x6ad26a))return null;if(typeof _0x1b7864!==_0x26b087(_0x219f35._0x193651)||!Number[_0x26b087(_0x219f35._0x2927da)](_0x1b7864))return null;for(const _0x236e51 of[_0x56ba1a,_0x4399af,_0x5659d6]){if(_0x236e51!==void 0x0&&typeof _0x236e51!=='string')return null;}return{'bundleId':_0x4cff8d,'label':_0x1bf0ca,'dirty':_0xc1fde,'createdAt':_0x1b7864,'webVersion':_0x9cd615,...typeof _0x56ba1a===_0x26b087(_0x219f35._0x1dd17d)?{'branch':_0x56ba1a}:{},...typeof _0x4399af==='string'?{'sha':_0x4399af}:{},...typeof _0x5659d6===_0x26b087(_0x219f35._0x373363)?{'author':_0x5659d6}:{}};}__name(parseBundle,_0x1cbcb3(0x243));function parseWorkspaceFile(_0x85d3d4){const _0x337ab3={_0x50313f:0x201,_0x499137:0x258,_0x4abfea:0x201,_0x4d543d:0x201},_0x198583=_0x1cbcb3;if(!isRecord(_0x85d3d4))return null;if(_0x85d3d4[_0x198583(0x13b)]!==WORKSPACE_SCHEMA_VERSION)return null;const {workspace:_0x2e4aab,environment:_0x2c108c,allowSwitch:_0x1271c5,currentBundleId:_0x4e7f4e,switchedBy:_0x3012e9,switchedAt:_0x581b6f,bundles:_0x2742e5,variables:_0x545146,secrets:_0xf7ff4e,switchPath:_0x25016c}=_0x85d3d4;if(typeof _0x2e4aab!==_0x198583(_0x337ab3._0x50313f)||typeof _0x2c108c!=='string')return null;if(typeof _0x1271c5!==_0x198583(0x197))return null;if(!Array[_0x198583(0x25f)](_0x2742e5))return null;const _0x251edc=[];for(const _0x24544c of _0x2742e5){const _0x4643ae=parseBundle(_0x24544c);if(!_0x4643ae)return null;_0x251edc[_0x198583(_0x337ab3._0x499137)](_0x4643ae);}const _0x1387a3=stringList(_0x545146),_0x37384e=stringList(_0xf7ff4e);if(!_0x1387a3||!_0x37384e)return null;for(const _0x13e791 of[_0x4e7f4e,_0x3012e9,_0x25016c]){if(_0x13e791!==void 0x0&&typeof _0x13e791!==_0x198583(_0x337ab3._0x4abfea))return null;}if(_0x581b6f!==void 0x0&&typeof _0x581b6f!=='number')return null;return{'schemaVersion':WORKSPACE_SCHEMA_VERSION,'workspace':_0x2e4aab,'environment':_0x2c108c,'allowSwitch':_0x1271c5,'bundles':_0x251edc,'variables':_0x1387a3,'secrets':_0x37384e,...typeof _0x4e7f4e===_0x198583(0x201)?{'currentBundleId':_0x4e7f4e}:{},...typeof _0x3012e9===_0x198583(_0x337ab3._0x4d543d)?{'switchedBy':_0x3012e9}:{},...typeof _0x581b6f==='number'?{'switchedAt':_0x581b6f}:{},...typeof _0x25016c==='string'?{'switchPath':_0x25016c}:{}};}__name(parseWorkspaceFile,_0x1cbcb3(0x1e1));function scheduleTarget(_0x5f12bd){const _0x217ed0=_0x1cbcb3;return _0x5f12bd[_0x217ed0(0x22e)]!==void 0x0?{'kind':_0x217ed0(0x22e),'name':_0x5f12bd[_0x217ed0(0x22e)]}:{'kind':'scenario','name':_0x5f12bd[_0x217ed0(0x269)]};}__name(scheduleTarget,_0x1cbcb3(0x16e));function parseScheduleEntry(_0x5a8d1e){const _0x530089={_0x28b25f:0x242,_0x58e51f:0x22b,_0x3b20a0:0x242,_0x3b0464:0x201,_0xd4c8b0:0x1bf,_0x198a4d:0x1e0,_0x4ae78a:0x18d},_0xb1c0f9=_0x1cbcb3;if(!isRecord(_0x5a8d1e))return null;const {collection:_0x282f80,scenario:_0x2a42ba,cron:_0x5c7178,env:_0x56d0f0,prepare:_0x16e7ff,workers:_0x8516c5,source:_0x111c7c}=_0x5a8d1e,_0x4abd98=typeof _0x282f80==='string'&&_0x282f80['length']>0x0?_0x2a42ba===void 0x0?{'collection':_0x282f80}:null:typeof _0x2a42ba==='string'&&_0x2a42ba[_0xb1c0f9(_0x530089._0x28b25f)]>0x0&&_0x282f80===void 0x0?{'scenario':_0x2a42ba}:null;if(_0x4abd98===null)return null;if(typeof _0x5c7178!==_0xb1c0f9(0x201)||_0x5c7178[_0xb1c0f9(_0x530089._0x58e51f)]()[_0xb1c0f9(_0x530089._0x3b20a0)]===0x0)return null;if(_0x56d0f0!==void 0x0&&typeof _0x56d0f0!==_0xb1c0f9(0x201))return null;if(_0x16e7ff!==void 0x0&&typeof _0x16e7ff!==_0xb1c0f9(_0x530089._0x3b0464))return null;const _0x7bece4='collection'in _0x4abd98&&typeof _0x8516c5===_0xb1c0f9(_0x530089._0xd4c8b0)&&Number[_0xb1c0f9(0x20e)](_0x8516c5)&&_0x8516c5>=0x1?_0x8516c5:void 0x0,_0x1d099f=_0x111c7c===_0xb1c0f9(_0x530089._0x198a4d)||_0x111c7c===_0xb1c0f9(_0x530089._0x4ae78a)?_0x111c7c:void 0x0;return{..._0x4abd98,'cron':_0x5c7178,..._0x56d0f0!==void 0x0?{'env':_0x56d0f0}:{},..._0x16e7ff!==void 0x0?{'prepare':_0x16e7ff}:{},..._0x7bece4!==void 0x0?{'workers':_0x7bece4}:{},..._0x1d099f!==void 0x0?{'source':_0x1d099f}:{}};}__name(parseScheduleEntry,_0x1cbcb3(0x273));function parseSchedulesDoc(_0x14a5ae){const _0x5ba1c1={_0xf4951b:0x26f,_0x5bf539:0x219,_0x1f99b9:0x27a,_0x41e707:0x178,_0x39d05f:0x1c9,_0xf5dd25:0x219,_0x5aecf1:0x206,_0x16bb8b:0x1c5},_0x4618be=_0x1cbcb3;if(_0x14a5ae===null||_0x14a5ae===void 0x0)return{'entries':[]};if(!isRecord(_0x14a5ae))return{'error':_0x4618be(0x276)};const _0x4700e3=_0x14a5ae['schedules']??[];if(!Array['isArray'](_0x4700e3))return{'error':_0x4618be(_0x5ba1c1._0xf4951b)};const _0x20476c=[],_0x17e468=new Set();for(const [_0x166942,_0x20a96c]of _0x4700e3['entries']()){const _0x587437=parseScheduleEntry(_0x20a96c);if(!_0x587437)return{'error':_0x4618be(0x251)+_0x166942+_0x4618be(0x189)};const _0x1fed60=scheduleTarget(_0x587437),_0x3af81a=_0x1fed60[_0x4618be(_0x5ba1c1._0x5bf539)]+':'+_0x1fed60[_0x4618be(_0x5ba1c1._0x1f99b9)];if(_0x17e468[_0x4618be(_0x5ba1c1._0x41e707)](_0x3af81a))return{'error':_0x4618be(0x251)+_0x166942+_0x4618be(_0x5ba1c1._0x39d05f)+_0x1fed60[_0x4618be(_0x5ba1c1._0xf5dd25)]+'\x20\x22'+_0x1fed60[_0x4618be(0x27a)]+_0x4618be(_0x5ba1c1._0x5aecf1)};_0x17e468[_0x4618be(_0x5ba1c1._0x16bb8b)](_0x3af81a),_0x20476c['push'](_0x587437);}return{'entries':_0x20476c};}__name(parseSchedulesDoc,'parseSchedulesDoc');function mergeSchedules(_0x559d40,_0x29ea61){const _0x14070a={_0x1d94a0:0x272,_0x515d10:0x272},_0x49939f={_0x35411e:0x27a},_0x425534={_0x29fe48:0x219},_0x508cad=_0x1cbcb3,_0x565708=new Set(_0x29ea61[_0x508cad(_0x14070a._0x1d94a0)](_0x1e24fa=>{const _0x5b0313=_0x508cad,_0x44ba9c=scheduleTarget(_0x1e24fa);return _0x44ba9c[_0x5b0313(_0x425534._0x29fe48)]+':'+_0x44ba9c['name'];})),_0x134e46=_0x559d40[_0x508cad(0x184)](_0x1c1556=>{const _0x2f4140=_0x508cad,_0x30359b=scheduleTarget(_0x1c1556);return!_0x565708[_0x2f4140(0x178)](_0x30359b[_0x2f4140(0x219)]+':'+_0x30359b[_0x2f4140(_0x49939f._0x35411e)]);});return[..._0x134e46[_0x508cad(0x272)](_0x49363d=>({..._0x49363d,'source':'config'})),..._0x29ea61[_0x508cad(_0x14070a._0x515d10)](_0x375535=>({..._0x375535,'source':_0x508cad(0x18d)}))];}__name(mergeSchedules,_0x1cbcb3(0x21b));function canonicalScheduleSet(_0x878a0a){const _0x3a0e7b={_0x5873df:0x272,_0x2325e9:0x250},_0x416bb0={_0x40f165:0x27a},_0x45834f={_0x35cfe2:0x27a,_0x428df6:0x157,_0x5b1ebc:0x252},_0x1700b4=_0x1cbcb3,_0x19ccc6=_0x878a0a[_0x1700b4(_0x3a0e7b._0x5873df)](_0xe39498=>{const _0x3954c2=_0x1700b4,_0x11e5fc=scheduleTarget(_0xe39498);return{'kind':_0x11e5fc[_0x3954c2(0x219)],'name':_0x11e5fc[_0x3954c2(_0x45834f._0x35cfe2)],'cron':_0xe39498[_0x3954c2(0x1df)],..._0xe39498[_0x3954c2(_0x45834f._0x428df6)]!==void 0x0?{'env':_0xe39498[_0x3954c2(_0x45834f._0x428df6)]}:{},..._0xe39498[_0x3954c2(0x170)]!==void 0x0?{'prepare':_0xe39498[_0x3954c2(0x170)]}:{},..._0xe39498['workers']!==void 0x0?{'workers':_0xe39498[_0x3954c2(_0x45834f._0x5b1ebc)]}:{}};})['sort']((_0x4aa2c4,_0x5c974a)=>{const _0xad28ba=_0x1700b4,_0x2815ed=_0x4aa2c4[_0xad28ba(0x219)]+':'+_0x4aa2c4[_0xad28ba(0x27a)],_0x5f25f6=_0x5c974a['kind']+':'+_0x5c974a[_0xad28ba(_0x416bb0._0x40f165)];return _0x2815ed<_0x5f25f6?-0x1:_0x2815ed>_0x5f25f6?0x1:0x0;});return JSON[_0x1700b4(_0x3a0e7b._0x2325e9)](_0x19ccc6);}__name(canonicalScheduleSet,_0x1cbcb3(0x1aa));function parseSchedulesJson(_0x364325){const _0xff5661={_0x474993:0x25f},_0x3b96db=_0x1cbcb3;let _0x4c7b2;try{_0x4c7b2=JSON['parse'](_0x364325);}catch{return null;}if(!Array[_0x3b96db(_0xff5661._0x474993)](_0x4c7b2))return null;const _0x50f4b2=[];for(const _0x50cb40 of _0x4c7b2){const _0x21f75e=parseScheduleEntry(_0x50cb40);if(_0x21f75e)_0x50f4b2[_0x3b96db(0x258)](_0x21f75e);}return _0x50f4b2;}__name(parseSchedulesJson,_0x1cbcb3(0x26e));var FREQ_FIELDS={'m5':{'minutes':![],'hours':![],'days':![]},'m15':{'minutes':![],'hours':![],'days':![]},'h1':{'minutes':!![],'hours':![],'days':![]},'h2':{'minutes':!![],'hours':![],'days':![]},'h4':{'minutes':!![],'hours':![],'days':![]},'h6':{'minutes':!![],'hours':![],'days':![]},'h12':{'minutes':!![],'hours':![],'days':![]},'daily':{'minutes':!![],'hours':!![],'days':![]},'weekly':{'minutes':!![],'hours':!![],'days':!![]}},HOUR_STEP={'h2':0x2,'h4':0x4,'h6':0x6,'h12':0xc};function cronFromSpec(_0x4f66b1){const _0x239974={_0x48e025:0x267,_0x94b948:0x1d8,_0x34d0b1:0x18b,_0x2283f7:0x22f},_0x3638db=_0x1cbcb3,_0x357f61=list(_0x4f66b1['minutes']);switch(_0x4f66b1['freq']){case'm5':return _0x3638db(0x1cc);case'm15':return _0x3638db(0x1f3);case'h1':return _0x357f61+_0x3638db(0x16d);case'h2':case'h4':case'h6':case _0x3638db(0x13f):return _0x357f61+_0x3638db(_0x239974._0x48e025)+HOUR_STEP[_0x4f66b1[_0x3638db(_0x239974._0x94b948)]]+_0x3638db(0x211);case _0x3638db(_0x239974._0x34d0b1):return _0x357f61+'\x20'+list(_0x4f66b1['hours'])+'\x20*\x20*\x20*';case _0x3638db(0x140):return _0x357f61+'\x20'+list(_0x4f66b1['hours'])+'\x20*\x20*\x20'+list(_0x4f66b1[_0x3638db(_0x239974._0x2283f7)]);}}__name(cronFromSpec,_0x1cbcb3(0x14a));function specFromCron(_0x2df3fc){const _0x50f568={_0x4f319a:0x242,_0x447e48:0x1b4,_0x337b7c:0x224,_0xd15aa7:0x18b,_0x16d867:0x140},_0x58f6ab=_0x1cbcb3,_0x5454a2=_0x2df3fc[_0x58f6ab(0x22b)]()[_0x58f6ab(0x222)](/\s+/);if(_0x5454a2[_0x58f6ab(_0x50f568._0x4f319a)]!==0x5)return null;const [_0x326fe7,_0x1f606a,_0x2177eb,_0x4f39c9,_0x7700a8]=_0x5454a2;if(_0x2177eb!=='*'||_0x4f39c9!=='*')return null;if(_0x1f606a==='*'&&_0x7700a8==='*'){if(_0x326fe7===_0x58f6ab(0x1ef))return spec('m5');if(_0x326fe7==='*/15')return spec(_0x58f6ab(_0x50f568._0x447e48));const _0x21a1a9=numbers(_0x326fe7);return _0x21a1a9&&spec('h1',_0x21a1a9);}const _0x203be4=numbers(_0x326fe7);if(!_0x203be4)return null;const _0x34b5a4=/^\*\/(\d+)$/['exec'](_0x1f606a);if(_0x34b5a4&&_0x7700a8==='*'){const _0xd2873a=Object[_0x58f6ab(_0x50f568._0x337b7c)](HOUR_STEP)[_0x58f6ab(0x1dc)](_0xfa83e2=>HOUR_STEP[_0xfa83e2]===Number(_0x34b5a4[0x1]));return _0xd2873a?spec(_0xd2873a,_0x203be4):null;}const _0x2f114a=numbers(_0x1f606a);if(!_0x2f114a)return null;if(_0x7700a8==='*')return spec(_0x58f6ab(_0x50f568._0xd15aa7),_0x203be4,_0x2f114a);const _0x287f60=numbers(_0x7700a8);return _0x287f60&&spec(_0x58f6ab(_0x50f568._0x16d867),_0x203be4,_0x2f114a,_0x287f60);}__name(specFromCron,'specFromCron');function describeCron(_0xcb89d3){const _0x5eb337=specFromCron(_0xcb89d3);return _0x5eb337?describeSpec(_0x5eb337):_0xcb89d3;}__name(describeCron,_0x1cbcb3(0x177));function describeSpec(_0x539204){const _0x5ed6bc={_0x152550:0x1b4,_0x5e7d63:0x1f9,_0x5611d4:0x244,_0x2cfd20:0x1d8,_0x21c7e0:0x1b7,_0x1abd76:0x22f,_0x236c13:0x272},_0x134b0a=_0x1cbcb3;switch(_0x539204['freq']){case'm5':return _0x134b0a(0x19d);case _0x134b0a(_0x5ed6bc._0x152550):return'every\x2015\x20min';case'h1':return _0x134b0a(_0x5ed6bc._0x5e7d63)+atMinutes(_0x539204[_0x134b0a(0x182)]);case'h2':case'h4':case'h6':case'h12':return _0x134b0a(_0x5ed6bc._0x5611d4)+HOUR_STEP[_0x539204[_0x134b0a(_0x5ed6bc._0x2cfd20)]]+'h'+atMinutes(_0x539204[_0x134b0a(0x182)]);case _0x134b0a(0x18b):return _0x134b0a(_0x5ed6bc._0x21c7e0)+times(_0x539204);case _0x134b0a(0x140):return _0x539204[_0x134b0a(_0x5ed6bc._0x1abd76)][_0x134b0a(_0x5ed6bc._0x236c13)](_0x2a5982=>DAY_SHORT[_0x2a5982]??String(_0x2a5982))['join'](',\x20')+_0x134b0a(0x27d)+times(_0x539204);}}__name(describeSpec,'describeSpec');function nextTickFromSpec(_0x2db1d1,_0x35da87){const _0x1b38d0={_0x279316:0x17c,_0x1813c3:0x241,_0x31802f:0x1f4,_0x38ec35:0x268},_0x1b2c53=_0x1cbcb3,_0x5762a9=new Date(_0x35da87);_0x5762a9[_0x1b2c53(_0x1b38d0._0x279316)](0x0,0x0);for(let _0x256e82=0x0;_0x256e82<0x8*0x18*0x3c;_0x256e82++){_0x5762a9[_0x1b2c53(_0x1b38d0._0x1813c3)](_0x5762a9[_0x1b2c53(_0x1b38d0._0x31802f)]()+0x1);if(specMatches(_0x2db1d1,_0x5762a9))return _0x5762a9[_0x1b2c53(_0x1b38d0._0x38ec35)]();}return _0x5762a9[_0x1b2c53(0x268)]();}__name(nextTickFromSpec,'nextTickFromSpec');function specMatches(_0x2bdc18,_0x595ded){const _0x2ae2bc={_0x385b84:0x1f4,_0x8d52af:0x235,_0x1aad98:0x1d8,_0x50e931:0x18b,_0x36734b:0x182,_0x34c2c6:0x235},_0x1c8408=_0x1cbcb3,_0x4a0d83=_0x595ded[_0x1c8408(_0x2ae2bc._0x385b84)](),_0x77998f=_0x595ded[_0x1c8408(0x204)]();switch(_0x2bdc18['freq']){case'm5':return _0x4a0d83%0x5===0x0;case _0x1c8408(0x1b4):return _0x4a0d83%0xf===0x0;case'h1':return _0x2bdc18[_0x1c8408(0x182)][_0x1c8408(_0x2ae2bc._0x8d52af)](_0x4a0d83);case'h2':case'h4':case'h6':case'h12':return _0x2bdc18[_0x1c8408(0x182)][_0x1c8408(0x235)](_0x4a0d83)&&_0x77998f%(HOUR_STEP[_0x2bdc18[_0x1c8408(_0x2ae2bc._0x1aad98)]]??0x1)===0x0;case _0x1c8408(_0x2ae2bc._0x50e931):return _0x2bdc18[_0x1c8408(0x182)][_0x1c8408(0x235)](_0x4a0d83)&&_0x2bdc18[_0x1c8408(0x18e)][_0x1c8408(_0x2ae2bc._0x8d52af)](_0x77998f);case _0x1c8408(0x140):return _0x2bdc18[_0x1c8408(_0x2ae2bc._0x36734b)][_0x1c8408(0x235)](_0x4a0d83)&&_0x2bdc18[_0x1c8408(0x18e)][_0x1c8408(0x235)](_0x77998f)&&_0x2bdc18[_0x1c8408(0x22f)][_0x1c8408(_0x2ae2bc._0x34c2c6)](_0x595ded[_0x1c8408(0x13a)]());}}__name(specMatches,_0x1cbcb3(0x23e));function formatNextTick(_0x44fb88,_0x2dd6e7){const _0x48fc1a={_0x375570:0x1f4,_0x5603e4:0x13a},_0x380c96=_0x1cbcb3,_0x40c86e=new Date(_0x44fb88),_0x357162=new Date(_0x2dd6e7),_0x30f2ae=pad(_0x40c86e['getHours']())+':'+pad(_0x40c86e[_0x380c96(_0x48fc1a._0x375570)]()),_0x292c9d=Math[_0x380c96(0x183)]((startOfDay(_0x40c86e)-startOfDay(_0x357162))/(0x18*0x3c*0x3c*0x3e8));if(_0x292c9d===0x0)return'today\x20'+_0x30f2ae;if(_0x292c9d===0x1)return _0x380c96(0x1b0)+_0x30f2ae;return DAY_SHORT[_0x40c86e[_0x380c96(_0x48fc1a._0x5603e4)]()]+'\x20'+_0x30f2ae;}__name(formatNextTick,_0x1cbcb3(0x210));function startOfDay(_0x20e4eb){const _0x5900a0={_0x313fc1:0x268},_0x4eebf9=_0x1cbcb3,_0xf5c6e2=new Date(_0x20e4eb);return _0xf5c6e2['setHours'](0x0,0x0,0x0,0x0),_0xf5c6e2[_0x4eebf9(_0x5900a0._0x313fc1)]();}__name(startOfDay,'startOfDay');var DAY_SHORT=[_0x1cbcb3(0x148),_0x1cbcb3(0x266),_0x1cbcb3(0x24d),_0x1cbcb3(0x23a),_0x1cbcb3(0x160),_0x1cbcb3(0x146),_0x1cbcb3(0x192)],WEEK_CHIP_ORDER=[0x1,0x2,0x3,0x4,0x5,0x6,0x0];function spec(_0x426d7f,_0x286739=[0x0],_0x5735ad=[0x3],_0x20dff6=[0x1]){return{'freq':_0x426d7f,'minutes':_0x286739,'hours':_0x5735ad,'days':_0x20dff6};}__name(spec,_0x1cbcb3(0x25a));function list(_0x274fee){const _0x487bf8=_0x1cbcb3;return[..._0x274fee]['sort']((_0x3adaa6,_0x228a75)=>_0x3adaa6-_0x228a75)[_0x487bf8(0x186)](',');}__name(list,_0x1cbcb3(0x278));function numbers(_0x4276d3){const _0x2f9885={_0x1ad84b:0x240,_0x33889b:0x272},_0x26bf7b=_0x1cbcb3;if(!/^\d+(,\d+)*$/[_0x26bf7b(_0x2f9885._0x1ad84b)](_0x4276d3))return null;return _0x4276d3[_0x26bf7b(0x222)](',')[_0x26bf7b(_0x2f9885._0x33889b)](Number);}__name(numbers,'numbers');var pad=__name(_0x12ffa4=>String(_0x12ffa4)[_0x1cbcb3(0x1f1)](0x2,'0'),_0x1cbcb3(0x14f));function atMinutes(_0x30d352){const _0x207d48={_0x1d3845:0x27d,_0x4ab642:0x1cb,_0x4e0be1:0x186},_0x423860=_0x1cbcb3;if(_0x30d352[_0x423860(0x242)]===0x1&&_0x30d352[0x0]===0x0)return'';return _0x423860(_0x207d48._0x1d3845)+[..._0x30d352][_0x423860(_0x207d48._0x4ab642)]((_0x2d4022,_0x399690)=>_0x2d4022-_0x399690)[_0x423860(0x272)](_0x2e5869=>':'+pad(_0x2e5869))[_0x423860(_0x207d48._0x4e0be1)](',\x20');}__name(atMinutes,'atMinutes');function times(_0x55443b){const _0x16c074={_0x32b630:0x1cb,_0x5acaab:0x242,_0x5f3a7f:0x186},_0x57ef93=_0x1cbcb3,_0xcc0d9f=[..._0x55443b[_0x57ef93(0x18e)]][_0x57ef93(_0x16c074._0x32b630)]((_0x250328,_0x573206)=>_0x250328-_0x573206)[_0x57ef93(0x1e6)](_0x387e63=>[..._0x55443b[_0x57ef93(0x182)]][_0x57ef93(0x1cb)]((_0x3b9afe,_0x539e42)=>_0x3b9afe-_0x539e42)[_0x57ef93(0x272)](_0x2720b1=>pad(_0x387e63)+':'+pad(_0x2720b1))),_0x506477=_0xcc0d9f[_0x57ef93(0x26c)](0x0,0x4),_0x2cd7bb=_0xcc0d9f[_0x57ef93(_0x16c074._0x5acaab)]-_0x506477['length'];return _0x506477[_0x57ef93(_0x16c074._0x5f3a7f)](',\x20')+(_0x2cd7bb>0x0?'\x20+'+_0x2cd7bb:'');}__name(times,_0x1cbcb3(0x264));var BLOBS_DIR='_blobs',GENERATION_SEP='~',HASH_RE=/^[0-9a-f]{8,}$/,InvalidBlobHashError=class extends Error{static{__name(this,_0x1cbcb3(0x1d4));}constructor(_0x2b6476){const _0x5f0c4e={_0x1b5cd4:0x172,_0x4b5e9b:0x27a},_0x5d1013=_0x1cbcb3;super(_0x5d1013(_0x5f0c4e._0x1b5cd4)+_0x2b6476),this[_0x5d1013(_0x5f0c4e._0x4b5e9b)]='InvalidBlobHashError';}};function blobPathFor(_0x52d0e3,_0x5a68d1,_0x369774,_0x5dd902=0x0){return _0x52d0e3+'/'+blobRelPathFor(_0x5a68d1,_0x369774,_0x5dd902);}__name(blobPathFor,'blobPathFor');function blobRelSegmentsFor(_0x1fa6cc,_0x3e5040,_0x23c89a=0x0){const _0x2ea5f4={_0x3d24c0:0x26c},_0x3de535=_0x1cbcb3;if(!HASH_RE[_0x3de535(0x240)](_0x1fa6cc))throw new InvalidBlobHashError(_0x1fa6cc);const _0x4f35cc=_0x23c89a>0x0?''+GENERATION_SEP+_0x23c89a:'';return[BLOBS_DIR,_0x1fa6cc[_0x3de535(0x26c)](0x0,0x2),_0x1fa6cc[_0x3de535(_0x2ea5f4._0x3d24c0)](0x2,0x4),''+_0x1fa6cc+_0x4f35cc+'.'+_0x3e5040];}__name(blobRelSegmentsFor,_0x1cbcb3(0x213));function blobRelPathFor(_0x23f8c4,_0x540d6e,_0x1dbe1f=0x0){return blobRelSegmentsFor(_0x23f8c4,_0x540d6e,_0x1dbe1f)['join']('/');}__name(blobRelPathFor,_0x1cbcb3(0x1ae));function blobsRootFor(_0x338522){return _0x338522+'/'+BLOBS_DIR;}__name(blobsRootFor,_0x1cbcb3(0x1ab));var FS_UNSAFE_NAME_RE=/[\\/:*?"<>|\x00-\x1f]/;function validateFsSafeName(_0x3c87dc,_0x390e88){const _0x496d14={_0x4e52d1:0x201,_0x6486c5:0x242,_0x1e1d48:0x1ca,_0x597e5f:0x200,_0x5cc939:0x23c,_0x5a1153:0x240,_0x1a43de:0x265},_0x15b286=_0x1cbcb3;if(typeof _0x3c87dc!==_0x15b286(_0x496d14._0x4e52d1))return'must\x20be\x20a\x20string';const _0x55a4ee=_0x3c87dc['trim']();if(_0x55a4ee[_0x15b286(_0x496d14._0x6486c5)]===0x0)return _0x15b286(0x1c4);if(_0x55a4ee==='.'||_0x55a4ee==='..')return _0x15b286(_0x496d14._0x1e1d48);if(_0x55a4ee[_0x15b286(_0x496d14._0x597e5f)]('.'))return _0x15b286(0x234);if(_0x390e88?.[_0x15b286(0x254)]&&_0x55a4ee[_0x15b286(_0x496d14._0x597e5f)]('_'))return _0x15b286(_0x496d14._0x5cc939);if(FS_UNSAFE_NAME_RE[_0x15b286(_0x496d14._0x5a1153)](_0x55a4ee))return _0x15b286(_0x496d14._0x1a43de);return null;}__name(validateFsSafeName,_0x1cbcb3(0x228));var COLLECTION_NAME_FORBIDDEN_RE=FS_UNSAFE_NAME_RE;function validateCollectionName(_0x30dd9b){return validateFsSafeName(_0x30dd9b);}__name(validateCollectionName,'validateCollectionName');var RUN_MANIFEST_FILE=_0x1cbcb3(0x151),RUN_SOURCES_FILE=_0x1cbcb3(0x21d),UnsupportedRunKindError=class extends Error{static{__name(this,_0x1cbcb3(0x26a));}constructor(_0x295e71,_0x22372c){const _0x58248f=_0x1cbcb3;super('runner\x20\x22'+_0x22372c+_0x58248f(0x27f)+_0x295e71+'\x22'),this['name']=_0x58248f(0x26a);}},RunnerAdapterNotFoundError=class extends Error{static{__name(this,_0x1cbcb3(0x194));}constructor(_0x2372b6,_0x58cdc7){const _0x36693e={_0x349108:0x23f,_0xc79484:0x13c,_0x2d568d:0x27a},_0x56b0e4=_0x1cbcb3;super(_0x56b0e4(_0x36693e._0x349108)+_0x2372b6+_0x56b0e4(_0x36693e._0xc79484)+_0x58cdc7),this[_0x56b0e4(_0x36693e._0x2d568d)]='RunnerAdapterNotFoundError';}},RunnerNotConfiguredError=class extends Error{static{__name(this,_0x1cbcb3(0x24b));}constructor(_0x20ea22){const _0x3b16cf=_0x1cbcb3;super(_0x20ea22),this[_0x3b16cf(0x27a)]=_0x3b16cf(0x24b);}},EXPECT_FAIL_ANNOTATION=_0x1cbcb3(0x147),ANNOTATION_RE=/^\s*\/\/\s*@([a-z0-9-]+)\s*$/;function isAnnotationLine(_0x2bd67a){const _0x21607d={_0x57a00d:0x240},_0x5ee3bf=_0x1cbcb3;return ANNOTATION_RE[_0x5ee3bf(_0x21607d._0x57a00d)](_0x2bd67a);}__name(isAnnotationLine,_0x1cbcb3(0x209));function parseScenarioAnnotations(_0x575cf5){const _0x36fcba={_0xfea946:0x1eb,_0x30587e:0x1c5,_0xad0b84:0x178},_0x237655=_0x1cbcb3,_0x105666=new Set();for(const _0x21b29f of _0x575cf5['split'](/\r?\n/)){const _0x5bd463=_0x21b29f[_0x237655(0x22b)]();if(_0x5bd463==='')continue;if(!_0x5bd463[_0x237655(0x200)]('//'))break;const _0x5954d5=_0x5bd463[_0x237655(_0x36fcba._0xfea946)](ANNOTATION_RE);if(_0x5954d5)_0x105666[_0x237655(_0x36fcba._0x30587e)](_0x5954d5[0x1]);}return{'expectFail':_0x105666[_0x237655(_0x36fcba._0xad0b84)](EXPECT_FAIL_ANNOTATION)};}__name(parseScenarioAnnotations,_0x1cbcb3(0x207));var SEGMENT_NAME_FORBIDDEN_RE=FS_UNSAFE_NAME_RE;function validateSegmentName(_0x22185b){return validateFsSafeName(_0x22185b,{'reservedUnderscore':!![]});}__name(validateSegmentName,_0x1cbcb3(0x1f7));var TERMINAL_WS_EVENT=_0x1cbcb3(0x19b),RUNNER_CONFIG_KEYS=new Set([_0x1cbcb3(0x1e2),_0x1cbcb3(0x1bd),_0x1cbcb3(0x274),_0x1cbcb3(0x247),_0x1cbcb3(0x20d),_0x1cbcb3(0x255),_0x1cbcb3(0x1de),_0x1cbcb3(0x1c8),_0x1cbcb3(0x1db),_0x1cbcb3(0x171),'UNOTEST_DEBUG_DIR','UNOTEST_DEBUG_MAX_BYTES',_0x1cbcb3(0x20c),_0x1cbcb3(0x181),'UNOTEST_DEBUG_KEEP_CALLS',_0x1cbcb3(0x233),_0x1cbcb3(0x25c),'UNOTEST_CACHE_DIR',_0x1cbcb3(0x158),_0x1cbcb3(0x237),'DATABASE_URL']);function isRunnerConfigKey(_0x4989a3){const _0x533fb7=_0x1cbcb3;return RUNNER_CONFIG_KEYS[_0x533fb7(0x178)](_0x4989a3);}__name(isRunnerConfigKey,_0x1cbcb3(0x1ec));function categorizeVariable(_0x16e5c4){const _0x247aa3=_0x1cbcb3;if(_0x16e5c4['source']==='secrets')return _0x247aa3(0x1b3);return isRunnerConfigKey(_0x16e5c4['name'])?'runner':_0x247aa3(0x1f8);}__name(categorizeVariable,_0x1cbcb3(0x1a5));function isExternalVarName(_0x2213bc){const _0xc6b8da={_0x5c6847:0x240},_0x2bf2e6=_0x1cbcb3;return/^[A-Z][A-Z0-9_]*$/[_0x2bf2e6(_0xc6b8da._0x5c6847)](_0x2213bc);}__name(isExternalVarName,_0x1cbcb3(0x166));var ENV_KEY_RE=/^[A-Za-z_][A-Za-z0-9_]*$/;function*assignmentEntries(_0x4371f9){const _0xb20db6={_0x20a315:0x222,_0x438fda:0x22b,_0x5b6d17:0x200,_0x410422:0x26c},_0x5cac92=_0x1cbcb3;for(const _0x3a0c1a of _0x4371f9[_0x5cac92(_0xb20db6._0x20a315)](/\r?\n/)){const _0x301953=_0x3a0c1a[_0x5cac92(_0xb20db6._0x438fda)]();if(_0x301953===''||_0x301953[_0x5cac92(_0xb20db6._0x5b6d17)]('#'))continue;const _0x14a0cf=_0x301953[_0x5cac92(0x1a0)]('=');if(_0x14a0cf<=0x0)continue;const _0x52eee3=_0x301953[_0x5cac92(0x26c)](0x0,_0x14a0cf)['trim']();if(!ENV_KEY_RE['test'](_0x52eee3))continue;yield[_0x52eee3,_0x301953[_0x5cac92(_0xb20db6._0x410422)](_0x14a0cf+0x1)['trim']()];}}__name(assignmentEntries,'assignmentEntries');function parseEnvContent(_0x43bacb){const _0x2d5a52={_0x3a33e7:0x242},_0x3dda71=_0x1cbcb3,_0x46cc34={};for(const [_0x1301af,_0x1fa733]of assignmentEntries(_0x43bacb)){let _0xd22fe5=_0x1fa733;if(_0xd22fe5[_0x3dda71(0x242)]>=0x2){const _0x460b87=_0xd22fe5[0x0],_0x11cb76=_0xd22fe5[_0xd22fe5[_0x3dda71(_0x2d5a52._0x3a33e7)]-0x1];(_0x460b87==='\x22'||_0x460b87==='\x27')&&_0x460b87===_0x11cb76&&(_0xd22fe5=_0xd22fe5[_0x3dda71(0x26c)](0x1,-0x1));}_0x46cc34[_0x1301af]=_0xd22fe5;}return _0x46cc34;}__name(parseEnvContent,'parseEnvContent');function serializeEnvValue(_0x2373b3){const _0x309fd5={_0x15770b:0x240,_0x3a3c03:0x1af,_0x2e07b9:0x1af,_0x4742dd:0x1af},_0xe5662d=_0x1cbcb3;if(_0x2373b3==='')return'';if(/[\s#"'=\\]|^[`]/[_0xe5662d(_0x309fd5._0x15770b)](_0x2373b3)||/[\n\r]/[_0xe5662d(_0x309fd5._0x15770b)](_0x2373b3)){const _0x3b7d30=_0x2373b3[_0xe5662d(_0x309fd5._0x3a3c03)](/\\/g,'\x5c\x5c')[_0xe5662d(_0x309fd5._0x2e07b9)](/"/g,'\x5c\x22')[_0xe5662d(_0x309fd5._0x2e07b9)](/\n/g,'\x5cn')[_0xe5662d(_0x309fd5._0x4742dd)](/\r/g,'\x5cr');return'\x22'+_0x3b7d30+'\x22';}return _0x2373b3;}__name(serializeEnvValue,'serializeEnvValue');function envKeys(_0x2a2e8f){const _0x5f02e4=_0x1cbcb3,_0x63835b=new Set();for(const [_0x5d7e69]of assignmentEntries(_0x2a2e8f))_0x63835b[_0x5f02e4(0x1c5)](_0x5d7e69);return _0x63835b;}__name(envKeys,'envKeys');function isSectionDivider(_0x1199f6){const _0x8c30ae={_0x10fb94:0x22b},_0x403793=_0x1cbcb3,_0x39eccc=_0x1199f6[_0x403793(_0x8c30ae._0x10fb94)]();return _0x39eccc[_0x403793(0x200)]('#')&&/---/['test'](_0x39eccc);}__name(isSectionDivider,_0x1cbcb3(0x212));function isAssignmentLine(_0x127ea6){const _0x563fc5={_0x2e1fe9:0x200,_0x949e2d:0x240,_0xf2db73:0x22b},_0x1ede39=_0x1cbcb3,_0x43329a=_0x127ea6['trim']();if(_0x43329a===''||_0x43329a[_0x1ede39(_0x563fc5._0x2e1fe9)]('#'))return![];const _0x27dfb2=_0x43329a[_0x1ede39(0x1a0)]('=');return _0x27dfb2>0x0&&ENV_KEY_RE[_0x1ede39(_0x563fc5._0x949e2d)](_0x43329a['slice'](0x0,_0x27dfb2)[_0x1ede39(_0x563fc5._0xf2db73)]());}__name(isAssignmentLine,_0x1cbcb3(0x1b6));function isAssignmentOf(_0x3c4f6b,_0x1a046a){const _0x2098cc={_0x472930:0x22b,_0x14a54e:0x200,_0x44f7f5:0x26c},_0x10d837=_0x1cbcb3,_0x43ecc2=_0x3c4f6b[_0x10d837(_0x2098cc._0x472930)]();if(_0x43ecc2===''||_0x43ecc2[_0x10d837(_0x2098cc._0x14a54e)]('#'))return![];const _0x13c976=_0x43ecc2['indexOf']('=');if(_0x13c976<=0x0)return![];return _0x43ecc2[_0x10d837(_0x2098cc._0x44f7f5)](0x0,_0x13c976)['trim']()===_0x1a046a;}function _0x28d7(){const _0x1d7dd5=['tK9Fq09mt1i','y2XP','CgfYC2vdAvj1BLjLCxvLC3q','C291CMnL','y29TCgXLDgvK','Dw5RBM93BI1LBNzPCM9UBwvUDa','zNjLzxPL','lNzPzxDLCI5SB2nR','vgH1','mZu5mtnQsu9Jv0e','Ag9ZDa','lMPZB24','qxbW','z2L0','AxnfEhrLCM5HBfzHCK5HBwu','C3rVCMfNzq','Aw50zxjHy3rPDMu','zMfPBgLUz1nPBMnL','vu5pvevtvf9kvurhrv9mt0DFtevwruW','lMvUDG','C2HH','icOGkIaQicO','C2nOzwr1BgvuyxjNzxq','CgfYC2vbChbtzxj2zxjfDMvUDa','ChjLCgfYzq','vu5pvevtvf9erujvrW','yMXVyIbOyxnOig11C3qGyMuGBg93zxjJyxnLigHLEcWGz290oIa','Dg9tDhjPBMC','vu5pvevtvf9kvurhrv9bq0nfu1nFve9lru4','uNvUBMvY','CNvUswq','zgvZy3jPyMvdCM9U','AgfZ','zgvIDwDeAxjgB3i','Dg9mB3DLCKnHC2u','vu5pvevtvf9kvurhrv9ut0TftG','C2v0u2vJB25KCW','mtuYEuf3vhfR','zM9SzfnJzw5HCMLVuNvU','vvrd','C3rHDhvZ','vu5pvevtvf9erujvr19ive1mx01bwf9cwvrfuW','BwLUDxrLCW','CM91BMq','zMLSDgvY','Dw5RBM93BI1YDw5UzxiTA2v5','AM9PBG','B2jQzwn0','Dw5VDgvZDc8UC2vJCMv0CW','xsbPCYbUB3qGysb2ywXPzcbLBNrYEsdIGjqGAxqGBMvLzhmGzxHHy3rSEsbVBMuGB2yGygnVBgXLy3rPB246ycaVigbZy2vUyxjPBZPGihbSDxmGysbGy3jVBJPGihn0CMLUzW','CMfUzg9T','zgfPBhK','vu5pvevtvf9kvurhrv9qt1ju','zMLSzq','Ag91CNm','CMvXDwLYzvj1BKrPCKzVCG','igLZigfSC28GC2v0igLUihLVDxiGC2HLBgWGzw52AxjVBM1LBNqG4OcuigL0ihDPBgWGA2vLCcbYzxnVBhzPBMCGzNjVBsb0AgvYzsaODgHLigvUDMLYB25Tzw50ihDPBNmGB3zLCIb0AguGzMLSzsKU','ouLPu1nurG','u2f0','x2HLBhbLCNm','uNvUBMvYqwrHChrLCK5VDezVDw5KrxjYB3i','CgfYC2vcDw5KBgvnyw5PzMvZDa','CMvNzxHmAxrLCMfS','yM9VBgvHBG','z2v0uMfUzg9TvMfSDwvZ','Aw5Zzxj0rw52vMfY','z2v0vvrdtw9UDgG','DgvYBwLUywW','vu5pvevtvf9ftLy','zxzLCNKGnsbTAw4','C2HHCMrqyxrOrM9YvgLTzxn0yw1W','yxbWlxnLCNzLCJPLCNjVCG','Aw5KzxHpzG','Dw5HDxrOB3jPEMvK','C2vJCMv0CW','CgfYC2vhAxrjBMzV','DMLLD2vY','y2f0zwDVCML6zvzHCMLHyMXL','BM8Ty29SBgvJDgLVBNm','z2v0vvrdrNvSBfLLyxi','y3jLyxrLzef0','C2nLBMfYAw9szwzgCM9TrMLSzu5HBwu','y2fUB25Py2fSu2nOzwr1Bgvtzxq','yMXVyNnsB290rM9Y','CgfYC2vdAvj1BLjLC3bVBNnL','CxvLDwveAxjgB3i','yMXVyLjLBfbHDgHgB3i','CMvWBgfJzq','Dg9TB3jYB3CG','C2XVDhm','DgvZDerPCKzVCG','C2vJCMv0','Bte1','vu5pvevtvf9kvurhrv9quK9wsurfuG','AxnbC3nPz25Tzw50tgLUzq','zgfPBhKGyxqG','C2nVCguTBwLZBwf0y2G','AxngAw5PDgu','ufiGiW','ntG1mtmWoe1uDxPyvG','zhvYyxrPB25nCW','vu5pvevtvf9iruferuq','lNDVCMTZCgfJzs5QC29U','BNvTyMvY','CgfYC2vrDwv1zvrPy2TLDe5HBwu','vu5pvevtvf9kvurhrv9quKvbtujmrq','z2L0AhvI','y3jLyxrLza','BxvZDcbUB3qGyMuGzw1WDhK','ywrK','Dw5VDgvZDc9Zy2HLzhvSzxmUEwfTBa','igLZigfSC28GC2v0igLUihvUB3rLC3qVlNnLy3jLDhmG4OcuihrOzsbZzwnYzxqGDMfSDwuGC2HHzg93CYb0AgLZig9Uzs4','vu5pvevtvf9usu1fwK9orq','xsbYzxbLyxrZia','BxvZDcbUB3qGyMuGiI4Iig9YiciUlIi','C29YDa','kI81icOGkIaQicO','x2rHEs5QC29UBa','CgfYC2vdAvbYB3zPzgvY','vu5pvevtvf9rvuvvrv9mruftrq','yxbP','vu5pvevtvf9kvurhrv9it1nu','CxvLDwvqCMLVCML0EvjHBMS','BwnW','sw52ywXPzejSB2jiyxnOrxjYB3i','Aw50zxjYDxb0zwq','CMvNzxG','zMfPBfn0CMvHAW','zNjLCq','DgLJA2v0CW','CgXHBKfKzfzHCMLHyMXL','vu5pvevtvf9mt0DFtevwruW','zMLUza','vu5pvevtvf9kvurhrv9ts0Lqx1bsruzmsuDiva','vu5pvevtvf9mt0nbteu','y3jVBG','y29UzMLN','CgfYC2vxB3jRC3bHy2vgAwXL','vu5pvevtvf9cuK9xu0vs','mZKZodi3D2HxrwfO','zxHPC3rZ','CNvUBMvY','zMXHDe1HCa','CgfYC2u','lNj1BNm','Dw5VDgvZDc8Uzw52','l2fWAs9IB3GVyNvUzgXLCW','Bwf0y2G','AxnsDw5UzxjdB25MAwDlzxK','BwLUlxzLCNnPB24','zgvZy3jPyMvuAwnRzxrdAq','kI81','lY5Kzwj1z2DLCG','CgfKu3rHCNq','C2HHCMreyxLZrgvZy2vUzgLUzW','kI8XnsaQicOGkIaQ','z2v0twLUDxrLCW','zw5KC1DPDgG','AxnuzxjTAw5HBfj1BNrPBwvtDgf0zq','DMfSAwrHDgvtzwDTzw50tMfTzq','yxbW','Ag91CMX5','AxnbC3nPz25Tzw50t2y','CNvUswrtDgfYDgvKqxq','AM9PBKXPBMvZ','CMvTB3zLrw52vMfY','zgvMAw5LuhjVCgvYDhK','mJGZodGWmfbIBgjdCa','C3rHCNrZv2L0Aa','C3rYAw5N','icH3AxaP','lMPZB25S','z2v0sg91CNm','AxnszwnVCMq','iIdIGjqGB25LihnJAgvKDwXLihbLCIb0yxjNzxq','CgfYC2vty2vUyxjPB0fUBM90yxrPB25Z','ChjVDMLKzxi','AxnbBM5VDgf0Aw9UtgLUzq','zxjYB3i','C2nOzwr1Bgu','vu5pvevtvf9erujvr19quKvwsuvxx0jzvevt','vu5pvevtvf9eruzbvuXux05bvKLhqvrjt05FveLnru9vvf9nuW','AxnjBNrLz2vY','ChjVAMvJDfj1BKrPCKzVCG','zM9YBwf0tMv4DfrPy2S','icOGkIaQ','Axntzwn0Aw9UrgL2AwrLCG','yMXVyLjLBfnLz21LBNrZrM9Y','AxnrDwv1zurPCK5HBwu','vu5pvevtvf9kvurhrv9nt0rfta','yxv0Ag9YAw5N','CMfUAW','iYaTls0G','A2LUza','nJH0y1PhvKW','BwvYz2vty2HLzhvSzxm','CNvUC0rPCKzVCG','C291CMnLCY5QC29U','mZm4mJK3mdbgrxLQAgu','ChjVAMvJDff1zxvLuM9VDa','CgLJA2vYlxnUyxbZAg90lNr4Da','mtaWnZi0nw5gAMzqyW','C3bSAxq','yxj0AwzHy3rZuM9VDezYB20','A2v5CW','BwfRzvj1BKLK','AwqTBwLZBwf0y2G','CgfYC2vwyxjPywjSzuDHChm','DMfSAwrHDgvgC1nHzMvoyw1L','zMLUzeLUzgv4','Dg9VlwXHCMDL','DhjPBq','yNvUzgXLlMPZB24','Bgf5zxjZrM9Y','y29SBgvJDgLVBG','zgf5CW','l2P1zgDL','mty0oduYwgP1zKPd','vu5pvevtvf9kvurhrv9vuKW','vu5pvevtvf9orvrxt1jl','BxvZDcbUB3qGC3rHCNqGD2L0AcaNlIC','Aw5JBhvKzxm','ztjL','rK9sq0vFq09mt1i','yxbWlxnLCNzLCJPYzwfKEq','ywn0AxzLrw52tMfTzq','v2vK','y3j5ChrV','BxvZDcbUB3qGC3rHCNqGD2L0AcaNxYCGkhjLC2vYDMvKkq','y29TBwfUzhmUANnVBMW','C3bLy01HDgnOzxm','y2fUBM90igXVywqGCNvUBMvYigfKyxb0zxiGiG','DgvZDa','C2v0twLUDxrLCW','BgvUz3rO','CgfYC2vcDw5KBgu','zxzLCNKG','iokaLcbWAwnRigeGzgLMzMvYzw50ig5HBwuGB3iGzwrPDcb0AguGzxHPC3rPBMCGDMfSDwuU','lNnUyxbZAg90CW','vu5pvevtvf9eruzbvuXux1rjtuvpvvrFtvm','zw52tMfTzxngCM9TrgLYtgLZDgLUzW','x2nVBgXLy3rPB25Z','zMXHz3m','uNvUBMvYtM90q29UzMLNDxjLzevYCM9Y','zgvZy3jPyMvcDw5KBgu','vhvL','ChjVAMvJDfj1BNnsB290','DMfYAwfIBgvhyxbZ','C3rYAw5NAwz5','C2nOzwr1BgvZwW','D29YA2vYCW','BwfPBNrLBMfUy2u','CMvZzxj2zwrvBMrLCNnJB3jL','vu5pvevtvf9qt1bvuf9huKfdrv9nuW','CNvUDgLTzs5QC29U','CgLK','ChvZAa','BwfSzM9YBwvK','C3bLyW','C2vJCMv0C0XHEwvYrMLSzxngB3i','vu5pvevtvf9dt05tt0Xf','C3rKB3v0lMXVzW','C3bSAwnL','AxnbCNjHEq','lMrLyNvN','yxbWlxnLCNzLCJPYzxvZzwq','x3nJzw5HCMLVCW','C3rKzxjYlMXVzW','DgLTzxm','BxvZDcbUB3qGy29UDgfPBIbCic8GoIaQid8GiIa8id4GFcbVCIbJB250CM9SignOyxjHy3rLCNm','tw9U','icOV','z2v0vgLTzq','C2nLBMfYAw8','vw5ZDxbWB3j0zwrsDw5lAw5KrxjYB3i','vu5pvevtvf9kvurhrv9usu1ft1vux01t','C2XPy2u','y29TCgfYzvf1zxvLvgLJA2v0tMfTzxm','CgfYC2vty2HLzhvSzxnkC29U','yhnJAgvKDwXLCZPGig11C3qGyMuGyw4GyxjYyxK','AxnsDw5ZrgLYtMfTzq','z2v0vvrdrgf0zq','BwfW','CgfYC2vty2HLzhvSzuvUDhj5','vu5pvevtvf9tte9xx01p','igLZigfSC28GC2v0igLUihvUB3rLC3qVlMvUDIdIGjqGDgHLihnLy3jLDcb2ywX1zsbUB3CGC2HHzg93CYbPDc4','zxHWzwn0zwqGysbTyxbWAw5NihDPDgGGysbGC2nOzwr1BgvZoMaGyxjYyxK','vu5pvevtvf9kvurhrv9nt0rf','BgLZDa','C2fUAxrPEMvsDw5jzfnLz21LBNq','BMfTzq','zgLYDhK','C29Tzq','igf0ia','zw52q29UDgvUDa','iIbKB2vZig5VDcbZDxbWB3j0ihj1BIbRAw5Kici','z2v0rgf5','C2nOzw1HvMvYC2LVBG','iI4G','lM11Dgv4','C3rHCNrLzef0','AdeY','D2vLA2X5','vu5pvevtvf9buLrjrKfdvfnFuK9pva','yNjHBMnO','zxHHBxbSzq','C2vJCMv0C0nVBNrLBNq','yNvUzgXLswq','rNjP','zxHWzwn0lwzHAwW','u3vU','zMfPBgvK','y3jVBKzYB21tCgvJ','vu5pvevtvf9cvu5etevFsuq','C3rYAw5NtgLZDa','Dw5VDgvZDa','igfSCMvHzhKGzxHPC3rZigLUia','CgfK','vu5pvevtvf9ot19rvuvvrq','BwfUAwzLC3qUANnVBG','lNf1zxvL','C2HHCMreAxjgB3i','CxvLDwvK','CgfYC2vuAwnRzxrdAq','ywjVCNrLza','zw52'];_0x28d7=function(){return _0x1d7dd5;};return _0x28d7();}__name(isAssignmentOf,_0x1cbcb3(0x1fa));function splitLines(_0xba4a16){const _0x568f85={_0xc2e14d:0x1f5},_0xbf321a=_0x1cbcb3,_0x9156c=_0xba4a16[_0xbf321a(_0x568f85._0xc2e14d)]('\x0a'),_0x3b4846=_0x9156c?_0xba4a16[_0xbf321a(0x26c)](0x0,-0x1):_0xba4a16;return{'lines':_0x3b4846===''?[]:_0x3b4846[_0xbf321a(0x222)]('\x0a'),'trailingNewline':_0x9156c};}__name(splitLines,'splitLines');function joinLines(_0x4b993d,_0xbf7edf){const _0xe7dd92={_0xfc5ef:0x186},_0xa282d8=_0x1cbcb3,_0x24fef9=_0x4b993d[_0xa282d8(_0xe7dd92._0xfc5ef)]('\x0a');return _0xbf7edf||_0x24fef9===''?_0x24fef9+'\x0a':_0x24fef9;}__name(joinLines,_0x1cbcb3(0x1fc));function insertEnvVar(_0x58d1cc,_0x585687,_0x4b44a1,_0x2c6a92){const _0x5a2796={_0x1c633a:0x229,_0xe8446a:0x22b,_0x597f5c:0x242,_0x19732f:0x242},_0x5b6b59=_0x1cbcb3,_0x58cb72=_0x585687+'='+serializeEnvValue(_0x4b44a1),{lines:_0x367927,trailingNewline:_0x25583e}=splitLines(_0x58d1cc);if(_0x2c6a92){const _0x22fee6=new RegExp('\x5cb'+_0x2c6a92[_0x5b6b59(0x17a)]()+'\x5cb'),_0x2f4fc1=_0x367927[_0x5b6b59(_0x5a2796._0x1c633a)](_0x23af98=>isSectionDivider(_0x23af98)&&_0x22fee6[_0x5b6b59(0x240)](_0x23af98[_0x5b6b59(0x17a)]()));if(_0x2f4fc1!==-0x1){let _0x455f04=_0x367927[_0x5b6b59(0x242)];for(let _0x90274e=_0x2f4fc1+0x1;_0x90274e<_0x367927['length'];_0x90274e++){if(isSectionDivider(_0x367927[_0x90274e])){_0x455f04=_0x90274e;break;}}let _0x20b2b2=-0x1,_0x3810ec=-0x1;for(let _0x41156f=_0x2f4fc1+0x1;_0x41156f<_0x455f04;_0x41156f++){if(_0x367927[_0x41156f][_0x5b6b59(_0x5a2796._0xe8446a)]()!=='')_0x3810ec=_0x41156f;if(isAssignmentLine(_0x367927[_0x41156f]))_0x20b2b2=_0x41156f;}const _0x195ce1=_0x20b2b2>=0x0?_0x20b2b2:_0x3810ec,_0x46f9eb=_0x195ce1>=0x0?_0x195ce1+0x1:_0x2f4fc1+0x1;return _0x367927[_0x5b6b59(0x25e)](_0x46f9eb,0x0,_0x58cb72),joinLines(_0x367927,_0x25583e||_0x367927[_0x5b6b59(_0x5a2796._0x597f5c)]>0x0);}if(_0x367927[_0x5b6b59(_0x5a2796._0x19732f)]>0x0)_0x367927[_0x5b6b59(0x258)]('');return _0x367927['push'](_0x5b6b59(0x218)+_0x2c6a92+'\x20---',_0x58cb72),joinLines(_0x367927,!![]);}return _0x367927['push'](_0x58cb72),joinLines(_0x367927,!![]);}__name(insertEnvVar,_0x1cbcb3(0x199));function removeEnvVar(_0x18d0a3,_0x298e8f){const _0x1b3e53=_0x1cbcb3,{lines:_0xe4907a,trailingNewline:_0x43b80f}=splitLines(_0x18d0a3),_0x17293d=_0xe4907a[_0x1b3e53(0x184)](_0x596d0f=>!isAssignmentOf(_0x596d0f,_0x298e8f)),_0x407a5a=_0x17293d[_0x1b3e53(0x242)]!==_0xe4907a['length'];return{'content':joinLines(_0x17293d,_0x43b80f),'removed':_0x407a5a};}__name(removeEnvVar,_0x1cbcb3(0x1fd));var SECTION_BY_KIND={'app':_0x1cbcb3(0x164),'runner':_0x1cbcb3(0x175),'secret':void 0x0};function planAddVariable(_0x597be2){const _0x8929a={_0x39aca5:0x1e5,_0x5ea838:0x27e,_0x3681f:0x178,_0x1bb03c:0x1a2,_0x35060d:0x1b3},_0x19c374=_0x1cbcb3,{name:_0x411e25,kind:_0x3e8d63}=_0x597be2;if(_0x3e8d63===_0x19c374(_0x8929a._0x39aca5)){if(!isRunnerConfigKey(_0x411e25))return{'ok':![],'code':_0x19c374(0x185),'message':_0x411e25+'\x20is\x20not\x20a\x20known\x20runner\x20setting\x20—\x20choose\x20one\x20from\x20the\x20runner-config\x20list.'};}else{if(!isExternalVarName(_0x411e25))return{'ok':![],'code':'invalid-name','message':_0x411e25+'\x20must\x20be\x20UPPER_SNAKE\x20(e.g.\x20APP_BASE_URL)\x20so\x20a\x20scenario\x20can\x20reference\x20it\x20by\x20name.'};}const _0x30be54=envKeys(_0x597be2[_0x19c374(_0x8929a._0x5ea838)])[_0x19c374(_0x8929a._0x3681f)](_0x411e25),_0x188bf8=envKeys(_0x597be2[_0x19c374(0x144)])[_0x19c374(0x178)](_0x411e25),_0x114339=_0x3e8d63===_0x19c374(0x1b3)?_0x19c374(_0x8929a._0x1bb03c):_0x19c374(0x157),_0x2cb41d=_0x114339===_0x19c374(_0x8929a._0x1bb03c)?_0x188bf8:_0x30be54,_0x4818ce=_0x114339===_0x19c374(0x1a2)?'unotest/.secrets':'unotest/.env';if(_0x2cb41d)return{'ok':![],'code':'duplicate','message':_0x411e25+_0x19c374(0x14e)+_0x4818ce+_0x19c374(0x245)};const _0x1a87d6=[];return _0x3e8d63===_0x19c374(_0x8929a._0x35060d)&&_0x30be54&&_0x1a87d6['push'](_0x411e25+_0x19c374(0x275)),_0x3e8d63!==_0x19c374(_0x8929a._0x35060d)&&_0x188bf8&&_0x1a87d6['push'](_0x411e25+_0x19c374(0x1c7)),{'ok':!![],'target':_0x114339,'sectionLabel':SECTION_BY_KIND[_0x3e8d63],'warnings':_0x1a87d6};}__name(planAddVariable,_0x1cbcb3(0x1da));function deleteShadowWarning(_0x42fc17,_0x3ee18f,_0x2b708a){const _0x44698b={_0x5c252b:0x190},_0x381f30=_0x1cbcb3;if(_0x2b708a!==void 0x0&&_0x2b708a!==_0x3ee18f)return[_0x42fc17+_0x381f30(_0x44698b._0x5c252b)];return[];}__name(deleteShadowWarning,'deleteShadowWarning');var TERMINAL_RUNTIME_STATES=[_0x1cbcb3(0x15c),_0x1cbcb3(0x149),_0x1cbcb3(0x156)];function isTerminalRuntimeState(_0x14b2d1){const _0x3570f1={_0x53abd4:0x235},_0x2f7669=_0x1cbcb3;return TERMINAL_RUNTIME_STATES[_0x2f7669(_0x3570f1._0x53abd4)](_0x14b2d1);}__name(isTerminalRuntimeState,_0x1cbcb3(0x1f6));var JUDGE_ROUTES={'judge':_0x1cbcb3(0x230),'health':'/health'},JUDGE_ENV={'mode':_0x1cbcb3(0x277),'url':_0x1cbcb3(0x232),'token':_0x1cbcb3(0x17b),'requestTimeoutMs':_0x1cbcb3(0x26b),'preamble':_0x1cbcb3(0x1c1),'provider':_0x1cbcb3(0x1b5),'model':_0x1cbcb3(0x215),'callTimeoutMs':'UNOTEST_JUDGE_CALL_TIMEOUT_MS','retries':'UNOTEST_JUDGE_RETRIES','vote':'UNOTEST_JUDGE_VOTE','accessToken':_0x1cbcb3(0x174),'claudeBin':'UNOTEST_JUDGE_CLAUDE_BIN','host':_0x1cbcb3(0x1d1),'port':_0x1cbcb3(0x18c),'logLevel':_0x1cbcb3(0x16a),'skipPreflight':_0x1cbcb3(0x1dd)};export{ARTIFACTS_ROOT_ENV,BLOBS_DIR,BOX_TOKEN_ENV,BOX_URL_ENV,BUNDLE_ID_ENV,BUNDLE_MANIFEST_FILE,BUNDLE_SCHEMA_VERSION,BUNDLE_UPLOAD_PATH,CI_RUN_PATH,COLLECTIONS_SUBDIR,COLLECTION_NAME_FORBIDDEN_RE,COMMANDS_FILE,DAY_INDEX_FILE,DAY_SHORT,E2E_SUBDIR,ENV_FILE,EXPECT_FAIL_ANNOTATION,FREQ_FIELDS,HEARTBEAT_FILE,HELPERS_SUBDIR,InvalidBlobHashError,JUDGE_ENV,JUDGE_ROUTES,LOCK_FILE,LOG_FILE,PICKER_SNAPSHOT_FILE,QUEUE_DISABLED_ENV,QUEUE_GLOBAL_DIR_ENV,QUEUE_GLOBAL_SLOTS_ENV,QUEUE_LEASE_ENV,QUEUE_MUTEX_FILE,QUEUE_PRIORITIES,QUEUE_RUNNING_DIR,QUEUE_SCHEMA_VERSION,QUEUE_SLOTS_DIR,QUEUE_SUBDIR,QUEUE_TICKETS_DIR,RUNNER_CONFIG_KEYS,RUNS_SUBDIR,RUNTIME_FILE,RUN_INDEX_SCHEMA_VERSION,RUN_MANIFEST_FILE,RUN_SOURCES_FILE,RunnerAdapterNotFoundError,RunnerNotConfiguredError,SCENARIOS_INDEX_DIR,SCENARIOS_LATEST_FILE,SCENARIO_RECENT_WINDOW,SCHEDULES_FILE,SCHEDULES_FINGERPRINT_ENV,SECRETS_FILE,SEGMENT_NAME_FORBIDDEN_RE,SNAPSHOTS_SUBDIR,STDERR_FILE,STDOUT_FILE,STEPS_FILE,TERMINAL_RUNTIME_STATES,TERMINAL_WS_EVENT,UNOTEST_DIR,UnplaceableRunIdError,UnsupportedRunKindError,WEEK_CHIP_ORDER,WORKSPACE_FILE,WORKSPACE_SCHEMA_VERSION,activeEnvName,artifactsRootFrom,blobPathFor,blobRelPathFor,blobRelSegmentsFor,blobsRootFor,canonicalScheduleSet,categorizeVariable,compareQueueTicketNames,cronFromSpec,debugDirFor,debuggerFileFor,deleteShadowWarning,describeBundle,describeCron,describeSpec,describeTicketCi,envFileFor,envKeys,envLayerFilesFor,envNamesFromDirListing,foldScenarioRun,formatNextTick,insertEnvVar,isAnnotationLine,isExternalVarName,isFailingStatus,isQueueDirName,isRecord,isRegexLiteral,isRunnerConfigKey,isRunsDirName,isTerminalRuntimeState,makeQueueTicketName,makeRunId,mergeSchedules,nextTickFromSpec,parseAppServerEvent,parseBundleManifest,parseBundleUploadResponse,parseCiProvider,parseCiRunRequest,parseCiRunResponse,parseEnvContent,parseQueueTicket,parseQueueTicketName,parseScenarioAnnotations,parseScheduleEntry,parseSchedulesDoc,parseSchedulesJson,parseWorkspaceFile,planAddVariable,projectQueueRoot,projectRunDirFor,projectRunsRoot,queueDirFor,queuePriorityFromRank,queuePriorityRank,regexLiteral,removeEnvVar,requireRunDirFor,runDirFor,runIdStartedAt,runsDirFor,sanitizeRunIdSegment,scenarioIndexFileName,scenarioRefFromFileName,scheduleTarget,secretsFileFor,secretsLayerFilesFor,serializeEnvValue,shardDaysDescending,shardDirFor,shardPathForRunId,shardPathForTimestamp,specFromCron,testDirFor,validateCollectionName,validateSegmentName};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@unotest/protocol",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.28.0",
|
|
4
4
|
"description": "Cross-runner protocol for the @unotest ecosystem: shared TypeScript types, path constants, the IRunnerAdapter contract that lets @unotest/viewer drive @unotest/web, @unotest/mobile (and future runners) through the same surface. Pure types + pure functions only — zero runtime deps, browser-safe.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"publishConfig": {
|