@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.
- package/README.md +73 -6
- package/dist/batch-suite-runner.d.ts +30 -6
- package/dist/batch-suite-runner.d.ts.map +1 -1
- package/dist/batch-suite-runner.js +86 -25
- package/dist/batch-suite-runner.js.map +1 -1
- package/dist/capability.d.ts +8 -0
- package/dist/capability.d.ts.map +1 -1
- package/dist/capability.js +16 -1
- package/dist/capability.js.map +1 -1
- package/dist/cli.js +2 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/classify.d.ts.map +1 -1
- package/dist/commands/classify.js +8 -2
- package/dist/commands/classify.js.map +1 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +10 -1
- package/dist/commands/run.js.map +1 -1
- package/dist/commands/sched.d.ts.map +1 -1
- package/dist/commands/sched.js +35 -0
- package/dist/commands/sched.js.map +1 -1
- package/dist/commands/usage.d.ts +84 -0
- package/dist/commands/usage.d.ts.map +1 -0
- package/dist/commands/usage.js +395 -0
- package/dist/commands/usage.js.map +1 -0
- package/dist/prescreen.d.ts +48 -5
- package/dist/prescreen.d.ts.map +1 -1
- package/dist/prescreen.js +195 -6
- package/dist/prescreen.js.map +1 -1
- package/dist/usage/collect-claude.d.ts +47 -0
- package/dist/usage/collect-claude.d.ts.map +1 -0
- package/dist/usage/collect-claude.js +237 -0
- package/dist/usage/collect-claude.js.map +1 -0
- package/dist/usage/collect-dispatch.d.ts +73 -0
- package/dist/usage/collect-dispatch.d.ts.map +1 -0
- package/dist/usage/collect-dispatch.js +297 -0
- package/dist/usage/collect-dispatch.js.map +1 -0
- package/dist/usage/collect-opencode.d.ts +74 -0
- package/dist/usage/collect-opencode.d.ts.map +1 -0
- package/dist/usage/collect-opencode.js +198 -0
- package/dist/usage/collect-opencode.js.map +1 -0
- package/dist/usage/host-session.d.ts +63 -0
- package/dist/usage/host-session.d.ts.map +1 -0
- package/dist/usage/host-session.js +325 -0
- package/dist/usage/host-session.js.map +1 -0
- package/dist/usage/ledger.d.ts +87 -0
- package/dist/usage/ledger.d.ts.map +1 -0
- package/dist/usage/ledger.js +268 -0
- package/dist/usage/ledger.js.map +1 -0
- package/dist/usage/types.d.ts +80 -0
- package/dist/usage/types.d.ts.map +1 -0
- package/dist/usage/types.js +11 -0
- package/dist/usage/types.js.map +1 -0
- package/dist/usage/util.d.ts +36 -0
- package/dist/usage/util.d.ts.map +1 -0
- package/dist/usage/util.js +158 -0
- package/dist/usage/util.js.map +1 -0
- 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": "
|
|
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
|
|
1055
|
-
|
|
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
|
-
*
|
|
39
|
-
*
|
|
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
|
|
43
|
-
* timeout controls only `cap run`; tier 2 and 3 retain this
|
|
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
|
|
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
|
-
*
|
|
109
|
-
*
|
|
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
|
|
117
|
-
const source =
|
|
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',
|
|
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
|
-
|
|
276
|
+
/** The worktree's manifest, or `null` when it is malformed — `cap run` reports that itself. */
|
|
277
|
+
function tryLoadManifest(worktree) {
|
|
233
278
|
try {
|
|
234
|
-
|
|
235
|
-
return entry?.lifecycle === 'active' ? (entry.timeoutMs ?? defaultTimeoutMs) : defaultTimeoutMs;
|
|
279
|
+
return (0, capability_1.loadCapabilityManifest)(worktree);
|
|
236
280
|
}
|
|
237
281
|
catch {
|
|
238
|
-
|
|
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
|
-
*
|
|
245
|
-
*
|
|
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
|
|
249
|
-
* timeout controls only `cap run`; tier 2 and 3 retain this
|
|
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
|
|
305
|
+
return (worktree, ctx) => {
|
|
306
|
+
const manifest = tryLoadManifest(worktree);
|
|
307
|
+
const env = suiteEnv(ctx);
|
|
255
308
|
let primary;
|
|
256
|
-
|
|
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
|
|
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":";AAAA
|
|
1
|
+
{"version":3,"file":"batch-suite-runner.js","sourceRoot":"","sources":["../src/batch-suite-runner.ts"],"names":[],"mappings":"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"}
|
package/dist/capability.d.ts
CHANGED
|
@@ -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. */
|
package/dist/capability.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capability.d.ts","sourceRoot":"","sources":["../src/capability.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAQH,oFAAoF;AACpF,eAAO,MAAM,cAAc,wBAAwB,CAAC;AACpD,+DAA+D;AAC/D,eAAO,MAAM,aAAa,kBAAkB,CAAC;AAE7C,MAAM,MAAM,iBAAiB,GACzB,IAAI,GACJ,aAAa,GACb,mBAAmB,GACnB,wBAAwB,CAAC;AAE7B,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEtD,4DAA4D;AAC5D,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAKnE,CAAC;AAcF;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAE9C;;;;;;;;GAQG;AACH,eAAO,MAAM,kBAAkB,GAAI,WAAW,MAAM,KAAG,MACb,CAAC;AAK3C,4EAA4E;AAC5E,QAAA,MAAM,gBAAgB,4CAA6C,CAAC;AACpE,KAAK,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAgBvD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,aAAa,CAAC;IACpB,0DAA0D;IAC1D,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,aAAa,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,oBAAoB,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAEtE,MAAM,WAAW,eAAe;IAC9B,4FAA4F;IAC5F,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,mBAAmB,CAAC;IAC/B,WAAW,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oFAAoF;IACpF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,2EAA2E;IAC3E,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CAC/C;AAED,8DAA8D;AAC9D,qBAAa,gBAAiB,SAAQ,KAAK;gBAC7B,OAAO,EAAE,MAAM;CAI5B;AAQD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAoBtE;AAED,gEAAgE;AAChE,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAmCrF;
|
|
1
|
+
{"version":3,"file":"capability.d.ts","sourceRoot":"","sources":["../src/capability.ts"],"names":[],"mappings":"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"}
|
package/dist/capability.js
CHANGED
|
@@ -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 {
|
|
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)) {
|
package/dist/capability.js.map
CHANGED
|
@@ -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);
|