Requested by: @gricha
Merge target: (default)
Quick links:
Assign the accepted label to this issue to approve the release.
Targets
Checked targets will be skipped (either already published or user-requested skip). Uncheck to retry a target.
📋 Changelog
New Features ✨
Apigw
- Expose proxy latency metrics by target by gi0baro in #116086
- Add non-orgid/slug endpoints to proxied cell requests by gi0baro in #115930
Autofix
- Allow non seat based seer to skip setup in #116208
- Switch inspection to single llm call using gemini flas… by Zylphrex in #116071
- Autofix introspection analytics by Zylphrex in #115891
- Add UI labels for missing AutofixReferrer values by chromy in #115655
- Render line numbers in autofix evidence by Zylphrex in #115649
Cells
- Remove cross-org feature gating from notification settings by lynnagara in #115829
- Add cell-routing mode to devservices by lynnagara in #115737
Cmdk
- Add Open in Production and Open in Development actions in #116242
- Freeze visible action list during keyboard navigation in #115851
- Add project search action to command palette by JonasBa in #115591
Conversations
- Add copy conversation as markdown button in #116171
- Swap badge from alpha to beta by obostjancic in #115712
- Add Amplitude analytics to conversation pages by obostjancic in #115622
Dashboards
- Add span-first support for web vital dashboard in #115882
- Validate display type against dataset config by DominikB2014 in #115951
- Require metric_unit in AI tracemetrics aggregates by DominikB2014 in #116101
- Teach AI dashboard generator the tracemetrics aggregate format by DominikB2014 in #115480
Explore
- Heatmap tooltip trace links by nikkikapadia in #115925
- Link to aggregates from dropdown by nsdeschenes in #115789
- Add Heat Map widget to Explore metrics by gggritso in #115608
Github Enterprise
- Add frontend pipeline steps for GHE integration setup in #114367
- Add API-driven pipeline backend for GHE integration setup in #114366
- Allow github.com as a source for the GitHub Enterprise integration by tnt-sentry in #115599
Issues
- Bring back
SEER_PR_CREATED activity creation and hide from timeline in #116233
- Two-column activity icons, colors by scttcper in #115958
- Unify issue activity streams by scttcper in #115848
- Add activity feed v2 flag by scttcper in #115966
- Consolidate activity comment input by scttcper in #115824
- Replace DebugMeta store with context by scttcper in #115842
Low Value Spans
- Add configuration issue UI in #116271
- Add Snuba referrer for detector by vgrozdanic in #115980
- Add low-value span issue UI by ArthurKnaus in #115870
- Add low-value span issue type by ArthurKnaus in #115868
Onboarding
- Link selected repository to project after creation by wedamija in #115761
- Update Hono onboarding with
@sentry/hono by s1gr1d in #115476
Ourlogs
- Reduce modal export rows limit to 10k by JoshuaKGoldberg in #116180
- Show estimated total dataset size in needle-in-haystack searches by JoshuaKGoldberg in #115731
- Implement pinned logs with sticky header (part 1) by JoshuaKGoldberg in #115102
- Add 'Group by attribute' to log property context menu by JoshuaKGoldberg in #115420
Preprod
- Display snapshot image tags in card headers in #115723
- Display images_skipped in snapshot table by NicoHinderling in #116074
- Add images_skipped to builds API response by NicoHinderling in #116073
- Display skipped images in snapshots UI by NicoHinderling in #116041
- Expose is_selective flag in snapshot details API response by NicoHinderling in #115832
- Add Snapshot status check rules API by cameroncooke in #115621
Search
- Add recommended sort option to issue stream dropdown in #116197
- Surface recommended sort in UI when active via query param in #116186
- Register feature flag for recommended issue sort by roggenkemper in #116191
Seer
- Add structured LLM context for replay list and detail pages in #116045
- Always show action buttons in explorer chat blocks by ChrisandraVaz in #116049
- Add bulk Seer project connected repos endpoint by srest2021 in #115942
- Add Seer project connected repo endpoint by srest2021 in #115199
- Add structured LLM context for explore logs trace route by Mihir-Mavalankar in #116036
- Add CRUD helpers for Seer project repos by srest2021 in #115904
- Add structured LLM context for issue detail sub-tabs by Mihir-Mavalankar in #115936
- Add bulk-project Seer settings endpoint by srest2021 in #115234
- Add helper for bulk updating Seer project settings by srest2021 in #115756
- Scope /conversations slash command lookup with start/end/project by chromy in #115785
- Add single-project Seer settings endpoint by srest2021 in #115230
- Add SeerRun FK to SeerNightShiftRun by trevor-e in #115694
- Add SeerWorkflowConfig model and link to night shift runs by trevor-e in #115615
- Mirror last_triggered_at to SeerRun on autofix triggers by trevor-e in #115611
Tracemetrics
- Include equations in Add to Dashboard by narsaynorath in #116141
- Convert equation alias to full equation for queries by narsaynorath in #116047
- Open in Explore for metrics dashboard widgets by narsaynorath in #115805
- Lazy load trace details per metric by nsdeschenes in #115066
Webhooks
- Add dry run check to sentry app webhook path in #116265
- Add payload validation during dual-write migration in #116040
- Add metrics for legacy webhook migration validation by Christinarlong in #116039
- Wire new service with feature-flagged routing by Christinarlong in #115747
- Add standalone legacy webhook service module by Christinarlong in #115688
- Register legacy webhook migration feature flags by Christinarlong in #115669
Other
- (aci) Add sort param to workflow group history endpoint in #116031
- (alerts) Add cleanup task to NotificationMessage in #116027
- (amplitude) Track whether users are viewing sentry-built dashboards by bcoe in #116138
- (api-docs) Publish project event details endpoint in #116059
- (apigateway) Add separated async
apigw package by gi0baro in #115624
- (button) Add
size prop to ButtonBar via SizeContext by natemoo-re in #115728
- (ci) Add merge_base_strategy tag to Jest CI runs by ryan953 in #115967
- (data-forwarding) Enable retries for data forwarders via task dispatch by leeandher in #115511
- (dev) Add SENTRY_CELL_ROUTING env var that runs cell-routing mode locally by lynnagara in #115852
- (dynamic-sampling) Add per-project volume query in #114286
- (examples) Add task that produces by bmckerry in #115820
- (explorer) Add query parameter to explorer-runs API by JonasBa in #115760
- (integrations) Disable auth token creation button without perms by cvxluo in #115769
- (markdown) Expose default components via
Default prop by natemoo-re in #115745
- (options) Add timing metric to options.get() by kenzoengineer in #115762
- (profiling) Add task for taskbroker passthrough mode by untitaker in #115065
- (repositories) Add project repo-link endpoint by wedamija in #115754
- (routes) Add redirect from /snapshots/ to explore releases by NicoHinderling in #116053
- (scm) Add streaming integration-proxy which accepts any 'Accepts' header value by cmanallen in #115917
- (self-healing) Add support for seer activities in workflow engine by saponifi3d in #115933
- (settings) Add 'Recent Error Events' column to project environments by JoshuaKGoldberg in #115902
- (source-map-config-issues) Updating processing errors metric by Abdkhan14 in #115822
- (spans) Add separate Redis cluster setting for span deduplication by untitaker in #116010
- (trace-waterfall) Small tweaks to trace-waterfall tab by nsdeschenes in #115584
- (ui) Add debug FeatureBadge variant by chromy in #116000
- Flags and rpc for frontend code search tool by shruthilayaj in #116098
- Add SENTRY_ALLOWED_IPS to allow IP, overwrite SENTRY_DISALLOWED… by fe80 in #115773
- Add Relay measurements conversion feature by loewenheim in #115979
- Track read options via seen logline by joshuarli in #115610
- Add toggle to migrate to billing platform by noahsmartin in #115895
Bug Fixes 🐛
Alerts
- Handle gte/lte condition types in metric alert serializers by kcons in #115972
- Update migration to not remove FK to group by ceorourke in #115932
- Surface API error messages in create/update toasts by malwilley in #115894
- Batch NotificationMessage delete metric alert rows by ceorourke in #115726
Api
- Correctly parse
full parameter in project events endpoint in #116216
- Validate IDs in OrganizationGroupIndexEndpoint.delete by kcons in #115770
Conversations
- Restore side-by-side layout for platform option dropdown in #116272
- Improve tool badge rendering and overflow behavior by obostjancic in #115880
- Improve truncation of non-UUID conversation IDs by sentry-junior in #115978
Dashboards
- Raise widget description limit to 350 by DominikB2014 in #116185
- Propagate global filters in Open in Issues link by DominikB2014 in #116105
- Stop widget header action clicks from bubbling by skaasten in #116096
- Anchor Editors dropdown to the right edge of the trigger by skaasten in #116104
- Reset table fields when switching from details widget by DominikB2014 in #115788
- Prevent sticky navbar misalignment on scroll by priscilawebdev in #115716
Discover
- Add missing check for DiscoverSavedQueryVisitEndpoint in #116187
- Add org id to project filter by nsdeschenes in #116174
Dynamic Sampling
- Use the correct field name for dynamic sampling project id in #116279
- Update run_eap_spans_table_query_in_chunks to yield individual rows and adjust tests accordingly by constantinius in #115995
Events
- Debug param wasn't being passed down correctly in #116152
- Correctly parse full parameter in group hashes endpoint in #116219
Explore
- Use unique ids for visuals in #116204
- Cross events date selector allow 7d anytime within 30 days by nikkikapadia in #116099
- Increase strictness on URLs by nsdeschenes in #115881
- Pymark fail on test for arrays in detail endpoint by manessaraj in #115828
Integrations
- Validate user-provided IDs in webhooks by kcons in #115910
- Replace useIntegrationTabs with nuqs useQueryState by ryan953 in #115738
Issues
- Align collapsed activity row in #116266
- Fix undefined variable in
StreamGroupSerializerSnuba feature flag check in #116259
- Move user serialization out of loop in ignored issues handler in #116246
- Fix sidebar comment box horizontal overflow in #116209
- Match short id when combined with filters in #116153
- Make GroupSearchViewPermission fail closed for unknown object types by roggenkemper in #116183
- Provide correct value for
search.sort SDK tag by shashjar in #116065
- Use full URL for open link button in breadcrumb messages by scttcper in #115911
- Enforce project access on event ID lookup endpoint by oioki in #115784
- Stop double-emitting issue activities for Seer PR created by shashjar in #115749
- Add int ID validation to a few endpoints by kcons in #115690
- Search org members for note mentions by scttcper in #115614
Metrics
- Resolve flaky metrics tab tests in #116280
- Default to largest interval when using heatmaps visualization by nikkikapadia in #116129
Monitors
- Surface schedule config errors on cron form fields by malwilley in #116016
- Add tooltip for disabled project in edits by JoshuaKGoldberg in #115931
Onboarding
- Remove broken aria-label from RadioGroup radio inputs by scttcper in #116032
- Include shared feedback for Hono onbarding by s1gr1d in #115721
Perforce
- Update onboarding frontend for Unicode support by mujacica in #116005
- Support Unicode Perforce server connections by mujacica in #115775
Preprod
- Reduce snapshot download concurrency to prevent stream failures in #116267
- Reapply "Include image key and field path in snapshot validation errors" by runningcode in #115987
- Remove native lazy loading from LazyImage component by NicoHinderling in #115922
- Eliminate race condition in snapshot status check posting by NicoHinderling in #115650
- Skip strict jsonschema for snapshot image metadata by runningcode in #115720
- Restore extra field passthrough in snapshot image responses by NicoHinderling in #115658
- Change snapshot image tags from list to dict by NicoHinderling in #115643
Replays
- Shrink timeline hover timestamp in #116268
- Remove timeline icon z-index workaround in #116255
- Remove extra padding from BodyGrid in replayLayout by sentry-junior in #116156
- Disable breadcrumbs autoscroll on user scroll by JoshuaKGoldberg in #115914
- Correct query invalidation on refresh by JoshuaKGoldberg in #115629
- Allow org admins to bulk delete replays by jameskeane in #115886
- Make link copy button accessible and non-variable width by JoshuaKGoldberg in #115598
Search
- Prevent Ask AI from doubling pasted query text in #116050
- Hide size limit prompt while filtering by nsdeschenes in #115816
Seer
- Sort autofix project table by slug instead of name by mrduncan in #115642
- Keep repo loading indicator active by scttcper in #115854
- Pass issue short ID to coding agents by JoshFerge in #115838
- Make ToolResult.content optional to prevent Pydantic validation error by sentry in #115630
Settings
- Fix CI permission checkbox not reflecting state by scttcper in #116055
- Restore title on accept-invite and accept-transfer pages by natemoo-re in #116013
- Fix Seer drawer stopping point not changing on mutate from "No Automation" by srest2021 in #115847
Snapshots
- Add instrumentation logging to snapshot download stream in #116079
- Add timeout override for snapshot download in emmett gateway by NicoHinderling in #116078
Tests
- Don't include trace context in symbolicator snapshots in #116275
- Use findByRole for async options in opJsonPath.spec.tsx by sentry in #115645
- Correct monitor form crontab test with fireEvent by sentry in #115644
- Update staleTime and add default mocks for external issue tests by sentry in #115646
Tracemetrics
- Use equation alias format for widget builder in #116213
- Expand selector dropdown menu width to 100% by narsaynorath in #116026
- Drop placeholder unit and always use none by narsaynorath in #116007
- Pass project and env in request filters for filter by narsaynorath in #115920
Ui
- Add inset focus ring to SimpleTable header cells in #116276
- Increase dropdown z-index to appear above sidebar by jameskeane in #116139
- Add self signed package to support https by scttcper in #115941
Workflow Engine
- Sanitize corrupted dynamic_form_fields choice labels by malwilley in #115855
- Normalize error.handled values to 0/1 by kcons in #115740
Other
- (a11y) Add missing alt attributes to context icons and feedback images by sentry-junior in #115772
- (agents) Use minVersion in SDK update alert for consistency by obostjancic in #115714
- (api-docs) Correct event/replay/processing-error ID schemas in #116201
- (apigw) Disable asyncpg statement cache (issues with pgbouncer) by gi0baro in #115992
- (attachments) Infer MIME type from filename when stored as octet-stream by sentry-junior in #115977
- (auth) Verify primary email on password reset by michelletran-sentry in #115651
- (autofix) Prevent loading spinner clip in artifact loading card by priscilawebdev in #115988
- (billing) Added fix to convert snuba sentry enum to the proto enum for usage stats by krithikravi in #115856
- (code-mapping) Update codeowners GET endpoint and tests in #116309
- (codeblock) Improve nested scroll by natemoo-re in #115839
- (crons) De-flake "prefills with an existing monitor" test by priscilawebdev in #115782
- (cross-events) Correct styling based off date selection by nsdeschenes in #116124
- (cursored-scheduler) Recalculate batch size on tick interval change by roggenkemper in #115888
- (data_export) Cap export row limit at 10k for all callers by manessaraj in #116048
- (escalating) Register issue_velocity referrer in Referrer enum by cvxluo in #115812
- (feedback) Downgrade log level for insufficient feedback count in #116247
- (forms) Preserve choice value types when submitting sentry app forms by priscilawebdev in #115869
- (grouping) Parameterize error message fingerprint variables by lobsterkatie in #115496
- (issue search) Fix invalid search query error message for device classes in #116243
- (issue-detection) Add plural KBLayouts_iPhone.dat to FileIO ignore list by roggenkemper in #116182
- (jira) Bind JWT iss to body clientKey on install webhook by michelletran-sentry in #114225
- (kafkapublisher) Leaks memory: rdkafka stats grow without poll() in #116123
- (members) Scope invite-request role updates to caller's allowed roles by oioki in #115807
- (migrations) Get rid of progress bar by ceorourke in #115691
- (mypy) Fix import location by kcons in #115654
- (ourlogs) Reset column sort to default on third click by JoshuaKGoldberg in #115751
- (pageFilters) Clear shift-click anchor on empty selection by priscilawebdev in #115472
- (profiles) Indicate invalid page URL state as error by JoshuaKGoldberg in #115897
- (profiling) Render single-sample continuous profile chunks in #116234
- (rate-limit) Tighten rate limits on test notification endpoints by nora-shap in #115613
- (ratelimits) Handle AnonymousUser missing is_sentry_app attribute in #116251
- (relay) Make trustedRelays optional on Organization type by TkDodo in #116014
- (releases) Pass Environment objects to get_latest_release by mrduncan in #115637
- (repositories) Fix deletion ordering for ProjectRepository children by wedamija in #115739
- (security) Add project-level access check to GroupEventJsonView by roggenkemper in #116184
- (self-hosted) Avoid install wizard mail TLS/SSL immutable errors by aldy505 in #114011
- (static) Add missing nonce attribute on app.js preload link by oioki in #115984
- (supergroups) Move to post process task in #116195
- (tabs) Stop tooltips in overflowMenuItems from crashing the page by TkDodo in #115993
- (traces) Handle deleted groups in trace endpoint in #116248
- (web) Redirect /scraps to stories by priscilawebdev in #115776
- (webauthn) Handle missing WebAuthn challenge data in #116167
- (webhooks) Route sentry app actions through send_alert_webhook_v2 in new path in #115975
- (workflow) Use Group cache in get_group_to_groupevent by kcons in #115960
- (workflows) Filter out workflows from other organizations in #116075
- Add catch-all path to explore route and redirect to index by adrianviquez in #116066
- Revert "fix(ourlogs): stabilized column widths during scrolling (#115389)" by getsentry-bot in 84d0139e
Documentation 📚
- (replays) Fix OpenAPI schema/example for replay details response by JoshFerge in #115752
- (scraps) Render to HTML pattern by natemoo-re in #115943
- (snapshots) Add public OpenAPI documentation for snapshot endpoints in #116231
Internal Changes 🔧
Admin
- Migrate forkCustomer off browserHistory by evanpurkhiser in #115915
- Drop browserHistory and HOCs from ResultGrid by evanpurkhiser in #115908
Alerts
- Clean up usage of AlertRuleSerializerResponse in #116218
- Remove AlertRuleSerializer in #116052
- Remove PUT and POST legacy paths for metric alerts by ceorourke in #116017
- Fully remove metric alert columns on NotificationMessage by ceorourke in #116025
- Remove legacy issue alert delete endpoint code by ceorourke in #115954
- Add index on date_added, soft remove metric alert colu… by ceorourke in #115823
- Remove legacy issue alert GET endpoint code by ceorourke in #115948
- Migrate issue rule editor off browserHistory by evanpurkhiser in #115924
- Remove legacy metric alerts code by ceorourke in #115865
- Remove incident serializer usages by ceorourke in #115845
- Remove legacy metric alert handlers by ceorourke in #115850
- Remove metric alert columns on NotificationMessage by ceorourke in #115578
- Replace AlertStore with GlobalAlertProvider + useGlobalAlerts by evanpurkhiser in #115315
- Clean up old metric alert rows in NotificationMessage by ceorourke in #115647
- Remove unused team alerts endpoints by ceorourke in #115339
- Remove team alerts triggered modal by ceorourke in #115336
Api
- Type nullable fields in the base group serializer by cvxluo in #116068
- Move
GroupEventDetailsResponse to event serializer module by cvxluo in #116058
- Resolve suggested_api from Django route names by strongs in #115907
- Migrate auth-error navigation off browserHistory by evanpurkhiser in #115935
- Move to_valid_int_id to a more central location by kcons in #115581
Apigw
- Add
abort_with_json as an util, allow config httpx client limits by gi0baro in #116037
- Enhance proxy implementation by gi0baro in #115892
Autofix
- Remove SCM requirement from autofix in #116206
- Remove legacy autofix path from GroupAutofixEndpoint by chromy in #116164
- Always use explorer mode in GroupAutofixEndpoint by chromy in #116162
- Remove old useAutofixData hook by Zylphrex in #116103
- Remove intelligence level from group ai autofix endpoint by Zylphrex in #116145
- Add log for autofix introspection reason by Zylphrex in #116132
- Remove unused autofix v1 UI by Zylphrex in #116100
- Use new Markdown primitive in v3 cards by priscilawebdev in #115879
- Check repo connected before starting autofix by Zylphrex in #115648
Conversations
- Adopt scraps primitives for 4 wrappers by priscilawebdev in #116082
- Default to 24h period in sidebar link by obostjancic in #115873
Dashboards
- Remove text widget flag defintion in #116212
- Remove text widget flag references frontend in #116210
- Remove text widget flag references backend in #116207
- Migrate utils.tsx off browserHistory by evanpurkhiser in #115923
- Migrate detail.tsx off browserHistory to useNavigate by evanpurkhiser in #115903
Discover
- Migrate fieldRenderers off browserHistory by evanpurkhiser in #115938
- Migrate transactionsList off browserHistory by evanpurkhiser in #115926
- Migrate queryList off browserHistory by evanpurkhiser in #115913
- Migrate savedQuery off browserHistory by evanpurkhiser in #115912
- Migrate results.tsx off browserHistory by evanpurkhiser in #115909
Dynamic Sampling
- In per org pipeline, retrieve the project ids in config retrieval, just once by shellmayr in #115983
- Use already queried data when computing boosted release platform by cmanallen in #115792
- Rename dynamic sampling status enum by shellmayr in #115360
- Cleanup transaction based health check rule by shellmayr in #115471
- Add status for snuba timeouts by shellmayr in #115359
Eslint
- Turn on no-unsafe-member-access for scraps in #116004
- Add curly rule to prettier config section by sentry-junior in #116158
- Enable no-unsafe-call for scraps by TkDodo in #115981
- Enable no-unsafe-arguments in scraps by TkDodo in #115877
- Enable no-unsafe-return for scraps by TkDodo in #115722
Flags
- Remove organizations:dashboards-drilldown-flow in #115670
- Remove organizations:scoped-partner-oauth by wedamija in #115675
- Remove organizations:dashboards-import by wedamija in #115671
- Remove organizations:revoke-org-auth-on-slug-rename by wedamija in #114807
- Remove organizations:tracemetrics-alerts gates (backend) by wedamija in #115019
- Remove organizations:workflow-engine-metric-alert-group-by-creation by wedamija in #114805
- Remove organizations:ourlogs-stats, replace with
organizations:explore-dev-features and move it to a permanent flag by wedamija in #115673
- Remove organizations:tracemetrics-alerts gates (frontend) by wedamija in #115018
- Remove organizations:performance-mep-reintroduce-histograms by wedamija in #115674
- Remove organizations:ingest-through-trusted-relays-only by wedamija in #115682
- Remove organizations:pr-page by wedamija in #115686
- Remove organizations:performance-remove-metrics-compatibility-fallback by wedamija in #115684
- Remove organizations:performance-transaction-name-only-search by wedamija in #115685
- Remove organizations:starfish-mobile-ui-module by wedamija in #115687
- Move organizations:init-sentry-toolbar to permanent by wedamija in #115862
- Remove organizations:on-demand-metrics-extraction-experimental by wedamija in #115683
- Remove organizations:view-hierarchies-options-dev by wedamija in #115678
- Remove organizations:issues-suspect-tags by wedamija in #115680
- Remove organizations:performance-spans-fields-stats by wedamija in #115679
- Remove organizations:update-action-status by wedamija in #115676
- Remove organizations:sentry-app-webhook-requests by wedamija in #114813
Forms
- Migrate projectFiltersSettings to scraps form system by TkDodo in #115783
- Migrate highlights settings by priscilawebdev in #115778
- Migrate early features settings by priscilawebdev in #115777
- Migrate keyRateLimitsForm off legacy Form by priscilawebdev in #115265
- Migrate addCodeOwnerModal off legacy Form by priscilawebdev in #115256
Instrumentation Issues
- Remove issue type config and types by ArthurKnaus in #115718
- Remove fix section UI by ArthurKnaus in #115717
- Remove nav entries and route by ArthurKnaus in #115715
Issues
- Use standard logging pattern in group details endpoint in #116262
- Remove redundant check on
event_id in #116261
- Indicate duration when "Since First Seen" is selected in #115533
- Remove grouping store by scttcper in #115970
- Remove the option gating custom tag resolver logic by shashjar in #116024
- Add multiple property to select field schema by amy-chen23 in #115814
- Prevent assigning issues to deactivated users by amy-chen23 in #115668
- Update frontend types after removing unnecessary issue activity metadata for Seer actions by shashjar in #115734
- Remove unnecessary structured metadata under issue activities for Seer actions by shashjar in #115732
- Remove stray
use_flagpole_for_all_features usage by lobsterkatie in #115537
Jest
- Mark flaky jest tests - 2026-05-25 by cursor in #116121
- Mark flaky jest tests - 2026-05-18 by cursor in #115729
Onboarding
- Convert CreateSampleEventButton to functional component by ryan953 in #115830
- Adopt useModal in onboarding flows by evanpurkhiser in #115127
Ourlogs
- Remove
expanded and window virtualizer from LogsInfiniteTable by JoshuaKGoldberg in #115884
- Remove ourlogs-table-expando flag backend code by JoshuaKGoldberg in #115794
- Remove ourlogs-table-expando flag frontend code by JoshuaKGoldberg in #115793
Preprod
- Simplify project filtering in latest base snapshot endpoint in #116237
- Optimize snapshot download with connection reuse and progressive streaming by NicoHinderling in #116051
- Use TimeToIdle instead of TimeToLive for upload expiration by NicoHinderling in #116033
- Virtualize snapshot sidebar for 40k image builds by NicoHinderling in #115836
- Replace snapshot status badges with plain text by mtopo27 in #115659
- Remove deprecated snapshot detail TS types and update debug modal by mtopo27 in #115653
- Remove deprecated comparison_run_info and approval_info from snapshot detail API by mtopo27 in #115652
Replays
- Remove unused data export notifications endpoint in #116232
- Replace useFetchSequentialPages with useInfiniteQuery by ryan953 in #116115
- Use shared platform icon resolver by priscilawebdev in #115705
Repositories
- Simplify ProjectRepoLink serializer and make url better by wedamija in #115826
- Drop old project/repository columns by wedamija in #115741
- Remove
project and repo columns from SeerProjectRepository and RepositoryProjectPathConfig by wedamija in #115663
- Add unique index on
repository_project columns by wedamija in #115662
- Remove feature flag branching for RepositoryProjectPathConfig reads by wedamija in #115607
- Remove feature flag branching for SeerProjectRepository reads by wedamija in #115606
Scm
- Merge integration-proxy endpoints by cmanallen in #116028
- Add quota policy for GitHub API requests by cmanallen in #115657
Seer
- Move agent access check from entrypoint to operator in #116143
- Use
elif instead of if in actionability filter logic for clarity in #116203
- Remove seer-slack-workflows and seer-slack-explorer flags in #116140
- Simplify block component states by natemoo-re in #115589
- Persist Seer Explorer input draft per run by aliu39 in #115919
- Replace chat history dropdown with searchable CompactSelect by JonasBa in #115843
- Rm severity group-seer option by kddubey in #115768
- Rm severity conditional routing by kddubey in #115765
- Option to route severity to group-seer by kddubey in #115702
Settings
- Update
action prop and remove hasPageFrame by natemoo-re in #115815
- Update breadcrumbTitle spec for routes prop removal by ryan953 in #115866
- Move routes from prop to useRoutes() in BreadcrumbTitle by ryan953 in #115766
- Convert OrganizationAccessRequests to function component with fetchMutation by ryan953 in #115813
- Replace billing navigation config with a react-hook by evanpurkhiser in #115808
Slack
- Remove widget unfurl feature flags by DominikB2014 in #116128
- Move ephemeral message sending to workspace module by leeandher in #115586
Snuba
- Port query subscriptions consumer to taskbroker raw mode in #116288
- Update tests for removal of boolean double-writing in #111421
- Stop dropping deprecated spans dataset in reset_snuba by phacops in #115973
- Add exception type for snuba timeouts by shellmayr in #115362
Spans
- Remove tests for deprecated standalone spans storage in #116147
- Extract flush_segment pipeline helpers by lvthanh03 in #116149
- Split load_segment_data into helper steps by lvthanh03 in #116136
- Split process_spans into typed pipeline steps by lvthanh03 in #115858
- Add back cumulative flusher log and flushed segments log by lvthanh03 in #116015
- Extract span buffer observability models by lvthanh03 in #115849
- Remove unused dropped_segments logic and zrem cleanup option by lvthanh03 in #115806
- Add isolated load segment data coverage by lvthanh03 in #115804
- Add add-buffer Lua script tests by lvthanh03 in #115801
Ts
- Remove RouteComponent by evanpurkhiser in #115999
- Remove unused RouteContextInterface type by evanpurkhiser in #115996
Typing
- Remove
tests.sentry.api.helpers.test_group_index from mypy ignore list in #116199
- Remove
tests.sentry.issues.test_utils from mypy ignore list in #116070
Utils
- Make ParityChecker print out mismatches in a PII safe way in #116038
- Various clarifications in
SafeRolloutComparator code in #115946
Workflow Engine
- Remove unused const in #116230
- Edit flag with the correct prefix in #116198
Other
- (✂️) Remove form leftovers by TkDodo in #115724
- (aci) Minor cleanup to delayed workflow processing by saponifi3d in #115758
- (activity) Remove duplicate call to calculate initial priority from group metadata by shashjar in #116067
- (api-docs) Add GroupDetailsResponse type, params, and example in #116113
- (autopilot) Delete autopilot module and all references by vgrozdanic in #115466
- (billing) Bump sentry-protos to 0.13.0 in #116133
- (billing-platform) Log requests in service methods by brendanhsentry in #115971
- (bootstrap) Parallelize locale and moment chunk fetches by JonasBa in #115727
- (cells) Remove the includeFeatureFlags query param from the org listing request by lynnagara in #115833
- (ci) Split MDX typechecking into its own gated job by natemoo-re in #115744
- (compactSelect) Remove unused onSectionToggle callback by TkDodo in #115809
- (deps) Update sentry conventions package by nsdeschenes in #115989
- (detectors) Split connected and project alerts into separate sections by malwilley in #115947
- (dynamic-ampling) Add a metric counter to see if we sometimes have implicit-factor < 1 by constantinius in #115834
- (eap) Query typed-colon attribute as boolean instead of number in #116299
- (events) Migrate ContextIcon to platformicons by priscilawebdev in #115701
- (explore) Port toolTags to scraps layout primitives by priscilawebdev in #116160
- (flagpole-wildcard-ops) Adding support for not_matches op (python) by Abdkhan14 in #115901
- (github-enterprise) Use monospace font for private key field in #116303
- (hooks) Replace HookStore with a plain hook registry by evanpurkhiser in #115811
- (hookStore) Change HookStore to single-value semantics by evanpurkhiser in #115796
- (integrations) Add backfill_github_external_actor.gh_api_fetch_interval_s by hobzcalvin in #115763
- (issueDetails) Collapse ParticipantList wrapper div to a Flex by evanpurkhiser in #116175
- (issueDiff) Refactor event data fetching to use useQueries in #116042
- (jira) Add Forge app manifest for Connect-to-Forge migration by BYK in #115603
- (lint) Ban React.Fragment in favor of named Fragment import by natemoo-re in #115939
- (metrics) Split metric attribute tree actions by nsdeschenes in #115641
- (mypy) Rename sort_stronger_modules to sort_weaklist in #116106
- (np) Refactors notification context into a new class by GabeVillalobos in #113495
- (organization-create) Drop dead browserHistory comment by evanpurkhiser in #115928
- (overrides) Finish hook → override terminology rename by evanpurkhiser in #115825
- (oxfmt) Ignore pyproject.toml by sentry-junior in #116181
- (pipeline) Use Button busy prop for advancing state by evanpurkhiser in #116179
- (plugins) Inline PluginComponentBase into its two subclasses by ryan953 in #116112
- (profiling) Rename explore/profiling URL to explore/profiles in #115627
- (project-detail) Migrate projectCharts off browserHistory by evanpurkhiser in #115916
- (releases) Convert ReleaseIssues to functional component by ryan953 in #115698
- (replay) Rename Breadcrumbs tab to Activity by DominikB2014 in #115278
- (routeAnalytics) Replace HookStore persistCallback with a plain module cell by evanpurkhiser in #115810
- (saved-queries) Align list endpoint access checks with detail by oioki in #115379
- (scraps) Adopt useModal in remaining call sites by evanpurkhiser in #115132
- (search) Add EAP API attribute visibility checks in #116091
- (seer-explorer) Replace useSeerExplorerRunId with chat state context by JonasBa in #115631
- (segments) Add local cache for release creation and modification by cmanallen in #116173
- (snapshots) Batch image fetches and add timeouts for snapshot download by NicoHinderling in #116076
- (source-map-processing-errors) Emitting metric irrespective of … by Abdkhan14 in #115661
- (span-buffer) Remove flusher and buffer logger options by untitaker in #115487
- (static) Add preload hint for app.js entrypoint by JonasBa in #115800
- (tasks) Remove base64 encoding for bytes parameters in tasks in #116293
- (taskworker) Move devenv for profiles consumer to taskbroker in #116194
- (teams) Avoid organization N+1 in team projects by scttcper in #115735
- (test) Remove router return from initializeOrg by evanpurkhiser in #116002
- (tests) Replace
as jest.Mock casts with jest.mocked() by evanpurkhiser in #115790
- (trace) Migrate virtualizedViewManager off browserHistory by evanpurkhiser in #115927
- (traceDrawer) Replace local SectionDivider/VerticalLine with Scraps Separator in #116168
- (types) Add mypy types for sentry.search.snuba.executors by saponifi3d in #114994
- (ui) Upgrade lodash, figma connect by scttcper in #115950
- (vercel) Add logs on failure to add project in #116235
- (workflows) Avoid a query on Organization in delayed_workflow by **kcon
Changelog truncated for issue body.
Requested by: @gricha
Merge target: (default)
Quick links:
Assign the accepted label to this issue to approve the release.
Targets
Checked targets will be skipped (either already published or user-requested skip). Uncheck to retry a target.
📋 Changelog
New Features ✨
Apigw
Autofix
Cells
Cmdk
Conversations
Dashboards
Explore
Github Enterprise
Issues
SEER_PR_CREATEDactivity creation and hide from timeline in #116233Low Value Spans
Onboarding
@sentry/honoby s1gr1d in #115476Ourlogs
Preprod
Search
Seer
Tracemetrics
Webhooks
Other
apigwpackage by gi0baro in #115624sizeprop toButtonBarviaSizeContextby natemoo-re in #115728Defaultprop by natemoo-re in #115745Bug Fixes 🐛
Alerts
Api
fullparameter in project events endpoint in #116216Conversations
Dashboards
Discover
Dynamic Sampling
Events
Explore
Integrations
Issues
StreamGroupSerializerSnubafeature flag check in #116259search.sortSDK tag by shashjar in #116065Metrics
Monitors
Onboarding
Perforce
Preprod
Replays
Search
Seer
Settings
Snapshots
Tests
Tracemetrics
Ui
Workflow Engine
Other
Documentation 📚
Internal Changes 🔧
Admin
Alerts
Api
GroupEventDetailsResponseto event serializer module by cvxluo in #116058Apigw
abort_with_jsonas an util, allow config httpx client limits by gi0baro in #116037Autofix
Conversations
Dashboards
Discover
Dynamic Sampling
Eslint
Flags
organizations:explore-dev-featuresand move it to a permanent flag by wedamija in #115673Forms
Instrumentation Issues
Issues
event_idin #116261use_flagpole_for_all_featuresusage by lobsterkatie in #115537Jest
Onboarding
Ourlogs
expandedand window virtualizer from LogsInfiniteTable by JoshuaKGoldberg in #115884Preprod
Replays
Repositories
projectandrepocolumns fromSeerProjectRepositoryandRepositoryProjectPathConfigby wedamija in #115663repository_projectcolumns by wedamija in #115662Scm
Seer
elifinstead ofifin actionability filter logic for clarity in #116203Settings
actionprop and removehasPageFrameby natemoo-re in #115815Slack
Snuba
Spans
Ts
Typing
tests.sentry.api.helpers.test_group_indexfrom mypy ignore list in #116199tests.sentry.issues.test_utilsfrom mypy ignore list in #116070Utils
SafeRolloutComparatorcode in #115946Workflow Engine
Other
as jest.Mockcasts withjest.mocked()by evanpurkhiser in #115790Changelog truncated for issue body.