Skip to content

Tracking: expand Sentry JS SDK feature coverage #313

Description

@zivl

Background

A review of the Sentry JavaScript SDK docs against sentry-testkit found that the testkit currently captures only 2 of the ~12 envelope item types the SDK can emit (event and transaction). Everything Sentry shipped in recent years — structured logs, session replay, user feedback, cron check-ins, sessions/release health, standalone spans, metrics, attachments, client reports — is silently dropped by the transport/parser layer.

This issue tracks the incremental rollout of full SDK coverage. Each item below is an independent issue that can ship as its own release (conventional commits + release-please), roughly ordered by expected user value.

Roadmap

Prerequisite

New data-type capture APIs (ordered by expected value)

DX / API improvements (independent of the parser work — can ship anytime)

Suggested release sequence

  1. Quick DX wins that need no parser changes: Add awaitable assertions: waitForReports() / waitForTransactions() #309, Add richer query helpers: findTransaction, findReportByMessage, reportsWithTag #310, Expose feature flags on reports: report.flags from contexts.flags #311
  2. The enabler: Rewrite envelope parser to support multi-item envelopes #299
  3. Data types in value order: Support Structured Logs: capture log envelope items via testkit.logs() #300Support User Feedback: capture feedback envelope items via testkit.feedback() #301Support Cron Check-Ins: capture check_in envelope items via testkit.checkIns() #302Support Sessions / Release Health: capture session envelope items via testkit.sessions() #303Support Session Replay: capture replay envelope items via testkit.replays() #304Support standalone spans & AI agent monitoring: testkit.spans() / findSpansByOp() #305Support Application Metrics: capture trace_metric envelope items via testkit.metrics() #306Support Attachments: capture attachment envelope items #307Support Client Reports: capture client_report envelope items via testkit.clientReports() #308
  4. Add Playwright integration: testkit.playwright.startListening(page) #312 Playwright integration (basic capture works today; benefits from Rewrite envelope parser to support multi-item envelopes #299 for new item types)

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions