@jevitate/cli 0.1.0 → 0.2.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 +23 -0
- package/dist/ai-cli.js +40 -30
- package/dist/ai-cli.js.map +1 -1
- package/dist/author-journey-cli.d.ts +4 -0
- package/dist/author-journey-cli.js +109 -0
- package/dist/author-journey-cli.js.map +1 -0
- package/dist/bin.js +58077 -22454
- package/dist/bin.js.map +1 -1
- package/dist/browser-run-options.d.ts +58 -0
- package/dist/browser-run-options.js +106 -0
- package/dist/browser-run-options.js.map +1 -0
- package/dist/build-info.generated.d.ts +2 -0
- package/dist/build-info.generated.js +10 -0
- package/dist/build-info.generated.js.map +1 -0
- package/dist/check-api.d.ts +5 -0
- package/dist/check-api.js +233 -0
- package/dist/check-api.js.map +1 -0
- package/dist/check-budget.d.ts +26 -0
- package/dist/check-budget.js +89 -0
- package/dist/check-budget.js.map +1 -0
- package/dist/check-cli.d.ts +31 -0
- package/dist/check-cli.js +109 -0
- package/dist/check-cli.js.map +1 -0
- package/dist/check-execute.d.ts +25 -0
- package/dist/check-execute.js +385 -0
- package/dist/check-execute.js.map +1 -0
- package/dist/check-plan.d.ts +113 -0
- package/dist/check-plan.js +448 -0
- package/dist/check-plan.js.map +1 -0
- package/dist/check-suite.d.ts +171 -0
- package/dist/check-suite.js +515 -0
- package/dist/check-suite.js.map +1 -0
- package/dist/check-types.d.ts +181 -0
- package/dist/check-types.js +35 -0
- package/dist/check-types.js.map +1 -0
- package/dist/cli-args.d.ts +26 -0
- package/dist/cli-args.js +50 -0
- package/dist/cli-args.js.map +1 -0
- package/dist/cli-output.d.ts +102 -0
- package/dist/cli-output.js +516 -0
- package/dist/cli-output.js.map +1 -0
- package/dist/cli-reference.d.ts +3 -0
- package/dist/cli-reference.js +81 -0
- package/dist/cli-reference.js.map +1 -0
- package/dist/cli-refusal.d.ts +12 -0
- package/dist/cli-refusal.js +52 -0
- package/dist/cli-refusal.js.map +1 -0
- package/dist/cli-shared.d.ts +330 -0
- package/dist/cli-shared.js +492 -0
- package/dist/cli-shared.js.map +1 -0
- package/dist/cli-surface.d.ts +33 -0
- package/dist/cli-surface.js +48 -0
- package/dist/cli-surface.js.map +1 -0
- package/dist/conversation-options.d.ts +15 -0
- package/dist/conversation-options.js +10 -0
- package/dist/conversation-options.js.map +1 -0
- package/dist/credentials-file.d.ts +15 -0
- package/dist/credentials-file.js +56 -0
- package/dist/credentials-file.js.map +1 -0
- package/dist/data-dir.d.ts +1 -1
- package/dist/data-dir.js +1 -1
- package/dist/defect-evidence.d.ts +141 -0
- package/dist/defect-evidence.js +502 -0
- package/dist/defect-evidence.js.map +1 -0
- package/dist/demo-aspect-api.d.ts +209 -0
- package/dist/demo-aspect-api.js +397 -0
- package/dist/demo-aspect-api.js.map +1 -0
- package/dist/demo-aspect-cli.d.ts +3 -0
- package/dist/demo-aspect-cli.js +241 -0
- package/dist/demo-aspect-cli.js.map +1 -0
- package/dist/demo-capture.d.ts +108 -0
- package/dist/demo-capture.js +438 -0
- package/dist/demo-capture.js.map +1 -0
- package/dist/engine.d.ts +35 -0
- package/dist/engine.js +25 -0
- package/dist/engine.js.map +1 -0
- package/dist/environments.d.ts +155 -0
- package/dist/environments.js +364 -0
- package/dist/environments.js.map +1 -0
- package/dist/exit-codes.d.ts +46 -0
- package/dist/exit-codes.js +91 -0
- package/dist/exit-codes.js.map +1 -0
- package/dist/explore-adversarial.d.ts +137 -0
- package/dist/explore-adversarial.js +218 -0
- package/dist/explore-adversarial.js.map +1 -0
- package/dist/explore-api.d.ts +7 -187
- package/dist/explore-api.js +7 -301
- package/dist/explore-api.js.map +1 -1
- package/dist/explore-author.d.ts +79 -0
- package/dist/explore-author.js +86 -0
- package/dist/explore-author.js.map +1 -0
- package/dist/explore-cli.d.ts +7 -0
- package/dist/explore-cli.js +963 -0
- package/dist/explore-cli.js.map +1 -0
- package/dist/explore-coverage.d.ts +158 -0
- package/dist/explore-coverage.js +240 -0
- package/dist/explore-coverage.js.map +1 -0
- package/dist/explore-feature.d.ts +127 -0
- package/dist/explore-feature.js +220 -0
- package/dist/explore-feature.js.map +1 -0
- package/dist/explore-goal.d.ts +253 -0
- package/dist/explore-goal.js +374 -0
- package/dist/explore-goal.js.map +1 -0
- package/dist/explore-shared.d.ts +152 -0
- package/dist/explore-shared.js +129 -0
- package/dist/explore-shared.js.map +1 -0
- package/dist/explore-specs.d.ts +53 -0
- package/dist/explore-specs.js +333 -0
- package/dist/explore-specs.js.map +1 -0
- package/dist/findings-filing.d.ts +64 -0
- package/dist/findings-filing.js +108 -0
- package/dist/findings-filing.js.map +1 -0
- package/dist/fixture-auth.d.ts +52 -0
- package/dist/fixture-auth.js +82 -0
- package/dist/fixture-auth.js.map +1 -0
- package/dist/fixture-cli.d.ts +70 -0
- package/dist/fixture-cli.js +178 -0
- package/dist/fixture-cli.js.map +1 -0
- package/dist/github-issue-filer.d.ts +62 -0
- package/dist/github-issue-filer.js +188 -0
- package/dist/github-issue-filer.js.map +1 -0
- package/dist/host-health-run.d.ts +24 -0
- package/dist/host-health-run.js +27 -0
- package/dist/host-health-run.js.map +1 -0
- package/dist/http-5xx-outcome.d.ts +6 -0
- package/dist/http-5xx-outcome.js +39 -0
- package/dist/http-5xx-outcome.js.map +1 -0
- package/dist/inbox-cli.d.ts +7 -0
- package/dist/inbox-cli.js +197 -0
- package/dist/inbox-cli.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/init-cli.d.ts +4 -0
- package/dist/init-cli.js +127 -0
- package/dist/init-cli.js.map +1 -0
- package/dist/init-keys.d.ts +19 -2
- package/dist/init-keys.js +15 -4
- package/dist/init-keys.js.map +1 -1
- package/dist/init-next-steps.d.ts +35 -0
- package/dist/init-next-steps.js +79 -0
- package/dist/init-next-steps.js.map +1 -0
- package/dist/invariants-file.d.ts +34 -0
- package/dist/invariants-file.js +68 -0
- package/dist/invariants-file.js.map +1 -0
- package/dist/invariants-validate.d.ts +30 -0
- package/dist/invariants-validate.js +105 -0
- package/dist/invariants-validate.js.map +1 -0
- package/dist/journey-annotate-api.d.ts +76 -0
- package/dist/journey-annotate-api.js +256 -0
- package/dist/journey-annotate-api.js.map +1 -0
- package/dist/journey-annotate-cli.d.ts +9 -0
- package/dist/journey-annotate-cli.js +179 -0
- package/dist/journey-annotate-cli.js.map +1 -0
- package/dist/journey-api.d.ts +79 -2
- package/dist/journey-api.js +136 -19
- package/dist/journey-api.js.map +1 -1
- package/dist/journey-cli.d.ts +4 -0
- package/dist/journey-cli.js +370 -0
- package/dist/journey-cli.js.map +1 -0
- package/dist/journey-demo-api.d.ts +112 -0
- package/dist/journey-demo-api.js +392 -0
- package/dist/journey-demo-api.js.map +1 -0
- package/dist/journey-demo-cli.d.ts +10 -0
- package/dist/journey-demo-cli.js +155 -0
- package/dist/journey-demo-cli.js.map +1 -0
- package/dist/kill-signal.d.ts +193 -0
- package/dist/kill-signal.js +284 -0
- package/dist/kill-signal.js.map +1 -0
- package/dist/launch-armed.d.ts +37 -0
- package/dist/launch-armed.js +31 -0
- package/dist/launch-armed.js.map +1 -0
- package/dist/ledger-api.d.ts +106 -0
- package/dist/ledger-api.js +237 -0
- package/dist/ledger-api.js.map +1 -0
- package/dist/ledger-cli.d.ts +18 -0
- package/dist/ledger-cli.js +107 -0
- package/dist/ledger-cli.js.map +1 -0
- package/dist/load-api.d.ts +29 -11
- package/dist/load-api.js +23 -15
- package/dist/load-api.js.map +1 -1
- package/dist/load-cli.d.ts +4 -0
- package/dist/load-cli.js +97 -0
- package/dist/load-cli.js.map +1 -0
- package/dist/log-correlation.d.ts +147 -0
- package/dist/log-correlation.js +325 -0
- package/dist/log-correlation.js.map +1 -0
- package/dist/log-lines.d.ts +131 -0
- package/dist/log-lines.js +389 -0
- package/dist/log-lines.js.map +1 -0
- package/dist/log-sources.d.ts +71 -0
- package/dist/log-sources.js +235 -0
- package/dist/log-sources.js.map +1 -0
- package/dist/logs-cli.d.ts +3 -0
- package/dist/logs-cli.js +51 -0
- package/dist/logs-cli.js.map +1 -0
- package/dist/logs-retention.d.ts +28 -0
- package/dist/logs-retention.js +84 -0
- package/dist/logs-retention.js.map +1 -0
- package/dist/mcp-api.d.ts +89 -1
- package/dist/mcp-api.js +472 -18
- package/dist/mcp-api.js.map +1 -1
- package/dist/mcp-args.d.ts +38 -0
- package/dist/mcp-args.js +131 -0
- package/dist/mcp-args.js.map +1 -0
- package/dist/mcp-cli-bridge.d.ts +34 -0
- package/dist/mcp-cli-bridge.js +62 -0
- package/dist/mcp-cli-bridge.js.map +1 -0
- package/dist/mcp-cli-runner.d.ts +29 -0
- package/dist/mcp-cli-runner.js +44 -0
- package/dist/mcp-cli-runner.js.map +1 -0
- package/dist/mcp-cli-tools.d.ts +125 -0
- package/dist/mcp-cli-tools.js +680 -0
- package/dist/mcp-cli-tools.js.map +1 -0
- package/dist/mcp-paths.d.ts +28 -0
- package/dist/mcp-paths.js +76 -0
- package/dist/mcp-paths.js.map +1 -0
- package/dist/mission-actors.d.ts +40 -0
- package/dist/mission-actors.js +72 -0
- package/dist/mission-actors.js.map +1 -0
- package/dist/mission-api.d.ts +35 -0
- package/dist/mission-api.js +58 -2
- package/dist/mission-api.js.map +1 -1
- package/dist/mission-cli.d.ts +4 -0
- package/dist/mission-cli.js +247 -0
- package/dist/mission-cli.js.map +1 -0
- package/dist/mission-exit.d.ts +22 -0
- package/dist/mission-exit.js +26 -0
- package/dist/mission-exit.js.map +1 -0
- package/dist/mission-fixtures.d.ts +225 -0
- package/dist/mission-fixtures.js +828 -0
- package/dist/mission-fixtures.js.map +1 -0
- package/dist/mission-journal.d.ts +60 -0
- package/dist/mission-journal.js +115 -0
- package/dist/mission-journal.js.map +1 -0
- package/dist/mission-queue-cli.d.ts +10 -0
- package/dist/mission-queue-cli.js +198 -0
- package/dist/mission-queue-cli.js.map +1 -0
- package/dist/mission-queue-runner.d.ts +126 -0
- package/dist/mission-queue-runner.js +397 -0
- package/dist/mission-queue-runner.js.map +1 -0
- package/dist/multi-run-cli.d.ts +37 -0
- package/dist/multi-run-cli.js +110 -0
- package/dist/multi-run-cli.js.map +1 -0
- package/dist/multi-run.d.ts +339 -0
- package/dist/multi-run.js +619 -0
- package/dist/multi-run.js.map +1 -0
- package/dist/openrouter-call.d.ts +22 -0
- package/dist/openrouter-call.js +63 -0
- package/dist/openrouter-call.js.map +1 -0
- package/dist/profile-cli.d.ts +4 -0
- package/dist/profile-cli.js +57 -0
- package/dist/profile-cli.js.map +1 -0
- package/dist/program.d.ts +3 -75
- package/dist/program.js +119 -1921
- package/dist/program.js.map +1 -1
- package/dist/project-dir.d.ts +96 -0
- package/dist/project-dir.js +220 -0
- package/dist/project-dir.js.map +1 -0
- package/dist/record-api.d.ts +10 -6
- package/dist/record-api.js +39 -28
- package/dist/record-api.js.map +1 -1
- package/dist/record-cli.d.ts +4 -0
- package/dist/record-cli.js +64 -0
- package/dist/record-cli.js.map +1 -0
- package/dist/recording-cli.d.ts +4 -0
- package/dist/recording-cli.js +248 -0
- package/dist/recording-cli.js.map +1 -0
- package/dist/regression-api.d.ts +101 -0
- package/dist/regression-api.js +384 -5
- package/dist/regression-api.js.map +1 -1
- package/dist/regression-cli.d.ts +4 -0
- package/dist/regression-cli.js +232 -0
- package/dist/regression-cli.js.map +1 -0
- package/dist/report-api.d.ts +146 -0
- package/dist/report-api.js +430 -0
- package/dist/report-api.js.map +1 -0
- package/dist/report-cli.d.ts +12 -0
- package/dist/report-cli.js +147 -0
- package/dist/report-cli.js.map +1 -0
- package/dist/result-schema.d.ts +22 -0
- package/dist/result-schema.js +28 -0
- package/dist/result-schema.js.map +1 -0
- package/dist/run-index.d.ts +29 -0
- package/dist/run-index.js +70 -0
- package/dist/run-index.js.map +1 -0
- package/dist/run-screenshots.d.ts +123 -0
- package/dist/run-screenshots.js +229 -0
- package/dist/run-screenshots.js.map +1 -0
- package/dist/runtime-env.d.ts +8 -0
- package/dist/runtime-env.js +22 -0
- package/dist/runtime-env.js.map +1 -0
- package/dist/secret-args.d.ts +23 -0
- package/dist/secret-args.js +45 -0
- package/dist/secret-args.js.map +1 -0
- package/dist/serve-cli.d.ts +4 -0
- package/dist/serve-cli.js +95 -0
- package/dist/serve-cli.js.map +1 -0
- package/dist/server-log-verify.d.ts +34 -0
- package/dist/server-log-verify.js +115 -0
- package/dist/server-log-verify.js.map +1 -0
- package/dist/session-check.d.ts +14 -0
- package/dist/session-check.js +44 -0
- package/dist/session-check.js.map +1 -0
- package/dist/site-cli.d.ts +4 -0
- package/dist/site-cli.js +127 -0
- package/dist/site-cli.js.map +1 -0
- package/dist/site-gate-cli.d.ts +28 -0
- package/dist/site-gate-cli.js +58 -0
- package/dist/site-gate-cli.js.map +1 -0
- package/dist/source-api.js +18 -3
- package/dist/source-api.js.map +1 -1
- package/dist/source-cli.d.ts +4 -0
- package/dist/source-cli.js +284 -0
- package/dist/source-cli.js.map +1 -0
- package/dist/source-run-api.d.ts +27 -1
- package/dist/source-run-api.js +22 -11
- package/dist/source-run-api.js.map +1 -1
- package/dist/storage-state-snapshot.d.ts +50 -0
- package/dist/storage-state-snapshot.js +87 -0
- package/dist/storage-state-snapshot.js.map +1 -0
- package/dist/suite-explore-options.d.ts +289 -0
- package/dist/suite-explore-options.js +140 -0
- package/dist/suite-explore-options.js.map +1 -0
- package/dist/target-config.d.ts +109 -0
- package/dist/target-config.js +216 -0
- package/dist/target-config.js.map +1 -0
- package/dist/transcript-file.d.ts +12 -0
- package/dist/transcript-file.js +23 -0
- package/dist/transcript-file.js.map +1 -0
- package/dist/ui-api.d.ts +3 -0
- package/dist/ui-api.js +7 -1
- package/dist/ui-api.js.map +1 -1
- package/dist/usability-capture.d.ts +43 -0
- package/dist/usability-capture.js +326 -0
- package/dist/usability-capture.js.map +1 -0
- package/dist/usage-config.d.ts +36 -0
- package/dist/usage-config.js +114 -0
- package/dist/usage-config.js.map +1 -0
- package/dist/ux-api.d.ts +3 -75
- package/dist/ux-api.js +3 -220
- package/dist/ux-api.js.map +1 -1
- package/dist/ux-cli.d.ts +4 -0
- package/dist/ux-cli.js +102 -0
- package/dist/ux-cli.js.map +1 -0
- package/dist/ux-config.d.ts +29 -0
- package/dist/ux-config.js +103 -0
- package/dist/ux-config.js.map +1 -0
- package/dist/ux-evidence.d.ts +54 -0
- package/dist/ux-evidence.js +197 -0
- package/dist/ux-evidence.js.map +1 -0
- package/dist/ux-review.d.ts +112 -0
- package/dist/ux-review.js +151 -0
- package/dist/ux-review.js.map +1 -0
- package/dist/ux-usability.d.ts +238 -0
- package/dist/ux-usability.js +494 -0
- package/dist/ux-usability.js.map +1 -0
- package/dist/verify-fix-api.d.ts +173 -0
- package/dist/verify-fix-api.js +454 -0
- package/dist/verify-fix-api.js.map +1 -0
- package/dist/verify-fix-cli.d.ts +4 -0
- package/dist/verify-fix-cli.js +110 -0
- package/dist/verify-fix-cli.js.map +1 -0
- package/package.json +19 -14
- package/skills/jevitate-ci-check/SKILL.md +77 -0
- package/skills/jevitate-demo/SKILL.md +61 -0
- package/skills/jevitate-explore/SKILL.md +88 -87
- package/skills/jevitate-getting-started/SKILL.md +88 -0
- package/skills/jevitate-load-test/SKILL.md +11 -2
- package/skills/jevitate-mission-scope/SKILL.md +19 -11
- package/skills/jevitate-record/SKILL.md +23 -5
- package/skills/jevitate-run-journey/SKILL.md +61 -17
- package/skills/jevitate-sources/SKILL.md +57 -14
- package/skills/jevitate-ux-review/SKILL.md +106 -16
- package/skills/jevitate-verify-fix/SKILL.md +76 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"explore-cli.js","sourceRoot":"","sources":["../src/explore-cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import type { JudgmentPort, GenerationPort, UsageTracker, UsageCounts } from "@jevitate/ai-core";
|
|
2
|
+
import { type BrowserPort, type EmulationSpec } from "@jevitate/playwright";
|
|
3
|
+
import { type BrowserRunOptions } from "./browser-run-options.js";
|
|
4
|
+
import { type ScreenshotsSpec } from "./run-screenshots.js";
|
|
5
|
+
import { type InvariantSpec } from "@jevitate/recording";
|
|
6
|
+
import type { DefectRecord, HostHealthSampler, InvariantDefect, InvariantReport, SideEffect } from "@jevitate/explore";
|
|
7
|
+
import type { EnvironmentDegraded, HostHealthSummary } from "@jevitate/domain";
|
|
8
|
+
import { type Bounds, type CoverageReport, type MissionRouteScope, type BudgetTrajectory, type Http5xxDefect, type HangFinding, type TimingSummary } from "@jevitate/explore";
|
|
9
|
+
import { type MissionFailure, type MissionOutcome } from "@jevitate/domain";
|
|
10
|
+
import { type EngineInfo } from "./engine.js";
|
|
11
|
+
import type { TargetConfig } from "./target-config.js";
|
|
12
|
+
import { MISSION_RESULT_SCHEMA_VERSION } from "./result-schema.js";
|
|
13
|
+
import { type ServerLogDefect, type ServerLogsSummary } from "./log-correlation.js";
|
|
14
|
+
import { type ServerLogOptions, type OverflowFlags, type MissionTarget } from "./explore-shared.js";
|
|
15
|
+
/**
|
|
16
|
+
* The programmatic surface behind `jevitate explore --strategy coverage`
|
|
17
|
+
* (additive, alongside `runExploration`). Wires a real Playwright `Page` +
|
|
18
|
+
* gateways to `@jevitate/explore`'s proof-by-induction (state-coverage) mission
|
|
19
|
+
* and persists each emitted repro `Recording` under `.jevitate/logs/<date>`.
|
|
20
|
+
*
|
|
21
|
+
* Same fail-closed discipline as `runExploration`: the authorized-target guard
|
|
22
|
+
* runs FIRST, before any browser is opened.
|
|
23
|
+
*/
|
|
24
|
+
export interface RunCoverageMissionOptions {
|
|
25
|
+
/** Test seam (#203): the run's host-health sampler (a deterministic fake host). Default: this host's. */
|
|
26
|
+
readonly hostHealth?: HostHealthSampler;
|
|
27
|
+
readonly url: string;
|
|
28
|
+
readonly allowlist: readonly string[];
|
|
29
|
+
readonly judge: JudgmentPort;
|
|
30
|
+
readonly gen: GenerationPort;
|
|
31
|
+
/** Usage accounting (#100): see `RunExplorationOptions.usage`. */
|
|
32
|
+
readonly usage?: UsageTracker;
|
|
33
|
+
readonly bounds?: Partial<Bounds>;
|
|
34
|
+
/** Where the repro Recordings are written. Default `.jevitate/logs/<date>` (project, else `~/.jevitate`). */
|
|
35
|
+
readonly outDir?: string;
|
|
36
|
+
readonly browserPortFactory?: () => BrowserPort;
|
|
37
|
+
/** How Chromium is launched (executable/channel/extra args) and shown (#245 demo mode). Default: pinned Chromium, headless. */
|
|
38
|
+
readonly browser?: BrowserRunOptions;
|
|
39
|
+
/** #251 `--screenshots`: masked screenshots (one per distinct screen, or per step) + `index.md`. */
|
|
40
|
+
readonly screenshots?: ScreenshotsSpec;
|
|
41
|
+
/**
|
|
42
|
+
* #250 `--evidence-video`: after the result is written, each defect's minimal repro is replayed
|
|
43
|
+
* with captions (the failing step marked) into a masked clip + before/at screenshots, attached as
|
|
44
|
+
* `defects[].evidence` (and to its issue draft).
|
|
45
|
+
*/
|
|
46
|
+
readonly evidenceVideo?: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* Playwright storageState JSON to seed the session from (CLI `--storage-state`) —
|
|
49
|
+
* the deterministic authenticated pre-step. Contains live session cookies: it is
|
|
50
|
+
* handed only to the browser, never to a model or a Recording.
|
|
51
|
+
*/
|
|
52
|
+
readonly storageState?: string;
|
|
53
|
+
/**
|
|
54
|
+
* Writes the browser context's storageState (cookies + origin storage) here when the run ends
|
|
55
|
+
* (CLI `--save-storage-state`) — so a rotating refresh token stays usable across runs instead of
|
|
56
|
+
* invalidating `--storage-state`'s file on first use. The file holds live session credentials:
|
|
57
|
+
* written with mode 0600, and its contents are never logged. See
|
|
58
|
+
* `RunExplorationOptions.saveStorageState`'s own doc for the full behaviour (#159: written on
|
|
59
|
+
* every exit path including a crash/kill signal, never over a lost/logged-out session).
|
|
60
|
+
*/
|
|
61
|
+
readonly saveStorageState?: string;
|
|
62
|
+
readonly nowIso?: () => string;
|
|
63
|
+
/** The target's settle/hang configuration (`~/.jevitate/targets.json` + flags). */
|
|
64
|
+
readonly target?: TargetConfig;
|
|
65
|
+
/**
|
|
66
|
+
* Extra in-scope route globs (CLI `--route`, #89 — reuses #64's adversarial/feature scope model).
|
|
67
|
+
* The seed URL's own route is always in scope; these add to it. Pass `["/**"]` (CLI `--scope app`)
|
|
68
|
+
* to widen containment to the whole app.
|
|
69
|
+
*/
|
|
70
|
+
readonly routeGlobs?: readonly string[];
|
|
71
|
+
/** App-declared invariants (`--invariants`, #86), already validated against the allowlist. */
|
|
72
|
+
readonly invariants?: InvariantSpec;
|
|
73
|
+
/** Backend log sources (`--log-source`/`--log-defect`, #142), already validated. */
|
|
74
|
+
readonly serverLog?: ServerLogOptions;
|
|
75
|
+
/** Resolved `authFrom.secret` refs (#135) a declared probe may use: `env:VAR` → its value. */
|
|
76
|
+
readonly invariantAuthTokens?: ReadonlyMap<string, string>;
|
|
77
|
+
/**
|
|
78
|
+
* `coverage` (default): the exhaustive breadth sweep. `exploratory`: novelty-seeking — the control
|
|
79
|
+
* the last action revealed is tried first (#115).
|
|
80
|
+
*/
|
|
81
|
+
readonly strategy?: "coverage" | "exploratory";
|
|
82
|
+
/** No-progress watchdog (CLI `--stall-timeout`, #114): ends the run `stalled` (inconclusive). Default 120s. */
|
|
83
|
+
readonly stallTimeoutMs?: number;
|
|
84
|
+
/** Per-mission viewport/device emulation (#149); see `RunExplorationOptions.emulation`. */
|
|
85
|
+
readonly emulation?: EmulationSpec;
|
|
86
|
+
/** Horizontal-overflow hard signal (#149, CLI `--check-overflow` / `--ignore-overflow`). */
|
|
87
|
+
readonly overflow?: OverflowFlags;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* How the frontier ended. `insufficient-coverage` (#209: the ONE name — it was `insufficient-exploration`
|
|
91
|
+
* in #203): drained by timed-out actions, or emptied having exercised too little (e.g. only global
|
|
92
|
+
* navigation) to call it `clean`. `exhausted` means fully explored AND enough to be clean.
|
|
93
|
+
*/
|
|
94
|
+
/** #209: a coverage frontier's own defect as listed in the unified `defects` (its Recording stays in `coverage.defects`). */
|
|
95
|
+
export type CoverageFrontierDefect = Omit<DefectRecord, "recording" | "reason"> & {
|
|
96
|
+
readonly title: string;
|
|
97
|
+
};
|
|
98
|
+
type CoverageRunOutcome = "exhausted" | "insufficient-coverage" | "cap" | "crashed" | "hang" | "scope-unreachable" | "stalled" | "budget";
|
|
99
|
+
export interface RunCoverageMissionResult {
|
|
100
|
+
/** The host's health over the run (#203): peaks, the slowest render, starved steps. */
|
|
101
|
+
readonly hostHealth: HostHealthSummary;
|
|
102
|
+
/** Findings met while the host was starved (#203) — advisory, never a defect/hang, never failing the run. */
|
|
103
|
+
readonly environmentDegraded: EnvironmentDegraded[];
|
|
104
|
+
/** The result schema's version (#195): the common fields are filled the same way by every strategy. */
|
|
105
|
+
readonly schemaVersion: typeof MISSION_RESULT_SCHEMA_VERSION;
|
|
106
|
+
/** Which frontier ran: `coverage` (breadth) or `exploratory` (novelty-first) — the file prefix names it (`coverage-`/`exploratory-`, #213). */
|
|
107
|
+
readonly strategy: "coverage" | "exploratory";
|
|
108
|
+
/** #213: the route scope the frontier was contained to, and where it came from (the #224 field). */
|
|
109
|
+
readonly scope: MissionRouteScope;
|
|
110
|
+
readonly coverage: CoverageReport;
|
|
111
|
+
readonly outcome: CoverageRunOutcome;
|
|
112
|
+
/** Hangs met while exploring (deduped), each with its reproduction and its own path Recording. */
|
|
113
|
+
readonly hangs: HangFinding[];
|
|
114
|
+
/** Declared mission spend budgets (#150/#180): the observed trajectory, whatever the outcome. */
|
|
115
|
+
readonly budget?: BudgetTrajectory[];
|
|
116
|
+
/** A coverage run has no single Recording: each finding carries the path that reached it. */
|
|
117
|
+
readonly recording: null;
|
|
118
|
+
/** Where the run happened — what `verify-fix` needs to replay a finding. */
|
|
119
|
+
readonly target: MissionTarget;
|
|
120
|
+
/**
|
|
121
|
+
* The typed verdict: `crashed` for a broken run, else `defects-found` / `clean`. An advisory
|
|
122
|
+
* (`judgment-flagged-state`, #214) defect alone never makes it `defects-found`.
|
|
123
|
+
*/
|
|
124
|
+
readonly missionOutcome: MissionOutcome;
|
|
125
|
+
readonly exitCode: number;
|
|
126
|
+
readonly failure?: MissionFailure;
|
|
127
|
+
/** Slowest pages/transitions and endpoints (p50/max), keyed by normalized route/endpoint. */
|
|
128
|
+
readonly timing: TimingSummary;
|
|
129
|
+
/** The persisted typed result (`<strategy>-<stamp>.result.json`: `coverage-` or `exploratory-`). */
|
|
130
|
+
readonly resultPath: string;
|
|
131
|
+
readonly recordingPaths: string[];
|
|
132
|
+
/** #245: `--record-video` files, finalized before this result was written (absent when not recording). */
|
|
133
|
+
readonly videoPaths?: string[];
|
|
134
|
+
/** The shared decision transcript (`<strategy>-<stamp>.transcript.json`). */
|
|
135
|
+
readonly transcriptPath: string;
|
|
136
|
+
/** The writes the frontier's actions fired (#116), marked when the control was paid / destructive. */
|
|
137
|
+
readonly sideEffects: SideEffect[];
|
|
138
|
+
readonly sideEffectsTruncated?: number;
|
|
139
|
+
/** Which build produced this result (issue #83): `{version, commit, builtAt}`. */
|
|
140
|
+
readonly engine: EngineInfo;
|
|
141
|
+
/**
|
|
142
|
+
* EVERY defect the run found (#195; #209): the frontier's own (`horizontal-overflow`, and a
|
|
143
|
+
* `judgment-flagged-state` — also in `coverage.defects`, which keeps each one's repro Recording;
|
|
144
|
+
* #214: marked `advisory: true`, it never sets `missionOutcome`/`exitCode` on its own),
|
|
145
|
+
* declared-invariant defects (#86, each with its own path Recording) and `server-log` defects (#142).
|
|
146
|
+
*/
|
|
147
|
+
readonly defects: Array<CoverageFrontierDefect | InvariantDefect | Http5xxDefect | ServerLogDefect>;
|
|
148
|
+
readonly invariants?: InvariantReport[];
|
|
149
|
+
readonly invariantSpec?: InvariantSpec;
|
|
150
|
+
/** Judgment/generation call counts and tokens for this run (#100); present only when `opts.usage` was supplied. */
|
|
151
|
+
readonly usage?: UsageCounts;
|
|
152
|
+
/** Backend log correlation summary (#142) — present only when `--log-source` was given. */
|
|
153
|
+
readonly serverLogs?: ServerLogsSummary;
|
|
154
|
+
/** @deprecated since 0.2.0 (#195) — the `server-log` subset of `defects`; removed in the next minor. */
|
|
155
|
+
readonly serverLogDefects?: ServerLogDefect[];
|
|
156
|
+
}
|
|
157
|
+
export declare function runCoverageMission(opts: RunCoverageMissionOptions): Promise<RunCoverageMissionResult>;
|
|
158
|
+
export {};
|
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
/** The coverage/exploratory strategy runner behind `jevitate explore --strategy coverage|exploratory`. */
|
|
2
|
+
import { writeFile } from "node:fs/promises";
|
|
3
|
+
import { logsDirFor } from "./project-dir.js";
|
|
4
|
+
import { join, resolve as resolvePath } from "node:path";
|
|
5
|
+
import { PlaywrightBrowserPort, resolveEmulation } from "@jevitate/playwright";
|
|
6
|
+
import { closeOnce, demoOverlayOf, finalizeVideos, runVideoDir, sessionLaunchOptions } from "./browser-run-options.js";
|
|
7
|
+
import { runCaptureFor } from "./run-screenshots.js";
|
|
8
|
+
import { evidenceOf, withRunEvidence } from "./defect-evidence.js";
|
|
9
|
+
import { CastActor, BrowseTheWeb } from "@jevitate/screenplay";
|
|
10
|
+
import { runInductionMission, assertAuthorizedExploreTarget, startRouteGlobs, Http5xxOracle, hangOutcome, } from "@jevitate/explore";
|
|
11
|
+
import { combineOutcomes, gatingDefects, } from "@jevitate/domain";
|
|
12
|
+
import { currentEngineInfo } from "./engine.js";
|
|
13
|
+
import { MissionJournal, artifactStamp, closeQuietly, resultPathFor, writeMissionResult } from "./mission-journal.js";
|
|
14
|
+
import { MISSION_RESULT_SCHEMA_VERSION, unifiedDefects } from "./result-schema.js";
|
|
15
|
+
import { missionExitCode } from "./mission-exit.js";
|
|
16
|
+
import { launchArmed } from "./launch-armed.js";
|
|
17
|
+
import { finishHostHealth } from "./host-health-run.js";
|
|
18
|
+
import { applyServerLogOutcome, openServerLogRuntime, } from "./log-correlation.js";
|
|
19
|
+
import { serverLogResult, recordingEmulation, freshSessionOpener, currentUrlSafe, assertSaveStorageStateOutsideProject, persistStorageState, declaredResult, } from "./explore-shared.js";
|
|
20
|
+
export async function runCoverageMission(opts) {
|
|
21
|
+
// Guardrail #1 — authorize BEFORE opening a browser. Throws on refusal.
|
|
22
|
+
const origin = assertAuthorizedExploreTarget(opts.url, opts.allowlist);
|
|
23
|
+
assertSaveStorageStateOutsideProject(opts.saveStorageState);
|
|
24
|
+
// #224: the shared default scope (the start URL's route) must be derivable — refused up front.
|
|
25
|
+
startRouteGlobs(opts.url);
|
|
26
|
+
// #149: refused BEFORE any browser opens.
|
|
27
|
+
const resolvedEmulation = resolveEmulation(opts.emulation);
|
|
28
|
+
// #250/#251: a recorded or screenshotted run's sessions carry the live pixel mask from their first
|
|
29
|
+
// paint; `--screenshots` captures after each step (the Recording path names their folder).
|
|
30
|
+
const capture = runCaptureFor({
|
|
31
|
+
recordsVideo: opts.browser?.recordVideo !== undefined,
|
|
32
|
+
screenshots: opts.screenshots,
|
|
33
|
+
secrets: [],
|
|
34
|
+
artifactPath: () => journal.recordingPath,
|
|
35
|
+
title: `${opts.strategy ?? "coverage"} run of ${opts.url}`,
|
|
36
|
+
});
|
|
37
|
+
const portFactory = capture.wrap(opts.browserPortFactory ?? (() => new PlaywrightBrowserPort()));
|
|
38
|
+
const port = portFactory();
|
|
39
|
+
const outDir = opts.outDir ?? logsDirFor();
|
|
40
|
+
const iso = (opts.nowIso ?? (() => new Date().toISOString()))();
|
|
41
|
+
const stamp = artifactStamp(iso);
|
|
42
|
+
// `MissionJournal` creates `outDir` synchronously (mkdirSync).
|
|
43
|
+
// #213: an exploratory run's files are named for it (`exploratory-*`), not `coverage-*`; every
|
|
44
|
+
// reader finds a result by its content (#211), never by this prefix.
|
|
45
|
+
const filePrefix = opts.strategy ?? "coverage";
|
|
46
|
+
const journal = new MissionJournal(join(outDir, `${filePrefix}-${stamp}.json`));
|
|
47
|
+
// #245: the mission session and every hang-replay session are shown/recorded alike.
|
|
48
|
+
const videoDir = runVideoDir(opts.browser, journal.recordingPath);
|
|
49
|
+
const launch = {
|
|
50
|
+
...sessionLaunchOptions(opts.browser, videoDir),
|
|
51
|
+
allowedOrigins: [...opts.allowlist],
|
|
52
|
+
baseUrl: origin,
|
|
53
|
+
...opts.emulation,
|
|
54
|
+
...(opts.storageState !== undefined ? { storageState: opts.storageState } : {}),
|
|
55
|
+
};
|
|
56
|
+
// #163: this run's own share of a (possibly shared) tracker: its usage and sidecar.
|
|
57
|
+
const runUsage = opts.usage?.scope();
|
|
58
|
+
// #226: the kill switch is armed BEFORE the host sampler and the browser launch (see launch-armed.ts).
|
|
59
|
+
const { disarmKillSwitch, health, session, snapshotter } = await launchArmed({
|
|
60
|
+
hostHealth: opts.hostHealth,
|
|
61
|
+
saveStorageState: opts.saveStorageState !== undefined,
|
|
62
|
+
open: () => port.open(launch),
|
|
63
|
+
mission: (hooks) => ({
|
|
64
|
+
// #220: the killed run's partial result carries the unified schema's common fields too.
|
|
65
|
+
strategy: opts.strategy ?? "coverage",
|
|
66
|
+
target: { seedUrl: opts.url, allowlist: [...opts.allowlist], ...(opts.storageState !== undefined ? { storageStatePath: resolvePath(opts.storageState) } : {}) },
|
|
67
|
+
recordingPath: journal.recordingPath,
|
|
68
|
+
hostHealth: hooks.hostHealth,
|
|
69
|
+
...(videoDir === undefined ? {} : { videoDir }),
|
|
70
|
+
transcriptPath: journal.transcriptPath,
|
|
71
|
+
transcript: () => journal.transcript,
|
|
72
|
+
...(runUsage === undefined ? {} : { usage: runUsage }),
|
|
73
|
+
...(opts.saveStorageState === undefined ? {} : { storageState: { path: opts.saveStorageState, snapshot: hooks.snapshot } }),
|
|
74
|
+
}),
|
|
75
|
+
});
|
|
76
|
+
// #208: the shared HTTP 5xx hard signal, listening from before the first navigation.
|
|
77
|
+
const http5xx = new Http5xxOracle(session.page, { allowlist: opts.allowlist });
|
|
78
|
+
const serverLog = openServerLogRuntime({
|
|
79
|
+
sources: opts.serverLog?.sources ?? [],
|
|
80
|
+
logDefect: opts.serverLog?.logDefect ?? [],
|
|
81
|
+
quietOk: opts.serverLog?.quietOk ?? [],
|
|
82
|
+
logIgnore: opts.serverLog?.logIgnore ?? [],
|
|
83
|
+
...(opts.serverLog?.drainMs === undefined ? {} : { drainMs: opts.serverLog.drainMs }),
|
|
84
|
+
secrets: [],
|
|
85
|
+
onTranscriptEntry: journal.onTranscriptEntry,
|
|
86
|
+
});
|
|
87
|
+
const onTranscriptEntry = (entry, all) => {
|
|
88
|
+
capture.noteEntry(session.page, entry);
|
|
89
|
+
health.noteStep(entry);
|
|
90
|
+
http5xx.noteStep(entry);
|
|
91
|
+
(serverLog?.onTranscriptEntry ?? journal.onTranscriptEntry)(entry, all);
|
|
92
|
+
snapshotter.noteSettledStep(currentUrlSafe(session));
|
|
93
|
+
};
|
|
94
|
+
// #159/#245: persisted and closed once — early (before the result is written) when recording video.
|
|
95
|
+
const closeSession = closeOnce(async () => {
|
|
96
|
+
await persistStorageState(session, opts.saveStorageState, snapshotter);
|
|
97
|
+
await closeQuietly(session);
|
|
98
|
+
});
|
|
99
|
+
try {
|
|
100
|
+
const actor = CastActor.named("coverage-mission").whoCan(new BrowseTheWeb(session, [...opts.allowlist]));
|
|
101
|
+
const result = await runInductionMission({
|
|
102
|
+
...(opts.target?.timing === undefined ? {} : { timingConfig: opts.target.timing }),
|
|
103
|
+
// A hang is reproduced in fresh contexts, and the frontier keeps being explored after it.
|
|
104
|
+
openFreshSession: freshSessionOpener(portFactory, launch, opts.allowlist),
|
|
105
|
+
...(opts.target?.settle === undefined ? {} : { settle: opts.target.settle }),
|
|
106
|
+
page: session.page,
|
|
107
|
+
actor,
|
|
108
|
+
judgment: opts.judge,
|
|
109
|
+
generation: opts.gen,
|
|
110
|
+
seedUrl: opts.url,
|
|
111
|
+
allowlist: opts.allowlist,
|
|
112
|
+
bounds: opts.bounds,
|
|
113
|
+
onTranscriptEntry,
|
|
114
|
+
...(opts.routeGlobs === undefined ? {} : { routeGlobs: opts.routeGlobs }),
|
|
115
|
+
...(opts.invariants === undefined ? {} : { invariants: opts.invariants }),
|
|
116
|
+
...(opts.invariantAuthTokens === undefined ? {} : { invariantAuthTokens: opts.invariantAuthTokens }),
|
|
117
|
+
...(opts.strategy === undefined ? {} : { strategy: opts.strategy }),
|
|
118
|
+
...(opts.stallTimeoutMs === undefined ? {} : { stallTimeoutMs: opts.stallTimeoutMs }),
|
|
119
|
+
...(opts.target?.safety === undefined ? {} : { safety: opts.target.safety }),
|
|
120
|
+
overflow: {
|
|
121
|
+
...(opts.overflow?.checkOverflow === undefined ? {} : { checkOverflow: opts.overflow.checkOverflow }),
|
|
122
|
+
...(opts.overflow?.toleranceCss === undefined ? {} : { toleranceCss: opts.overflow.toleranceCss }),
|
|
123
|
+
...(opts.overflow?.ignoreSelectors === undefined ? {} : { ignoreSelectors: opts.overflow.ignoreSelectors }),
|
|
124
|
+
...(opts.emulation?.device === undefined ? {} : { device: opts.emulation.device }),
|
|
125
|
+
},
|
|
126
|
+
hostHealth: health,
|
|
127
|
+
demoOverlay: demoOverlayOf(opts.browser),
|
|
128
|
+
});
|
|
129
|
+
// #149: every repro Recording (per-state, and each defect's own) is stamped with the emulation
|
|
130
|
+
// it was found under, so `verify-fix` replays it under the SAME device by default.
|
|
131
|
+
const emu = recordingEmulation(resolvedEmulation);
|
|
132
|
+
const withEmu = (r) => (emu === undefined ? r : { ...r, emulation: emu });
|
|
133
|
+
const stampedDefects = result.coverage.defects.map((d) => ({ ...d, recording: withEmu(d.recording) }));
|
|
134
|
+
const stampedCoverage = { ...result.coverage, defects: stampedDefects };
|
|
135
|
+
const serverLogRun = serverLog === undefined ? undefined : await serverLog.finish(result.transcript);
|
|
136
|
+
const recordingPaths = [];
|
|
137
|
+
for (let i = 0; i < result.recordings.length; i++) {
|
|
138
|
+
const p = join(outDir, `${filePrefix}-${stamp}-state-${i}.json`);
|
|
139
|
+
await writeFile(p, `${JSON.stringify(withEmu(result.recordings[i]), null, 2)}\n`, "utf8");
|
|
140
|
+
recordingPaths.push(p);
|
|
141
|
+
}
|
|
142
|
+
journal.writeTranscript(serverLogRun?.transcript ?? result.transcript);
|
|
143
|
+
// A silent run that never proved anything (the seed redirected off-target, or the frontier
|
|
144
|
+
// spent its budget on controls that failed rather than exercising the target) is `inconclusive`,
|
|
145
|
+
// never `clean` — mirrors the adversarial mission's coverage-sufficiency check (#69, #75, #82).
|
|
146
|
+
// A declared-invariant violation (#86) is a hard defect, whatever the coverage.
|
|
147
|
+
// #208: the shared HTTP 5xx hard signal's defects count like the strategy's own.
|
|
148
|
+
const httpDefects = http5xx.defects(result.transcript);
|
|
149
|
+
// #214: a `judgment-flagged-state` is advisory (Jev's opinion alone, guardrail #4): listed in
|
|
150
|
+
// `defects`/`coverage.defects` with its repro, but it never counts toward `defects-found` — only a
|
|
151
|
+
// defect an independent code oracle decided (overflow, invariant, 5xx, server-log) gates the run.
|
|
152
|
+
const hardFrontier = gatingDefects(stampedDefects).length;
|
|
153
|
+
const found = hardFrontier + (result.invariantDefects?.length ?? 0) + httpDefects.length;
|
|
154
|
+
// Could not return to the seed, or stalled (#114): the run stopped short of its target — inconclusive.
|
|
155
|
+
// #150 — a crossed mission spend budget is a deliberate, clean stop (not the run breaking): it
|
|
156
|
+
// maps to `inconclusive`, but a defect found before it still wins, reported with `stop: "budget"`.
|
|
157
|
+
const bare = result.outcome === "crashed"
|
|
158
|
+
? "crashed"
|
|
159
|
+
: result.outcome === "scope-unreachable" || result.outcome === "stalled"
|
|
160
|
+
? "inconclusive"
|
|
161
|
+
: // #203: a frontier drained by timed-out actions, or ended on a page hung only on a starved
|
|
162
|
+
// host (no hang finding left), explored too little to be clean — a found defect still wins.
|
|
163
|
+
result.outcome === "budget" || result.outcome === "insufficient-coverage" || (result.outcome === "hang" && result.hangs.length === 0)
|
|
164
|
+
? found > 0
|
|
165
|
+
? "defects-found"
|
|
166
|
+
: "inconclusive"
|
|
167
|
+
: null;
|
|
168
|
+
const thin = bare === null && found === 0 && !result.coverage.sufficiency.sufficient;
|
|
169
|
+
const preLogOutcome = combineOutcomes([
|
|
170
|
+
bare ?? (thin ? "inconclusive" : found > 0 ? "defects-found" : "clean"),
|
|
171
|
+
...result.hangs.map((h) => hangOutcome(h.reproduction.status)),
|
|
172
|
+
]);
|
|
173
|
+
// #142 follow-up: a server-log defect counts as `defects-found`; an unreadable `--log-defect`
|
|
174
|
+
// oracle turns an otherwise-`clean` run `inconclusive` — never a false clean.
|
|
175
|
+
const host = await finishHostHealth(health, applyServerLogOutcome(preLogOutcome, serverLogRun));
|
|
176
|
+
const missionOutcome = host.outcome;
|
|
177
|
+
const coverageFailure = thin
|
|
178
|
+
? { kind: "insufficient-coverage", message: `coverage below thresholds: ${result.coverage.sufficiency.shortfalls.join("; ")}` }
|
|
179
|
+
: undefined;
|
|
180
|
+
const failure = result.failure ?? host.failure ?? coverageFailure;
|
|
181
|
+
const exitCode = missionExitCode(missionOutcome);
|
|
182
|
+
// #245: every context closed (videos finalized) before the result naming them is written.
|
|
183
|
+
const shotFields = await capture.finish();
|
|
184
|
+
const videos = await finalizeVideos(videoDir, closeSession);
|
|
185
|
+
const typed = {
|
|
186
|
+
schemaVersion: MISSION_RESULT_SCHEMA_VERSION,
|
|
187
|
+
hangs: result.hangs,
|
|
188
|
+
recording: null,
|
|
189
|
+
target: {
|
|
190
|
+
seedUrl: opts.url,
|
|
191
|
+
allowlist: [...opts.allowlist],
|
|
192
|
+
...(opts.storageState !== undefined ? { storageStatePath: resolvePath(opts.storageState) } : {}),
|
|
193
|
+
},
|
|
194
|
+
timing: result.timing,
|
|
195
|
+
strategy: opts.strategy ?? "coverage",
|
|
196
|
+
// #213: the SCOPE line (#224's field) — the start route plus any --route/--scope app globs.
|
|
197
|
+
scope: {
|
|
198
|
+
routeGlobs: [...stampedCoverage.scope.routeGlobs],
|
|
199
|
+
source: (opts.routeGlobs ?? []).some((g) => g.trim() !== "") ? "route" : "start-url",
|
|
200
|
+
},
|
|
201
|
+
coverage: stampedCoverage,
|
|
202
|
+
// #209: a frontier that emptied having exercised too little to be clean is not `exhausted`
|
|
203
|
+
// (that reads as "fully covered") — it is `insufficient-coverage`, the same word as its
|
|
204
|
+
// `failure.kind`, so one ending has one name.
|
|
205
|
+
outcome: thin && result.outcome === "exhausted" ? "insufficient-coverage" : result.outcome,
|
|
206
|
+
missionOutcome,
|
|
207
|
+
exitCode,
|
|
208
|
+
...(failure === undefined ? {} : { failure }),
|
|
209
|
+
recordingPaths,
|
|
210
|
+
...videos,
|
|
211
|
+
...shotFields,
|
|
212
|
+
transcriptPath: journal.transcriptPath,
|
|
213
|
+
sideEffects: result.sideEffects ?? [],
|
|
214
|
+
...(result.sideEffectsTruncated === undefined ? {} : { sideEffectsTruncated: result.sideEffectsTruncated }),
|
|
215
|
+
...(result.budget === undefined ? {} : { budget: result.budget }),
|
|
216
|
+
engine: currentEngineInfo(),
|
|
217
|
+
...declaredResult(opts.invariants, result.invariantDefects, result.invariants),
|
|
218
|
+
...(runUsage === undefined ? {} : { usage: runUsage.snapshot() }),
|
|
219
|
+
...serverLogResult(serverLogRun),
|
|
220
|
+
// #209: EVERY defect in `defects` (#195) — the frontier's own (a horizontal overflow, a flagged
|
|
221
|
+
// state; also in `coverage.defects`), then declared-invariant, then HTTP 5xx (#208), then server-log ones.
|
|
222
|
+
defects: unifiedDefects([
|
|
223
|
+
// Slim: the repro Recording stays in `coverage.defects` (not copied twice into the result).
|
|
224
|
+
...stampedDefects.map(({ recording: _repro, reason, ...d }) => ({ ...d, title: reason })),
|
|
225
|
+
...(opts.invariants === undefined ? [] : (result.invariantDefects ?? [])),
|
|
226
|
+
...httpDefects,
|
|
227
|
+
], serverLogRun?.defects),
|
|
228
|
+
resultPath: resultPathFor(journal.recordingPath),
|
|
229
|
+
...host.fields,
|
|
230
|
+
};
|
|
231
|
+
return await withRunEvidence({ ...typed, resultPath: writeMissionResult(journal.recordingPath, missionOutcome, exitCode, typed, runUsage) }, evidenceOf(opts, []));
|
|
232
|
+
}
|
|
233
|
+
finally {
|
|
234
|
+
disarmKillSwitch();
|
|
235
|
+
health.stop();
|
|
236
|
+
await serverLog?.abort();
|
|
237
|
+
await closeSession();
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
//# sourceMappingURL=explore-coverage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"explore-coverage.js","sourceRoot":"","sources":["../src/explore-coverage.ts"],"names":[],"mappings":"AAAA,0GAA0G;AAC1G,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,WAAW,CAAC;AAEzD,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAwC,MAAM,sBAAsB,CAAC;AACrH,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW,EAAE,oBAAoB,EAA0B,MAAM,0BAA0B,CAAC;AAC/I,OAAO,EAAE,aAAa,EAAwB,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAI/D,OAAO,EACL,mBAAmB,EACnB,6BAA6B,EAI7B,eAAe,EAIf,aAAa,EACb,WAAW,GAGZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,eAAe,EACf,aAAa,GAGd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,iBAAiB,EAAmB,MAAM,aAAa,CAAC;AAEjE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACtH,OAAO,EAAE,6BAA6B,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EACL,qBAAqB,EACrB,oBAAoB,GAGrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,eAAe,EAEf,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,oCAAoC,EACpC,mBAAmB,EAEnB,cAAc,GACf,MAAM,qBAAqB,CAAC;AAmJ7B,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAA+B;IACtE,wEAAwE;IACxE,MAAM,MAAM,GAAG,6BAA6B,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACvE,oCAAoC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC5D,+FAA+F;IAC/F,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE1B,0CAA0C;IAC1C,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3D,mGAAmG;IACnG,2FAA2F;IAC3F,MAAM,OAAO,GAAG,aAAa,CAAC;QAC5B,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,KAAK,SAAS;QACrD,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,OAAO,EAAE,EAAE;QACX,YAAY,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa;QACzC,KAAK,EAAE,GAAG,IAAI,CAAC,QAAQ,IAAI,UAAU,WAAW,IAAI,CAAC,GAAG,EAAE;KAC3D,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,qBAAqB,EAAE,CAAC,CAAC,CAAC;IACjG,MAAM,IAAI,GAAG,WAAW,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,UAAU,EAAE,CAAC;IAC3C,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC;IAChE,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IACjC,+DAA+D;IAC/D,+FAA+F;IAC/F,qEAAqE;IACrE,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,IAAI,UAAU,CAAC;IAC/C,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC;IAChF,oFAAoF;IACpF,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAClE,MAAM,MAAM,GAAG;QACb,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC;QAC/C,cAAc,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;QACnC,OAAO,EAAE,MAAM;QACf,GAAG,IAAI,CAAC,SAAS;QACjB,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChF,CAAC;IACF,oFAAoF;IACpF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC;IACrC,uGAAuG;IACvG,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,WAAW,CAAC;QAC3E,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,KAAK,SAAS;QACrD,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QAC7B,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACnB,wFAAwF;YACxF,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,UAAU;YACrC,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;YAC/J,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;YAC/C,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU;YACpC,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;YACtD,GAAG,CAAC,IAAI,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;SAC5H,CAAC;KACH,CAAC,CAAC;IAEH,qFAAqF;IACrF,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IAC/E,MAAM,SAAS,GAAG,oBAAoB,CAAC;QACrC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,IAAI,EAAE;QACtC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,IAAI,EAAE;QAC1C,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,IAAI,EAAE;QACtC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,IAAI,EAAE;QAC1C,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QACrF,OAAO,EAAE,EAAE;QACX,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;KAC7C,CAAC,CAAC;IACH,MAAM,iBAAiB,GAAG,CAAC,KAAsB,EAAE,GAA+B,EAAQ,EAAE;QAC1F,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACvC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACvB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC,SAAS,EAAE,iBAAiB,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACxE,WAAW,CAAC,eAAe,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IACvD,CAAC,CAAC;IACF,oGAAoG;IACpG,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,IAAI,EAAE;QACxC,MAAM,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;QACvE,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IACH,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACzG,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC;YACvC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAClF,0FAA0F;YAC1F,gBAAgB,EAAE,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;YACzE,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5E,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK;YACL,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,UAAU,EAAE,IAAI,CAAC,GAAG;YACpB,OAAO,EAAE,IAAI,CAAC,GAAG;YACjB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,iBAAiB;YACjB,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;YACzE,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;YACzE,GAAG,CAAC,IAAI,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACpG,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnE,GAAG,CAAC,IAAI,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC;YACrF,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5E,QAAQ,EAAE;gBACR,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;gBACrG,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;gBAClG,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;gBAC3G,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;aACnF;YACD,UAAU,EAAE,MAAM;YAClB,WAAW,EAAE,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;SACzC,CAAC,CAAC;QAEH,+FAA+F;QAC/F,mFAAmF;QACnF,MAAM,GAAG,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,CAAC,CAAY,EAAa,EAAE,CAAC,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;QAChG,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;QACvG,MAAM,eAAe,GAAG,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;QACxE,MAAM,YAAY,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACrG,MAAM,cAAc,GAAa,EAAE,CAAC;QACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAClD,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,IAAI,KAAK,UAAU,CAAC,OAAO,CAAC,CAAC;YACjE,MAAM,SAAS,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC3F,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QACD,OAAO,CAAC,eAAe,CAAC,YAAY,EAAE,UAAU,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC;QACvE,2FAA2F;QAC3F,iGAAiG;QACjG,gGAAgG;QAChG,gFAAgF;QAChF,iFAAiF;QACjF,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACvD,8FAA8F;QAC9F,mGAAmG;QACnG,kGAAkG;QAClG,MAAM,YAAY,GAAG,aAAa,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC;QAC1D,MAAM,KAAK,GAAG,YAAY,GAAG,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC;QACzF,uGAAuG;QACvG,+FAA+F;QAC/F,mGAAmG;QACnG,MAAM,IAAI,GACR,MAAM,CAAC,OAAO,KAAK,SAAS;YAC1B,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,MAAM,CAAC,OAAO,KAAK,mBAAmB,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS;gBACtE,CAAC,CAAC,cAAc;gBAChB,CAAC,CAAC,2FAA2F;oBAC3F,4FAA4F;oBAC5F,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,KAAK,uBAAuB,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;wBACrI,CAAC,CAAC,KAAK,GAAG,CAAC;4BACT,CAAC,CAAC,eAAe;4BACjB,CAAC,CAAC,cAAc;wBAClB,CAAC,CAAC,IAAI,CAAC;QACf,MAAM,IAAI,GAAG,IAAI,KAAK,IAAI,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC;QACrF,MAAM,aAAa,GAAmB,eAAe,CAAC;YACpD,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC;YACvE,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;SAC/D,CAAC,CAAC;QACH,8FAA8F;QAC9F,8EAA8E;QAC9E,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,qBAAqB,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC;QAChG,MAAM,cAAc,GAAmB,IAAI,CAAC,OAAO,CAAC;QACpD,MAAM,eAAe,GAA+B,IAAI;YACtD,CAAC,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,OAAO,EAAE,8BAA8B,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YAC/H,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,IAAI,eAAe,CAAC;QAElE,MAAM,QAAQ,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC;QACjD,0FAA0F;QAC1F,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG;YACZ,aAAa,EAAE,6BAA6B;YAC5C,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,SAAS,EAAE,IAAI;YACf,MAAM,EAAE;gBACN,OAAO,EAAE,IAAI,CAAC,GAAG;gBACjB,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC9B,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACjG;YACD,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,UAAU;YACrC,4FAA4F;YAC5F,KAAK,EAAE;gBACL,UAAU,EAAE,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC;gBACjD,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAE,OAAiB,CAAC,CAAC,CAAE,WAAqB;aAC3G;YACD,QAAQ,EAAE,eAAe;YACzB,2FAA2F;YAC3F,wFAAwF;YACxF,8CAA8C;YAC9C,OAAO,EAAE,IAAI,IAAI,MAAM,CAAC,OAAO,KAAK,WAAW,CAAC,CAAC,CAAE,uBAAiC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO;YACrG,cAAc;YACd,QAAQ;YACR,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;YAC7C,cAAc;YACd,GAAG,MAAM;YACT,GAAG,UAAU;YACb,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE;YACrC,GAAG,CAAC,MAAM,CAAC,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,MAAM,CAAC,oBAAoB,EAAE,CAAC;YAC3G,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;YACjE,MAAM,EAAE,iBAAiB,EAAE;YAC3B,GAAG,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,UAAU,CAAC;YAC9E,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;YACjE,GAAG,eAAe,CAAC,YAAY,CAAC;YAChC,gGAAgG;YAChG,2GAA2G;YAC3G,OAAO,EAAE,cAAc,CACrB;gBACE,4FAA4F;gBAC5F,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;gBACzF,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;gBACzE,GAAG,WAAW;aACf,EACD,YAAY,EAAE,OAAO,CACtB;YACD,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC;YAChD,GAAG,IAAI,CAAC,MAAM;SACf,CAAC;QACF,OAAO,MAAM,eAAe,CAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,kBAAkB,CAAC,OAAO,CAAC,aAAa,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IACrK,CAAC;YAAS,CAAC;QACT,gBAAgB,EAAE,CAAC;QACnB,MAAM,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,SAAS,EAAE,KAAK,EAAE,CAAC;QACzB,MAAM,YAAY,EAAE,CAAC;IACvB,CAAC;AACH,CAAC"}
|