
Span Convention Review
- 7 installs
- 2 repo stars
- Updated June 19, 2026
- getsentry/sdk-skills
span-convention-review skill documents Review OpenTelemetry tracing span changes in SDK repositories for conformance to Sentry Conventions and OTel Semantic Conventions.
About
span-convention-review skill documents Review OpenTelemetry tracing span changes in SDK repositories for conformance to Sentry Conventions and OTel Semantic Conventions. Use when reviewing span instrumentation, "review spans", "check span conventions", "span review", "OTel span check", "tracing convention review".. name: span-convention-review description: Review OpenTelemetry tracing span changes in SDK repositories for conformance to Sentry Conventions and OTel Semantic Conventions. Use when reviewing span instrumentation, "review spans", "check span conventions", "span review", "OTel span check", "tracing convention review".
- Review OpenTelemetry tracing span changes in SDK repositories for conformance to Sentry Conventions and OTel Semantic Co
- Platform-specific setup patterns for span-convention-review.
- Evidence-backed steps from upstream SKILL.md.
- When-to-use criteria for span-convention-review versus alternatives.
Span Convention Review by the numbers
- 7 all-time installs (skills.sh)
- Ranked #852 of 1,352 Code Review & Quality skills by installs in the Skillselion catalog
- Data as of Jul 24, 2026 (Skillselion catalog sync)
span-convention-review capabilities & compatibility
- Capabilities
- span convention review quick start · span convention review when to use guidance · span convention review integration patterns
- Works with
- sentry
- Use cases
- code review
What span-convention-review says it does
allowed-tools: Read Grep Glob Bash WebFetch
Find all span-related changes in the current branch compared to the base branch:
npx skills add https://github.com/getsentry/sdk-skills --skill span-convention-reviewAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 7 |
|---|---|
| repo stars | ★ 2 |
| Last updated | June 19, 2026 |
| Repository | getsentry/sdk-skills ↗ |
How do I use span-convention-review correctly?
Review OpenTelemetry tracing span changes in SDK repositories for conformance to Sentry Conventions and OTel Semantic Conventions. Use when reviewing span instrumentation, "review spans", "check span
Who is it for?
Teams implementing span-convention-review workflows from the catalog.
Skip if: Skip when requirements clearly match a different specialized stack.
When should I use this skill?
User asks about span-convention-review, review opentelemetry tracing span changes in sdk repositories for conformance to sentry co.
What you get
Working span-convention-review setup with validated configuration and next steps.
Files
Span Convention Review
Review changes in SDK repositories that involve OpenTelemetry tracing spans to ensure they conform to Sentry Conventions and, where Sentry conventions are underspecified, to OpenTelemetry Semantic Conventions.
Step 1: Identify Span Changes
Find all span-related changes in the current branch compared to the base branch:
git diff main...HEADLook for patterns indicating span creation or modification:
start_span,start_child,startSpan,StartSpanop=,op:, setting span operation namesset_data,set_attribute,setAttribute,SetAttributedescription=,name=, span namingSPANDATA.,SpanData., span data constantsOP., span operation constants- References to
gen_ai.,db.,http.,cache.,queue.,messaging.,resource.,ui.
If no diff is available, ask the user which files or changes to review.
Step 2: Classify Spans by Module
Determine which Sentry Insights Module each span belongs to based on its operation prefix. Use this mapping to identify the relevant convention URLs:
| Op Prefix / Pattern | Sentry Module | Sentry Convention URL | OTel Semconv URL |
|---|---|---|---|
gen_ai.* | AI Agents | https://develop.sentry.dev/sdk/telemetry/traces/modules/ai-agents/ | https://opentelemetry.io/docs/specs/semconv/gen-ai/ |
db.*, db.sql.* | Queries | https://develop.sentry.dev/sdk/telemetry/traces/modules/queries/ | https://opentelemetry.io/docs/specs/semconv/database/ |
http.client | Requests | https://develop.sentry.dev/sdk/telemetry/traces/modules/requests/ | https://opentelemetry.io/docs/specs/semconv/http/http-spans/ |
cache.* | Caches | https://develop.sentry.dev/sdk/telemetry/traces/modules/caches/ | N/A |
queue.* | Queues | https://develop.sentry.dev/sdk/telemetry/traces/modules/queues/ | https://opentelemetry.io/docs/specs/semconv/messaging/ |
resource.script, resource.css, resource.img | Assets | https://develop.sentry.dev/sdk/telemetry/traces/modules/assets/ | N/A |
app.start.* | App Starts | https://develop.sentry.dev/sdk/telemetry/traces/modules/app-starts/ | N/A |
ui.load* | Screen Loads | https://develop.sentry.dev/sdk/telemetry/traces/modules/screen-loads/ | N/A |
ui.interaction.* | Web Vitals | https://develop.sentry.dev/sdk/telemetry/traces/modules/web-vitals/ | N/A |
Step 3: Fetch Current Conventions
For each module identified in Step 2, use WebFetch to retrieve the Sentry Convention page from the URL in the table above. Sentry conventions are the primary authority.
If the Sentry convention page is underspecified for a particular attribute, span name format, or operation pattern, also fetch the corresponding OTel Semantic Conventions page for supplementary guidance.
Do not assume or hardcode convention details. Always fetch the live documentation to ensure you are reviewing against the latest version.
Step 4: Review Each Span
For each span change, verify conformance against the fetched conventions for its module. Check the following categories:
4a. Span Operation (op)
Verify the op value matches the expected pattern defined in the fetched Sentry convention for the module.
4b. Span Name / Description
Verify the span name follows the format specified in the fetched convention.
4c. Required Attributes
Verify all required span data attributes listed in the fetched convention are set.
4d. Optional/Recommended Attributes
Flag if commonly expected optional attributes (listed in the fetched convention) are missing. These are "should have" not blockers.
4e. Data Sensitivity
Check that spans do not leak sensitive data:
- Database queries must have user-supplied values scrubbed/parameterized
- AI spans: input/output messages and system instructions should only be set when explicitly opted in (e.g., via a "send default PII" or "send prompts" setting)
- HTTP spans should redact sensitive URL parameters
- Cache keys should not contain raw user identifiers unless expected
4f. Attribute Types
Verify attributes use correct types as specified in the conventions:
- Complex data (messages, tool definitions) must be stringified JSON, not raw objects
- Boolean attributes must be actual booleans
- Numeric attributes must be integers/numbers, not strings
- Array attributes must be arrays
Step 5: Report Findings
Present findings grouped by severity:
Required Fixes (convention violations)
Issues that MUST be fixed — missing required attributes, wrong op format, incorrect span name patterns.
Recommended Improvements
Issues that SHOULD be addressed — missing recommended attributes, suboptimal naming.
Notes
Informational observations — things that look correct, edge cases to be aware of, or areas where conventions are ambiguous.
For each finding, include: 1. File and line where the issue occurs 2. What's wrong — the specific convention being violated 3. Expected — what the convention requires 4. Actual — what the code currently does 5. Convention source — link to the specific Sentry or OTel convention page
Output Format
## Span Convention Review
### Required Fixes
1. **[file:line]** Missing required attribute `gen_ai.operation.name`
- Convention: All AI agent spans MUST set `gen_ai.operation.name`
- Source: https://develop.sentry.dev/sdk/telemetry/traces/modules/ai-agents/
2. **[file:line]** Incorrect span name format
- Expected: `"chat {model}"` (e.g., `"chat gpt-4"`)
- Actual: `"OpenAI chat completion"`
- Source: https://develop.sentry.dev/sdk/telemetry/traces/modules/ai-agents/
### Recommended Improvements
1. **[file:line]** Missing recommended attribute `gen_ai.response.finish_reasons`
- This attribute helps with debugging incomplete responses
- Source: https://develop.sentry.dev/sdk/telemetry/traces/modules/ai-agents/
### Notes
- All cache spans correctly implement the `cache.hit` attribute
- Queue span naming follows OTel convention (Sentry convention is underspecified here)Handling Edge Cases
- Unknown module: If a span op doesn't match any known module, flag it and check if there's a new or updated convention page. If no convention exists, fall back to general OTel semantic conventions.
- Multiple modules: Some integrations produce spans for multiple modules (e.g., Redis creates both
cache.*anddb.redisspans). Review each span type against its respective module convention. - SDK-specific patterns: Different SDKs use different APIs to create spans (Python uses
start_span(op=..., name=...), JavaScript usesstartSpan({op: ..., name: ...}), etc.). Focus on the semantic correctness of op, name, and attributes regardless of the API surface. - Origin attribute: While not part of module conventions, verify that
originis set on auto-instrumented spans (pattern:auto.{category}.{integration}). This is a general Sentry SDK convention.
Related skills
FAQ
What does span-convention-review do?
span-convention-review skill documents Review OpenTelemetry tracing span changes in SDK repositories for conformance to Sentry Conventions and OTel Semantic Conventions.
When should I use span-convention-review?
User asks about span-convention-review, review opentelemetry tracing span changes in sdk repositories for conformance to sentry co.
Is this skill safe to install?
Review the Security Audits panel on this page before installing in production.