You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(worker): deterministic publication gates and policy modes for review findings (#11) (#53)
Closes#11.
Findings now pass an adapter-owned gate chain before any GitHub surface
sees them (crates/worker/src/findings.rs):
- scope: files the session never consulted (not reviewed, supporting, or in
the PR changed set) are withheld as speculative
- severity threshold: repo policy min_severity (info..critical) filters
below-threshold findings
- duplicates: identical (file, line, title) findings collapse
The rendered digest is bounded and honest — withheld counts and reasons are
always stated, so a quiet report is distinguishable from a filtered one.
A new [review] publish policy routes the gated digest: check_run (default),
advisory_comment (also on the marker-backed status comment), or
request_changes (a blocking PR review verdict submitted with post-gate
publication authority — REQUEST_CHANGES when findings exist, COMMENT
otherwise). Doctor rejects unknown policy values.
Together with what already shipped, this completes #11's gate chain:
off-schema envelopes are rejected (contract v2 validation), stale refs are
withheld pre-publish (#8), secret redaction covers every published field,
and memory writes are approval-gated (#6). A findings confidence axis is
specified for headless contract v3; v2 carries severity only.
Signed-off-by: Val Alexander <bunsthedev@gmail.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copy file name to clipboardExpand all lines: README.md
+7-1Lines changed: 7 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -113,7 +113,13 @@ Planned lanes:
113
113
| Trigger | Status |
114
114
|---|---|
115
115
| Push / commit-range review |`push` events are parsed and typed with fixtures today; execution needs a PR-less task kind, which ships with headless contract v3 |
0 commit comments