getsentry / getsentry/sentry-javascript
node-integration-tests: port trace semantics suites to span streaming
- Lenguaje dominante
- TypeScript
- Estrellas
- 8.7k
- Forks
- 1.8k
- Merge medio
- 1 d 17 h
- PR fusionados (30 d)
- 523
Descripción
Follow the porting recipe in the parent issue.
Sampling, DSC, envelope headers and span linking. These suites assert on envelope headers and trace propagation rather than on instrumentation output, so they are the ones most likely to expose a real product bug rather than a test rewrite.
## Suites
* Envelope headers and DSC: `tracing/envelope-header/*` (7 dirs), `tracing/dsc-txn-name-update`, `tracing/double-baggage/*` (3 dirs), `tracing/meta-tags`, `tracing/meta-tags-twp`, `tracing/meta-tags-twp-errors`
* Sampling: `tracing/sampling-static`, `tracing/sample-rate-propagation/*` (4 dirs), `tracing/sample-rand-propagation`, `tracing/no-parent-span-client-report`
* Trace lifetime: `tracing/continueTrace`, `tracing/startNewTrace`, `tracing/traceid-recycling`, `tracing/traceid-recycling-with-spans`
* Span shaping: `tracing/linking`, `tracing/maxSpans`, `tracing/tracer-start-active-span-error`
* Public API span surface: `public-api/startSpan/*` (7 dirs), `public-api/beforeSendSpan-static`, `public-api/bindScopeToEmitter`, `public-api/setMeasurement`, `public-api/scopes/*`
## Twins to fold back
`tracing/sampling-streamed`, `tracing/ignoreSpans-streamed/*`, `public-api/beforeSendSpan-streamed`, `context-streamed/*`, and the 6 `public-api/startSpan/*-streamed` dirs.
## Keep static trace lifecycle coverage
This is the group that owns the guard. Keep `tracing/sampling-static` and `public-api/beforeSendSpan-static` on the static pin. Everything else moves.
Guía de contribución
Línea de trabajo
Start with the porting recipe in the parent issue, then inspect the listed tracing/* and public-api/* suites and their -streamed twins. Port the specified suites to span streaming, fold back the named twins, and keep tracing/sampling-static and public-api/beforeSendSpan-static on the static pin. Done means the listed integration suites cover sampling, propagation, span linking, and public API behavior under span streaming.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- node.js, typescript
- Área
- testing
- Tipo de issue
- Refactorización
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Activo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 52/100