Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'.
The English summary is being prepared. Showing the original description.
Use when deciding what earns a page — the page, action and info classes stated provider-neutrally, and the rule that a page without an owner, a runbook and a first diagnostic step is malformed.
The English summary is being prepared. Showing the original description.
See how to installReview the instructions the agent will receive before you install.
Use when classifying an alert, reviewing an alert set, or deciding whether a condition should wake a human. Provider-neutral: the classes below hold whichever tool evaluates the rule.
Do NOT use when:
logging-monitoring first — you
cannot alert on a signal the project does not have)operational-readiness)incident-commander)dashboard-design, grafana)Every alert is exactly one of these. The class is decided by what the recipient must do, never by how alarming the condition sounds.
| Class | Condition that earns it | Destination | Latency of response |
|---|---|---|---|
page | A human must act now or the damage grows | Wakes a named human | Minutes |
action | A human must act, but the next working day is soon enough | Ticket or queue | Hours to days |
info | Nobody must act; it is context for when something else fires | Log, channel, dashboard | Never |
What earns a page — all three, as a condition rather than a preference:
info with a trend, not a page.Fail any one → it is action or info.
What a misclassification costs. Too eager: alert fatigue, and the page that mattered arrives in a stream of pages that did not. Fatigue is not an inconvenience — it is the mechanism by which a real outage is missed, and it is caused by pages that were never actionable. Too shy: the condition sits in a channel nobody reads until a user reports it. The asymmetry is real but bounded in both directions, which is why the three conditions above are stated as a test and not as taste.
A PAGE THAT CANNOT NAME AN OWNER, A RUNBOOK AND A FIRST DIAGNOSTIC STEP
IS A CONFIGURATION DEFECT, NOT A JUDGEMENT CALL.
| Field | What it must carry | Why it is mandatory |
|---|---|---|
| owner | A named human or an on-call rotation that resolves to one | An alert owned by "the team" is owned by nobody at 3am |
| runbook | A pointer to the procedure — see the contract below | Waking someone with no procedure transfers the whole diagnosis to the least-prepared moment |
| first diagnostic step | The single concrete first action | The most expensive minutes of an incident are the ones spent deciding where to look |
This is checkable from the alert definition alone, which is what makes it a
defect rather than an opinion. action and info alerts do not carry the
obligation — nobody is being woken.
A runbook worth paging into carries five things. More than this and it rots faster than the system changes; fewer and it is a link that wastes the minutes it was supposed to save.
Explicitly not in a runbook: architecture background, a full topology diagram, anything the reader could get later. A runbook is read under time pressure by someone who was asleep.
→ Once an incident is open, incident-commander owns the roles, the update
cadence and the post-mortem obligation. This skill stops at the moment the page
fires.
logging-monitoring
scored unavailable or unknown cannot fire meaningfully. Fix the signal
first.page. Otherwise → action if a human
must eventually act, else info.page, check the three mandatory fields. Any missing → verdict
malformed-alert: missing-<field>. Do not downgrade the class to dodge the
obligation; a page whose fields cannot be named is either a defect to fix or
was never a page.page, check the runbook against the five-item contract, and
confirm its first diagnostic step matches the alert's.valid-page-alert, valid-action-alert,
valid-info-alert, or malformed-alert: <reason>.page names an owner resolving to a single human.page links a runbook that exists.page carries a first diagnostic step identical to its runbook's.present, not unknown.page that is self-clearing.malformed-alert, the missing field named explicitly.Contract fixtures. Three pairs, one per mandatory field; each pair differs only in the field under test, and each case states the verdict it must produce. Contract evidence for review, not an executable suite.
# malformed
alert: checkout_error_rate_high
class: page
runbook: docs/runbooks/checkout-errors.md
first_diagnostic_step: "open the checkout error-rate panel, last 30m"
verdict: "malformed-alert: missing-owner"
# clean — only the owner is added
alert: checkout_error_rate_high
class: page
owner: payments-on-call
runbook: docs/runbooks/checkout-errors.md
first_diagnostic_step: "open the checkout error-rate panel, last 30m"
verdict: valid-page-alert
# malformed
alert: db_pool_saturation
class: page
owner: platform-on-call
first_diagnostic_step: "check db_pool_in_use / db_pool_size"
verdict: "malformed-alert: missing-runbook"
# clean — only the runbook is added
alert: db_pool_saturation
class: page
owner: platform-on-call
runbook: docs/runbooks/db-pool.md
first_diagnostic_step: "check db_pool_in_use / db_pool_size"
verdict: valid-page-alert
# malformed
alert: queue_wait_time_high
class: page
owner: platform-on-call
runbook: docs/runbooks/queue-wait.md
verdict: "malformed-alert: missing-diagnostic-step"
# clean — only the first diagnostic step is added
alert: queue_wait_time_high
class: page
owner: platform-on-call
runbook: docs/runbooks/queue-wait.md
first_diagnostic_step: "open the queue wait-time panel; compare to enqueue rate"
verdict: valid-page-alert
critical in a tool's own vocabulary says
nothing about whether a human must act now.action because the owner is unknown hides the defect
instead of fixing it.proposed provenance is alerting on a guess —
see logging-monitoring.page without an owner, a runbook and a first diagnostic step.unknown.No reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'.
The English summary is being prepared. Showing the original description.
Use when defining or auditing the activation event — aha-moment selection, retention correlation, falsifiable definition. Triggers on 'what is our aha moment', 'redefine activation'.
The English summary is being prepared. Showing the original description.
Use when capturing an architectural decision — file naming, next ADR number, Status / Context / Decision / Consequences, index regen; fires even without saying 'ADR'.
The English summary is being prepared. Showing the original description.
Adversarial critique — devil's advocate, stress-test, honest teardown ('poke holes', 'be brutal', 'was hältst du davon'); explicit request only. Routine code or design review → code-review.
The English summary is being prepared. Showing the original description.
Use when reading, creating, or updating agent documentation, module docs, roadmaps, or AGENTS.md. Understands the full .augment/, agents/, and copilot-instructions structure.
The English summary is being prepared. Showing the original description.
Use for an adversarial red-team / blue-team / auditor review of an AI agent's CONFIG + behaviour (rules, skills, MCP, hooks, permissions) — attack-chain → defensive-gap list, not a code audit.
The English summary is being prepared. Showing the original description.