26.8.0
Added 15
- Support NOT IN for querying detectors
- Insert every_event condition when editing alerts with no when conditions
- Add every_event data condition for alert triggers
- Add frontend changes for every_event data condition
- Add cancel button to new alert page
- Add button to leave alert edit window
- Add dedicated outbox table for action log
- Tag action log publish metrics with whether we write to db
- Add agent conversation API URLs
- Collapse tool column when a page has no tools
- Detect and fence unescaped HTML and JSON in AI content
- Add size and time totals to collapsed tool calls
- Add area chart type to conversations chart
- Add collapse, alert, and dashboard actions to conversations chart
- Display thinking in span details output tab
Changed 5
- Rename alert option for regression events
- Add hover background to tool call rows
- Restyle timeline row titles for readability
- Render json code blocks as an interactive tree
- Collapse only custom tags and show their raw label
New Features ✨
Aci
- Support NOT IN for querying detectors by @RudraPatel2003 in #121786
- Insert every_event condition when editing alerts with no "when" conditions by @RudraPatel2003 in #121463
- Add every_event data condition for alert triggers by @RudraPatel2003 in #121100
- Add frontend changes for "every_event" data condition by @RudraPatel2003 in #121099
- Add cancel button to new alert page by @RudraPatel2003 in #121104
- Rename alert option for regression events by @RudraPatel2003 in #120940
- Add button to leave alert edit window by @RudraPatel2003 in #121010
Action Log
- Add dedicated outbox table by @cvxluo in #121881
- Tag action log publish metrics with whether we write to db by @kcons in #121327
Agent Monitoring
- Add agent conversation API URLs by @vgrozdanic in #121516
- Add hover background to tool call rows by @ArthurKnaus in #121445
- Restyle timeline row titles for readability by @ArthurKnaus in #121451
- Collapse tool column when a page has no tools by @ArthurKnaus in #121294
- Detect and fence unescaped HTML and JSON in AI content by @ArthurKnaus in #121158
- Render json code blocks as an interactive tree by @ArthurKnaus in #121152
- Collapse only custom tags and show their raw label by @ArthurKnaus in #121150
- Add size and time totals to collapsed tool calls by @ArthurKnaus in #120962
- Add area chart type to conversations chart by @ArthurKnaus in #120956
- Add collapse, alert, and dashboard actions to conversations chart by @ArthurKnaus in #120899
- Display thinking in span details output tab by @ArthurKnaus in #120896
- Add Cloudflare deployment target to agent onboarding by @ArthurKnaus in #120885
Ai Monitoring
- Restore scroll state and scroll to selected span by @ArthurKnaus in #120892
- Show conversation title on the details page by @ArthurKnaus in #120889
- Return conversation title behind apiVersion=2 by @vgrozdanic in #120746
- Gradual rollout for conversation title generation by @vgrozdanic in #120798
Api
- Add response schema to events validate endpoint by @skaasten in #121357
- Add response schema to organization traces endpoint by @skaasten in #121334
- Add response schema to trace item attribute values endpoint by @skaasten in #121332
- Add response schema to trace metrics endpoint by @skaasten in #121328
- Add response schema to organization tag values endpoint by @skaasten in #121319
Assisted Query
- Forward flag options from the search-agent start endpoint by @aliu39 in #121884
- Forward feature flags to Seer as request options by @aliu39 in #121784
Attachments
- Redirect Objectstore-backed attachment downloads to Objectstore by @jan-auer in #120958
- Store the filename with Objectstore attachment uploads by @jan-auer in #120964
Auth
- Add flag-gated email verification for SSO signups by @nora-shap in #121808
- Report a trustworthy email_verified for GitHub SSO by @nora-shap in #121274
Autofix
- Tell the agent to set the repo up before running checks by @chromy in #122093
- Add flagged steering to Autofix to run checks by @chromy in #122033
- Encourage autofix to use bash when available. by @chromy in #121717
- Slow PR-watch polling in the autofix drawer by @joseph-sentry in #121655
- Add section retry controls by @malwilley in #121267
- Guard re-run against runs with a PR or coding agent by @NicoHinderling in #121133
- Emit autofix fixability assessment by @Zylphrex in #120845
Conversations
- Show embeddings in the conversation transcript by @ArthurKnaus in #121613
- Expand user_message XML tags by default by @matejminar in #121701
- Return gen_ai.embeddings.input for AI conversation spans by @ArthurKnaus in #121603
- Track AI prompt copy with shared onboarding analytics by @sentry-junior in #120920
- Add error fire icon to conversation summary by @ArthurKnaus in #120960
- Add project badge tooltip and fix pagination spacing by @ArthurKnaus in #120797
- Add redesigned conversations table behind flag by @ArthurKnaus in #120791
- Return generation duration and primary project by @ArthurKnaus in #120790
Dashboards
- Move header actions into breadcrumb menu by @priscilawebdev in #121282
- Adjust dashboards columns by @adrianviquez in #120648
Data Browsing
- Add optimistic sort to dashboard table by @adrianviquez in #120840
- Adding backend id for deterministic sorting by @adrianviquez in #120812
Difs
- Assemble exclusive Objectstore DIFs from blobs by @lcian in #121065
- Add Objectstore-only DIF creation by @lcian in #120183
- Compress Objectstore-backed Debug Files with zstd by @lcian in #121308
- Add Objectstore migration tasks by @lcian in #120653
Dynamic Sampling
- Add recalibration logic to the new per-org pipeline by @shellmayr in #115786
- Add per-transaction volume debug logging by @shellmayr in #120795
Explore
- Validate aggregate spans table sorts by @nsdeschenes in #121453
- Support array membership filters via [*] operator by @manessaraj in #121721
- Support array attributes in the spans search query builder by @manessaraj in #121614
- Add numeric attribute tree filter actions for logs and metrics by @nsdeschenes in #121326
- Support array attributes in trace item attributes endpoint by @manessaraj in #121184
- Add explore-conditional-aggregates feature flag by @wmak in #120990
- Serve custom attribute context from postgres by @DominikB2014 in #120994
Feedback
- Replace trace timeline with trace preview by @scttcper in #121265
- Make transparent variant the default by @priscilawebdev in #121277
Gal
- Enroll eligible projects for backfill by @yuvmen in #121780
- Add coordinator task for full backfill across all projects by @yuvmen in #119863
Gdd
- When invalidating, ensure an invalidated GDD row exists by @kcons in #121398
- Report incremental derived data processing latency by @kcons in #121030
Hybridcloud
- Tag webhook delivery time with the mailbox event type by @vaind in #122026
- Tag delivery outcomes and latency with their dispatcher and mode by @vaind in #121982
- Attribute drain dispatches to push trigger vs scheduler by @vaind in #121882
- Tag webhook delivery time by provider by @vaind in #121636
- Tag webhook delivery metrics by provider by @vaind in #121609
- Tag webhook backlog depth by event type by @vaind in #121601
- Emit webhook mailbox depth and oldest-pending-age metrics by @vaind in #121506
Inbound Filters
- Show per-filter stats in inbound-filters-v2 by @shellmayr in #121837
- Make new inbound filter UX clearer by @shellmayr in #120180
- Split up error type and error message into separate filter conditions by @shellmayr in #121285
- Generate Relay rules from custom inbound filters by @shellmayr in #119816
Inbox
- Add empty state by @scttcper in #122078
- Add counts to assignment tabs by @malwilley in #122075
- Add Seer empty states to assigned issue previews by @scttcper in #121903
- Show secondary autofix actions by @malwilley in #121999
- Adjust inbox preview PR section formatting by @malwilley in #121880
- Show suggested assignees in list by @malwilley in #121729
- Show pull request badges on issue cards by @roggenkemper in #121321
- Add copy markdown button to autofix sections by @malwilley in #121394
- Auto-select first issue by @roggenkemper in #121166
- Add "Identified" and "Fix applied" sections to the inbox by @malwilley in #121188
- Make pane divider resizable by @roggenkemper in #121192
- Show last progress transition time by @malwilley in #121105
- Sticky section headers by @malwilley in #121016
- Summarize Autofix results in issue previews by @malwilley in #120869
Investigations
- Add query-backed detail bootstrap by @arslnb in #122071
- Add breached metric investigation APIs by @wedamija in #122073
- Add block execution APIs by @arslnb in #121696
- Add Explore list entrypoint by @arslnb in #122024
- Add agent execution engine [9/1/13] by @arslnb in #121410
- Add investigations to the deletions framework by @wedamija in #121553
- Add execution persistence [8/13] by @arslnb in #121409
- Add parameter APIs [7/13] by @arslnb in #121407
- Add favorite and duplicate endpoints by @wedamija in #121683
- Add block graph APIs [6/13] by @arslnb in #121406
- Add collection APIs [5/13] by @arslnb in #121405
- Add lifecycle services [4/13] by @arslnb in #121404
- Add response serializers by @wedamija in #121576
- Add the investigation template registry [3/13] by @arslnb in #121403
- Add validators and contracts by @wedamija in #121573
- Add block schema [2.5/14] by @arslnb in #121559
- Register feature flag [2/13] by @arslnb in #121402
- Add investigation schema [1/13] by @arslnb in #121401
Issue Inbox
- Better CTAs for open and closed pull requests by @malwilley in #121974
- Link issue title by @malwilley in #121871
- Add new flags for two-step inbox rollout by @malwilley in #121812
- Add coding agent handoff to issue preview by @malwilley in #121391
- Improve the linked pull request component when there is more room by @malwilley in #121570
- Add interaction analytics by @malwilley in #121538
Issue Progress
- Merged PRs should transition issue to fix applied by @malwilley in #121078
- Add backfill task for new PR lifecycle log types by @malwilley in #120750
Issues
- Add consistency checks for derived issue data by @kcons in #121502
- Use new mention composer in sidebar by @scttcper in #121988
- Add mention input feature flag by @scttcper in #121979
- New mention input, replace react-mentions by @scttcper in #121584
- Expose activity sources (mcp) by @scttcper in #121814
- Show delegated PR agent attribution by @scttcper in #121690
- Expose delegated PR attribution agent by @scttcper in #121689
- Collapse repetitive issue activity by @scttcper in #121488
- Highlight comment count, add api call if needed by @scttcper in #121361
- Register activity rollup flag by @scttcper in #121489
- Add profiler.id FieldKey for continuous profile search by @markushi in #120811
- Add option to filter for events with profiler.id context set by @markushi in #120808
- Show linked issues in trace preview by @scttcper in #121213
- Add copy to clipboard button for http requests by @RudraPatel2003 in #121227
- Recommended event attempts to verify replay's existence by @adrianviquez in #120967
- Render PR review status badge by @cvxluo in #121118
- Render PR checks status badge by @cvxluo in #121107
- Show Seer avatar for created pull requests by @scttcper in #121015
- Fetch PR review status from the provider by @cvxluo in #121069
- Fetch PR checks status from the provider by @cvxluo in #120903
- Add metrics for missing replays by @adrianviquez in #120968
- Adjusts replay error message in issue details page by @adrianviquez in #120916
- Collapse Seer activity phases by @scttcper in #120860
- Log external issues created by alert rules by @cvxluo in #120901
- Split search.group_index referrer by UI vs API by @mrduncan in #120404
- Mark the issue inbox nav entry as experimental by @cvxluo in #120788
- Show PR iteration sources in issue activity by @scttcper in #120701
- Attribute PR iterations from GitHub to users by @scttcper in #120699
- Attribute PR iterations from web ui to users by @scttcper in #120698
- Record PR iteration sources in issue activity by @scttcper in #120695
Onboarding
- Store agentic setup progress by @evanpurkhiser in #121913
- Model agentic setup progress by @evanpurkhiser in #121912
- Expand manual setup overview by @evanpurkhiser in #121649
- Add agentic setup interstitial to the welcome step by @evanpurkhiser in #121363
- Report project creation failures identically across both flows by @jaydgoss in #121533
- Track create attempts and failures on the legacy project flow by @jaydgoss in #121531
- Revalidate restored SCM messaging destinations by @jaydgoss in #121187
- Add SCM messaging treatment route by @jaydgoss in #120992
- Add flag for the agentic setup interstitial by @evanpurkhiser in #121364
- Register onboarding-scm-messaging-experiment flag by @jaydgoss in #120981
Pr Metrics
- Resolve reported repos by external id by @vaind in #121709
- Emit ordered per-head CI results on scm.pr.closed by @joseph-sentry in #121310
- Add options for the PR lifecycle state backfill by @cvxluo in #121014
- Dedupe scm.pr.closed across a shared multi-org repo by @vaind in #120562
Preprod
- Include manifest in snapshot archives by @jamieQ in #121735
- Log snapshot manifest payload size by @jamieQ in #121684
- Block size analysis uploads for single-tenant by @NicoHinderling in #121340
- Show image hash in snapshot metadata tooltip by @NicoHinderling in #121191
- Add install groups to EAP items by @jamieQ in #121019
- Show install groups in distribution table by @jamieQ in #121054
- Add install group search to mobile builds by @jamieQ in #120765
- Add install group artifact search by @jamieQ in #120764
Replays
- Add a script to expire Replay deletion jobs by @gggritso in #121669
- Let the deletion script select which steps it runs by @gggritso in #121501
- Add metrics tracking for bulk delete job by @jameskeane in #121232
Scraps
- Add a shared Table shell with a ColumnResizer by @JoshuaKGoldberg in #121178
- Add Chip component by @natemoo-re in #121345
- Responsive dimensions for image component by @TkDodo in #121708
- Add empty state component by @natemoo-re in #119277
Search
- Show Seer query status icon by @nsdeschenes in #120973
- Middle-ellipsis filter values in the query builder by @wmak in #120849
- Add Ask Seer error retry actions by @nsdeschenes in #120198
- Move Ask Seer feedback into results footer by @nsdeschenes in #120360
Seer
- Make Autofix overview enrichment opt-in via expand by @NicoHinderling in #122105
- Allow free Autofix project settings access by @trevor-e in #122081
- Expose free Autofix access by @trevor-e in #122077
- Link Seer settings in automated-run PR descriptions by @trevor-e in #122045
- Build every Code Mode link from one rule table by @azulus in #121898
- Tool formatters for bash mode tools by @Zylphrex in #121855
- Bypass quota and repo checks in /autofix/setup/ for free cohort orgs by @Mihir-Mavalankar in #121848
- Accept page location and timezone-aware send times by @azulus in #121757
- Enrich Autofix overview pull requests with SCM status by @NicoHinderling in #121748
- Add Autofix overview endpoint by @NicoHinderling in #121747
- Fall back to ProjectRepository for free cohort repo defin… by @Mihir-Mavalankar in #121675
- Add free cohort eligibility path for night shift and autofix by @Mihir-Mavalankar in #121657
- Persist code change diffs in milestone extras by @NicoHinderling in #121627
- Score non-top predictions properly, score team/shared-team differently by @hobzcalvin in #121393
- Enable Code Mode as the only tool surface for flagged orgs by @azulus in #121585
- Name the reason an agent token is rejected by @azulus in #121583
- Add ThinkingBlock with outline Disclosure by @natemoo-re in #121329
- Add in-chat write approval UI by @gricha in #121459
- Persist artifact data on run milestones by @NicoHinderling in #121362
- Track when all run pull requests are merged by @NicoHinderling in #121136
- Record run milestones from Seer run state by @NicoHinderling in #121111
- Route root-cause autofix through the RCA feature by @rbro112 in #120100
- Add autofix RCA feature by @rbro112 in #120099
- Record ground truth from any triggering activity, not just ASSIGNED by @hobzcalvin in #121375
- Register seer-agent-autofix flag for the autofix embed by @ryan953 in #120354
- Read Explorer todos and artifacts from tool results too by @azulus in #121248
- Render chart markdown embeds by @gricha in #120969
- Route reviewer-less Seer PRs via fallback candidate sources by @vaind in #120202
- Add feature flag for pr content verification by @Zylphrex in #121169
- Return custom attribute context from get_attribute_names by @DominikB2014 in #121001
- Add principal-aware agent token minting by @gricha in #121040
- Add SeerRunMilestone table by @NicoHinderling in #121093
- Carry structuredContent on the ToolResult client model by @azulus in #120569
- Render tool links from the structuredContent links bus by @azulus in #120570
- Add issue embed by @natemoo-re in #120260
- Add user embed widget by @natemoo-re in #120830
- Add dsn embed widget by @natemoo-re in #120829
- Run-anchored notify_seer_pr_created RPC for PR attribution (CW-1719) by @vaind in #120583
Seer Billing
- Remove OrganizationContributors integration id column by @srest2021 in #121011
- Mark OrganizationContributors integration id as pending deletion by @srest2021 in #120980
Seerexplorer
- Deep-link telemetry_live_search call rows by @sentry-junior in #122017
- Surface residual Explore links and span deep-links by @sentry-junior in #121997
- Report page location and timezone-aware send times by @azulus in #121758
Slack
- Add logging for Slack webhook retries and slow responses by @alexsohn1126 in #120929
- Add metric for Slack webhook response time by @alexsohn1126 in #120819
Smart Assignment
- Simple solution to GA Smart Assignment for all Seer customers by @hobzcalvin in #122013
- Increase daily caps, sample non-Seer triggers at 10% by @hobzcalvin in #121680
Workflow Engine
- Hook into organization creation signals by @leeandher in #121471
- Allow for creating all-project workflows by @leeandher in #120938
- Allow the all projects detector to be returned/added via API by @leeandher in #120927
- Extend issue stream detector to support all projects by @leeandher in #120908
Other
- (admin) Improve admin search dropdowns by @scttcper in #121498
- (auto_ongoing_issue) Smooth issue transition load by @kcons in #121691
- (billing) Wire trace-metric retention to the byte category by @dashed in #120542
- (billing-platform) Query usage by projects by @brendanhsentry in #121859
- (coding-agents) Record the PR number on coding-agent results by @cvxluo in #120909
- (derived data) Add README/AGENTS docs by @kcons in #122015
- (discover) Put migration warning for discover split by @nikkikapadia in #121353
- (events) Soft block external legacy events API usage by @mjq in #120854
- (icon) Add IconCopyId and use it for ID copy buttons by @natemoo-re in #120907
- (issue-details) Surface Seer assignee suggestions by @hobzcalvin in #121251
- (issue-preview) Show root cause evidence by @roggenkemper in #121250
- (issue-workflow) Register Seer action log rollout by @cvxluo in #121546
- (link) Add tracking props to links by @TkDodo in #120307
- (metrics) Add support in the data export processor by @JoshuaKGoldberg in #121566
- (nav) Command Palette and Agent Sidebar trigger are competing for attention by @priscilawebdev in #121044
- (post-process) Generic killswitch for pipeline steps by @untitaker in #121428
- (pr-iteration) Resolve all review comment threads after iteration by @alexsohn1126 in #120589
- (projects) Migrate filter debouncing to Pacer by @scttcper in #121800
- (reports) Add PR links to past resolved issues by @shashjar in #121667
- (sdk) Enable 'drop-error-if-contains-third-party-frames' by @JoshuaKGoldberg in #121966
- (seer-infra-telemetry) Implement per-customer SA generation & deletion for GCP integrations by @shashjar in #120266
- (sentry-apps) Collapse the permissions panel in creation templates by @cvxluo in #121640
- (snuba) Complete and remove option rollout for response compress… by @tryangul in #120711
- (stories) Add resizable demo with breakpoint ruler by @natemoo-re in #120568
- (taskworkers) Add batch prevalidation to CursoredScheduler by @shellmayr in #121515
- (trace) Include event data in trace item details API by @mjq in #121461
- (traces) Show errors inline in Logs tab by @JoshuaKGoldberg in #118867
- (ui) Upgrade TanStack Pacer devtools, recent search saving by @scttcper in #121325
- (variables) Merge symbolicated frame variables into the event by @Dav1dde in #121457
- Register agentic-triage-free-cohort-killswitch FlagPole flag by @Mihir-Mavalankar in #121630
- Add leading icon to TextCopyInput by @evanpurkhiser in #121560
- Pass variable extraction flag to Symbolicator by @szokeasaurusrex in #120882
- Register variable extraction feature flag by @szokeasaurusrex in #120881
- Refresh tracing empty state to include AI setup and updated copy by @bcoe in #120826
Bug Fixes 🐛
Admin
- Hide enterprise trial for non-free plans by @ndmanvar in #121783
- Change help text to specify that it will enable business and not impa… by @ndmanvar in #121662
Agent Monitoring
- Reserve tool tag height in conversation header by @ArthurKnaus in #121293
- Keep tool-error select outline purple in transcript by @ArthurKnaus in #120959
- Show only model in agent span timeline secondary by @ArthurKnaus in #120894
Alerts
- Send release environment name, not id, and update API docs by @hobzcalvin in #122074
- Serialize targetless workflow actions by @cvxluo in #121986
- Don't use legacy Rule name in issue alert notifs by @leeandher in #121960
- Format failure rate notifications by @sentry-junior in #119878
Autofix
- Limit PR iteration to GitHub, excluding GitHub Enterprise by @joseph-sentry in #121870
- Attribute PR commits to the acting user by @alexsohn1126 in #121360
- Align automatic run access gates by @trevor-e in #120610
- Prevent duplicate auto-triggered runs by @scttcper in #120993
Charts
- Rename LineSeries factory to lowercase for React Compiler by @sentry in #121927
- Stabilize ChartComponent reference in EventsChart by @sentry in #120037
- Prevent chart zoom handler invoked on propagated synced zoom actions by @edwardgou-sentry in #121723
Coding Conventions
- Address no-capitalized-function-calls in viewHierarchy utils by @sentry in #121921
- Rename capitalized 'Legend' function to 'legend' by @sentry in #121928
- Rename Tree.FromAssertion to Tree.fromAssertion by @sentry in #121920
- Rename ToolBox to getToolBox in charts components by @sentry in #121926
- Refactor InlineEventAttachment for React Compiler by @sentry in #120032
- Resolve static-component-definitions in SentryApplicationDetails by @sentry in #121127
- Wrap open/closeDropdown with useCallback by @sentry in #121125
- Resolve valid-use-memo in searchBar.tsx by @sentry in #121090
Conversations
- Ensure that conversation timeline nesting/ordering agrees with trace view by @shellmayr in #121829
- Interleave transcript thinking and tool calls by @ArthurKnaus in #121712
- Open conversation in new tab on cmd/ctrl+click by @ArthurKnaus in #121487
- Keep user icon from shrinking by @ArthurKnaus in #120809
- AI chat table is cut off and not scrollable by @priscilawebdev in #120732
Dashboards
- Fix layout issues in dashboard page for mobile screen sizes by @edwardgou-sentry in #121883
- Guard time series tooltip against stale replayed params by @JoshuaKGoldberg in #121782
- Guard against undefined seriesNameString in widget legend decoding by @sentry in #121123
- Heat maps in widget builder causing maximum depth error by @nikkikapadia in #120937
- Reject saving non-text widgets with no dataset by @gggritso in #121776
- Memoize unstable references to heat map data in widgets by @edwardgou-sentry in #121753
- Omit parens from Open in Issues query for filtered widgets by @edwardgou-sentry in #121635
- Refresh sidebar title after rename by @priscilawebdev in #121610
- Use default query client instead of context api for events query by @nikkikapadia in #121558
- Handle discover split datasets with null widget type by @nikkikapadia in #121548
- Adhere to pure-render-functions in useTimeRangeWarning by @sentry in #121241
- Keep custom date ranges beyond 90 days by @DominikB2014 in #120974
- Guard against null environment in saved page filters by @TkDodo in #121066
- Improve Y-axis when fitting Y-axis range to data by @gggritso in #120936
- Disambiguate Dashboard widget error and loading states by @gggritso in #120855
Derived Data
- More frequent periodic healing by @kcons in #122009
- Modernize the behavior of invalidate_group_derived_data by @kcons in #121205
Discover
- Stop fetching custom measurements metadata by @phacops in #122021
- Put in discover dataset for null widget types during split by @nikkikapadia in #121468
- Prevent TypeError when decoding null fields from URL by @sentry in #121035
Dynamic Sampling
- Recalibrate per-org from span outcomes & EAP by @shellmayr in #121518
- Add expire to per-org tasks by @shellmayr in #121437
- Count the transactions of every root project by @shellmayr in #120957
Eap
- Keep EAP queries inside the full-fidelity retention window by @phacops in #120872
- Stop
has:traceerroring on UUID-backed attributes by @JoshuaKGoldberg in #120856
Explore
- Wrap highlighted JSON attributes by @nsdeschenes in #122079
- Adhere to pure-render-functions in useLogsAutoRefreshInterval by @sentry in #121236
- Skip empty group by sample filters by @nsdeschenes in #121755
- Validate log group by selections by @nsdeschenes in #121522
- Validate metric group by selections by @nsdeschenes in #121466
- Drop pending last_received columns from attribute tables by @NicoHinderling in #121209
- Adhere to pure-render-functions in useReleaseBubbles by @sentry in #121243
- Adhere to pure-render-functions convention in useLogsQuery by @sentry in #121233
- Segment.name or segment_name by @k-fish in #121210
- Block transactions from Explore > Errors by @mjq in #120922
- Gate alert creation dropdown option behind metric alerts access by @JoshuaKGoldberg in #120450
- Show user log attributes that collide with reserved names in Edit Table by @JoshuaKGoldberg in #120374
- Expose user log attributes that collide with reserved aliases by @JoshuaKGoldberg in #120373
Forms
- Normalize API error objects to strings in model.tsx by @sentry in #119985
- Make :project specific fields searchable by @TkDodo in #121048
- Wrap AutoFixAgent in formSearch by @TkDodo in #121047
- Show schema-only field errors on submit by @priscilawebdev in #120875
Frontend
- Allow project creation without team-roles by @sentry-junior in #121797
- Correct useMemo dependencies in CategoricalSeriesWidget by @sentry in #121092
Gal
- Enroll projects using write feature by @yuvmen in #122003
- Attribute PR lifecycle activities on GHE by @cvxluo in #121734
Gdd
- Require that aggregator scope is a superset of their feature dependencies by @kcons in #121499
- More efficient heal_stale_derived_data by @kcons in #121346
- Use generate_project_derived_data in backfill by @kcons in #121392
Hybridcloud
- Size the lease drain lock against a single delivery by @vaind in #121843
- Dispatch push-triggered drains via batch claims by @vaind in #121221
- Stop counting rejected webhooks as successful deliveries by @vaind in #121606
- Skip the backlog estimate gauge instead of emitting zero by @vaind in #121521
Inbox
- Improved autofix in-progress busy states by @malwilley in #122100
- Expand populated sections by default by @scttcper in #122097
- Show group owners in issue preview assignee selector by @malwilley in #121738
- Cancel pending preview prefetches by @scttcper in #121792
- Scope issue queries to "my projects" instead of "all projects" by @malwilley in #121741
- Make open issue details button more visible by @malwilley in #121730
- Hide view without Autofix access by @roggenkemper in #121230
- Add spacing before autofix summaries by @roggenkemper in #121526
- Keep load more below sticky headers by @roggenkemper in #121370
- Exclude unsupported issue types by @roggenkemper in #121231
- Rename create PR action by @roggenkemper in #121322
- Remove progress badge from issue preview by @roggenkemper in #121317
- Expand the topmost autofix summary section by default by @malwilley in #121004
Insights
- Make web vitals drawer body the scroll container by @sentry-junior in #121852
- Fix valid-use-memo in TransactionNameSearchBar by @sentry in #121218
Integrations
- Improve configuration navigation by @priscilawebdev in #121706
- Fetch paginated user mappings by @lcian in #121225
Issue Details
- Handle null evaluated value in metric detector section by @JoshuaKGoldberg in #122068
- Only show pull request tooltip in compact view by @malwilley in #121975
- Remove linked pull request checks and review status by @malwilley in #121484
Issue Detection
- Handle NoneType request in query injection detector by @sentry in #121512
- Handle NoneType for event.request in SQLInjectionDetector by @sentry in #121323
Issue Preview
- Remove gaps between file diffs by @roggenkemper in #121167
- Collapse file diffs by default by @roggenkemper in #121168
Issue Stream
- Remove progress sort option by @malwilley in #121686
- Wait to hide actions until the the screen is as the small breakpoint by @malwilley in #120988
Issues
- Preserve Seer setup analytics keys by @scttcper in #122065
- Keep mention navigation inside dropdown by @scttcper in #122002
- Silence warning from analytics effect by @scttcper in #121864
- Show Sentry Apps as activity sources by @scttcper in #121809
- Cancel pending stream prefetches by @scttcper in #121798
- Display user avatars in assignment activity by @scttcper in #121685
- Hide legacy Autofix issue view by @malwilley in #121658
- Derive activity timeline connectors from layout by @scttcper in #121578
- Standardize vertical alignment of the "Jump to:" label by @JoshuaKGoldberg in #121532
- Handle
has:traceon error events by @scttcper in #121271 - Include suggested issues in inbox by @malwilley in #121480
- Remove alerts secondary nav item by @malwilley in #121474
- Paginate project derived data generation by @cvxluo in #121269
- Attribute ingest-side regressions in the group action log by @cvxluo in #121355
- Attribute attachment deletions in the group action log by @cvxluo in #121272
- Hide Diagnosed inbox section without Seer by @roggenkemper in #121077
- Scope trace-connected related issues to accessible projects by @cvxluo in #121129
- Remove hidden custom event tab by @scttcper in #121097
- Normalize the PR label in the issue stream by @cvxluo in #120917
- Require authenticated user for group search view visit by @sentry-junior in #120982
- Show linked PRs without a current event by @scttcper in #121012
- Close assignee menu before invite modal by @scttcper in #121006
- Query
errorsdataset for timeline by @mjq in #120933 - Deduplicate derived data issue details by @scttcper in #120866
- Deduplicate group type visibility checks by @scttcper in #120691
- Refresh activity after triggering Autofix by @scttcper in #120838
- Stop inventing a date range in the issue count endpoint by @cvxluo in #120827
- Use since first seen for more issue types by @scttcper in #120821
- Use provider from PR state by @scttcper in #120787
Jira
- Add pagination to Jira project status getting by @Christinarlong in #121743
- Catch apierror and display the project mappings anyway by @Christinarlong in #121478
Migrations
- Fix broken migration dependency by @wedamija in #121369
- Remove orphaned pre-squash migration files by @NicoHinderling in #121207
- Ignore SET COMPRESSION in schema drift compare by @NicoHinderling in #121206
Monitors
- Render the timeline cursor label above list rows by @JoshuaKGoldberg in #121989
- Fix layout issues in monitor details page by no longer styling Layout.Body by @malwilley in #121130
Notifications
- Guard against missing removeEventListener on PermissionStatus by @sentry in #121513
- Add partial index for notificationmessage where parent IS NULL by @hobzcalvin in #121815
- Use per-project emails on workflow notifications by @leeandher in #121349
- Build valid release email URLs by @sentry-junior in #121114
Objectstore
- Close the upstream response when a proxied download is abandoned by @jan-auer in #121714
- Correct upload and response timeout handling by @lcian in #121149
Onboarding
- Clip the SCM product section reveal by @jaydgoss in #121497
- Clip the SCM reveal during its exit tween by @jaydgoss in #121495
- Refresh SCM data on return by @jaydgoss in #121902
- Link SCM providers to repository settings by @jaydgoss in #121901
- Clarify team access to project alerts by @jaydgoss in #121739
- Improve SCM selector search and keyboard navigation by @betegon in #121605
- Equalize welcome product copy heights by @evanpurkhiser in #121535
- Fire the welcome analytics event once per visit by @jaydgoss in #121197
- Address pure-render-functions violation in onboarding.tsx by @sentry in #121234
Ourlogs
- Resolve received time in the timestamp hover tooltip by @JoshuaKGoldberg in #121477
- Properly normalize date selection on log trace links by @JoshuaKGoldberg in #120857
- Cancel the log row hover prefetch on unmount by @JoshuaKGoldberg in #120842
- Hide timestamp.sequence field by @JoshuaKGoldberg in #120452
- Use the right range operator when paginating ascending logs by @JoshuaKGoldberg in #120771
- Measure expanded row heights more often in the virtual table by @JoshuaKGoldberg in #120345
Performance
- Adhere to pure-render-functions convention in traceWaterfallState.tsx by @sentry in #121239
- Resolve static-component-definitions in performanceWidget by @sentry in #120030
- Fix valid-use-memo in SearchBar by @sentry in #121216
- Remove unused EventView prop by @scttcper in #120717
Pr Metrics
- Group check rollups per suite, not per app by @vaind in #121664
- Sweep activity of PRs that never earn attribution by @vaind in #121424
Preprod
- Try to reduce likelihood of some task race conditions by @jamieQ in #122001
- Accept CFBundleVersion groups beyond the third by @trevor-e in #121968
- Limit artifact install groups by @jamieQ in #121020
Pure Render Functions
- Correct useReleaseBubbles.tsx ref usage by @sentry in #121897
- Memoize retentionPeriodMs in EventComparison by @sentry in #121235
Refactor Tasks
- Add -w to pnpm add in no-derived-state detector by @ryan953 in #121892
- Stop routing eslint-json-runner through npx by @ryan953 in #121824
- Fail loudly when the eslint detector cannot run by @ryan953 in #121760
Releases
- Attribute release-resolved issues in the group action log by @cvxluo in #121356
- Stop using discover dataset for release comparison by @mjq in #120975
Replays
- Handle sentry.java.android.unreal in configureReplayCard by @sentry in #120704
- Adhere to pure-render-functions in ReplayLiveIndicator by @sentry in #121245
- Don't discard a whole segment over one malformed click by @JoshuaKGoldberg in #121765
- Further stop trusting the SDK type for click frame nodes by @JoshuaKGoldberg in #121766
- Issue Replay archive events in the the time range of the original Replay by @gggritso in #121644
- Unsquish the text unmasking banner in the player by @JoshuaKGoldberg in #121638
- Remove gcTime: infinite for replay dom caching by @scttcper in #121529
- See All Replays button shouldn't replace by @mjq in #119840
- Improve error handling inside bulk Replay deletion by @gggritso in #121397
- Remove unnecessary margins in table header cells by @JoshuaKGoldberg in #121315
- Speed up Replay bulk delete code by paginating on sorting key by @gggritso in #121336
- Adhere to pure-render-functions in NoReplaySummary by @sentry in #121242
- Strip dashes from replay_id in bulk delete blob keys by @strongs in #121113
- Register delete_recording_async under the old replays namespace too by @strongs in #121132
- Route delete-script task to long pool and lighten its per-task cost by @strongs in #121121
- Make delete_replays script mirror the bulk delete path so its Snuba finder stops timing out by @strongs in #121086
- Restore to-be-deleted count in delete_replays logs by @strongs in #121071
- Use keyset pagination in delete_replays finder so it stops timing out Snuba by @strongs in #121027
- Handle click nodes without attributes by @scttcper in #120949
- Handle missing data fields in AI summary by @sentry in #120859
- Chunk bulk replay delete queries into 7-day windows by @sentry in #120456
- Stop bulk delete progress stalling and rewinding by @JoshuaKGoldberg in #120772
- Stop polling bulk delete jobs that are not running by @JoshuaKGoldberg in #120773
- Source member access from the org members endpoint by @JoshuaKGoldberg in #120770
Scraps
- EmptyState responsiveness by @TkDodo in #121707
- Wire MDX code copy buttons by @priscilawebdev in #121289
- Stop tooltip content clicks from triggering ancestors by @TkDodo in #121155
- Stop FeatureBadge tooltip flicker on hover by @TkDodo in #121151
- Make FeatureBadge tooltip show up on keyboard navigation by @TkDodo in #120731
Search
- Keep Ask Seer cross-event filters on a new line by @nsdeschenes in #121432
- Require two words before defaulting to Ask Seer by @nsdeschenes in #120972
- Prevent Ask Seer footer from clipping Give Feedback by @nsdeschenes in #121301
- Add mean severity aggregation option by @roggenkemper in #121256
- Preserve colons in custom attribute filters by @nsdeschenes in #120895
- Preserve Ask Seer combobox sizing by @nsdeschenes in #120886
- Wrap long Ask Seer query tokens by @nsdeschenes in #120211
Seer
- Stamp the real referrer on feature-run SeerRun rows by @trevor-e in #122049
- Return seerReposLinked=True for free cohort orgs by @Mihir-Mavalankar in #121973
- Only show autofix UI for free cohort issues with existing runs by @Mihir-Mavalankar in #121899
- Accept PR reviews from bot authors by @alexsohn1126 in #121845
- Record autofix trigger before RCA start by @scttcper in #121759
- Default the Code Mode override to only by @azulus in #121591
- Record activities before async updates by @scttcper in #121117
- Add disabled post-process rollout gate by @trevor-e in #121481
- Deduplicate night shift cron runs by @trevor-e in #120609
- Don't run/score Smart Assignment against automatic assignments by @hobzcalvin in #121368
- Add activity recording compatibility by @scttcper in #121116
- Label every Explorer tool link instead of its raw name by @azulus in #121247
- Avoid mutating repository settings by @scttcper in #120719
- Serialize Sentry user @mentions in Seer tools by @hobzcalvin in #120950
- Resolve default branch before Cursor agent launch by @sehr-m in #121254
- Restrict explorer updates to run owners by @trevor-e in #121095
- Restrict chat continuations to run owners by @trevor-e in #121083
- Preserve activity event timestamps by @scttcper in #120983
- Prevent assistant content overlap by @natemoo-re in #120943
- Don't treat resolution by bots as a ground truth to score Smart Assignment by @hobzcalvin in #120904
- Prefer lower-ranked assignment candidates that actually resolve by @hobzcalvin in #120785
Sentry Apps
- Validate empty app creation requests by @cvxluo in #122051
- Make routine templates alertable by @cvxluo in #120942
Settings
- Keep spam detection toggle enabled after save by @scttcper in #121887
- Debounce team search requests by @scttcper in #121817
- Close member dropdown before invite modal by @scttcper in #121005
Slack
- Deduplicate Seer Agent webhook retries by event_id by @joseph-sentry in #120934
- Scope get_rule to the integration's organization by @frifri in #121023
Spans Migration
- Review frontend flags for transaction dataset deprecation by @nikkikapadia in #121961
- Account for null widget type transaction widgets by @nikkikapadia in #121654
Tests
- Keep EAP snuba tests within 30d full-fidelity window by @phacops in #121693
- Keep EAP snuba tests within 30d statsPeriod by @sentry-junior in #121595
- Fix inbox test flaking in CI by @malwilley in #121565
Trace
- Show all contexts in span details pane by @mjq in #121652
- Prefer transaction data EAP instead of nodestore by @mjq in #121557
- Stringify EAP breadcrumb timestamps by @mjq in #121524
- Buffer compressed gaps around errors by @nsdeschenes in #121442
- Use safe localStorage wrapper in trace preferences by @sentry in #121042
- Load projects for telemetry-only traces by @nsdeschenes in #120335
- Stabilize asynchronous overview loading by @nsdeschenes in #120334
- Resolve trace overview data independently by @nsdeschenes in #120333
- Stabilize trace shell during initial loading by @nsdeschenes in #120331
Trace View
- Build the loading placeholder out of spans by @gggritso in #121801
- Resolve EAP attribute keys in trace header highlights by @buenaflor in #118918
Tracemetrics
- Apply min-width to aggregate table columns by @narsaynorath in #121519
- Map sentry.segment.name to transaction by @narsaynorath in #121335
- Restore cell actions to aggregates table by @narsaynorath in #120837
Ui
- Scope Issues and Explore links to organization by @scttcper in #122062
- Keep dropdowns below sticky navigation by @priscilawebdev in #121599
- Use kB instead of KB for byte formatting by @obostjancic in #118906
- Stop the explore catch-all from renaming every transaction by @scttcper in #120769
- Avoid mutating AvatarList tooltip props by @scttcper in #120722
- Silence service worker errors by @scttcper in #120778
Other
- (accountSecurity) Adhere to valid-use-memo convention by @sentry in #121217
- (aci) Allow adding triggers to an alert with
triggers: nullby @RudraPatel2003 in #121622 - (action_log) Codify that pipeline_hash=NULL means invalidated by @kcons in #121273
- (ai-monitoring) Stop title generation from joining AI conversations by @vgrozdanic in #120793
- (api) Return X-Max-Hits header from OffsetPaginator by @malwilley in #122044
- (arithmetic-builder) Align function tokens vertically by @nsdeschenes in #121705
- (ask-seer) Use grammar-neutral Ask Seer fallback labels by @nsdeschenes in #121441
- (auth) Validate org and provider in pipeline state by @michelletran-sentry in #121528
- (auto_ongoing) Don't tag metric with count by @kcons in #121687
- (billing) Clarify promo code redemption layout by @sentry-junior in #119526
- (button) Keep the chonky silhouette visible under the focus ring by @cvxluo in #120219
- (ci) Add timeouts to snuba test endpoint requests by @mchen-sentry in #121579
- (clipboard) Prevent unhandled promise rejection from NotAllowedError by @sentry in #121032
- (cmdk) Do not create a queryObserver for disabled resources by @TkDodo in #120963
- (code-mappings) Decode path mapping url before validation by @Lms24 in #121593
- (codeowners) Ignore stale
organization_integration_idinput by @scttcper in #120977 - (contexts) Show
<redacted>instead of "null" for scrubbed user context fields by @shashjar in #120930 - (conventions) Update sentry-conventions package to 0.19.0 by @mjq in #121641
- (crons) Generate unique slugs for duplicate monitor names by @mrduncan in #121456
- (deps) Bump seroval to patch critical deserialization vuln by @oioki in #121304
- (drawers) Move scrollbars to the right by @sentry-junior in #121860
- (eapMetricsField) Correct valid-use-memo for debounced setSearch by @sentry in #121215
- (errors) Transactions homepage showed broken state by @nikkikapadia in #121228
- (events-screenshot) Stabilize AttachmentComponent reference by @sentry in #120036
- (eventstream) Safely roll out FutureTrackingProducer by @lvthanh03 in #121671
- (feedback) Avoid mutating event context data by @scttcper in #120716
- (filters) Use renamed markLine export in custom filters by @sentry-junior in #121967
- (group_notes) Use the activity flag rather than the write flag by @kcons in #121202
- (grouping) Bound lookaheads in parameterization regexes by @oioki in #121470
- (inbound_email) Provide ActionContext for issue notes by @sentry in #120880
- (inbound-filters) Customer filter table columns by @shellmayr in #121711
- (issue) Fix bulk lookup for group events by @saponifi3d in #120834
- (issue detection) Handle URL placeholders more gracefully by @lobsterkatie in #121875
- (issue-inbox) Show Identified issues when suggested as owner by @sentry in #121561
- (issue-progress) Heal null has_other_open_prs in PR lifecycle backfill by @malwilley in #120947
- (issue-views) Give Stars column enough width for its header by @sentry-junior in #121750
- (java) Deobfuscate bare class names in cast exception messages by @tedjuntunen-sentry in #121781
- (jira-server) Scope webhook integration lookup to the provider by @vaind in #121280
- (keyStats) Adhere to pure-render-functions convention by @sentry in #121237
- (lint) Wrap useMemo function reference in detectSection.tsx by @sentry in #121212
- (metrics) Switch project details off of metricsEnhanced by @k-fish in #120777
- (metricsVisualize) Refactor useCallback to useMemo for debounced function by @sentry in #121124
- (navBillingStatus) Prevent TypeError when localStorage is null by @sentry in #121704
- (ongoing) Remove redundant subqueries by @kcons in #121660
- (orgs) Allow members to create projects by default by @sentry-junior in #121727
- (outcomes) Add quantity to outcomes metric by @untitaker in #121288
- (perforce) Add support for p4 broker by @mujacica in #120824
- (profiling) Cap span query limit to API max of 100 by @romtsn in #119924
- (query agent) Expand always allow list to include context fields by @shruthilayaj in #121977
- (react-compiler) Rename TraceTree.Depth to TraceTree.depth by @sentry in #121925
- (react-hooks) Fix impure Date.now() call in useCommandPaletteAnalytics by @sentry in #121244
- (release) Use spans dataset for transaction table by @mjq in #121563
- (sampling) Update warning by @wmak in #120846
- (scm) Make PR lifecycle writes monotonic across reordered webhooks by @vaind in #121059
- (security) Fix a possible security issue on the workflow_engine api by @saponifi3d in #120941
- (seer-settings) Fix agent handoff dropdown selection not persisting by @srest2021 in #120820
- (seerExplorer) Handle localStorage access in Safari private mode by @sentry in #121031
- (seerWorkflows) Fix pure-render-functions in index.tsx by @sentry in #121238
- (service-worker) Prevent TypeError from undefined registration by @sentry in #120863
- (stacktrace) Use single select for View and Sort in display options by @TkDodo in #121160
- (tabs) Defer ResizeObserver recompute to prevent useEffectEvent error by @sentry in #120862
- (traces) Replace count(span.duration) with count(spans) in explore equations by @narsaynorath in #121634
- (workflow) Remove noisy DetectorGroup.DoesNotExist log by @sentry in #121024
- (workflow_engine) Attribute test-fired actions in the group action log by @cvxluo in #121373
- (workflows) Validate Sentry App action targets by @cvxluo in #121996
- Reject source files greater than 190 MiB by @elramen in #121718
- Make updateSlackAlert responsive towards its container by @TkDodo in #121316
- Wrap integration issue-linking and workflow trigger_action in action_context_scope by @sentry in #120873
- Only hide issueList actions on narrow viewPorts, not containers by @TkDodo in #120833
Documentation 📚
- (breadcrumb-list) Move copy action into overflow menu by @priscilawebdev in #121287
- (preprod) Publish skipped status check endpoints by @jamieQ in #120926
- (replays) Hide deprecated /replay-count/ data sources by @mjq in #120914
- (settings) Document token exclusion when Allowed Domains is * by @elramen in #121608
- (workflow-engine) Document architecture and extension points by @saponifi3d in #121761
- Discourage
make test-selectiveby @joshuarli in #120987
Internal Changes 🔧
Aci
- Remove legacy default rule creation from project workflows receiver by @ceorourke in #121890
- Remove legacy incidents list, latest alerts widget, and incident redirect by @ceorourke in #121853
- Remove unused url field from NotificationRuleDetails and orphaned get_snooze_url by @ceorourke in #121774
- Remove unreachable uptime existing or create page by @ceorourke in #121754
- Relocate alerts shared modules by @ceorourke in #121639
- Point backend alert links at monitors instead of legacy alert pages by @ceorourke in #121642
- Move orphaned fns/consts into their only consumers by @ceorourke in #121650
- Remove legacy issue alerts by @ceorourke in #121542
- Remove legacy metric alert pages by @ceorourke in #121352
- Remove workflow-engine-ui feature flag registration by @ceorourke in #121223
- Remove legacy crons and uptime overviews by @ceorourke in #121193
- Remove workflow-engine-ui flag from test fixtures by @ceorourke in #121224
- Remove
legacy_alertparam from detector anomaly data endpoint by @ceorourke in #121194 - Remove workflow-engine-ui flag from even more places by @ceorourke in #121088
- Remove workflow-engine-ui flag from some more places by @ceorourke in #121003
- Remove workflow-engine-ui flag from create alert entry points by @ceorourke in #120986
- Remove workflow-engine-ui flag from alert/automation redirects by @ceorourke in #120757
- Remove workflow engine UI flag on the backend by @ceorourke in #120712
Agent Monitoring
- Rename ConversationsTableRedesign to ConversationsTable by @ArthurKnaus in #120890
- Remove gen-ai-conversations-redesign flag check by @ArthurKnaus in #120888
Agents
- Compact AGENTS.md files and defer deep guides to skills by @natemoo-re in #121469
- Trim derivable content from AGENTS.md by @billyvg in #121311
Ai Monitoring
- Stop sending apiVersion on conversation details by @vgrozdanic in #121284
- Always return conversation details envelope by @vgrozdanic in #121143
- Align list titles with detail selection by @vgrozdanic in #121053
Alerts
- Remove orphaned Slack metric alert message builder by @ceorourke in #121564
- Clear localStorage between anomaly banner tests by @JoshuaKGoldberg in #121172
- Increase brownouts for legacy alerts API even more by @ceorourke in #121091
Api
- Remove unused
InternalEAFeaturesEndpointby @shashjar in #122089 - Withhold attribute context from the public spec by @skaasten in #121646
- Remove unused organization option features by @scttcper in #120905
- Add
event.typeSentry attribute to all event endpoints by @mjq in #120871
Auth
- Remove unused code by @nora-shap in #121268
- Extract reusable methods from SSO identity handler by @nora-shap in #121013
Autofix
- Disable frontend code search for autofix runs by @chromy in #122030
- Disable context engine for autofix runs by @chromy in #122004
- Dispatch RCA runs under the autofix feature id by @trevor-e in #121990
- Gate manual PR iteration UI behind its own feature flag by @alexsohn1126 in #121189
- Gate manual PR iteration behind its own feature flag by @alexsohn1126 in #121180
- Route the remaining PR links through the shared resolver by @cvxluo in #121208
- Extract next step logic into a common utility function by @malwilley in #121103
- Use local run mirror for automation eligibility by @trevor-e in #121026
- Use Literal instead of StrEnum for fixability assessment by @Zylphrex in #120915
- Resolve PR link labels in one place by @cvxluo in #120865
- Replace introspection LLM call with fixability assessment by @Zylphrex in #120786
Codeowners
- Add owners for investigations by @vaind in #121947
- We don't own all endpoints by @sentaur-athena in #121550
- Exclude auto-generated API urls file from ownership by @malwilley in #120780
Control
- Drop check_run/check_suite completed with no pull request in their own repo by @vaind in #121719
- Drop unconsumed check_suite webhook actions at the parser by @vaind in #121434
Conversations
- Consolidate preview normalization by @vgrozdanic in #121440
- Move missing-messages banner above chart by @vgrozdanic in #121418
Dashboards
- Take keyed params in applyDashboardFilters by @edwardgou-sentry in #121756
- Migrate to container queries by @TkDodo in #121835
- Use
EmptyStatein the chartNoDatapanels by @gggritso in #120935 - Remove
organizations:dashboards-ai-generate-editflag check by @cvxluo in #120591
Deps
- Bump dompurify from 3.4.12 to 3.4.13 by @dependabot in #121530
- Bump cryptography from 49.0.0 to 50.0.0 by @dependabot in #121507
- Bump django from 5.2.14 to 5.2.15 by @dependabot in #121510
- Bump pyasn1 from 0.6.3 to 0.6.4 by @dependabot in #121509
- Bump sentry-protos to 0.59.0 by @skonves in #121313
- Bump pillow from 12.2.0 to 12.3.0 by @jamieQ in #121219
- Bump sentry-protos to 0.56.0 by @skonves in #120932
- Bump sentry-protos to 0.53.0 by @skonves in #120784
Detectors
- Migrate to built-in container queries by @TkDodo in #121058
- Improve logging of span-first/legacy detector mismatches by @lobsterkatie in #120685
Discover
- Restrict the fn argument of fn_span_count by @phacops in #121911
- Migrate layouts to container queries by @TkDodo in #121063
Dynamic Sampling
- Add diagnostic fields to the recalibration comparison log by @shellmayr in #121826
- Interleave organization scheduler order by @constantinius in #121446
- Emit exception when reason unknown in per-org by @shellmayr in #121156
- Slim down the remaining per-org tests by @shellmayr in #121145
- Slim down per-org configuration tests by @shellmayr in #121142
- Remove the implicit sample rate floor by @shellmayr in #121055
- Count unnamed root transactions instead of dropping them by @shellmayr in #120911
Eslint
- Update eslint plugin boundaries by @TkDodo in #121600
- Fix typescript-eslint/no-shadow by @TkDodo in #121436
- Enable e18e/prefer-array-to-sorted by @TkDodo in #121298
- Enable e18e/prefer-array-to-reversed by @TkDodo in #121292
- Enable e18e/prefer-array-some by @TkDodo in #121286
- Enable e18e/prefer-array-from-map by @TkDodo in #121067
Event Formatter
- Use formatter for copy to markdown by @shayna-ch in #119834
- Add new event formatter to rpc by @shayna-ch in #119938
- Add more to the event formatter by @shayna-ch in #119862
- Add llmFormat to endpoint by @shayna-ch in #119545
- Add event formatter to sentry backend by @shayna-ch in #119250
Explore
- Rename Conversations to Agents by @vgrozdanic in #121503
- Call the renamed agents/conversations API by @ArthurKnaus in #121713
- Mock trace-item prefetch in logs table tests by @nsdeschenes in #120822
Forms
- Remove wrapping css template tag by @scttcper in #121740
- Remove unused legacy form fields by @scttcper in #121668
- Migrate project performance settings to Scraps by @priscilawebdev in #119187
- Migrate account security 2FA enrollment off JsonForm to scraps form by @priscilawebdev in #119188
- Migrate debug file custom repository modal off deprecatedforms to scraps form by @priscilawebdev in #119191
- Improve field search registry generation by @TkDodo in #121046
- Migrate organization create off deprecatedforms to scraps form by @priscilawebdev in #119196
- Migrate sudo modal off deprecatedforms to scraps form by @priscilawebdev in #119192
Gdd
- Restructure transactions around _ensure_derived by @kcons in #121581
- Factor out basic group batching and processing methods by @kcons in #121266
Grouping
- Remove Python enhancement executor by @scttcper in #121174
- Skip parsing query-free JavaScript filenames by @scttcper in #121137
- Avoid serializing exceptions for enhancements by @scttcper in #121138
- Avoid redundant match frame work by @scttcper in #121079
- Skip unnecessary native function parsing by @scttcper in #121087
Hybridcloud
- Remove dead member teams replication option by @ldelvoye in #121878
- Fold the dispatch due-check into the claim update by @vaind in #121454
- Log webhook discards at warning and stop sampling their counters by @vaind in #121604
- Read webhook payloads from primary in control tasks by @beezz in #121514
- Drop unused priority index on WebhookPayload by @vaind in #121283
- Remove the async api gateway by @ldelvoye in #121229
- Drop unused schedule_for index on WebhookPayload by @vaind in #121260
Inbox
- Refactor issue preview actions to be more extensible by @malwilley in #121905
- Update inbox to use "new" badge by @malwilley in #121778
- Remove feature flag for progress sort by @malwilley in #121688
- Show issue count even when it is 0 by @malwilley in #121537
- Restyle event and user counts by @roggenkemper in #121320
Integrations
- Add field on integration to not overwrite metadata by @Christinarlong in #121621
- Clean up the sentry app request log by @mrduncan in #121536
Issues
- Remove checks for graduated issue flags by @saponifi3d in #121886
- Remove activity feed flag by @scttcper in #121460
- Use GitHub icon for pull request CTA by @roggenkemper in #121073
- Remove dead processing traversal by @scttcper in #121128
- Memoize issue stream Discover URLs by @scttcper in #121075
- Batch requests for non-error groups by @saponifi3d in #121018
- Remove obsolete HPKP/Expect-CT/Expect-Staple tests by @mrduncan in #121028
- Increase inbox pagination increment by @roggenkemper in #121072
- Remove activity feed v2 flag by @scttcper in #120870
- Clean up referrer split feature flag by @mrduncan in #120868
- Default firstSeen/lastSeen columns and optional headers by @natemoo-re in #120831
- Batch external issue serialization by @saponifi3d in #120835
- Remove saved search UI remnants by @malwilley in #120861
- Speed up CODEOWNERS parsing by @scttcper in #120782
- Share secondary navigation count styles by @roggenkemper in #120759
Logs
- Migrate layouts to container queries by @priscilawebdev in #120954
- Stop defaulting to Ask Seer for Logs by @nsdeschenes in #120925
Migrations
- Improve migration guidance by @wedamija in #121907
- Remove superseded squash migrations by @vgrozdanic in #121421
Notifications
- Restructure get_parent_notification_message query to hit index better by @kcons in #121980
- Seer activity alerts link to issue inbox if available by @leeandher in #121764
Onboarding
- Share SCM project creation in a reusable hook by @jaydgoss in #121775
- Remove onboarding-copy-setup-instructions-project-creation registration by @cvxluo in #120012
- Remove
organizations:onboarding-new-welcome-uiregistration by @cvxluo in #119869 - Make onboarding session exits explicit by @jaydgoss in #121022
- Migrate media queries to container queries by @priscilawebdev in #120638
- Remove SCM Project Details registration by @cvxluo in #120626
- Remove SCM Project Details experiment by @cvxluo in #120625
- Remove SCM Project Details acceptance coverage by @jaydgoss in #120814
- Remove onboarding-copy-setup-instructions flag registration by @cvxluo in #119969
Organizations
- Drop outbox replication from member teams by @ldelvoye in #121810
- Add new_id shadow column to organizationmember_teams by @ldelvoye in #121552
Performance
- Stop ordinary MEP queries on generic metrics by @sentry-junior in #122023
- Rename Agent Timeline by @vgrozdanic in #121504
- Rename trace waterfall AI tab by @nsdeschenes in #120979
Pr Metrics
- Register permanent organizations:pr-metrics flag by @vaind in #121936
- Promote the PR lifecycle mappers out of the webhooks by @cvxluo in #121009
Preprod
- Graduate snapshot archive manifest flag by @jamieQ in #122072
- Graduate preprod-artifact-webhooks flag (frontend) by @cvxluo in #120257
- Accept extra task keyword arguments by @jamieQ in #121861
- Remove treemap label shadows by @jamieQ in #121475
- SizeComparison to container queries by @TkDodo in #121147
- Snapshots to container queries by @TkDodo in #121148
- BuildDetails to container queries by @TkDodo in #121144
Profiling
- Rename capitalized static methods in Flamegraph class by @sentry in #121929
- Fix pure-render-functions violation in useRelativeDateTime by @sentry in #121246
- Migrate layouts to container queries by @priscilawebdev in #120953
Project Install
- Extract channel query options by @sentry-junior in #121377
- Stabilize notification refetch tests by @scttcper in #121389
Relay
…