Download Latest Version 26.3.1 source code.tar.gz (52.1 MB)
Email in envelope

Get an email when there's a new version of Sentry

Home / 26.3.0
Name Modified Size InfoDownloads / Week
Parent folder
26.3.0 source code.tar.gz 2026-03-15 52.0 MB
26.3.0 source code.zip 2026-03-15 63.2 MB
README.md 2026-03-15 125.0 kB
Totals: 3 Items   115.4 MB 0

New Features ✨

Aci

  • Make rule stats and group history endpoints backwards compatible by @ceorourke in #110282
  • Make ProjectRulesEndpoint POST method backwards compatible by @ceorourke in #109926
  • Add error for unsupported condition by @ceorourke in #110025
  • Dual delete Workflow/Rule if flag enabled by @ceorourke in #110003
  • Make OrganizationAlertRuleDetails DELETE method backwards compatible by @ceorourke in #109845
  • Make ProjectRulesEndpoint GET method backwards compatible by @ceorourke in #109744
  • Make ProjectRuleDetailsEndpoint DELETE method backwards compatible by @ceorourke in #109752
  • Make ProjectRuleDetailsEndpoint GET method backwards compatible by @ceorourke in #109387
  • Update copy on metric alert wizard to refernce issue creation by @malwilley in #109223
  • Add issue type filter to old alerts by @malwilley in #108273
  • Update issue type issue handler to work with frontend by @malwilley in #108241

Ai Conversations

  • Add arcade to onboarding by @obostjancic in #110296
  • Sidebar label by @obostjancic in #109935
  • Move to explore by @obostjancic in #109874
  • Design polish by @obostjancic in #109773
  • Onboarding by @obostjancic in #109651
  • Remove default filter by @obostjancic in #109475
  • Return only conversations with input and output by @obostjancic in #109175
  • Drawer redesign by @obostjancic in #109182

Alerts

  • Include single-written detectors in AlertRuleFetchMixin.fetch_metric_alerts by @kcons in #110673
  • Add trace metrics support to new alert UI (detectors) by @k-fish in #108730
  • Consistent logging for cases where users hit alert limits by @kcons in #109101

Assets

  • Add image preview to assets summary details widget by @DominikB2014 in #109329
  • Link frontend overview assets widget to assets summary dashboard by @DominikB2014 in #109323
  • Add platformized assets page with dashboard migration flag by @DominikB2014 in #109240

Autofix

  • Loading states for redesigned autofix by @Zylphrex in #110646
  • Prompt the agent to run the step again by @Zylphrex in #110596
  • Add next steps button in autofix drawer by @Zylphrex in #110476
  • Add open seer button in autofix section by @Zylphrex in #110432
  • Directly restart autofix when clicking on reset by @Zylphrex in #110444
  • Redesigned autofix cards by @Zylphrex in #110326
  • Redesigned empty state for autofix section by @Zylphrex in #110370
  • Redesigned autofix previews by @Zylphrex in #110203
  • Show Cursor GitHub access modal on verify-branch error by @isaacwang-sentry in #109695
  • Pass on_completion_hook to explorer create PR by @Zylphrex in #109787
  • Allow creating explorer autofix prs from slack by @Zylphrex in #109528
  • Render diff in explorer autofix slack integration by @Zylphrex in #109396
  • Add github_app field to autofix PR analytics events by @JoshFerge in #109383
  • Add some debug log for explorer autofix by @Zylphrex in #109233
  • Support explorer autofix responses for some slack hooks by @Zylphrex in #109103

Billing

  • Add UsageService to billing platform by @dashed in #110157
  • _admin page for viewing Contract information by @brendanhsentry in #109853
  • Add BillingService base class and service method decorator by @volokluev in #109376

Cells

  • Update_region_user RPC method to support both region_name and cell_name by @lynnagara in #110275
  • Add unique constraint to projectkeymapping table by @lynnagara in #110235
  • Add idx to OrganizationMapping table for synapse by @lynnagara in #110168
  • Add projectkeymapping table to control silo by @lynnagara in #109831
  • Update org-cell-mappings endpoint by @lynnagara in #109758
  • Add synapse paginator by @lynnagara in #109412
  • Expand locality/cell distinction by @lynnagara in #109538
  • Add db migration for synapse by @lynnagara in #109615

Ci

  • Report backend test fails by @joshuarli in #109543
  • Selective testing escape hatch by @joshuarli in #109136

Code Review

  • Call new endpoints by @armenzg in #109956
  • Control: include github_event & action info by @armenzg in #109995
  • Add option to skip code review for excluded PR authors by @srest2021 in #110101
  • Validate before scheduling by @armenzg in #108545

Coding Integrations

  • Limit coding agent integrations to one per organization by @sehr-m in #110690
  • Add Claude logo for claude_code integration by @sehr-m in #110663

Context Engine

  • Pass context engine feature flag to Seer by @Mihir-Mavalankar in #109508
  • New feature flag for explorer context engine by @Mihir-Mavalankar in #109145
  • New task to generate project summaries for context engine by @Mihir-Mavalankar in #108760

Core Ui

  • Move fzf from profiling to utils by @JonasBa in #109142
  • Allow searchMatcher to return a score for result ordering by @JonasBa in #108719
  • Add searchMatcher prop to CompactSelect by @JonasBa in #108714

Dashboards

  • Hide detail/summary prebuilt dashboards from list by default by @DominikB2014 in #110625
  • Adds seer employee banner to AI Agents Overview insights page when using prebuilt dashboard by @edwardgou-sentry in #110566
  • Update AI Agents Trace Table widget to use spans global filter by @edwardgou-sentry in #110554
  • Integrate text widget visualization into product by @nikkikapadia in #110245
  • Add Sentry Built nav item and remove prebuilt toggle by @DominikB2014 in #110468
  • Add legendType field and support field links for breakdown charts by @DominikB2014 in #110420
  • Adds Create Dashboard with Seer frontend modal and preview page by @edwardgou-sentry in #110451
  • Add onlyPrebuilt filter to dashboards endpoint by @DominikB2014 in #110465
  • Add optional onboarding widgets for prebuilt dashboards by @gggritso in #110244
  • Add starred transaction field to widget builder by @DominikB2014 in #110450
  • Add analytics events to onboarding CTAs on Project Details by @gggritso in #110368
  • Adds dashboards generate endpoint by @edwardgou-sentry in #110254
  • Release pre-starred prebuilt dashboards to EA by @DominikB2014 in #110305
  • Deprecate issue timeseries widgets flag from backend by @edwardgou-sentry in #110236
  • Separate prebuilt dashboards in starred sidebar by @DominikB2014 in #110303
  • Deprecate usage of issue timeseries widget flag from frontend by @edwardgou-sentry in #110238
  • Add default filters for AI Agents and MCP dashboards by @edwardgou-sentry in #110281
  • Add pre-favorited sync for prebuilt dashboards by @DominikB2014 in #110209
  • Add text widget visualization by @nikkikapadia in #110138
  • Add toggle to hide prebuilt Sentry dashboards by @DominikB2014 in #109971
  • Add favorited column to DashboardFavoriteUser by @DominikB2014 in #110096
  • Add logs confidence footer to dashboard widgets by @nsdeschenes in #109940
  • Support multiple filters on dashboards list endpoint by @DominikB2014 in #109973
  • Add trace metrics confidence footer to dashboard widgets by @nsdeschenes in #109941
  • Backend validation for text widget by @nikkikapadia in #108535
  • Increase default height for Laravel table widgets by @DominikB2014 in #109966
  • Link AI Prebuilt Dashboard widgets with breakdown legends to appropriate Prebuilt Dashboards by @edwardgou-sentry in #109964
  • Add feature flag for insights prebuilt dashboards by @DominikB2014 in #109954
  • Increase table size for Laravel overview page by @DominikB2014 in #109945
  • Show save button on prebuilt dashboards when filters change by @DominikB2014 in #109902
  • Add errors column to prebuilt MCP dashboards tables by @edwardgou-sentry in #109873
  • AI Agent prebuilt dashboard improvements by @edwardgou-sentry in #109830
  • Add moving notice banner to insight pages by @DominikB2014 in #109813
  • Increase char limit on widget description by @nikkikapadia in #108529
  • Adds error count column to mcp prebuilt dashboard tables by @edwardgou-sentry in #109838
  • Add spans table field renderer for internal error count by @edwardgou-sentry in #109761
  • Updates AI Agents Overview prebuilt dashboard Traces table to open Trace drawer by @edwardgou-sentry in #109763
  • Register backend caches prebuilt dashboard module by @DominikB2014 in #109702
  • Register caches prebuilt dashboard on frontend by @DominikB2014 in #109703
  • Add Agents Traces Table widget to platformized AI overview dashboard by @edwardgou-sentry in #109565
  • Add 'datamin' support to Mobile Session Health dashboard by @jameskeane in #109606
  • Register Queues and Queue Summary prebuilt dashboards on frontend by @DominikB2014 in #109594
  • Register Queues and Queue Summary prebuilt dashboards on backend by @DominikB2014 in #109595
  • Add maxFontSize prop to AutoSizedText and use it in details widget by @DominikB2014 in #109577
  • Add axisRange frontend types, state, wiring, and builder UI by @mtopo27 in #109390
  • Add Crash Free Session Rate widget to Mobile Vitals dashboard by @gggritso in #108226
  • Persist and serve axisRange on dashboard widgets by @mtopo27 in #109389
  • Updates AI Agent and MCP pages render using prebuilt dashboard content when flagged by @edwardgou-sentry in #109327
  • Filter Mobile Vitals tables to screens with nonzero metrics by @gggritso in #109372
  • Add AI Model icons to Visualization Widget breakdown labels by @edwardgou-sentry in #109324
  • Add prebuilt dashboard configs for MCP dashboards by @edwardgou-sentry in #109243
  • Adds prebuilt dashboard configs for AI Agent modules by @edwardgou-sentry in #109235
  • Register FRONTEND_ASSETS_SUMMARY prebuilt dashboard by @DominikB2014 in #109230
  • Add FRONTEND_ASSETS_SUMMARY prebuilt config by @DominikB2014 in #109229
  • Register FRONTEND_ASSETS prebuilt dashboard by @DominikB2014 in #109216
  • Add blank FRONTEND_ASSETS prebuilt dashboard by @DominikB2014 in #109221
  • Create laravel overview prebuilt dashboard by @DominikB2014 in #109079
  • Registers initial prebuilt configs for ai modules in dashboards by @edwardgou-sentry in #109190
  • Register Laravel Overview prebuilt dashboard by @DominikB2014 in #109130
  • Register AI Agent and MCP prebuilt dashboard ids to backend by @edwardgou-sentry in #109086
  • Adds feature flag for AI Agents and MCP modules migration to prebuilt dashboards by @edwardgou-sentry in #109085
  • Add chart threshold support to dashboard widgets by @DominikB2014 in #108368
  • Add insights-laravel-overview-dashboard-migration feature flag by @DominikB2014 in #109077
  • Allow interval selection similar to explore by @bcoe in #108416
  • Add dashboards-interval-selection feature flag by @DominikB2014 in #109073

Dev

  • Prevent absolute date times by @armenzg in #110671
  • Autoprovision devenv when making a new git worktree by @joshuarli in #109889

Discover

  • Updates android devices mapping and update script to work without csv-parser by @edwardgou-sentry in #109669
  • Allow ttid/ttfd contribution rate in arithmetic equations by @gggritso in #109521

Eslint

  • Add initial no-default-export-components rule by @JoshuaKGoldberg in #110266
  • Add restrict-jsx-slot-children lint rule by @JonasBa in #109169

Explore

  • Adds trace_status_rate to allow list by @edwardgou-sentry in #110455
  • Add multi-key support for has: search filter by @manessaraj in #109907
  • Allow clearing of last group by by @nsdeschenes in #107924

Explorer

  • Gate coding tools on org feature flag and org option by @aliu39 in #110705
  • Add max_iterations support to SeerExplorerClient by @cvxluo in #110006
  • Add get_issue_details and get_event_details RPCs by @aliu39 in #110027
  • Return meta dict from table rpcs by @aliu39 in #109359

Flags

  • Remove graduated data-browsing profiling feature flags (batch 3) by @wedamija in #108780
  • Remove graduated data-browsing-8 feature flags by @wedamija in #108808
  • Remove graduated ecosystem feature flags by @wedamija in #108813
  • Remove graduated issue-workflow feature flag by @wedamija in #108816
  • Remove graduated team-replay-2 feature flags by @wedamija in #108812
  • Remove graduated issue_detection feature flags by @wedamija in #108775
  • Add frontend assets dashboard migration flag by @DominikB2014 in #109217
  • Remove graduated ml-ai feature flags by @wedamija in #108814
  • Remove graduated team-replay user-feedback AI flags by @wedamija in #108811
  • Remove graduated coding-workflows feature flag by @wedamija in #108815
  • Remove graduated mep-rollout-flag feature flag by @wedamija in #108810
  • Remove dead issue-search-allow-postgres-only-search flag by @wedamija in #108721
  • Remove graduated dashboards-mep feature flag by @wedamija in #108809
  • Remove dead perf-discover-widget-split-ui and txn-summary-cleanup flags by @wedamija in #108763

Infra

  • Report frontend-snapshot upload failures to Sentry by @rbro112 in #110427
  • Replace full backend workflow on PRs with selective testing by @rbro112 in #109346

Insights

  • Add moving notice banners to Crons and Uptime by @gggritso in #109910
  • Add platformized cache module with conditional rendering by @DominikB2014 in #109707
  • Add feature flag for cache module dashboard migration by @DominikB2014 in #109698
  • Add prebuilt dashboard rendering for queues landing page by @DominikB2014 in #109610

Integrations

  • Expand platform detection to 98% picker coverage by @jaydgoss in #109701
  • Add GitHub repository platform detection by @jaydgoss in #109699
  • Register platform detection feature flag by @jaydgoss in #110243

Issues

  • Remove issues from stream on action w/ realtime by @scttcper in #110175
  • Improve issue diff copy and loading experience by @scttcper in #110267
  • Improve regression breakpoint chart experience by @scttcper in #110171
  • Add open in explore to regression breakpoint by @scttcper in #109759
  • Rebuild potential causes component by @scttcper in #109748
  • Remove checks for issue view ai title by @scttcper in #109704
  • Remove checks for issue view ai title by @scttcper in #109705

Metric Issues

  • Add analytics to detector details link by @malwilley in #109925
  • Track notification UUID on issue details by @malwilley in #109917
  • Add attribute comparisons section (for span queries) by @malwilley in #109627

Notifications

  • Improve deploy email subjects by @dcramer in #110348
  • Threading service locking and followup by @Christinarlong in #109147

Occurrences On Eap

  • Implement double-read performance issues query for summaries task by @shashjar in #110277
  • Implement double-read query for trace errors count by @shashjar in #110251
  • Update query abstractions & utils by @shashjar in #109696
  • Implement double reads from EAP for organization traces API endpoint by @shashjar in #109636
  • Implement double reads from EAP for monitors associated groups by @shashjar in #108008
  • Implement double reads from EAP for error counts timeseries by @shashjar in #107308
  • Implement double reads from EAP in organization events trace API endpoint by @shashjar in #109391
  • Implement double reads from EAP for reprocessing2 flow by @shashjar in #109345
  • Support debug logging for data mismatches in rollout comparator by @shashjar in #109247

Onboarding

  • Add copy-as-markdown button to project creation and signup setup docs by @jaydgoss in #109237
  • Add guide for setup without --import to tanstack start by @nicohrubec in #109549
  • Add logs option to Tanstack Start onboarding by @nicohrubec in #109550
  • Register feature flag for copy instructions on project creation by @jaydgoss in #109232
  • Add global sentry exception middlewares to tanstack start onboarding by @nicohrubec in #108351
  • Design adjustments for copy markdown button by @jaydgoss in #108696

Pagefilters

  • Fix sentinel toggle behavior for All/My Projects quick-select by @JonasBa in #109545
  • Auto-select single project for single-project orgs by @JonasBa in #109767

Perf Detectors

  • Set default enabled state of perf Detectors based on configuration by @kcons in #109961
  • Make ProjectPerformanceIssueSettingsEndpoint optionally write to Detector.config by @kcons in #109623
  • Consider Performance Detectors to be system created by @kcons in #109762
  • Create Performance Detectors by default by @kcons in #109760

Preprod

  • Navigate through snapshots with keyboard by @rbro112 in #110614
  • Add auto expansion of selected tab and add links to individual items in status checks by @rbro112 in #110613
  • Add launchpad-taskbroker-rollout feature flag by @NicoHinderling in #110549
  • Add app name, app ID, and install columns to PR comment table by @runningcode in #110418
  • Add PR comments toggle to Mobile Builds settings by @runningcode in #110051
  • Add project-level toggle for build distribution PR comments by @runningcode in #110050
  • Filter snapshot artifacts from builds endpoint when display is set by @NicoHinderling in #110265
  • Post build distribution comments to GitHub PRs by @runningcode in #109476
  • Add distribution error endpoint for launchpad by @runningcode in #109497
  • Add different snapshot diff viewing options by @NicoHinderling in #109892
  • Add rename detection to snapshot comparisons by @NicoHinderling in #109848
  • Add public build-distribution/latest endpoint by @trevor-e in #109584
  • Add snapshot diff comparison UI by @NicoHinderling in #109403
  • Return snapshot URL in create snapshot response by @runningcode in #109662
  • Add distribution_error_code filter to list builds by @runningcode in #109491
  • Add comparisonRunInfo data to response + new extra frontend models by @NicoHinderling in #109619
  • Make snapshots endpoint org scoped by @NicoHinderling in #109575
  • Create admin gated recompare snapshots endpoint by @NicoHinderling in #109546
  • Add public install-details endpoint and shared utilities by @trevor-e in #109583
  • Add snapshot image comparison task and endpoint logic by @NicoHinderling in #109151
  • Add snapshot comparison task by @NicoHinderling in #109382
  • Add image comparison library with odiff batch support by @NicoHinderling in #109381
  • Add public size analysis API by @trevor-e in #108789
  • Add odiff server wrapper and Dockerfile binary install by @NicoHinderling in #109380
  • Add detector_id to size analysis occurrence evidence data by @chromy in #109487
  • Track distribution state on PreprodArtifact by @runningcode in #109062
  • Enrich size analysis detector occurrences with metadata by @chromy in #109069
  • Register PR comments feature flag by @runningcode in #109484
  • Add size monitor UI by @chromy in #108211
  • Add GitHub Enterprise support for size analysis status checks by @trevor-e in #109348
  • Add distribution state fields to PreprodArtifact (EME-842) by @runningcode in #109075
  • Add analytics events for status check threshold failures and approvals by @mtopo27 in #109132
  • Add analytics for status check rule CRUD by @mtopo27 in #109125
  • Group failed checks by bundle ID and build configuration by @mtopo27 in #108373
  • Add App Clip artifact support to size checks by @cameroncooke in #108676
  • Add App Clip options to size analysis UI by @cameroncooke in #108675
  • Hook size analysis detector to diff by @chromy in #108209
  • Add new issue type to frontend by @chromy in #108210

Processing Errors

  • Add SourcemapConfigurationType GroupType and CONFIGURATION category by @wedamija in #109542
  • Store processing errors in EAP by @wedamija in #109285

Relay

  • Add feature flag for new error processing pipeline by @Dav1dde in #109866
  • Register option for objectstore sample rate by @jjbayer in #109482
  • Upload endpoint feature by @jjbayer in #109185

Scm

  • Can returns the named set of supporting actions by @cmanallen in #110567
  • Add SCM subscriptions platform publisher by @cmanallen in #107441
  • Add vendor-agnostic interfaces by @cmanallen in #107360

Seer

  • Register project and org option keys for seer preferences migration by @srest2021 in #110548
  • Migration for SeerProjectRepository and SeerProjectRepositoryBranchOverride models by @srest2021 in #110542
  • Allow installing integrations directly from within the Seer SCM treeview by @ryan953 in #110551
  • Seer Code Review page allows inline editing of the connected repos in a modal by @ryan953 in #110501
  • Iterate on the seer settings header, copy and visual alignment by @ryan953 in #110500
  • Add a flag to control if orgs can toggle their Enable Code Generation setting by @ryan953 in #110491
  • Rewrite the Seer > Project list page by @ryan953 in #109531
  • Create an SCM config component to streamline seer setup by @ryan953 in #110166
  • Add is_private field to repo definitions for code review by @vaind in #110190
  • Detect Cursor GitHub access errors and return specific failure type by @isaacwang-sentry in #109692
  • Add tooltip to ResponseDot showing step status by @chromy in #109659
  • Add signed viewer context header to Seer API requests by @azulus in #109626
  • Iterate on the instructions at the top of seer settings pages by @ryan953 in #109586
  • Include isolated services in explorer service map by @shruthilayaj in #109330
  • Add default_coding_agent field to SeerOrganizationSettings by @JoshFerge in #108762
  • Simplify and consolidate the Settings > Project > Seer page by @ryan953 in #109349
  • Add SeerOrganizationSettings model by @JoshFerge in #109299
  • Add Explorer service map extraction pipeline by @shruthilayaj in #108379
  • Add github_copilot_not_licensed failure type by @JoshFerge in #108782

Seer Explorer

  • Add copy-to-clipboard button to block action bar by @aliu39 in #110224
  • Add /sentry-conversation slash command for employees by @aliu39 in #108754

Size

  • Kill list-builds endpoint in favor of builds endpoint by @NicoHinderling in #110272
  • Migrate size compare build selection page to builds endpoint by @NicoHinderling in #110271
  • Ensure builds endpoint has parity with list-builds endpoint by @NicoHinderling in #110270

Snapshots

  • Fix sidebar rendering for uploads with lots of images by @NicoHinderling in #110156
  • Add d3-zoom interactivity by @NicoHinderling in #109921
  • Add click-to-snap interaction on wipe slider by @NicoHinderling in #110102
  • Simplify color picker by @NicoHinderling in #109909

Sourcemap Issues

  • Add sourcemap issue detection to post_process_group pipeline by @wedamija in #109817
  • Add ensure_sourcemap_detector() provisioning function by @wedamija in #109749
  • Add SourcemapDetectorHandler by @wedamija in #109633
  • Add index to DetectorState table by @wedamija in #109847

Span Buffer

  • Add zerocopy mode by @untitaker in #109313
  • OOB storage by @untitaker in #109191

Spans

  • Distribute span payload keys across Redis cluster by @lvthanh03 in #110593
  • Add per-trace segment flush limit by @lvthanh03 in #110337
  • Add flusher log support to GCP log analyzer tool by @lvthanh03 in #109080
  • Emitting outcomes when accepted_outcome_emitted is false by @tobias-wilfert in #109305
  • Add metric to ensure accepted_outcome_emitted arrives by @tobias-wilfert in #109303
  • Bump sentry-kafka-schemas version by @tobias-wilfert in #109174

Supergroups

  • Add lightweight supergroups page and drawer by @cvxluo in #110232
  • Lightweight RCA prototype by @cvxluo in #110191
  • Add API endpoints for supergroups by @cvxluo in #109972

Tracemetrics

  • Support units in monitors UI by @narsaynorath in #109732
  • Alerts allow search on field by @narsaynorath in #109883
  • Use units in alerts metric selector UI by @narsaynorath in #109593
  • Expose unit type in metrics UI by @narsaynorath in #108036
  • Add deno to available metrics platforms by @narsaynorath in #109195

Ui

  • Add Claude Code integration to autofix UI and settings by @sehr-m in #109756
  • Add AvatarButton with useAvatar hook by @JonasBa in #109900

Webhooks

  • Composite GitHub tag by @armenzg in #110521
  • Add push-based drain trigger to eliminate scheduler wait by @tnt-sentry in #109214
  • Exclude mailboxes from delivery_time_ms metric by @armenzg in #108711

Other

  • (actions) Log Action deduplication by @kcons in #109160
  • (admin) Add Last Active column and sort to user search by @ndmanvar in #109736
  • (agent-monitoring) Add LLM instructions to copy markdown button by @priscilawebdev in #109307
  • (alerts-api) Add tests and fixes for OrganizationAlertRuleDetails API backward compatibility by @kcons in #110362
  • (analytics) Add Amplitude tracking to project page filter by @JonasBa in #109431
  • (broadcasts) Add show=latest filter to broadcast index endpoint by @JonasBa in #110323
  • (button) Busy spinner with absolute position by @TkDodo in #110202
  • (client-reports) Feature flag for new client report processing pipeline by @tobias-wilfert in #109860
  • (codecov) Hide TA feature by @calvin-codecov in #109527
  • (commits) Support Sentry issue URLs in "Fixes" references by @vaind in #106174
  • (compactSelect) Use fzf for default search matching by @JonasBa in #109252
  • (config-issues) Registering issue type and associated trace item by @Abdkhan14 in #110225
  • (configuration-issues) Making processing_errors queryable by @Abdkhan14 in #109884
  • (control) Add support for dropping unprocessed GitHub webhook events by @armenzg in #109354
  • (conversations) Collapse tool calls in message bubbles by @priscilawebdev in #109176
  • (cursor) Add retry with model fallback for Cursor API launches by @isaacwang-sentry in #108768
  • (data-browsing) Use custom React chart legend component in TimeSeriesWidgetVisualization by @gggritso in #108493
  • (data-forwarding) Add padding prop to FieldLayout components by @JonasBa in #108803
  • (dynamic-sampling) Add new trace based health check bias with higher sample rate by @shellmayr in #109552
  • (events) Add occurrences as a dataset by @wmak in #109727
  • (features) Register organizations:page-frame feature flag by @JonasBa in #110264
  • (form) Enhance field status indicators with lock icon for disabled state by @TkDodo in #109189
  • (forms) RadioField by @TkDodo in #108819
  • (frontend) Web snapshot testing by @rbro112 in #107971
  • (github) Add mailbox bucketing for GitHub webhooks by @tnt-sentry in #108138
  • (grouping) Parameterize hex values that are up to 128 characters long by @thetruecpaul in #109137
  • (inbound-filters) Add health-check to healthcheck globs by @shellmayr in #110402
  • (issue-details) Format is_active field as 'Is Active' in app context by @philipphofmann in #107047
  • (issue-detection) Use title-only fingerprinting for LLM-detected issues by @roggenkemper in #109131
  • (metric alerts) Add tests for differences in workflow-engine-rule-serializers output by @kcons in #109242
  • (middleware) Expand AI agent guidance with docs and plugin links by @dcramer in #108938
  • (models) Recreate CodeReviewEvent with updated schema [3/3] by @vaind in #109424
  • (monitors) Add Mobile Builds to monitors sidebar by @mtopo27 in #110464
  • (occurrences) New ingest by @thetruecpaul in #109180
  • (page-filters) Use fzf for project search in ProjectPageFilter by @JonasBa in #108725
  • (performance-detectors) Use config from Workflow Engine Detectors if available and enabled by @kcons in #107137
  • (profiling) Back SuspectFunctionsTable with EAP by @mjq in #109293
  • (queue) Register insights-queue-dashboard-migration feature flag by @DominikB2014 in #109332
  • (queues) Split transaction table into producer and consumer tables by @DominikB2014 in #109683
  • (replays) Convert replay console tab to tanstack virtual by @scttcper in #109292
  • (repos) Replace the repo list page with the new repo tree-view by @ryan953 in #110290
  • (repositories) Add danger delete button with label to repository row by @JonasBa in #108764
  • (rollouts) Add comparator with timings by @thetruecpaul in #109104
  • (scim) Move privilege grant/revoke to async task by @michelletran-sentry in #109129
  • (sdk) Upgrade Sentry SDKs to 10.41.0-beta.0 by @billyvg in #109494
  • (sentry-apps) Expose sentryAppId in SentryAppInstallation API by @souredoutlook in #109496
  • (skills) Add lint skills by @natemoo-re in #110133
  • (spans-buffer) Track pre-merge oversized parent sets by @lvthanh03 in #108447
  • (stories) Lazy load story API type docs by @scttcper in #110332
  • (symbolicator) Disable Intel symbol source by @tobias-wilfert in #109311
  • (theme) Add swatch utils by @natemoo-re in #110090
  • (trace-items) Update trace item search with dynamic keys by @nsdeschenes in #108121
  • (traces) Add 'Open in Logs' link to Logs view by @JoshuaKGoldberg in #110311
  • (traces-explorer) Pass through all chart visuals in Compare Queries by @JoshuaKGoldberg in #110153
  • (typing) Enable mypy strict_equality in our strongly typed config by @kcons in #108606
  • (uptime-assertions) Improving json path form by @Abdkhan14 in #109963
  • (uptime-form-errors) Improving assertion error handling by @Abdkhan14 in #109352
  • (uptime-trace-issues) Rendering uptime issues in traces by @Abdkhan14 in #108567
  • Allow sentry-replay-debugger uri scheme for oauth by @billyvg in #109976
  • Disable webhook forwarding to codecov by @calvin-codecov in #110023
  • Add branch to use taskbroker-client by @markstory in #110001
  • TanStack devtools by @TkDodo in #110032
  • Add flamegraph for metric kit hangs by @noahsmartin in #106412
  • Devenv syncs chromedriver to the google chrome version by @joshuarli in #109739
  • Remove github-console-sdk-self-invite flag registration by @mujacica in #109493
  • Remove github-console-sdk-self-invite feature flag by @mujacica in #109470
  • Add endpoint to list only issues that have PRs created from Seer Explorer by @billyvg in #107850

Bug Fixes 🐛

Aci

  • Add charts to contributing issues by @scttcper in #110162
  • S/deactive/inactive/g by @kcons in #110137
  • Single query in toggle_detector by @kcons in #109375
  • Use types to ensure migration helpers aren't modifying input data by @kcons in #109379
  • Use start of open period instead of event creation time on metric issue queries by @malwilley in #109353
  • Don't dedup actions by workflow by @kcons in #109251
  • Handle custom zoom stats periods in detector details by @malwilley in #109157

Agents

  • Add error boundary around ModelsTable by @priscilawebdev in #110509
  • Handle null modelId in agent monitoring page by @priscilawebdev in #110505

Ai Conversations

  • Display model in span list by @obostjancic in #109774
  • Support multi part messages by @obostjancic in #109076
  • Select first message by @obostjancic in #109072

Alerts

  • Prevent stripping 0 values from request body by @malwilley in #110470
  • Remove unnecessary condition label renames by @malwilley in #110329
  • Trace metrics shouldn't error on query validator by @wmak in #109824
  • Actor missing for feature flag checks in detectors by @k-fish in #109603
  • User_misery eap validation error by @nikkikapadia in #109604

Api

  • Preserve RateLimitExceeded metadata in handle_query_errors by @cvxluo in #109821
  • Fix user serializers to return emails for superusers by @wedamija in #109837
  • Add missing cursor query parameter to paginated endpoint OpenAPI schemas by @MathurAditya724 in #109642

Auth

  • Mask SCIM token after 5-minute visibility window by @wedamija in #108093
  • Show warning when authenticated user isn't an org member by @JoshFerge in #109952
  • Fix for impersonated sessions by @michelletran-sentry in #109903
  • Revoke superuser/staff when user not in default org by @michelletran-sentry in #109510
  • Invalidate sessions when a linked identity is disconnected by @wedamija in #108250

Autofix

  • Reset sections on re-run by @Zylphrex in #110644
  • Handle deleted groups in autofix tasks by @Mihir-Mavalankar in #110386
  • Init explorer client with on complete callback by @Zylphrex in #109841
  • Handle autofix create PR not started by @Zylphrex in #109778
  • Handle explorer run status when creating PRs from slack by @Zylphrex in #109740
  • Always attach group id in explorer autofix metadata by @Zylphrex in #109358
  • Recognize PRs opened by Sentry GitHub app in autofix webhook by @JoshFerge in #109081

Billing

  • Prevent checkout form resetting when payment details are updated by @brendanhsentry in #110669
  • _admin provisioning for legacy Seer by @brendanhsentry in #110482
  • Fix category display names in pending changes by @dashed in #109612

Build

  • Exclude snapshot test files from rspack type-checker by @NicoHinderling in #110547
  • Exclude react-select from SWC loader to fix emotion warning by @TkDodo in #109563

Ci

  • Exclude .venv from pyc cache cleanup by @mchen-sentry in #110585
  • Lint issue in snapshot.ts by @nsdeschenes in #110414
  • Skip selenium plugin import on non-acceptance backend test shards by @mchen-sentry in #109757
  • Add CODEOWNERS fastpath to selective testing by @joshuarli in #109163

Conversations

  • Left-align text content in user message bubbles by @priscilawebdev in #110403
  • Preserve query params on redirect to explore by @obostjancic in #110030

Dashboards

  • Include hidden dashboards in linked dashboard lookup by @DominikB2014 in #110667
  • Allow table widgets to have a limit up to 20 by @DominikB2014 in #110621
  • Lower agent traces widget limit to 10 in pre-built dashboard by @gggritso in #110526
  • Prevent dashboard manage view forwarding search parameter when navigating to dashboard by @edwardgou-sentry in #110525
  • Hide table in full screen view for issues timeseries widgets by @DominikB2014 in #110532
  • Validate linked dashboard fields against columns instead of fields by @DominikB2014 in #110524
  • Prevent empty SQL strings from being passed to SQL formatter by @gggritso in #110475
  • Pass translated options to CompactSelect dropdown by @DominikB2014 in #110421
  • Open Explore in aggregate mode for widgets with aggregates by @DominikB2014 in #110417
  • Register agents_traces_table display type in backend by @gggritso in #110365
  • Add equation| prefix to non-allowed aggregates in prebuilt dashboards by @DominikB2014 in #110308
  • Format y-axis numbers with abbreviation helper by @narsaynorath in #110360
  • Enable fullscreen widget view in prebuilt dashboard renderer by @DominikB2014 in #110340
  • Filter out equation aggregates from create alert menu by @DominikB2014 in #110333
  • Add missing fields key to non-table prebuilt widget queries by @gggritso in #110227
  • Throw validation errors for incorrect dataset source by @nikkikapadia in #110240
  • Add datasource to text widget validation by @nikkikapadia in #110213
  • Resolve infinite render loop in ChartLegend overflow detection by @gggritso in #110187
  • Moves Open in External link to bottom of cell action by @edwardgou-sentry in #110154
  • Treat TOP_N display type as AREA by @DominikB2014 in #109876
  • Show full aggregate name in widget legends for measurements by @gggritso in #109901
  • Fixes for Agents Traces Table to display properly in widget viewer by @edwardgou-sentry in #109905
  • Clamp invalid widget layouts to prevent browser crash by @gggritso in #109825
  • Add backend validation for widget layout dimensions by @gggritso in #109826
  • Allow editing global filters on prebuilt dashboards by @DominikB2014 in #109880
  • Preserve polarity when clearing threshold values by @DominikB2014 in #109872
  • Merge URL filters with saved filters instead of replacing them by @DominikB2014 in #109590
  • Use correct table item limit for categorical bar charts in widget viewer by @gggritso in #109775
  • Respect current time series interval in Widget Viewer by @gggritso in #109766
  • Ignore stale limit on Table widgets by @gggritso in #109688
  • Default axisRange to auto for existing widgets in builder by @mtopo27 in #109598
  • Use equation prefix for ttid/ttfd contribution rate in Mobile Vitals by @gggritso in #109525
  • Fix threshold unit selector for timeseries widgets and size data types by @DominikB2014 in #109500
  • Fix prebuilt mcp overview dashboard layout by @edwardgou-sentry in #109492
  • Prevent threshold lines from overlapping the chart legend by @DominikB2014 in #109488
  • Support multiple aggregates and equations in categorical bar charts by @gggritso in #108071
  • Fix "Other" series colour not displaying correctly in new timeseries visualization by @edwardgou-sentry in #109321
  • Replace TOP_N display type with AREA in dashboard templates by @DominikB2014 in #109211
  • Side nav updates on dashboard deletion by @nikkikapadia in #109197
  • Preserve display type when switching display types by @DominikB2014 in #109208
  • storageNamespace not being applied on prebuilt dashboards by @DominikB2014 in #109187
  • Widget id mismatch in dashboard details test by @nikkikapadia in #108694

Detectors

  • Fix WorkflowEngineDetectorSerializer snooze field by @kcons in #110529
  • Make mobile build threshold validation require at least one by @mtopo27 in #110460
  • Require data sources for Detector creation by default by @kcons in #110246

Eap

  • Use addFilterValue for transaction name in EAP sidebar charts by @mjq in #109089
  • Fix possibly-undefined group_list in delete helper by @scttcper in #109518
  • Silence possibly-undefined warning in SearchResolver by @scttcper in #109514
  • Add transaction filters to SegmentSpansTable query by @mjq in #109084

Events

  • Don't link to trace explorer when trace id is missing by @mrduncan in #110670
  • Handle Snuba errors in group events endpoint gracefully by @shashjar in #109158

Explore

  • Unify header FeedbackButton size as default sm by @JoshuaKGoldberg in #109782
  • Use unique IDs in drag-and-drop column editors by @nsdeschenes in #108252
  • Require query field on saved query creation and handle malformed queries in frontend by @wedamija in #108285

Explorer

  • Fix issue/event formatters by @aliu39 in #110378
  • Incl project id and slug in issue details response by @aliu39 in #110338
  • Handle missing counts in get_filter_key_values and don't query both backends by @aliu39 in #110172
  • Use sentry org for conversations url and rename slash cmd by @aliu39 in #109592

Form

  • Swap hashchange for useLocation by @natemoo-re in #109570
  • Remove padding & negative margin from HighlightableFlex by @TkDodo in #109304

Github Copilot

  • Lower problem_statement truncation limit by @JoshFerge in #110600
  • Fall back to now() when started_at is missing from API response by @JoshFerge in #110638

Grouping

  • Handle grouphash cache invalidation errors gracefully by @lobsterkatie in #110158
  • Fix "kitchen" time parameterization regex by @lobsterkatie in #109895
  • Stop parameterizing message variable in custom titles by @lobsterkatie in #109893
  • Make derived rules visible to users by @thetruecpaul in #109836
  • Fix ip parameterization false positives by @lobsterkatie in #109713
  • Fix hex parameterization lookahead bug by @lobsterkatie in #109709
  • Resolve mypy possibly-undefined errors in grouphash caching by @scttcper in #109602
  • Avoid mutating class-level initial_context in grouping info endpoint by @joshuarli in #109009
  • Fix UnboundLocalError in _is_race_condition_skipped_event by @mrduncan in #109393

Insights

  • Hide platform selector when platformized insights is active by @DominikB2014 in #110349
  • Handle nullable sentry.normalized_description by @gggritso in #110186
  • EAP support for status breakdown by @mjq in #109969
  • Remove tag summary from EAP Transaction Summary by @mjq in #109970
  • Don't display raw JSON as user message by @obostjancic in #109065

Integrations

  • Reload integrations after installing coding agent by @sehr-m in #110665
  • Cache empty repo 409 responses to reduce GitHub API calls by @trevor-e in #109153
  • Record 409 empty repo responses as halts instead of failures by @trevor-e in #109134
  • Add interaction events for /repos and /installation/repositories by @trevor-e in #108722

Issues

  • Prefer integration app name in resolution copy by @scttcper in #110242
  • Always allow archived issues to be unarchived by @malwilley in #110230
  • Use serialize_generic_user in GroupSeenSerializer by @mrduncan in #108576
  • Fix possibly-undefined variables across issues module by @scttcper in #109540
  • Add transaction to highlight defaults by @scttcper in #109246
  • Remove border from start tour modal by @scttcper in #109220

Logs

  • Allow vertical padding height for 'No logs found' messages by @JoshuaKGoldberg in #110321
  • Pass boolean attributes object to the logs table prop by @nsdeschenes in #110544
  • Simplify CellAction rendering to only be used if needed by @JoshuaKGoldberg in #109946
  • Manual refresh tooltip by @k-fish in #108686

Metrics

  • Enable Save as for multi-aggregate queries by @nsdeschenes in #110325
  • Remove use_metrics_layer from query builder core by @wedamija in #108755
  • Remove use-metrics-layer flag from endpoints and snuba signatures by @wedamija in #108752

Oauth

  • Delay before allowing pressing Approve button by @oioki in #110304
  • Add distributed lock to refresh token exchange to prevent race condition by @wedamija in #108193

Objectstore

  • Use OrganizationReleasePermission for Objectstore endpoint by @lcian in #109865
  • Change scopes type from dict to list of tuples by @lcian in #108693

Occurrences On Eap

  • Fix debug log formatting by @shashjar in #109818
  • Use OP_IN instead of chained ORs for multi-group_id queries by @shashjar in #109148

Onboarding

  • Preserve user-entered project slug during platform selection by @sentry in #109609
  • Fix CopyDsnField markdown + hide copy button with AI setup by @jaydgoss in #109953
  • PHP renaming trace_metrics -> traceMetrics by @constantinius in #109066

Perforce

  • Use P4CONFIG for per-connection trust file isolation by @mujacica in #109828
  • Isolate P4 trust/ticket files per client to prevent lock contention by @mujacica in #109652
  • Use tmp files for the trust locks instead of global paths by @mujacica in #109469

Performance

  • Remap request.method for EAP related issues table by @mjq in #109196
  • Fix EAP transaction summary method filter and duration breakdown chart by @mjq in #108483

Preprod

  • Add size monitors filter support in backend by @chromy in #110523
  • Allow user tokens for ProjectPreprodBuildDistributionLatestEndpoint by @chromy in #110430
  • Include display param in builds API on initial load by @NicoHinderling in #110481
  • Remove UI for adding distribution scopes to personal tokens by @chromy in #110216
  • Mark App Store signed builds as not installable (EME-917) by @runningcode in #110422
  • Strip trailing slash from objectstore base URL by @runningcode in #110409
  • Expose PR comments feature flag to frontend API by @runningcode in #110407
  • Update existing PR comment instead of posting a new one by @runningcode in #110399
  • Skip snapshot artifacts in expiry detection by @NicoHinderling in #110288
  • Prevent diff mode buttons from being cut off on small viewports by @NicoHinderling in #110221
  • Check code signature in is_installable_artifact by @runningcode in #110194
  • Gate comparison download query on SUCCESS state by @NicoHinderling in #109923
  • Restore full token authentication on retention endpoint by @NicoHinderling in #109842
  • Return 404 instead of 500 for missing objectstore images by @NicoHinderling in #109734
  • Use theme-aware border color for treemap level-0 gaps by @mtopo27 in #109517
  • Rename absolute_threshold to absolute in size analysis config by @chromy in #109481
  • Replace transparent treemap colors with opaque composites (EME-889) by @cameroncooke in #109308
  • Update default artifact type and label by @cameroncooke in #109194

Profiling

  • Wrap billing banner inside DescriptionWrapper by @priscilawebdev in #109867
  • Show empty state when no suspect functions found by @mjq in #109295

Replay

  • Fix customElement.define by @billyvg in #110352
  • Fix tooltips on timestamps in replay index by @billyvg in #109691

Seer

  • Reduce the staletime of the SCM tree so it can refresh as integrations change by @ryan953 in #110287
  • Prevent duplicate navigation in Seer settings tabs by @scttcper in #110222
  • Add auth signing to grouping record delete-by-hash requests by @JoshFerge in #110205
  • Set explicit timeouts for AI translate endpoints by @sentry in #109960
  • Update seer_model after training mode request by @yuvmen in #109539
  • Apply stacktrace length filtering to all platforms for V2 grouping model by @yuvmen in #109287
  • Populate missing IssueDetails fields for explorer_index by @sentry in #109213

Settings

  • Remove double url normalization by @natemoo-re in #110160
  • Add team selection modal and navigation support by @TkDodo in #108669

Spans

  • Convert nones to zeros for failure rate and count by @Zylphrex in #110330
  • Use decompressed bytes size for oversized segment check by @lvthanh03 in #109839
  • Detect subprocess crash during startup health check by @lvthanh03 in #109832
  • Route spans to queue by Kafka partition by @lvthanh03 in #109490
  • Handle null span attributes by @lvthanh03 in #109316

Stories

  • Wrap StoryTabPanels in Stack by @natemoo-re in #110657
  • Fix HMR for .stories.tsx and .mdx files in Scraps by @scttcper in #109630

Tests

  • Prerequisite test fixes for xdist parallelization by @mchen-sentry in #110584
  • Use relative date in EAP escalating test frozen time by @NicoHinderling in #110643
  • Fix broken ci by @wedamija in #110484
  • Fix pre-prod eap integration tests by @wedamija in #109852
  • Fix flaky test_cross_trace_query_with_spans_and_logs by @smanes-sentry in #109572
  • Remove hardcoded IDs from tests/sentry to prevent flaky tests by @joshuarli in #109409
  • Use override_settings instead of direct settings mutation by @joshuarli in #109414
  • Add deterministic ordering to all unordered queryset index access by @joshuarli in #109410
  • Use distinct cluster name in buffer fixture to prevent cache pollution by @joshuarli in #109008
  • Fix scope level pollution from span consumer tests by @joshuarli in #109105
  • Combined flaky test fixes by @joshuarli in #109344
  • Fix flaky ProjectUserDetailsTest Snuba data leak by @joshuarli in #108944
  • Fix flaky SessionFetchProjectReleaseHealthTotalsTest timing by @joshuarli in #108959
  • Fix flaky test_api_key_request Snuba data leak by @joshuarli in #109098
  • Fix flaky test_slow_condition_subqueries timing issue by @joshuarli in #108784
  • Use outcomes QueryDefinition in test_outcomes by @noahsmartin in #108790

Trace

  • Prefer standalone span indicators over pageload span indicators by @nsdeschenes in #110297
  • Handle missing groups by @wmak in #109942

Tracemetrics

  • Preserve all visualizes when changing chart type by @nsdeschenes in #110618
  • Hide explicit none types in UI by @narsaynorath in #110443
  • Include conditions for unit:none explicitly by @narsaynorath in #110415
  • Handle unit for "value" column in frontend by @narsaynorath in #110095
  • Fix effective sample rate in dual write by @k-fish in #110104
  • Properly handle duration scaling in alerts by @narsaynorath in #109950
  • Metric select field in alerts should use isLoading by @narsaynorath in #109943
  • Changing to categorical bar chart loses unit value by @narsaynorath in #109899
  • Parse units off response in events request for alerts by @narsaynorath in #109608
  • Allow explicitly defining none in requests by @narsaynorath in #109328

Traces

  • Filter unreleased issue types from trace API by @nora-shap in #110356
  • Hide LLM Detected issues from trace details view by @nora-shap in #109929
  • Switch 'Edit Table' button to use the Edit icon, not Table by @JoshuaKGoldberg in #109780
  • Handle heavily sampled projects by @wmak in #108750

Ui

  • Align upsell modal feature list by @natemoo-re in #110677
  • Move git_pr_number to number tags in explore constants by @runningcode in #110040
  • Change git_pr_number field type from STRING to INTEGER by @runningcode in #110033
  • Align event drawer header with sidebar header and sticky EventNavigation by @TkDodo in #109930
  • Defer scroll restoration by @natemoo-re in #109885
  • Hide LLM Detected issues from trace timeline by @nora-shap in #109857
  • Filter null-tuple unhandled rejections by @scttcper in #109588
  • Improve layout responsiveness for smaller screens by @priscilawebdev in #109173

Workflow Engine

  • Skip workflow processing for inactive projects by @malwilley in #110553
  • Fix Workflow.DoesNotExist issue(s) by @saponifi3d in #110169

Workflows

  • Treat OrganizationWorkflowIndexEndpoint query parse errors as 400s by @kcons in #110434
  • Don't report missing Environment as an error by @kcons in #109958
  • Account for no associated workflow by @kcons in #109509
  • Make update_workflow_action_group_statuses handle missing foreign keys by @kcons in #109149

Other

  • (ai-agents) Remove platform filters by @obostjancic in #110295
  • (ai-monitoring) Fix error icon bg bleed in ai trace span list by @priscilawebdev in #109177
  • (attachments) Skip rate limiting for attachments already in objectstore by @jan-auer in #110035
  • (AutoSaveField) Type inference for mutationOptions by @TkDodo in #110413
  • (avatar) Coerce owner id and avatar name to string before trim by @JonasBa in #110598
  • (broadcasts) Guard against non-array broadcasts value to prevent crash by @JonasBa in #110599
  • (buffer) Allow dicts during buffer encoding by @thetruecpaul in #110024
  • (button) Restore focus ring on transparent LinkButton by @JonasBa in #109735
  • (cells) Fix ByCellName resolver by @lynnagara in #110217
  • (charts) Break infinite render loop in ChartLegend overflow detection by @gggritso in #110480
  • (cleanup) Move partition validation before environment setup by @joshuarli in #108404
  • (code-review) Filter pr_closed webhook when no code review triggers configured by @giovanni-guidini in #109192
  • (coding integrations) Setting branding + loading bug by @sehr-m in #110448
  • (CompactSelect) Adjust scrollbar gutter behavior based on overflow state by @TkDodo in #109653
  • (components) [SearchQueryBuilder] cap FilterWrapper width to 2xl less than parent by @JoshuaKGoldberg in #110334
  • (crons) Try to fix deletion spikes from crons by @wedamija in #109388
  • (cursor) Fall back to /v0/models for API key verification by @JoshFerge in #109297
  • (data-browsing) Allow SQLish to parse some Unicode control characters by @gggritso in #110306
  • (eco) Addresses ApiForbidden errors, IntegrationConfigurationError noise by @GabeVillalobos in #109711
  • (eslint) Use optional chain in restrict-jsx-slot-children rule by @TkDodo in #109557
  • (fixability) Always pass issue summary to fixability endpoint by @Mihir-Mavalankar in #109258
  • (formatting) Run ruff format by @thetruecpaul in #109618
  • (forms) Hash-based scroll + focus by @natemoo-re in #108536
  • (gen-ai) Gracefully handle malformed JSON in AI message parsing by @sentry in #109645
  • (gettingStartedDocs) Update LangGraph example to use StateGraph API by @priscilawebdev in #109551
  • (github) Swallow error when getting back an error response for codeowners file by @Christinarlong in #110233
  • (globalDrawer) Fix horizontal scroll on small screens by @priscilawebdev in #109168
  • (gsAdmin) Handle missing abuse reason in customer stats by @priscilawebdev in #110293
  • (guidedSteps) Reset to first step when currentStep exceeds totalSteps by @jaydgoss in #109501
  • (interfaces) Allow 'self' as context key by @kcons in #106991
  • (issue search) Route non-error issue message search through Snuba instead of truncated Postgres field by @shashjar in #109110
  • (issue-details) Preserve page filters when searching issues by tag value by @yuvmen in #109102
  • (issue-detection) Use LLM-resolved project_id for cross-project issue attribution by @roggenkemper in #109253
  • (issue-timeseries) Allow higher granularities by @wmak in #109827
  • (jira) Update error handling to handle more form errors by @Christinarlong in #109764
  • (metric-issue) Defer chart request until open period has loaded by @malwilley in #109425
  • (metric-issues) Handle 10k data point limit for the metric chart by @malwilley in #109882
  • (migrations) Getsentry clean migration by @hubertdeng123 in #110374
  • (modal) Skip ESC close when event is already handled by child by @TkDodo in #109556
  • (monitors) Remove radius on schedule preview when overlapping panels by @evanpurkhiser in #108673
  • (notifications) Attach occurrence to GroupEvent for test notifications by @mrduncan in #110562
  • (occurrences) Filter None values out of headers by @thetruecpaul in #110355
  • (pageFilters) Expand sentinel selection before unchecking a project by @JonasBa in #110274
  • (processing-errors) Fix missing received value from our processing-error TraceItems by @wedamija in #109851
  • (profiles) Re-enable skipped symbolicator deobfuscation tests by @romtsn in #110379
  • (projectredirect) Increase slug size by @thetruecpaul in #109968
  • (releases) Sort by build number & code in semver when resolving in next release by @srest2021 in #106885
  • (rules) Update escalation condition label to reflect actual behavior by @malwilley in #110328
  • (safe) Handle None query parameter in safe_urlencode by @malwilley in #110367
  • (scm) Rename to apps.py by @cmanallen in #110682
  • (search) Preserve scroll position in multi-select filter combobox by @nsdeschenes in #108526
  • (security) Only include emails in user serialization for the requesting user by @wedamija in #108287
  • (sentry-apps) Handle empty webhook_url in external requests by @sentry in #109529
  • (similar-issues) Deduplicate groups with multiple hashes in similar issues response by @mrduncan in #108513
  • (snuba) Handle direct project.id groupby in top event conditions by @Zylphrex in #109535
  • (span-buffer) Track outcome on produce errors by @evanh in #109944
  • (storybook) Convert missed default imports to named by @JoshuaKGoldberg in #110535
  • (taskbroker) Allow taskbroker_send_tasks to run indefinitely by @evanh in #110573
  • (tempest) Add more metrics, logs and spans for monitoring by @mujacica in #107041
  • (trace-waterfall) Fix duration text overlap in trace waterfall by @nsdeschenes in #108230
  • (traces-explorer) Remove chart-specific restrictions on deletion logic by @JoshuaKGoldberg in #110046
  • (typing) Add missing types to group-merge code by @thetruecpaul in #110229
  • (useScrollLock) Fix document.documentElement locking to not break position: sticky by @TkDodo in #109663
  • (vercel) Adds signature check to vercel delete endpoint by @Christinarlong in #109974
  • (virtualization) Adjust height calculation to include vertical padding for scrollbar consistency by @TkDodo in #109480
  • (webhooks) Eliminate head-of-line blocking in sequential mailbox drain by @tnt-sentry in #110215
  • Only disable SubmitButton while form is in submitting state by @TkDodo in #110192
  • Add dependency on column drop migration by @markstory in #110214
  • Revert "ref(core): button busy state and form SubmitButton UX" by @natemoo-re in #109891

Documentation 📚

Skills

  • Add no-toast guidance for auto-save form fields by @JonasBa in #109483
  • Add setup-dev skill for dev environment setup by @HazAT in #108744

Other

  • (search) Note internal wildcard operators by @nsdeschenes in #110047
  • (sentry-apps) Add sentryAppId to sentry-app-installations API schema by @souredoutlook in #109628
  • New form system by @TkDodo in #109861

Internal Changes 🔧

Aci

  • Add feedback button to metric issue page by @malwilley in #110132
  • Handle prepare_component_fields in WorkflowEngineRuleSerializer by @ceorourke in #109423
  • Replace usage of legacy code to populate conditions data in WorkflowEngineRuleSerializer by @ceorourke in #109541
  • Disable seer on metric issues by @malwilley in #109712
  • Add feature flag for disabling issue stream detector notifications for metric issues by @malwilley in #109245
  • Flip additionalProperties back to False by @ceorourke in #109241
  • Update metric issue threshold copy by @malwilley in #109227
  • Remove sentry_app_identifier from Action by @ceorourke in #109215
  • Add render_label method for sentry apps by @ceorourke in #109123
  • Automatically zoom metric issues to the event's open period by @malwilley in #109212
  • Add render_label for ticketing providers by @ceorourke in #108795

Alerts

  • Refactor DetailedWorkflowEngineDetectorSerializer to remove inheritance by @kcons in #110706
  • Remove unused neglected rule code by @ceorourke in #110363
  • Replace useRouter with specific hooks in ruleDetails by @evanpurkhiser in #110116

Api

  • Remove OrganizationEventsSpansHistogramEndpoint by @cvxluo in #110339
  • Remove ProjectUserStatsEndpoint by @cvxluo in #110342
  • Use logs instead of capture_message by @billyvg in #109794
  • Remove dead code from organization traces API endpoint by @shashjar in #109637

Attachments

  • Skip V2 objectstore delete for EventAttachments during cleanup by @jan-auer in #109776
  • Clean up objectstore rollout options by @jan-auer in #109674
  • Remove objectstore double-write code by @jan-auer in #109671

Auth

  • Replace browserHistory with useNavigate in loginForm by @evanpurkhiser in #110013
  • Replace browserHistory with useNavigate in ssoForm by @evanpurkhiser in #109992
  • Replace browserHistory with useNavigate in registerForm by @evanpurkhiser in #109998

Autofix

  • Split explorer response into sections by @Zylphrex in #110527
  • Use disclosure component for autofix cards by @Zylphrex in #110433
  • Rename autofix artifacts type by @Zylphrex in #110431
  • Refactor seer drawer into shared components by @Zylphrex in #109854
  • Remove seer-slack-workflows-explorer by @Zylphrex in #109871
  • Unify differences between seer drawers by @Zylphrex in #109686
  • Add feature flag for autofix-on-explorer-v2 by @Zylphrex in #109687

Avatar

  • Migrate Gravatar hash to useQuery by @JonasBa in #109784
  • Consolidate Gravatar and ImageAvatar into useImageAvatar hook by @JonasBa in #109544

Billing

  • Bump sentry-protos to >=0.8.3 by @dashed in #109996
  • Bump protos to 0.8.2 by @krithikravi in #109855
  • Remove maxAdminGift frontend limits for gifting by @mrduncan in #109426
  • Reference startDate when filtering active product trials by @brendanhsentry in #108720

Cells

  • Region_silo_test -> cell_silo_test by @lynnagara in #110569
  • RegionSiloClient -> CellSiloClient by @lynnagara in #110579
  • Remove SiloMode.REGION by @lynnagara in #110679
  • Rpc method renaming and deprecation of unused methods by @lynnagara in #110586
  • RegionCacheVersion -> CellCacheVersion by @lynnagara in #110678
  • Rename core hybridcloud models from region -> cell by @lynnagara in #110601
  • Update RegionReplicaService rpc method callers to use cell_name by @lynnagara in #110576
  • Rename RegionOutbox to CellOutbox by @lynnagara in #110609
  • Regional_rpc_method -> cell_rpc_method by @lynnagara in #110610
  • Clean up temporary aliases needed for getsentry by @lynnagara in #110496
  • SiloMode.REGION -> SiloMode.CELL by @lynnagara in #110494
  • Update RegionReplicaService rpc methods to accept cell_name by @lynnagara in #110461
  • Update all org provisioning rpc methods with cell terminology by @lynnagara in #110361
  • More renames of core region methods by @lynnagara in #110487
  • Update more decorator naming by @lynnagara in #110489
  • Rename silo decorators by @lynnagara in #110458
  • Update all sentry-apps module to use cells terminology instead of regions by @lynnagara in #110354
  • Update caller of update_region_user rpc method by @lynnagara in #110357
  • ControlOutbox.region_name -> ControlOutbox.cell_name by @lynnagara in #110344
  • Get_local_region -> get_local_cell by @lynnagara in #110350
  • Remove region_name param from get_organizations_by_user_and_scope by @lynnagara in #110276
  • The subdomain check is now subdomain_is_locality by @lynnagara in #110278
  • WebhookPayload.region_name -> WebhookPayload.cell_name by @lynnagara in #110253
  • Migrate get_organizations_by_user_and_scope to use cell_name by @lynnagara in #110173
  • OrganizationSlugReservationReplica.region_name -> cell_name by @lynnagara in #110220
  • Rename OrganizationSlugReservation.region_name to cell_name by @lynnagara in #110177
  • Remove no-longer-needed shims for getsentry by @lynnagara in #110170
  • Rename region_name to cell_name in OrganizationMapping django model by @lynnagara in #109997
  • Migrate hybrid cloud resolvers from region -> cell by @lynnagara in #110029
  • RegionDirectory.regions -> RegionDirectory.cells by @lynnagara in #110028
  • Update apigateway with region -> cell by @lynnagara in #109989
  • Remove usage of Region.category by @lynnagara in #109840
  • Rename Region -> Cell by @lynnagara in #109918
  • Clarify the SENTRY_MONOLITH_REGION setting by @lynnagara in #109915
  • Remove find_all_region_names() by @lynnagara in #109911
  • Remove get_region_by_name by @lynnagara in #109833
  • Generate_region_url -> generate_locality_url by @lynnagara in #109745
  • More refactors from regions -> cell + locality by @lynnagara in #109622

Ci

  • Add action to update baseline-browser-mapping by @natemoo-re in #110608
  • Add mdx type checking by @natemoo-re in #107776
  • Refactor jest-balance job to use shared setup-node-pnpm step by @ryan953 in #110534
  • Remove repo-level Warden workflow by @gricha in #110134
  • Use shared setup-node-pnpm action in acceptance workflow by @hubertdeng123 in #110022

Code Review

  • Remove github_event from task by @armenzg in #110639
  • Use seer_path and skip request_type by @armenzg in #110416
  • Remove legacy endpoint by @armenzg in #110457
  • Remove unused models by @armenzg in #108546

Coding Integrations

  • Update Claude environment selection with default by @sehr-m in #110662
  • Minor frontend changes by @sehr-m in #110392

Components

  • Convert AvatarCropper from class to function component by @JoshuaKGoldberg in #110098
  • Convert GridEditable from class to function component by @JoshuaKGoldberg in #109347
  • Convert BarChartZoom from class to function component by @JoshuaKGoldberg in #109600
  • Convert StackedAreaChart from class to function component by @JoshuaKGoldberg in #109601

Context Engine

  • Keep 1 kill switch option for all of context engine indexing by @Mihir-Mavalankar in #109226
  • Organize tasks and add scheduling task by @Mihir-Mavalankar in #109156

Core

  • Improve select field types by @TkDodo in #110454
  • Button busy state and form SubmitButton UX by @TkDodo in #109869

Dashboards

  • Updates AI insights pages to use useHasPlatformizedInsights by @edwardgou-sentry in #110572
  • Update ai agents overview dashboard to use equations fro trace_status_rate by @edwardgou-sentry in #110456
  • Remove prebuilt dashboards section from sidebar nav by @DominikB2014 in #110453
  • Remove pre-favorited prebuilt dashboards feature by @DominikB2014 in #110445
  • Rename prebuilt dashboard titles in frontend by @edwardgou-sentry in #110255
  • Add "Details" suffix to non overview AI Dashboards by @edwardgou-sentry in #110257
  • Add create alert option to span based timeseries widgets by @DominikB2014 in #110239
  • Switch EventsSearchBar test to use paste by @scttcper in #110223
  • Change save button text for prebuilt dashboard filters by @DominikB2014 in #110211
  • Use favorited column for favorite status instead of row existence by @DominikB2014 in #110204
  • Remove dashboards-categorical-bar-charts flag declaration by @gggritso in #109897
  • Extract spans confidence footer into reusable component by @nsdeschenes in #109939
  • Replace browserHistory with useNavigate in importDashboardFromFileModal by @evanpurkhiser in #109986
  • Standardize table minH across prebuilt dashboards by @DominikB2014 in #109949
  • Remove dashboards-categorical-bar-charts feature flag from frontend by @gggritso in #109896
  • Remove Widget Viewer manual caching layer by @gggritso in #109689
  • Replace maxFontSize prop with Container height in details widget by @DominikB2014 in #109599
  • Increase Next.js overview table widget heights to match mobile by @DominikB2014 in #109498

Db

  • Add (group_id, action_id, date_added) index on NotificationMessage by @beezz in #109179
  • Remove (group_id, last_seen DESC) index from GroupRelease by @beezz in #109067

Deps

  • Update baseline-browser-mapping by @github-actions in #110672
  • Bump django from 5.2.11 to 5.2.12 by @dependabot in #110406
  • Bump werkzeug from 3.1.5 to 3.1.6 by @dependabot in #110425
  • Bump sqlparse from 0.5.0 to 0.5.4 by @dependabot in #110424
  • Pnpm approve native bindings by @natemoo-re in #110435
  • Bump pillow from 11.0.0 to 12.1.1 by @dependabot in #109657
  • Bump cryptography from 44.0.1 to 46.0.5 by @dependabot in #109655
  • Bump @rspack/cli, @rspack/core, @rspack/plugin-react-refresh by @oioki in #109656
  • Fix GHSA-23c5-xmqv-rm74 vulnerable minimatch in api-docs by @oioki in #109658
  • Fix GHSA-fjxv-7rqg-78g4 vulnerable form-data in api-docs by @oioki in #109654
  • Bump minimatch from 5.1.6 to 5.1.9 in /api-docs by @dependabot in #109536
  • Bump typescript-eslint to 8.56.1 by @JoshuaKGoldberg in #109312
  • Bump objectstore-client to 0.0.18 by @lcian in #109193

Discover

  • Replace browserHistory with useNavigate in landing by @evanpurkhiser in #110010
  • Replace browserHistory with useNavigate in actionDropdown by @evanpurkhiser in #110018
  • Replace browserHistory with useNavigate in eventInputName by @evanpurkhiser in #109979

Eslint

  • Enforce dynamic type-loader imports by @scttcper in #110441
  • No-unnecessary-type-annotation rule by @TkDodo in #109485
  • Bolster restrict-jsx-slot-children's getDisplayName by @JoshuaKGoldberg in #109725

Explore

  • Remove TraceItemAttributeContext provider pattern by @nsdeschenes in #108552
  • Make attribute breakdown components a little more reusable by @malwilley in #109515

Explorer

  • Tool formatter and links for new issue/event tool by @aliu39 in #110234
  • Register baselines rpc for proxy by @aliu39 in #109856
  • Update pr widget labels to use 'PR' language by @aliu39 in #109548
  • Rm unused category params from continue_run by @aliu39 in #109355

Flags

  • Cleanup dead feature-flag-suspect-flags option by @ryan953 in #110335
  • Cleanup dead feature-flag-suspect-flags option by @ryan953 in #110312
  • Remove GA-graduated dynamic-sampling-count-biases flag by @wedamija in #108773
  • Remove 5 GA-graduated data-browsing feature flags (batch 1) by @wedamija in #108769

Gen Ai

  • Remove noisy parse exception captures in AI input by @priscilawebdev in #110400
  • Remove redundant cost alert capture message by @priscilawebdev in #110398

Github

  • Bucket webhooks by event type to reduce head-of-line blocking by @tnt-sentry in #109988
  • Remove mailbox allowlist for drop-unprocessed-events by @armenzg in #109519

Grouping

  • Improve message parameterization metrics by @lobsterkatie in #110612
  • Cache parameterization on context by @lobsterkatie in #110605
  • Remove ContextValue and ContextDict by @lobsterkatie in #110466
  • Change where message variable is parameterized by @lobsterkatie in #110377
  • Convert message parameterizer to singleton by @lobsterkatie in #110384
  • Change custom fingerprint helper to return entire description by @lobsterkatie in #110380
  • Move GroupingContext to new module by @lobsterkatie in #110373
  • Small normalization and parameterization refactors by @lobsterkatie in #110014
  • Add fingerprinting test input for title parameterization by @lobsterkatie in #109886
  • Add git SHA parameterization by @lobsterkatie in #109753
  • Expand hex parameterization to include numbers with 9-15 digits by @lobsterkatie in #109751
  • Remove grouphash cache expiry options by @cvxluo in #109677
  • Expand datetime message parameterization by @lobsterkatie in #109706
  • Clarify and add to xfail parameterization tests by @lobsterkatie in #109693
  • Small parameterization refactor by @lobsterkatie in #109690

Hc

  • Adds skill for outbox development and debugging by @GabeVillalobos in #108626
  • Adds skill for general hybrid cloud testing by @GabeVillalobos in #108622

Insights

  • Replace useRouter with specific hooks in webVitals pageOverview by @evanpurkhiser in #110118
  • Replace useRouter with specific hooks in screenLoadSpansPage by @evanpurkhiser in #110120
  • Replace useRouter with specific hooks in screenSummaryPage by @evanpurkhiser in #110121
  • Remove unused dashboard migration feature flags by @DominikB2014 in #110044
  • Consolidate platformized hooks into useHasPlatformizedInsights by @DominikB2014 in #109967

Issues

  • Remove useHasStreamlinedUI from a few components by @malwilley in #110143
  • Always use streamlined UI by @malwilley in #109685
  • Refactor profile preview section tests by @scttcper in #109362
  • Share first/last release hook + types by @scttcper in #109265
  • Prefetch group.project in update group endpoint by @scttcper in #109152
  • Fix N+1 project queries in bulk_transition_group_to_ongoing by @mrduncan in #108792

Llm Detected Issues

  • Use new llm detected issue type by @shayna-ch in #109144
  • Create new issue type for llm detected issues by @shayna-ch in #109138

Logs

  • Prevent search query builder rerenders on auto-refresh by @nsdeschenes in #110320
  • Fix memoization on log row content by @k-fish in #110310

Models

  • Extract EventErrorType StrEnum from EventError by @wedamija in #109585
  • Delete CodeReviewEvent table [2/3] by @vaind in #109422
  • Pending-delete CodeReviewEvent table [1/3] by @vaind in #109420

Nav

  • Remove navigationParentRef from context by @JonasBa in #110530
  • Move whatsnew outside of its folder by @JonasBa in #110485
  • Move buttonOverlay to components by @JonasBa in #110486
  • Rename Nav to Navigation in navigation directory by @JonasBa in #110359
  • Standardize primary nav footer button sizes by @JonasBa in #110289
  • Redesign primary nav footer with vertical ButtonBar and portal overlays by @JonasBa in #109977

Objectstore

  • Remove objectstore.force-stored-symbolication flag by @jan-auer in #109660
  • Pass through compressed bytes when client accepts encoding by @jan-auer in #109571

Occurrences On Eap

  • Use relative frozen timestamps in tests by @shashjar in #110658
  • Relax reasonable match comparator for is_escalating read path by @shashjar in #109820
  • Create e2e tests for occurrence read paths by @shashjar in #109121
  • Create e2e test infrastructure by @shashjar in #108179

Onboarding

  • Replace useRouter with specific hooks in platformOptionDropdown by @evanpurkhiser in #110108
  • Replace useRouter with specific hooks in platformDocHeader by @evanpurkhiser in #110128
  • Replace inline AI rules with sentry-for-ai skill prompts by @HazAT in #109647
  • Update tanstack start vite plugin to subpath export by @nicohrubec in #107672

Ownership

  • Migrate ownership settings form to AutoSaveField by @JonasBa in #109365
  • Remove some empty patterns from CODEOWNERS by @kcons in #109126

Performance

  • Replace useRouter with specific hooks in durationChart by @evanpurkhiser in #110123
  • Replace browserHistory with useNavigate in trends chart by @evanpurkhiser in #110011
  • Replace browserHistory with useNavigate in eventsTable by @evanpurkhiser in #110008
  • Replace browserHistory with useNavigate in tagExplorer by @evanpurkhiser in #110012
  • Replace browserHistory with useNavigate in tagValueTable by @evanpurkhiser in #110009
  • Replace browserHistory with useNavigate in onboarding by @evanpurkhiser in #110017
  • Replace browserHistory with useNavigate in traceWaterfall by @evanpurkhiser in #109978
  • Replace browserHistory with useNavigate in metricsEnhancedSetting by @evanpurkhiser in #109991
  • Convert TransactionThresholdModal from class to function component by @JoshuaKGoldberg in #109574
  • Convert TransactionThresholdButton from class to function component by @JoshuaKGoldberg in #109567
  • Convert OperationSort from class to function component by @JoshuaKGoldberg in #109331
  • Convert TeamKeyTransactionsManager from class to function component by @JoshuaKGoldberg in #109591
  • Convert Table from class to function component by @JoshuaKGoldberg in #109578
  • Convert TagExplorer from class to functional component by @mjq in #109298

Preprod

  • Sidebar polish by @rbro112 in #110571
  • Delete no longer used buildList component by @NicoHinderling in #110259
  • Replace useRouter with specific hooks in buildDetailsHeaderContent by @evanpurkhiser in #110124
  • Remove duplicated project-scoped endpoints from preprod URLs by @chromy in #109878
  • Remove project query param from artifact URLs by @NicoHinderling in #109877
  • Use shared utils in check-for-updates endpoint by @trevor-e in #109789
  • Remove projectId from URLs where possible by @chromy in #109665
  • Register endpoints on organization as well as project by @chromy in #106435
  • Redesign treemap tooltip to match Figma design (EME-869) by @cameroncooke in #109478
  • Update manifest fields by @rbro112 in #109088
  • Remove unused size analysis issues module by @chromy in #109068
  • Add timing metric around snapshot transaction block by @NicoHinderling in #108242

Profiling

  • Replace useRouter with specific hooks in landingWidgetSelector by @evanpurkhiser in #110125
  • Replace browserHistory with useNavigate in functionTrendsWidget by @evanpurkhiser in #109980
  • Replace browserHistory with useNavigate in flamegraphQueryParamSync by @evanpurkhiser in #109981
  • Replace browserHistory with useNavigate in content by @evanpurkhiser in #109990
  • Replace browserHistory with useNavigate in slowestFunctionsWidget by @evanpurkhiser in #109987
  • Replace browserHistory with useNavigate in profileSummary by @evanpurkhiser in #109982

Relay

  • Update project config snapshot for health-check glob by @oioki in #110408
  • Remove metrics extraction integration test by @phacops in #109613
  • Migrate ingestThroughTrustedRelaysOnly to AutoSaveField by @JonasBa in #108761
  • Add rollout option for eap accepted span outcomes by @tobias-wilfert in #109078

Releases

  • Replace useRouter with specific hooks in releases detail overview by @evanpurkhiser in #110129
  • Replace browserHistory with useNavigate in releases overview by @evanpurkhiser in #109983
  • Replace browserHistory with useNavigate in preprodBuilds by @evanpurkhiser in #109984

Replays

  • Remove granular-replay-permissions flag registration by @priscilawebdev in #110397
  • Clean up granular-replay-permissions feature flag (backend) by @priscilawebdev in #110036
  • Clean up granular-replay-permissions flag (frontend) by @priscilawebdev in #110037
  • Migrate projectReplays settings to AutoSaveField by @JonasBa in #109364
  • Migrate replay network/errors virtualization to tanstack virtual by @scttcper in #108190

Repos

  • Refactor Settings > Seer > Repos to use virtual rendering by @ryan953 in #108798
  • Refactor useOrganizationRepositoriesWithSettings to use apiOptions & useInfiniteQuery by @ryan953 in #108295

Seer

  • Remove unused SeerOrganizationSettings model and mark table for pending deletion by @srest2021 in #110656
  • Add random 50% rollout for context engine in start_run by @Mihir-Mavalankar in #110574
  • Trim whitespace from ASCII snapshot to reduce token usage by @Mihir-Mavalankar in #110273
  • Rename useAgentHooks to seerAgentHooks by @ryan953 in #110188
  • Propagate viewer_context to background tasks and utilities by @azulus in #109724
  • Propagate viewer_context to Seer endpoint call sites by @azulus in #109723
  • Propagate viewer_context to autofix Seer call sites by @azulus in #109722
  • Propagate viewer_context to LLM detection and event manager by @azulus in #109721
  • Propagate viewer_context to code review Seer call sites by @azulus in #109717
  • Propagate viewer_context to explorer Seer call sites by @azulus in #109716
  • Propagate viewer_context to feedback Seer call sites by @azulus in #109714
  • Propagate viewer_context to anomaly detection Seer call sites by @azulus in #109720
  • Propagate viewer_context to breakpoints Seer call sites by @azulus in #109718
  • Propagate viewer_context to similarity Seer call sites by @azulus in #109719
  • Propagate viewer_context to replays Seer call sites by @azulus in #109715
  • Add viewer_context passthrough to all Seer API wrappers by @azulus in #109697
  • Add typed wrappers for remaining Seer API callsites by @azulus in #109607
  • Add typed wrappers for Seer API callsites by @azulus in #109589
  • Batch size modifiable and retry on rate limit by @shruthilayaj in #109568
  • Extract typed severity score request function by @azulus in #109507
  • Refactor explorer service map query and instrumentation by @shruthilayaj in #109322
  • Refactor useCodingAgentIntegrations to be based on apiOptions instead by @ryan953 in #109290
  • Migrate remaining seer calls to urllib3 connection pools by @azulus in #109263
  • Migrate seer endpoints to urllib3 connection pools by @azulus in #109254
  • Migrate explorer to urllib3 connection pools by @azulus in #109224
  • Migrate autofix and summarization to make_signed_seer_api_request by @azulus in #109205
  • Remove unused allowBackgroundAgentDelegation org option - be by @ryan953 in #109083

This changelog has been truncated. See the full changelog for all changes.

Source: README.md, updated 2026-03-15