@ai-dossier/cli 0.51.0 → 0.54.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.
Files changed (57) hide show
  1. package/README.md +73 -6
  2. package/dist/batch-suite-runner.d.ts +30 -6
  3. package/dist/batch-suite-runner.d.ts.map +1 -1
  4. package/dist/batch-suite-runner.js +86 -25
  5. package/dist/batch-suite-runner.js.map +1 -1
  6. package/dist/capability.d.ts +8 -0
  7. package/dist/capability.d.ts.map +1 -1
  8. package/dist/capability.js +16 -1
  9. package/dist/capability.js.map +1 -1
  10. package/dist/cli.js +2 -0
  11. package/dist/cli.js.map +1 -1
  12. package/dist/commands/classify.d.ts.map +1 -1
  13. package/dist/commands/classify.js +8 -2
  14. package/dist/commands/classify.js.map +1 -1
  15. package/dist/commands/run.d.ts.map +1 -1
  16. package/dist/commands/run.js +10 -1
  17. package/dist/commands/run.js.map +1 -1
  18. package/dist/commands/sched.d.ts.map +1 -1
  19. package/dist/commands/sched.js +35 -0
  20. package/dist/commands/sched.js.map +1 -1
  21. package/dist/commands/usage.d.ts +84 -0
  22. package/dist/commands/usage.d.ts.map +1 -0
  23. package/dist/commands/usage.js +395 -0
  24. package/dist/commands/usage.js.map +1 -0
  25. package/dist/prescreen.d.ts +48 -5
  26. package/dist/prescreen.d.ts.map +1 -1
  27. package/dist/prescreen.js +195 -6
  28. package/dist/prescreen.js.map +1 -1
  29. package/dist/usage/collect-claude.d.ts +47 -0
  30. package/dist/usage/collect-claude.d.ts.map +1 -0
  31. package/dist/usage/collect-claude.js +237 -0
  32. package/dist/usage/collect-claude.js.map +1 -0
  33. package/dist/usage/collect-dispatch.d.ts +73 -0
  34. package/dist/usage/collect-dispatch.d.ts.map +1 -0
  35. package/dist/usage/collect-dispatch.js +297 -0
  36. package/dist/usage/collect-dispatch.js.map +1 -0
  37. package/dist/usage/collect-opencode.d.ts +74 -0
  38. package/dist/usage/collect-opencode.d.ts.map +1 -0
  39. package/dist/usage/collect-opencode.js +198 -0
  40. package/dist/usage/collect-opencode.js.map +1 -0
  41. package/dist/usage/host-session.d.ts +63 -0
  42. package/dist/usage/host-session.d.ts.map +1 -0
  43. package/dist/usage/host-session.js +325 -0
  44. package/dist/usage/host-session.js.map +1 -0
  45. package/dist/usage/ledger.d.ts +87 -0
  46. package/dist/usage/ledger.d.ts.map +1 -0
  47. package/dist/usage/ledger.js +268 -0
  48. package/dist/usage/ledger.js.map +1 -0
  49. package/dist/usage/types.d.ts +80 -0
  50. package/dist/usage/types.d.ts.map +1 -0
  51. package/dist/usage/types.js +11 -0
  52. package/dist/usage/types.js.map +1 -0
  53. package/dist/usage/util.d.ts +36 -0
  54. package/dist/usage/util.d.ts.map +1 -0
  55. package/dist/usage/util.js +158 -0
  56. package/dist/usage/util.js.map +1 -0
  57. package/package.json +2 -2
package/README.md CHANGED
@@ -1016,9 +1016,11 @@ Prints a single JSON verdict — no model call anywhere, exits 0 for either verd
1016
1016
 
1017
1017
  ```json
1018
1018
  {
1019
+ "schema": "prescreen:v2",
1019
1020
  "issue": 538,
1020
1021
  "state": "OPEN",
1021
- "verdict": "full",
1022
+ "verdict": "candidate",
1023
+ "review": "full",
1022
1024
  "reasons": [
1023
1025
  { "check": "text-floor", "message": "Title/body/labels match 'rule1-risk-floor-area' (keyword: 'terraform')." }
1024
1026
  ],
@@ -1040,9 +1042,11 @@ verdict still reflects whatever DID complete rather than blocking on the gap:
1040
1042
 
1041
1043
  ```json
1042
1044
  {
1045
+ "schema": "prescreen:v2",
1043
1046
  "issue": 538,
1044
1047
  "state": null,
1045
1048
  "verdict": "candidate",
1049
+ "review": "full",
1046
1050
  "reasons": [],
1047
1051
  "plan_artifact": null,
1048
1052
  "degraded": true,
@@ -1051,18 +1055,45 @@ verdict still reflects whatever DID complete rather than blocking on the gap:
1051
1055
  }
1052
1056
  ```
1053
1057
 
1054
- `verdict: "full"` means an obvious floor hit was found — the classifier should skip
1055
- straight to posting `mode=full` with the recorded reason, no repo exploration needed.
1058
+ `verdict: "full"` means an **excluding** floor hit was found — a hard-block label, an open
1059
+ dependency outside the submitted set, or (with a plan:v1 artifact) the path-based risk
1060
+ floor or more than 8 predicted files. The classifier should skip straight to posting
1061
+ `mode=full` with the recorded reason, no repo exploration needed.
1056
1062
  `verdict: "candidate"` means proceed to the bounded mechanical-tier classify pass (issue
1057
1063
  text + `reasons`/`warnings` as context, still no repo exploration unless that pass's
1058
1064
  `confidence` lands below 0.6, which triggers the dossier's single mid-tier escalation).
1059
1065
 
1066
+ `review` is the review depth the issue needs, in the scheduler's per-member vocabulary
1067
+ (`light` | `full`, #771): `full` whenever any check found anything — and also when the
1068
+ issue itself could not be read (the fail-open path above stays `candidate`, but an unscanned
1069
+ issue is never reported `light`). A **text-floor** hit
1070
+ (risk keyword in the issue text) is `verdict: "candidate"` + `review: "full"` — the issue
1071
+ may join a batch, but as a full-review member (#770 Option A), not be excluded from it.
1072
+
1073
+ **Contract change — `prescreen:v1` → `prescreen:v2` (#772, CLI 0.54.0).** v1 (no
1074
+ `schema` key) returned `verdict: "full"` for a text-floor hit too; v2 returns
1075
+ `candidate` + `review: "full"` for it and adds the `schema` and `review` keys. A consumer
1076
+ that reads only `verdict` must also read `review` to keep routing risk-keyword issues to
1077
+ full-depth review. The text floor is also section-aware in v2: it scans the title, labels,
1078
+ and the body **minus** reference material — sections headed Related / References / See
1079
+ also / Links / Context / Background / Provenance / Origin; reference lines ("Related: #…",
1080
+ "Parent: #…", "Refs: …", "See also …"); provenance clauses that open a sentence ("Found by
1081
+ the #4103 security review.", "Discovered during…", "Follow-up to #…", "Split from #…" —
1082
+ stripped to the end of the clause, the rest of the line is kept); and link-only lines (a
1083
+ markdown link's text is kept, only its target is dropped) — in addition to the quoted spans
1084
+ #627 already blanked. A heading is ignored only when its whole text is one of those names
1085
+ ("## Background jobs" is scope); `#` lines inside fenced code blocks are never headings.
1086
+ Mid-sentence the same words are prose ("the token leak is found during checkout") and are
1087
+ scanned. Other sections (Problem, Scope, Fix, …) are scanned; a sub-heading nested inside an
1088
+ ignored section stays ignored. `scripts/prescreen-backlog-measure.mjs --repo owner/name`
1089
+ measures v1 vs v2 over a repo's open backlog (read-only; prints no issue text).
1090
+
1060
1091
  Coverage is deliberately partial — it catches the OBVIOUS floor hits, not all of them:
1061
1092
 
1062
1093
  | Check | What it catches | Source |
1063
1094
  |---|---|---|
1064
1095
  | `hard-block-label` | `decision-pending`, `needs-clarification`, `epic`, `decomposed` | same policy as the `sched enqueue` pre-screen (#507) and the engine's per-tick re-check (#544), shared via `@ai-dossier/sched`'s `labels.ts` (re-exported by `cli/src/hard-block-labels.ts`) |
1065
- | `text-floor` | A text-keyword approximation of RFC-0001 E.2 rules 1/3/4 (risk-floor area, new package/workspace, deploy pipeline) scanned over title + body + labels | `prescreen.ts`'s `TEXT_FLOOR_PATTERNS`; the matched keyword is named in the reason message |
1096
+ | `text-floor` | A text-keyword approximation of RFC-0001 E.2 rules 1/3/4 (risk-floor area, new package/workspace, deploy pipeline) scanned over title + reference-stripped body + labels — sets `review: full`, does **not** exclude | `prescreen.ts`'s `TEXT_FLOOR_PATTERNS` / `floorScanText`; the matched keyword is named in the reason message |
1066
1097
  | `path-floor` | Rule 1's path-based risk floor, reusing `plan validate`'s `scanRiskFloor` (capped at 8 reasons — a plan:v1 artifact is comment-sourced, untrusted input) | requires a `plan:v1` artifact already on the issue |
1067
1098
  | `file-count` | Rule 5, "Predicted files > 8" | requires a `plan:v1` artifact already on the issue |
1068
1099
  | `open-dependency` | Rule 9, an open `Depends on #N` outside `--submitted-set` (capped at 8 reasons; refs themselves capped at 32 per issue — an issue body is untrusted input) | resolved via `gh issue view <N> --json state` |
@@ -1330,7 +1361,10 @@ atomically. `abandon` instead records failure and releases a slot without termin
1330
1361
  unlike the default path, these are RECONSTRUCTED from a raw log after the fact, and
1331
1362
  a dispatch's spawn time and model tier are not recoverable from the log content
1332
1363
  itself; this is a structural limit, not a missing-data bug (a live member dispatch
1333
- going forward through the default path DOES get real `Duration`/`Tier`).
1364
+ going forward through the default path DOES get real `Duration`/`Tier`). `Model`
1365
+ comes from the agent's own result when it reports one, else from the `-m/--model`
1366
+ argv in the log's `sched-dispatch` preamble — opencode streams never report a model,
1367
+ so before #769 opencode members always read `-` here.
1334
1368
 
1335
1369
  State is written atomically (tmp + fsync + rename), so a process killed between writes
1336
1370
  always leaves the previous complete state, and a scheduler restart resumes identically
@@ -1351,7 +1385,7 @@ substitutes `{issue}` and `{gen}`; `dispatch.tiers.<tier>` — `{command?, model
1351
1385
  — overrides the command/model/prompt for one tier only, #527, falling back to the
1352
1386
  top-level `command`/`tier_models`/`prompt` shorthand for any field left unset;
1353
1387
  `dispatch.suite_command` — an argv array for the aggregate batch-suite command, #562, the
1354
- middle tier of an active `cap run test.full` (manifest) → `dispatch.suite_command` → a repo-detected
1388
+ middle tier of an active `cap run gate.batch` (#777) → an active `cap run test.full` (manifest) → `dispatch.suite_command` → a repo-detected
1355
1389
  safe default; run exactly as given, never with extra flags appended — set this when the
1356
1390
  repo's `test` script delegates to something that cannot take a reporter flag and there is
1357
1391
  no `.dossier/automation/` manifest to declare an active `test.full` in instead; its
@@ -1432,6 +1466,38 @@ to `~/.dossier/caps.jsonl`. Full spec and the capability id vocabulary:
1432
1466
 
1433
1467
  ---
1434
1468
 
1469
+ ## Token Ledger (`usage`)
1470
+
1471
+ ```bash
1472
+ ai-dossier usage window [--last 5h] [--until <iso>] [--provider anthropic] [--source claude-code,opencode] [--top 10] [--limit-window 5h] [--json]
1473
+ ai-dossier usage --batch <id> | --issue <n> [--since 30d] [--json]
1474
+ ai-dossier usage watch [--last 1h] [--interval 30s] [--iterations N]
1475
+ ```
1476
+
1477
+ One ledger over every place tokens are recorded on this host (#769), read on demand and
1478
+ **read-only** (nothing is written; `opencode.db` is opened `readOnly`):
1479
+
1480
+ | Store | What it contributes |
1481
+ |---|---|
1482
+ | `~/.claude/projects/**/*.jsonl` (`$CLAUDE_CONFIG_DIR`) | One row per assistant message — model, input/output/cache tokens — for interactive sessions, headless `claude -p` dispatches, and **subagents** (session `<parent>/<agentId>`, `parent_session_id` = the parent). Deduped on `message.id:requestId`. API-error rows with limit wording become limit events. |
1483
+ | `opencode.db` (`$OPENCODE_DB`, else `$XDG_DATA_HOME/opencode/`) | One row per assistant message — `provider/model`, input/output/reasoning/cache tokens, cost. Needs `node:sqlite` (Node >= 22.13); otherwise the collector reports `unavailable`. |
1484
+ | `~/.dossier/sched/*/runs/*.log` | Attribution only: the agent session id in each dispatch log joins a session (and its child sessions) to its issue / batch / unit, and the `sched-dispatch` preamble supplies a model when the store recorded none. |
1485
+ | `~/.dossier/sched/*/events.jsonl` | `dispatch-failure`/`dispatch-unhealthy` events with a 429 or limit wording → limit events. |
1486
+ | `~/.dossier/runs.jsonl` | Attribution only: `ai-dossier run` invocations per host session (`session_id`). Its token columns are NOT summed — those tokens are already in the two stores above. |
1487
+
1488
+ `window` is the quota-RCA view: totals and burn per hour, tokens by model × source and by
1489
+ project × issue, the top sessions, and every limit event with the top same-provider consumers
1490
+ in the preceding `--limit-window` (repeats of one wall within an hour fold into its onset,
1491
+ shown as `×N`). "model attributed" is the share of tokens carrying a concrete model id.
1492
+ `--batch`/`--issue` list every session attributed to it with its real model(s). Issues are
1493
+ attributed from sched dispatch logs when a session was dispatched, else heuristically from the
1494
+ git branch / worktree name (`issue_source: "branch"` in `--json`).
1495
+
1496
+ Not yet: a persisted ledger and multi-host merge (`usage sync`) — rows carry `host` so they can
1497
+ be merged later.
1498
+
1499
+ ---
1500
+
1435
1501
  ## Run History (`history`)
1436
1502
 
1437
1503
  Every `ai-dossier run` appends one JSON line to `~/.dossier/runs.jsonl` (append-only; disable with `dossier config auditLog false`). Since #524, `packages/sched`'s dispatch engine appends its own entries to the SAME file — one per completed scheduler-dispatched agent run (see `ai-dossier sched stats` above). The `auditLog` toggle governs only `ai-dossier run`'s own entries; the scheduler's are gated
@@ -1482,6 +1548,7 @@ Headless runs execute `claude -p --output-format json` (claude-code) or `opencod
1482
1548
  | `input_tokens`, `output_tokens`, `total_cost_usd` | Usage reported by the agent (claude JSON result / opencode JSONL event stream, headless only); null when not reported — never fabricated (v0.12.0+) |
1483
1549
  | `cache_creation_tokens`, `cache_read_tokens` | Cache-write/cache-read input tokens; same modelUsage-sourced rule as `input_tokens`/`output_tokens` — null when not reported (v0.22.0+) |
1484
1550
  | `unit` | Sched dispatch entries only: `issue:<n>` or `batch:<id>` — absent/null for an ordinary `ai-dossier run` entry, which has no unit (v0.22.0+) |
1551
+ | `session_id`, `agent` | The agent host session that invoked `ai-dossier run` (`CLAUDE_CODE_SESSION_ID`, or opencode's session for this cwd) and its kind (`claude-code`/`opencode`); null outside an agent host. When the run spawns no agent, `model` is the host's resolved model from that session (v0.52.0+, #769) |
1485
1552
 
1486
1553
  Pre-v0.12.0 entries simply lack the v0.12.0+ fields, and pre-v0.22.0 entries lack `cache_creation_tokens`/`cache_read_tokens`/`unit`; consumers must treat them as optional/nullable.
1487
1554
 
@@ -13,6 +13,12 @@
13
13
  * work that may have been fully green (docs/agent-traps.md).
14
14
  *
15
15
  * Resolution order, each tier preferred to the next:
16
+ * 0. `cap run gate.batch` (#777) — the repo's declared BATCH gate, when its
17
+ * manifest has one `active`: the same gate a normal PR pays (e.g. CI
18
+ * parity, affected-scoped against `DOSSIER_BATCH_BASE`), run once for
19
+ * the whole batch. Its outcome maps to a `SuiteResult` exactly as
20
+ * `test.full`'s does; `capability-unavailable` (or no `ai-dossier` on
21
+ * PATH) falls through to tier 1.
16
22
  * 1. `cap run test.full` — the repo's own declared capability, when its
17
23
  * manifest (`.dossier/automation/manifest.yaml`) has one `active`.
18
24
  * 2. `dispatch.suite_command` — an explicit per-project override in sched
@@ -28,21 +34,39 @@
28
34
  * `suite-unreadable` and blocks the batch (preserving every member commit)
29
35
  * rather than treating "nothing to attribute" as license to dissolve.
30
36
  */
31
- import { type SchedConfig, type SuiteResult } from '@ai-dossier/sched';
37
+ import { type BatchSuiteContext, type SchedConfig, type SuiteResult } from '@ai-dossier/sched';
38
+ import { type CapabilityManifest } from './capability';
39
+ /** The repo-declared batch gate (#777) — preferred over `test.full` when active. */
40
+ export declare const BATCH_GATE_CAPABILITY = "gate.batch";
41
+ /** The aggregate full-suite capability — the batch gate's fallback. */
42
+ export declare const FULL_SUITE_CAPABILITY = "test.full";
43
+ /**
44
+ * #777: the refusal reason when a repo's only full gate is one it declares
45
+ * timeout-prone — no active `gate.batch`, and an active `test.full` marked
46
+ * `timeout_prone: true`. A batch there pays a gate that usually ends
47
+ * `suite-unreadable` (imboard #4244/#4253), so the batch should never be
48
+ * formed. `null` = batching is fine (including "no manifest at all", which
49
+ * falls back to `dispatch.suite_command`/detection as before).
50
+ */
51
+ export declare function batchGateRefusal(manifest: CapabilityManifest): string | null;
32
52
  /** Aggregate suite runs can be minutes long (full workspace test suite, not a focused subset). */
33
53
  export declare const BATCH_SUITE_TIMEOUT_MS = 600000;
34
54
  /** Lets `cap run` finish manifest/probe setup without shortening its command's declared budget. */
35
55
  export declare const CAP_RUN_SETUP_GRACE_MS = 10000;
36
56
  /**
37
57
  * Resolve and run the aggregate batch suite (#562) per the module doc's
38
- * three-tier order, retrying once with the tier-3 safe default when the
39
- * resolved primary tier's report is unreadable.
58
+ * tier order, retrying once with the tier-3 safe default when the resolved
59
+ * primary tier's report is unreadable.
40
60
  *
41
61
  * `opts.timeoutMs` supplies the default `BATCH_SUITE_TIMEOUT_MS` fallback for
42
- * repos without an active, declared `test.full` budget. A declared capability
43
- * timeout controls only `cap run`; tier 2 and 3 retain this runner timeout.
62
+ * repos without an active, declared capability budget. A declared capability
63
+ * timeout controls only that capability's `cap run`; tier 2 and 3 retain this
64
+ * runner timeout.
65
+ *
66
+ * `ctx` (#777) becomes `DOSSIER_BATCH_ID`/`DOSSIER_BATCH_BASE` in every suite
67
+ * command's environment.
44
68
  */
45
69
  export declare function createBatchSuiteRunner(config: SchedConfig, opts?: {
46
70
  timeoutMs?: number;
47
- }): (worktree: string) => SuiteResult;
71
+ }): (worktree: string, ctx?: BatchSuiteContext) => SuiteResult;
48
72
  //# sourceMappingURL=batch-suite-runner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"batch-suite-runner.d.ts","sourceRoot":"","sources":["../src/batch-suite-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAKH,OAAO,EAGL,KAAK,WAAW,EAChB,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAC;AAI3B,kGAAkG;AAClG,eAAO,MAAM,sBAAsB,SAAU,CAAC;AAE9C,mGAAmG;AACnG,eAAO,MAAM,sBAAsB,QAAS,CAAC;AAgO7C;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,WAAW,EACnB,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAChC,CAAC,QAAQ,EAAE,MAAM,KAAK,WAAW,CAqCnC"}
1
+ {"version":3,"file":"batch-suite-runner.d.ts","sourceRoot":"","sources":["../src/batch-suite-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAKH,OAAO,EACL,KAAK,iBAAiB,EAGtB,KAAK,WAAW,EAChB,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,KAAK,kBAAkB,EAA8C,MAAM,cAAc,CAAC;AAEnG,oFAAoF;AACpF,eAAO,MAAM,qBAAqB,eAAe,CAAC;AAElD,uEAAuE;AACvE,eAAO,MAAM,qBAAqB,cAAc,CAAC;AAajD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM,GAAG,IAAI,CAU5E;AAED,kGAAkG;AAClG,eAAO,MAAM,sBAAsB,SAAU,CAAC;AAE9C,mGAAmG;AACnG,eAAO,MAAM,sBAAsB,QAAS,CAAC;AA+O7C;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,WAAW,EACnB,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAChC,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,iBAAiB,KAAK,WAAW,CAyD5D"}
@@ -14,6 +14,12 @@
14
14
  * work that may have been fully green (docs/agent-traps.md).
15
15
  *
16
16
  * Resolution order, each tier preferred to the next:
17
+ * 0. `cap run gate.batch` (#777) — the repo's declared BATCH gate, when its
18
+ * manifest has one `active`: the same gate a normal PR pays (e.g. CI
19
+ * parity, affected-scoped against `DOSSIER_BATCH_BASE`), run once for
20
+ * the whole batch. Its outcome maps to a `SuiteResult` exactly as
21
+ * `test.full`'s does; `capability-unavailable` (or no `ai-dossier` on
22
+ * PATH) falls through to tier 1.
17
23
  * 1. `cap run test.full` — the repo's own declared capability, when its
18
24
  * manifest (`.dossier/automation/manifest.yaml`) has one `active`.
19
25
  * 2. `dispatch.suite_command` — an explicit per-project override in sched
@@ -33,7 +39,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
33
39
  return (mod && mod.__esModule) ? mod : { "default": mod };
34
40
  };
35
41
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.CAP_RUN_SETUP_GRACE_MS = exports.BATCH_SUITE_TIMEOUT_MS = void 0;
42
+ exports.CAP_RUN_SETUP_GRACE_MS = exports.BATCH_SUITE_TIMEOUT_MS = exports.FULL_SUITE_CAPABILITY = exports.BATCH_GATE_CAPABILITY = void 0;
43
+ exports.batchGateRefusal = batchGateRefusal;
37
44
  exports.createBatchSuiteRunner = createBatchSuiteRunner;
38
45
  const node_child_process_1 = require("node:child_process");
39
46
  const node_fs_1 = __importDefault(require("node:fs"));
@@ -41,6 +48,40 @@ const node_path_1 = __importDefault(require("node:path"));
41
48
  const sched_1 = require("@ai-dossier/sched");
42
49
  const worktree_pool_1 = require("@ai-dossier/worktree-pool");
43
50
  const capability_1 = require("./capability");
51
+ /** The repo-declared batch gate (#777) — preferred over `test.full` when active. */
52
+ exports.BATCH_GATE_CAPABILITY = 'gate.batch';
53
+ /** The aggregate full-suite capability — the batch gate's fallback. */
54
+ exports.FULL_SUITE_CAPABILITY = 'test.full';
55
+ /**
56
+ * Environment handed to every suite command (#777): which batch is being
57
+ * gated and the ref it branched from, so a `gate.batch` capability can scope
58
+ * itself to the union of the members' diffs (`git diff $DOSSIER_BATCH_BASE...HEAD`).
59
+ * `cap run` runs its command with the inherited environment, so these reach it.
60
+ */
61
+ function suiteEnv(ctx) {
62
+ if (ctx === undefined)
63
+ return undefined;
64
+ return { ...process.env, DOSSIER_BATCH_ID: ctx.batchId, DOSSIER_BATCH_BASE: ctx.baseRef };
65
+ }
66
+ /**
67
+ * #777: the refusal reason when a repo's only full gate is one it declares
68
+ * timeout-prone — no active `gate.batch`, and an active `test.full` marked
69
+ * `timeout_prone: true`. A batch there pays a gate that usually ends
70
+ * `suite-unreadable` (imboard #4244/#4253), so the batch should never be
71
+ * formed. `null` = batching is fine (including "no manifest at all", which
72
+ * falls back to `dispatch.suite_command`/detection as before).
73
+ */
74
+ function batchGateRefusal(manifest) {
75
+ const gate = manifest.capabilities[exports.BATCH_GATE_CAPABILITY];
76
+ if (gate?.lifecycle === 'active')
77
+ return null;
78
+ const full = manifest.capabilities[exports.FULL_SUITE_CAPABILITY];
79
+ if (full?.lifecycle !== 'active' || full.timeoutProne !== true)
80
+ return null;
81
+ return (`this repo's only full gate is '${exports.FULL_SUITE_CAPABILITY}', which its manifest (${manifest.path ?? '.dossier/automation/manifest.yaml'}) marks timeout_prone: true ` +
82
+ `— a batch would pay a gate that usually never produces a verdict (suite-unreadable). ` +
83
+ `Declare an active '${exports.BATCH_GATE_CAPABILITY}' capability (the CI-parity gate a normal PR pays, scoped by DOSSIER_BATCH_BASE), or run these issues as full cycles.`);
84
+ }
44
85
  /** Aggregate suite runs can be minutes long (full workspace test suite, not a focused subset). */
45
86
  exports.BATCH_SUITE_TIMEOUT_MS = 600_000;
46
87
  /** Lets `cap run` finish manifest/probe setup without shortening its command's declared budget. */
@@ -62,7 +103,7 @@ function stderrTail(stderr) {
62
103
  return ` — stderr: ${trimmed.slice(-STDERR_TAIL_CHARS)}`;
63
104
  }
64
105
  /** Run one argv command in `worktree`, parsing stdout as a vitest JSON report when possible. */
65
- function runCommand(argv, worktree, source, timeoutMs) {
106
+ function runCommand(argv, worktree, source, timeoutMs, env) {
66
107
  if (argv.length === 0) {
67
108
  return {
68
109
  ok: false,
@@ -77,6 +118,7 @@ function runCommand(argv, worktree, source, timeoutMs) {
77
118
  encoding: 'utf-8',
78
119
  timeout: timeoutMs,
79
120
  maxBuffer: MAX_BUFFER_BYTES,
121
+ ...(env !== undefined ? { env } : {}),
80
122
  });
81
123
  // `spawned.error` (ENOENT, ETIMEDOUT at the budget above, EACCES, ENOBUFS)
82
124
  // means the command never produced a trustworthy report — this must never
@@ -105,23 +147,25 @@ function runCommand(argv, worktree, source, timeoutMs) {
105
147
  };
106
148
  }
107
149
  /**
108
- * Tier 1: `ai-dossier cap run test.full`. Returns `'unavailable'` when the
109
- * repo has no manifest, no `test.full` entry, or it is `lifecycle: shadow` —
150
+ * Tiers 0/1: `ai-dossier cap run <gate.batch|test.full>` — both map their
151
+ * envelope to a `SuiteResult` identically (#777 AC). Returns `'unavailable'`
152
+ * when the repo has no manifest, no such entry, or it is `lifecycle: shadow` —
110
153
  * the capability layer's own `capability-unavailable` outcome — or when the
111
154
  * capability layer could not even be invoked (no `ai-dossier` on `PATH`, a
112
155
  * stale shadow copy) — either way "no trustworthy tier-1 answer
113
156
  * here", so the caller falls through to tier 2 (AC1's resolution order)
114
157
  * rather than skipping straight past a configured `dispatch.suite_command`.
115
158
  */
116
- function runCapabilityTestFull(worktree, capabilityTimeoutMs) {
117
- const source = 'cap run test.full';
159
+ function runCapabilitySuite(capabilityId, worktree, capabilityTimeoutMs, env) {
160
+ const source = `cap run ${capabilityId}`;
118
161
  const start = Date.now();
119
- const spawned = (0, node_child_process_1.spawnSync)('ai-dossier', ['cap', 'run', 'test.full'], {
162
+ const spawned = (0, node_child_process_1.spawnSync)('ai-dossier', ['cap', 'run', capabilityId], {
120
163
  cwd: worktree,
121
164
  encoding: 'utf-8',
122
165
  // The inner capability owns this budget; the outer watchdog has bounded setup grace.
123
166
  timeout: capabilityTimeoutMs + exports.CAP_RUN_SETUP_GRACE_MS,
124
167
  maxBuffer: MAX_BUFFER_BYTES,
168
+ ...(env !== undefined ? { env } : {}),
125
169
  });
126
170
  if (spawned.error) {
127
171
  if (spawned.error.code === 'ETIMEDOUT') {
@@ -209,7 +253,7 @@ function detectSuiteCommand(worktree) {
209
253
  return ['pytest', '--tb=short'];
210
254
  return ['npm', 'test'];
211
255
  }
212
- function runDetected(worktree, timeoutMs) {
256
+ function runDetected(worktree, timeoutMs, env) {
213
257
  const projectDir = (0, worktree_pool_1.resolveProjectDir)(worktree, (0, worktree_pool_1.readPoolFileConfig)(worktree).project_subdir);
214
258
  if (projectDir !== worktree && !projectDir.startsWith(worktree + node_path_1.default.sep)) {
215
259
  return {
@@ -227,54 +271,71 @@ function runDetected(worktree, timeoutMs) {
227
271
  detail: `detected: capability unavailable: no package.json (cwd=${projectDir})`,
228
272
  };
229
273
  }
230
- return runCommand(detectSuiteCommand(projectDir), projectDir, 'detected', timeoutMs);
274
+ return runCommand(detectSuiteCommand(projectDir), projectDir, 'detected', timeoutMs, env);
231
275
  }
232
- function capabilityTimeout(worktree, defaultTimeoutMs) {
276
+ /** The worktree's manifest, or `null` when it is malformed — `cap run` reports that itself. */
277
+ function tryLoadManifest(worktree) {
233
278
  try {
234
- const entry = (0, capability_1.loadCapabilityManifest)(worktree).capabilities['test.full'];
235
- return entry?.lifecycle === 'active' ? (entry.timeoutMs ?? defaultTimeoutMs) : defaultTimeoutMs;
279
+ return (0, capability_1.loadCapabilityManifest)(worktree);
236
280
  }
237
281
  catch {
238
- // `cap run` will report a malformed manifest; retain the portable outer default.
239
- return defaultTimeoutMs;
282
+ return null;
240
283
  }
241
284
  }
285
+ function capabilityTimeout(manifest, capabilityId, defaultTimeoutMs) {
286
+ const entry = manifest?.capabilities[capabilityId];
287
+ // A malformed manifest (`null`) retains the portable outer default.
288
+ return entry?.lifecycle === 'active' ? (entry.timeoutMs ?? defaultTimeoutMs) : defaultTimeoutMs;
289
+ }
242
290
  /**
243
291
  * Resolve and run the aggregate batch suite (#562) per the module doc's
244
- * three-tier order, retrying once with the tier-3 safe default when the
245
- * resolved primary tier's report is unreadable.
292
+ * tier order, retrying once with the tier-3 safe default when the resolved
293
+ * primary tier's report is unreadable.
246
294
  *
247
295
  * `opts.timeoutMs` supplies the default `BATCH_SUITE_TIMEOUT_MS` fallback for
248
- * repos without an active, declared `test.full` budget. A declared capability
249
- * timeout controls only `cap run`; tier 2 and 3 retain this runner timeout.
296
+ * repos without an active, declared capability budget. A declared capability
297
+ * timeout controls only that capability's `cap run`; tier 2 and 3 retain this
298
+ * runner timeout.
299
+ *
300
+ * `ctx` (#777) becomes `DOSSIER_BATCH_ID`/`DOSSIER_BATCH_BASE` in every suite
301
+ * command's environment.
250
302
  */
251
303
  function createBatchSuiteRunner(config, opts = {}) {
252
304
  const defaultTimeoutMs = opts.timeoutMs ?? exports.BATCH_SUITE_TIMEOUT_MS;
253
- return (worktree) => {
254
- const capabilityTimeoutMs = capabilityTimeout(worktree, defaultTimeoutMs);
305
+ return (worktree, ctx) => {
306
+ const manifest = tryLoadManifest(worktree);
307
+ const env = suiteEnv(ctx);
255
308
  let primary;
256
- const cap = runCapabilityTestFull(worktree, capabilityTimeoutMs);
309
+ // Tier 0 (#777): only attempted when the manifest DECLARES an active
310
+ // gate.batch — a repo without one pays exactly the pre-#777 spawns.
311
+ let cap = 'unavailable';
312
+ if (manifest?.capabilities[exports.BATCH_GATE_CAPABILITY]?.lifecycle === 'active') {
313
+ cap = runCapabilitySuite(exports.BATCH_GATE_CAPABILITY, worktree, capabilityTimeout(manifest, exports.BATCH_GATE_CAPABILITY, defaultTimeoutMs), env);
314
+ }
315
+ if (cap === 'unavailable') {
316
+ cap = runCapabilitySuite(exports.FULL_SUITE_CAPABILITY, worktree, capabilityTimeout(manifest, exports.FULL_SUITE_CAPABILITY, defaultTimeoutMs), env);
317
+ }
257
318
  if (cap !== 'unavailable') {
258
319
  primary = cap;
259
320
  }
260
321
  else if (config.dispatch?.suite_command) {
261
322
  primary = {
262
323
  source: 'dispatch.suite_command',
263
- result: runCommand(config.dispatch.suite_command, worktree, 'dispatch.suite_command', defaultTimeoutMs),
324
+ result: runCommand(config.dispatch.suite_command, worktree, 'dispatch.suite_command', defaultTimeoutMs, env),
264
325
  };
265
326
  }
266
327
  else {
267
- return runDetected(worktree, defaultTimeoutMs);
328
+ return runDetected(worktree, defaultTimeoutMs, env);
268
329
  }
269
330
  // A declared capability's non-zero outcome is the suite's verdict even
270
331
  // without a parseable Vitest report. Retrying detection would replace it
271
332
  // with an unrelated guess about the worktree layout.
272
- if (primary.source === 'cap run test.full' ||
333
+ if (primary.source.startsWith('cap run ') ||
273
334
  primary.terminal ||
274
335
  primary.result.ok ||
275
336
  primary.result.readable !== false)
276
337
  return primary.result;
277
- const fallback = runDetected(worktree, defaultTimeoutMs);
338
+ const fallback = runDetected(worktree, defaultTimeoutMs, env);
278
339
  return {
279
340
  ...fallback,
280
341
  detail: `${fallback.detail ?? (fallback.ok ? 'suite green' : 'suite red')} [fallback after ${primary.source} was unreadable: ${primary.result.detail ?? 'no detail'}]`,
@@ -1 +1 @@
1
- {"version":3,"file":"batch-suite-runner.js","sourceRoot":"","sources":["../src/batch-suite-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"batch-suite-runner.js","sourceRoot":"","sources":["../src/batch-suite-runner.ts"],"names":[],"mappings":"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"}
@@ -72,6 +72,14 @@ export interface CapabilityEntry {
72
72
  * Default 0 (no floor) — opt in per capability.
73
73
  */
74
74
  minDurationMs?: number;
75
+ /**
76
+ * The repo's own admission (#777) that this capability routinely runs past
77
+ * any reasonable `cap run` budget — e.g. an unsharded full-repo `test.full`.
78
+ * The batch scheduler refuses to form a batch whose ONLY full gate is a
79
+ * timeout-prone `test.full` (no active `gate.batch`), rather than paying a
80
+ * gate that usually ends `suite-unreadable`. Default false.
81
+ */
82
+ timeoutProne?: boolean;
75
83
  }
76
84
  export interface CapabilityManifest {
77
85
  /** Absolute path of the manifest file, or null when no manifest exists. */
@@ -1 +1 @@
1
- {"version":3,"file":"capability.d.ts","sourceRoot":"","sources":["../src/capability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capability.d.ts","sourceRoot":"","sources":["../src/capability.ts"],"names":[],"mappings":"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"}
@@ -203,6 +203,13 @@ function parseCapabilityEntry(id, raw) {
203
203
  }
204
204
  minDurationMs = entry.min_duration_ms;
205
205
  }
206
+ let timeoutProne;
207
+ if (entry.timeout_prone !== undefined) {
208
+ if (typeof entry.timeout_prone !== 'boolean') {
209
+ throw new CapManifestError(`capability '${id}': timeout_prone must be true or false`);
210
+ }
211
+ timeoutProne = entry.timeout_prone;
212
+ }
206
213
  let assumptions;
207
214
  if (entry.assumptions !== undefined) {
208
215
  if (!Array.isArray(entry.assumptions)) {
@@ -210,7 +217,15 @@ function parseCapabilityEntry(id, raw) {
210
217
  }
211
218
  assumptions = entry.assumptions.map((probe, i) => parseAssumption(id, i, probe));
212
219
  }
213
- return { command: entry.command, lifecycle, assumptions, description, timeoutMs, minDurationMs };
220
+ return {
221
+ command: entry.command,
222
+ lifecycle,
223
+ assumptions,
224
+ description,
225
+ timeoutMs,
226
+ minDurationMs,
227
+ ...(timeoutProne !== undefined ? { timeoutProne } : {}),
228
+ };
214
229
  }
215
230
  function parseAssumption(id, index, raw) {
216
231
  if (typeof raw !== 'object' || raw === null || Array.isArray(raw)) {
@@ -1 +1 @@
1
- {"version":3,"file":"capability.js","sourceRoot":"","sources":["../src/capability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capability.js","sourceRoot":"","sources":["../src/capability.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -43,6 +43,7 @@ const sign_1 = require("./commands/sign");
43
43
  const skill_export_1 = require("./commands/skill-export");
44
44
  const sync_skills_1 = require("./commands/sync-skills");
45
45
  const traces_1 = require("./commands/traces");
46
+ const usage_1 = require("./commands/usage");
46
47
  const validate_1 = require("./commands/validate");
47
48
  const verify_1 = require("./commands/verify");
48
49
  const whoami_1 = require("./commands/whoami");
@@ -100,6 +101,7 @@ Agent-friendly: Run \`ai-dossier --agent\` for machine-readable capabilities.`);
100
101
  (0, config_cmd_1.registerConfigCommand)(commander_1.program);
101
102
  (0, cache_1.registerCacheCommand)(commander_1.program);
102
103
  (0, history_1.registerHistoryCommand)(commander_1.program);
104
+ (0, usage_1.registerUsageCommand)(commander_1.program);
103
105
  (0, doctor_1.registerDoctorCommand)(commander_1.program);
104
106
  (0, traces_1.registerTracesCommand)(commander_1.program);
105
107
  (0, runstate_1.registerRunstateCommand)(commander_1.program);