CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

opentelemetry-trace-assertions

Use when a service is instrumented with OpenTelemetry and alerts, SLOs or dashboards depend on span names or attributes a refactor could drop. Captures spans with the in-memory exporter in tests (Python, JS, Java) and asserts on names, attributes, status, kind and structure.

Quality

93%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

The canonical home for this skill is testland/opentelemetry-trace-assertions

SKILL.md
Quality
Evals
Security

Quality

Content

96%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

Excellent instructional content: lean, dense with non-obvious domain knowledge, and fully executable across the main languages, with a well-sequenced workflow and a strong anti-patterns checklist. The only structural improvement would be splitting per-language details into referenced bundle files to keep the core skill shorter.

DimensionReasoningScore

Conciseness

Every section adds non-obvious information: the SimpleSpanProcessor-vs-batching rationale, HTTP status rules, semconv key requirements, and the JS 2.x API change are spec details, not concepts Claude already knows. There is no padding and no introductory fluff, matching anchor 5.

5 / 5

Actionability

Copy-paste-ready conftest fixture, Python/JS/Java test code, per-language install commands, and a CI yaml snippet — all fully executable. The common cases are covered by complete examples; only .NET lacks a code example, a negligible gap.

5 / 5

Workflow Clarity

Steps 1–8 are clearly sequenced (install → wire exporter → assert attributes → parent-child structure → semconv keys → per-language variants → CI), assertions carry prescribed failure messages ("no finished span named", "db.query started a new trace"), and the anti-patterns table with per-step fixes serves as a failure-mode checklist — matching anchor 5.

5 / 5

Progressive Disclosure

No bundle files exist; the skill is a single well-organized file with clear headers, an anti-patterns table, a limitations section, and a one-level-deep References section of clearly signaled external links. It is not a 5 because the per-language sections (JS, Java) and reference material could plausibly be split into bundled files rather than inlined in one ~240-line file — a minor organization gap matching anchor 4.

4 / 5

Total

19

/

20

Passed

Description

87%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: explicit "Use when" triggers tied to a concrete operational risk (refactors silently breaking alerts/SLOs/dashboards), paired with a specific statement of what the skill does and the languages it covers. The only gaps are the omitted .NET language and a few natural synonym terms like "tracing".

DimensionReasoningScore

Specificity

"Captures spans with the in-memory exporter in tests" and "asserts on names, attributes, status, kind and structure" are multiple concrete, specific actions. It falls short of a 5 only because it omits .NET, which the skill body explicitly supports — a minor coverage gap matching anchor 4.

4 / 5

Completeness

It explicitly answers both questions: "Use when a service is instrumented with OpenTelemetry and alerts, SLOs or dashboards depend on span names or attributes a refactor could drop" (when, with concrete triggers) and "Captures spans with the in-memory exporter in tests (Python, JS, Java) and asserts on names, attributes, status, kind and structure" (what).

5 / 5

Trigger Term Quality

Natural terms users would say are present: "OpenTelemetry", "alerts", "SLOs", "dashboards", "span names", "attributes", "refactor", "in-memory exporter". A few common variations ("tracing", "traces", "telemetry") are missing, which fits anchor 4 rather than 5.

4 / 5

Distinctiveness Conflict Risk

It carves a clear niche — asserting on emitted spans via an in-memory exporter in tests — that is unlikely to fire for adjacent concerns (backend tracing setup, cross-service trace checks). Trigger terms are distinctive to this niche, matching anchor 5.

5 / 5

Total

18

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

testland/qa

Path

plugins/qa-distributed-tracing/skills/opentelemetry-trace-assertions/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.