@vibe-agent-toolkit/cli 0.2.0-rc.6 → 0.2.0-rc.7
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 +4 -4
- package/dist/bin.js +41 -158
- package/dist/bin.js.map +1 -1
- package/dist/command-loaders.d.ts +2 -2
- package/dist/command-loaders.d.ts.map +1 -1
- package/dist/command-loaders.js +4 -2
- package/dist/command-loaders.js.map +1 -1
- package/dist/commands/ard/emit.d.ts +104 -0
- package/dist/commands/ard/emit.d.ts.map +1 -0
- package/dist/commands/ard/emit.js +223 -0
- package/dist/commands/ard/emit.js.map +1 -0
- package/dist/commands/ard/index.d.ts +12 -0
- package/dist/commands/ard/index.d.ts.map +1 -0
- package/dist/commands/ard/index.js +79 -0
- package/dist/commands/ard/index.js.map +1 -0
- package/dist/commands/ard/surfaces.d.ts +56 -0
- package/dist/commands/ard/surfaces.d.ts.map +1 -0
- package/dist/commands/ard/surfaces.js +150 -0
- package/dist/commands/ard/surfaces.js.map +1 -0
- package/dist/commands/audit.d.ts +75 -8
- package/dist/commands/audit.d.ts.map +1 -1
- package/dist/commands/audit.js +605 -140
- package/dist/commands/audit.js.map +1 -1
- package/dist/commands/claude/budget.d.ts +13 -0
- package/dist/commands/claude/budget.d.ts.map +1 -1
- package/dist/commands/claude/budget.js +80 -28
- package/dist/commands/claude/budget.js.map +1 -1
- package/dist/commands/claude/context.js +1 -1
- package/dist/commands/claude/context.js.map +1 -1
- package/dist/commands/claude/marketplace/validate.d.ts +55 -22
- package/dist/commands/claude/marketplace/validate.d.ts.map +1 -1
- package/dist/commands/claude/marketplace/validate.js +380 -75
- package/dist/commands/claude/marketplace/validate.js.map +1 -1
- package/dist/commands/claude/org/skills.d.ts +84 -3
- package/dist/commands/claude/org/skills.d.ts.map +1 -1
- package/dist/commands/claude/org/skills.js +218 -46
- package/dist/commands/claude/org/skills.js.map +1 -1
- package/dist/commands/claude/plugin/build.d.ts +8 -0
- package/dist/commands/claude/plugin/build.d.ts.map +1 -1
- package/dist/commands/claude/plugin/build.js +16 -2
- package/dist/commands/claude/plugin/build.js.map +1 -1
- package/dist/commands/claude/plugin/tree-copy.d.ts +72 -0
- package/dist/commands/claude/plugin/tree-copy.d.ts.map +1 -1
- package/dist/commands/claude/plugin/tree-copy.js +215 -10
- package/dist/commands/claude/plugin/tree-copy.js.map +1 -1
- package/dist/commands/corpus/index.d.ts.map +1 -1
- package/dist/commands/corpus/index.js +3 -0
- package/dist/commands/corpus/index.js.map +1 -1
- package/dist/commands/corpus/report.d.ts +0 -1
- package/dist/commands/corpus/report.d.ts.map +1 -1
- package/dist/commands/corpus/report.js +0 -1
- package/dist/commands/corpus/report.js.map +1 -1
- package/dist/commands/corpus/runner.d.ts +58 -1
- package/dist/commands/corpus/runner.d.ts.map +1 -1
- package/dist/commands/corpus/runner.js +90 -15
- package/dist/commands/corpus/runner.js.map +1 -1
- package/dist/commands/corpus/scan.d.ts.map +1 -1
- package/dist/commands/corpus/scan.js +0 -1
- package/dist/commands/corpus/scan.js.map +1 -1
- package/dist/commands/doctor.d.ts +14 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +96 -18
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/okf/index.d.ts +11 -0
- package/dist/commands/okf/index.d.ts.map +1 -0
- package/dist/commands/okf/index.js +102 -0
- package/dist/commands/okf/index.js.map +1 -0
- package/dist/commands/okf/validate.d.ts +82 -0
- package/dist/commands/okf/validate.d.ts.map +1 -0
- package/dist/commands/okf/validate.js +157 -0
- package/dist/commands/okf/validate.js.map +1 -0
- package/dist/commands/phase-utils.d.ts +19 -3
- package/dist/commands/phase-utils.d.ts.map +1 -1
- package/dist/commands/phase-utils.js +26 -5
- package/dist/commands/phase-utils.js.map +1 -1
- package/dist/commands/rag/index-command.d.ts +27 -2
- package/dist/commands/rag/index-command.d.ts.map +1 -1
- package/dist/commands/rag/index-command.js +44 -7
- package/dist/commands/rag/index-command.js.map +1 -1
- package/dist/commands/rag/index.d.ts.map +1 -1
- package/dist/commands/rag/index.js +2 -0
- package/dist/commands/rag/index.js.map +1 -1
- package/dist/commands/resources/check-progress.d.ts +3 -0
- package/dist/commands/resources/check-progress.d.ts.map +1 -1
- package/dist/commands/resources/check-progress.js +6 -0
- package/dist/commands/resources/check-progress.js.map +1 -1
- package/dist/commands/resources/check.d.ts +33 -4
- package/dist/commands/resources/check.d.ts.map +1 -1
- package/dist/commands/resources/check.js +131 -44
- package/dist/commands/resources/check.js.map +1 -1
- package/dist/commands/resources/index.d.ts.map +1 -1
- package/dist/commands/resources/index.js +41 -9
- package/dist/commands/resources/index.js.map +1 -1
- package/dist/commands/resources/query.d.ts +18 -1
- package/dist/commands/resources/query.d.ts.map +1 -1
- package/dist/commands/resources/query.js +29 -4
- package/dist/commands/resources/query.js.map +1 -1
- package/dist/commands/resources/validate.d.ts +29 -0
- package/dist/commands/resources/validate.d.ts.map +1 -1
- package/dist/commands/resources/validate.js +116 -13
- package/dist/commands/resources/validate.js.map +1 -1
- package/dist/commands/skill/review.d.ts.map +1 -1
- package/dist/commands/skill/review.js +9 -2
- package/dist/commands/skill/review.js.map +1 -1
- package/dist/commands/skill/test/run.d.ts.map +1 -1
- package/dist/commands/skill/test/run.js +21 -6
- package/dist/commands/skill/test/run.js.map +1 -1
- package/dist/commands/skills/build.d.ts.map +1 -1
- package/dist/commands/skills/build.js +16 -3
- package/dist/commands/skills/build.js.map +1 -1
- package/dist/commands/skills/list.d.ts +2 -1
- package/dist/commands/skills/list.d.ts.map +1 -1
- package/dist/commands/skills/list.js +31 -9
- package/dist/commands/skills/list.js.map +1 -1
- package/dist/commands/skills/skill-discovery.d.ts +40 -1
- package/dist/commands/skills/skill-discovery.d.ts.map +1 -1
- package/dist/commands/skills/skill-discovery.js +32 -3
- package/dist/commands/skills/skill-discovery.js.map +1 -1
- package/dist/commands/skills/validate-command.d.ts.map +1 -1
- package/dist/commands/skills/validate-command.js +11 -3
- package/dist/commands/skills/validate-command.js.map +1 -1
- package/dist/commands/skills/validate.d.ts +66 -7
- package/dist/commands/skills/validate.d.ts.map +1 -1
- package/dist/commands/skills/validate.js +133 -29
- package/dist/commands/skills/validate.js.map +1 -1
- package/dist/commands/verify.d.ts +94 -3
- package/dist/commands/verify.d.ts.map +1 -1
- package/dist/commands/verify.js +192 -45
- package/dist/commands/verify.js.map +1 -1
- package/dist/skill-resolution/packaging-config.d.ts +49 -5
- package/dist/skill-resolution/packaging-config.d.ts.map +1 -1
- package/dist/skill-resolution/packaging-config.js +59 -19
- package/dist/skill-resolution/packaging-config.js.map +1 -1
- package/dist/skill-resolution/resolve-skill-reference.d.ts.map +1 -1
- package/dist/skill-resolution/resolve-skill-reference.js +6 -3
- package/dist/skill-resolution/resolve-skill-reference.js.map +1 -1
- package/dist/utils/command-error.d.ts +31 -0
- package/dist/utils/command-error.d.ts.map +1 -1
- package/dist/utils/command-error.js +45 -0
- package/dist/utils/command-error.js.map +1 -1
- package/dist/utils/edge-lens-evaluation.d.ts +83 -0
- package/dist/utils/edge-lens-evaluation.d.ts.map +1 -0
- package/dist/utils/edge-lens-evaluation.js +110 -0
- package/dist/utils/edge-lens-evaluation.js.map +1 -0
- package/dist/utils/optional-backend.d.ts +5 -4
- package/dist/utils/optional-backend.d.ts.map +1 -1
- package/dist/utils/optional-backend.js +5 -4
- package/dist/utils/optional-backend.js.map +1 -1
- package/dist/utils/project-root-policy.d.ts +20 -0
- package/dist/utils/project-root-policy.d.ts.map +1 -1
- package/dist/utils/project-root-policy.js +32 -0
- package/dist/utils/project-root-policy.js.map +1 -1
- package/dist/utils/projection-query.d.ts +41 -4
- package/dist/utils/projection-query.d.ts.map +1 -1
- package/dist/utils/projection-query.js +44 -10
- package/dist/utils/projection-query.js.map +1 -1
- package/dist/utils/projection-store.d.ts +41 -15
- package/dist/utils/projection-store.d.ts.map +1 -1
- package/dist/utils/projection-store.js +65 -18
- package/dist/utils/projection-store.js.map +1 -1
- package/dist/utils/repeatable-option.d.ts +37 -0
- package/dist/utils/repeatable-option.d.ts.map +1 -0
- package/dist/utils/repeatable-option.js +39 -0
- package/dist/utils/repeatable-option.js.map +1 -0
- package/dist/utils/resource-loader.d.ts +4 -3
- package/dist/utils/resource-loader.d.ts.map +1 -1
- package/dist/utils/resource-loader.js +61 -30
- package/dist/utils/resource-loader.js.map +1 -1
- package/dist/utils/root-argv.d.ts +53 -0
- package/dist/utils/root-argv.d.ts.map +1 -0
- package/dist/utils/root-argv.js +215 -0
- package/dist/utils/root-argv.js.map +1 -0
- package/dist/utils/run-integrity.d.ts +95 -0
- package/dist/utils/run-integrity.d.ts.map +1 -0
- package/dist/utils/run-integrity.js +102 -0
- package/dist/utils/run-integrity.js.map +1 -0
- package/dist/utils/sqlite-experimental-warning.d.ts +69 -0
- package/dist/utils/sqlite-experimental-warning.d.ts.map +1 -0
- package/dist/utils/sqlite-experimental-warning.js +144 -0
- package/dist/utils/sqlite-experimental-warning.js.map +1 -0
- package/dist/utils/user-context-scanner.d.ts +8 -0
- package/dist/utils/user-context-scanner.d.ts.map +1 -1
- package/dist/utils/user-context-scanner.js +4 -0
- package/dist/utils/user-context-scanner.js.map +1 -1
- package/dist/utils/validate-help-files.d.ts.map +1 -1
- package/dist/utils/validate-help-files.js +9 -2
- package/dist/utils/validate-help-files.js.map +1 -1
- package/docs/audit.md +120 -7
- package/docs/doctor.md +6 -6
- package/docs/index.md +1 -1
- package/docs/rag.md +3 -1
- package/docs/resources.md +5 -1
- package/docs/skills.md +47 -62
- package/package.json +18 -18
|
@@ -15,10 +15,11 @@
|
|
|
15
15
|
* Both sets are config-gated, and both are announced on startup.
|
|
16
16
|
*/
|
|
17
17
|
import type { ProjectConfig } from '@vibe-agent-toolkit/resources';
|
|
18
|
-
import { type ValidationIssue } from '@vibe-agent-toolkit/schema';
|
|
18
|
+
import { type SeverityCounts, type ValidationIssue } from '@vibe-agent-toolkit/schema';
|
|
19
19
|
import { Command } from 'commander';
|
|
20
|
+
import type { createLogger } from '../utils/logger.js';
|
|
20
21
|
import { type ConsistencyIssueSeverity } from './consistency-check.js';
|
|
21
|
-
import { type PhaseSelection } from './phase-utils.js';
|
|
22
|
+
import { type PhaseResult, type PhaseSelection } from './phase-utils.js';
|
|
22
23
|
import type { DiscoveredSkill } from './skills/command-helpers.js';
|
|
23
24
|
export interface VerifyCommandOptions {
|
|
24
25
|
/** Retired; declared only so {@link rejectRetiredOnly} can explain the removal. */
|
|
@@ -82,10 +83,32 @@ export declare function checkFilesConfigDests(cwd: string, discovered: readonly
|
|
|
82
83
|
*
|
|
83
84
|
* Locations anchor at `cwd`, the run's stated root, so a reader can open them.
|
|
84
85
|
*
|
|
86
|
+
* Returns the count of bundles crawled beside the findings, because the phase
|
|
87
|
+
* that publishes them needs the denominator: zero findings over zero bundles is
|
|
88
|
+
* not a pass — see {@link buildPackagedContentPhase}.
|
|
89
|
+
*
|
|
85
90
|
* @param discovered - The skills this run discovered from `skills.include`. See
|
|
86
91
|
* {@link collectBuiltSkillOutputs} for why it is required rather than optional.
|
|
87
92
|
*/
|
|
88
|
-
export declare function checkPackagedAgentInstructionFiles(cwd: string, discovered: readonly DiscoveredSkill[]):
|
|
93
|
+
export declare function checkPackagedAgentInstructionFiles(cwd: string, discovered: readonly DiscoveredSkill[]): PackagedContentCrawl;
|
|
94
|
+
/**
|
|
95
|
+
* What the packaged-content crawl found, over how many bundles, and how many
|
|
96
|
+
* it should have found.
|
|
97
|
+
*
|
|
98
|
+
* `bundlesInspected` can exceed `bundlesExpected`: a bundle sitting in `dist/`
|
|
99
|
+
* for a `skills.config` key discovery no longer reaches is inspected (it is
|
|
100
|
+
* distributed output) but not expected (nothing in this run builds it). It can
|
|
101
|
+
* fall short of it only by the bundles named in `bundlesMissing`.
|
|
102
|
+
*/
|
|
103
|
+
export interface PackagedContentCrawl {
|
|
104
|
+
/** Built bundles that EXIST on disk and were crawled — the phase's denominator. */
|
|
105
|
+
bundlesInspected: number;
|
|
106
|
+
/** Bundles `vat build` produces for this run's discovered skills — what the denominator should be. */
|
|
107
|
+
bundlesExpected: number;
|
|
108
|
+
/** Expected bundles absent from disk, as `cwd`-relative paths. Non-empty means the phase is not a verdict. */
|
|
109
|
+
bundlesMissing: string[];
|
|
110
|
+
issues: ValidationIssue[];
|
|
111
|
+
}
|
|
89
112
|
/**
|
|
90
113
|
* Decide which verification phases to run.
|
|
91
114
|
*
|
|
@@ -140,5 +163,73 @@ interface PublishedIssue {
|
|
|
140
163
|
* and stderr is not the document a CI consumer parses.
|
|
141
164
|
*/
|
|
142
165
|
export declare function toPublishedIssue(issue: ValidationIssue): PublishedIssue;
|
|
166
|
+
/**
|
|
167
|
+
* A phase result that carries its own findings into the archived YAML.
|
|
168
|
+
*
|
|
169
|
+
* Extends {@link PhaseResult} rather than widening it: only verify's own phases
|
|
170
|
+
* hold findings — a delegated phase's findings belong to (and are printed by)
|
|
171
|
+
* the command it delegates to, inside the report nested under `report`.
|
|
172
|
+
*/
|
|
173
|
+
interface FindingsPhaseResult extends PhaseResult {
|
|
174
|
+
issueCounts: SeverityCounts;
|
|
175
|
+
issues: PublishedIssue[];
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* The `packaged-content` phase's result: its findings, the count they are
|
|
179
|
+
* over, and the count they should have been over — see {@link PackagedContentCrawl}.
|
|
180
|
+
*/
|
|
181
|
+
export interface PackagedContentPhaseResult extends FindingsPhaseResult {
|
|
182
|
+
bundlesInspected: number;
|
|
183
|
+
bundlesExpected: number;
|
|
184
|
+
bundlesMissing: string[];
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* Build the `packaged-content` phase result from what the crawl found.
|
|
188
|
+
*
|
|
189
|
+
* 🚨 **Zero bundles is an ERROR, not a clean phase — and so is a MISSING one.**
|
|
190
|
+
* The phase is pushed unconditionally whenever `skills:` exists and it feeds the
|
|
191
|
+
* real exit code; `discoverSkillsFromConfig` returning `[]` on a typo'd glob —
|
|
192
|
+
* or `dist/` not having been built at all, or built somewhere else — gave the
|
|
193
|
+
* crawl nothing to walk, and nothing walked was zero findings was `success`,
|
|
194
|
+
* with no count in the document to say the phase had looked at nothing. `vat
|
|
195
|
+
* verify` exists to check the BUILT tree; a run that found none of it is not a
|
|
196
|
+
* verdict on it. Nor is a run that found half of it: with `bundlesInspected` as
|
|
197
|
+
* the only denominator, two discovered skills and one deleted bundle published
|
|
198
|
+
* `success` beside `bundlesInspected: 1`. The crawl now also carries what it
|
|
199
|
+
* should have found, and the document publishes both counts.
|
|
200
|
+
*
|
|
201
|
+
* Derived here, in the one function that produces this phase's document, and
|
|
202
|
+
* not in the command body, so no path through the orchestrator can publish
|
|
203
|
+
* `status: success` beside `bundlesInspected: 0` or beside a non-empty
|
|
204
|
+
* `bundlesMissing`. Through the shared mechanism in `run-integrity.ts`: one
|
|
205
|
+
* non-overridable `RESOURCE_CHECK_BROKEN` at `error`, which
|
|
206
|
+
* {@link exitCodeForPhases} then turns into exit 1. ONE, not two, when both
|
|
207
|
+
* apply: the missing-bundle refusal is derived first because it names paths,
|
|
208
|
+
* and {@link nothingCheckedFinding} stands down behind an existing
|
|
209
|
+
* run-integrity finding.
|
|
210
|
+
*
|
|
211
|
+
* Pure, and exported so the refusal is pinned without a project on disk.
|
|
212
|
+
*/
|
|
213
|
+
export declare function buildPackagedContentPhase(crawl: PackagedContentCrawl): PackagedContentPhaseResult;
|
|
214
|
+
/**
|
|
215
|
+
* Run the `packaged-content` phase: crawl, derive the phase document, and
|
|
216
|
+
* report THAT document's issues on stderr.
|
|
217
|
+
*
|
|
218
|
+
* 🚨 **The stderr report used to be gated on the crawl, one line before the
|
|
219
|
+
* refusal was derived.** `if (crawl.issues.length > 0) report(crawl.issues)`
|
|
220
|
+
* ran ahead of {@link buildPackagedContentPhase}, which is where the
|
|
221
|
+
* zero-bundle refusal is added — so on an unbuilt project the crawl found
|
|
222
|
+
* nothing, nothing was logged, the skills phase's `✅ All validations passed`
|
|
223
|
+
* stayed the last line on stderr, and the process exited 1 on a refusal that
|
|
224
|
+
* existed only in the YAML. Reporting from the phase result makes what stderr
|
|
225
|
+
* says and what the exit code is computed from one list, which is
|
|
226
|
+
* `run-integrity.ts` invariant 6.
|
|
227
|
+
*
|
|
228
|
+
* The round trip through `asValidationIssues` is deliberate rather than
|
|
229
|
+
* reporting the crawl's list plus a second derivation of the refusal: the
|
|
230
|
+
* document is the artifact of record, and stderr should render exactly what it
|
|
231
|
+
* carries, not a parallel computation that can drift from it.
|
|
232
|
+
*/
|
|
233
|
+
export declare function runPackagedContentPhase(projectRoot: string, discoveredSkills: readonly DiscoveredSkill[], logger: ReturnType<typeof createLogger>): PackagedContentPhaseResult;
|
|
143
234
|
export {};
|
|
144
235
|
//# sourceMappingURL=verify.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../src/commands/verify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAWH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,
|
|
1
|
+
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../src/commands/verify.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/verify.js
CHANGED
|
@@ -14,11 +14,11 @@
|
|
|
14
14
|
* are chosen by `selectInProcessVerifyPhases`. Every phase runs in this process.
|
|
15
15
|
* Both sets are config-gated, and both are announced on startup.
|
|
16
16
|
*/
|
|
17
|
-
import { existsSync } from 'node:fs';
|
|
17
|
+
import { existsSync, statSync } from 'node:fs';
|
|
18
18
|
import { basename } from 'node:path';
|
|
19
19
|
import { computeTreeCopiedSkillLocations, detectPackagedAgentInstructionFiles, explicitFilesConfigDests, } from '@vibe-agent-toolkit/agent-skills';
|
|
20
20
|
import { calculateValidationStatus, countBySeverity, } from '@vibe-agent-toolkit/schema';
|
|
21
|
-
import { safePath } from '@vibe-agent-toolkit/utils';
|
|
21
|
+
import { safePath, toForwardSlash } from '@vibe-agent-toolkit/utils';
|
|
22
22
|
import { Command } from 'commander';
|
|
23
23
|
import { handleCommandError } from '../utils/command-error.js';
|
|
24
24
|
import { loadConfig } from '../utils/config-loader.js';
|
|
@@ -26,6 +26,7 @@ import { formatIssueLines } from '../utils/issue-rendering.js';
|
|
|
26
26
|
import { resolveIssueSeverity } from '../utils/issue-severity.js';
|
|
27
27
|
import { writeYamlOutput } from '../utils/output.js';
|
|
28
28
|
import { requireProjectRoot } from '../utils/project-root-policy.js';
|
|
29
|
+
import { nothingCheckedFinding, runIntegrityFinding } from '../utils/run-integrity.js';
|
|
29
30
|
import { mergeSkillPackagingConfig } from '../utils/skill-packaging-config.js';
|
|
30
31
|
import { runMarketplaceValidatePhase } from './claude/marketplace/validate.js';
|
|
31
32
|
import { runConsistencyChecks, } from './consistency-check.js';
|
|
@@ -93,7 +94,14 @@ Output:
|
|
|
93
94
|
publish issueCounts {errors, warnings, info}; 'consistency' and
|
|
94
95
|
'packaged-content' carry their findings into the document too, while
|
|
95
96
|
'files-config-dests' publishes counts only and lists the missing dests on
|
|
96
|
-
stderr.
|
|
97
|
+
stderr. 'packaged-content' also publishes bundlesInspected — the built
|
|
98
|
+
bundles it crawled — beside bundlesExpected (the bundles 'vat build'
|
|
99
|
+
produces for the skills this run discovered) and bundlesMissing (expected
|
|
100
|
+
bundles absent from dist/, by path). Zero inspected, or any missing, is
|
|
101
|
+
refused as RESOURCE_CHECK_BROKEN at error (exit 1) rather than reported as
|
|
102
|
+
a pass: a run that found none of the build (dist/ not built, or a
|
|
103
|
+
skills.include glob that matched nothing) or only part of it (a bundle
|
|
104
|
+
deleted, a skill added since the last build) is not a verdict on what ships.
|
|
97
105
|
Progress and validation errors → stderr (streamed live)
|
|
98
106
|
|
|
99
107
|
By default each delegated phase reports a per-asset summary plus the assets
|
|
@@ -135,11 +143,29 @@ function filesOf(entry) {
|
|
|
135
143
|
return entry.packaging.files ?? [];
|
|
136
144
|
}
|
|
137
145
|
/**
|
|
138
|
-
*
|
|
146
|
+
* Whether `dir` is a directory — `false` for a file, for nothing, and for a
|
|
147
|
+
* path the process cannot stat. All three are "no bundle here": a bundle is a
|
|
148
|
+
* tree, and a regular FILE sitting where one should be passed `existsSync`,
|
|
149
|
+
* was counted as built, and the packaged-content crawl then threw `Base path is
|
|
150
|
+
* not a directory: /abs/…` out of the whole command — exit 2, no document, an
|
|
151
|
+
* absolute path on stderr — where the missing-bundle lane names it at exit 1.
|
|
152
|
+
*/
|
|
153
|
+
function isDirectory(dir) {
|
|
154
|
+
try {
|
|
155
|
+
// eslint-disable-next-line security/detect-non-literal-fs-filename -- outputDir is resolved from config, not user input
|
|
156
|
+
return statSync(dir).isDirectory();
|
|
157
|
+
}
|
|
158
|
+
catch {
|
|
159
|
+
return false;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Register a (skillName, outputDir, packaging) candidate.
|
|
139
164
|
*
|
|
140
|
-
*
|
|
141
|
-
*
|
|
142
|
-
*
|
|
165
|
+
* A candidate whose output dir IS A DIRECTORY lands in `built` (deduplicated by
|
|
166
|
+
* key). An `expected` candidate is counted whether or not it exists, and one
|
|
167
|
+
* that is not a directory is named in `missing` — that absence is the finding,
|
|
168
|
+
* not a skip (see {@link isDirectory} for why "exists" is not enough).
|
|
143
169
|
*
|
|
144
170
|
* An EMPTY `files:` block is registered, not skipped: {@link checkFilesConfigDests}
|
|
145
171
|
* has nothing to verify for such a skill and filters it out itself, but
|
|
@@ -147,27 +173,33 @@ function filesOf(entry) {
|
|
|
147
173
|
* with no `files:` block is exactly the one whose agent-instruction file arrived by
|
|
148
174
|
* some other route, and dropping it here would make the crawl blind to it.
|
|
149
175
|
*/
|
|
150
|
-
function
|
|
151
|
-
|
|
152
|
-
if (
|
|
176
|
+
function addCheckCandidate(outputs, seen, cwd, candidate, expected) {
|
|
177
|
+
const key = `${candidate.skillName}\0${candidate.outputDir}`;
|
|
178
|
+
if (seen.has(key))
|
|
153
179
|
return;
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
180
|
+
seen.add(key);
|
|
181
|
+
const exists = isDirectory(candidate.outputDir);
|
|
182
|
+
if (exists)
|
|
183
|
+
outputs.built.push(candidate);
|
|
184
|
+
if (!expected)
|
|
185
|
+
return;
|
|
186
|
+
outputs.expected += 1;
|
|
187
|
+
if (!exists)
|
|
188
|
+
outputs.missing.push(toForwardSlash(safePath.relative(cwd, candidate.outputDir)));
|
|
158
189
|
}
|
|
159
190
|
/**
|
|
160
|
-
* Every built skill bundle this project's config accounts for
|
|
161
|
-
*
|
|
191
|
+
* Every built skill bundle this project's config accounts for, with the `files:`
|
|
192
|
+
* entries that govern it — those that EXIST on disk, and the coverage of those
|
|
193
|
+
* the build should have produced (see {@link BuiltSkillOutputs}).
|
|
162
194
|
*
|
|
163
195
|
* ONE enumeration of "where did `vat build` write this skill", shared by every
|
|
164
196
|
* in-process verify phase, in the two locations the build actually uses:
|
|
165
197
|
* - Pool skills: `dist/skills/<fsName>/`
|
|
166
198
|
* - Tree-copy skills: `dist/.claude/plugins/.../skills/<name>/`
|
|
167
199
|
*
|
|
168
|
-
* Returns
|
|
169
|
-
* phases report the real config error, and one of verify's
|
|
170
|
-
* race them with a second, worse diagnosis.
|
|
200
|
+
* Returns an empty enumeration (never throws) for an unreadable config: `vat
|
|
201
|
+
* verify`'s delegated phases report the real config error, and one of verify's
|
|
202
|
+
* own phases must not race them with a second, worse diagnosis.
|
|
171
203
|
*
|
|
172
204
|
* The pool arm enumerates the skills the run DISCOVERED, unioned with the keys of
|
|
173
205
|
* `skills.config`. It used to be the config keys alone, which made both in-process
|
|
@@ -197,37 +229,44 @@ function tryAddCheckEntry(checks, skillName, outputDir, packaging) {
|
|
|
197
229
|
* this command.
|
|
198
230
|
*/
|
|
199
231
|
function collectBuiltSkillOutputs(cwd, discovered) {
|
|
232
|
+
const outputs = { built: [], expected: 0, missing: [] };
|
|
200
233
|
try {
|
|
201
234
|
const config = loadConfig(cwd);
|
|
202
235
|
if (!config)
|
|
203
|
-
return
|
|
236
|
+
return outputs;
|
|
204
237
|
const skillsConfig = config.skills;
|
|
205
238
|
const defaults = skillsConfig?.defaults;
|
|
206
|
-
// Dedup
|
|
207
|
-
const
|
|
239
|
+
// Dedup guard: key = `skillName\0outputDir`
|
|
240
|
+
const seen = new Set();
|
|
208
241
|
// --- Pool skills: candidate dir is dist/skills/<fsName> ---
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
]);
|
|
242
|
+
// Expected only when discovered: `vat skills build` builds every discovered
|
|
243
|
+
// skill and nothing else (see BuiltSkillOutputs.expected).
|
|
244
|
+
const discoveredNames = new Set(discovered.map((skill) => skill.name));
|
|
245
|
+
const poolNames = new Set([...discoveredNames, ...Object.keys(skillsConfig?.config ?? {})]);
|
|
213
246
|
for (const skillName of poolNames) {
|
|
214
247
|
const perSkill = skillsConfig?.config?.[skillName];
|
|
215
248
|
const outputDir = safePath.resolve(cwd, 'dist', 'skills', skillNameToFsPath(skillName));
|
|
216
|
-
|
|
249
|
+
addCheckCandidate(outputs, seen, cwd, { skillName, outputDir, packaging: mergeSkillPackagingConfig(defaults, perSkill) }, discoveredNames.has(skillName));
|
|
217
250
|
}
|
|
218
251
|
// --- Tree-copy skills: candidate dirs are plugin output skill dirs ---
|
|
252
|
+
// Always expected: every location here is a plugin-local skill the claude
|
|
253
|
+
// build phase packages into the plugin tree.
|
|
219
254
|
for (const loc of computeTreeCopiedSkillLocations(config, cwd)) {
|
|
220
255
|
// Per-skill config is keyed by the skill's declared NAME. `skillDirPath` is a
|
|
221
256
|
// path (`group/nested-skill` for a nested skill), so try its trailing segment
|
|
222
257
|
// too — the spelling that matches for every skill whose dir is named after it.
|
|
223
258
|
const dirLeaf = basename(loc.skillDirPath);
|
|
224
259
|
const perSkill = (skillsConfig?.config?.[loc.skillDirPath] ?? skillsConfig?.config?.[dirLeaf]);
|
|
225
|
-
|
|
260
|
+
addCheckCandidate(outputs, seen, cwd, {
|
|
261
|
+
skillName: loc.skillDirPath,
|
|
262
|
+
outputDir: loc.skillOutputDir,
|
|
263
|
+
packaging: mergeSkillPackagingConfig(defaults, perSkill),
|
|
264
|
+
}, true);
|
|
226
265
|
}
|
|
227
|
-
return
|
|
266
|
+
return outputs;
|
|
228
267
|
}
|
|
229
268
|
catch {
|
|
230
|
-
return [];
|
|
269
|
+
return { built: [], expected: 0, missing: [] };
|
|
231
270
|
}
|
|
232
271
|
}
|
|
233
272
|
/**
|
|
@@ -242,7 +281,7 @@ function collectBuiltSkillOutputs(cwd, discovered) {
|
|
|
242
281
|
*/
|
|
243
282
|
export function checkFilesConfigDests(cwd, discovered) {
|
|
244
283
|
const results = [];
|
|
245
|
-
for (const check of collectBuiltSkillOutputs(cwd, discovered)) {
|
|
284
|
+
for (const check of collectBuiltSkillOutputs(cwd, discovered).built) {
|
|
246
285
|
const { skillName, outputDir } = check;
|
|
247
286
|
const mergedFiles = filesOf(check);
|
|
248
287
|
if (mergedFiles.length === 0)
|
|
@@ -298,16 +337,26 @@ export function checkFilesConfigDests(cwd, discovered) {
|
|
|
298
337
|
*
|
|
299
338
|
* Locations anchor at `cwd`, the run's stated root, so a reader can open them.
|
|
300
339
|
*
|
|
340
|
+
* Returns the count of bundles crawled beside the findings, because the phase
|
|
341
|
+
* that publishes them needs the denominator: zero findings over zero bundles is
|
|
342
|
+
* not a pass — see {@link buildPackagedContentPhase}.
|
|
343
|
+
*
|
|
301
344
|
* @param discovered - The skills this run discovered from `skills.include`. See
|
|
302
345
|
* {@link collectBuiltSkillOutputs} for why it is required rather than optional.
|
|
303
346
|
*/
|
|
304
347
|
export function checkPackagedAgentInstructionFiles(cwd, discovered) {
|
|
305
348
|
const issues = [];
|
|
306
|
-
|
|
349
|
+
const outputs = collectBuiltSkillOutputs(cwd, discovered);
|
|
350
|
+
for (const check of outputs.built) {
|
|
307
351
|
const raw = detectPackagedAgentInstructionFiles(check.outputDir, cwd, explicitFilesConfigDests(filesOf(check)));
|
|
308
352
|
issues.push(...resolveIssueSeverity(raw, check.packaging.validation));
|
|
309
353
|
}
|
|
310
|
-
return
|
|
354
|
+
return {
|
|
355
|
+
bundlesInspected: outputs.built.length,
|
|
356
|
+
bundlesExpected: outputs.expected,
|
|
357
|
+
bundlesMissing: outputs.missing,
|
|
358
|
+
issues,
|
|
359
|
+
};
|
|
311
360
|
}
|
|
312
361
|
/**
|
|
313
362
|
* Load the project config without letting a broken one abort the command.
|
|
@@ -517,6 +566,79 @@ export function toPublishedIssue(issue) {
|
|
|
517
566
|
...(issue.reference === undefined ? {} : { reference: issue.reference }),
|
|
518
567
|
};
|
|
519
568
|
}
|
|
569
|
+
/**
|
|
570
|
+
* The refusal for a crawl that found only PART of the build.
|
|
571
|
+
*
|
|
572
|
+
* Mirrors `unresolvedLocalPluginsFinding` in `claude/marketplace/validate.ts`:
|
|
573
|
+
* the count declared, the count checked, and the missing ones BY NAME — the
|
|
574
|
+
* operator's next move is to look at those paths, so the message carries them.
|
|
575
|
+
* ONE finding however many are missing (run-integrity invariant 4).
|
|
576
|
+
*
|
|
577
|
+
* @param crawl - What the crawl found, over what
|
|
578
|
+
* @returns The one finding, or nothing when every expected bundle was inspected
|
|
579
|
+
*/
|
|
580
|
+
function missingBundlesFinding(crawl) {
|
|
581
|
+
if (crawl.bundlesMissing.length === 0)
|
|
582
|
+
return [];
|
|
583
|
+
const named = crawl.bundlesMissing.map((dir) => `\`${dir}\``).join(', ');
|
|
584
|
+
return [runIntegrityFinding(`This run discovered skills that \`vat build\` produces ${crawl.bundlesExpected} bundle(s) for and`
|
|
585
|
+
+ ` the packaged-content phase inspected ${crawl.bundlesInspected}, so this phase is not a verdict`
|
|
586
|
+
+ ' on the build: a bundle that was never crawled reads the same as a clean one. Expected'
|
|
587
|
+
+ ` bundle(s) not found on disk: ${named}. Usually \`vat build\` has not run since a skill was`
|
|
588
|
+
+ ' added, failed part-way, or wrote somewhere other than dist/ — or the bundle was deleted.'
|
|
589
|
+
+ ' Run `vat build` first, then re-run `vat verify`.')];
|
|
590
|
+
}
|
|
591
|
+
/**
|
|
592
|
+
* Build the `packaged-content` phase result from what the crawl found.
|
|
593
|
+
*
|
|
594
|
+
* 🚨 **Zero bundles is an ERROR, not a clean phase — and so is a MISSING one.**
|
|
595
|
+
* The phase is pushed unconditionally whenever `skills:` exists and it feeds the
|
|
596
|
+
* real exit code; `discoverSkillsFromConfig` returning `[]` on a typo'd glob —
|
|
597
|
+
* or `dist/` not having been built at all, or built somewhere else — gave the
|
|
598
|
+
* crawl nothing to walk, and nothing walked was zero findings was `success`,
|
|
599
|
+
* with no count in the document to say the phase had looked at nothing. `vat
|
|
600
|
+
* verify` exists to check the BUILT tree; a run that found none of it is not a
|
|
601
|
+
* verdict on it. Nor is a run that found half of it: with `bundlesInspected` as
|
|
602
|
+
* the only denominator, two discovered skills and one deleted bundle published
|
|
603
|
+
* `success` beside `bundlesInspected: 1`. The crawl now also carries what it
|
|
604
|
+
* should have found, and the document publishes both counts.
|
|
605
|
+
*
|
|
606
|
+
* Derived here, in the one function that produces this phase's document, and
|
|
607
|
+
* not in the command body, so no path through the orchestrator can publish
|
|
608
|
+
* `status: success` beside `bundlesInspected: 0` or beside a non-empty
|
|
609
|
+
* `bundlesMissing`. Through the shared mechanism in `run-integrity.ts`: one
|
|
610
|
+
* non-overridable `RESOURCE_CHECK_BROKEN` at `error`, which
|
|
611
|
+
* {@link exitCodeForPhases} then turns into exit 1. ONE, not two, when both
|
|
612
|
+
* apply: the missing-bundle refusal is derived first because it names paths,
|
|
613
|
+
* and {@link nothingCheckedFinding} stands down behind an existing
|
|
614
|
+
* run-integrity finding.
|
|
615
|
+
*
|
|
616
|
+
* Pure, and exported so the refusal is pinned without a project on disk.
|
|
617
|
+
*/
|
|
618
|
+
export function buildPackagedContentPhase(crawl) {
|
|
619
|
+
const { bundlesInspected, bundlesExpected, bundlesMissing, issues: found } = crawl;
|
|
620
|
+
const missing = missingBundlesFinding(crawl);
|
|
621
|
+
const issues = [
|
|
622
|
+
...missing,
|
|
623
|
+
...nothingCheckedFinding(bundlesInspected, [...missing, ...found], () => 'The packaged-content phase inspected 0 built skill bundles, so this phase is not a'
|
|
624
|
+
+ ' verdict: nothing was crawled for files that must not ship, and the document reads'
|
|
625
|
+
+ ' the same as a run over clean bundles. Either `vat build` has not run (or wrote'
|
|
626
|
+
+ ' somewhere other than dist/), or `skills.include` in vibe-agent-toolkit.config.yaml'
|
|
627
|
+
+ ' matched no SKILL.md — usually a typo in the glob. Run `vat build` first; `vat skills'
|
|
628
|
+
+ ' validate` lists what the globs discover.'),
|
|
629
|
+
...found,
|
|
630
|
+
];
|
|
631
|
+
return {
|
|
632
|
+
name: PACKAGED_CONTENT,
|
|
633
|
+
status: calculateValidationStatus(issues),
|
|
634
|
+
// The denominator, beside the counts it qualifies — and what it should have been.
|
|
635
|
+
bundlesInspected,
|
|
636
|
+
bundlesExpected,
|
|
637
|
+
bundlesMissing,
|
|
638
|
+
issueCounts: countBySeverity(issues),
|
|
639
|
+
issues: issues.map(toPublishedIssue),
|
|
640
|
+
};
|
|
641
|
+
}
|
|
520
642
|
/**
|
|
521
643
|
* `ConsistencyIssue` speaks the same severity vocabulary as `ValidationIssue`
|
|
522
644
|
* but carries a free-form `code`, so it is counted through this projection —
|
|
@@ -529,8 +651,37 @@ function asValidationIssues(issues) {
|
|
|
529
651
|
severity: issue.severity,
|
|
530
652
|
message: issue.message,
|
|
531
653
|
fix: issue.fix,
|
|
654
|
+
...(issue.location === undefined ? {} : { location: issue.location }),
|
|
655
|
+
...(issue.line === undefined ? {} : { line: issue.line }),
|
|
532
656
|
}));
|
|
533
657
|
}
|
|
658
|
+
/**
|
|
659
|
+
* Run the `packaged-content` phase: crawl, derive the phase document, and
|
|
660
|
+
* report THAT document's issues on stderr.
|
|
661
|
+
*
|
|
662
|
+
* 🚨 **The stderr report used to be gated on the crawl, one line before the
|
|
663
|
+
* refusal was derived.** `if (crawl.issues.length > 0) report(crawl.issues)`
|
|
664
|
+
* ran ahead of {@link buildPackagedContentPhase}, which is where the
|
|
665
|
+
* zero-bundle refusal is added — so on an unbuilt project the crawl found
|
|
666
|
+
* nothing, nothing was logged, the skills phase's `✅ All validations passed`
|
|
667
|
+
* stayed the last line on stderr, and the process exited 1 on a refusal that
|
|
668
|
+
* existed only in the YAML. Reporting from the phase result makes what stderr
|
|
669
|
+
* says and what the exit code is computed from one list, which is
|
|
670
|
+
* `run-integrity.ts` invariant 6.
|
|
671
|
+
*
|
|
672
|
+
* The round trip through `asValidationIssues` is deliberate rather than
|
|
673
|
+
* reporting the crawl's list plus a second derivation of the refusal: the
|
|
674
|
+
* document is the artifact of record, and stderr should render exactly what it
|
|
675
|
+
* carries, not a parallel computation that can drift from it.
|
|
676
|
+
*/
|
|
677
|
+
export function runPackagedContentPhase(projectRoot, discoveredSkills, logger) {
|
|
678
|
+
const crawl = checkPackagedAgentInstructionFiles(projectRoot, discoveredSkills);
|
|
679
|
+
const phase = buildPackagedContentPhase(crawl);
|
|
680
|
+
if (phase.issues.length > 0) {
|
|
681
|
+
reportPackagedContentIssues(asValidationIssues(phase.issues), logger);
|
|
682
|
+
}
|
|
683
|
+
return phase;
|
|
684
|
+
}
|
|
534
685
|
/**
|
|
535
686
|
* Run the in-process consistency check phase and record its outcome.
|
|
536
687
|
*
|
|
@@ -606,8 +757,12 @@ async function verifyTopLevelCommand(options, command) {
|
|
|
606
757
|
// answer used to be a different one: `consistency` crawled, while
|
|
607
758
|
// `files-config-dests` and `packaged-content` read `skills.config` keys and
|
|
608
759
|
// were therefore blind to every skill discovered by a glob.
|
|
760
|
+
// `'refuse'`: a verify over a population it could not see is the
|
|
761
|
+
// green-without-checking shape this command exists to refuse. The throw
|
|
762
|
+
// lands in the command's catch → `handleCommandError`, exit 2, with the
|
|
763
|
+
// crawl's own root-relative sentence.
|
|
609
764
|
const discoveredSkills = inProcess.length > 0 && config?.skills
|
|
610
|
-
? await discoverSkillsFromConfig(config.skills, projectRoot)
|
|
765
|
+
? await discoverSkillsFromConfig(config.skills, projectRoot, 'refuse')
|
|
611
766
|
: [];
|
|
612
767
|
// Post-build files config check: verify all dest paths exist in built output
|
|
613
768
|
if (inProcess.includes(FILES_CONFIG_DESTS)) {
|
|
@@ -626,18 +781,10 @@ async function verifyTopLevelCommand(options, command) {
|
|
|
626
781
|
// than only logging them — a file that must not ship has to be visible in
|
|
627
782
|
// `issueCounts`, or a CI consumer reads a clean report for a bundle carrying
|
|
628
783
|
// one. Warnings do not fail the run; the exit code still comes from errors.
|
|
784
|
+
// The zero-bundle refusal is derived inside the builder and logged from the
|
|
785
|
+
// built phase, so stderr, the document and the exit code carry one list.
|
|
629
786
|
if (inProcess.includes(PACKAGED_CONTENT)) {
|
|
630
|
-
|
|
631
|
-
if (packagedIssues.length > 0) {
|
|
632
|
-
reportPackagedContentIssues(packagedIssues, logger);
|
|
633
|
-
}
|
|
634
|
-
const packagedResult = {
|
|
635
|
-
name: PACKAGED_CONTENT,
|
|
636
|
-
status: calculateValidationStatus(packagedIssues),
|
|
637
|
-
issueCounts: countBySeverity(packagedIssues),
|
|
638
|
-
issues: packagedIssues.map(toPublishedIssue),
|
|
639
|
-
};
|
|
640
|
-
phaseResults.push(packagedResult);
|
|
787
|
+
phaseResults.push(runPackagedContentPhase(projectRoot, discoveredSkills, logger));
|
|
641
788
|
}
|
|
642
789
|
// Consistency check: cross-reference discovered skills vs package.json and plugin assignments
|
|
643
790
|
if (inProcess.includes('consistency')) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../../src/commands/verify.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../../src/commands/verify.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
* `vibe-agent-toolkit.config.yaml` contributes.
|
|
11
11
|
*/
|
|
12
12
|
import type { DeclaredEvalSuite, SkillPackagingConfig } from '@vibe-agent-toolkit/agent-skills';
|
|
13
|
+
import { type DiscoveryUnreadablePolicy } from '../commands/skills/skill-discovery.js';
|
|
13
14
|
import { type loadConfig } from '../utils/config-loader.js';
|
|
14
15
|
/** Clear the per-root discovery caches (call when fixtures mutate between in-process runs). */
|
|
15
16
|
export declare function resetSkillDiscoveryCache(): void;
|
|
@@ -22,19 +23,62 @@ export declare function resetSkillDiscoveryCache(): void;
|
|
|
22
23
|
* skill's eval suite is an answer key no matter whose bundle is being built.
|
|
23
24
|
*
|
|
24
25
|
* Memoized per config root so a run over N skills under one root pays for discovery
|
|
25
|
-
* once, not N times
|
|
26
|
-
*
|
|
26
|
+
* once, not N times — and served from the SAME discovery {@link getDiscoveredSkillsByPath}
|
|
27
|
+
* ran for {@link resolveSkillPackagingConfig}, so one root is crawled once per run, not
|
|
28
|
+
* once per question, and a crawl that refuses answers both questions the same way.
|
|
29
|
+
* Returns `[]` when there is no governing config or no skills section — wild mode,
|
|
30
|
+
* where there is no project to enumerate.
|
|
31
|
+
*
|
|
32
|
+
* ⚠️ Swallows exactly one failure: a config that cannot be LOADED (`ConfigLoadError`),
|
|
33
|
+
* which the caller's own config resolution has already reported. A failed DISCOVERY is
|
|
34
|
+
* not that and propagates — see {@link resolveSkillPackagingConfig} for what it means.
|
|
35
|
+
* The old bare `catch` here treated the two alike, so a refused directory listing
|
|
36
|
+
* quietly became "this project declares no eval suites".
|
|
37
|
+
*/
|
|
38
|
+
export declare function resolveProjectDeclaredEvalSuites(skillPath: string, unreadable: DiscoveryUnreadablePolicy): Promise<DeclaredEvalSuite[]>;
|
|
39
|
+
/**
|
|
40
|
+
* The config root's declared skills, as absolute SKILL.md path → declared name.
|
|
41
|
+
*
|
|
42
|
+
* One expansion of `skills.include` per root per run. A discovery that THROWS is
|
|
43
|
+
* not memoized — the next question re-asks the filesystem — and under `'refuse'`
|
|
44
|
+
* it throws whenever the crawl refuses a directory it cannot list
|
|
45
|
+
* (`DirectoryListingRefusedError` from `@vibe-agent-toolkit/utils/crawl`): the
|
|
46
|
+
* declared population is then unknown, and the caller decides whether that stops
|
|
47
|
+
* the command or degrades it. A caller that degrades passes `{ degrade }` and
|
|
48
|
+
* gets every skill the crawl COULD see, with the refusal handed to its handler
|
|
49
|
+
* — see `DiscoveryUnreadablePolicy`. Nothing here decides for them.
|
|
50
|
+
*
|
|
51
|
+
* ⚠️ The memo is per root, not per policy: the first question about a root
|
|
52
|
+
* decides how that root's refusals are handled for the rest of the run. Every
|
|
53
|
+
* command resets the memo at its start (`resetSkillDiscoveryCache`), and only
|
|
54
|
+
* `vat audit` degrades, so a run never mixes the two.
|
|
27
55
|
*/
|
|
28
|
-
export declare function
|
|
29
|
-
export declare function getDiscoveredSkillsByPath(skillsSection: NonNullable<ReturnType<typeof loadConfig>>['skills'], configRoot: string): Promise<Map<string, string>>;
|
|
56
|
+
export declare function getDiscoveredSkillsByPath(skillsSection: NonNullable<ReturnType<typeof loadConfig>>['skills'], configRoot: string, unreadable: DiscoveryUnreadablePolicy): Promise<Map<string, string>>;
|
|
30
57
|
/**
|
|
31
58
|
* Resolve the merged packaging config for one SKILL.md by walking UP to its
|
|
32
59
|
* nearest-ancestor config and matching the skill by absolute path. Returns the
|
|
33
60
|
* FULL merge (`skills.defaults` + `skills.config[name]`, keeping
|
|
34
61
|
* `validation.allow`). `null` when there is no governing config, no `skills`
|
|
35
62
|
* section, or the skill is not declared (wild mode).
|
|
63
|
+
*
|
|
64
|
+
* 🚨 `null` means "no config governs this skill" and NOTHING else. Two failures
|
|
65
|
+
* propagate instead of being folded into it, because both mean the answer is
|
|
66
|
+
* unknown rather than "none":
|
|
67
|
+
* - `ConfigLoadError` — the governing config exists and could not be loaded;
|
|
68
|
+
* - `DirectoryListingRefusedError` — the config loaded, but expanding its
|
|
69
|
+
* `skills.include` reached a directory the crawl could not list, so the
|
|
70
|
+
* declared population (and whether this skill is in it) is unknown.
|
|
71
|
+
* The second used to be swallowed by a bare `catch { return null; }` around the
|
|
72
|
+
* discovery, with no stated reason. Under it, ONE `chmod 000` directory anywhere
|
|
73
|
+
* an include pattern reaches returned `null` for EVERY skill under the config:
|
|
74
|
+
* `vat audit` validated them all config-free, reported `success`, exited 0 and
|
|
75
|
+
* named the directory only under `--debug`. A caller that would rather degrade
|
|
76
|
+
* than stop passes `{ degrade }` — `vat audit` does, files a
|
|
77
|
+
* `SCAN_PATH_UNREADABLE` finding on the directory, and every skill the crawl
|
|
78
|
+
* could still see keeps its config; the rest say `'refuse'`, as the same
|
|
79
|
+
* refusal already stops `vat skills validate` and `vat skills build`.
|
|
36
80
|
*/
|
|
37
|
-
export declare function resolveSkillPackagingConfig(skillPath: string): Promise<SkillPackagingConfig | null>;
|
|
81
|
+
export declare function resolveSkillPackagingConfig(skillPath: string, unreadable: DiscoveryUnreadablePolicy): Promise<SkillPackagingConfig | null>;
|
|
38
82
|
/**
|
|
39
83
|
* Audit's display variant: keep `validation.severity`, drop `validation.allow`
|
|
40
84
|
* (audit shows every finding, including ones an `allow` entry would suppress).
|