@vibe-agent-toolkit/cli 0.2.0-rc.5 → 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 +726 -127
- 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/claude-config.d.ts.map +1 -1
- package/dist/commands/claude/claude-config.js +6 -0
- package/dist/commands/claude/claude-config.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/helpers.d.ts +59 -1
- package/dist/commands/claude/org/helpers.d.ts.map +1 -1
- package/dist/commands/claude/org/helpers.js +58 -7
- package/dist/commands/claude/org/helpers.js.map +1 -1
- package/dist/commands/claude/org/index.d.ts.map +1 -1
- package/dist/commands/claude/org/index.js +24 -16
- package/dist/commands/claude/org/index.js.map +1 -1
- package/dist/commands/claude/org/skills.d.ts +509 -0
- package/dist/commands/claude/org/skills.d.ts.map +1 -1
- package/dist/commands/claude/org/skills.js +1364 -94
- package/dist/commands/claude/org/skills.js.map +1 -1
- package/dist/commands/claude/org/users.d.ts.map +1 -1
- package/dist/commands/claude/org/users.js +3 -1
- package/dist/commands/claude/org/users.js.map +1 -1
- package/dist/commands/claude/org/workspaces.d.ts.map +1 -1
- package/dist/commands/claude/org/workspaces.js +5 -2
- package/dist/commands/claude/org/workspaces.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-checklist.d.ts.map +1 -1
- package/dist/commands/skill/review-checklist.js +35 -0
- package/dist/commands/skill/review-checklist.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/configure.d.ts +37 -0
- package/dist/commands/skill/test/configure.d.ts.map +1 -1
- package/dist/commands/skill/test/configure.js +57 -12
- package/dist/commands/skill/test/configure.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/config-loader.d.ts.map +1 -1
- package/dist/utils/config-loader.js +22 -6
- package/dist/utils/config-loader.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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../../src/commands/resources/check.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../../src/commands/resources/check.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,6 +47,19 @@
|
|
|
47
47
|
* and exited 0. `requireDeclaredCheck` refuses it before the crawl, naming the
|
|
48
48
|
* declared set. A gate that cannot fail is worse than no gate.
|
|
49
49
|
*
|
|
50
|
+
* ## 🔑 NO checks at all is the same refusal, and the one that shipped longest
|
|
51
|
+
*
|
|
52
|
+
* A project with a valid config and no `checks:` block reported `status:
|
|
53
|
+
* success`, `checksRun: 0`, exit 0 — so DELETING the `checks:` block silently
|
|
54
|
+
* deleted the gate and nothing anywhere said so. A gate that checked nothing is
|
|
55
|
+
* indistinguishable from a gate that was removed, and the entire argument for
|
|
56
|
+
* having these gates is that you never let those two look alike. It is now a
|
|
57
|
+
* `RESOURCE_CHECK_BROKEN` error like the other three — see
|
|
58
|
+
* {@link noCheckRanFinding}, and `RUN_INTEGRITY_CODE` for why one code
|
|
59
|
+
* covers all four. Declaring no checks is a legitimate CHOICE; running a gate
|
|
60
|
+
* that can only pass is not, so the remedy is to take the command out of the
|
|
61
|
+
* pipeline.
|
|
62
|
+
*
|
|
50
63
|
* ## 🔑 SQL is the surface a user OPTED IN to, so no BUILT-IN check may be SQL
|
|
51
64
|
*
|
|
52
65
|
* Every check this verb runs is adopter-declared: {@link checkCommand} reads
|
|
@@ -158,10 +171,61 @@ import { formatDurationSecs } from '../../utils/duration.js';
|
|
|
158
171
|
import { resolveIssueSeverity } from '../../utils/issue-severity.js';
|
|
159
172
|
import { createLogger } from '../../utils/logger.js';
|
|
160
173
|
import { writeJsonOutput, writeStdoutSync, writeYamlOutput } from '../../utils/output.js';
|
|
161
|
-
import { projectRootOrLoudCwd, projectRootOrNull } from '../../utils/project-root-policy.js';
|
|
174
|
+
import { assertDirectoryArgument, projectRootOrLoudCwd, projectRootOrNull } from '../../utils/project-root-policy.js';
|
|
162
175
|
import { withQueriedProjection, } from '../../utils/projection-query.js';
|
|
176
|
+
import { nothingCheckedFinding, runIntegrityFinding } from '../../utils/run-integrity.js';
|
|
163
177
|
import { createProgressWriter, parseProgressLog, unitInFlight, } from './check-progress.js';
|
|
164
178
|
import { parseBudgetSeconds, requireSupervisableFlags, runsInThisProcess, superviseCheck, withProgressLog, } from './check-supervisor.js';
|
|
179
|
+
/**
|
|
180
|
+
* The refusal for a run in which NO check executed.
|
|
181
|
+
*
|
|
182
|
+
* 🚨 **The defect this closes shipped, and it is the shape by which a gate gets
|
|
183
|
+
* silently deleted.** A project with a valid `vibe-agent-toolkit.config.yaml`
|
|
184
|
+
* and no `checks:` block produced `status: success`, `checksRun: 0`, exit 0 — a
|
|
185
|
+
* passing gate document. Delete the `checks:` block and the CI step keeps going
|
|
186
|
+
* green forever; the only thing that said otherwise was a stderr warning nothing
|
|
187
|
+
* parses. **A gate that checked nothing is indistinguishable from a gate that
|
|
188
|
+
* was removed, and the whole argument for having these gates is that you never
|
|
189
|
+
* let those two look alike.**
|
|
190
|
+
*
|
|
191
|
+
* It is the third instance of the shape in this release — `vat claude budget`
|
|
192
|
+
* answered `success` on a path that matched no working location, and the repo's
|
|
193
|
+
* audit quality gate had a green path over zero parsed findings — so it is
|
|
194
|
+
* closed the way those were rather than a third way: a non-overridable
|
|
195
|
+
* `RUN_INTEGRITY_CODE` at `error`, derived in the report builder.
|
|
196
|
+
*
|
|
197
|
+
* 🔑 **Derived in {@link buildCheckOutputData}, not asserted by the handler.**
|
|
198
|
+
* That placement is the guarantee. The builder is where `checksRun` is computed
|
|
199
|
+
* and every lane's document goes through it — the completed run, the recovered
|
|
200
|
+
* document of an interrupted one, the child a supervisor forwards — so "the
|
|
201
|
+
* denominator is zero and the status is clean" is unrepresentable by
|
|
202
|
+
* construction, and a fourth lane added later inherits the refusal instead of
|
|
203
|
+
* having to remember it. It also lands after `resolveIssueSeverity`, which is
|
|
204
|
+
* belt and braces: the code is already unreachable from a `severity` key.
|
|
205
|
+
*
|
|
206
|
+
* The mechanism — ask the DENOMINATOR never the config, one report per
|
|
207
|
+
* situation, stand down behind an existing run-integrity finding — is the shared
|
|
208
|
+
* {@link nothingCheckedFinding}; this wrapper owns only the message. The
|
|
209
|
+
* stand-down matters here for an interrupted run, which recovers zero costs when
|
|
210
|
+
* the kill landed before the first statement finished and already carries
|
|
211
|
+
* {@link interruptedRunFinding}, the more specific of the two claims. A `--check`
|
|
212
|
+
* filter that matched nothing is refused earlier by {@link requireDeclaredCheck},
|
|
213
|
+
* and must stay refused even if that guard is ever widened.
|
|
214
|
+
*
|
|
215
|
+
* @param costs - One record per check that EXECUTED; its length is `checksRun`
|
|
216
|
+
* @param issues - What the run already found, so an existing run-integrity
|
|
217
|
+
* report is not duplicated
|
|
218
|
+
* @returns The finding, or nothing when at least one check ran
|
|
219
|
+
*/
|
|
220
|
+
function noCheckRanFinding(costs, issues) {
|
|
221
|
+
return nothingCheckedFinding(costs.length, issues, () => 'No check ran, so this document is not a verdict: a gate that checked nothing'
|
|
222
|
+
+ ' produces the same report as a gate that was removed, and this run cannot tell'
|
|
223
|
+
+ ' you which happened.'
|
|
224
|
+
+ ' Declare checks under `resources.checks` in vibe-agent-toolkit.config.yaml —'
|
|
225
|
+
+ ' each is a description plus one SQL statement selecting the rows that VIOLATE it —'
|
|
226
|
+
+ ' and if this project deliberately has none, take `vat resources check` out of the'
|
|
227
|
+
+ ' pipeline rather than leaving a step that can only pass.');
|
|
228
|
+
}
|
|
165
229
|
/**
|
|
166
230
|
* Build the check report.
|
|
167
231
|
*
|
|
@@ -180,11 +244,16 @@ import { parseBudgetSeconds, requireSupervisableFlags, runsInThisProcess, superv
|
|
|
180
244
|
* sum to `durationSecs`. The population is paid once and shared by every check;
|
|
181
245
|
* see {@link CheckCost} for why it is charged to none of them.
|
|
182
246
|
*
|
|
247
|
+
* 🔑 A denominator of zero is refused HERE rather than published — see
|
|
248
|
+
* {@link noCheckRanFinding}. This is the one function every lane's document
|
|
249
|
+
* passes through, so deriving the refusal in it is what makes "checked nothing,
|
|
250
|
+
* status clean" unrepresentable rather than merely unwritten.
|
|
251
|
+
*
|
|
183
252
|
* @param input - The findings and the provenance of the run behind them
|
|
184
253
|
* @returns The document to serialize
|
|
185
254
|
*/
|
|
186
255
|
export function buildCheckOutputData(input) {
|
|
187
|
-
const issues = [...input.issues];
|
|
256
|
+
const issues = [...noCheckRanFinding(input.costs, input.issues), ...input.issues];
|
|
188
257
|
return {
|
|
189
258
|
status: calculateValidationStatus(issues),
|
|
190
259
|
root: input.root,
|
|
@@ -192,6 +261,12 @@ export function buildCheckOutputData(input) {
|
|
|
192
261
|
// Beside the origin, because a `population: store` a reader cannot price is
|
|
193
262
|
// a label taken on faith. Charged to no check — see {@link CheckCost}.
|
|
194
263
|
populationSecs: formatDurationSecs(input.populationMs),
|
|
264
|
+
// Published here too, and not only by `query`, because this verb pays it
|
|
265
|
+
// identically — the lens is evaluated before the first statement runs. A
|
|
266
|
+
// document that priced the population but not the lens would attribute the
|
|
267
|
+
// lens's cost to whichever rule the reader happened to be looking at, which
|
|
268
|
+
// is the same defect `populationSecs` exists to prevent.
|
|
269
|
+
lensSecs: formatDurationSecs(input.lensMs),
|
|
195
270
|
// The denominator. See above: without it an empty findings list is
|
|
196
271
|
// ambiguous. Derived from `checks`, never carried beside it.
|
|
197
272
|
checksRun: input.costs.length,
|
|
@@ -312,12 +387,8 @@ function timed(now, run) {
|
|
|
312
387
|
* @returns The run-integrity finding
|
|
313
388
|
*/
|
|
314
389
|
function brokenCheckFinding(name, error) {
|
|
315
|
-
return {
|
|
316
|
-
|
|
317
|
-
severity: 'error',
|
|
318
|
-
message: `The check "${name}" could not run, so it is asserting nothing: `
|
|
319
|
-
+ (error instanceof Error ? error.message : String(error)),
|
|
320
|
-
};
|
|
390
|
+
return runIntegrityFinding(`The check "${name}" could not run, so it is asserting nothing: `
|
|
391
|
+
+ (error instanceof Error ? error.message : String(error)));
|
|
321
392
|
}
|
|
322
393
|
/**
|
|
323
394
|
* Run every declared check, collect its findings, and price it.
|
|
@@ -460,9 +531,11 @@ export function requireDeclaredCheck(checks, only) {
|
|
|
460
531
|
* as the "no checks are declared" warning in {@link checkCommand}.
|
|
461
532
|
*
|
|
462
533
|
* 📌 The registry half of the key space needs no equivalent: a misspelled
|
|
463
|
-
* REGISTRY code is already refused by `SeverityOverrideCodeSchema
|
|
464
|
-
*
|
|
465
|
-
*
|
|
534
|
+
* REGISTRY code is already refused by `SeverityOverrideCodeSchema`, whose
|
|
535
|
+
* `SEVERITY_KEY_PATTERN` alternates every registry code name with the `CUSTOM:`
|
|
536
|
+
* namespace — so a key has to BE one of the shipped codes to match that half.
|
|
537
|
+
* Only the open `CUSTOM:` half can name something that does not exist, because
|
|
538
|
+
* only it matches on shape rather than on identity.
|
|
466
539
|
*
|
|
467
540
|
* @param checks - The project's `resources.checks`
|
|
468
541
|
* @param validation - The project's `resources.validation`, or undefined
|
|
@@ -506,18 +579,16 @@ export function warnUndeclaredOverrides(checks, validation, logger) {
|
|
|
506
579
|
* otherwise populates as empty and reports success". That guard covers blob
|
|
507
580
|
* refusals only; this one covers the extent.
|
|
508
581
|
*
|
|
509
|
-
* 🪤 **Only when checks actually RAN.**
|
|
510
|
-
*
|
|
511
|
-
*
|
|
512
|
-
*
|
|
582
|
+
* 🪤 **Only when checks actually RAN.** A run with no rules at all is refused
|
|
583
|
+
* too — it is the same class one level further out — but by
|
|
584
|
+
* {@link noCheckRanFinding}, whose message is about the missing RULES rather
|
|
585
|
+
* than about the missing rows. Firing both would hand the operator two reports
|
|
586
|
+
* about one situation, and this is the less specific of the two: "the 0 checks
|
|
587
|
+
* that ran asserted nothing over 0 members" sends them to inspect a
|
|
588
|
+
* `.gitignore` when what they are missing is a `checks:` block.
|
|
513
589
|
*
|
|
514
|
-
* 🪤 **`
|
|
515
|
-
*
|
|
516
|
-
* did not execute meaningfully, so the green means nothing* — and it needs the
|
|
517
|
-
* identical non-overridability, which `ValidationConfigSchema` grants by refusing
|
|
518
|
-
* that code as a `severity` key. A sibling code would buy a consumer nothing the
|
|
519
|
-
* message does not already say, while adding a second thing an adopter's CI has
|
|
520
|
-
* to know to look for.
|
|
590
|
+
* 🪤 **`RUN_INTEGRITY_CODE`, not a code of its own** — see that constant
|
|
591
|
+
* for why all four refusals in this verb share one.
|
|
521
592
|
*
|
|
522
593
|
* @param checksRun - How many checks EXECUTED. Under `--check` that is fewer
|
|
523
594
|
* than the project declares, which is why the message says "ran" and not
|
|
@@ -528,17 +599,13 @@ export function warnUndeclaredOverrides(checks, validation, logger) {
|
|
|
528
599
|
function emptyCorpusFinding(checksRun, membersEnumerated) {
|
|
529
600
|
if (checksRun === 0 || membersEnumerated > 0)
|
|
530
601
|
return [];
|
|
531
|
-
return [{
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
+ ' the checkout is complete rather than shallow or sparse, and at whether'
|
|
539
|
-
+ ' `root` in this report is the directory you meant.'
|
|
540
|
-
+ ' `vat resources scan` over the same path lists what an enumeration finds.',
|
|
541
|
-
}];
|
|
602
|
+
return [runIntegrityFinding(`The projection enumerated 0 members, so the ${checksRun} check(s) that ran`
|
|
603
|
+
+ ' asserted nothing: there were no rows for any statement to select and'
|
|
604
|
+
+ ' zero findings means only that the corpus was empty.'
|
|
605
|
+
+ ' Look at `.gitignore` (one broad pattern declines every file), at whether'
|
|
606
|
+
+ ' the checkout is complete rather than shallow or sparse, and at whether'
|
|
607
|
+
+ ' `root` in this report is the directory you meant.'
|
|
608
|
+
+ ' `vat resources scan` over the same path lists what an enumeration finds.')];
|
|
542
609
|
}
|
|
543
610
|
/**
|
|
544
611
|
* Where the run was when it stopped, as a phrase.
|
|
@@ -793,12 +860,16 @@ const INCOMPLETE_NOTICE = ' ⚠️ The checks listed under `checks` DID complete
|
|
|
793
860
|
/**
|
|
794
861
|
* The finding for a run that was interrupted, however it was interrupted.
|
|
795
862
|
*
|
|
796
|
-
* 🪤 **`
|
|
797
|
-
*
|
|
798
|
-
*
|
|
799
|
-
*
|
|
800
|
-
*
|
|
801
|
-
*
|
|
863
|
+
* 🪤 **`RUN_INTEGRITY_CODE`, for the reason that constant gives.** An
|
|
864
|
+
* interrupted run must never be silenceable by the config of the very project
|
|
865
|
+
* whose SQL hung.
|
|
866
|
+
*
|
|
867
|
+
* 🔑 **This is the MORE SPECIFIC of two claims that can be true at once.** A run
|
|
868
|
+
* killed before its first statement completed recovers zero costs, which
|
|
869
|
+
* {@link noCheckRanFinding} also refuses — so that one stands down when this
|
|
870
|
+
* one is present. The dedupe there is order-independent (`issues.some(code ===
|
|
871
|
+
* RUN_INTEGRITY_CODE)`), so this finding only has to be IN the issue list of an
|
|
872
|
+
* interrupted document, not first in it.
|
|
802
873
|
*
|
|
803
874
|
* @param inFlight - What the run was doing when the log stopped growing
|
|
804
875
|
* @param ending - Which way the run ended, and what the operator can do
|
|
@@ -811,7 +882,7 @@ function interruptedRunFinding(inFlight, ending) {
|
|
|
811
882
|
: `This run DIED before it finished: ${deathPhrase(ending.death)} ${where}, so the checks`
|
|
812
883
|
+ ' after it never executed and this document is not a verdict.'
|
|
813
884
|
+ deathRemedy(ending.death);
|
|
814
|
-
return
|
|
885
|
+
return runIntegrityFinding(message + INCOMPLETE_NOTICE);
|
|
815
886
|
}
|
|
816
887
|
/**
|
|
817
888
|
* What a WATCHDOG kill means, which depends entirely on what was in flight.
|
|
@@ -916,6 +987,7 @@ export function buildInterruptedCheckInput(options) {
|
|
|
916
987
|
durationMs,
|
|
917
988
|
population: population.population,
|
|
918
989
|
populationMs: population.populationMs,
|
|
990
|
+
lensMs: population.lensMs,
|
|
919
991
|
membersEnumerated: population.membersEnumerated,
|
|
920
992
|
issues: [interruptedRunFinding(unitInFlight(entries), ending)],
|
|
921
993
|
// 🪤 Rebuilt field by field rather than passed through. The log's check
|
|
@@ -1108,13 +1180,24 @@ async function superviseCheckRun(options) {
|
|
|
1108
1180
|
* bound enforced from outside itself, and a hang becomes a bounded failure
|
|
1109
1181
|
* instead of a job that burns its runner minutes and reports nothing.
|
|
1110
1182
|
*
|
|
1111
|
-
*
|
|
1183
|
+
* ## `[path]` locates the project; a `WHERE` clause is the only scope a check has
|
|
1184
|
+
*
|
|
1185
|
+
* Same contract as `vat resources query`, for the same reason (see
|
|
1186
|
+
* `queryCommand`): the projection is the whole tracked tree, so the argument is
|
|
1187
|
+
* where root discovery starts and nothing more. A locator that names no
|
|
1188
|
+
* directory is refused HERE, before the fork below — the parent would otherwise
|
|
1189
|
+
* resolve it silently to the cwd's project and spawn a child to run every check
|
|
1190
|
+
* over a tree the operator did not name, at exit 0.
|
|
1191
|
+
*
|
|
1192
|
+
* @param pathArg - Where to look for the project, or omitted for the current directory
|
|
1112
1193
|
* @param options - Parsed command-line options
|
|
1113
1194
|
*/
|
|
1114
1195
|
export async function checkCommand(pathArg, options) {
|
|
1115
1196
|
const logger = createLogger({ debug: options.debug ?? false });
|
|
1116
1197
|
const startTime = Date.now();
|
|
1117
1198
|
try {
|
|
1199
|
+
if (pathArg !== undefined)
|
|
1200
|
+
assertDirectoryArgument(pathArg);
|
|
1118
1201
|
const budgetSecs = parseBudgetSeconds(options.budget);
|
|
1119
1202
|
// Before anything is spawned: a budget the fork below would silently ignore
|
|
1120
1203
|
// is an operator error, not a bound.
|
|
@@ -1152,9 +1235,12 @@ export async function checkCommand(pathArg, options) {
|
|
|
1152
1235
|
const config = loadConfigCached(projectRoot);
|
|
1153
1236
|
const checks = config?.resources?.checks;
|
|
1154
1237
|
if (checks === undefined || Object.keys(checks).length === 0) {
|
|
1155
|
-
//
|
|
1156
|
-
//
|
|
1157
|
-
//
|
|
1238
|
+
// 🪤 Stderr only, and it decides NOTHING. The refusal lives in
|
|
1239
|
+
// {@link noCheckRanFinding}, on the document, because the document is
|
|
1240
|
+
// what the exit code is computed from and what CI parses; this warning is
|
|
1241
|
+
// the same statement addressed to the human, and the two are one statement
|
|
1242
|
+
// per audience. It used to be the ONLY channel, and the document said the
|
|
1243
|
+
// opposite — `status: success`, exit 0 — which is the half that matters.
|
|
1158
1244
|
logger.warn('No checks are declared. Add them under `resources.checks` in'
|
|
1159
1245
|
+ ' vibe-agent-toolkit.config.yaml; each is a description plus one SQL'
|
|
1160
1246
|
+ ' statement selecting the rows that VIOLATE it.');
|
|
@@ -1223,6 +1309,7 @@ async function runOutcome(options) {
|
|
|
1223
1309
|
kind: 'population',
|
|
1224
1310
|
population: provenance.population,
|
|
1225
1311
|
populationMs: provenance.populationMs,
|
|
1312
|
+
lensMs: provenance.lensMs,
|
|
1226
1313
|
membersEnumerated: extent.membersEnumerated,
|
|
1227
1314
|
});
|
|
1228
1315
|
// 🪤 `checks-complete` is NOT emitted here. It used to be, and that put
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check.js","sourceRoot":"","sources":["../../../src/commands/resources/check.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"check.js","sourceRoot":"","sources":["../../../src/commands/resources/check.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/resources/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/resources/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAgC5C,wBAAgB,sBAAsB,IAAI,OAAO,CAqiBhD;AAED,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Resources command group
|
|
3
3
|
*/
|
|
4
4
|
import { Command, Option } from 'commander';
|
|
5
|
+
import { collectRepeated } from '../../utils/repeatable-option.js';
|
|
5
6
|
import { checkCommand } from './check.js';
|
|
6
7
|
import { queryCommand } from './query.js';
|
|
7
8
|
import { scanCommand } from './scan.js';
|
|
@@ -83,7 +84,10 @@ Examples:
|
|
|
83
84
|
.command('query <sql> [path]')
|
|
84
85
|
.description('Run one read-only SQL statement against the resource projection')
|
|
85
86
|
.option('--debug', DEBUG_HELP)
|
|
86
|
-
|
|
87
|
+
// Repeatable, NOT variadic: a variadic option consumes every token up to the
|
|
88
|
+
// next flag, which on this command means the [path] positional. See
|
|
89
|
+
// collectRepeated for the incident.
|
|
90
|
+
.option('--param <value>', 'A value bound to the next ? placeholder in the statement (repeatable, bound in the order given)', collectRepeated)
|
|
87
91
|
.addOption(yamlOrJsonFormat())
|
|
88
92
|
.action(queryCommand)
|
|
89
93
|
.addHelpText('after', `
|
|
@@ -143,8 +147,19 @@ Output Fields:
|
|
|
143
147
|
0/1, a date and a JSON column as text. Values are NOT decoded,
|
|
144
148
|
because decoding needs a table spec and arbitrary SQL has none
|
|
145
149
|
|
|
150
|
+
Path Argument:
|
|
151
|
+
[path] says where to LOOK FOR the project -- root discovery walks up from
|
|
152
|
+
it -- and never narrows the corpus. The projection is always the whole
|
|
153
|
+
tracked tree, so \`vat resources query <sql> docs/\` answers about the same
|
|
154
|
+
tree as \`vat resources query <sql>\` (root in the document names it); a
|
|
155
|
+
WHERE clause on path is the only scope a statement has. This differs from
|
|
156
|
+
scan and validate, whose [path] restricts the crawl. A path that does not
|
|
157
|
+
exist, or is not a directory, is refused (exit 2).
|
|
158
|
+
|
|
146
159
|
Exit Codes:
|
|
147
|
-
0 - The statement ran
|
|
160
|
+
0 - The statement ran
|
|
161
|
+
2 - The statement was refused (not a query, a second statement, a placeholder
|
|
162
|
+
with no --param behind it), [path] names no directory, or the crawl failed
|
|
148
163
|
|
|
149
164
|
Requirements:
|
|
150
165
|
projectRoot: optional (falls back to cwd with a warning)
|
|
@@ -223,7 +238,11 @@ Checks run over the TRACKED TREE, not your configured resource set:
|
|
|
223
238
|
directory. A correct "every ADR carries frontmatter" check produced a real
|
|
224
239
|
false finding on a frozen historical file nobody intends to fix.
|
|
225
240
|
|
|
226
|
-
Narrow the check itself -- a WHERE clause is the only scope it has
|
|
241
|
+
Narrow the check itself -- a WHERE clause is the only scope it has. The
|
|
242
|
+
[path] argument does not narrow it either: it says where to LOOK FOR the
|
|
243
|
+
project (root discovery walks up from it), and a path that does not exist
|
|
244
|
+
or is not a directory is refused at exit 2 rather than resolved to
|
|
245
|
+
whatever project the current directory is in.
|
|
227
246
|
|
|
228
247
|
sql: |
|
|
229
248
|
SELECT path FROM resource_realizations
|
|
@@ -236,7 +255,13 @@ A check with NOTHING TO RUN OVER fails the same way:
|
|
|
236
255
|
membersEnumerated is 0, that is reported as RESOURCE_CHECK_BROKEN at error
|
|
237
256
|
and the run fails. Usual causes: a broad .gitignore pattern, a shallow or
|
|
238
257
|
sparse CI checkout, or a root that resolved somewhere other than intended.
|
|
239
|
-
|
|
258
|
+
|
|
259
|
+
A run with NO CHECKS AT ALL fails too:
|
|
260
|
+
Declaring none is reported the same way and for a stronger reason: a gate
|
|
261
|
+
that checked nothing produces the same document as a gate that was deleted,
|
|
262
|
+
so \`checksRun: 0\` is RESOURCE_CHECK_BROKEN at error and exit 1. If this
|
|
263
|
+
project deliberately has no checks, take the command out of the pipeline
|
|
264
|
+
rather than leaving a step that can only pass.
|
|
240
265
|
|
|
241
266
|
A run that HANGS is killed and reported, not waited on:
|
|
242
267
|
A check's SQL is adopter-authored and unbounded -- an accidental cross join
|
|
@@ -320,11 +345,13 @@ Output Fields:
|
|
|
320
345
|
|
|
321
346
|
Exit Codes:
|
|
322
347
|
0 - No error-severity findings
|
|
323
|
-
1 - At least one (a violation, a broken check, an empty corpus,
|
|
324
|
-
for making no progress within --budget,
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
--
|
|
348
|
+
1 - At least one (a violation, a broken check, an empty corpus, no check
|
|
349
|
+
having run at all, a run killed for making no progress within --budget,
|
|
350
|
+
or a run whose child DIED)
|
|
351
|
+
2 - System error, an unknown --check name, a [path] that names no directory,
|
|
352
|
+
an unusable --budget (an empty one, one that means zero without being
|
|
353
|
+
written 0, or one passed with --cost-log), or a run interrupted before
|
|
354
|
+
its population completed
|
|
328
355
|
|
|
329
356
|
Examples:
|
|
330
357
|
$ vat resources check
|
|
@@ -406,6 +433,11 @@ Output Fields (issues found):
|
|
|
406
433
|
and a file that emitted nothing has no row — filesScanned above stays
|
|
407
434
|
the true denominator.
|
|
408
435
|
|
|
436
|
+
filesScanned: 0 is never a pass. A run that scanned no file (a --collection
|
|
437
|
+
that matched nothing, a path with no markdown, an enumeration emptied by
|
|
438
|
+
exclude or a sparse checkout) is reported as RESOURCE_CHECK_BROKEN at error
|
|
439
|
+
and exits 1 — the document is not a verdict, and the code is not overridable.
|
|
440
|
+
|
|
409
441
|
Verbosity:
|
|
410
442
|
-v, --verbose
|
|
411
443
|
Replaces each file's counts row with its per-issue detail (line, column,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/resources/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,2DAA2D;AAC3D,MAAM,UAAU,GAAG,sBAAsB,CAAC;AAE1C,uEAAuE;AACvE,MAAM,WAAW,GAAG,MAAM,CAAC;AAC3B,MAAM,WAAW,GAAG,MAAM,CAAC;AAE3B;;;;;;;;;GASG;AACH,SAAS,gBAAgB;IACvB,OAAO,IAAI,MAAM,CAAC,mBAAmB,EAAE,uCAAuC,CAAC;SAC5E,OAAO,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;SACnC,OAAO,CAAC,WAAW,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,MAAM,SAAS,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IAE3C,SAAS;SACN,WAAW,CAAC,oEAAoE,CAAC;SACjF,WAAW,CAAC,KAAK,CAAC,CAAC,uDAAuD;SAC1E,WAAW,CACV,OAAO,EACP;;;;;;CAML,CACI,CAAC;IAEJ,SAAS;SACN,OAAO,CAAC,aAAa,CAAC;SACtB,WAAW,CAAC,0CAA0C,CAAC;SACvD,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC;SAC7B,MAAM,CAAC,WAAW,EAAE,kCAAkC,CAAC;SACvD,MAAM,CAAC,mBAAmB,EAAE,yBAAyB,CAAC;SACtD,SAAS,CAAC,gBAAgB,EAAE,CAAC;SAC7B,MAAM,CAAC,WAAW,CAAC;SACnB,WAAW,CACV,OAAO,EACP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgCL,CACI,CAAC;IAEJ,SAAS;SACN,OAAO,CAAC,oBAAoB,CAAC;SAC7B,WAAW,CAAC,iEAAiE,CAAC;SAC9E,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/resources/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -80,8 +80,25 @@ export declare function buildProjectionQueryOutputData(input: ProjectionQueryPay
|
|
|
80
80
|
/**
|
|
81
81
|
* Run one read-only SQL statement against this tree's resource projection.
|
|
82
82
|
*
|
|
83
|
+
* ## 🔑 `[path]` LOCATES the project. It never narrows the corpus.
|
|
84
|
+
*
|
|
85
|
+
* `vat resources scan docs/` scopes its crawl to `docs/`; this verb cannot offer
|
|
86
|
+
* the same, and says so rather than pretending. The projection is the whole
|
|
87
|
+
* tracked tree by construction — one population per `(root, treeHash)`, and a
|
|
88
|
+
* subtree population would be filed in the shared store under the whole tree's
|
|
89
|
+
* key, which is the cross-tree class `utils/projection-query.ts` documents —
|
|
90
|
+
* and arbitrary SQL cannot be post-filtered by path (blobs carry none). So the
|
|
91
|
+
* argument is where root discovery STARTS, the answer is about the tree it
|
|
92
|
+
* finds, and `root` in the document names that tree. A `WHERE path LIKE …` is
|
|
93
|
+
* the only scope a statement has, exactly as `vat resources check` documents.
|
|
94
|
+
*
|
|
95
|
+
* 🚨 Which is why a locator that locates nothing has to be refused: `nope`
|
|
96
|
+
* walked up to the cwd's project and answered about the whole tree at exit 0,
|
|
97
|
+
* byte-identical to a correct run. `assertDirectoryArgument` is the same refusal
|
|
98
|
+
* `validate` gives, in the same words.
|
|
99
|
+
*
|
|
83
100
|
* @param sql - The statement
|
|
84
|
-
* @param pathArg -
|
|
101
|
+
* @param pathArg - Where to look for the project, or omitted for the current directory
|
|
85
102
|
* @param options - Parsed command-line options
|
|
86
103
|
*/
|
|
87
104
|
export declare function queryCommand(sql: string, pathArg: string | undefined, options: QueryOptions): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../src/commands/resources/query.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAOH,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,iCAAiC,CAAC;AAEzC,UAAU,YAAY;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,sDAAsD;IACtD,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,yDAAyD;AACzD,UAAU,YAAa,SAAQ,oBAAoB;IACjD,IAAI,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;CAC1C;AAED,MAAM,WAAW,2BAA4B,SAAQ,YAAY;IAC/D,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,2BAA2B,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../src/commands/resources/query.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAOH,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,iCAAiC,CAAC;AAEzC,UAAU,YAAY;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,sDAAsD;IACtD,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,yDAAyD;AACzD,UAAU,YAAa,SAAQ,oBAAoB;IACjD,IAAI,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;CAC1C;AAED,MAAM,WAAW,2BAA4B,SAAQ,YAAY;IAC/D,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,2BAA2B,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAoB1G;AAkCD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,YAAY,CAChC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,IAAI,CAAC,CAgCf"}
|
|
@@ -48,7 +48,7 @@ import { handleCommandError } from '../../utils/command-error.js';
|
|
|
48
48
|
import { formatDurationSecs } from '../../utils/duration.js';
|
|
49
49
|
import { createLogger } from '../../utils/logger.js';
|
|
50
50
|
import { writeJsonOutput, writeYamlOutput } from '../../utils/output.js';
|
|
51
|
-
import { projectRootOrLoudCwd } from '../../utils/project-root-policy.js';
|
|
51
|
+
import { assertDirectoryArgument, projectRootOrLoudCwd } from '../../utils/project-root-policy.js';
|
|
52
52
|
import { withQueriedProjection, } from '../../utils/projection-query.js';
|
|
53
53
|
/**
|
|
54
54
|
* Build the query payload.
|
|
@@ -76,6 +76,11 @@ export function buildProjectionQueryOutputData(input) {
|
|
|
76
76
|
// or derived, and what that was worth. Separated they read as two unrelated
|
|
77
77
|
// numbers in a list.
|
|
78
78
|
populationSecs: formatDurationSecs(input.populationMs),
|
|
79
|
+
// Beside the population it is NOT part of. The lens is evaluated on every
|
|
80
|
+
// run whether or not the statement mentions `edges`, and a store hit does
|
|
81
|
+
// not make it cheaper, so folding it into `populationSecs` would read as
|
|
82
|
+
// the store having got worse. See `ProjectionProvenance.lensMs`.
|
|
83
|
+
lensSecs: formatDurationSecs(input.lensMs),
|
|
79
84
|
rowCount: input.rows.length,
|
|
80
85
|
durationSecs: formatDurationSecs(input.durationMs),
|
|
81
86
|
rows: input.rows,
|
|
@@ -100,8 +105,9 @@ export function buildProjectionQueryOutputData(input) {
|
|
|
100
105
|
async function runProjectionQuery(options) {
|
|
101
106
|
const { root, sql, parameters, logger } = options;
|
|
102
107
|
// The statement is compiled against the empty schema first, so a typo'd
|
|
103
|
-
// column
|
|
104
|
-
|
|
108
|
+
// column — or a `?` with no `--param` behind it — costs milliseconds instead
|
|
109
|
+
// of a full population.
|
|
110
|
+
return withQueriedProjection({ root, logger, preflight: [{ sql, parameters }] }, (ask, provenance) => ({
|
|
105
111
|
rows: ask(sql, ...parameters),
|
|
106
112
|
...provenance,
|
|
107
113
|
}));
|
|
@@ -109,14 +115,33 @@ async function runProjectionQuery(options) {
|
|
|
109
115
|
/**
|
|
110
116
|
* Run one read-only SQL statement against this tree's resource projection.
|
|
111
117
|
*
|
|
118
|
+
* ## 🔑 `[path]` LOCATES the project. It never narrows the corpus.
|
|
119
|
+
*
|
|
120
|
+
* `vat resources scan docs/` scopes its crawl to `docs/`; this verb cannot offer
|
|
121
|
+
* the same, and says so rather than pretending. The projection is the whole
|
|
122
|
+
* tracked tree by construction — one population per `(root, treeHash)`, and a
|
|
123
|
+
* subtree population would be filed in the shared store under the whole tree's
|
|
124
|
+
* key, which is the cross-tree class `utils/projection-query.ts` documents —
|
|
125
|
+
* and arbitrary SQL cannot be post-filtered by path (blobs carry none). So the
|
|
126
|
+
* argument is where root discovery STARTS, the answer is about the tree it
|
|
127
|
+
* finds, and `root` in the document names that tree. A `WHERE path LIKE …` is
|
|
128
|
+
* the only scope a statement has, exactly as `vat resources check` documents.
|
|
129
|
+
*
|
|
130
|
+
* 🚨 Which is why a locator that locates nothing has to be refused: `nope`
|
|
131
|
+
* walked up to the cwd's project and answered about the whole tree at exit 0,
|
|
132
|
+
* byte-identical to a correct run. `assertDirectoryArgument` is the same refusal
|
|
133
|
+
* `validate` gives, in the same words.
|
|
134
|
+
*
|
|
112
135
|
* @param sql - The statement
|
|
113
|
-
* @param pathArg -
|
|
136
|
+
* @param pathArg - Where to look for the project, or omitted for the current directory
|
|
114
137
|
* @param options - Parsed command-line options
|
|
115
138
|
*/
|
|
116
139
|
export async function queryCommand(sql, pathArg, options) {
|
|
117
140
|
const logger = createLogger({ debug: options.debug ?? false });
|
|
118
141
|
const startTime = Date.now();
|
|
119
142
|
try {
|
|
143
|
+
if (pathArg !== undefined)
|
|
144
|
+
assertDirectoryArgument(pathArg);
|
|
120
145
|
// Resolved at the CLI boundary, like every other command — the loud-cwd
|
|
121
146
|
// policy is where root discovery belongs.
|
|
122
147
|
const projectRoot = projectRootOrLoudCwd(pathArg ?? process.cwd(), logger);
|