Skip to content

v3.1.0

Choose a tag to compare

@mstroeck mstroeck released this 15 Sep 10:00
· 22 commits to main since this release
63a886c
  • rcl evidence status reports a pull request nothing has been judged for
    (RCL-44). Harness sends conclusive: null for a projection without a
    judged current-head run (status none, stale, unverified); the reader
    refused every such answer as malformed, so the command failed exactly where
    it should have said "no evidence yet". conclusive is now boolean or null,
    an unjudged projection prints without an (inconclusive) label, and the
    exit status is unchanged (1, not converged).

  • rcl review … --for-pr owner/repo#N (RCL-39; RCL_FOR_PR): a
    patch-file review is bound to the pull request it was taken from
    (target.repo, pr_number, url on the patch target), so Harness can
    verify its --head-sha against that pull request's head; counting such a
    round for the pull request's gate is the server half, IO-12585 — until it
    lands, rcl evidence status still reads stale/none for patch-file loops.
    A --converge-target of the same form attributes the run too; the flag
    needs --head-sha, lower-cases the names, and is refused on PR and
    git-mode targets, which name their own (RCL_FOR_PR only ever attributes a
    patch file). The
    rcl-converge skill passes --converge-target '<TARGET>' --round <R> --attempt <ATTEMPT> on every launch and adds --for-pr <owner/repo#N> when
    the round reviews a patch file taken from the pull request (a pull request or
    git-mode target names its own), counts a
    spooled round as evidence only once its flush is acknowledged (ledger
    evidence: pending until then), reads rcl evidence status after the loop
    next to the machine resolution, and records that the converge ledger is
    rendered by Harness (IO-12482) rather than uploaded — the server accepts
    only artifacts a run declared at delivery.

  • Org-wide model weights (RCL-38): rcl models merges Harness's
    GET /api/v1/reviews/model-stats (the organization's window over every run
    it recorded, backfilled history included) with this machine's store — the
    server's weight for a model it holds ≥ 20 outcomes for, the local weight
    below that, neutral for a model neither knows enough about — and shows each
    row's source; --local keeps to the machine. Reviews weight consensus the
    same way (loadMergedWeights, three-second bound, local fallback).

  • rcl telemetry backfill --from <dir> --repo <owner/repo> [--dry-run] [--json]
    (RCL-38): pre-3.0 reports and converge ledgers become runs with
    provenance: backfill (synthesized header bound to the repository, findings
    with stable identities, reviewer calls, both report files as artifacts) and
    verdicts_recorded events; ids are UUIDv5 of (host, repo, sha256 of the report) so a second run adds nothing. RunHeader.provenance and uuidv5
    are new; openReadSink is the shared credential-only sink for reads.

  • rcl evidence status [<pr>] and rcl evidence show <run id> (RCL-41):
    the read side of the evidence ledger. status fetches
    GET /api/v1/reviews/prs/:owner/:repo/:number — a bare N or #N is read
    against the checkout's origin remote, owner/repo#N and pull request URLs
    stand alone — and prints both projections, their rounds, the open actionable
    findings and the merge decision; --json prints the API object. Exit 0 only
    when the judged projection (--enforced or the default advisory) is
    converged, 1 for any other status, 2 when the pull request cannot be
    named, 3 when the read could not be answered (no credential, evidence off,
    unknown pull request, refused credential, unreachable host). show fetches
    GET /api/v1/reviews/runs/:id and lists the run's header, reviewer health,
    artifact state and findings with identity, gating reason and verdict. Reads
    use the delivery credential rules (reviews:read) and ignore the telemetry
    level. HarnessSink gained getGateStatus and getRun, each refusing an
    answer that is not about what was asked.

npm: https://www.npmjs.com/package/review-council/v/3.1.0
Tarball SHA-256: 7232a92ce5e89b3997f04369614fc21631a4013ade63bc8c75a6d7b61601e6f2