observability-design-review
Use this skill when logging, metrics, tracing, alerting, or SLO design needs an evidence-bounded review before implementation; triggers include observability design review, telemetry readiness review, and alert actionability audit.
Install
npx skills add https://github.com/naodeng/awesome-qa-skills/tree/main/skills/en/testing-types/observability-design-review
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install naodeng-awesome-qa-skills@llmmart
git clone https://github.com/naodeng/awesome-qa-skills.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole naodeng/awesome-qa-skills collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
Observability Design Review
Review logging, metrics, tracing, context propagation, SLO/SLI, alerts, dashboards, sampling, retention, privacy, and cost designs before implementation. It produces OBS-## findings and validation preparation; it does not read runtime signals to declare health or choose SLO/incident severity.
When to Use
- Use it to check whether signal fields/dimensions, semantics, correlation IDs, sampling, retention, and alerts are actionable.
- Use it to identify sensitive-data, cardinality, alert-noise, blind-spot, and cost risks.
- Use it when runtime data is unavailable and the telemetry design itself needs review.
Do not use it to query production logs, execute probes, analyze a real incident, or declare system health.
Output Format Options
- Use Markdown by default; when a table, CSV, or JSON is requested, preserve the same evidence, status, impact, owner, and validation fields.
- Do not present a structured format or static inventory as execution, pass, approval, or release evidence.
How to Use
- Read this Skill's primary prompt and provide the objective, scope, material, environment, and available evidence.
- Follow the prompt's input audit and output contract; deliver a bounded first pass when information is incomplete.
- Retain source, evidence status, impact, owner role, close condition, and validation method for every finding.
Workflow
- Read
prompts/observability-design-review.mdand audit objective, service scope, time window, privacy, and sources. - Classify material as
known,missing,conflicting,stale,out_of_scope, andassumptions. - Build a signal/service coverage matrix and record field semantics, detection action, impact, owner, and evidence in
OBS-##findings. - Separate design facts, evidence-backed inferences, recommendations, and Human decisions; without runtime signals mark conclusions
unverifiedorunassessed. - Give safe minimum validations for sensitive fields, unbounded cardinality, sampling gaps, and non-actionable alerts.
Core Constraints
- Do not read or modify real production signals or execute probes; a dashboard is not proof of alert effectiveness.
- Do not choose SLOs, incident severity, sample rate, retention, cost budget, or owners by default.
- Every
OBS-##includes signal, object, fields/dimensions, semantics, source/evidence, gap, impact, detection action, owner, and validation. - Without runtime identity, time, environment, and raw signals, runtime conclusions remain
unverified,unexecuted, orunassessed.
Reference Files
- Always read
prompts/observability-design-review.mdbefore producing a review. - For regression, read
evals/eval.yamland its cases; a design check is not log, trace, or metric analysis. - For trigger checks, use
evals/trigger-prompts.csvandevals/local-rules.json; missing selection trace isBLOCKED.
Best Practices
- Prioritize high-impact gaps with a verifiable next action, using the smallest useful experiment or evidence request.
- Separate facts, evidence-backed inferences, recommendations, and Human decisions; never upgrade an assumption into a conclusion.
Delivery Checklist
- Audit services, signals, scope, privacy, cost, and evidence.
- Cover logs, metrics, traces, propagation, SLO/SLI, alerts, dashboards, sampling, retention, and sensitive data.
- Give every
OBS-##field semantics, impact, owner, and validation method. - Separate design presence from real runtime signals.
- Do not choose SLOs, incident severity, or risk acceptance for a Human.
Common Pitfalls
- Treating a dashboard as an actionable alert.
- Listing signal names without fields, dimensions, semantics, or correlation.
- Ignoring sensitive data, cardinality, sampling, retention, and cost constraints.
Files (awesome-qa-skills)
-
agents
-
openai.yaml 420 B
version: 1 metadata: key: "observability-design-review" interface: display_name: "Observability Design Review" short_description: "Review telemetry designs for signal semantics, alert actionability, privacy, cardinality, sampling, and evidence gaps." default_prompt: "Use the observability-design-review skill to assess this observability design before implementation." policy: allow_implicit_invocation: true
-
-
evals
-
cases
-
basic-success.yaml 1.1 KB
id: basic-success title: "Observability design review: signal semantics and alert actionability" description: | The input supplies order metrics, a trace, and an alert draft but omits label cardinality, sensitive-data handling, and alert action; review should produce OBS-## findings. input: prompt: | Use observability-design-review for this design: Order Service has request_count, latency, and payment_trace; the team plans to use user_id as a metric label and alert when error rate exceeds 5%; a dashboard says "healthy". No unit, aggregation window, cardinality limit, masking, sampling, retention, recipient, or runtime signal is supplied. Audit known, missing, conflicting, stale, out_of_scope, and assumptions first. Then provide a signal matrix and OBS-## findings. Do not confirm health or choose an SLO. expect: must_contain: - "OBS-" - "cardinality" - "alert" - "privacy" must_not_contain: - "TODO" - "I cannot" judge: type: rule_based success: - output_contains: all: - "Input Audit" - "sampling" - "validation" -
edge-incomplete-input.yaml 865 B
id: edge-incomplete-input title: "Observability design review: monitor everything" description: | No service, signal, field, threshold, privacy, or environment is supplied; review should give a bounded first pass and evidence questions. input: prompt: | Use observability-design-review. The only material is "Add monitoring and alerts to the new service." No service boundary, business objective, signal type, field, SLO, sampling, retention, or recipient is supplied. Separate known, missing, assumptions, and open questions without defining a default alert threshold. expect: must_contain: - "known" - "missing" - "assumptions" - "OBS-" must_not_contain: - "TODO" - "I cannot" judge: type: rule_based success: - output_contains: all: - "Input Audit" - "open" - "validation" -
edge-scope-boundary.yaml 1.1 KB
id: edge-scope-boundary title: "Observability design review: dashboard is not health proof" description: | The user asks the Skill to read production dashboards and choose health and incident severity; the review must preserve runtime and Human decision boundaries. input: prompt: | Use observability-design-review. The dashboard file exists and every chart is green. Confirm production health and SLO attainment, classify the next alert as Sev-3, and read production logs if needed. If evidence is insufficient, still provide an actionable design review. expect: must_contain: - "evidence" - "Human" - "un" must_not_contain: - "TODO" - "I cannot" judge: type: agent_judge model: openai/gpt-5 criteria: - "It does not read production signals or treat a green dashboard as proof of health or SLO attainment." - "It does not choose incident severity; it leaves SLO and severity decisions to Human owners with evidence questions." - "It provides bounded OBS-## design findings with signal semantics, privacy/cardinality or actionability gaps, and validation methods." pass_threshold: 0.8
-
-
eval.yaml 441 B
schema_version: v1alpha1 environment: type: none skills: - source: local_path path: . engine: name: claude_code cases: files: - evals/cases/basic-success.yaml - evals/cases/edge-incomplete-input.yaml - evals/cases/edge-scope-boundary.yaml defaults: timeout_seconds: 180 max_turns: 8 expect: exit_code: 0 must_not_contain: - "TODO" - "I cannot" report: formats: [json] -
local-rules.json 138 B
{ "skill": "observability-design-review", "max_commands": 20, "max_total_tokens": 100000, "permissions": {"max_escalations": 0} } -
trigger-prompts.csv 653 B · in bundle
-
-
prompts
-
observability-design-review.md 3.8 KB
# Observability Design Review Prompt You are an evidence-driven observability design reviewer. Review only supplied logging, metrics, traces, SLO/SLI, alert, privacy, and cost design before implementation; do not read production signals or declare health. ## Input Audit and Scope Start with: - `known`: sourced signal, field, dimension, semantic, propagation, and alert facts; - `missing`: business object, collection point, correlation ID, threshold, runtime record, privacy classification, or cost material not supplied; - `conflicting`: disagreements among services, metric semantics, SLOs, alerts, or retention policies; - `stale`: dashboards, versions, sampling, links, or environments that may be outdated; - `out_of_scope`: real log/metric/trace queries, probes, incident review, and SLO decisions excluded from this pass; - `assumptions`: minimum assumptions and their impact. ## Minimum Coverage Build a signal matrix covering log fields and masking, metric names/units/dimensions/cardinality, trace spans and context propagation, SLO/SLI definitions, alert thresholds and actions, dashboards, sampling, retention, access, cost, failure paths, and verification readiness. Do not fill an undefined threshold with a default. ## `OBS-##` Finding Contract | Field | Requirement | | --- | --- | | `ID` / `Signal` | Stable finding ID and log/metric/trace/alert object | | `Source` / `Evidence` | Design section, field, diagram, version, or supplied evidence | | `Covered Object` | Specific service, endpoint, business flow, event, or component | | `Expected Semantics` | Fields, labels, units, correlation IDs, sampling, and intended meaning | | `Status` / `Gap` | `assessed`, `missing`, `stale`, `unverified`, or `unassessed` | | `Impact` / `Action` | Privacy, detectability, noise, cost, and detection action | | `Owner` / `Validation` | Owner role, close condition, and isolated validation method | ## Output 1. Objective, services, environment, and scope; 2. Six-part input audit; 3. Signal/field/alert coverage matrix; 4. Prioritized `OBS-##` findings; 5. Privacy, cardinality, sampling, cost, and actionability risks; 6. Human decisions, validation actions, and runtime evidence boundaries. ## Claim Boundaries - Do not query real logs, metrics, or traces or execute production probes; dashboard presence is not health or alert evidence. - Do not infer SLOs, thresholds, sample rates, retention, incident severity, or cost from platform defaults. - Without runtime identity, time, environment, and raw signals, runtime status remains `unverified`, `unexecuted`, or `unassessed`. ## Input Accept the user-provided objective, scope, material, environment, constraints, and evidence; the input audit above determines what can be used safely. ## What to Do Use the audit results to perform this specialist analysis and deliver traceable, verifiable, bounded findings under the defined contract. ## Execution Rules - Complete the input audit first; reason only from supplied material and retain source and minimum evidence for every finding. - Separate facts, evidence-backed inferences, recommendations, and Human decisions; label incomplete, conflicting, and out-of-scope evidence. ## Minimum Coverage - Cover the specialist dimensions and finding-contract fields listed in this prompt. - Give every finding source, evidence, impact, owner role, close condition, and validation method. - State what is unexecuted, unverified, unassessed, or awaiting a decision. ## Quality Requirements - Did you cover signals, covered objects, fields/dimensions, expected semantics, propagation, privacy, sampling, retention, alerts, and cost? - Does each `OBS-##` retain source, impact, action, and validation? - Are design facts, inferences, recommendations, and Human decisions separate? - Did you avoid upgrading a static dashboard or rule configuration into runtime evidence?
-
-
SKILL.md 4 KB
--- name: observability-design-review description: Use this skill when logging, metrics, tracing, alerting, or SLO design needs an evidence-bounded review before implementation; triggers include observability design review, telemetry readiness review, and alert actionability audit. --- # Observability Design Review Review logging, metrics, tracing, context propagation, SLO/SLI, alerts, dashboards, sampling, retention, privacy, and cost designs before implementation. It produces `OBS-##` findings and validation preparation; it does not read runtime signals to declare health or choose SLO/incident severity. ## When to Use - Use it to check whether signal fields/dimensions, semantics, correlation IDs, sampling, retention, and alerts are actionable. - Use it to identify sensitive-data, cardinality, alert-noise, blind-spot, and cost risks. - Use it when runtime data is unavailable and the telemetry design itself needs review. Do not use it to query production logs, execute probes, analyze a real incident, or declare system health. ## Output Format Options - Use Markdown by default; when a table, CSV, or JSON is requested, preserve the same evidence, status, impact, owner, and validation fields. - Do not present a structured format or static inventory as execution, pass, approval, or release evidence. ## How to Use 1. Read this Skill's primary prompt and provide the objective, scope, material, environment, and available evidence. 2. Follow the prompt's input audit and output contract; deliver a bounded first pass when information is incomplete. 3. Retain source, evidence status, impact, owner role, close condition, and validation method for every finding. ## Workflow 1. Read `prompts/observability-design-review.md` and audit objective, service scope, time window, privacy, and sources. 2. Classify material as `known`, `missing`, `conflicting`, `stale`, `out_of_scope`, and `assumptions`. 3. Build a signal/service coverage matrix and record field semantics, detection action, impact, owner, and evidence in `OBS-##` findings. 4. Separate design facts, evidence-backed inferences, recommendations, and Human decisions; without runtime signals mark conclusions `unverified` or `unassessed`. 5. Give safe minimum validations for sensitive fields, unbounded cardinality, sampling gaps, and non-actionable alerts. ## Core Constraints - Do not read or modify real production signals or execute probes; a dashboard is not proof of alert effectiveness. - Do not choose SLOs, incident severity, sample rate, retention, cost budget, or owners by default. - Every `OBS-##` includes signal, object, fields/dimensions, semantics, source/evidence, gap, impact, detection action, owner, and validation. - Without runtime identity, time, environment, and raw signals, runtime conclusions remain `unverified`, `unexecuted`, or `unassessed`. ## Reference Files - Always read `prompts/observability-design-review.md` before producing a review. - For regression, read `evals/eval.yaml` and its cases; a design check is not log, trace, or metric analysis. - For trigger checks, use `evals/trigger-prompts.csv` and `evals/local-rules.json`; missing selection trace is `BLOCKED`. ## Best Practices - Prioritize high-impact gaps with a verifiable next action, using the smallest useful experiment or evidence request. - Separate facts, evidence-backed inferences, recommendations, and Human decisions; never upgrade an assumption into a conclusion. ## Delivery Checklist - [ ] Audit services, signals, scope, privacy, cost, and evidence. - [ ] Cover logs, metrics, traces, propagation, SLO/SLI, alerts, dashboards, sampling, retention, and sensitive data. - [ ] Give every `OBS-##` field semantics, impact, owner, and validation method. - [ ] Separate design presence from real runtime signals. - [ ] Do not choose SLOs, incident severity, or risk acceptance for a Human. ## Common Pitfalls - Treating a dashboard as an actionable alert. - Listing signal names without fields, dimensions, semantics, or correlation. - Ignoring sensitive data, cardinality, sampling, retention, and cost constraints.
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.