@angelmsger/fx 0.13.0 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +27 -0
- package/dist/application/init/standalone.js +5 -18
- package/dist/application/init/standalone.js.map +1 -1
- package/dist/application/release/repo.js +4 -2
- package/dist/application/release/repo.js.map +1 -1
- package/dist/application/self/update.js +84 -27
- package/dist/application/self/update.js.map +1 -1
- package/dist/application/skill/copies.js +19 -2
- package/dist/application/skill/copies.js.map +1 -1
- package/dist/application/skill/standalone-targets.js +8 -4
- package/dist/application/skill/standalone-targets.js.map +1 -1
- package/dist/application/skill/standalone.js +24 -2
- package/dist/application/skill/standalone.js.map +1 -1
- package/dist/application/skill/tool-skills.js +26 -0
- package/dist/application/skill/tool-skills.js.map +1 -1
- package/dist/application/tool/install.js +10 -22
- package/dist/application/tool/install.js.map +1 -1
- package/dist/application/tool/with-skills.js +68 -0
- package/dist/application/tool/with-skills.js.map +1 -0
- package/dist/application/update/notices.js +1 -1
- package/dist/application/update/notices.js.map +1 -1
- package/dist/cli/commands/index.js +2 -0
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/skill/update.js +17 -0
- package/dist/cli/commands/skill/update.js.map +1 -0
- package/dist/cli/preparation-view.js +2 -0
- package/dist/cli/preparation-view.js.map +1 -1
- package/dist/cli/skill-command.js +1 -1
- package/dist/cli/skill-command.js.map +1 -1
- package/dist/cli/tool-command.js +10 -5
- package/dist/cli/tool-command.js.map +1 -1
- package/dist/composition/tool-install.js +9 -0
- package/dist/composition/tool-install.js.map +1 -1
- package/dist/composition/update.js +2 -0
- package/dist/composition/update.js.map +1 -1
- package/dist/domain/release/version.js +5 -3
- package/dist/domain/release/version.js.map +1 -1
- package/package.json +1 -1
- package/skills/fx-workspace/SKILL.md +1 -1
- package/skills/fx-workspace/references/commands.md +8 -3
- package/skills/fx-workspace/references/workspace-tasks.md +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,33 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## 0.14.0 (2026-10-28)
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- Refresh Skills when tools change. `fx tool install` and `fx tool update` have each
|
|
10
|
+
tool they installed or updated install its Skill again for your coding agents, so
|
|
11
|
+
the agents read the instructions of the version now on PATH; each row gains
|
|
12
|
+
`skill`. `fx self update` ends by having the newly installed fx refresh the copies
|
|
13
|
+
of its own Skill that are older than it, reported as `skill_refresh`, and the new
|
|
14
|
+
`fx skill update` does that on its own: it refreshes only recognized copies older
|
|
15
|
+
than the running fx, in every agent's directory, and installs none. Keeping
|
|
16
|
+
everything current is `fx self update --yes` and `fx tool update --all`.
|
|
17
|
+
|
|
18
|
+
### Changed
|
|
19
|
+
|
|
20
|
+
- Update only installed tools with `fx tool update --all`. Outside a workspace it
|
|
21
|
+
used to take the whole catalog and install every tool not yet there; inside one it
|
|
22
|
+
installed the workspace's missing tools. It now leaves those to
|
|
23
|
+
`fx tool install --all`, and inside a workspace a `TOOLS_NOT_INSTALLED` notice names
|
|
24
|
+
them. The `FX_OUTDATED` notice no longer suggests `fx skill install`.
|
|
25
|
+
|
|
26
|
+
### Fixed
|
|
27
|
+
|
|
28
|
+
- Prefer the root `VERSION` file over dependency metadata in `fx release check`,
|
|
29
|
+
so services with a separate release version no longer show a missing or package-only
|
|
30
|
+
version. Dependency checks continue to inspect the dependency file.
|
|
31
|
+
|
|
5
32
|
## 0.13.0 (2026-10-27)
|
|
6
33
|
|
|
7
34
|
### Added
|
|
@@ -10,7 +10,7 @@ import { CHECK_TIMEOUT_MS, commandVerdict } from '../login/verify.js';
|
|
|
10
10
|
import { assertWritable } from '../safety/posture.js';
|
|
11
11
|
import { applyCopies, planCopies } from '../skill/fx-copies.js';
|
|
12
12
|
import { skillTargets } from '../skill/targets.js';
|
|
13
|
-
import {
|
|
13
|
+
import { planToolSkills, runTools, toolSkillOutcome, } from '../skill/tool-skills.js';
|
|
14
14
|
import { skillChecks } from '../sync/checks.js';
|
|
15
15
|
import { ToolCheck } from '../tool/check.js';
|
|
16
16
|
import { selectTools } from '../tool/select.js';
|
|
@@ -133,16 +133,13 @@ export class StandaloneInit {
|
|
|
133
133
|
// Skill of a tool it has yet to install.
|
|
134
134
|
async skills(selected, onPath, installs, input) {
|
|
135
135
|
const failed = new Set(installs.filter((item) => item.status === 'failed').map((i) => i.name));
|
|
136
|
-
const toolchain = selected
|
|
137
|
-
.filter((tool) => (input.dryRun ? !failed.has(tool.name) : onPath.includes(tool)))
|
|
138
|
-
.map((tool) => ({ ...tool, installOnInit: true }));
|
|
139
136
|
const status = input.dryRun ? 'planned' : 'not_started';
|
|
140
137
|
const fx = (await planCopies(this.deps, this.deps.skills, undefined)).map((item) => ({ ...item, status }));
|
|
141
|
-
const tools =
|
|
142
|
-
|
|
138
|
+
const tools = await planToolSkills(this.deps, this.deps.skills, {
|
|
139
|
+
tools: selected.filter((tool) => input.dryRun ? !failed.has(tool.name) : onPath.includes(tool)),
|
|
143
140
|
dryRun: input.dryRun,
|
|
144
141
|
posture: input.posture,
|
|
145
|
-
})
|
|
142
|
+
});
|
|
146
143
|
if (input.dryRun)
|
|
147
144
|
return { fx, tools };
|
|
148
145
|
try {
|
|
@@ -248,13 +245,12 @@ function status(statuses, tool) {
|
|
|
248
245
|
}
|
|
249
246
|
function row(tool, current, installs, skills, signIn) {
|
|
250
247
|
const installed = installs.find((item) => item.name === tool.name);
|
|
251
|
-
const own = skills.filter((item) => item.tool === tool.name && item.vector !== null);
|
|
252
248
|
return {
|
|
253
249
|
name: tool.name,
|
|
254
250
|
state: current.state,
|
|
255
251
|
installed: current.installed,
|
|
256
252
|
install: installOutcome(installed),
|
|
257
|
-
skill:
|
|
253
|
+
skill: toolSkillOutcome(skills, tool.name),
|
|
258
254
|
sign_in: signIn?.state ?? 'unknown',
|
|
259
255
|
setup: tool.auth?.login === undefined ? null : [tool.binary, ...tool.auth.login],
|
|
260
256
|
};
|
|
@@ -268,15 +264,6 @@ function installOutcome(installed) {
|
|
|
268
264
|
return 'failed';
|
|
269
265
|
return installed.ran ? 'installed' : 'manual';
|
|
270
266
|
}
|
|
271
|
-
function skillOutcome(own, installed) {
|
|
272
|
-
if (own.length === 0)
|
|
273
|
-
return 'none';
|
|
274
|
-
if (own.some((item) => item.status === 'failed' || item.failure !== undefined))
|
|
275
|
-
return 'failed';
|
|
276
|
-
if (own.every((item) => item.status === 'planned') || installed?.status === 'planned')
|
|
277
|
-
return 'planned';
|
|
278
|
-
return 'installed';
|
|
279
|
-
}
|
|
280
267
|
// A tool that is not on PATH has nothing to sign in to yet; its installation is the blocker.
|
|
281
268
|
function toolChecks(item, context) {
|
|
282
269
|
const { signIn, cwd } = context;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standalone.js","sourceRoot":"","sources":["../../../src/application/init/standalone.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"standalone.js","sourceRoot":"","sources":["../../../src/application/init/standalone.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
import { asDevkitError } from '../../domain/errors.js';
|
|
7
7
|
import { DEPENDENCY_FILES } from '../../domain/release/deps.js';
|
|
8
8
|
import { attributed, peopleCommits, unmergedOf } from '../../domain/release/merge.js';
|
|
9
|
-
import { declaredVersion, GRADLE_PROPERTIES, VERSION_READERS, } from '../../domain/release/version.js';
|
|
9
|
+
import { declaredVersion, GRADLE_PROPERTIES, ROOT_VERSION, VERSION_READERS, } from '../../domain/release/version.js';
|
|
10
10
|
export async function describeRepo(ctx, outcome) {
|
|
11
11
|
const blank = {
|
|
12
12
|
name: ctx.repo.name,
|
|
@@ -82,8 +82,10 @@ async function headOf(asked, facts, branch, side, file) {
|
|
|
82
82
|
version: version ?? null,
|
|
83
83
|
};
|
|
84
84
|
}
|
|
85
|
-
//
|
|
85
|
+
// Prefer the explicit root VERSION file, then the dependency file the deps check reads.
|
|
86
86
|
async function versionFileAt(facts, sha) {
|
|
87
|
+
if ((await facts.host.readFile(facts.ref, ROOT_VERSION, sha)) !== undefined)
|
|
88
|
+
return ROOT_VERSION;
|
|
87
89
|
for (const { file } of DEPENDENCY_FILES) {
|
|
88
90
|
const text = await facts.host.readFile(facts.ref, file, sha);
|
|
89
91
|
if (text !== undefined)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repo.js","sourceRoot":"","sources":["../../../src/application/release/repo.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"repo.js","sourceRoot":"","sources":["../../../src/application/release/repo.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,qFAAqF;AACrF,qFAAqF;AACrF,uFAAuF;AACvF,mEAAmE;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAOtF,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,eAAe,GAChB,MAAM,iCAAiC,CAAC;AAKzC,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAiB,EAAE,OAAqB;IACzE,MAAM,KAAK,GAAgB;QACzB,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI;QACnB,MAAM,EAAE,IAAI;QACZ,MAAM,EAAE,IAAI;QACZ,YAAY,EAAE,IAAI;QAClB,QAAQ,EAAE,IAAI;QACd,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI;QAC7B,UAAU,EAAE,EAAE;KACf,CAAC;IACF,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IAC3C,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAC1B,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACjC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACvC,MAAM,KAAK,GAAG,IAAI,SAAS,EAAE,CAAC;IAC9B,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,cAAc,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACvF,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC1D,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC;QAC5C,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC;QAC1E,MAAM,KAAK,SAAS;YAClB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;KACtF,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,UAAU,EAAE,OAAO,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC;IACxF,OAAO;QACL,GAAG,KAAK;QACR,MAAM,EAAE,UAAU;QAClB,MAAM,EAAE,UAAU;QAClB,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;QAC/C,QAAQ,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC;QAC5D,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE;KAC/B,CAAC;AACJ,CAAC;AAED,yFAAyF;AACzF,MAAM,MAAM,GAAG;IACb,cAAc;IACd,eAAe;IACf,gBAAgB;IAChB,eAAe;IACf,gBAAgB;IAChB,UAAU;CACX,CAAC;AAEF,8EAA8E;AAC9E,MAAM,SAAS;IACI,MAAM,GAAiB,EAAE,CAAC;IAE3C,KAAK,CAAC,KAAK,CAAI,KAAa,EAAE,GAAqB;QACjD,IAAI,CAAC;YACH,OAAO,MAAM,GAAG,EAAE,CAAC;QACrB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAChE,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,UAAU;QACR,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5F,CAAC;CACF;AAED,KAAK,UAAU,MAAM,CACnB,KAAgB,EAChB,KAAgB,EAChB,MAAc,EACd,IAAyB,EACzB,IAAwB;IAExB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC1C,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7E,IAAI,KAAK,SAAS;YAChB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,UAAU,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;KAC7E,CAAC,CAAC;IACH,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,IAAI;QACnB,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,IAAI,EAAE,MAAM,EAAE,IAAI,IAAI,IAAI;QAC1B,OAAO,EAAE,MAAM,EAAE,OAAO,IAAI,IAAI;QAChC,OAAO,EAAE,OAAO,IAAI,IAAI;KACzB,CAAC;AACJ,CAAC;AAED,wFAAwF;AACxF,KAAK,UAAU,aAAa,CAAC,KAAgB,EAAE,GAAW;IACxD,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC,KAAK,SAAS;QAAE,OAAO,YAAY,CAAC;IACjG,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,gBAAgB,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QAC7D,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,eAAe,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;IACxF,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,KAAgB,EAAE,IAAY,EAAE,GAAW;IAClE,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IAC7D,MAAM,GAAG,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACzE,IAAI,GAAG,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QAAE,OAAO,GAAG,CAAC;IACnD,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,iBAAiB,EAAE,GAAG,CAAC,CAAC;IAChF,OAAO,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;AAC/F,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,GAAiB,EACjB,KAAgB,EAChB,IAAY,EACZ,EAAU;IAEV,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;IAClE,OAAO,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;AACxF,CAAC;AAED,SAAS,MAAM,CAAC,IAAY;IAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;AACzC,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
// Update fx through its distribution registry after confirmation and the write gate.
|
|
2
2
|
// Capture installer output so machine-readable results remain valid on stdout. A
|
|
3
|
-
// completed install settles the update-check window on the version it installed
|
|
3
|
+
// completed install settles the update-check window on the version it installed, then
|
|
4
|
+
// has the installed fx refresh the copies of its Skill that are now older than it: only
|
|
5
|
+
// the new installation knows its own Skill and version.
|
|
4
6
|
import { DevkitError } from '../../domain/errors.js';
|
|
5
7
|
import { stderrReason } from '../../domain/toolchain/stderr.js';
|
|
6
8
|
import { assertWritable } from '../safety/posture.js';
|
|
@@ -14,6 +16,44 @@ export class SelfUpdate {
|
|
|
14
16
|
this.deps = deps;
|
|
15
17
|
}
|
|
16
18
|
async execute(input) {
|
|
19
|
+
const vector = this.plan(input);
|
|
20
|
+
const unrun = (reason) => ({
|
|
21
|
+
vector,
|
|
22
|
+
ran: false,
|
|
23
|
+
code: null,
|
|
24
|
+
reason,
|
|
25
|
+
skill_refresh: this.unrefreshed(input.posture, reason),
|
|
26
|
+
});
|
|
27
|
+
if (input.dryRun)
|
|
28
|
+
return unrun('dry run');
|
|
29
|
+
assertWritable(input.posture, 'self update');
|
|
30
|
+
await this.assertInstaller();
|
|
31
|
+
if (!input.yes) {
|
|
32
|
+
const go = await this.deps.prompter.confirm(`Run \`${vector.join(' ')}\`?`, {
|
|
33
|
+
defaultYes: true,
|
|
34
|
+
});
|
|
35
|
+
if (!go)
|
|
36
|
+
return unrun('declined');
|
|
37
|
+
}
|
|
38
|
+
const result = await this.deps.process.run(vector, { interactive: false });
|
|
39
|
+
if (result.code !== 0)
|
|
40
|
+
return {
|
|
41
|
+
vector,
|
|
42
|
+
ran: true,
|
|
43
|
+
code: result.code,
|
|
44
|
+
reason: stderrReason(result.stderr, result.code),
|
|
45
|
+
skill_refresh: this.unrefreshed(input.posture, 'fx was not updated'),
|
|
46
|
+
};
|
|
47
|
+
await this.settleCheck(input);
|
|
48
|
+
return {
|
|
49
|
+
vector,
|
|
50
|
+
ran: true,
|
|
51
|
+
code: 0,
|
|
52
|
+
reason: null,
|
|
53
|
+
skill_refresh: await this.refreshSkill(input.posture),
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
plan(input) {
|
|
17
57
|
if (input.registry === null) {
|
|
18
58
|
throw new DevkitError('config', 'REGISTRY_UNKNOWN', 'No valid update registry is configured', {
|
|
19
59
|
hint: 'Check npm registry configuration and any FX_REGISTRY override; follow the registry setup handoff.',
|
|
@@ -30,37 +70,44 @@ export class SelfUpdate {
|
|
|
30
70
|
throw new DevkitError('config', 'REGISTRY_UNKNOWN', 'The installer cannot plan this update', {
|
|
31
71
|
nextSteps: ['fx self info', `Update ${input.packageName} with your package manager.`],
|
|
32
72
|
});
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
if (
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
73
|
+
return vector;
|
|
74
|
+
}
|
|
75
|
+
async assertInstaller() {
|
|
76
|
+
if (await this.deps.installer.available())
|
|
77
|
+
return;
|
|
78
|
+
throw new DevkitError('config', 'TOOL_MISSING', 'The self-update installer is unavailable', {
|
|
79
|
+
nextSteps: ['Install npm or add it to PATH, then retry.'],
|
|
80
|
+
handoff: {
|
|
81
|
+
summary: 'The package installer is missing.',
|
|
82
|
+
command: 'fx self info --format json',
|
|
83
|
+
userSteps: [
|
|
84
|
+
{ id: 'self-installer', kind: 'manual', title: 'Install npm or add it to PATH.' },
|
|
85
|
+
],
|
|
86
|
+
},
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
// The refresh is an invocation of its own and resolves its posture again, so the explicit
|
|
90
|
+
// --allow-writes that let this one write goes with it; nothing weaker does.
|
|
91
|
+
refreshVector(posture) {
|
|
92
|
+
const refresh = this.deps.skillRefresh;
|
|
93
|
+
return posture.source === 'flag' ? [...refresh, '--allow-writes'] : refresh;
|
|
94
|
+
}
|
|
95
|
+
unrefreshed(posture, reason) {
|
|
96
|
+
const vector = this.refreshVector(posture);
|
|
97
|
+
return { vector, ran: false, code: null, refreshed: null, reason };
|
|
98
|
+
}
|
|
99
|
+
async refreshSkill(posture) {
|
|
100
|
+
const vector = this.refreshVector(posture);
|
|
101
|
+
const result = await this.deps.process.run(vector, {
|
|
102
|
+
diagnostic: { phase: 'fx skill update' },
|
|
103
|
+
});
|
|
104
|
+
return {
|
|
56
105
|
vector,
|
|
57
106
|
ran: true,
|
|
58
107
|
code: result.code,
|
|
108
|
+
refreshed: result.code === 0 ? refreshedCopies(result.stdout) : null,
|
|
59
109
|
reason: result.code === 0 ? null : stderrReason(result.stderr, result.code),
|
|
60
110
|
};
|
|
61
|
-
if (isUpdated(output))
|
|
62
|
-
await this.settleCheck(input);
|
|
63
|
-
return output;
|
|
64
111
|
}
|
|
65
112
|
async settleCheck(input) {
|
|
66
113
|
const { latest } = await this.deps.check.execute(input);
|
|
@@ -68,4 +115,14 @@ export class SelfUpdate {
|
|
|
68
115
|
await this.deps.check.markCurrent(input, latest);
|
|
69
116
|
}
|
|
70
117
|
}
|
|
118
|
+
// `skill update --format json` lists each copy it considered; a refreshed one now says installed.
|
|
119
|
+
function refreshedCopies(stdout) {
|
|
120
|
+
try {
|
|
121
|
+
const { items } = JSON.parse(stdout);
|
|
122
|
+
return Array.isArray(items) ? items.filter((item) => item.status === 'installed').length : null;
|
|
123
|
+
}
|
|
124
|
+
catch {
|
|
125
|
+
return null;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
71
128
|
//# sourceMappingURL=update.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/application/self/update.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,iFAAiF;AACjF,
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/application/self/update.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
// Share locked, recoverable bundled Skill replacement between explicit installation
|
|
1
|
+
// Share locked, recoverable bundled Skill replacement between explicit installation, update
|
|
2
|
+
// and sync.
|
|
2
3
|
import path from 'node:path';
|
|
3
4
|
import { busyError, DevkitError } from '../../domain/errors.js';
|
|
4
5
|
import { withLease } from '../../domain/lease.js';
|
|
5
6
|
import { pathKey } from '../../domain/path.js';
|
|
6
|
-
import { decideCopy } from '../../domain/skills/projection.js';
|
|
7
|
+
import { decideCopy, } from '../../domain/skills/projection.js';
|
|
7
8
|
import { assertWritable } from '../safety/posture.js';
|
|
8
9
|
import { observeCopy } from './observe.js';
|
|
9
10
|
import { skillWriteError } from './write-error.js';
|
|
@@ -59,5 +60,21 @@ export class SkillCopies {
|
|
|
59
60
|
return action;
|
|
60
61
|
});
|
|
61
62
|
}
|
|
63
|
+
// Bring a copy fx recognizes up to this version only if it is older, decided again under
|
|
64
|
+
// the lock: a copy removed, replaced or brought up by someone else since the plan stays as
|
|
65
|
+
// it now is, so update never creates, replaces or downgrades a copy.
|
|
66
|
+
async update(target, input = {}) {
|
|
67
|
+
return withSkillLock(this.deps.fs, this.deps.skills.globalLock, target, async (canonical) => {
|
|
68
|
+
await input.validate?.(canonical);
|
|
69
|
+
const observed = await observeCopy(this.deps.fs, canonical);
|
|
70
|
+
const upgraded = observed.kind === 'ours' && decideCopy(observed, this.deps.version) === 'upgrade';
|
|
71
|
+
if (upgraded) {
|
|
72
|
+
if (input.posture)
|
|
73
|
+
assertWritable(input.posture, 'update companion Skill');
|
|
74
|
+
await this.deps.fs.replaceDir(this.deps.skills.bundledSkillDir, canonical);
|
|
75
|
+
}
|
|
76
|
+
return { observed, upgraded };
|
|
77
|
+
});
|
|
78
|
+
}
|
|
62
79
|
}
|
|
63
80
|
//# sourceMappingURL=copies.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copies.js","sourceRoot":"","sources":["../../../src/application/skill/copies.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"copies.js","sourceRoot":"","sources":["../../../src/application/skill/copies.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { DevkitError } from '../../domain/errors.js';
|
|
|
4
4
|
import { pathKey } from '../../domain/path.js';
|
|
5
5
|
import { canonicalSkillPath } from './copies.js';
|
|
6
6
|
import { FX_SKILL } from './observe.js';
|
|
7
|
-
export async function standaloneTargets(fs, hosts, input,
|
|
7
|
+
export async function standaloneTargets(fs, hosts, input, selection = 'detected') {
|
|
8
8
|
const ids = input.agents?.flatMap((a) => a.split(',').map((id) => id.trim()));
|
|
9
9
|
if (input.dir !== undefined) {
|
|
10
10
|
if (ids?.length || input.project || !input.dir.trim())
|
|
@@ -28,10 +28,10 @@ export async function standaloneTargets(fs, hosts, input, inspect = false) {
|
|
|
28
28
|
}
|
|
29
29
|
else {
|
|
30
30
|
for (const host of hosts)
|
|
31
|
-
if (
|
|
31
|
+
if (selection !== 'detected' || (await host.detect(scope, input.cwd)))
|
|
32
32
|
selected.push(host);
|
|
33
33
|
}
|
|
34
|
-
if (
|
|
34
|
+
if (selection === 'detected' && selected.length === 0)
|
|
35
35
|
throw new DevkitError('usage', 'SKILL_NO_AGENT', 'No coding agent detected', {
|
|
36
36
|
nextSteps: ['fx skill path', 'Pass --agent <id> or --dir <path> to choose a target.'],
|
|
37
37
|
});
|
|
@@ -39,8 +39,12 @@ export async function standaloneTargets(fs, hosts, input, inspect = false) {
|
|
|
39
39
|
agent: host.id,
|
|
40
40
|
path: path.resolve(host.skillsDir(scope, input.cwd), FX_SKILL),
|
|
41
41
|
}));
|
|
42
|
-
if (inspect)
|
|
42
|
+
if (selection === 'inspect')
|
|
43
43
|
return targets.sort((a, b) => a.agent.localeCompare(b.agent));
|
|
44
|
+
return mergeShared(fs, targets);
|
|
45
|
+
}
|
|
46
|
+
// Agents that share one Skill directory share one target, named after all of them.
|
|
47
|
+
async function mergeShared(fs, targets) {
|
|
44
48
|
const byPath = new Map();
|
|
45
49
|
for (const target of targets) {
|
|
46
50
|
const key = pathKey(await canonicalSkillPath(fs, target.path));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standalone-targets.js","sourceRoot":"","sources":["../../../src/application/skill/standalone-targets.ts"],"names":[],"mappings":"AAAA,4FAA4F;AAE5F,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAI/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"standalone-targets.js","sourceRoot":"","sources":["../../../src/application/skill/standalone-targets.ts"],"names":[],"mappings":"AAAA,4FAA4F;AAE5F,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAI/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAmBxC,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,EAAc,EACd,KAA2B,EAC3B,KAA6B,EAC7B,YAA6B,UAAU;IAEvC,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9E,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAC5B,IAAI,GAAG,EAAE,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE;YACnD,MAAM,IAAI,WAAW,CACnB,OAAO,EACP,aAAa,EACb,0DAA0D,EAC1D;gBACE,SAAS,EAAE,CAAC,yBAAyB,CAAC;aACvC,CACF,CAAC;QACJ,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;IACnD,MAAM,QAAQ,GAAgB,EAAE,CAAC;IACjC,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACrB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YAC5C,IAAI,CAAC,IAAI;gBACP,MAAM,IAAI,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,GAAG,EAAE;oBACrE,IAAI,EAAE,qBAAqB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBAC9D,SAAS,EAAE,CAAC,eAAe,CAAC;iBAC7B,CAAC,CAAC;YACL,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,IAAI,IAAI,KAAK;YACtB,IAAI,SAAS,KAAK,UAAU,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;gBAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/F,CAAC;IACD,IAAI,SAAS,KAAK,UAAU,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QACnD,MAAM,IAAI,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE;YAC3E,SAAS,EAAE,CAAC,eAAe,EAAE,uDAAuD,CAAC;SACtF,CAAC,CAAC;IACL,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACtC,KAAK,EAAE,IAAI,CAAC,EAAE;QACd,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC;KAC/D,CAAC,CAAC,CAAC;IACJ,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3F,OAAO,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;AAClC,CAAC;AAED,mFAAmF;AACnF,KAAK,UAAU,WAAW,CACxB,EAAc,EACd,OAAqE;IAErE,MAAM,MAAM,GAAG,IAAI,GAAG,EAA4B,CAAC;IACnD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,kBAAkB,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/D,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjC,MAAM,CAAC,GAAG,CACR,GAAG,EACH,QAAQ;YACN,CAAC,CAAC;gBACE,GAAG,QAAQ;gBACX,KAAK,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;aACtF;YACH,CAAC,CAAC,MAAM,CACX,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;AAC9B,CAAC"}
|
|
@@ -21,7 +21,7 @@ export class StandaloneSkill {
|
|
|
21
21
|
this.deps = deps;
|
|
22
22
|
}
|
|
23
23
|
async paths(input) {
|
|
24
|
-
const targets = await standaloneTargets(this.deps.fs, this.deps.skills.hosts, input,
|
|
24
|
+
const targets = await standaloneTargets(this.deps.fs, this.deps.skills.hosts, input, 'inspect');
|
|
25
25
|
return Promise.all(targets.map((target) => this.inspect(target)));
|
|
26
26
|
}
|
|
27
27
|
async status(input) {
|
|
@@ -40,7 +40,7 @@ export class StandaloneSkill {
|
|
|
40
40
|
return text;
|
|
41
41
|
}
|
|
42
42
|
async write(operation, input) {
|
|
43
|
-
const targets = await standaloneTargets(this.deps.fs, this.deps.skills.hosts, input);
|
|
43
|
+
const targets = await standaloneTargets(this.deps.fs, this.deps.skills.hosts, input, operation === 'update' ? 'every' : 'detected');
|
|
44
44
|
const rows = [];
|
|
45
45
|
for (const target of targets) {
|
|
46
46
|
await this.validate(target.path);
|
|
@@ -59,6 +59,10 @@ export class StandaloneSkill {
|
|
|
59
59
|
if (operation === 'uninstall' && !(await this.confirmRemoval(rows, input.yes)))
|
|
60
60
|
return rows.map((r) => ({ ...r, status: 'skipped' }));
|
|
61
61
|
for (const [index, row] of rows.entries()) {
|
|
62
|
+
if (operation === 'update' && row.action === 'skip') {
|
|
63
|
+
rows[index] = { ...row, status: 'skipped' };
|
|
64
|
+
continue;
|
|
65
|
+
}
|
|
62
66
|
try {
|
|
63
67
|
rows[index] = await this.apply(operation, row, input.posture);
|
|
64
68
|
}
|
|
@@ -78,6 +82,8 @@ export class StandaloneSkill {
|
|
|
78
82
|
return rows;
|
|
79
83
|
}
|
|
80
84
|
async apply(operation, row, posture) {
|
|
85
|
+
if (operation === 'update')
|
|
86
|
+
return this.refreshOlder(row, posture);
|
|
81
87
|
if (operation === 'install') {
|
|
82
88
|
const action = await new SkillCopies(this.deps).install(row.path, {
|
|
83
89
|
posture,
|
|
@@ -104,6 +110,19 @@ export class StandaloneSkill {
|
|
|
104
110
|
return { ...row, status: 'removed', version: current.version };
|
|
105
111
|
});
|
|
106
112
|
}
|
|
113
|
+
async refreshOlder(row, posture) {
|
|
114
|
+
const { observed, upgraded } = await new SkillCopies(this.deps).update(row.path, {
|
|
115
|
+
posture,
|
|
116
|
+
validate: (target) => this.validate(target),
|
|
117
|
+
});
|
|
118
|
+
if (upgraded)
|
|
119
|
+
return { ...row, status: 'installed', version: this.deps.version };
|
|
120
|
+
if (observed.kind === 'foreign')
|
|
121
|
+
return { ...row, status: 'foreign' };
|
|
122
|
+
if (observed.kind === 'absent')
|
|
123
|
+
return { ...row, status: 'not_installed', version: null };
|
|
124
|
+
return { ...row, status: 'skipped', version: observed.version };
|
|
125
|
+
}
|
|
107
126
|
async confirmRemoval(rows, yes) {
|
|
108
127
|
const remove = rows.filter((r) => r.action === 'remove');
|
|
109
128
|
return (remove.length === 0 ||
|
|
@@ -140,6 +159,9 @@ function versionState(installed, bundled) {
|
|
|
140
159
|
function mutationAction(operation, row) {
|
|
141
160
|
if (operation === 'uninstall')
|
|
142
161
|
return row.status === 'installed' ? 'remove' : 'skip';
|
|
162
|
+
// Update brings an older copy fx recognizes to this version, and touches nothing else.
|
|
163
|
+
if (operation === 'update')
|
|
164
|
+
return row.version_state === 'older' ? 'refresh' : 'skip';
|
|
143
165
|
if (row.status === 'foreign')
|
|
144
166
|
return 'replace';
|
|
145
167
|
return row.status === 'installed' ? 'refresh' : 'install';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standalone.js","sourceRoot":"","sources":["../../../src/application/skill/standalone.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAE9F,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACnG,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAIpE,OAAO,EAAE,cAAc,EAAqB,MAAM,sBAAsB,CAAC;AAEzE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EACL,iBAAiB,GAGlB,MAAM,yBAAyB,CAAC;AAgCjC,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,OAAO;IACP,MAAM;IACN,QAAQ;IACR,SAAS;IACT,eAAe;CACP,CAAC;AACX,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"standalone.js","sourceRoot":"","sources":["../../../src/application/skill/standalone.ts"],"names":[],"mappings":"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"}
|
|
@@ -132,6 +132,32 @@ export function awaitsApproval(item) {
|
|
|
132
132
|
export function wasHeldBack(item) {
|
|
133
133
|
return item.vector === null && item.note === HELD_BACK;
|
|
134
134
|
}
|
|
135
|
+
// The Skills of tools fx just chose, installed or updated outside the sync stage, approved
|
|
136
|
+
// and ready for runTools. A preview plans each tool as if it were already installed, since
|
|
137
|
+
// the same run would install it.
|
|
138
|
+
export async function planToolSkills(deps, skills, input) {
|
|
139
|
+
const toolchain = input.tools.map((tool) => ({ ...tool, installOnInit: true }));
|
|
140
|
+
const status = input.dryRun ? 'planned' : 'not_started';
|
|
141
|
+
const items = (await planTools(deps, skills, { toolchain, dryRun: input.dryRun, posture: input.posture })).map((item) => ({ ...item, status }));
|
|
142
|
+
if (input.dryRun || input.trust === undefined)
|
|
143
|
+
return items;
|
|
144
|
+
return trustAll(items, toolchain, input.trust);
|
|
145
|
+
}
|
|
146
|
+
// One tool's Skill across every agent directory it went to, in a word for the tool's row.
|
|
147
|
+
// A run cut short leaves the rest not started, which is not installed.
|
|
148
|
+
export function toolSkillOutcome(items, tool) {
|
|
149
|
+
const own = items.filter((item) => item.tool === tool);
|
|
150
|
+
if (own.some(awaitsApproval))
|
|
151
|
+
return 'blocked';
|
|
152
|
+
const ran = own.filter((item) => item.vector !== null);
|
|
153
|
+
if (ran.length === 0)
|
|
154
|
+
return 'none';
|
|
155
|
+
if (ran.some((item) => item.status === 'failed' || item.failure !== undefined))
|
|
156
|
+
return 'failed';
|
|
157
|
+
if (ran.some((item) => item.status === 'not_started'))
|
|
158
|
+
return 'not_started';
|
|
159
|
+
return ran.some((item) => item.status === 'planned') ? 'planned' : 'installed';
|
|
160
|
+
}
|
|
135
161
|
export async function runTools(deps, items) {
|
|
136
162
|
// A tool installs into one directory per agent; its progress is still one start and one end.
|
|
137
163
|
const pending = new Map();
|