Watch
0
0
Fork
You've already forked hyperhive
0
hyperhive/.hyperhive/review-classifier.yml
atlas 683b942f34 review classifier: docs-updated counts option descriptions, skips internal options
An option declared internal = true or visible = false is not shown to an
operator, so adding or changing one needs no documentation. A nix
option's own description renders into the generated options reference,
so for a change to that option's default, type or meaning an updated
description is its documentation, alongside docs/ and crate READMEs.

A change in what a service does for operators across hosts (what it
scrapes, serves or publishes) still needs a docs/ page or README, so a
description edit does not excuse it.
2026-10-13 12:58:59 +02:00

62 lines
2.6 KiB
YAML

classifications:
- name: no-ads
description: >-
A commit message contains a co-authored-by line or other advertising
for an AI model, such as a "generated with" footer.
polarity: negative
threshold: 80
- name: no-secrets
description: >-
The diff adds a secret as literal text: a password, API key, access
token or private key. A path or name that points at a secret is not
one.
polarity: negative
threshold: 60
- name: no-lint-suppression
description: >-
The diff adds a Rust `#[allow(clippy::...)]` or `#![allow(clippy::...)]`
attribute instead of fixing what the lint reports.
polarity: negative
threshold: 70
- name: no-debug-leftovers
description: >-
The diff adds leftover debugging: a `dbg!` call, a print statement
that only inspects a value, or a block of commented-out code.
polarity: negative
threshold: 70
- name: no-dead-code
description: >-
The diff adds a function, type, option or module that nothing in the
diff calls, uses or registers, and that is not a test, a trait
implementation or public API.
polarity: negative
threshold: 75
- name: tests-with-behaviour
description: >-
Every change to how the code behaves comes with a new or updated test
that exercises it. A diff whose changed files are all test code
(a fixture under `nix/module-eval/`, `nix/checks.nix`, a crate's
`tests/` directory, or Rust inside `#[cfg(test)]` or a `#[test]`
function) changes no behaviour: the question is not applicable. A PR
that changes behaviour and tests together matches.
polarity: positive
threshold: 65
- name: docs-updated
description: >-
A change to what an operator or user sees, such as a command, flag,
option, endpoint, service or default, updates the matching page under
docs/ or the crate's README in the same diff. For a nix option whose
own default, type or meaning changes, an updated `description` on that
option counts as the documentation. It does not cover a change in what
a service does for operators across hosts, such as what it scrapes,
serves or publishes: that needs a docs/ page or README. A nix option
declared `internal = true` or `visible = false` is not something an
operator sees, so adding or changing one needs none of these.
polarity: positive
threshold: 65
- name: one-purpose
description: >-
Every change in the diff serves what the commit messages say the PR
does, and nothing unrelated is bundled in.
polarity: positive
threshold: 65