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

MGS1050: a queue.carry_approvals entry magus cannot honor

queue.carry_approvals in magus.yaml lists the tiers of change since an approval that leave the approval standing:

queue:
  carry_approvals: [rebase, generated, prose, comment-only]
Tier The change since the approval
rebase none: the approved diff, replayed onto the new base, is the head
generated only files a target declares as its output, or magus maintains
prose only files gate_low_risk claims (markdown by default)
comment-only only comments, by the comment syntax the language's spell declares

rebase always carries, so [] and [rebase] both mean the strictest policy. Unset carries every tier above.

This code fires when an entry is not one of those names, or is code. The message names each entry and its line.

Why

A misspelled tier read as absent would dismiss approvals the workspace meant to keep, with nothing saying why. code is refused because an approval carried over a code change vouches for code no reviewer saw.

Resolution

  • A misspelling. Use one of the four names above.
  • code. Delete it. A change that touches code needs a fresh approval.
MGS1050magus.yamlmerge queueapprovalsconfig
Last updated (aba0c4fa)
Glossary

Workspace

The magus root directory that owns a set of projects and shared config; the unit magus operates over. See workspace.

Target

A named operation (build, test, ...) you invoke with magus run <target>; it may compose a spell's tool-native operations and depend on other targets. See targets.

Op

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

Spell

A language/runtime adapter (e.g. go, md) that maps generic targets onto a toolchain's real commands. See spells.

Conventions

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