🚀 Features
- feat(notification-channels): add the telegram channel form (#13119) @AshwinBhatkal
- feat(authz): enable FGA for metrics explorer routes (#13150) @vikrantgupta25
- feat: enabled logs and added collection strategy for gcp integration (#13184) @swapnil-signoz
- feat(notification-channels): move the channels UI onto the v2 API with a redesigned list (#12976) @AshwinBhatkal
- feat(notification-channels): rebuild the channels list on the v2 API (#13128) @AshwinBhatkal
- feat(alerts): Support telegram channel for alerts (#13074) @praneeth-signoz
- feat(saved-views): turn on saved views and the bottom strip (#13125) @aks07
- feat(trace-details): waterfall tooltip redesign and AI span badges (#13066) @tewarig
- feat(logs): move the list row filter chips off v3 attribute keys (#13148) @aks07
- feat(saved-views): gate saved views on their permissions (#13027) @aks07
- feat(ruler): add clone alert rule API (#13093) @nikhilmantri0902
- feat(querier): read traces json numbers as toFloat64OrNull and index that (#13101) @krsoninikhil
- feat(promote): index materialized paths on their json sub-columns (#13054) @krsoninikhil
- feat(charts): mark partial time buckets with a dotted ring (#13165) @ahrefabhi
- feat(authz): enable FGA for infra monitoring routes (#13143) @vikrantgupta25
- feat: use allow list in getSpanDisplayData (#13124) @tewarig
- feat(tracedetail): format raw Anthropic and Gemini bodies, skip embeddings (#13141) @nityanandagohain
- feat(tracedetail): format OpenRouter answers and Vercel AI SDK prompts (#13139) @nityanandagohain
- feat(tracedetail): format LangChain serialised runs (#13137) @nityanandagohain
- feat(statsreporter): open the stats endpoint to every authenticated caller (#13152) @vikrantgupta25
- feat(tracedetail): format OpenAI Responses bodies (#13136) @nityanandagohain
- feat(tracedetail): format openllmetry legacy prompt and completion keys (#13135) @nityanandagohain
- feat(tracedetail): format OpenInference flattened messages (#13133) @nityanandagohain
- feat(tracedetail): format gen_ai system instructions and finish reasons (#13131) @nityanandagohain
- feat(components): adopt @signozhq/ui 0.2.0 across the app (#12971) @manika-signoz
- feat: return formatted gen ai message in waterfall (#13121) @nityanandagohain
- feat(query-builder): field placeholders, default row limit and synced fields (#13113) @ahrefabhi
- feat: update ai attribute mapping (#13120) @nityanandagohain
- feat: thread rows by the gen_ai gate, formatted tool spans (#13115) @nityanandagohain
- feat(trace-details): move the span filter and span actions off v3 query APIs (#13134) @aks07
- feat(query-builder): move group-by and order-by key suggestions to the v5 fields API (#13127) @aks07
- feat(saved-views): hide the old saved views ui behind the flag (#13028) @aks07
- feat(saved-views): all views panel in the quick filters sidebar (#13022) @aks07
🐛 Bug Fixes
- fix(notification-channels): apply the review follow-ups on the channel screens (#13214) @AshwinBhatkal
- fix(metricreduction): type the no-kept-labels preview count so the driver can scan it (#13221) @vikrantgupta25
- fix(exceptions): keep the filter pills when running the query (#13204) @aks07
- fix(explorer): stop reporting dropped order by to sentry (#13153) @aks07
- fix(tracedetail): keep litellm tool calls and AI SDK JSON answers, mark redacted media (#13166) @nityanandagohain
- fix(onboarding): link docs by final URL and dedupe swift data source (#13161) @crazyuploader
- fix(alerts): drop vulnerable v1 rule history endpoints (#12163) @therealpandey
- fix: hide create alert in case of ai query (#13122) @tewarig
- fix(onboarding): link docs by final URL and dedupe swift data source (#13161) @crazyuploader
🧰 Maintenance
- chore: drop sloglint key-naming-case (#13220) @namanv3
- chore(e2e): address tinypool audit (#13205) @H4ad
- chore(notification-channels): remove the v1 channel client and the old list (#12974) @AshwinBhatkal
- chore(openapi): keep field descriptions on referenced properties (#13194) @srikanthccv
- chore(audit): address tinypool audit (#13203) @H4ad
- test(e2e): cover the notification channel list, create and delete flows (#13216) @AshwinBhatkal
- docs(authz): explain telemetry resources versus metaresources (#13186) @vikrantgupta25
- ci(e2e): stop label events from failing the e2e check (#13167) @AshwinBhatkal
- test(saved-views): authz stories for each missing permission (#13172) @aks07
- ci(e2e): run e2e on every PR that changes the frontend (#13147) @AshwinBhatkal
- test(e2e): add e2e for routing (#13078) @H4ad
- docs: require a copy control for resource selectors in the authz guide (#13140) @vikrantgupta25
- docs(skills): add a screenshot diff skill and fix misleading test advice (#13206) @AshwinBhatkal
Full Changelog: v0.146.0...v0.147.0