Conversation
Add os.rooted, os.kernel_version, os.raw_description, and os.theme attributes from the Sentry Contexts Interface OS Context definition. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Semver Impact of This PR🟡 Minor (new features) 📋 Changelog PreviewThis is how your changes will appear in the changelog. New Features ✨Attributes
Other
Bug Fixes 🐛
Documentation 📚
Internal Changes 🔧Deps
Deps Dev
Other
🤖 This preview updates automatically when you update the PR. |
|
for mobile we use @Lms24 any preferences here on how to handle this? afaict it was added by Abhi last year. I guess to add some OTEL attributes |
|
I'd personally prefer going with the OTel-supported attribute for consistency but given there's product dependence on this attribute, we need a decision from product folks what they prefer. Ideally we can settle on one attribute and deprecate/not introduce the other. @mjq @nsdeschenes wdyt? For SDKs, we'll likely have to send both until the next major release to avoid breaking self-hosted setups (though we can be flexible here and decide case-by-case depending on data). |
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…uild_id Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Adds additional OS context attributes to the conventions registry (aligned with Sentry Contexts Interface) and introduces os.build as a deprecated alias of existing os.build_id, updating generated language bindings and the deprecated-attributes registry accordingly.
Changes:
- Added new OS attributes:
os.rooted,os.kernel_version,os.raw_description,os.theme. - Added
os.buildas deprecated (backfill) with symmetric aliasing toos.build_id. - Regenerated Python/TypeScript attribute constants + metadata and updated
shared/deprecated_attributes.json.
Reviewed changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| shared/deprecated_attributes.json | Adds deprecated attribute entry for os.build with backfill replacement os.build_id. |
| python/src/sentry_conventions/attributes.py | Adds new OS attribute constants/metadata and os.build deprecation + aliasing in the Python bindings. |
| javascript/sentry-conventions/src/attributes.ts | Adds new OS attribute constants/types/metadata and os.build deprecation + aliasing in the TS bindings. |
| model/attributes/os/os__theme.json | Defines os.theme. |
| model/attributes/os/os__rooted.json | Defines os.rooted. |
| model/attributes/os/os__raw_description.json | Defines os.raw_description. |
| model/attributes/os/os__kernel_version.json | Defines os.kernel_version. |
| model/attributes/os/os__build.json | Defines deprecated os.build aliasing to os.build_id. |
| model/attributes/os/os__build_id.json | Adds alias/changelog updates to reflect os.build alias. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Fix "favour" → "favor" spelling in os.build changelog - Add missing prs field to os.kernel_version, os.raw_description, os.rooted, os.theme changelogs Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add OS context attributes from the Sentry Contexts Interface:
os.rooted— Whether the OS has been jailbroken or rooted (boolean)os.kernel_version— Independent kernel version string, typically fromuname(string)os.raw_description— Unprocessed OS description string (string)os.theme— Whether the OS runs in dark or light mode (string)os.build— Build ID of the operating system (string, deprecated in favour ofos.build_id)os.buildis added as a deprecated alias of the existingos.build_idattribute, withbackfilldeprecation status. Both attributes reference each other viaalias.