@canonical/pragma-cli 0.35.0 → 0.37.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 +2 -2
- package/bundled-skills/add-standard/SKILL.md +338 -0
- package/bundled-skills/adoption-a1-styles/SKILL.md +269 -0
- package/bundled-skills/adoption-a2-components/SKILL.md +291 -0
- package/bundled-skills/adoption-a3-forms/SKILL.md +260 -0
- package/bundled-skills/anatomy-author/ANATOMY_DSL_SPEC.md +406 -0
- package/bundled-skills/anatomy-author/SKILL.md +1226 -0
- package/bundled-skills/design-auditor/SKILL.md +455 -0
- package/bundled-skills/implement-component/SKILL.md +333 -0
- package/bundled-skills/specify-component/SKILL.md +331 -0
- package/bundled-skills/specify-pattern/SKILL.md +292 -0
- package/dist/package.json +24 -20
- package/dist/pragma.conf.js +266 -34
- package/dist/pragma.conf.js.map +1 -1
- package/dist/src/bin.js +1 -1
- package/dist/src/bin.js.map +1 -1
- package/dist/src/capabilities/capabilities/hints.js +1 -1
- package/dist/src/capabilities/capabilities/hints.js.map +1 -1
- package/dist/src/capabilities/colophon/colophon.render.js +1 -1
- package/dist/src/capabilities/colophon/colophon.render.js.map +1 -1
- package/dist/src/capabilities/create/create.verb.js +2 -1
- package/dist/src/capabilities/create/create.verb.js.map +1 -1
- package/dist/src/capabilities/create/createSurface.generated.js +23 -1
- package/dist/src/capabilities/create/createSurface.generated.js.map +1 -1
- package/dist/src/capabilities/create/mount.js +4 -3
- package/dist/src/capabilities/create/mount.js.map +1 -1
- package/dist/src/capabilities/doctor/checks/checkNodeVersion.js +11 -6
- package/dist/src/capabilities/doctor/checks/checkNodeVersion.js.map +1 -1
- package/dist/src/capabilities/doctor/checks/checkPackageRefs.js +60 -4
- package/dist/src/capabilities/doctor/checks/checkPackageRefs.js.map +1 -1
- package/dist/src/capabilities/doctor/checks/checkShellCompletions.js +8 -8
- package/dist/src/capabilities/doctor/checks/checkShellCompletions.js.map +1 -1
- package/dist/src/capabilities/doctor/checks/harnessInventory.js +195 -0
- package/dist/src/capabilities/doctor/checks/harnessInventory.js.map +1 -0
- package/dist/src/capabilities/doctor/checks/index.js +6 -6
- package/dist/src/capabilities/doctor/checks/isSupportedNodeVersion.js +38 -0
- package/dist/src/capabilities/doctor/checks/isSupportedNodeVersion.js.map +1 -0
- package/dist/src/capabilities/doctor/checks/targetHealth.js +194 -50
- package/dist/src/capabilities/doctor/checks/targetHealth.js.map +1 -1
- package/dist/src/capabilities/doctor/doctor.render.js +43 -64
- package/dist/src/capabilities/doctor/doctor.render.js.map +1 -1
- package/dist/src/capabilities/doctor/doctor.verb.js +6 -2
- package/dist/src/capabilities/doctor/doctor.verb.js.map +1 -1
- package/dist/src/capabilities/doctor/runChecks.js +14 -11
- package/dist/src/capabilities/doctor/runChecks.js.map +1 -1
- package/dist/src/capabilities/graph/query.render.js +2 -2
- package/dist/src/capabilities/graph/query.render.js.map +1 -1
- package/dist/src/capabilities/info/collectInfo.js +8 -2
- package/dist/src/capabilities/info/collectInfo.js.map +1 -1
- package/dist/src/capabilities/info/info.render.js +6 -2
- package/dist/src/capabilities/info/info.render.js.map +1 -1
- package/dist/src/capabilities/prompt/prompt.render.js +2 -2
- package/dist/src/capabilities/prompt/prompt.render.js.map +1 -1
- package/dist/src/capabilities/setup/buildPlan.js +43 -39
- package/dist/src/capabilities/setup/buildPlan.js.map +1 -1
- package/dist/src/capabilities/setup/mode.js +2 -2
- package/dist/src/capabilities/setup/operations/index.js +4 -4
- package/dist/src/capabilities/setup/operations/index.js.map +1 -1
- package/dist/src/capabilities/setup/operations/setupCompletions.js +6 -2
- package/dist/src/capabilities/setup/operations/setupCompletions.js.map +1 -1
- package/dist/src/capabilities/setup/operations/setupConfig.js +4 -2
- package/dist/src/capabilities/setup/operations/setupConfig.js.map +1 -1
- package/dist/src/capabilities/setup/operations/setupGenerator.js +156 -58
- package/dist/src/capabilities/setup/operations/setupGenerator.js.map +1 -1
- package/dist/src/capabilities/setup/operations/setupLsp.js +136 -38
- package/dist/src/capabilities/setup/operations/setupLsp.js.map +1 -1
- package/dist/src/capabilities/setup/operations/setupMcp.js +101 -52
- package/dist/src/capabilities/setup/operations/setupMcp.js.map +1 -1
- package/dist/src/capabilities/setup/operations/setupSkills.js +329 -49
- package/dist/src/capabilities/setup/operations/setupSkills.js.map +1 -1
- package/dist/src/capabilities/setup/plan.js.map +1 -1
- package/dist/src/capabilities/setup/plan.render.js +144 -66
- package/dist/src/capabilities/setup/plan.render.js.map +1 -1
- package/dist/src/capabilities/setup/setup.render.js +1 -1
- package/dist/src/capabilities/setup/setup.verb.js +165 -63
- package/dist/src/capabilities/setup/setup.verb.js.map +1 -1
- package/dist/src/capabilities/setup/targets.js +122 -51
- package/dist/src/capabilities/setup/targets.js.map +1 -1
- package/dist/src/capabilities/shared/index.js +7 -6
- package/dist/src/capabilities/shared/index.js.map +1 -1
- package/dist/src/capabilities/shared/packageManager.js +300 -54
- package/dist/src/capabilities/shared/packageManager.js.map +1 -1
- package/dist/src/capabilities/skill/discover.js +97 -11
- package/dist/src/capabilities/skill/discover.js.map +1 -1
- package/dist/src/capabilities/skill/render.js +2 -2
- package/dist/src/capabilities/skill/render.js.map +1 -1
- package/dist/src/capabilities/sources/installSkills.js +145 -3
- package/dist/src/capabilities/sources/installSkills.js.map +1 -1
- package/dist/src/capabilities/sources/runUpdate.js +68 -2
- package/dist/src/capabilities/sources/runUpdate.js.map +1 -1
- package/dist/src/capabilities/sources/update.verb.js +3 -3
- package/dist/src/capabilities/sources/update.verb.js.map +1 -1
- package/dist/src/capabilities/upgrade/runUpgrade.js +43 -7
- package/dist/src/capabilities/upgrade/runUpgrade.js.map +1 -1
- package/dist/src/capabilities/upgrade/upgrade.render.js +10 -2
- package/dist/src/capabilities/upgrade/upgrade.render.js.map +1 -1
- package/dist/src/constants.js +13 -2
- package/dist/src/constants.js.map +1 -1
- package/dist/src/kernel/index.js +11 -2
- package/dist/src/kernel/index.js.map +1 -1
- package/dist/src/kernel/interactivity.js +68 -0
- package/dist/src/kernel/interactivity.js.map +1 -0
- package/dist/src/kernel/packs/renderPack.js +3 -3
- package/dist/src/kernel/packs/renderPack.js.map +1 -1
- package/dist/src/kernel/packs/resolveEntity.js +63 -12
- package/dist/src/kernel/packs/resolveEntity.js.map +1 -1
- package/dist/src/kernel/packs/runBodies.js +57 -4
- package/dist/src/kernel/packs/runBodies.js.map +1 -1
- package/dist/src/kernel/packs/schema.js +54 -2
- package/dist/src/kernel/packs/schema.js.map +1 -1
- package/dist/src/kernel/packs/sparql/applyFilters.js +104 -5
- package/dist/src/kernel/packs/sparql/applyFilters.js.map +1 -1
- package/dist/src/kernel/packs/sparql/buildLookupQuery.js +310 -43
- package/dist/src/kernel/packs/sparql/buildLookupQuery.js.map +1 -1
- package/dist/src/kernel/packs/types.js.map +1 -1
- package/dist/src/kernel/project/cli/buildProgram.js +1 -1
- package/dist/src/kernel/project/cli/buildProgram.js.map +1 -1
- package/dist/src/kernel/project/cli/dispatch.js +46 -24
- package/dist/src/kernel/project/cli/dispatch.js.map +1 -1
- package/dist/src/kernel/project/cli/globalFlags.js +4 -1
- package/dist/src/kernel/project/cli/globalFlags.js.map +1 -1
- package/dist/src/kernel/project/cli/helpFormat.js +1 -2
- package/dist/src/kernel/project/cli/helpFormat.js.map +1 -1
- package/dist/src/kernel/project/cli/rootHelp.js +42 -9
- package/dist/src/kernel/project/cli/rootHelp.js.map +1 -1
- package/dist/src/kernel/project/mcp/registerVerb.js +16 -1
- package/dist/src/kernel/project/mcp/registerVerb.js.map +1 -1
- package/dist/src/kernel/render/renderers.js +1 -1
- package/dist/src/kernel/render/style.js +29 -9
- package/dist/src/kernel/render/style.js.map +1 -1
- package/dist/src/kernel/render/vocabulary.js +174 -0
- package/dist/src/kernel/render/vocabulary.js.map +1 -0
- package/dist/src/kernel/runtime/graphpack/embedded/pack.generated.js +2 -3
- package/dist/src/kernel/runtime/graphpack/embedded/pack.generated.js.map +1 -1
- package/dist/src/kernel/runtime/graphpack/embedded/pack.index.generated.js +1 -1
- package/dist/src/kernel/runtime/graphpack/embedded/pack.index.generated.js.map +1 -1
- package/dist/src/kernel/runtime/graphpack/embedded/pack.manifest.generated.js +4 -0
- package/dist/src/kernel/runtime/graphpack/embedded/pack.manifest.generated.js.map +1 -0
- package/dist/src/kernel/runtime/graphpack/embedded.js +13 -6
- package/dist/src/kernel/runtime/graphpack/embedded.js.map +1 -1
- package/dist/src/kernel/runtime/graphpack/read.js +14 -9
- package/dist/src/kernel/runtime/graphpack/read.js.map +1 -1
- package/dist/src/kernel/runtime/loadSession.js +3 -1
- package/dist/src/kernel/runtime/loadSession.js.map +1 -1
- package/dist/src/kernel/runtime/probe.js +1 -1
- package/dist/src/kernel/runtime/probe.js.map +1 -1
- package/dist/src/kernel/runtime/refs/parseRef.js +17 -1
- package/dist/src/kernel/runtime/refs/parseRef.js.map +1 -1
- package/dist/src/kernel/runtime/refs/resolve.js +9 -3
- package/dist/src/kernel/runtime/refs/resolve.js.map +1 -1
- package/dist/src/kernel/spec/emitReference.js +1 -1
- package/dist/src/kernel/spec/emitReference.js.map +1 -1
- package/package.json +24 -20
- package/pragma.conf.ts +272 -34
- package/src/bin.ts +8 -1
- package/src/capabilities/block.parity.test.ts +25 -11
- package/src/capabilities/block.shipped.exec.test.ts +282 -0
- package/src/capabilities/block.tierRank.exec.test.ts +300 -0
- package/src/capabilities/capabilities/hints.ts +1 -1
- package/src/capabilities/colophon/colophon.render.ts +1 -2
- package/src/capabilities/colophon/colophon.test.ts +2 -2
- package/src/capabilities/config/collectConfigShow.test.ts +1 -0
- package/src/capabilities/create/byteEquality.test.ts +28 -1
- package/src/capabilities/create/create.test.ts +1 -0
- package/src/capabilities/create/create.verb.ts +2 -1
- package/src/capabilities/create/createGrammar.test.ts +5 -2
- package/src/capabilities/create/createSurface.generated.ts +23 -1
- package/src/capabilities/create/crossCli.subprocess.test.ts +10 -3
- package/src/capabilities/create/mount.ts +3 -3
- package/src/capabilities/distribution.parity.test.ts +4 -0
- package/src/capabilities/doctor/checks/checkNodeVersion.test.ts +49 -0
- package/src/capabilities/doctor/checks/checkNodeVersion.ts +11 -7
- package/src/capabilities/doctor/checks/checkPackageRefs.ts +69 -4
- package/src/capabilities/doctor/checks/checkShellCompletions.test.ts +6 -4
- package/src/capabilities/doctor/checks/checkShellCompletions.ts +8 -8
- package/src/capabilities/doctor/checks/harnessInventory.test.ts +219 -0
- package/src/capabilities/doctor/checks/harnessInventory.ts +298 -0
- package/src/capabilities/doctor/checks/index.ts +6 -6
- package/src/capabilities/doctor/checks/isSupportedNodeVersion.test.ts +111 -0
- package/src/capabilities/doctor/checks/isSupportedNodeVersion.ts +34 -0
- package/src/capabilities/doctor/checks/mcpCommand.test.ts +7 -1
- package/src/capabilities/doctor/checks/targetHealth.ts +229 -59
- package/src/capabilities/doctor/doctor.render.test.ts +108 -32
- package/src/capabilities/doctor/doctor.render.ts +56 -80
- package/src/capabilities/doctor/doctor.test.ts +247 -35
- package/src/capabilities/doctor/doctor.verb.ts +7 -2
- package/src/capabilities/doctor/runChecks.ts +14 -11
- package/src/capabilities/doctor/types.ts +15 -24
- package/src/capabilities/emptyRecovery.test.ts +10 -2
- package/src/capabilities/graph/query.render.ts +2 -2
- package/src/capabilities/info/collectInfo.ts +8 -1
- package/src/capabilities/info/info.render.ts +6 -2
- package/src/capabilities/info/info.test.ts +37 -1
- package/src/capabilities/info/types.ts +10 -2
- package/src/capabilities/lazy.test.ts +26 -2
- package/src/capabilities/listLookup.shipped.exec.test.ts +340 -0
- package/src/capabilities/prompt/prompt.render.ts +2 -2
- package/src/capabilities/renderVocabularySync.test.ts +82 -0
- package/src/capabilities/resources/resources.test.ts +38 -2
- package/src/capabilities/scopeTypeSync.test.ts +29 -15
- package/src/capabilities/setup/buildPlan.ts +45 -41
- package/src/capabilities/setup/index.ts +1 -1
- package/src/capabilities/setup/mode.ts +2 -2
- package/src/capabilities/setup/operations/index.ts +6 -1
- package/src/capabilities/setup/operations/setupCompletions.ts +9 -2
- package/src/capabilities/setup/operations/setupConfig.ts +7 -2
- package/src/capabilities/setup/operations/setupGenerator.ts +227 -84
- package/src/capabilities/setup/operations/setupLsp.ts +203 -38
- package/src/capabilities/setup/operations/setupMcp.ts +139 -62
- package/src/capabilities/setup/operations/setupSkills.ts +399 -60
- package/src/capabilities/setup/plan.render.ts +171 -76
- package/src/capabilities/setup/plan.ts +17 -12
- package/src/capabilities/setup/setup.mcp.correctness.test.ts +9 -9
- package/src/capabilities/setup/setup.render.test.ts +50 -36
- package/src/capabilities/setup/setup.render.ts +1 -1
- package/src/capabilities/setup/setup.test.ts +1126 -50
- package/src/capabilities/setup/setup.verb.ts +174 -68
- package/src/capabilities/setup/targets.ts +138 -60
- package/src/capabilities/setup/types.ts +10 -18
- package/src/capabilities/shared/index.ts +18 -6
- package/src/capabilities/shared/packageManager.test.ts +421 -6
- package/src/capabilities/shared/packageManager.ts +394 -59
- package/src/capabilities/skill/bundledSkills.test.ts +347 -0
- package/src/capabilities/skill/discover.ts +100 -11
- package/src/capabilities/skill/render.ts +2 -2
- package/src/capabilities/skill/skill.test.ts +17 -4
- package/src/capabilities/sources/installSkills.ts +181 -3
- package/src/capabilities/sources/runUpdate.ts +78 -2
- package/src/capabilities/sources/sources.test.ts +228 -0
- package/src/capabilities/sources/update.verb.ts +3 -3
- package/src/capabilities/surface.test.ts +14 -6
- package/src/capabilities/upgrade/runUpgrade.ts +45 -6
- package/src/capabilities/upgrade/types.ts +10 -2
- package/src/capabilities/upgrade/upgrade.render.ts +9 -2
- package/src/capabilities/upgrade/upgrade.test.ts +72 -0
- package/src/constants.ts +14 -1
- package/src/identity.test.ts +18 -5
- package/src/kernel/completion/entitySource.test.ts +15 -2
- package/src/kernel/completion/safety.test.ts +16 -9
- package/src/kernel/config/defaults.test.ts +19 -3
- package/src/kernel/config/readConfig.test.ts +1 -1
- package/src/kernel/index.ts +11 -2
- package/src/kernel/interactivity.test.ts +76 -0
- package/src/kernel/interactivity.ts +69 -0
- package/src/kernel/packs/compile.test.ts +92 -0
- package/src/kernel/packs/renderPack.ts +3 -3
- package/src/kernel/packs/resolveEntity.test.ts +75 -14
- package/src/kernel/packs/resolveEntity.ts +88 -24
- package/src/kernel/packs/runBodies.ts +84 -19
- package/src/kernel/packs/schema.ts +60 -4
- package/src/kernel/packs/sparql/applyFilters.ts +125 -4
- package/src/kernel/packs/sparql/buildLookupQuery.test.ts +290 -0
- package/src/kernel/packs/sparql/buildLookupQuery.ts +327 -45
- package/src/kernel/packs/toolDescription.test.ts +35 -1
- package/src/kernel/packs/types.ts +125 -2
- package/src/kernel/project/cli/buildProgram.test.ts +73 -2
- package/src/kernel/project/cli/buildProgram.ts +8 -1
- package/src/kernel/project/cli/dispatch.test.ts +5 -4
- package/src/kernel/project/cli/dispatch.ts +48 -25
- package/src/kernel/project/cli/globalFlags.ts +4 -1
- package/src/kernel/project/cli/helpFormat.ts +1 -2
- package/src/kernel/project/cli/rootHelp.ts +44 -8
- package/src/kernel/project/mcp/registerVerb.ts +20 -1
- package/src/kernel/render/prefixes.test.ts +2 -0
- package/src/kernel/render/renderers.ts +1 -1
- package/src/kernel/render/style.ts +32 -9
- package/src/kernel/render/vocabulary.ts +276 -0
- package/src/kernel/runtime/graphpack/embedded/pack.generated.ts +2 -3
- package/src/kernel/runtime/graphpack/embedded/pack.index.generated.ts +1 -1
- package/src/kernel/runtime/graphpack/embedded/pack.manifest.generated.ts +3 -0
- package/src/kernel/runtime/graphpack/embedded.ts +14 -6
- package/src/kernel/runtime/graphpack/graphpack.test.ts +31 -5
- package/src/kernel/runtime/graphpack/read.ts +14 -12
- package/src/kernel/runtime/loadSession.ts +3 -1
- package/src/kernel/runtime/probe.ts +1 -1
- package/src/kernel/runtime/refs/parseRef.test.ts +49 -1
- package/src/kernel/runtime/refs/parseRef.ts +25 -1
- package/src/kernel/runtime/refs/resolve.ts +9 -3
- package/src/kernel/runtime/types.ts +17 -0
- package/src/kernel/spec/emitReference.ts +1 -1
- package/src/kernel/spec/types.ts +35 -6
- package/src/testing/PARITY_GAPS.ts +9 -3
- package/src/testing/behavioral/docExamples.test.ts +4 -2
- package/src/testing/behavioral/errorMatrix.mcp.test.ts +110 -7
- package/src/testing/behavioral/journeys.firstInstall.test.ts +7 -2
- package/src/testing/behavioral/journeys.packageStories.test.ts +6 -3
- package/src/testing/eval/__snapshots__/eval.test.ts.snap +26 -1
- package/src/testing/eval/cases/readNouns.ts +245 -9
- package/src/testing/fixtures/blockGraph.ts +28 -13
- package/src/testing/fixtures/graph/canonical.ts +95 -12
- package/src/testing/helpers/runCli.test.ts +44 -0
- package/src/testing/helpers/runCli.ts +27 -3
- package/dist/src/capabilities/shared/bands.js +0 -16
- package/dist/src/capabilities/shared/bands.js.map +0 -1
- package/src/capabilities/shared/bands.ts +0 -16
|
@@ -9,18 +9,18 @@
|
|
|
9
9
|
* only the self-verb is an MCP tool. `destructive: false` keeps MCP from
|
|
10
10
|
* advertising the tool as destructive.
|
|
11
11
|
*
|
|
12
|
-
* THE
|
|
13
|
-
* runs each harness's own default
|
|
12
|
+
* THE SCOPE DEFAULT IS GLOBAL. `--scope` used to default to `both`, and `both`
|
|
13
|
+
* runs each harness's own default scope — which is `project` for most of the
|
|
14
14
|
* registry — so a bare `setup` scattered `.mcp.json`, `.gemini/settings.json`
|
|
15
15
|
* and `opencode.json` into whatever directory you happened to be standing in.
|
|
16
|
-
* The user
|
|
16
|
+
* The user scope is what a machine-level installer configures; the project scope
|
|
17
17
|
* is a deliberate, checked-in, team-shared choice, and is now chosen with
|
|
18
18
|
* `--local` rather than assumed.
|
|
19
19
|
*
|
|
20
|
-
* Every sub-verb registers the scope flags UNIFORMLY. That is what lets the
|
|
20
|
+
* Every sub-verb registers the scope flags UNIFORMLY. That is what lets the scope
|
|
21
21
|
* answer come from the table instead of per-verb flag wiring — previously
|
|
22
22
|
* `setup completions --local` died as an unknown option, while `setup mcp
|
|
23
|
-
* --local` worked, for no reason a user could see. Asking a target for a
|
|
23
|
+
* --local` worked, for no reason a user could see. Asking a target for a scope it
|
|
24
24
|
* cannot honour is a usage error (exit 2) with the corrected command; asking the
|
|
25
25
|
* RUN-ALL for such a band merely filters, and the out-of-band target still shows
|
|
26
26
|
* as a named row.
|
|
@@ -34,14 +34,14 @@ import { BIN_NAME } from "../../constants.js";
|
|
|
34
34
|
import { PragmaError } from "../../kernel/error/index.js";
|
|
35
35
|
import { asVerb } from "../../kernel/spec/asVerb.js";
|
|
36
36
|
import { resolveSetupMode, setupModeInput } from "./mode.js";
|
|
37
|
-
import { planExitFailed, planTally, TARGET_IDS, } from "./plan.js";
|
|
38
|
-
import { renderProgressLine, renderRecap } from "./plan.render.js";
|
|
37
|
+
import { isActionable, planExitFailed, planTally, TARGET_IDS, } from "./plan.js";
|
|
38
|
+
import { renderDetectionSummary, renderProgressLine, renderRecap, } from "./plan.render.js";
|
|
39
39
|
import { renderDryRun, setupFormatters } from "./setup.render.js";
|
|
40
40
|
/**
|
|
41
41
|
* The `--scope` flag + its `--global`/`--local` boolean sugars. Registered by
|
|
42
|
-
* EVERY setup verb, including the single-
|
|
43
|
-
* sub-verbs and not others is a grammar the user has to memorise, and the
|
|
44
|
-
* a single-
|
|
42
|
+
* EVERY setup verb, including the single-scope ones: a flag that exists on some
|
|
43
|
+
* sub-verbs and not others is a grammar the user has to memorise, and the scope
|
|
44
|
+
* a single-scope target can honour is a question the target table answers.
|
|
45
45
|
*
|
|
46
46
|
* `--global` is a synonym of the default; it stays for scripts and for symmetry
|
|
47
47
|
* with `--local`.
|
|
@@ -50,19 +50,19 @@ const SCOPE_PARAMS = [
|
|
|
50
50
|
{
|
|
51
51
|
kind: "enum",
|
|
52
52
|
name: "scope",
|
|
53
|
-
doc: "
|
|
53
|
+
doc: "Where to configure: global (your home directory, the default), project (this repository), or both.",
|
|
54
54
|
values: ["project", "global", "both"],
|
|
55
55
|
default: "global",
|
|
56
56
|
},
|
|
57
57
|
{
|
|
58
58
|
kind: "boolean",
|
|
59
59
|
name: "global",
|
|
60
|
-
doc: "Shorthand for --scope global
|
|
60
|
+
doc: "Shorthand for --scope global — configure your home directory.",
|
|
61
61
|
},
|
|
62
62
|
{
|
|
63
63
|
kind: "boolean",
|
|
64
64
|
name: "local",
|
|
65
|
-
doc: "Shorthand for --scope project
|
|
65
|
+
doc: "Shorthand for --scope project — configure this project only.",
|
|
66
66
|
},
|
|
67
67
|
];
|
|
68
68
|
/**
|
|
@@ -81,32 +81,33 @@ function resolveScope(params) {
|
|
|
81
81
|
return scope === "project" || scope === "both" ? scope : "global";
|
|
82
82
|
}
|
|
83
83
|
/**
|
|
84
|
-
* Reject a sub-verb asked for a
|
|
84
|
+
* Reject a sub-verb asked for a scope its target cannot hold.
|
|
85
85
|
*
|
|
86
86
|
* This is a usage error, not a skip: the user typed a contradiction, and
|
|
87
|
-
* correcting it is exactly what exit 2 means. The message names the
|
|
87
|
+
* correcting it is exactly what exit 2 means. The message names the scope the
|
|
88
88
|
* target DOES have and prints the command that works, so the correction is one
|
|
89
89
|
* paste rather than one manual page.
|
|
90
90
|
*
|
|
91
91
|
* @param mode - The sub-verb's target, or `all`.
|
|
92
92
|
* @param scope - The resolved selection.
|
|
93
|
-
* @throws PragmaError INVALID_INPUT when the target has no such
|
|
93
|
+
* @throws PragmaError INVALID_INPUT when the target has no such scope.
|
|
94
94
|
*/
|
|
95
|
-
async function
|
|
95
|
+
async function assertScopeIsPossible(mode, scope) {
|
|
96
96
|
if (mode === "all" || scope === "both")
|
|
97
97
|
return;
|
|
98
98
|
const { findTarget } = await import("./targets.js");
|
|
99
99
|
const target = findTarget(mode);
|
|
100
|
-
if (target === undefined || target.
|
|
100
|
+
if (target === undefined || target.scopes.includes(scope))
|
|
101
101
|
return;
|
|
102
|
-
const only = target.
|
|
103
|
-
const level = only === "global" ? "
|
|
102
|
+
const only = target.scopes[0];
|
|
103
|
+
const level = only === "global" ? "global only" : "per-project only";
|
|
104
|
+
const asked = scope === "global" ? "globally" : "per project";
|
|
104
105
|
const corrected = only === "global"
|
|
105
106
|
? `${BIN_NAME} setup ${mode}`
|
|
106
107
|
: `${BIN_NAME} setup ${mode} --local`;
|
|
107
108
|
throw new PragmaError({
|
|
108
109
|
code: "INVALID_INPUT",
|
|
109
|
-
message: `${mode} is ${level} — it
|
|
110
|
+
message: `${mode} is ${level} — it cannot be configured ${asked}.`,
|
|
110
111
|
recovery: { message: `Run: ${corrected}` },
|
|
111
112
|
});
|
|
112
113
|
}
|
|
@@ -149,12 +150,12 @@ const SUB_CAPABILITY = {
|
|
|
149
150
|
*
|
|
150
151
|
* @param mode - Which entry point (`all` or one target).
|
|
151
152
|
* @param rt - The per-invocation runtime (mutated: `rt.exec` and `rt.planData`).
|
|
152
|
-
* @param scope - The resolved
|
|
153
|
+
* @param scope - The resolved scope selection.
|
|
153
154
|
* @returns The `Task<SetupPlan>` the dispatcher/MCP handler interprets.
|
|
154
155
|
* @note Impure — runs every target's real detection before returning a Task.
|
|
155
156
|
*/
|
|
156
157
|
async function runSetup(mode, rt, scope) {
|
|
157
|
-
await
|
|
158
|
+
await assertScopeIsPossible(mode, scope);
|
|
158
159
|
// Lazy dynamic imports (lazy-React discipline): summon-core's barrel is
|
|
159
160
|
// React-free, and the non-TTY branch picks autoPrompt/mcpPrompt (never mounts
|
|
160
161
|
// Ink), so `setup --yes` loads no React — the guard test enforces this.
|
|
@@ -174,12 +175,76 @@ async function runSetup(mode, rt, scope) {
|
|
|
174
175
|
// — that is what makes the preview honest — so anything it says out loud has
|
|
175
176
|
// to know which of the two it is.
|
|
176
177
|
const previewing = interactionMode === "batch-dry-run";
|
|
178
|
+
// The undo truth channel. A real `--undo` interprets this verb's task ONLY
|
|
179
|
+
// as the undo interpreter's mocked collection walk — every exec exits 0,
|
|
180
|
+
// every prompt answers its default, and the OutcomeSink is never written —
|
|
181
|
+
// so nothing the task body could report describes what the collected
|
|
182
|
+
// reversals later did. The body therefore says NOTHING on the undo path
|
|
183
|
+
// (see the guard in the gen body below); the kernel calls this seam after
|
|
184
|
+
// the reversals actually ran, handing over the interpreter's per-undo
|
|
185
|
+
// outcomes, and `appliedUndo` projects them onto the rows through the SAME
|
|
186
|
+
// sink + `applied` path the forward run reports through. One outcome
|
|
187
|
+
// model, both directions.
|
|
188
|
+
if (!previewing && input.undo) {
|
|
189
|
+
rt.undoReport = (outcomes) => {
|
|
190
|
+
const applied = run.appliedUndo(outcomes);
|
|
191
|
+
const width = Math.max(...applied.rows.map((row) => row.target.length));
|
|
192
|
+
for (const row of applied.rows) {
|
|
193
|
+
if (row.outcome === undefined)
|
|
194
|
+
continue;
|
|
195
|
+
rt.report?.(renderProgressLine(row, width));
|
|
196
|
+
}
|
|
197
|
+
if (planExitFailed(applied)) {
|
|
198
|
+
rt.report?.(renderRecap(applied, "Removed"));
|
|
199
|
+
raiseFailedRows(applied, true);
|
|
200
|
+
}
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
// A CONVERGED machine has no question to ask. Every row is `none` or `skip`,
|
|
204
|
+
// so nothing composes an effect — and the wizard's confirm gate then mounted
|
|
205
|
+
// Ink to render summon-core's "No operations planned." above a "Proceed?"
|
|
206
|
+
// over an empty tally. For a sub-verb, whose prompt list is empty, that
|
|
207
|
+
// contentless gate was the FIRST AND ONLY thing the user ever saw. The
|
|
208
|
+
// explanation existed the whole time (each row's `none` detail, one child row
|
|
209
|
+
// per file/editor marked `unchanged`) and was dropped at the render seam.
|
|
210
|
+
//
|
|
211
|
+
// So: report the plan instead of asking a question with no content. There is
|
|
212
|
+
// no `preview: true` here — the run really did complete. `applied({})` marks
|
|
213
|
+
// each `none` row `{status:"noop", note:"unchanged"}`, `wasApplied` is then
|
|
214
|
+
// true, and `setupFormatters.plain` renders the recap. That also retires a
|
|
215
|
+
// second defect: a non-interactive converged run used to print the misleading
|
|
216
|
+
// "Nothing was applied. Run again with --yes to apply." over an all-`none`
|
|
217
|
+
// plan. A run whose every DETECTION threw is not converged in this sense —
|
|
218
|
+
// its rows are skips that report `failed` — so it falls through to the normal
|
|
219
|
+
// path, which is the one that raises.
|
|
220
|
+
if (!previewing && run.plan.rows.every((row) => !isActionable(row.action))) {
|
|
221
|
+
const converged = run.applied({});
|
|
222
|
+
if (!planExitFailed(converged))
|
|
223
|
+
return pure(converged);
|
|
224
|
+
}
|
|
177
225
|
// Adaptation (b): a non-interactive run without `--yes` previews rather than
|
|
178
226
|
// mutating. It is the same plan the dry-run prints, plus one hint line, at
|
|
179
227
|
// exit 0 — the invocation completed a real read-only unit of work.
|
|
180
228
|
if (interactionMode === "refuse") {
|
|
181
229
|
return pure({ ...run.plan, preview: true });
|
|
182
230
|
}
|
|
231
|
+
// Say what was DETECTED before asking anything about it. The data has been
|
|
232
|
+
// sitting in `run.plan` since before the prompt list was built — `inkPrompt`
|
|
233
|
+
// mounts no React until the first Prompt effect — so this is a rendering gap,
|
|
234
|
+
// not an ordering one, and closing it is nearly free.
|
|
235
|
+
//
|
|
236
|
+
// It MUST be emitted here, before `execute` is driven: the summary and the
|
|
237
|
+
// Ink frame both write to stderr, and only a line written first lands in
|
|
238
|
+
// scrollback ABOVE the frame. `rt.report` is the non-Ink seam — `--quiet`
|
|
239
|
+
// silences it and it is a no-op over MCP — so no React is loaded to print it.
|
|
240
|
+
// A preview says nothing here: the plan table IS its output.
|
|
241
|
+
if (!previewing) {
|
|
242
|
+
const summary = renderDetectionSummary(run.plan, {
|
|
243
|
+
verbose: rt.globalFlags.verbose,
|
|
244
|
+
});
|
|
245
|
+
if (summary !== undefined)
|
|
246
|
+
rt.report?.(summary);
|
|
247
|
+
}
|
|
183
248
|
const { transport, yes, signal, abort } = rt.interaction ?? {
|
|
184
249
|
isTTY: false,
|
|
185
250
|
transport: "cli",
|
|
@@ -195,6 +260,19 @@ async function runSetup(mode, rt, scope) {
|
|
|
195
260
|
signal,
|
|
196
261
|
onCancel: abort,
|
|
197
262
|
});
|
|
263
|
+
// Live progress in the PLAN's units, not the interpreter's: the wizard's
|
|
264
|
+
// default execution view is the per-effect transcript — right for `create`,
|
|
265
|
+
// whose unit of work IS the file, and wrong here, where one unit is one
|
|
266
|
+
// configured target and the transcript renders eighteen symlink rows for
|
|
267
|
+
// the row the plan called `skills link 9 skills → 2 folders`. Each row
|
|
268
|
+
// event carries the SAME sentence `renderProgressLine` prints, so the
|
|
269
|
+
// watcher and the recap reader see one dialect. `--verbose` withholds the
|
|
270
|
+
// listener, which falls the wizard back to the full effect transcript —
|
|
271
|
+
// the same detected-only-unless-verbose rule the detection summary and
|
|
272
|
+
// doctor already follow.
|
|
273
|
+
if (rt.globalFlags.verbose !== true) {
|
|
274
|
+
run.setRowListener((event) => session.reportStep(event));
|
|
275
|
+
}
|
|
198
276
|
rt.exec = {
|
|
199
277
|
promptHandler: session.promptHandler,
|
|
200
278
|
onEffectStart: session.onEffectStart,
|
|
@@ -222,6 +300,16 @@ async function runSetup(mode, rt, scope) {
|
|
|
222
300
|
return gen(function* () {
|
|
223
301
|
const result = yield* $(task);
|
|
224
302
|
const applied = run.applied(result.answers);
|
|
303
|
+
// A real `--undo` only ever drives this body under the undo
|
|
304
|
+
// interpreter's COLLECTION walk, with every effect mocked. `applied` is
|
|
305
|
+
// then a projection of the mocked walk (`removed` rows for reversals
|
|
306
|
+
// that have not run yet), so reporting it here printed green checks
|
|
307
|
+
// before anything happened. Say nothing; the kernel hands the executed
|
|
308
|
+
// reversals' outcomes to `rt.undoReport` afterwards, and `appliedUndo`
|
|
309
|
+
// grades the rows from those. (`--undo --dry-run` stays on the shared
|
|
310
|
+
// preview path below, where the same suppressions already apply.)
|
|
311
|
+
if (input.undo && !previewing)
|
|
312
|
+
return applied;
|
|
225
313
|
// Progress: one line per row on stderr for an unattended run (the Ink
|
|
226
314
|
// session already draws them for the wizard). stdout stays the data stream.
|
|
227
315
|
//
|
|
@@ -242,40 +330,54 @@ async function runSetup(mode, rt, scope) {
|
|
|
242
330
|
// stdout on a failing run.
|
|
243
331
|
if (planExitFailed(applied)) {
|
|
244
332
|
rt.report?.(renderRecap(applied));
|
|
245
|
-
|
|
246
|
-
// ONE failure reports itself. The row already carries the cause it was
|
|
247
|
-
// given ("`bun` is not found on your PATH") and a remedy that runs on
|
|
248
|
-
// this machine; replacing them with a count would throw away the only
|
|
249
|
-
// two sentences that say what is wrong and what to do about it.
|
|
250
|
-
const only = failed.length === 1 ? failed[0] : undefined;
|
|
251
|
-
if (only?.outcome !== undefined) {
|
|
252
|
-
throw new PragmaError({
|
|
253
|
-
code: "UNSUPPORTED",
|
|
254
|
-
message: `${only.target}: ${only.outcome.note ?? "the step did not complete"}`,
|
|
255
|
-
...(only.outcome.remedy === undefined
|
|
256
|
-
? {}
|
|
257
|
-
: { recovery: { message: only.outcome.remedy } }),
|
|
258
|
-
});
|
|
259
|
-
}
|
|
260
|
-
// Several failures: name every one with its own cause, then point at the
|
|
261
|
-
// recap above. A bare list of target names would make the reader re-run
|
|
262
|
-
// each one to find out why it failed.
|
|
263
|
-
const named = failed
|
|
264
|
-
.map((row) => `${row.target} (${row.outcome?.note ?? "no cause recorded"})`)
|
|
265
|
-
.join("; ");
|
|
266
|
-
throw new PragmaError({
|
|
267
|
-
code: "UNSUPPORTED",
|
|
268
|
-
message: `${failed.length} of ${planTally(applied).accountable} targets did not complete: ${named}.`,
|
|
269
|
-
recovery: {
|
|
270
|
-
message: `The other targets are configured. Re-run the ones that did not complete: ${failed
|
|
271
|
-
.map((row) => `\`${BIN_NAME} setup ${row.target}\``)
|
|
272
|
-
.join(", ")}.`,
|
|
273
|
-
},
|
|
274
|
-
});
|
|
333
|
+
raiseFailedRows(applied);
|
|
275
334
|
}
|
|
276
335
|
return applied;
|
|
277
336
|
});
|
|
278
337
|
}
|
|
338
|
+
/**
|
|
339
|
+
* Raise the run's failure from its rows — shared by the forward run's recap
|
|
340
|
+
* and the post-undo truth report, so the two paths name a shortfall in the
|
|
341
|
+
* same words. `undo` only re-words the multi-failure recovery line: the
|
|
342
|
+
* command that retries a removal is `setup <target> --undo`, not the
|
|
343
|
+
* installer.
|
|
344
|
+
*
|
|
345
|
+
* @param applied - The plan with outcomes filled in (at least one `failed`).
|
|
346
|
+
* @param undo - Whether the failed run was a removal.
|
|
347
|
+
* @throws PragmaError naming the failed row(s), always.
|
|
348
|
+
*/
|
|
349
|
+
function raiseFailedRows(applied, undo = false) {
|
|
350
|
+
const failed = applied.rows.filter((row) => row.outcome?.status === "failed");
|
|
351
|
+
// ONE failure reports itself. The row already carries the cause it was
|
|
352
|
+
// given ("`bun` is not found on your PATH") and a remedy that runs on
|
|
353
|
+
// this machine; replacing them with a count would throw away the only
|
|
354
|
+
// two sentences that say what is wrong and what to do about it.
|
|
355
|
+
const only = failed.length === 1 ? failed[0] : undefined;
|
|
356
|
+
if (only?.outcome !== undefined) {
|
|
357
|
+
throw new PragmaError({
|
|
358
|
+
code: "UNSUPPORTED",
|
|
359
|
+
message: `${only.target}: ${only.outcome.note ?? "the step did not complete"}`,
|
|
360
|
+
...(only.outcome.remedy === undefined
|
|
361
|
+
? {}
|
|
362
|
+
: { recovery: { message: only.outcome.remedy } }),
|
|
363
|
+
});
|
|
364
|
+
}
|
|
365
|
+
// Several failures: name every one with its own cause, then point at the
|
|
366
|
+
// recap above. A bare list of target names would make the reader re-run
|
|
367
|
+
// each one to find out why it failed.
|
|
368
|
+
const named = failed
|
|
369
|
+
.map((row) => `${row.target} (${row.outcome?.note ?? "no cause recorded"})`)
|
|
370
|
+
.join("; ");
|
|
371
|
+
throw new PragmaError({
|
|
372
|
+
code: "UNSUPPORTED",
|
|
373
|
+
message: `${failed.length} of ${planTally(applied).accountable} targets did not complete: ${named}.`,
|
|
374
|
+
recovery: {
|
|
375
|
+
message: `The other targets are ${undo ? "removed" : "configured"}. Re-run the ones that did not complete: ${failed
|
|
376
|
+
.map((row) => `\`${BIN_NAME} setup ${row.target}${undo ? " --undo" : ""}\``)
|
|
377
|
+
.join(", ")}.`,
|
|
378
|
+
},
|
|
379
|
+
});
|
|
380
|
+
}
|
|
279
381
|
/** Build a setup verb bound to its {@link SetupMode}. */
|
|
280
382
|
function setupVerb(path, summary, mode, capability, extras = {}) {
|
|
281
383
|
return {
|
|
@@ -294,29 +396,29 @@ function setupVerb(path, summary, mode, capability, extras = {}) {
|
|
|
294
396
|
run: (params, rt) => runSetup(mode, rt, resolveScope(params)),
|
|
295
397
|
};
|
|
296
398
|
}
|
|
297
|
-
const setupAllVerb = setupVerb(["setup"], "
|
|
298
|
-
doc: "
|
|
399
|
+
const setupAllVerb = setupVerb(["setup"], "Set up your config file, TAB completion, the editor extension, MCP, and skills.", "all", SELF_CAPABILITY, {
|
|
400
|
+
doc: "Shows what each target needs, then applies the ones you keep. Everything is configured in your home directory by default; the scope option moves the run to this project alone, or covers both. Without an attended terminal the plan is printed and nothing is written unless the run is explicitly confirmed.",
|
|
299
401
|
examples: [
|
|
300
402
|
{ cmd: `${BIN_NAME} setup` },
|
|
301
403
|
{
|
|
302
404
|
cmd: `${BIN_NAME} setup --dry-run`,
|
|
303
|
-
note: "
|
|
405
|
+
note: "show the plan, write nothing",
|
|
304
406
|
},
|
|
305
407
|
{
|
|
306
408
|
cmd: `${BIN_NAME} setup --local`,
|
|
307
|
-
note: "configure
|
|
409
|
+
note: "configure this project instead of your home directory",
|
|
308
410
|
},
|
|
309
411
|
{
|
|
310
412
|
cmd: `${BIN_NAME} setup mcp`,
|
|
311
|
-
note: "
|
|
413
|
+
note: "only register the MCP server",
|
|
312
414
|
},
|
|
313
415
|
],
|
|
314
416
|
});
|
|
315
|
-
const configVerb = setupVerb(["setup", "config"], "Create
|
|
316
|
-
const mcpVerb = setupVerb(["setup", "mcp"], `Register the ${BIN_NAME} MCP server
|
|
317
|
-
const completionsVerb = setupVerb(["setup", "completions"], "Install
|
|
318
|
-
const skillsVerb = setupVerb(["setup", "skills"], "
|
|
319
|
-
const lspVerb = setupVerb(["setup", "lsp"], "
|
|
417
|
+
const configVerb = setupVerb(["setup", "config"], "Create your global config file, filled in with the defaults.", "config", SUB_CAPABILITY);
|
|
418
|
+
const mcpVerb = setupVerb(["setup", "mcp"], `Register the ${BIN_NAME} MCP server with the AI harnesses on this machine.`, "mcp", SUB_CAPABILITY);
|
|
419
|
+
const completionsVerb = setupVerb(["setup", "completions"], "Install TAB completion for the shell you are running.", "completions", SUB_CAPABILITY);
|
|
420
|
+
const skillsVerb = setupVerb(["setup", "skills"], "Link the skills you have installed into every AI harness that reads them.", "skills", SUB_CAPABILITY);
|
|
421
|
+
const lspVerb = setupVerb(["setup", "lsp"], "Install the Terrazzo design-token extension into your VS Code-family editors.", "lsp", SUB_CAPABILITY);
|
|
320
422
|
/** The `setup` capability module (run-all self-verb + five CLI-only sub-verbs). */
|
|
321
423
|
export const setupModule = {
|
|
322
424
|
name: "setup",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.verb.js","sourceRoot":"","sources":["../../../../src/capabilities/setup/setup.verb.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAGH,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAa,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAMrD,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,EACL,cAAc,EACd,SAAS,EAET,UAAU,GACX,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGlE;;;;;;;;GAQG;AACH,MAAM,YAAY,GAAyB;IACzC;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,OAAO;QACb,GAAG,EAAE,4EAA4E;QACjF,MAAM,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC;QACrC,OAAO,EAAE,QAAQ;KAClB;IACD;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,QAAQ;QACd,GAAG,EAAE,8DAA8D;KACpE;IACD;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,OAAO;QACb,GAAG,EAAE,iEAAiE;KACvE;CACF,CAAC;AAEF;;;;;;GAMG;AACH,SAAS,YAAY,CAAC,MAA+B;IACnD,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI;QAAE,OAAO,QAAQ,CAAC;IAC5C,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AACpE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,KAAK,UAAU,oBAAoB,CACjC,IAAe,EACf,KAAqB;IAErB,IAAI,IAAI,KAAK,KAAK,IAAI,KAAK,KAAK,MAAM;QAAE,OAAO;IAC/C,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAkB,CAAC;QAAE,OAAO;IAC9E,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAc,CAAC;IAC1C,MAAM,KAAK,GAAG,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC;IACjE,MAAM,SAAS,GACb,IAAI,KAAK,QAAQ;QACf,CAAC,CAAC,GAAG,QAAQ,UAAU,IAAI,EAAE;QAC7B,CAAC,CAAC,GAAG,QAAQ,UAAU,IAAI,UAAU,CAAC;IAC1C,MAAM,IAAI,WAAW,CAAC;QACpB,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,GAAG,IAAI,OAAO,KAAK,gBAAgB,KAAK,QAAQ;QACzD,QAAQ,EAAE,EAAE,OAAO,EAAE,QAAQ,SAAS,EAAE,EAAE;KAC3C,CAAC,CAAC;AACL,CAAC;AAED,oEAAoE;AACpE,MAAM,eAAe,GAAG;IACtB,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE,IAAI;IACb,WAAW,EAAE,IAAI;IACjB,WAAW,EAAE,KAAK;IAClB,GAAG,EAAE;QACH,MAAM,EAAE,IAAa;QACrB,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,KAAK;SACrB;KACF;CACF,CAAC;AAEF,yEAAyE;AACzE,MAAM,cAAc,GAAG;IACrB,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE,IAAI;IACb,WAAW,EAAE,IAAI;IACjB,WAAW,EAAE,KAAK;IAClB,GAAG,EAAE;QACH,MAAM,EAAE,KAAc;QACtB,MAAM,EAAE,gCAAgC;KACzC;CACF,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,KAAK,UAAU,QAAQ,CACrB,IAAe,EACf,EAAiB,EACjB,KAAqB;IAErB,MAAM,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAExC,wEAAwE;IACxE,8EAA8E;IAC9E,wEAAwE;IACxE,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAClD,MAAM,CAAC,wBAAwB,CAAC;QAChC,MAAM,CAAC,mCAAmC,CAAC;QAC3C,MAAM,CAAC,gCAAgC,CAAC;KACzC,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;IACjC,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACjE,MAAM,eAAe,GAAG,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAE9E,4EAA4E;IAC5E,0EAA0E;IAC1E,+CAA+C;IAC/C,EAAE,CAAC,QAAQ,GAAG,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAE7C,6EAA6E;IAC7E,6EAA6E;IAC7E,kCAAkC;IAClC,MAAM,UAAU,GAAG,eAAe,KAAK,eAAe,CAAC;IAEvD,6EAA6E;IAC7E,2EAA2E;IAC3E,mEAAmE;IACnE,IAAI,eAAe,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,IAAI,CAAY,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,WAAW,IAAI;QAC1D,KAAK,EAAE,KAAK;QACZ,SAAS,EAAE,KAAc;QACzB,GAAG,EAAE,IAAI;KACV,CAAC;IAEF,4EAA4E;IAC5E,0EAA0E;IAC1E,8CAA8C;IAC9C,IAAI,IAA2B,CAAC;IAChC,MAAM,MAAM,GAAG,eAAe,KAAK,QAAQ,CAAC;IAC5C,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE;YAC9C,MAAM;YACN,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;QACH,EAAE,CAAC,IAAI,GAAG;YACR,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM;SACP,CAAC;QACF,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE;YACnC,MAAM,EAAE,OAAO,CAAC,aAAa;YAC7B,MAAM,EAAE,EAAE;YACV,MAAM;SACP,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,mEAAmE;QACnE,MAAM,MAAM,GACV,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACrE,EAAE,CAAC,IAAI,GAAG;YACR,aAAa,EAAE,MAAM;YACrB,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC;YAChE,MAAM;SACP,CAAC;QACF,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,GAAG,CAAC,QAAQ,CAAC;QAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAE5C,sEAAsE;QACtE,4EAA4E;QAC5E,EAAE;QACF,2EAA2E;QAC3E,yEAAyE;QACzE,kEAAkE;QAClE,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC,EAAE,CAAC;YACpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YACxE,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBAC/B,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS;oBAAE,SAAS;gBACxC,EAAE,CAAC,MAAM,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;QAED,0EAA0E;QAC1E,4EAA4E;QAC5E,4EAA4E;QAC5E,2BAA2B;QAC3B,IAAI,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;YAClC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAChC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,QAAQ,CAC1C,CAAC;YAEF,uEAAuE;YACvE,sEAAsE;YACtE,sEAAsE;YACtE,gEAAgE;YAChE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACzD,IAAI,IAAI,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,IAAI,WAAW,CAAC;oBACpB,IAAI,EAAE,aAAa;oBACnB,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,2BAA2B,EAAE;oBAC9E,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS;wBACnC,CAAC,CAAC,EAAE;wBACJ,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;iBACpD,CAAC,CAAC;YACL,CAAC;YAED,yEAAyE;YACzE,wEAAwE;YACxE,sCAAsC;YACtC,MAAM,KAAK,GAAG,MAAM;iBACjB,GAAG,CACF,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,IAAI,IAAI,mBAAmB,GAAG,CAChE;iBACA,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,MAAM,IAAI,WAAW,CAAC;gBACpB,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,OAAO,SAAS,CAAC,OAAO,CAAC,CAAC,WAAW,8BAA8B,KAAK,GAAG;gBACpG,QAAQ,EAAE;oBACR,OAAO,EAAE,4EAA4E,MAAM;yBACxF,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,QAAQ,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC;yBACnD,IAAI,CAAC,IAAI,CAAC,GAAG;iBACjB;aACF,CAAC,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,yDAAyD;AACzD,SAAS,SAAS,CAChB,IAA0D,EAC1D,OAAe,EACf,IAAe,EACf,UAA0D,EAC1D,SAAgE,EAAE;IAElE,OAAO;QACL,IAAI;QACJ,OAAO;QACP,MAAM,EAAE,YAAY;QACpB,MAAM,EAAE;YACN,UAAU,EAAE,eAAe;YAC3B,yEAAyE;YACzE,sEAAsE;YACtE,iBAAiB;YACjB,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,YAAY,CAAC,QAAqB,CAAC;SAC9D;QACD,UAAU;QACV,GAAG,MAAM;QACT,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAClB,QAAQ,CAAC,IAAI,EAAE,EAAE,EAAE,YAAY,CAAC,MAAM,CAAC,CAA+B;KACzE,CAAC;AACJ,CAAC;AAED,MAAM,YAAY,GAAG,SAAS,CAC5B,CAAC,OAAO,CAAC,EACT,qEAAqE,EACrE,KAAK,EACL,eAAe,EACf;IACE,GAAG,EAAE,sQAAsQ;IAC3Q,QAAQ,EAAE;QACR,EAAE,GAAG,EAAE,GAAG,QAAQ,QAAQ,EAAE;QAC5B;YACE,GAAG,EAAE,GAAG,QAAQ,kBAAkB;YAClC,IAAI,EAAE,+BAA+B;SACtC;QACD;YACE,GAAG,EAAE,GAAG,QAAQ,gBAAgB;YAChC,IAAI,EAAE,oCAAoC;SAC3C;QACD;YACE,GAAG,EAAE,GAAG,QAAQ,YAAY;YAC5B,IAAI,EAAE,kCAAkC;SACzC;KACF;CACF,CACF,CAAC;AAEF,MAAM,UAAU,GAAG,SAAS,CAC1B,CAAC,OAAO,EAAE,QAAQ,CAAC,EACnB,kDAAkD,EAClD,QAAQ,EACR,cAAc,CACf,CAAC;AAEF,MAAM,OAAO,GAAG,SAAS,CACvB,CAAC,OAAO,EAAE,KAAK,CAAC,EAChB,gBAAgB,QAAQ,uCAAuC,EAC/D,KAAK,EACL,cAAc,CACf,CAAC;AAEF,MAAM,eAAe,GAAG,SAAS,CAC/B,CAAC,OAAO,EAAE,aAAa,CAAC,EACxB,qDAAqD,EACrD,aAAa,EACb,cAAc,CACf,CAAC;AAEF,MAAM,UAAU,GAAG,SAAS,CAC1B,CAAC,OAAO,EAAE,QAAQ,CAAC,EACnB,iDAAiD,EACjD,QAAQ,EACR,cAAc,CACf,CAAC;AAEF,MAAM,OAAO,GAAG,SAAS,CACvB,CAAC,OAAO,EAAE,KAAK,CAAC,EAChB,yDAAyD,EACzD,KAAK,EACL,cAAc,CACf,CAAC;AAEF,mFAAmF;AACnF,MAAM,CAAC,MAAM,WAAW,GAAqB;IAC3C,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACL,MAAM,CAAC,YAAY,CAAC;QACpB,MAAM,CAAC,UAAU,CAAC;QAClB,MAAM,CAAC,eAAe,CAAC;QACvB,MAAM,CAAC,OAAO,CAAC;QACf,MAAM,CAAC,OAAO,CAAC;QACf,MAAM,CAAC,UAAU,CAAC;KACnB;CACF,CAAC;AAEF,6EAA6E;AAC7E,OAAO,EAAE,UAAU,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"setup.verb.js","sourceRoot":"","sources":["../../../../src/capabilities/setup/setup.verb.ts"],"names":[],"mappings":"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"}
|