Nobody watches a score. Alerts say when it moved and what moved it
Eight rule types, from the overall score down to one plugin answer on one kind of page, each evaluated on every scan. This is half of what a watched site means.
The rules, all of them
A rule is one sentence: when this happens, say so. The threshold is yours where a threshold makes sense, and the subject can be as narrow as one engine check, one report area, or one plugin answer:
- The overall score falls
- The overall score falls by at least your threshold. The bluntest rule and the first one most sites set.
- A check regresses
- One named engine check falls, or any of them. The threshold is points on that check's own score.
- The grade changes
- The letter changes in either direction. Climbing from fair to good is news an owner wants too.
- A scan fails
- A scan could not complete, with the error that stopped it. Raised whether or not anybody configured it.
- A competitor gets ahead
- A linked competitor leads you by at least your margin. Furthest ahead is reported first.
- An agent task stops working
- An agent task's success rate falls: something an agent could do on your site last week, it no longer can.
- An area's score falls
- One of the report's areas falls, or any of them, so a shop can watch its protocols area without caring that a content check wobbled.
- A plugin answer stops being given
- A plugin answer flips from met to unmet. No threshold on purpose: something your site was telling agents, it stopped telling.
Rules that cannot fire say so
A competitor rule on a site with no competitors, a check rule naming a check this engine does not run: both are saved, and both are labelled inert with the reason and the fix. An alert nobody set is a gap you can see; a rule that silently never fires is worse.
Email, in the reader's language
Every alert is stored as a fact, not a sentence, and rendered when read: each recipient gets it in their own language, delivery is stamped so nothing sends twice, and a failed delivery retries on the next pass for free.
Webhooks, signed, for the channel your team lives in
Any rule can also POST to an https endpoint you name: Slack, Discord, Zapier, or your own pipeline. The payload carries the machine-routable key and params beside the human sentence, redirects are refused, private addresses are refused even when a public-looking hostname resolves to one, and a failing endpoint earns 5 attempts before the event settles without it.
Every payload is signed: HMAC-SHA256 over timestamp.body in the X-AXRush-Signature header, with a per-rule secret shown beside the rule. Your receiver can verify who is talking and that nothing was replayed.