review-council 2.1.4 → 3.1.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 +151 -0
- package/dist/config/data-dir.d.ts +6 -0
- package/dist/config/data-dir.js +12 -0
- package/dist/config/data-dir.js.map +1 -0
- package/dist/config/harness.d.ts +4 -0
- package/dist/config/harness.js +1 -1
- package/dist/config/harness.js.map +1 -1
- package/dist/config/loader.d.ts +1 -0
- package/dist/config/loader.js +1 -1
- package/dist/config/loader.js.map +1 -1
- package/dist/config/schema.d.ts +26 -0
- package/dist/config/schema.js +13 -0
- package/dist/config/schema.js.map +1 -1
- package/dist/consensus/finding-identity.d.ts +18 -0
- package/dist/consensus/finding-identity.js +0 -0
- package/dist/consensus/finding-identity.js.map +1 -0
- package/dist/consensus/types.d.ts +35 -0
- package/dist/consensus/voter.js +4 -0
- package/dist/consensus/voter.js.map +1 -1
- package/dist/converge/finding-identity.d.ts +4 -16
- package/dist/converge/finding-identity.js +0 -0
- package/dist/converge/finding-identity.js.map +1 -1
- package/dist/converge/run-state.d.ts +6 -0
- package/dist/converge/run-state.js +10 -1
- package/dist/converge/run-state.js.map +1 -1
- package/dist/dispatch/anthropic.js +6 -1
- package/dist/dispatch/anthropic.js.map +1 -1
- package/dist/dispatch/google.js +6 -1
- package/dist/dispatch/google.js.map +1 -1
- package/dist/dispatch/merge.d.ts +2 -2
- package/dist/dispatch/merge.js +26 -2
- package/dist/dispatch/merge.js.map +1 -1
- package/dist/dispatch/openai-compat.js +6 -1
- package/dist/dispatch/openai-compat.js.map +1 -1
- package/dist/dispatch/openai.js +6 -1
- package/dist/dispatch/openai.js.map +1 -1
- package/dist/dispatch/utils.d.ts +39 -1
- package/dist/dispatch/utils.js +65 -0
- package/dist/dispatch/utils.js.map +1 -1
- package/dist/evidence/format.d.ts +19 -0
- package/dist/evidence/format.js +109 -0
- package/dist/evidence/format.js.map +1 -0
- package/dist/evidence/reads.d.ts +11 -0
- package/dist/evidence/reads.js +16 -0
- package/dist/evidence/reads.js.map +1 -0
- package/dist/evidence/show.d.ts +10 -0
- package/dist/evidence/show.js +41 -0
- package/dist/evidence/show.js.map +1 -0
- package/dist/evidence/status.d.ts +37 -0
- package/dist/evidence/status.js +72 -0
- package/dist/evidence/status.js.map +1 -0
- package/dist/evidence/target.d.ts +17 -0
- package/dist/evidence/target.js +74 -0
- package/dist/evidence/target.js.map +1 -0
- package/dist/evidence/types.d.ts +152 -0
- package/dist/evidence/types.js +94 -0
- package/dist/evidence/types.js.map +1 -0
- package/dist/index.js +648 -45
- package/dist/index.js.map +1 -1
- package/dist/models/server-stats.d.ts +80 -0
- package/dist/models/server-stats.js +109 -0
- package/dist/models/server-stats.js.map +1 -0
- package/dist/models/stats-store.d.ts +2 -1
- package/dist/models/stats-store.js +2 -5
- package/dist/models/stats-store.js.map +1 -1
- package/dist/output/markdown.js +19 -3
- package/dist/output/markdown.js.map +1 -1
- package/dist/prepare/prompt-builder.d.ts +29 -0
- package/dist/prepare/prompt-builder.js +30 -10
- package/dist/prepare/prompt-builder.js.map +1 -1
- package/dist/report/run-header.d.ts +196 -0
- package/dist/report/run-header.js +286 -0
- package/dist/report/run-header.js.map +1 -0
- package/dist/report/uuid.d.ts +16 -0
- package/dist/report/uuid.js +41 -0
- package/dist/report/uuid.js.map +1 -0
- package/dist/resolver/git.d.ts +13 -0
- package/dist/resolver/git.js +36 -0
- package/dist/resolver/git.js.map +1 -1
- package/dist/resolver/github.d.ts +18 -0
- package/dist/resolver/github.js +110 -18
- package/dist/resolver/github.js.map +1 -1
- package/dist/resolver/target.d.ts +35 -0
- package/dist/resolver/target.js +112 -0
- package/dist/resolver/target.js.map +1 -0
- package/dist/resolver/types.d.ts +13 -0
- package/dist/telemetry/backfill.d.ts +86 -0
- package/dist/telemetry/backfill.js +446 -0
- package/dist/telemetry/backfill.js.map +1 -0
- package/dist/telemetry/credentials.d.ts +43 -0
- package/dist/telemetry/credentials.js +87 -0
- package/dist/telemetry/credentials.js.map +1 -0
- package/dist/telemetry/deliver.d.ts +109 -0
- package/dist/telemetry/deliver.js +404 -0
- package/dist/telemetry/deliver.js.map +1 -0
- package/dist/telemetry/envelope.d.ts +107 -0
- package/dist/telemetry/envelope.js +190 -0
- package/dist/telemetry/envelope.js.map +1 -0
- package/dist/telemetry/events.d.ts +41 -0
- package/dist/telemetry/events.js +47 -0
- package/dist/telemetry/events.js.map +1 -0
- package/dist/telemetry/notice.d.ts +14 -0
- package/dist/telemetry/notice.js +58 -0
- package/dist/telemetry/notice.js.map +1 -0
- package/dist/telemetry/outbox.d.ts +166 -0
- package/dist/telemetry/outbox.js +664 -0
- package/dist/telemetry/outbox.js.map +1 -0
- package/dist/telemetry/read-sink.d.ts +24 -0
- package/dist/telemetry/read-sink.js +21 -0
- package/dist/telemetry/read-sink.js.map +1 -0
- package/dist/telemetry/scrub.d.ts +43 -0
- package/dist/telemetry/scrub.js +179 -0
- package/dist/telemetry/scrub.js.map +1 -0
- package/dist/telemetry/sink.d.ts +106 -0
- package/dist/telemetry/sink.js +242 -0
- package/dist/telemetry/sink.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -86,10 +86,17 @@ Review a PR, a local diff, or uncommitted work.
|
|
|
86
86
|
| `--json-file <path>` | Write JSON output to a file |
|
|
87
87
|
| `--markdown <path>` | Write Markdown report to a file |
|
|
88
88
|
| `--ci` | Exit non-zero if critical/important findings exist |
|
|
89
|
+
| `--head-sha <sha>` | Exact head commit a patch file was taken from (patch files only) |
|
|
90
|
+
| `--base-sha <sha>` | Exact base commit a patch file was taken from (patch files only) |
|
|
91
|
+
| `--expect-head-sha <sha>` | Fail fast unless the resolved head commit equals this SHA |
|
|
92
|
+
| `--spec-source <source>` | Where `--spec` came from: `flag`, `repo_file`, or `harness_issue:<ID>` |
|
|
93
|
+
| `--converge-target <key>` / `--round <n>` / `--attempt <n>` | Converge context recorded in the report (or `RCL_CONVERGE_TARGET` / `_ROUND` / `_ATTEMPT`) |
|
|
89
94
|
| `--config <path>` | Path to a config file |
|
|
90
95
|
|
|
91
96
|
`--role`, `--roles`, and `--reviewer` are mutually exclusive. So are a positional target, `--staged`, and `--working-tree` — pick exactly one review source. Untracked files are invisible to `git diff` and therefore not reviewed.
|
|
92
97
|
|
|
98
|
+
**Self-describing reports (3.0).** Every report carries a `run` header: a client run id (UUIDv7), the rcl version, the target with its exact `head_sha`/`base_sha` (from GitHub for PRs, from `git rev-parse HEAD` and the merge-base with the remote default branch for `--staged`/`--working-tree`, from `--head-sha`/`--base-sha` for patch files) and a `diff_sha256`, the roster with each seat's lane (`blocking`, `secondary`, `async`, `verification`), a config digest with thresholds and gating inline, spec and context-file digests, a best-effort `runner` claim (`agent` / `ci` / `human`), timing, the CI verdict (computed even without `--ci`), and the converge context when run under rcl-converge. Every finding carries its stable converge `identity`, and every reviewer call records token `usage` where the provider reports it. Reports without a `run` header (pre-3.0) still load everywhere.
|
|
99
|
+
|
|
93
100
|
**Examples:**
|
|
94
101
|
|
|
95
102
|
```bash
|
|
@@ -238,6 +245,110 @@ rcl converge-verdict --target rcl-30 --round 2 \
|
|
|
238
245
|
|
|
239
246
|
---
|
|
240
247
|
|
|
248
|
+
### `rcl telemetry status` and `rcl telemetry flush`
|
|
249
|
+
|
|
250
|
+
Evidence delivery to Harness (epic IO-12475). In a repository that carries
|
|
251
|
+
`.harness-cli/config.json` and with a `harness login` (or `HARNESS_API_TOKEN` +
|
|
252
|
+
`HARNESS_API_URL` in CI), every `rcl review` / `rcl review-plan` records the
|
|
253
|
+
run on Harness after the report is written: the self-describing `run` header,
|
|
254
|
+
one row per consensus finding (with its stable identity), one row per reviewer
|
|
255
|
+
call (status, latency, token usage), the report's `stats`, and — at the default
|
|
256
|
+
`full` level — the JSON and Markdown reports exactly as written, digest-checked
|
|
257
|
+
by the server. The converge commands report their events (attempt claims, cap
|
|
258
|
+
changes, processed rounds, verdicts, resolutions) the same way. Never sent:
|
|
259
|
+
provider API keys, `GITHUB_TOKEN`, the Harness credential, environment
|
|
260
|
+
variables, prompts or raw model answers; every free-text field is truncated
|
|
261
|
+
and scrubbed for key-shaped strings before it leaves the process.
|
|
262
|
+
|
|
263
|
+
The review never blocks on the network. A delivery Harness could not take is
|
|
264
|
+
spooled to `~/.rcl/outbox/<run id>/` and retried, with its original run id,
|
|
265
|
+
at the start of every rcl command (bounded to five seconds) or by
|
|
266
|
+
`rcl telemetry flush`. One dim status line says what happened:
|
|
267
|
+
`Evidence recorded: <url>`, `Evidence spooled (Harness unreachable); run rcl
|
|
268
|
+
telemetry flush`, or `Evidence not sent: <host> has not enabled review
|
|
269
|
+
evidence for this organization`. `--evidence-required` exits 4 when the
|
|
270
|
+
evidence is incomplete: the envelope was spooled or refused, the organization
|
|
271
|
+
has evidence off, or a declared artifact did not land (a patch file then needs
|
|
272
|
+
`--head-sha`, and the flag contradicts `--no-telemetry` / `RCL_TELEMETRY=off`).
|
|
273
|
+
Only a spooled delivery is worth `rcl telemetry flush --run <id>`; the status
|
|
274
|
+
line says which. Under `--ci` the gate verdict keeps its exit code and the
|
|
275
|
+
evidence failure is printed beside it. The first delivery from a machine
|
|
276
|
+
prints a one-time notice naming the host and what is sent
|
|
277
|
+
(`~/.rcl/telemetry-notice` records it).
|
|
278
|
+
|
|
279
|
+
```bash
|
|
280
|
+
rcl telemetry status # level, credential source, what waits in the outbox
|
|
281
|
+
rcl telemetry flush # deliver everything spooled, to completion
|
|
282
|
+
rcl telemetry flush --run <run id> # one run only
|
|
283
|
+
rcl review owner/repo#7 --no-telemetry # keep this review on the machine
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
```yaml
|
|
287
|
+
# .review-council.yml
|
|
288
|
+
harness:
|
|
289
|
+
telemetry: full # off | envelope | findings | full (default)
|
|
290
|
+
parseFailures: false # send a parse-failed call's raw answer (scrubbed, 32 KB cap)
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
---
|
|
294
|
+
|
|
295
|
+
### `rcl evidence status` and `rcl evidence show`
|
|
296
|
+
|
|
297
|
+
What Harness holds — never the client's own claim. `rcl evidence status`
|
|
298
|
+
prints the gate status Harness computed for a pull request: its known head,
|
|
299
|
+
the advisory and enforced projections (status, the rounds behind them, the
|
|
300
|
+
actionable findings still open) and the merge decision once it merged. The
|
|
301
|
+
exit code is the contract the skills gate on:
|
|
302
|
+
|
|
303
|
+
| exit | meaning |
|
|
304
|
+
| --- | --- |
|
|
305
|
+
| 0 | the judged projection (advisory by default, `--enforced` on request) is `converged` |
|
|
306
|
+
| 1 | any other status: `none`, `stale`, `unverified`, `inconclusive`, `fixes_pending`, `unresolved` |
|
|
307
|
+
| 2 | the pull request could not be named |
|
|
308
|
+
| 3 | the read could not be answered: no credential, evidence off for the organization, unknown pull request, refused credential, unreachable host — never reported as "not converged" |
|
|
309
|
+
|
|
310
|
+
`rcl evidence show <run id>` prints one recorded run: header and verification,
|
|
311
|
+
credential tier and runner, reviewer health, artifact state, and every finding
|
|
312
|
+
with its identity, gating reason and triage verdict (`—` until the server
|
|
313
|
+
joins the verdict onto the finding).
|
|
314
|
+
|
|
315
|
+
The reads use the same credential rules as delivery — the stored `harness
|
|
316
|
+
login`, or `HARNESS_API_TOKEN` + `HARNESS_API_URL` in CI, the token sent to
|
|
317
|
+
its own host only — and need `reviews:read`. They do not depend on the
|
|
318
|
+
telemetry level: switching delivery off does not blind them.
|
|
319
|
+
|
|
320
|
+
```bash
|
|
321
|
+
rcl evidence status # error: name the pull request
|
|
322
|
+
rcl evidence status 8524 # against the current checkout's origin remote
|
|
323
|
+
rcl evidence status '#8524' --enforced
|
|
324
|
+
rcl evidence status allocator-one/rcl#42 --json
|
|
325
|
+
rcl evidence status https://github.com/allocator-one/rcl/pull/42
|
|
326
|
+
rcl evidence show 01a08032-0838-76db-ade3-1990f6e54072
|
|
327
|
+
```
|
|
328
|
+
|
|
329
|
+
### `--for-pr` on a patch-file review
|
|
330
|
+
|
|
331
|
+
A patch-file review (`rcl review changes.patch`) carries no repository or pull
|
|
332
|
+
request, so Harness records it as a `patch` run it cannot verify or count for
|
|
333
|
+
any gate. `--for-pr owner/repo#N` (or a pull request URL) names the pull
|
|
334
|
+
request the patch was taken from (`RCL_FOR_PR` in the environment does the
|
|
335
|
+
same for patch files): the run is bound to that pull request and its
|
|
336
|
+
`--head-sha` — required with the flag — is verified against the pull
|
|
337
|
+
request's head. Owner and repository are lower-cased, as GitHub reads them. Counting the round for that pull request's
|
|
338
|
+
gate is the server half (IO-12585); until it lands, `rcl evidence status`
|
|
339
|
+
still reads `stale`/`none` for patch-file loops. The flag is refused on PR and
|
|
340
|
+
git-mode targets, which name their own pull request or checkout. `rcl-converge` passes `--converge-target`, `--round`
|
|
341
|
+
and `--attempt` on every round and adds `--for-pr` when a pull request loop
|
|
342
|
+
reviews a patch file taken from the pull request (a pull request target names
|
|
343
|
+
its own). A converge
|
|
344
|
+
target of the `owner/repo#N` form attributes the run the same way; a slug such
|
|
345
|
+
as `rcl-7` does not.
|
|
346
|
+
|
|
347
|
+
```bash
|
|
348
|
+
rcl review round-3.patch --head-sha "$HEAD" --base-sha "$BASE" --for-pr allocator-one/rcl#42 \
|
|
349
|
+
--converge-target allocator-one/rcl#42 --round 3 --attempt 3 --evidence-required
|
|
350
|
+
```
|
|
351
|
+
|
|
241
352
|
### `rcl models`
|
|
242
353
|
|
|
243
354
|
The tool's own memory of which reviewers earn their seat. Every reviewer call
|
|
@@ -262,6 +373,43 @@ rcl models seed --from ~/recovered-rcl-artifacts # backfill from reports + con
|
|
|
262
373
|
|
|
263
374
|
---
|
|
264
375
|
|
|
376
|
+
Since 3.1 the table merges the organization's window from Harness
|
|
377
|
+
(`GET /api/v1/reviews/model-stats`, the server-side `rcl models` over every run
|
|
378
|
+
the org recorded, backfilled history included) with this machine's store: for a
|
|
379
|
+
model the server holds at least 20 outcomes for, the server's weight is used
|
|
380
|
+
(`source: server`); below that the local store decides (`local`); a model
|
|
381
|
+
neither knows enough about keeps the neutral weight (`neutral`). Reviews weight
|
|
382
|
+
consensus the same way, asking the server with a three-second bound and falling
|
|
383
|
+
back to the local store when it cannot answer. `--local` shows this machine's
|
|
384
|
+
view alone; `--json` carries `server` (host, window, rows) and `weights` with
|
|
385
|
+
their `source`.
|
|
386
|
+
|
|
387
|
+
```bash
|
|
388
|
+
rcl models # org-wide where Harness has enough history, local otherwise
|
|
389
|
+
rcl models show --local # this machine's store only
|
|
390
|
+
rcl models show --window 30 --json
|
|
391
|
+
```
|
|
392
|
+
|
|
393
|
+
### `rcl telemetry backfill`
|
|
394
|
+
|
|
395
|
+
Recovered history becomes day-one evidence on Harness. `rcl telemetry backfill
|
|
396
|
+
--from <dir> --repo <owner/repo>` reads the pre-3.0 `rcl-report-*.json`
|
|
397
|
+
reports and `rcl-converge-*-ledger.md` ledgers in a directory (the same layout
|
|
398
|
+
`rcl models seed` reads) and posts each report as a run with `provenance:
|
|
399
|
+
backfill`: a synthesized header bound to the named repository (target `patch`,
|
|
400
|
+
the report bytes as the digest, a runner claim naming this command), the
|
|
401
|
+
report's findings with their stable identities, its reviewer calls, and the
|
|
402
|
+
report files as artifacts. Ledger bullets matched to a round's findings become
|
|
403
|
+
`verdicts_recorded` events. Run ids are UUIDv5 of `(host, repo, sha256 of the
|
|
404
|
+
report)` and event ids derive from them, so running the backfill twice reports
|
|
405
|
+
the second run as `0 new` — nothing is duplicated. Backfilled runs count for
|
|
406
|
+
model stats and analytics and never enter a gate decision.
|
|
407
|
+
|
|
408
|
+
```bash
|
|
409
|
+
rcl telemetry backfill --from ~/recovered-rcl-artifacts --repo allocator-one/allocator-one --dry-run
|
|
410
|
+
rcl telemetry backfill --from ~/recovered-rcl-artifacts --repo allocator-one/allocator-one
|
|
411
|
+
```
|
|
412
|
+
|
|
265
413
|
## Config File
|
|
266
414
|
|
|
267
415
|
Place `.review-council.yml` in your project root (or any parent directory). All fields are optional.
|
|
@@ -390,6 +538,9 @@ For the full algorithm, see [CONSENSUS_V2_SPEC.md](./CONSENSUS_V2_SPEC.md).
|
|
|
390
538
|
| `GITHUB_TOKEN` | GitHub personal access token (PR fetch and post) |
|
|
391
539
|
| `RCL_DEBUG` | Set to any value to print full error stack traces |
|
|
392
540
|
| `RCL_NO_HARNESS_KEYS` | Set to any value to disable Harness key distribution (below) |
|
|
541
|
+
| `RCL_TELEMETRY` | `off` keeps every review on the machine (see `rcl telemetry`) |
|
|
542
|
+
| `HARNESS_API_TOKEN` | CI credential for evidence delivery; requires `HARNESS_API_URL` — never pairs with the stored login host |
|
|
543
|
+
| `HARNESS_API_URL` | The Harness host `HARNESS_API_TOKEN` was minted by |
|
|
393
544
|
|
|
394
545
|
The default blocking council is direct-API only (Anthropic, OpenAI, Google) —
|
|
395
546
|
no default review round ever waits on an OpenRouter-routed call. The default
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Where rcl keeps its per-machine state (model stats, the telemetry outbox,
|
|
3
|
+
* the consent notice): `RCL_DATA_DIR`, or `~/.rcl`. Shared here so no
|
|
4
|
+
* feature module depends on another for the location.
|
|
5
|
+
*/
|
|
6
|
+
export declare function resolveDataDir(env?: NodeJS.ProcessEnv): string;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { homedir } from 'node:os';
|
|
2
|
+
import { join } from 'node:path';
|
|
3
|
+
/**
|
|
4
|
+
* Where rcl keeps its per-machine state (model stats, the telemetry outbox,
|
|
5
|
+
* the consent notice): `RCL_DATA_DIR`, or `~/.rcl`. Shared here so no
|
|
6
|
+
* feature module depends on another for the location.
|
|
7
|
+
*/
|
|
8
|
+
export function resolveDataDir(env = process.env) {
|
|
9
|
+
const override = env['RCL_DATA_DIR']?.trim();
|
|
10
|
+
return override && override.length > 0 ? override : join(homedir(), '.rcl');
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=data-dir.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-dir.js","sourceRoot":"","sources":["../../src/config/data-dir.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,MAAyB,OAAO,CAAC,GAAG;IACjE,MAAM,QAAQ,GAAG,GAAG,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC;IAC7C,OAAO,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC;AAC9E,CAAC"}
|
package/dist/config/harness.d.ts
CHANGED
|
@@ -18,6 +18,10 @@ export declare function findHarnessRepoConfig(startDir: string): string | null;
|
|
|
18
18
|
* harness-cli side (exactly {url, token}) — see its core/credentials.ts.
|
|
19
19
|
*/
|
|
20
20
|
export declare function defaultCredentialsPath(env: Record<string, string | undefined>): string;
|
|
21
|
+
export declare function readStoredCredentials(path: string): Promise<{
|
|
22
|
+
url: string;
|
|
23
|
+
token: string;
|
|
24
|
+
} | null>;
|
|
21
25
|
/**
|
|
22
26
|
* The one entry point: called before config loading (default-model
|
|
23
27
|
* degradation for a missing OPENROUTER_API_KEY happens there, so the key
|
package/dist/config/harness.js
CHANGED
|
@@ -58,7 +58,7 @@ export function defaultCredentialsPath(env) {
|
|
|
58
58
|
const base = xdg !== undefined && xdg !== '' && isAbsolute(xdg) ? xdg : join(homedir(), '.config');
|
|
59
59
|
return join(base, 'harness', 'credentials.json');
|
|
60
60
|
}
|
|
61
|
-
async function readStoredCredentials(path) {
|
|
61
|
+
export async function readStoredCredentials(path) {
|
|
62
62
|
try {
|
|
63
63
|
const parsed = JSON.parse(await readFile(path, 'utf-8'));
|
|
64
64
|
if (typeof parsed === 'object' && parsed !== null) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harness.js","sourceRoot":"","sources":["../../src/config/harness.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAExD;;;;;;;;;;;;;;;;;GAiBG;AAEH,6EAA6E;AAC7E,MAAM,iBAAiB,GAA2B;IAChD,SAAS,EAAE,mBAAmB;IAC9B,MAAM,EAAE,gBAAgB;IACxB,MAAM,EAAE,gBAAgB;IACxB,UAAU,EAAE,oBAAoB;CACjC,CAAC;AAEF,+EAA+E;AAC/E,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAiB/B,sEAAsE;AACtE,MAAM,UAAU,qBAAqB,CAAC,QAAgB;IACpD,IAAI,GAAG,GAAG,QAAQ,CAAC;IACnB,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;IACjC,SAAS,CAAC;QACR,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;QAC3D,IAAI,CAAC;YACH,kEAAkE;YAClE,6BAA6B;YAC7B,UAAU,CAAC,SAAS,CAAC,CAAC;YACtB,OAAO,SAAS,CAAC;QACnB,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;QACD,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC9B,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAAuC;IAC5E,MAAM,GAAG,GAAG,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;IACnG,OAAO,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC;AACnD,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,IAAY;
|
|
1
|
+
{"version":3,"file":"harness.js","sourceRoot":"","sources":["../../src/config/harness.ts"],"names":[],"mappings":"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"}
|
package/dist/config/loader.d.ts
CHANGED
|
@@ -7,4 +7,5 @@ import { type Config } from './schema.js';
|
|
|
7
7
|
export declare class ConfigError extends Error {
|
|
8
8
|
constructor(message: string);
|
|
9
9
|
}
|
|
10
|
+
export declare const SEARCH_PLACES: string[];
|
|
10
11
|
export declare function loadConfig(configPath?: string, searchFrom?: string): Promise<Config>;
|
package/dist/config/loader.js
CHANGED
|
@@ -16,7 +16,7 @@ export class ConfigError extends Error {
|
|
|
16
16
|
// unsupported for discovery: rcl is routinely run inside untrusted
|
|
17
17
|
// checkouts, and search-loading attacker-controlled JS would execute it
|
|
18
18
|
// with the user's API keys in env.
|
|
19
|
-
const SEARCH_PLACES = [
|
|
19
|
+
export const SEARCH_PLACES = [
|
|
20
20
|
'.review-council.yml',
|
|
21
21
|
'.review-council.yaml',
|
|
22
22
|
'.review-council.json',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAe,MAAM,aAAa,CAAC;AACxD,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,wBAAwB,EACxB,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,eAAe,CAAC;AAEvB;;;;GAIG;AACH,MAAM,OAAO,WAAY,SAAQ,KAAK;IACpC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;IAC5B,CAAC;CACF;AAED,yEAAyE;AACzE,mEAAmE;AACnE,wEAAwE;AACxE,mCAAmC;AACnC,MAAM,aAAa,GAAG;
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"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"}
|
package/dist/config/schema.d.ts
CHANGED
|
@@ -57,6 +57,23 @@ export declare const GatingSchema: z.ZodObject<{
|
|
|
57
57
|
verificationModel: z.ZodOptional<z.ZodString>;
|
|
58
58
|
verificationTimeout: z.ZodOptional<z.ZodNumber>;
|
|
59
59
|
}, z.core.$strip>;
|
|
60
|
+
/**
|
|
61
|
+
* Evidence delivery to Harness (epic IO-12475, section 8.6). `telemetry`
|
|
62
|
+
* is the payload tier: `off` sends nothing, `envelope` the run header and
|
|
63
|
+
* stats, `findings` adds findings and calls, `full` (default) also uploads
|
|
64
|
+
* the JSON and Markdown reports. `parseFailures` opts in to sending a
|
|
65
|
+
* parse-failed call's raw model answer (fenced code and key-shaped strings
|
|
66
|
+
* removed, 32 KB cap).
|
|
67
|
+
*/
|
|
68
|
+
export declare const HarnessSchema: z.ZodObject<{
|
|
69
|
+
telemetry: z.ZodOptional<z.ZodEnum<{
|
|
70
|
+
findings: "findings";
|
|
71
|
+
off: "off";
|
|
72
|
+
envelope: "envelope";
|
|
73
|
+
full: "full";
|
|
74
|
+
}>>;
|
|
75
|
+
parseFailures: z.ZodOptional<z.ZodBoolean>;
|
|
76
|
+
}, z.core.$strip>;
|
|
60
77
|
export declare const ConfigSchema: z.ZodObject<{
|
|
61
78
|
models: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
62
79
|
secondaryModels: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
@@ -110,6 +127,15 @@ export declare const ConfigSchema: z.ZodObject<{
|
|
|
110
127
|
context: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
111
128
|
spec: z.ZodOptional<z.ZodString>;
|
|
112
129
|
focus: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
130
|
+
harness: z.ZodOptional<z.ZodObject<{
|
|
131
|
+
telemetry: z.ZodOptional<z.ZodEnum<{
|
|
132
|
+
findings: "findings";
|
|
133
|
+
off: "off";
|
|
134
|
+
envelope: "envelope";
|
|
135
|
+
full: "full";
|
|
136
|
+
}>>;
|
|
137
|
+
parseFailures: z.ZodOptional<z.ZodBoolean>;
|
|
138
|
+
}, z.core.$strip>>;
|
|
113
139
|
}, z.core.$strip>;
|
|
114
140
|
export type Config = z.infer<typeof ConfigSchema>;
|
|
115
141
|
export type ReviewerPair = z.infer<typeof ReviewerPairSchema>;
|
package/dist/config/schema.js
CHANGED
|
@@ -53,6 +53,18 @@ export const GatingSchema = z.object({
|
|
|
53
53
|
/** Per-call timeout (ms) for the verification pass. */
|
|
54
54
|
verificationTimeout: z.number().positive().optional(),
|
|
55
55
|
});
|
|
56
|
+
/**
|
|
57
|
+
* Evidence delivery to Harness (epic IO-12475, section 8.6). `telemetry`
|
|
58
|
+
* is the payload tier: `off` sends nothing, `envelope` the run header and
|
|
59
|
+
* stats, `findings` adds findings and calls, `full` (default) also uploads
|
|
60
|
+
* the JSON and Markdown reports. `parseFailures` opts in to sending a
|
|
61
|
+
* parse-failed call's raw model answer (fenced code and key-shaped strings
|
|
62
|
+
* removed, 32 KB cap).
|
|
63
|
+
*/
|
|
64
|
+
export const HarnessSchema = z.object({
|
|
65
|
+
telemetry: z.enum(['off', 'envelope', 'findings', 'full']).optional(),
|
|
66
|
+
parseFailures: z.boolean().optional(),
|
|
67
|
+
});
|
|
56
68
|
export const ConfigSchema = z.object({
|
|
57
69
|
models: z.array(z.string()).optional(),
|
|
58
70
|
secondaryModels: z.array(z.string()).optional(),
|
|
@@ -86,5 +98,6 @@ export const ConfigSchema = z.object({
|
|
|
86
98
|
context: z.array(z.string()).optional(),
|
|
87
99
|
spec: z.string().optional(),
|
|
88
100
|
focus: z.array(z.string()).optional(),
|
|
101
|
+
harness: HarnessSchema.optional(),
|
|
89
102
|
});
|
|
90
103
|
//# sourceMappingURL=schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export interface FindingLocation {
|
|
2
|
+
file: string;
|
|
3
|
+
category: string;
|
|
4
|
+
startLine: number;
|
|
5
|
+
endLine: number;
|
|
6
|
+
}
|
|
7
|
+
export interface IdentityEntry extends FindingLocation {
|
|
8
|
+
key: string;
|
|
9
|
+
}
|
|
10
|
+
/** Deterministic 16-hex-char identity for a finding's anchor. */
|
|
11
|
+
export declare function stableFindingKey(f: FindingLocation): string;
|
|
12
|
+
/**
|
|
13
|
+
* Match a finding against persisted entries by location: same file, same
|
|
14
|
+
* category, line ranges overlapping within `lineWindow`. Overlap matching
|
|
15
|
+
* (not just the hash) keeps identity stable across bucket boundaries when
|
|
16
|
+
* fixes shift lines slightly. Returns the best-overlapping entry.
|
|
17
|
+
*/
|
|
18
|
+
export declare function matchFinding(f: FindingLocation, entries: readonly IdentityEntry[], lineWindow: number): IdentityEntry | undefined;
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"finding-identity.js","sourceRoot":"","sources":["../../src/consensus/finding-identity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C;;;;;GAKG;AAEH,4EAA4E;AAC5E,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAa/B,iEAAiE;AACjE,MAAM,UAAU,gBAAgB,CAAC,CAAkB;IACjD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,GAAG,mBAAmB,CAAC,CAAC;IAC7D,OAAO,UAAU,CAAC,QAAQ,CAAC;SACxB,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,QAAQ,IAAI,MAAM,EAAE,CAAC;SAC3C,MAAM,CAAC,KAAK,CAAC;SACb,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAC1B,CAAkB,EAClB,OAAiC,EACjC,UAAkB;IAElB,IAAI,IAA+B,CAAC;IACpC,IAAI,YAAY,GAAG,QAAQ,CAAC;IAC5B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ;YAAE,SAAS;QACrE,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC;YAAE,SAAS;QAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;QACzD,IAAI,QAAQ,GAAG,YAAY,EAAE,CAAC;YAC5B,IAAI,GAAG,KAAK,CAAC;YACb,YAAY,GAAG,QAAQ,CAAC;QAC1B,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -9,12 +9,33 @@ export interface Finding {
|
|
|
9
9
|
description: string;
|
|
10
10
|
suggestedFix?: string;
|
|
11
11
|
}
|
|
12
|
+
/**
|
|
13
|
+
* Token usage one reviewer call consumed, normalized across providers
|
|
14
|
+
* (evidence ledger, IO-12475 section 5.2):
|
|
15
|
+
*
|
|
16
|
+
* - `inputTokens`: every prompt token the call processed, including
|
|
17
|
+
* prompt-cache reads and writes where the provider bills them separately.
|
|
18
|
+
* - `outputTokens`: every generated token, reasoning included.
|
|
19
|
+
* - `reasoningTokens`: the reasoning/thinking SUBSET of `outputTokens`, for
|
|
20
|
+
* providers that break it out (OpenAI, Google); Anthropic does not.
|
|
21
|
+
*
|
|
22
|
+
* So `inputTokens + outputTokens` is the call's total, and the three fields
|
|
23
|
+
* are never summed together. Cost is computed server-side from a price
|
|
24
|
+
* table — never here.
|
|
25
|
+
*/
|
|
26
|
+
export interface TokenUsage {
|
|
27
|
+
inputTokens?: number;
|
|
28
|
+
outputTokens?: number;
|
|
29
|
+
reasoningTokens?: number;
|
|
30
|
+
}
|
|
12
31
|
export interface ModelReview {
|
|
13
32
|
model: string;
|
|
14
33
|
role: string;
|
|
15
34
|
provider: string;
|
|
16
35
|
findings: Finding[];
|
|
17
36
|
durationMs: number;
|
|
37
|
+
/** Token usage where the SDK exposes it; absent otherwise. */
|
|
38
|
+
usage?: TokenUsage;
|
|
18
39
|
/**
|
|
19
40
|
* `parse_failed` is distinct from `error`: the model answered, but its
|
|
20
41
|
* output could not be turned into findings. Both are excluded from
|
|
@@ -84,6 +105,14 @@ export interface ConsensusInfo {
|
|
|
84
105
|
}
|
|
85
106
|
export interface ConsensusFinding extends Finding {
|
|
86
107
|
consensus: ConsensusInfo;
|
|
108
|
+
/**
|
|
109
|
+
* Stable cross-round identity — the converge `stableFindingKey` (file,
|
|
110
|
+
* category, line bucket) computed at review time, so identity exists in
|
|
111
|
+
* the report itself and not only inside the converge state (IO-12475
|
|
112
|
+
* section 8.2). Always set on findings rcl ≥ 3.0 produces; optional in the
|
|
113
|
+
* type so pre-3.0 reports still load.
|
|
114
|
+
*/
|
|
115
|
+
identity?: string;
|
|
87
116
|
/**
|
|
88
117
|
* Why this finding does (or does not) block convergence — see
|
|
89
118
|
* `consensus/gating.ts` (RCL-23). Absent in `all-findings` fallback mode,
|
|
@@ -100,6 +129,12 @@ export interface DeduplicatedGroup {
|
|
|
100
129
|
}>;
|
|
101
130
|
}
|
|
102
131
|
export interface ReviewResult {
|
|
132
|
+
/**
|
|
133
|
+
* Self-describing run header (rcl ≥ 3.0): what was reviewed (exact head
|
|
134
|
+
* and base SHA, diff digest), by which roster and settings, when, by whom.
|
|
135
|
+
* Optional so every reader of pre-3.0 reports keeps working.
|
|
136
|
+
*/
|
|
137
|
+
run?: import('../report/run-header.js').RunHeader;
|
|
103
138
|
reviews: ModelReview[];
|
|
104
139
|
findings: ConsensusFinding[];
|
|
105
140
|
/**
|
package/dist/consensus/voter.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { CONFIDENCE_THRESHOLDS, DEFAULT_THRESHOLDS } from '../config/defaults.js';
|
|
2
2
|
import { linesOverlap, hasOpposingSentiment, combinedSimilarity } from './deduper.js';
|
|
3
|
+
import { stableFindingKey } from './finding-identity.js';
|
|
3
4
|
const SEVERITY_LEVELS = ['critical', 'important', 'minor', 'nitpick'];
|
|
4
5
|
function severityIndex(s) {
|
|
5
6
|
const idx = SEVERITY_LEVELS.indexOf(s);
|
|
@@ -379,6 +380,9 @@ export function computeConsensus(groups, reviews, roleMap, thresholds = {}, mode
|
|
|
379
380
|
...rep,
|
|
380
381
|
severity: finalSeverity,
|
|
381
382
|
consensus,
|
|
383
|
+
// Identity exists in the report itself, not only in the converge
|
|
384
|
+
// state, so a stored report can be matched across rounds and heads.
|
|
385
|
+
identity: stableFindingKey(rep),
|
|
382
386
|
};
|
|
383
387
|
});
|
|
384
388
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"voter.js","sourceRoot":"","sources":["../../src/consensus/voter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"voter.js","sourceRoot":"","sources":["../../src/consensus/voter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +1,6 @@
|
|
|
1
|
-
export interface FindingLocation {
|
|
2
|
-
file: string;
|
|
3
|
-
category: string;
|
|
4
|
-
startLine: number;
|
|
5
|
-
endLine: number;
|
|
6
|
-
}
|
|
7
|
-
export interface IdentityEntry extends FindingLocation {
|
|
8
|
-
key: string;
|
|
9
|
-
}
|
|
10
|
-
/** Deterministic 16-hex-char identity for a finding's anchor. */
|
|
11
|
-
export declare function stableFindingKey(f: FindingLocation): string;
|
|
12
1
|
/**
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
* fixes shift lines slightly. Returns the best-overlapping entry.
|
|
2
|
+
* Compatibility re-export. Finding identity moved to `consensus/` in 3.0 —
|
|
3
|
+
* it is a property of every consensus finding, so the core engine owns it
|
|
4
|
+
* and the converge layer imports downward, not the other way round.
|
|
17
5
|
*/
|
|
18
|
-
export
|
|
6
|
+
export * from '../consensus/finding-identity.js';
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"finding-identity.js","sourceRoot":"","sources":["../../src/converge/finding-identity.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"finding-identity.js","sourceRoot":"","sources":["../../src/converge/finding-identity.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,cAAc,kCAAkC,CAAC"}
|
|
@@ -54,9 +54,11 @@ export interface ConvergeRunState {
|
|
|
54
54
|
version: typeof STATE_VERSION;
|
|
55
55
|
target: string;
|
|
56
56
|
roundCap: number;
|
|
57
|
+
/** `runId` is the report's `run.id` (rcl ≥ 3.0), which converge-verdict sends with every verdict. */
|
|
57
58
|
rounds: Array<{
|
|
58
59
|
round: number;
|
|
59
60
|
counts: RoundCounts;
|
|
61
|
+
runId?: string;
|
|
60
62
|
}>;
|
|
61
63
|
findings: Record<string, FindingEntry>;
|
|
62
64
|
updatedAt: string;
|
|
@@ -89,6 +91,8 @@ export interface RoundReport {
|
|
|
89
91
|
}
|
|
90
92
|
export declare function convergeRunStatePath(gitCommonDir: string, target: string): string;
|
|
91
93
|
export declare function loadConvergeRunState(gitCommonDir: string, target: string): Promise<ConvergeRunState | undefined>;
|
|
94
|
+
/** The run id recorded for a round, when its report carried one. */
|
|
95
|
+
export declare function roundRunId(state: ConvergeRunState | undefined, round: number): string | undefined;
|
|
92
96
|
/**
|
|
93
97
|
* Gating reason for a finding, tolerating legacy reports without RCL-23
|
|
94
98
|
* annotations. Shared with the CLI so classification and display agree.
|
|
@@ -120,6 +124,8 @@ export declare function processRoundReport(options: {
|
|
|
120
124
|
findings: ConsensusFinding[];
|
|
121
125
|
maxRounds?: number;
|
|
122
126
|
lineWindow?: number;
|
|
127
|
+
/** The report's own run id, kept so verdicts can be bound to the round's run. */
|
|
128
|
+
runId?: string;
|
|
123
129
|
}): Promise<RoundReport>;
|
|
124
130
|
/**
|
|
125
131
|
* Resolution of one evidence round after triage (RCL-30). A round whose
|