Learn · Rulebooks
Write a rulebook
Take a domain you know and turn it into a pack other people can install.
Checked against the product on · written for people publishing rule packs
Authoring runs in four passes: name the labels, teach each one, ship starter rules, and add examples. Each pass makes the pack read more like the domain it came from.
Pass one: name the labels
Create a rulebook shell and give it a slug.
The slug is how the library addresses it forever.
Write the groups first.
A group gathers labels that share a cause. Three to eight groups suits most domains.
Write one warning label per thing a rule needs to react to.
Name it for the observation, so a rule reads as a sentence.
Give each label a seriousness from 1 to 5.
Pass two: teach each label
Write a fragment per label saying what it means in this domain.
Write a fragment per group saying what the group covers.
State the boundary between labels that sit close together.
Two labels that overlap produce a pack whose grade falls.
Pass three: ship starter rules
Write one rule per label a buyer will want on the day they install.
Pick the action from the fixed list.
Mark a rule sensitive when the action touches a buyer’s systems.
A sensitive rule is held for a person on their side.
Pass four: add examples
Add events that show each label being applied correctly.
Add events near the boundary that show it staying unapplied.
Boundary examples do more for a grade than more central ones.
Before you submit
- Every label has a fragment.
- Every group has a fragment.
- No two labels describe the same observation.
- Every starter rule names an action from the fixed list.
- The examples cover each label and each boundary you care about.