@rulvar/cli 1.226.0 → 1.227.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/dist/cli.js +1 -1
- package/dist/index.d.ts +10 -6
- package/dist/index.js +1 -1
- package/dist/{io-Cc-obcZx.js → io-BhEqrNZg.js} +17 -9
- package/package.json +7 -7
package/dist/cli.js
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -245,12 +245,16 @@ declare function reportOutcome(outcome: RunOutcome<unknown>, io: CliIo): number;
|
|
|
245
245
|
* semantic green while the claim judge saw 40 of 144 citing sentences.
|
|
246
246
|
* So strict also reads the claim-coverage grade (RV1702) when the
|
|
247
247
|
* outcome carries a claim-consistency meta: `'judge-failed'` (nothing
|
|
248
|
-
* was judged)
|
|
249
|
-
*
|
|
250
|
-
*
|
|
251
|
-
*
|
|
252
|
-
*
|
|
253
|
-
*
|
|
248
|
+
* was judged), `'judge-declined'` (RV2508: the judge was refused
|
|
249
|
+
* admission and never dispatched, so nothing was judged either) and
|
|
250
|
+
* `'critical-uncovered'` (declared claims went unverified) exit
|
|
251
|
+
* nonzero, because all three previously slipped through strict as
|
|
252
|
+
* green; `'partial'` prints its counts to stderr and keeps the exit,
|
|
253
|
+
* because the bounded pass is the documented default and declaring
|
|
254
|
+
* critical anchors is the opt-in that makes the subset enforceable,
|
|
255
|
+
* and `'vacuous'` (RV2508: the draft cited nothing, so the configured
|
|
256
|
+
* pass verified nothing) prints and keeps the exit too, because
|
|
257
|
+
* citing nothing breaks no contract the pass declares.
|
|
254
258
|
*/
|
|
255
259
|
declare function strictExitCode(outcome: RunOutcome<unknown>, base: number, io: CliIo): number;
|
|
256
260
|
//#endregion
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as assembleEngine, a as inspectCommand, b as looksLikeFile, c as resumeCommand, d as driveRun, f as reportOutcome, g as DEFAULT_STORE_DIR, h as renderEventLine, i as costAuditCommand, l as runCommand, m as attachProgress, n as HELP, o as invoiceCommand, p as strictExitCode, r as runCli, s as preflightCommand, t as processIo, u as runsLsCommand, v as loadCliConfig, y as loadWorkflowModule } from "./io-
|
|
1
|
+
import { _ as assembleEngine, a as inspectCommand, b as looksLikeFile, c as resumeCommand, d as driveRun, f as reportOutcome, g as DEFAULT_STORE_DIR, h as renderEventLine, i as costAuditCommand, l as runCommand, m as attachProgress, n as HELP, o as invoiceCommand, p as strictExitCode, r as runCli, s as preflightCommand, t as processIo, u as runsLsCommand, v as loadCliConfig, y as loadWorkflowModule } from "./io-BhEqrNZg.js";
|
|
2
2
|
import { ConfigError, JournalCompatibilityError, LeaseHeldError, Replayer, RulvarError, buildDeriverRegistry, compileSecretMasker, costReportFromJournal, journalPricingSnapshot, maskSecrets, normalizeEntry, persistedTerminalEnvelope, readRunMeta, scanJournalCompatibility, validateDetachedResolution } from "@rulvar/core";
|
|
3
3
|
//#region src/server.ts
|
|
4
4
|
/**
|
|
@@ -388,8 +388,10 @@ function reportOutcome(outcome, io) {
|
|
|
388
388
|
/** The closed grade vocabulary strict accepts from a persisted meta. */
|
|
389
389
|
const COVERAGE_GRADES = [
|
|
390
390
|
"full",
|
|
391
|
+
"vacuous",
|
|
391
392
|
"partial",
|
|
392
393
|
"critical-uncovered",
|
|
394
|
+
"judge-declined",
|
|
393
395
|
"judge-failed"
|
|
394
396
|
];
|
|
395
397
|
/**
|
|
@@ -412,7 +414,8 @@ function coverageGradeOf(value) {
|
|
|
412
414
|
coveredCitingSentences: record.coveredCitingSentences,
|
|
413
415
|
...typeof record.criticalUncoveredTotal === "number" ? { criticalUncoveredTotal: record.criticalUncoveredTotal } : {},
|
|
414
416
|
...record.runFactPairsTruncated === true ? { runFactPairsTruncated: true } : {},
|
|
415
|
-
...record.judgeFailed === true ? { judgeFailed: true } : {}
|
|
417
|
+
...record.judgeFailed === true ? { judgeFailed: true } : {},
|
|
418
|
+
...record.judgeDeclined === true ? { judgeDeclined: true } : {}
|
|
416
419
|
});
|
|
417
420
|
}
|
|
418
421
|
/**
|
|
@@ -429,12 +432,16 @@ function coverageGradeOf(value) {
|
|
|
429
432
|
* semantic green while the claim judge saw 40 of 144 citing sentences.
|
|
430
433
|
* So strict also reads the claim-coverage grade (RV1702) when the
|
|
431
434
|
* outcome carries a claim-consistency meta: `'judge-failed'` (nothing
|
|
432
|
-
* was judged)
|
|
433
|
-
*
|
|
434
|
-
*
|
|
435
|
-
*
|
|
436
|
-
*
|
|
437
|
-
*
|
|
435
|
+
* was judged), `'judge-declined'` (RV2508: the judge was refused
|
|
436
|
+
* admission and never dispatched, so nothing was judged either) and
|
|
437
|
+
* `'critical-uncovered'` (declared claims went unverified) exit
|
|
438
|
+
* nonzero, because all three previously slipped through strict as
|
|
439
|
+
* green; `'partial'` prints its counts to stderr and keeps the exit,
|
|
440
|
+
* because the bounded pass is the documented default and declaring
|
|
441
|
+
* critical anchors is the opt-in that makes the subset enforceable,
|
|
442
|
+
* and `'vacuous'` (RV2508: the draft cited nothing, so the configured
|
|
443
|
+
* pass verified nothing) prints and keeps the exit too, because
|
|
444
|
+
* citing nothing breaks no contract the pass declares.
|
|
438
445
|
*/
|
|
439
446
|
function strictExitCode(outcome, base, io) {
|
|
440
447
|
if (base !== 0 || outcome.status !== "ok") return base;
|
|
@@ -447,8 +454,8 @@ function strictExitCode(outcome, base, io) {
|
|
|
447
454
|
return 1;
|
|
448
455
|
}
|
|
449
456
|
const grade = coverageGradeOf(value);
|
|
450
|
-
if (grade === "judge-failed" || grade === "critical-uncovered") {
|
|
451
|
-
io.err(`strict: claim coverage '${grade}': ` + (grade === "judge-failed" ? "the claim-consistency judge did not settle ok, so nothing was judged" : "declared critical anchors got no judged pair"));
|
|
457
|
+
if (grade === "judge-failed" || grade === "judge-declined" || grade === "critical-uncovered") {
|
|
458
|
+
io.err(`strict: claim coverage '${grade}': ` + (grade === "judge-failed" ? "the claim-consistency judge did not settle ok, so nothing was judged" : grade === "judge-declined" ? "the claim-consistency judge was refused admission and never dispatched, so nothing was judged" : "declared critical anchors got no judged pair"));
|
|
452
459
|
return 1;
|
|
453
460
|
}
|
|
454
461
|
const low = lowCoverageOf(value);
|
|
@@ -457,6 +464,7 @@ function strictExitCode(outcome, base, io) {
|
|
|
457
464
|
return 1;
|
|
458
465
|
}
|
|
459
466
|
if (grade === "partial") io.err("strict: claim coverage 'partial': the judge saw a bounded subset of the citing sentences; declare critical anchors (or raise the pair bound) to make the subset enforceable");
|
|
467
|
+
if (grade === "vacuous") io.err("strict: claim coverage 'vacuous': the draft carried no citing sentence, so the configured claim-consistency pass verified nothing");
|
|
460
468
|
return base;
|
|
461
469
|
}
|
|
462
470
|
/** The stamped below-floor block of an outcome's claim meta, when present (RV1809). */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rulvar/cli",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.227.0",
|
|
4
4
|
"description": "Rulvar shell: run/resume/runs/inspect/plan/kb commands, TUI progress, createServer, createWorker, OTel exporter.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -22,17 +22,17 @@
|
|
|
22
22
|
"access": "public"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@rulvar/core": "1.
|
|
25
|
+
"@rulvar/core": "1.227.0"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
28
|
"@types/node": "^22.20.1",
|
|
29
29
|
"tsdown": "^0.22.14",
|
|
30
30
|
"typescript": "~6.0.3",
|
|
31
|
-
"@rulvar/testing": "1.
|
|
32
|
-
"@rulvar/
|
|
33
|
-
"@rulvar/
|
|
34
|
-
"@rulvar/
|
|
35
|
-
"@rulvar/evals": "1.
|
|
31
|
+
"@rulvar/testing": "1.227.0",
|
|
32
|
+
"@rulvar/store-sqlite": "1.227.0",
|
|
33
|
+
"@rulvar/planner": "1.227.0",
|
|
34
|
+
"@rulvar/plan": "1.227.0",
|
|
35
|
+
"@rulvar/evals": "1.227.0"
|
|
36
36
|
},
|
|
37
37
|
"bin": {
|
|
38
38
|
"rulvar": "./dist/cli.js"
|