test: no shared conformance suite across runtimes
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- typescript
- Domain
- testing-qa
Research direction
Start by locating the existing per-runtime integration tests and the repository's conventions for generated documentation or shared test matrices. Map the listed behaviors to existing coverage, then choose the supported matrix format and populate its current results. Done means one cross-runtime table exists, with empty cells clearly identifying missing coverage and existing tests reflected accurately.
Written by the indexing model from the issue text.
Description
Many items in this project's issues are the same questions asked repeatedly: does this runtime propagate trace headers on its default HTTP client? Does it keep a span open for a streaming response? Does it report the right SDK name and runtime? Does double init do the same thing?
Each was found by reading one package and comparing to another. A table would have found them all at once, and would keep finding them.
Work item. Add a single matrix table to the repo (a test, or a generated doc) with one row per behavior and one column per runtime, covering at least:
| Behavior |
|---|
sdk.name and sdk.packages |
contexts.runtime.name / .version |
incoming server span: name, sentry.op, source |
incoming server span: continues an inbound sentry-trace |
| outgoing default HTTP client: child span created |
outgoing default HTTP client: sentry-trace + baggage sent |
| streaming response: span stays open until the body ends |
| streaming response: client cancel propagates upstream |
request body capture honors dataCollection.httpBodies |
ignoreStatusCodes drops the transaction |
| OPTIONS / HEAD produce no span |
double init() behavior |
| tracing-off: tracing integrations absent |
| unhandled error in the handler is captured and rethrown |
Fill it from the existing per-runtime integration tests where they already exist, and let the empty cells drive the backlog. This is the item with the highest long-term return; every other item in this document is one cell in it.
Prior art Four open issues ask for more test coverage, but none of them for a cross-runtime behavior matrix:
- Dominant language
- TypeScript
- Stars
- 8.7k
- Forks
- 1.9k
- Avg merge
- 1d 18h
- Merged PRs (30d)
- 543
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from getsentry/sentry-javascript
-
Browser Waiting for: Product Owner
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
getsentry/sentry-javascript#24577 · 1 comment ·
-
Task
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
getsentry/sentry-javascript#24558 · 1 comment ·
-
Task
Difficulty 1/5 Under an hour Newbie friendliness 90/100
getsentry/sentry-javascript#24557 · 1 comment ·
-
Task
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
getsentry/sentry-javascript#24556 · 1 comment ·
-
Task
Difficulty 1/5 1-3 hours Newbie friendliness 90/100
getsentry/sentry-javascript#24555 · 1 comment ·
All issues in getsentry/sentry-javascript
Similar issues
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
dennys-bd/agent-hive#184 ·
-
Add: hunch Open
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
AbdelStark/awesome-typesafe#104 ·
-
ai-observability bug team/ai-observability
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
vicharanashala/fln#563 ·