magus v0.4.3 is out. See what's new
¶ View markdown source · ✎ Suggest an edit
2 min read

subject-mood

An advisory by default: it explains, and blocks nothing, on a commit subject opening in the past tense, the third person or a gerund ("added", "fixes", "making").

What it catches

A commit subject opening in the past tense, the third person or a gerund ("added", "fixes", "making").

Dimension

conventions: a house or genre convention is broken. A finding is counted on the dimension of its rule, the cost it names to the reader.

Why

A subject completes "if applied, this commit will ...", so it opens with the verb in the imperative. The rule reads a closed list of about 30 verbs in their past, third-person and gerund forms, not a tagger, so a plural noun that is also a verb ("changes to the key") was reported; the list is the one hack/policy/commits.buzz already denied. Over the 1729 commit messages on main it found nothing. Measured 2026-10-11 over the adjudicated labeling round: 83.7% precision (36 of 43) before, 100% (36 of 36, lower bound 0.90) after, so it denies: a third-person form before a preposition or "made" heads a noun phrase ("Changes from the composer", "Fixes for the panel") and is left alone.

Default decision

The code is PRF1010. The decision depends on the kind of text judged:

Kind Default
commit-message advise

Changing it

A decisions table sets this rule to deny, advise or off, for everything judged or for the files a glob matches. Proofread reads the table from the file its -decisions flag names:

{
  "rules": {"subject-mood": "deny"},
  "paths": {"blog/**": {"subject-mood": "off"}}
}

rules applies to every file. A glob in paths applies to the files it matches, and the last match wins. A rule set to off never reports.

Seeing it

A finding names the rule, its code and the decision that applies, and links here:

{"rule": "subject-mood", "code": "PRF1010", "decision": "advise", "url": "https://eli.gladman.cc/magus/reference/proofread/subject-mood/"}

proofread rules prints this entry with every other rule's.

See also

proofreadrulessubject-moodadvise
Last updated (29d8b3de)
Earlier changes on this page (1)

Full history ↗ · Blame source ↗

Glossary

Op

A single tool-native command a target composes (long form: operation); the middle of the work hierarchy (Spell to Op to Target). Op in full.

Buzz

The language magusfiles are written in (the .buzz engine). Buzz in full.

CI

An ordinary target you compose yourself with ctx.needs; magus does not hardcode its stages. It is the anchor magus affected ci keys off, and ci strips the rw charm. CI in full.

Run

One target executing under one magus invocation, such as magus run test web or magus affected ci. A run keeps its captured output behind an output reference. Every magus run is a run whether or not any job asked for it; see Job for how the two relate. Run in full.

Advisor

One read-only check from the advice suite: it reads the changeset through magus and writes one titled section of findings. The same advisors run as a pull request comment in CI and inside magus diff --impact locally. Advisor in full.

Pane

A split within a tab. Splitting divides the focused pane along its longer side, so the same action tiles side-by-side on a desktop and stacks on a phone; a tab with no split is a single pane. Drag the divider to re-weight the split. Pane in full.

Conventions

This page uses none of the site's convention markers. The full set is on the conventions page.