humanish 0.48.0 → 0.50.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +65 -6
- package/dist/actor-contract.d.ts +14 -0
- package/dist/actor-contract.js.map +1 -1
- package/dist/computer-use-actor.d.ts +3 -7
- package/dist/computer-use.d.ts +4 -7
- package/dist/computer-use.js +39 -3
- package/dist/computer-use.js.map +1 -1
- package/dist/concurrent-shared-world-lab.d.ts +5 -0
- package/dist/concurrent-shared-world-lab.js +30 -1
- package/dist/concurrent-shared-world-lab.js.map +1 -1
- package/dist/cua-actor-lab.d.ts +7 -0
- package/dist/cua-actor-lab.js +50 -9
- package/dist/cua-actor-lab.js.map +1 -1
- package/dist/e2b-terminal-lab.d.ts +7 -0
- package/dist/e2b-terminal-lab.js +54 -0
- package/dist/e2b-terminal-lab.js.map +1 -1
- package/dist/init-templates.js +7 -2
- package/dist/init-templates.js.map +1 -1
- package/dist/key-resolution.d.ts +67 -0
- package/dist/key-resolution.js +373 -0
- package/dist/key-resolution.js.map +1 -0
- package/dist/lab-engine.d.ts +11 -0
- package/dist/lab-engine.js +18 -0
- package/dist/lab-engine.js.map +1 -1
- package/dist/openai-responses-cu.d.ts +1 -1
- package/dist/openai-responses-cu.js +8 -2
- package/dist/openai-responses-cu.js.map +1 -1
- package/dist/oss-lab.d.ts +3 -0
- package/dist/oss-lab.js.map +1 -1
- package/dist/oss-meta-lab.d.ts +3 -0
- package/dist/oss-meta-lab.js +13 -0
- package/dist/oss-meta-lab.js.map +1 -1
- package/dist/pricing.d.ts +20 -0
- package/dist/pricing.js +109 -17
- package/dist/pricing.js.map +1 -1
- package/dist/program.d.ts +18 -1
- package/dist/program.js +291 -17
- package/dist/program.js.map +1 -1
- package/dist/run-detail.d.ts +59 -0
- package/dist/run-detail.js +108 -0
- package/dist/run-detail.js.map +1 -0
- package/dist/run-index.d.ts +71 -0
- package/dist/run-index.js +206 -0
- package/dist/run-index.js.map +1 -0
- package/dist/run-paths.js +16 -1
- package/dist/run-paths.js.map +1 -1
- package/dist/run-projection.d.ts +182 -0
- package/dist/run-projection.js +349 -0
- package/dist/run-projection.js.map +1 -0
- package/dist/run-status.d.ts +139 -0
- package/dist/run-status.js +218 -0
- package/dist/run-status.js.map +1 -0
- package/dist/run.d.ts +15 -0
- package/dist/run.js +115 -6
- package/dist/run.js.map +1 -1
- package/dist/scripted-browser-lab.d.ts +5 -0
- package/dist/scripted-browser-lab.js +29 -1
- package/dist/scripted-browser-lab.js.map +1 -1
- package/dist/shared-world-lab.d.ts +5 -0
- package/dist/shared-world-lab.js +29 -1
- package/dist/shared-world-lab.js.map +1 -1
- package/dist/tui-app.js +402 -0
- package/dist/tui-contract.d.ts +73 -0
- package/dist/tui-contract.js +32 -0
- package/dist/tui-contract.js.map +1 -0
- package/dist/tui-launch.d.ts +48 -0
- package/dist/tui-launch.js +159 -0
- package/dist/tui-launch.js.map +1 -0
- package/docs/contracts/run-bundle.md +8 -0
- package/docs/contracts/schemas.md +85 -7
- package/docs/goals/current.md +16 -7
- package/docs/ramp/README.md +1 -1
- package/package.json +8 -5
- package/skills/humanish/SKILL.md +19 -0
package/README.md
CHANGED
|
@@ -30,9 +30,9 @@ actually involves ([docs/principles/three-roles.md](docs/principles/three-roles.
|
|
|
30
30
|
protocol: personas, discrete tasks with success criteria the participant
|
|
31
31
|
never sees, and a budget set once at the study level, the way recruiting
|
|
32
32
|
decisions are made.
|
|
33
|
-
- **The stakeholder** watches through Observer
|
|
34
|
-
their denominator: `2/2 reached the goal, 1 reported
|
|
35
|
-
reach-signup 2/2 · read-verification-mail 2/2`.
|
|
33
|
+
- **The stakeholder** watches through Observer, drives from `humanish tui`, and
|
|
34
|
+
reads results that carry their denominator: `2/2 reached the goal, 1 reported
|
|
35
|
+
friction; tasks: reach-signup 2/2 · read-verification-mail 2/2`.
|
|
36
36
|
- **The participant** is the persona: the subject of the study, never its
|
|
37
37
|
instrument. A participant abandoning a task is a finding about the product,
|
|
38
38
|
not a harness failure.
|
|
@@ -143,6 +143,54 @@ The CI-safe equivalent is:
|
|
|
143
143
|
npx humanish watch --json --no-open
|
|
144
144
|
```
|
|
145
145
|
|
|
146
|
+
## The Terminal Surface
|
|
147
|
+
|
|
148
|
+
Every other humanish command is built so an agent can drive it. `humanish tui`
|
|
149
|
+
is the one that is not: it takes the screen and waits for a person.
|
|
150
|
+
|
|
151
|
+
```bash
|
|
152
|
+
npx humanish tui
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
Arrow keys move, `enter` opens, `esc` goes back, `q` quits. Three screens, and
|
|
156
|
+
you navigate between OBJECTS rather than between states — the set of labs, one
|
|
157
|
+
lab, one run — while a run's lifecycle renders in place, so a run you are
|
|
158
|
+
watching changes from running to its verdict without the screen moving under
|
|
159
|
+
you.
|
|
160
|
+
|
|
161
|
+
- **labs** — every lab in the project, whether or not it has ever run. Labs with
|
|
162
|
+
something running now sort first. Each row carries what to expect from a LIVE
|
|
163
|
+
run of it; a lab with no live history says `no live runs yet` rather than
|
|
164
|
+
quoting a median from dry runs, which spend nothing and take no time.
|
|
165
|
+
- **lab** — that lab's history, and two ways to start it. A dry run starts on one
|
|
166
|
+
keypress because it cannot cost anything; a live run is armed by the first
|
|
167
|
+
`enter` and committed by the second, restating the cost in between.
|
|
168
|
+
- **run** — who is in the run, what they are currently thinking, and how far they
|
|
169
|
+
have got, with time and money underneath. A terminal cannot show screenshots,
|
|
170
|
+
so the run's self-contained Observer artifact is named for you to open.
|
|
171
|
+
|
|
172
|
+
A run you start from the surface is DETACHED: it keeps going if you quit the
|
|
173
|
+
TUI, and it survives losing the SSH session you started it over. The surface
|
|
174
|
+
follows it by reading `.humanish/runs/<id>/status.json`, holding no handle on
|
|
175
|
+
it — which is why you can quit mid-run, reopen, and find it still there.
|
|
176
|
+
|
|
177
|
+
Requires an interactive terminal and Node 22 or newer. It refuses anything else
|
|
178
|
+
with a structured error rather than rendering escape codes into a pipe:
|
|
179
|
+
|
|
180
|
+
```console
|
|
181
|
+
$ humanish tui --json < /dev/null
|
|
182
|
+
{
|
|
183
|
+
"schema": "humanish.tui-result.v1",
|
|
184
|
+
"ok": false,
|
|
185
|
+
"error": {
|
|
186
|
+
"code": "HUMANISH_TUI_REQUIRES_TTY",
|
|
187
|
+
"message": "humanish tui needs an interactive terminal. For scripted or agent use, `humanish runs --json` lists the same runs and `humanish lab run --json` starts one."
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
Every other command still works on Node 20; only this surface needs 22.
|
|
193
|
+
|
|
146
194
|
## Serve the Library
|
|
147
195
|
|
|
148
196
|
`humanish watch` follows one attached run; `humanish serve` serves the whole
|
|
@@ -195,6 +243,7 @@ persisted evidence — screenshots, events, terminal tails — only). See
|
|
|
195
243
|
| --- | --- |
|
|
196
244
|
| `humanish init` | Scaffold committed `humanish/` source and ignored `.humanish/` runtime state. |
|
|
197
245
|
| `humanish doctor` | Explain readiness and missing setup. |
|
|
246
|
+
| `humanish tui` | Interactive terminal surface for browsing labs and runs and starting a run. Humans only — it refuses a non-interactive stdin or stdout. |
|
|
198
247
|
| `humanish run --dry-run` | Generate a synthetic run bundle without browser, keys, or provider spend. |
|
|
199
248
|
| `humanish run --app-url http://127.0.0.1:<port>` | Capture live desktop/mobile browser evidence against a running local app. |
|
|
200
249
|
| `humanish watch [lab]` | Run sims or a named lab, open Observer, and keep watching. |
|
|
@@ -380,9 +429,19 @@ surfaced as "~$X estimated (rates as of `<date>`)" in the Observer and the run l
|
|
|
380
429
|
carries the pricing date + source so a token-derived number is never mistaken for an
|
|
381
430
|
authoritative bill. Unknown model/rate is declared absent (`null` + a reason), never guessed or
|
|
382
431
|
silently zeroed; dry-runs invent no spend. The rates live in
|
|
383
|
-
[`src/pricing.ts`](src/pricing.ts) as **operator-editable, dated estimates** —
|
|
384
|
-
`placeholder` stand-
|
|
385
|
-
|
|
432
|
+
[`src/pricing.ts`](src/pricing.ts) as **operator-editable, dated estimates** — the E2B desktop
|
|
433
|
+
rate is still a `placeholder` stand-in; update the numbers AND the `asOf` date when providers
|
|
434
|
+
change pricing. On models that bill prompt-cache writes and long-context requests at their own
|
|
435
|
+
rates (OpenAI's 5.6 family), the estimate prices both exactly from the trace's per-request
|
|
436
|
+
usage ledger.
|
|
437
|
+
|
|
438
|
+
**Choosing the model.** Computer-use lanes default to `gpt-5.6-sol` (the 5.6-generation
|
|
439
|
+
flagship; `gpt-5.6` is OpenAI's alias for the same model). Configure it per lab with
|
|
440
|
+
`actors[0].model` — any id in the rate table prices cleanly (`gpt-5.6-terra` and
|
|
441
|
+
`gpt-5.6-luna` are the cheaper tiers; `gpt-5.5` stays priced for pinned labs). A run with a
|
|
442
|
+
spend cap (`execution.caps`) refuses an unpriced model at preflight rather than running
|
|
443
|
+
uncapped, so add a dated rate to `src/pricing.ts` before capping a model the table does not
|
|
444
|
+
know.
|
|
386
445
|
|
|
387
446
|
**Fail-closed spend cap.** Set `execution.caps.maxUsd` on a computer-use lab to abort a session
|
|
388
447
|
the moment its running estimated spend crosses the cap — the runaway-retry guard (mirrors the
|
package/dist/actor-contract.d.ts
CHANGED
|
@@ -95,6 +95,20 @@ export interface ActorTokenUsage {
|
|
|
95
95
|
* HONESTLY ABSENT: a provider that does not report it leaves this undefined rather than
|
|
96
96
|
* reporting 0, because 0 and "unknown" price very differently (#391). */
|
|
97
97
|
cachedInput?: number;
|
|
98
|
+
/** Of `input`, how many tokens were newly WRITTEN to the provider's prompt cache
|
|
99
|
+
* (OpenAI 5.6+ bills these at a surcharge and reports `cache_write_tokens`). Same
|
|
100
|
+
* honestly-absent discipline as `cachedInput` (#334). */
|
|
101
|
+
cacheWriteInput?: number;
|
|
102
|
+
/** Per provider-REQUEST usage, in request order. Recorded fact, not pricing: a provider
|
|
103
|
+
* that re-prices whole requests past an input-size threshold (long-context tiers) can
|
|
104
|
+
* only be priced exactly from per-request sizes; totals cannot say which requests
|
|
105
|
+
* crossed. Additive and honestly absent on producers that do not record it (#334). */
|
|
106
|
+
turns?: Array<{
|
|
107
|
+
input?: number;
|
|
108
|
+
cachedInput?: number;
|
|
109
|
+
cacheWriteInput?: number;
|
|
110
|
+
output?: number;
|
|
111
|
+
}>;
|
|
98
112
|
total?: number;
|
|
99
113
|
costUsd?: number;
|
|
100
114
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actor-contract.js","sourceRoot":"","sources":["../src/actor-contract.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,oEAAoE;AACpE,0EAA0E;AAC1E,oFAAoF;AACpF,EAAE;AACF,iFAAiF;AACjF,8EAA8E;AAC9E,gFAAgF;AAChF,uBAAuB;AAEvB,MAAM,CAAC,MAAM,kBAAkB,GAAG,yBAAyB,CAAC;AAmB5D;;iCAEiC;AACjC,MAAM,CAAC,MAAM,4BAA4B,GAA2B,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"actor-contract.js","sourceRoot":"","sources":["../src/actor-contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ActorPersonaRef, ActorTraceItem } from "./actor-contract.js";
|
|
1
|
+
import type { ActorPersonaRef, ActorTokenUsage, ActorTraceItem } from "./actor-contract.js";
|
|
2
2
|
import { type CuaExecutor, type CuaLoopResult, type CuaProvider, type CuaSafetyCheck } from "./computer-use.js";
|
|
3
3
|
import { type E2BDesktopExecutorOptions, type E2BDesktopLike } from "./e2b-desktop-executor.js";
|
|
4
4
|
import { type OpenAiResponsesProviderOptions } from "./openai-responses-cu.js";
|
|
@@ -56,13 +56,9 @@ export interface CuaActorSessionOptions {
|
|
|
56
56
|
/** FAIL-CLOSED spend cap (USD) threaded to the loop; absent = uncapped. See CuaLoopOptions.maxUsd. */
|
|
57
57
|
maxUsd?: number;
|
|
58
58
|
/** Injected pure per-turn cost estimator paired with `maxUsd`. See CuaLoopOptions.estimateTurnCostUsd. */
|
|
59
|
-
estimateTurnCostUsd?: (
|
|
59
|
+
estimateTurnCostUsd?: (usage: ActorTokenUsage) => number | null;
|
|
60
60
|
/** RUN-LEVEL spend guard threaded to the loop (#299). See CuaLoopOptions.overRunBudget. */
|
|
61
|
-
overRunBudget?: (usage:
|
|
62
|
-
input: number;
|
|
63
|
-
output: number;
|
|
64
|
-
cachedInput: number;
|
|
65
|
-
}) => string | null;
|
|
61
|
+
overRunBudget?: (usage: ActorTokenUsage) => string | null;
|
|
66
62
|
/** RUNTIME-ONLY observed-URL callback threaded to the loop; see CuaLoopOptions.onObservedUrl. Used by
|
|
67
63
|
* the concurrent shared-world handoff barrier to latch a host seat's live /lobby/CODE URL. */
|
|
68
64
|
onObservedUrl?: (url: string | undefined) => void;
|
package/dist/computer-use.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type ActorCapabilities, type ActorCompletionReason, type ActorPersonaRef, type ActorStatus, type ActorTrace, type ActorTraceItem } from "./actor-contract.js";
|
|
1
|
+
import { type ActorCapabilities, type ActorCompletionReason, type ActorPersonaRef, type ActorStatus, type ActorTokenUsage, type ActorTrace, type ActorTraceItem } from "./actor-contract.js";
|
|
2
2
|
import type { RedactionHooks } from "./redaction.js";
|
|
3
3
|
import { type StopWhen } from "./stop-conditions.js";
|
|
4
4
|
import { type LabTask } from "./tasks.js";
|
|
@@ -133,6 +133,7 @@ export interface CuaTurn {
|
|
|
133
133
|
input?: number;
|
|
134
134
|
output?: number;
|
|
135
135
|
cachedInput?: number;
|
|
136
|
+
cacheWriteInput?: number;
|
|
136
137
|
};
|
|
137
138
|
/** True when the model reported a natural endpoint (no further action). */
|
|
138
139
|
done: boolean;
|
|
@@ -236,7 +237,7 @@ export interface CuaLoopOptions {
|
|
|
236
237
|
* mid-run cannot trip the cap — preflight already guaranteed a rate exists, so a null here is a
|
|
237
238
|
* vanished-rate harness condition, not a silent uncapped pass.
|
|
238
239
|
*/
|
|
239
|
-
estimateTurnCostUsd?: (
|
|
240
|
+
estimateTurnCostUsd?: (usage: ActorTokenUsage) => number | null;
|
|
240
241
|
/**
|
|
241
242
|
* RUN-LEVEL spend guard (#299): called with this lane's running usage each turn, at the same
|
|
242
243
|
* point the per-lane cap is checked. Returns a human-readable reason when the STUDY's shared
|
|
@@ -244,11 +245,7 @@ export interface CuaLoopOptions {
|
|
|
244
245
|
* regardless of material progress — a study-level stop is a recruiting decision hitting its
|
|
245
246
|
* limit, not this participant's runaway, so it never reads as `gave_up`.
|
|
246
247
|
*/
|
|
247
|
-
overRunBudget?: (usage:
|
|
248
|
-
input: number;
|
|
249
|
-
output: number;
|
|
250
|
-
cachedInput: number;
|
|
251
|
-
}) => string | null;
|
|
248
|
+
overRunBudget?: (usage: ActorTokenUsage) => string | null;
|
|
252
249
|
/**
|
|
253
250
|
* RUNTIME-ONLY observed-URL callback (#164 handoff crux): invoked with `observation.url` right
|
|
254
251
|
* after EVERY executor.observe() (the initial observe and each post-action observe), so the
|
package/dist/computer-use.js
CHANGED
|
@@ -300,6 +300,24 @@ export async function runComputerUseLoop(options) {
|
|
|
300
300
|
let seq = 0;
|
|
301
301
|
let usageInput = 0;
|
|
302
302
|
let usageCachedInput = 0;
|
|
303
|
+
let usageCacheWriteInput = 0;
|
|
304
|
+
// Per provider-REQUEST usage, in order (#334): the recorded fact long-context pricing tiers
|
|
305
|
+
// need — totals alone cannot say which requests crossed the provider's threshold.
|
|
306
|
+
const usageTurns = [];
|
|
307
|
+
// The running usage snapshot both spend guards consume: totals plus the per-request ledger,
|
|
308
|
+
// shaped exactly like the trace's final tokenUsage so one estimator prices both identically.
|
|
309
|
+
// Unlike the persisted trace (where absent means "unreported"), this runtime callback arg
|
|
310
|
+
// ALWAYS carries numeric cache fields: pre-#334 guards received an object whose cachedInput
|
|
311
|
+
// was always a number (0 included), and arithmetic on a suddenly-undefined field yields NaN —
|
|
312
|
+
// which comparison operators swallow silently (red-team finding: a stale study-budget guard
|
|
313
|
+
// would run uncapped without a sound).
|
|
314
|
+
const runningUsage = () => ({
|
|
315
|
+
input: usageInput,
|
|
316
|
+
output: usageOutput,
|
|
317
|
+
cachedInput: usageCachedInput,
|
|
318
|
+
cacheWriteInput: usageCacheWriteInput,
|
|
319
|
+
...(usageTurns.length > 0 ? { turns: usageTurns } : {})
|
|
320
|
+
});
|
|
303
321
|
let usageOutput = 0;
|
|
304
322
|
let sawUsage = false;
|
|
305
323
|
let lastResponseId;
|
|
@@ -462,7 +480,14 @@ export async function runComputerUseLoop(options) {
|
|
|
462
480
|
sawUsage = true;
|
|
463
481
|
usageInput += turn.usage.input ?? 0;
|
|
464
482
|
usageCachedInput += turn.usage.cachedInput ?? 0;
|
|
483
|
+
usageCacheWriteInput += turn.usage.cacheWriteInput ?? 0;
|
|
465
484
|
usageOutput += turn.usage.output ?? 0;
|
|
485
|
+
usageTurns.push({
|
|
486
|
+
...(turn.usage.input === undefined ? {} : { input: turn.usage.input }),
|
|
487
|
+
...(turn.usage.cachedInput === undefined ? {} : { cachedInput: turn.usage.cachedInput }),
|
|
488
|
+
...(turn.usage.cacheWriteInput === undefined ? {} : { cacheWriteInput: turn.usage.cacheWriteInput }),
|
|
489
|
+
...(turn.usage.output === undefined ? {} : { output: turn.usage.output })
|
|
490
|
+
});
|
|
466
491
|
}
|
|
467
492
|
// RUNTIME-ONLY: hand the model's narration back so the concurrent host-first barrier can read
|
|
468
493
|
// the lobby code the host states after creating the lobby (CDP url-read is unreliable). Raw
|
|
@@ -486,7 +511,16 @@ export async function runComputerUseLoop(options) {
|
|
|
486
511
|
// trips here before any action executes) — so it surfaces as "gave_up" (→ failed). Either way
|
|
487
512
|
// the running estimate + the cap are cited so the operator sees WHY the loop stopped.
|
|
488
513
|
if (maxUsd !== undefined && estimateTurnCostUsd) {
|
|
489
|
-
const running = estimateTurnCostUsd(
|
|
514
|
+
const running = estimateTurnCostUsd(runningUsage());
|
|
515
|
+
// Fail CLOSED and LOUD on a non-finite estimate: a stale positional estimator (the
|
|
516
|
+
// pre-#334 (input, output, cachedInput) signature) arithmetics the usage OBJECT into
|
|
517
|
+
// NaN, and NaN > maxUsd is false forever — a spend cap that silently never trips is
|
|
518
|
+
// the one failure mode this guard exists to prevent (red-team finding).
|
|
519
|
+
if (running !== null && !Number.isFinite(running)) {
|
|
520
|
+
completionReason = "harness_error";
|
|
521
|
+
reason = "the injected estimateTurnCostUsd returned a non-finite estimate while execution.caps.maxUsd is set — likely a stale pre-#334 positional (input, output, cachedInput) callback; it now receives one ActorTokenUsage object. Failing closed instead of running uncapped.";
|
|
522
|
+
break;
|
|
523
|
+
}
|
|
490
524
|
if (running !== null && running > maxUsd) {
|
|
491
525
|
if (materialActions > 0) {
|
|
492
526
|
completionReason = "budget_reached";
|
|
@@ -501,7 +535,7 @@ export async function runComputerUseLoop(options) {
|
|
|
501
535
|
}
|
|
502
536
|
// The STUDY budget (#299), beside the per-lane cap above and before any further model turn.
|
|
503
537
|
if (overRunBudget) {
|
|
504
|
-
const runStop = overRunBudget(
|
|
538
|
+
const runStop = overRunBudget(runningUsage());
|
|
505
539
|
if (runStop !== null) {
|
|
506
540
|
completionReason = "budget_reached";
|
|
507
541
|
reason = runStop;
|
|
@@ -862,8 +896,10 @@ export async function runComputerUseLoop(options) {
|
|
|
862
896
|
input: usageInput,
|
|
863
897
|
output: usageOutput,
|
|
864
898
|
// Recorded only when the provider actually reported it, so a reader can tell "no cache
|
|
865
|
-
// hits" from "this provider does not say" (#391).
|
|
899
|
+
// hits" from "this provider does not say" (#391); same for cache writes (#334).
|
|
866
900
|
...(usageCachedInput > 0 ? { cachedInput: usageCachedInput } : {}),
|
|
901
|
+
...(usageCacheWriteInput > 0 ? { cacheWriteInput: usageCacheWriteInput } : {}),
|
|
902
|
+
...(usageTurns.length > 0 ? { turns: usageTurns.map((turn) => ({ ...turn })) } : {}),
|
|
867
903
|
total: usageInput + usageOutput
|
|
868
904
|
}
|
|
869
905
|
}
|
package/dist/computer-use.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computer-use.js","sourceRoot":"","sources":["../src/computer-use.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"computer-use.js","sourceRoot":"","sources":["../src/computer-use.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAQnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAA8B,MAAM,iBAAiB,CAAC;AACxG,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE9E,OAAO,EACL,gBAAgB,EAIjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAgB,MAAM,YAAY,CAAC;AAkSvD,gGAAgG;AAChG,kGAAkG;AAClG,oGAAoG;AACpG,oGAAoG;AACpG,wEAAwE;AACxE,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAC9B,iGAAiG;AACjG,6FAA6F;AAC7F,MAAM,yBAAyB,GAAG,EAAE,CAAC;AACrC,MAAM,+BAA+B,GAAG,CAAC,CAAC;AAC1C,yEAAyE;AACzE,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAC/B;qFACqF;AACrF,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAErC;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAA6B;IAC7D,MAAM,MAAM,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,yBAAyB,CAAC,CAAC;IACxF,OAAO,OAAO;SACX,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACd,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;YACpB,KAAK,OAAO,CAAC;YACb,KAAK,cAAc,CAAC;YACpB,KAAK,MAAM;gBACT,OAAO,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,KAAK,QAAQ;gBACX,OAAO,UAAU,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1G,KAAK,MAAM;gBACT,OAAO,QAAQ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACtC,KAAK,UAAU;gBACb,OAAO,YAAY,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,KAAK,MAAM;gBACT,OAAO,QAAQ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACtC,KAAK,MAAM;gBACT,OAAO,MAAM,CAAC;YAChB,KAAK,YAAY;gBACf,OAAO,YAAY,CAAC;QACxB,CAAC;IACH,CAAC,CAAC;SACD,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED,SAAS,YAAY,CAAC,MAAiB;IACrC,OAAO,MAAM,CAAC,IAAI,KAAK,YAAY,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC;AAChE,CAAC;AAED,SAAS,UAAU,CAAC,OAAoB;IACtC,OAAO,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;AAC7D,CAAC;AAED,4FAA4F;AAC5F,+FAA+F;AAC/F,4FAA4F;AAC5F,+FAA+F;AAC/F,UAAU;AACV,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAC/B,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAC/B,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAChC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAClC,MAAM,oBAAoB,GAAG,IAAI,CAAC;AAElC;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAiC;IACjE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAW,CAAC;IAChC,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,MAAM,MAAM,GAAG,CAAC,KAAc,EAAE,KAAa,EAAU,EAAE;QACvD,IAAI,SAAS;YAAE,OAAO,KAAK,CAAC;QAC5B,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,MAAM,CAAC;QAClC,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC;QAC1B,IAAI,IAAI,KAAK,QAAQ;YAAE,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAe,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;QAC9G,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QACxD,IAAI,IAAI,KAAK,QAAQ;YAAE,OAAO,IAAK,KAAgB,CAAC,QAAQ,EAAE,GAAG,CAAC;QAClE,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,KAAe,CAAC;YAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,GAAG,qBAAqB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxG,CAAC;QACD,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,WAAW;YAAE,OAAO,KAAK,IAAI,IAAI,CAAC;QAC3F,kBAAkB;QAClB,IAAI,KAAK,IAAI,oBAAoB;YAAE,OAAO,cAAc,CAAC;QACzD,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,OAAO,cAAc,CAAC;QAC3C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChB,IAAI,CAAC;YACH,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;gBACzD,MAAM,KAAK,GAAa,EAAE,CAAC;gBAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;oBAChC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;oBACxC,IAAI,SAAS;wBAAE,MAAM;gBACvB,CAAC;gBACD,IAAI,KAAK,CAAC,MAAM,GAAG,oBAAoB;oBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3D,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAChC,CAAC;YACD,MAAM,MAAM,GAAG,KAAgC,CAAC;YAChD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;YACvD,MAAM,KAAK,GAAa,EAAE,CAAC;YAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAW,CAAC;gBAC9B,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;gBACvE,IAAI,SAAS;oBAAE,MAAM;YACvB,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,GAAG,mBAAmB;gBAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC7D,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;QAChC,CAAC;gBAAS,CAAC;YACT,sFAAsF;YACtF,oFAAoF;YACpF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,CAAC;IACF,IAAI,GAAG,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC9B,IAAI,GAAG,CAAC,MAAM,GAAG,oBAAoB,EAAE,CAAC;QACtC,SAAS,GAAG,IAAI,CAAC;QACjB,GAAG,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,oBAAoB,CAAC,GAAG,CAAC;IACjD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,oGAAoG;AACpG;;yDAEyD;AACzD,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAEtC,SAAS,aAAa,CAAC,WAA2B;IAChD,MAAM,IAAI,GAAG,WAAW,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC;IACvH,+FAA+F;IAC/F,yFAAyF;IACzF,OAAO,WAAW,CAAC,OAAO,KAAK,SAAS;QACtC,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,GAAG,yBAAyB,CAAC,EAAE,CAAC;AAChF,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,iBAAiB,CAAC,MAAiB;IACjD,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,OAAO;YACV,OAAO,UAAU,MAAM,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC;QAC5C,KAAK,cAAc;YACjB,OAAO,iBAAiB,MAAM,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC;QACnD,KAAK,MAAM;YACT,OAAO,SAAS,MAAM,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC;QAC3C,KAAK,QAAQ;YACX,OAAO,WAAW,MAAM,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,SAAS,MAAM,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC;QAC7E,KAAK,MAAM;YACT,OAAO,SAAS,MAAM,CAAC,IAAI,CAAC,MAAM,SAAS,CAAC;QAC9C,KAAK,UAAU;YACb,OAAO,YAAY,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7C,KAAK,MAAM;YACT,OAAO,QAAQ,MAAM,CAAC,IAAI,CAAC,MAAM,SAAS,CAAC;QAC7C,KAAK,MAAM;YACT,OAAO,MAAM,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,MAAM,CAAC,EAAE,IAAI,CAAC;QAClE,KAAK,YAAY;YACf,OAAO,YAAY,CAAC;IACxB,CAAC;AACH,CAAC;AAED,sGAAsG;AACtG,MAAM,UAAU,yBAAyB,CAAC,MAA6B;IACrE,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,gBAAgB,CAAC;QACtB,KAAK,gBAAgB,EAAE,wEAAwE;YAC7F,OAAO,QAAQ,CAAC;QAClB,8FAA8F;QAC9F,+FAA+F;QAC/F,+FAA+F;QAC/F,yFAAyF;QACzF,KAAK,gBAAgB;YACnB,OAAO,YAAY,CAAC;QACtB,KAAK,WAAW;YACd,OAAO,WAAW,CAAC;QACrB,KAAK,kBAAkB;YACrB,OAAO,SAAS,CAAC;QACnB,uFAAuF;QACvF,+FAA+F;QAC/F,oDAAoD;QACpD,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC;QACrB,iDAAiD;QACjD,KAAK,aAAa,CAAC;QACnB,KAAK,aAAa,CAAC,CAAC,8EAA8E;QAClG,KAAK,eAAe;YAClB,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC;AAED,iFAAiF;AACjF,2CAA2C;AAC3C,MAAM,gBAAiB,SAAQ,KAAK;CAAG;AACvC,MAAM,aAAc,SAAQ,KAAK;CAAG;AACpC,6FAA6F;AAC7F,gGAAgG;AAChG,iEAAiE;AACjE,MAAM,iBAAkB,SAAQ,KAAK;CAAG;AACxC,+FAA+F;AAC/F,0FAA0F;AAC1F,MAAM,eAAgB,SAAQ,KAAK;CAAG;AAEtC,MAAM,UAAU,GAAgB,IAAI,eAAe,EAAE,CAAC,MAAM,CAAC;AAE7D;;;;;GAKG;AACH,SAAS,UAAU,CAAI,OAAmB,EAAE,WAAmB,EAAE,MAAoB;IACnF,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;QACpB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACxC,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,MAAM,GAAG,CAAC,KAAiB,EAAQ,EAAE;YACzC,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC9C,KAAK,EAAE,CAAC;QACV,CAAC,CAAC;QACF,MAAM,OAAO,GAAG,GAAS,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC,CAAC;QACtE,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,gBAAgB,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;QACvG,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,UAAU;YAAE,KAAK,CAAC,KAAK,EAAE,CAAC;QACrD,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3D,OAAO,CAAC,IAAI,CACV,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EACvC,CAAC,KAAc,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAChD,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,OAAuB;IAC9D,MAAM,EACJ,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,SAAS,EACT,SAAS,EACT,GAAG,EACH,MAAM,EACN,SAAS,GAAG,kBAAkB,EAC9B,eAAe,GAAG,yBAAyB,EAC3C,uBAAuB,GAAG,GAAG,EAAE,CAAC,IAAI,EACpC,iBAAiB,GAAG,KAAK,EACzB,SAAS,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAC1B,eAAe,GAAG,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,eAAe,IAAI,EAAE,EACvD,QAAQ,EACR,KAAK,EACL,MAAM,EACN,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,SAAS,EACT,YAAY,EACZ,OAAO,EACR,GAAG,OAAO,CAAC;IACZ,MAAM,uBAAuB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,eAAe,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9E,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAClE,yFAAyF;IACzF,8FAA8F;IAC9F,0FAA0F;IAC1F,MAAM,eAAe,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAExF,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC;IAC1B,MAAM,SAAS,GAAG,GAAW,EAAE,CAAC,SAAS,GAAG,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC,CAAC;IAClE,MAAM,KAAK,GAAqB,EAAE,CAAC;IACnC,kFAAkF;IAClF,kFAAkF;IAClF,mDAAmD;IACnD,MAAM,MAAM,GAAG,CAAC,IAAoB,EAAQ,EAAE;QAC5C,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC7D,CAAC,CAAC;IACF,gGAAgG;IAChG,iGAAiG;IACjG,kGAAkG;IAClG,MAAM,sBAAsB,GAA4B,EAAE,CAAC;IAC3D,MAAM,MAAM,GAA2B;QACrC,KAAK,EAAE,CAAC;QACR,OAAO,EAAE,CAAC;QACV,eAAe,EAAE,CAAC;QAClB,WAAW,EAAE,CAAC;QACd,UAAU,EAAE,CAAC;QACb,QAAQ,EAAE,CAAC;QACX,SAAS,EAAE,CAAC;QACZ,eAAe,EAAE,CAAC;KACnB,CAAC;IACF,4FAA4F;IAC5F,MAAM,kBAAkB,GAAa,EAAE,CAAC;IACxC,6FAA6F;IAC7F,gGAAgG;IAChG,mGAAmG;IACnG,kDAAkD;IAClD,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,gBAAgB,GAAG,CAAC,CAAC;IACzB,IAAI,oBAAoB,GAAG,CAAC,CAAC;IAC7B,4FAA4F;IAC5F,kFAAkF;IAClF,MAAM,UAAU,GAA0C,EAAE,CAAC;IAC7D,4FAA4F;IAC5F,6FAA6F;IAC7F,0FAA0F;IAC1F,4FAA4F;IAC5F,8FAA8F;IAC9F,4FAA4F;IAC5F,uCAAuC;IACvC,MAAM,YAAY,GAAG,GAAoB,EAAE,CAAC,CAAC;QAC3C,KAAK,EAAE,UAAU;QACjB,MAAM,EAAE,WAAW;QACnB,WAAW,EAAE,gBAAgB;QAC7B,eAAe,EAAE,oBAAoB;QACrC,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxD,CAAC,CAAC;IACH,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,cAAkC,CAAC;IACvC,IAAI,YAAY,GAAG,gCAAgC,CAAC;IACpD,IAAI,eAAmC,CAAC;IACxC,IAAI,uBAA2C,CAAC;IAChD,IAAI,iBAA8D,CAAC;IACnE,MAAM,kBAAkB,GAAa,EAAE,CAAC;IAExC,MAAM,MAAM,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IAC7F,MAAM,IAAI,GAAG,CAAC,GAAW,EAAQ,EAAE;QACjC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IACvC,CAAC,CAAC;IAEF,+FAA+F;IAC/F,4FAA4F;IAC5F,4FAA4F;IAC5F,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAE7B,uFAAuF;IACvF,8FAA8F;IAC9F,sFAAsF;IACtF,MAAM,qBAAqB,GAAG,KAAK,EAAE,WAA2B,EAAE,KAAa,EAAiB,EAAE;QAChG,MAAM,KAAK,GAAG,WAAW,CAAC,UAAU,CAAC;QACrC,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO;QAChC,YAAY,GAAG,sBAAsB,KAAK,EAAE,CAAC;QAC7C,6FAA6F;QAC7F,uFAAuF;QACvF,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,iBAAiB;YACzC,CAAC,CAAC,MAAM,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YACzG,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAe,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,GAAG,KAAK,MAAM,EAAE,KAAK,CAAC,CAAC;QAC1D,MAAM,aAAa,GAAoC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;QACnF,iBAAiB,GAAG,aAAa,CAAC;QAClC,MAAM,CAAC;YACL,EAAE,EAAE,MAAM,CAAC,YAAY,CAAC;YACxB,IAAI,EAAE,YAAY;YAClB,SAAS,EAAE,WAAW;YACtB,KAAK,EAAE,KAAK;YACZ,aAAa;SACd,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,CAAC,CAAC;IACtB,CAAC,CAAC;IAEF,gGAAgG;IAChG,+FAA+F;IAC/F,MAAM,iBAAiB,GAAG,CAAC,WAA2B,EAA4B,EAAE,CAAC,CAAC;QACpF,GAAG,CAAC,WAAW,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC;QAClE,GAAG,CAAC,WAAW,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC;QACrE,GAAG,CAAC,WAAW,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC;KAClF,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,CAAC,WAA2B,EAAkC,EAAE,CACtF,gBAAgB,CAAC,QAAQ,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAC;IAE7D,8FAA8F;IAC9F,8FAA8F;IAC9F,8EAA8E;IAC9E,MAAM,WAAW,GAAG,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACjG,MAAM,YAAY,GAAG,CAAC,WAA2B,EAAE,IAAY,EAAQ,EAAE;QACvE,IAAI,WAAW,KAAK,SAAS;YAAE,OAAO;QACtC,KAAK,MAAM,UAAU,IAAI,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;YACnF,6FAA6F;YAC7F,mFAAmF;YACnF,MAAM,CAAC;gBACL,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC;gBACpB,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,WAAW;gBACtB,MAAM,EAAE,SAAS;gBACjB,KAAK,EAAE,mBAAmB,eAAe,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE;gBAC1D,IAAI,EAAE,eAAe,CACnB,QAAQ,IAAI,kBAAkB,UAAU,CAAC,gBAAgB,KAAK,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CACnG;aACF,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,gBAAgB,GAA0B,gBAAgB,CAAC;IAC/D,IAAI,MAAM,GAAG,6BAA6B,CAAC;IAC3C,IAAI,kBAAkD,CAAC;IAEvD,8FAA8F;IAC9F,+FAA+F;IAC/F,uDAAuD;IACvD,MAAM,iBAAiB,GAAG,CAAC,WAA2B,EAAW,EAAE;QACjE,IAAI,QAAQ,CAAC,aAAa,KAAK,IAAI,IAAI,WAAW,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAC5E,gBAAgB,GAAG,eAAe,CAAC;YACnC,MAAM,GAAG,YAAY,QAAQ,CAAC,EAAE,0IAA0I,CAAC;YAC3K,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,yFAAyF;IACzF,+EAA+E;IAC/E,IAAI,kBAAsC,CAAC;IAC3C,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,6EAA6E;IAC7E,6EAA6E;IAC7E,2EAA2E;IAC3E,+EAA+E;IAC/E,IAAI,qBAAqB,GAAG,CAAC,CAAC;IAC9B,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,IAAI,WAA+B,CAAC;IACpC,IAAI,2BAA2B,GAAG,CAAC,CAAC;IACpC,yEAAyE;IACzE,4EAA4E;IAC5E,qEAAqE;IACrE,IAAI,WAAyC,CAAC;IAC9C,IAAI,CAAC;QACH,YAAY,GAAG,4BAA4B,CAAC;QAC5C,IAAI,WAAW,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,EAAE,MAAM,CAAC,CAAC;QAC5E,+FAA+F;QAC/F,aAAa,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,WAAW,CAAC,UAAU,KAAK,SAAS;YAAE,YAAY,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QACjF,IAAI,WAAW,CAAC,QAAQ,KAAK,SAAS;YAAE,gBAAgB,GAAG,IAAI,CAAC;QAChE,4FAA4F;QAC5F,IAAI,iBAAiB,CAAC,WAAW,CAAC;YAAE,MAAM,IAAI,iBAAiB,EAAE,CAAC;QAClE,MAAM,qBAAqB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QAC1D,OAAO,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QACzB,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAC7B,kBAAkB,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,kBAAkB,EAAE,CAAC;YACvB,gBAAgB,GAAG,gBAAgB,CAAC;YACpC,MAAM,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;YAC5C,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,kBAAkB,EAAE,eAAe,CAAC,CAAC,CAAC;YACjF,MAAM,IAAI,eAAe,EAAE,CAAC;QAC9B,CAAC;QACD,uFAAuF;QACvF,yFAAyF;QACzF,gGAAgG;QAChG,aAAa,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;QAE3C,wEAAwE;QACxE,SAAS,CAAC;YACR,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;gBACpB,gBAAgB,GAAG,eAAe,CAAC;gBACnC,MAAM,GAAG,4BAA4B,CAAC;gBACtC,MAAM;YACR,CAAC;YACD,IAAI,GAAG,EAAE,GAAG,WAAW,GAAG,SAAS,EAAE,CAAC;gBACpC,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;oBACxB,gBAAgB,GAAG,gBAAgB,CAAC;oBACpC,MAAM,GAAG,eAAe,SAAS,6CAA6C,eAAe,wBAAwB,MAAM,CAAC,KAAK,WAAW,CAAC;gBAC/I,CAAC;qBAAM,CAAC;oBACN,gBAAgB,GAAG,WAAW,CAAC;oBAC/B,MAAM,GAAG,qCAAqC,SAAS,8BAA8B,CAAC;gBACxF,CAAC;gBACD,MAAM;YACR,CAAC;YAED,MAAM,UAAU,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAC3C,MAAM,OAAO,GAAmB,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC;YAC9D,IAAI,kBAAkB,KAAK,SAAS;gBAAE,OAAO,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;YACtF,IAAI,WAAW,KAAK,SAAS;gBAAE,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;YACjE,IAAI,WAAW,KAAK,SAAS;gBAAE,OAAO,CAAC,wBAAwB,GAAG,WAAW,CAAC;YAC9E,WAAW,GAAG,SAAS,CAAC;YACxB,WAAW,GAAG,SAAS,CAAC;YAExB,YAAY,GAAG,4BAA4B,UAAU,EAAE,CAAC;YACxD,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,UAAU,CAAC,EAAE,SAAS,EAAE,EAAE,MAAM,CAAC,CAAC;YACrG,IAAI,CAAC,OAAO,CAAC,CAAC;YACd,kBAAkB,GAAG,IAAI,CAAC,UAAU,IAAI,kBAAkB,CAAC;YAC3D,cAAc,GAAG,IAAI,CAAC,UAAU,IAAI,cAAc,CAAC;YACnD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,QAAQ,GAAG,IAAI,CAAC;gBAChB,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;gBACpC,gBAAgB,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC;gBAChD,oBAAoB,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,CAAC;gBACxD,WAAW,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;gBACtC,UAAU,CAAC,IAAI,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;oBACtE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;oBACxF,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;oBACpG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;iBAC1E,CAAC,CAAC;YACL,CAAC;YACD,8FAA8F;YAC9F,4FAA4F;YAC5F,+EAA+E;YAC/E,CAAC;gBACC,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC;qBAC7C,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;qBACjE,IAAI,CAAC,IAAI,CAAC,CAAC;gBACd,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;oBAAE,SAAS,EAAE,CAAC,SAAS,CAAC,CAAC;YACnD,CAAC;YACD,4FAA4F;YAC5F,6FAA6F;YAC7F,4FAA4F;YAC5F,wFAAwF;YACxF,EAAE;YACF,6FAA6F;YAC7F,4FAA4F;YAC5F,8FAA8F;YAC9F,0FAA0F;YAC1F,8FAA8F;YAC9F,sFAAsF;YACtF,IAAI,MAAM,KAAK,SAAS,IAAI,mBAAmB,EAAE,CAAC;gBAChD,MAAM,OAAO,GAAG,mBAAmB,CAAC,YAAY,EAAE,CAAC,CAAC;gBACpD,mFAAmF;gBACnF,qFAAqF;gBACrF,oFAAoF;gBACpF,wEAAwE;gBACxE,IAAI,OAAO,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBAClD,gBAAgB,GAAG,eAAe,CAAC;oBACnC,MAAM,GAAG,wQAAwQ,CAAC;oBAClR,MAAM;gBACR,CAAC;gBACD,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,GAAG,MAAM,EAAE,CAAC;oBACzC,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;wBACxB,gBAAgB,GAAG,gBAAgB,CAAC;wBACpC,MAAM,GAAG,oBAAoB,OAAO,mCAAmC,MAAM,+BAA+B,eAAe,wBAAwB,MAAM,CAAC,KAAK,2DAA2D,CAAC;oBAC7N,CAAC;yBAAM,CAAC;wBACN,gBAAgB,GAAG,SAAS,CAAC;wBAC7B,MAAM,GAAG,oBAAoB,OAAO,mCAAmC,MAAM,4EAA4E,CAAC;oBAC5J,CAAC;oBACD,MAAM;gBACR,CAAC;YACH,CAAC;YACD,4FAA4F;YAC5F,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,OAAO,GAAG,aAAa,CAAC,YAAY,EAAE,CAAC,CAAC;gBAC9C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;oBACrB,gBAAgB,GAAG,gBAAgB,CAAC;oBACpC,MAAM,GAAG,OAAO,CAAC;oBACjB,MAAM;gBACR,CAAC;YACH,CAAC;YACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB,MAAM,CAAC;oBACL,EAAE,EAAE,MAAM,CAAC,WAAW,CAAC;oBACvB,IAAI,EAAE,WAAW;oBACjB,SAAS,EAAE,WAAW;oBACtB,KAAK,EAAE,kBAAkB,UAAU,EAAE;oBACrC,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC;iBACtC,CAAC,CAAC;gBACH,IAAI,CAAC,YAAY,CAAC,CAAC;YACrB,CAAC;YACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,MAAM,CAAC;oBACL,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC;oBACrB,IAAI,EAAE,SAAS;oBACf,SAAS,EAAE,WAAW;oBACtB,KAAK,EAAE,gBAAgB,UAAU,EAAE;oBACnC,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;iBACpC,CAAC,CAAC;gBACH,IAAI,CAAC,UAAU,CAAC,CAAC;YACnB,CAAC;YAED,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxC,MAAM,IAAI,GAAG,uBAAuB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAC/D,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvC,2DAA2D;oBAC3D,sEAAsE;oBACtE,8DAA8D;oBAC9D,MAAM,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oBACpG,MAAM,CAAC;wBACL,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC;wBACtB,IAAI,EAAE,UAAU;wBAChB,SAAS,EAAE,WAAW;wBACtB,MAAM,EAAE,SAAS;wBACjB,KAAK,EAAE,iBAAiB,MAAM,EAAE;qBACjC,CAAC,CAAC;oBACH,gBAAgB,GAAG,kBAAkB,CAAC;oBACtC,MAAM,GAAG,oCAAoC,MAAM,oBAAoB,CAAC;oBACxE,MAAM;gBACR,CAAC;gBACD,WAAW,GAAG,IAAI,CAAC;YACrB,CAAC;YAED,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3C,gBAAgB,GAAG,gBAAgB,CAAC;gBACpC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC;gBACrC,MAAM,GAAG,OAAO;oBACd,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC;oBAC1B,CAAC,CAAC,0DAA0D,CAAC;gBAC/D,sFAAsF;gBACtF,sFAAsF;gBACtF,oFAAoF;gBACpF,oFAAoF;gBACpF,oFAAoF;gBACpF,0DAA0D;gBAC1D,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;oBAC9B,IAAI,CAAC;wBACH,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,EAAE,MAAM,CAAC,CAAC;wBAC1E,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;oBACpC,CAAC;oBAAC,MAAM,CAAC;wBACP,yBAAyB;oBAC3B,CAAC;gBACH,CAAC;gBACD,MAAM;YACR,CAAC;YAED,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClC,IAAI,MAAM,EAAE,OAAO;oBAAE,MAAM,IAAI,aAAa,EAAE,CAAC;gBAC/C,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;gBAC9C,eAAe,GAAG,WAAW,CAAC;gBAC9B,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACrC,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC;oBAAE,kBAAkB,CAAC,KAAK,EAAE,CAAC;gBAC9D,sEAAsE;gBACtE,yEAAyE;gBACzE,MAAM,wBAAwB,GAAG,uBAAuB,CAAC;gBACzD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC1B,uBAAuB,GAAG,WAAW,CAAC;oBACtC,eAAe,IAAI,CAAC,CAAC;oBACrB,MAAM,CAAC,eAAe,GAAG,eAAe,CAAC;gBAC3C,CAAC;gBACD,IAAI,CAAC,SAAS,CAAC,CAAC;gBAChB,qFAAqF;gBACrF,wFAAwF;gBACxF,kBAAkB;gBAClB,sBAAsB,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;gBACvD,YAAY,GAAG,aAAa,WAAW,EAAE,CAAC;gBAC1C,yEAAyE;gBACzE,qEAAqE;gBACrE,sEAAsE;gBACtE,IAAI,CAAC;oBACH,MAAM,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,EAAE,MAAM,CAAC,CAAC;gBAClE,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,qEAAqE;oBACrE,oEAAoE;oBACpE,sEAAsE;oBACtE,uEAAuE;oBACvE,sEAAsE;oBACtE,uEAAuE;oBACvE,yEAAyE;oBACzE,kEAAkE;oBAClE,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;wBAAE,MAAM,KAAK,CAAC;oBAC5C,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC1B,iEAAiE;wBACjE,gEAAgE;wBAChE,qEAAqE;wBACrE,kEAAkE;wBAClE,kEAAkE;wBAClE,gEAAgE;wBAChE,iDAAiD;wBACjD,eAAe,IAAI,CAAC,CAAC;wBACrB,MAAM,CAAC,eAAe,GAAG,eAAe,CAAC;wBACzC,oEAAoE;wBACpE,oEAAoE;wBACpE,2DAA2D;wBAC3D,uBAAuB,GAAG,wBAAwB,CAAC;oBACrD,CAAC;oBACD,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;oBAC3D,MAAM,CAAC;wBACL,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC;wBACpB,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,WAAW;wBACtB,MAAM,EAAE,OAAO;wBACf,KAAK,EAAE,wCAAwC;wBAC/C,oEAAoE;wBACpE,kEAAkE;wBAClE,oEAAoE;wBACpE,kEAAkE;wBAClE,IAAI,EAAE,eAAe,CACnB;4BACE,WAAW,WAAW,EAAE;4BACxB,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,QAAQ,EAAE;4BAC7D,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS;yBAC5D,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAC7B;qBACF,CAAC,CAAC;oBACH,SAAS;gBACX,CAAC;gBACD,MAAM,CAAC;oBACL,EAAE,EAAE,MAAM,CAAC,WAAW,CAAC;oBACvB,IAAI,EAAE,WAAW;oBACjB,SAAS,EAAE,WAAW;oBACtB,KAAK,EAAE,WAAW;oBAClB,4EAA4E;oBAC5E,sEAAsE;oBACtE,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,IAAI,KAAK,cAAc;wBAC3D,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,EAAE;wBACzC,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC,CAAC;YACL,CAAC;YAED,IAAI,MAAM,EAAE,OAAO;gBAAE,MAAM,IAAI,aAAa,EAAE,CAAC;YAC/C,YAAY,GAAG,iCAAiC,UAAU,EAAE,CAAC;YAC7D,WAAW,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,EAAE,MAAM,CAAC,CAAC;YACxE,+FAA+F;YAC/F,aAAa,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YACjC,IAAI,WAAW,CAAC,UAAU,KAAK,SAAS;gBAAE,YAAY,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YACjF,IAAI,WAAW,CAAC,QAAQ,KAAK,SAAS;gBAAE,gBAAgB,GAAG,IAAI,CAAC;YAChE,8FAA8F;YAC9F,IAAI,iBAAiB,CAAC,WAAW,CAAC;gBAAE,MAAM;YAC1C,MAAM,qBAAqB,CAAC,WAAW,EAAE,QAAQ,UAAU,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;YAC3F,OAAO,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YACzB,YAAY,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;YACtC,kBAAkB,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;YAClD,IAAI,kBAAkB,EAAE,CAAC;gBACvB,gBAAgB,GAAG,gBAAgB,CAAC;gBACpC,MAAM,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;gBAC5C,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,kBAAkB,EAAE,eAAe,CAAC,CAAC,CAAC;gBACjF,MAAM;YACR,CAAC;YAED,oFAAoF;YACpF,sFAAsF;YACtF,MAAM,WAAW,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;YAC/C,MAAM,YAAY,GAAG,WAAW,KAAK,aAAa,CAAC;YACnD,aAAa,GAAG,WAAW,CAAC;YAE5B,gGAAgG;YAChG,gGAAgG;YAChG,iGAAiG;YACjG,2FAA2F;YAC3F,4FAA4F;YAC5F,uFAAuF;YACvF,EAAE;YACF,6FAA6F;YAC7F,4FAA4F;YAC5F,0FAA0F;YAC1F,6DAA6D;YAC7D,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpD,MAAM,qBAAqB,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,kBAAkB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YACjG,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACrC,IAAI,kBAAkB,CAAC,MAAM,GAAG,oBAAoB;gBAAE,kBAAkB,CAAC,KAAK,EAAE,CAAC;YACjF,+FAA+F;YAC/F,4FAA4F;YAC5F,8FAA8F;YAC9F,mFAAmF;YACnF,MAAM,UAAU,GAAG,YAAY,IAAI,CAAC,qBAAqB,CAAC;YAE1D,2FAA2F;YAC3F,2FAA2F;YAC3F,yFAAyF;YACzF,gCAAgC;YAChC,IAAI,YAAY,EAAE,CAAC;gBACjB,IAAI,YAAY,IAAI,2BAA2B,GAAG,+BAA+B,EAAE,CAAC;oBAClF,2BAA2B,IAAI,CAAC,CAAC;oBACjC,eAAe,GAAG,CAAC,CAAC;gBACtB,CAAC;qBAAM,CAAC;oBACN,eAAe,IAAI,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,2BAA2B,GAAG,CAAC,CAAC;gBAChC,eAAe,GAAG,CAAC,CAAC;YACtB,CAAC;YACD,IAAI,YAAY;gBAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YACpC,qBAAqB,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,CAAC,CAAC;YACnE,IAAI,CAAC,UAAU;gBAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAEzC,wEAAwE;YACxE,MAAM,YAAY,GAAa,EAAE,CAAC;YAClC,IAAI,qBAAqB,IAAI,uBAAuB,IAAI,qBAAqB,GAAG,eAAe,EAAE,CAAC;gBAChG,YAAY,CAAC,IAAI,CACf,2BAA2B,qBAAqB,YAAY;oBAC5D,uFAAuF,CACxF,CAAC;YACJ,CAAC;YACD,IAAI,eAAe,IAAI,iBAAiB,IAAI,eAAe,GAAG,SAAS,EAAE,CAAC;gBACxE,YAAY,CAAC,IAAI,CACf,kDAAkD,eAAe,YAAY;oBAC7E,wFAAwF,CACzF,CAAC;YACJ,CAAC;YACD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;gBAAE,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAElE,IAAI,eAAe,IAAI,SAAS,EAAE,CAAC;gBACjC,gBAAgB,GAAG,SAAS,CAAC;gBAC7B,MAAM,GAAG,YAAY,eAAe,sEAAsE,CAAC;gBAC3G,MAAM,CAAC,iBAAiB,CAAC;oBACvB,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC;oBACpB,MAAM;oBACN,uBAAuB;oBACvB,kBAAkB;oBAClB,aAAa,EAAE,iBAAiB;oBAChC,eAAe;iBAChB,CAAC,CAAC,CAAC;gBACJ,MAAM;YACR,CAAC;YACD,IAAI,qBAAqB,IAAI,eAAe,EAAE,CAAC;gBAC7C,gBAAgB,GAAG,SAAS,CAAC;gBAC7B,MAAM,GAAG,YAAY,qBAAqB,mDAAmD,CAAC;gBAC9F,MAAM,CAAC,iBAAiB,CAAC;oBACvB,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC;oBACpB,MAAM;oBACN,uBAAuB;oBACvB,kBAAkB;oBAClB,aAAa,EAAE,iBAAiB;oBAChC,eAAe;iBAChB,CAAC,CAAC,CAAC;gBACJ,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,iBAAiB,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;YAC3E,iFAAiF;QACnF,CAAC;aAAM,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;YAC7C,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;gBACxB,gBAAgB,GAAG,gBAAgB,CAAC;gBACpC,MAAM,GAAG,eAAe,SAAS,6CAA6C,eAAe,wBAAwB,MAAM,CAAC,KAAK,WAAW,CAAC;YAC/I,CAAC;iBAAM,CAAC;gBACN,gBAAgB,GAAG,WAAW,CAAC;gBAC/B,MAAM,GAAG,qCAAqC,SAAS,8BAA8B,CAAC;YACxF,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;YAC1C,gBAAgB,GAAG,eAAe,CAAC;YACnC,MAAM,GAAG,4BAA4B,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,gBAAgB,GAAG,aAAa,CAAC;YACjC,MAAM,UAAU,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC1E,MAAM,OAAO,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;YAC5C,MAAM,GAAG,eAAe,CAAC,4BAA4B,UAAU,EAAE,CAAC,CAAC;YACnE,MAAM,CAAC;gBACL,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC;gBACpB,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,WAAW;gBACtB,MAAM,EAAE,OAAO;gBACf,KAAK,EAAE,yBAAyB;gBAChC,IAAI,EAAE;oBACJ,UAAU,eAAe,CAAC,YAAY,CAAC,EAAE;oBACzC,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;oBAC1F,YAAY,OAAO,EAAE;oBACrB,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,eAAe,CAAC,eAAe,CAAC,EAAE;iBAC/F,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC5B,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,iBAAiB,EAAE,CAAC;aACjF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC;IAC5B,MAAM,MAAM,GAAG,yBAAyB,CAAC,gBAAgB,CAAC,CAAC;IAC3D,MAAM,GAAG,GAAsB,EAAE,CAAC;IAClC,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS;QAAE,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjE,2EAA2E;IAC3E,IAAI,cAAc,KAAK,SAAS;QAAE,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IAEpF,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC;QACpE,CAAC,CAAC,yBAAyB;QAC3B,CAAC,CAAC,iBAAiB;YACjB,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,kEAAkE;YACzF,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,uIAAuI,CAAC;IACnK,6FAA6F;IAC7F,6FAA6F;IAC7F,wFAAwF;IACxF,8EAA8E;IAC9E,MAAM,KAAK,GAAG,gBAAgB;QAC5B,CAAC,CAAC,GAAG,cAAc,6MAA6M;QAChO,CAAC,CAAC,cAAc,CAAC;IAEnB,MAAM,KAAK,GAAe;QACxB,MAAM,EAAE,kBAAkB;QAC1B,QAAQ,EAAE,QAAQ,CAAC,EAAE;QACrB,GAAG,CAAC,QAAQ,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;QAChF,QAAQ,EAAE,UAAU;QACpB,IAAI,EAAE,cAAc;QACpB,OAAO;QACP,SAAS,EAAE;YACT,MAAM,EAAE,QAAQ;YAChB,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC;gBAC1D,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,iBAAiB;oBACjB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,KAAK;YACX,KAAK;SACN;QACD,SAAS,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE;QAC9C,WAAW,EAAE,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE;QAClD,UAAU,EAAE,aAAa,GAAG,WAAW;QACvC,MAAM;QACN,gBAAgB;QAChB,MAAM;QACN,GAAG;QACH,MAAM;QACN,KAAK;QACL,GAAG,CAAC,sBAAsB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,sBAAsB,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/G,8FAA8F;QAC9F,mGAAmG;QACnG,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC;QAC1E,GAAG,CAAC,QAAQ;YACV,CAAC,CAAC;gBACE,UAAU,EAAE;oBACV,KAAK,EAAE,UAAU;oBACjB,MAAM,EAAE,WAAW;oBACnB,uFAAuF;oBACvF,gFAAgF;oBAChF,GAAG,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClE,GAAG,CAAC,oBAAoB,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC9E,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACpF,KAAK,EAAE,UAAU,GAAG,WAAW;iBAChC;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,YAAY,EAAE,QAAQ,CAAC,YAAY;KACpC,CAAC;IAEF,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AACrD,CAAC;AAED,SAAS,cAAc,CAAC,KAAyB;IAC/C,OAAO,oBAAoB,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AACnE,CAAC;AAED,SAAS,iBAAiB,CACxB,EAAU,EACV,KAAyB,EACzB,eAAyC;IAEzC,OAAO;QACL,EAAE;QACF,IAAI,EAAE,QAAQ;QACd,SAAS,EAAE,WAAW;QACtB,MAAM,EAAE,SAAS;QACjB,KAAK,EAAE,qBAAqB,KAAK,CAAC,EAAE,EAAE;QACtC,IAAI,EAAE,eAAe,CACnB,uCAAuC,KAAK,CAAC,EAAE,UAAU,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,uMAAuM,CACvR;KACF,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,IAO1B;IACC,MAAM,OAAO,GAAG;QACd,WAAW,IAAI,CAAC,MAAM,EAAE;QACxB,IAAI,CAAC,uBAAuB,KAAK,SAAS;YACxC,CAAC,CAAC,4BAA4B;YAC9B,CAAC,CAAC,yBAAyB,IAAI,CAAC,uBAAuB,EAAE;QAC3D,IAAI,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC;YAClC,CAAC,CAAC,sBAAsB;YACxB,CAAC,CAAC,mBAAmB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;KAC9D,CAAC;IAEF,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,SAAS,EAAE,WAAW;QACtB,MAAM,EAAE,SAAS;QACjB,KAAK,EAAE,+BAA+B;QACtC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9C,GAAG,CAAC,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;KACnF,CAAC;AACJ,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type RunLabProvenance } from "./run-status.js";
|
|
1
2
|
import { type CuaActorDescriptor } from "./actor-registry.js";
|
|
2
3
|
import { type CuaLaneSpec, type LaneRunOutcome } from "./cua-actor-lab.js";
|
|
3
4
|
import { type LabActorLane, type LabConfig } from "./lab-config.js";
|
|
@@ -11,6 +12,8 @@ export declare const CONCURRENT_SHARED_WORLD_PROVIDER_METADATA: {
|
|
|
11
12
|
};
|
|
12
13
|
export declare const CONCURRENT_ATTRIBUTION_LIMITS: readonly ["concurrent", "best-effort-causal-attribution", "non-deterministic-shared-state", "window-and-snapshot-granularity", "contention-observed-not-proven-safe", "state-change-not-isolated-to-actors"];
|
|
13
14
|
export interface RunConcurrentSharedWorldLabOptions {
|
|
15
|
+
/** Which manifest produced this run (#455); threaded into the status record + bundle. */
|
|
16
|
+
lab?: RunLabProvenance;
|
|
14
17
|
cwd: string;
|
|
15
18
|
config: LabConfig;
|
|
16
19
|
/** Resolved upstream (scenario.mode + CLI override); defaults safe (dry-run). */
|
|
@@ -138,6 +141,8 @@ interface ActorLaneResult {
|
|
|
138
141
|
export declare function runConcurrentSharedWorld(options: RunConcurrentSharedWorldLabOptions): Promise<ConcurrentSharedWorldLabResult>;
|
|
139
142
|
/** Project the concurrent run into a humanish.run-bundle.v1 with the CONCURRENT shared-world block. */
|
|
140
143
|
export declare function buildConcurrentSharedWorldBundle(args: {
|
|
144
|
+
/** Lab provenance for the bundle\'s own `lab` field (#455). */
|
|
145
|
+
lab?: RunLabProvenance;
|
|
141
146
|
config: LabConfig;
|
|
142
147
|
descriptor: CuaActorDescriptor;
|
|
143
148
|
createdAt: string;
|
|
@@ -33,6 +33,8 @@
|
|
|
33
33
|
// requires the author attestation subject.exposure: synthetic. This is author-trust + a provenance
|
|
34
34
|
// gate, NOT a no-real-data guarantee (Humanish cannot tell synthetic from real data).
|
|
35
35
|
import { randomBytes } from "node:crypto";
|
|
36
|
+
import { describeMissingKeys } from "./key-resolution.js";
|
|
37
|
+
import { beginRunStatus } from "./run-status.js";
|
|
36
38
|
import path from "node:path";
|
|
37
39
|
import { pathToFileURL } from "node:url";
|
|
38
40
|
import { adapterScoreFailureMessage, applyBrowserAdapterHooks } from "./adapter-extension.js";
|
|
@@ -555,7 +557,7 @@ export async function runConcurrentSharedWorld(options) {
|
|
|
555
557
|
...(e2bApiKey ? [] : ["E2B_API_KEY"])
|
|
556
558
|
];
|
|
557
559
|
if (missingKeys.length > 0) {
|
|
558
|
-
return fail("HUMANISH_CONCURRENT_SHARED_WORLD_LAB_KEYS_MISSING", `Live concurrent shared-world labs need ${missingKeys.join(" and ")} in the environment (
|
|
560
|
+
return fail("HUMANISH_CONCURRENT_SHARED_WORLD_LAB_KEYS_MISSING", `Live concurrent shared-world labs need ${missingKeys.join(" and ")} in the environment (values are never persisted). ${describeMissingKeys(missingKeys, env)}`, descriptor.id);
|
|
559
561
|
}
|
|
560
562
|
const missingSubjectEnv = subjectEnvNames.filter((name) => !env[name]?.trim());
|
|
561
563
|
if (missingSubjectEnv.length > 0) {
|
|
@@ -564,6 +566,13 @@ export async function runConcurrentSharedWorld(options) {
|
|
|
564
566
|
}
|
|
565
567
|
const runId = options.runId ?? makeRunId();
|
|
566
568
|
const runPaths = await prepareRunArtifactPaths(cwd, runId);
|
|
569
|
+
// Identity + liveness on disk (#455): every backend writes this, so a watcher can classify any
|
|
570
|
+
// run without parsing bundles and without depending on the interactive-observer path.
|
|
571
|
+
const runStatus = beginRunStatus(runPaths, {
|
|
572
|
+
runId,
|
|
573
|
+
mode: dryRun ? "dry-run" : "live",
|
|
574
|
+
...(options.lab === undefined ? {} : { lab: options.lab })
|
|
575
|
+
});
|
|
567
576
|
const artifactRoot = runPaths.absoluteRunRoot;
|
|
568
577
|
const physicalArtifactRoot = runPaths.physicalRunRoot;
|
|
569
578
|
const createdAt = new Date().toISOString();
|
|
@@ -1400,6 +1409,7 @@ export async function runConcurrentSharedWorld(options) {
|
|
|
1400
1409
|
warnings.push(...result.outcome.warnings);
|
|
1401
1410
|
}
|
|
1402
1411
|
const bundle = buildConcurrentSharedWorldBundle({
|
|
1412
|
+
...(options.lab === undefined ? {} : { lab: options.lab }),
|
|
1403
1413
|
config,
|
|
1404
1414
|
descriptor,
|
|
1405
1415
|
createdAt,
|
|
@@ -1441,6 +1451,24 @@ export async function runConcurrentSharedWorld(options) {
|
|
|
1441
1451
|
...(options.scorerProvenance === undefined ? {} : { scorerProvenance: options.scorerProvenance })
|
|
1442
1452
|
});
|
|
1443
1453
|
await writeConcurrentRunArtifacts(bundle, runPaths);
|
|
1454
|
+
// Finalize identity+liveness from the bundle just written. Deliberately here and not inside
|
|
1455
|
+
// writeConcurrentRunArtifacts — that writer is shared with the mid-run in-progress flushes, and
|
|
1456
|
+
// finalizing there would declare the run finished while it is still going (#455).
|
|
1457
|
+
await runStatus.finish({
|
|
1458
|
+
...(bundle.review?.verdict === undefined ? {} : { verdict: bundle.review.verdict }),
|
|
1459
|
+
...(bundle.review?.participants === undefined
|
|
1460
|
+
? {}
|
|
1461
|
+
: {
|
|
1462
|
+
participants: {
|
|
1463
|
+
total: bundle.review.participants.total,
|
|
1464
|
+
reachedGoal: bundle.review.participants.reachedGoal,
|
|
1465
|
+
...(bundle.review.participants.reportedFriction === undefined
|
|
1466
|
+
? {}
|
|
1467
|
+
: { reportedFriction: bundle.review.participants.reportedFriction })
|
|
1468
|
+
}
|
|
1469
|
+
}),
|
|
1470
|
+
...(bundle.cost?.estimatedTotalUsd === undefined ? {} : { estimatedCostUsd: bundle.cost.estimatedTotalUsd })
|
|
1471
|
+
});
|
|
1444
1472
|
const observer = await render(cwd, runId, { open: options.open === true });
|
|
1445
1473
|
if (observer.ok && liveObserver) {
|
|
1446
1474
|
attachObserverRuntimeStreamUrls(observer, runtimeStreamUrls);
|
|
@@ -1970,6 +1998,7 @@ export function buildConcurrentSharedWorldBundle(args) {
|
|
|
1970
1998
|
simCount: actorSpecs.length,
|
|
1971
1999
|
createdAt,
|
|
1972
2000
|
cwd: PUBLIC_TARGET_CWD,
|
|
2001
|
+
...(args.lab === undefined ? {} : { lab: args.lab }),
|
|
1973
2002
|
artifactRoot: path.join(".humanish", "runs", args.runId),
|
|
1974
2003
|
source: args.source,
|
|
1975
2004
|
persona: {
|