effortlessmetrics/UB Review

Build a box-aware UB/native-boundary evidence packet, run bounded model review lanes when configured, and optionally post one grouped pull request review.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Stale
License
None
namedescriptionrequireddefault
presetRepo preset. Currently `bun-ub` is the production/default preset.nobun-ub
configOptional ub-review TOML config path. When set, this overrides preset selection.no""
profileBox profile. `gh-runner` is the zero-config GitHub-hosted default.nogh-runner
runtime-profileRuntime profile for proof budgets and local work limits. Set `gh-runner-full` only when leasing broader proof.no""
rootRepository root to inspect.no.
baseBase ref, usually an origin remote branch for the PR target.noorigin/main
headHead ref.noHEAD
outOutput directory for the packet.notarget/ub-review
install-toolsBest-effort install of advisory sensors.notrue
tool-bundleSensor bundle to install: none, core, bun-fast, or full. Unknown values fail the install step.nocore
setup-rustInstall/select Rust 1.95.0 with rustup when available.notrue
install-modeRunner install mode for ub-review itself: auto, release, source, or path.noauto
binary-pathExisting ub-review binary path when install-mode=path.no""
release-versionRelease tag to download when install-mode=release. Defaults to the action ref.no""
release-assetGitHub release asset name for the Linux x64 ub-review archive.noub-review-x86_64-unknown-linux-gnu.tar.gz
allow-heavyAllow heavy witnesses such as tests/builds/Miri/mutation. Disabled by default.nofalse
postingPosting mode: artifact-only or review.noreview
modeExecution mode: review-byok or intelligent-ci. Legacy review-direct is accepted as an alias.noreview-byok
review-modeUser-facing review posture. When set, overrides mode/fail-on-gate/[gate].review_forward (with a per-knob warning). advisory = comment only, never blocks; gate = deterministic-floor required check (recommended); strict = + reporter verdict can block. Unset (default) uses the legacy knobs below unchanged.no""
run-passRun pass identity: auto, opened, reopened, ready_for_review, synchronize, pull_request_other, or manual. Auto maps pull_request opened, reopened, ready_for_review, and synchronize to the matching pass; when posting=review, a pass posts the grouped review only if the profile lists its event action in [gate].post_review_on.noauto
github-tokenGitHub token used to seed PR-thread context and, when posting=review, submit the grouped PR review.no""
minimax-api-keyMiniMax provider API key for MiniMax M3 lanes.no""
minimax-api-urlOptional MiniMax API URL override.no""
minimax-provider-kindMiniMax request/response family: anthropic or openai.noanthropic
minimax-modelMiniMax model name.noMiniMax-M3
opencode-api-keyOpenCode Go API key for optional direct provider lanes.no""
opencode-api-urlOptional OpenCode Go API URL override.no""
opencode-modelOpenCode Go model for the canary lane.nominimax-m3
opencode-endpoint-kindOpenCode Go endpoint family: auto, openai-chat, or anthropic-messages.noauto
model-modeModel mode: auto or off.noauto
depthReview depth selector: quick, standard, or deep.nostandard
lanesComma-separated lane IDs to run. Empty uses the selected depth default.no""
except-lanesComma-separated lane IDs to skip after applying lanes.no""
toolsComma-separated sensor/tool IDs to plan. Empty uses the profile default.no""
except-toolsComma-separated sensor/tool IDs to skip after applying tools.no""
provider-policyProvider policy: auto (defers to [providers].policy in the repo config, else minimax-primary), primary-with-fallback, minimax-primary, minimax-only, opencode-go-canary, or opencode-go-wide. An explicit value overrides config.noauto
lane-widthBun model lane width: 6, 10, or 20.no10
model-timeout-secPer-model-call timeout in seconds.no300
max-inline-commentsMaximum validated inline comments in the grouped PR review.no8
model-concurrencyPlanned model lane concurrency.no8
max-model-callsMaximum model calls for review generation.no14
review-body-max-bytesMaximum bytes for the grouped PR review body.no60000
ledger-pathOptional read-only UB ledger path to include in shared context.no""
ledger-max-bytesMaximum UB ledger context bytes.no65536
pr-thread-contextOptional file containing bounded PR thread context, prior replies, or proof receipts to seed into shared context.no""
pr-thread-context-max-bytesMaximum PR thread context bytes.no65536
prior-resolved-candidatesOptional prior review/resolved_candidates.json receipt to carry resolved candidates across passes.no""
prior-resolved-candidates-artifactArtifact name to scan for review/resolved_candidates.json in the previous completed PR run when prior-resolved-candidates is empty.noub-review-gate
fail-on-post-errorFail the action when posting the grouped PR review fails.nofalse
fail-on-gateGate enforcement: auto, true, or false. The final Enforce gate outcome step runs `ub-review gate-check`, which exits non-zero when review/gate_outcome.json records a fail conclusion and this resolves to true; artifacts, the job summary, and PR review posting always complete first. auto resolves to true for mode=intelligent-ci and false otherwise.noauto
github-summaryAppend running-summary.md to GITHUB_STEP_SUMMARY.notrue
namedescription
outOutput directory containing the UB review packet.
summary-pathPath to the running summary markdown.
events-pathPath to the append-only event log.
review-json-pathPath to the internal review artifact.
metrics-json-pathPath to the review metrics artifact.
github-review-pathPath to the GitHub review payload artifact.
post-result-pathPath to the successful grouped review post receipt.
post-error-pathPath to the grouped review post error receipt.
post-payload-pathPath to the exact grouped review payload submitted to GitHub.
post-stdout-pathPath to the GitHub review post response body artifact.
post-stderr-pathPath to the GitHub review post stderr artifact.
gate-outcome-pathPath to the deterministic gate verdict artifact.