Docs

Impact classes

Each piece of work has an impact class: how much it can do. The class says whose word starts the work, and whose go its change needs before it merges.

The default

.mandately/classes.yml
# Impact classes: how much a piece of work can do, and whose word it needs.
# start: whose word starts it; merge: whose go its change needs before it merges. `alone` means nobody's.
# Unsure counts one class higher.
default: C
classes:
  A: {name: irreversible or external, start: release, merge: go}
  B: {name: money, start: release, merge: go}
  C: {name: what users see, start: release, merge: go}
  D: {name: internal and reversible, start: alone, merge: alone}
  E: {name: reading and reporting, start: alone, merge: alone}
labels:                   # a board label that marks a class
  impact-a: A
  impact-b: B
  impact-c: C
  impact-d: D
  impact-e: E
classcoversfor exampleto startto merge
Airreversible or externala production rollout, a store submission, a post, a paymenta releasea go
Bmoneya paid run beyond the subscriptiona releasea go
Cwhat users seea feature, copy, a designa releasea go
Dinternal and reversibleCI, docs, a refactor with testsagents aloneagents alone
Ereading and reportinganalytics, monitoring, draftsagents aloneagents alone

When someone is unsure of a class, the work counts one class higher.

Settings

default

The class of work that carries none. The default pack uses C, one class above internal work.

classes

One entry per class, each with:

labels

A board label that marks a class. Work also takes its class from the board's impact field, where the board has one. A change takes the class of the issue it names.

Change it

Internal work now needs a release to start, and still merges alone:

.mandately/classes.yml
classes:
  D: {name: internal and reversible, start: release, merge: alone}

Keep the other classes as they are. You can add a class, rename one or remove one: the classes are yours.