Changes
- Fix public Status Page Subscribe logout
- PR: #3053
- test(Common): add tests for Types/Monitor/SnmpMonitor/SnmpVendorTemplateUtil
- PR: #3050
- test(metrics): cover tokenizer, error shapes and associativity in RecordingRuleExpression
- PR: #3048
- fix(monitor): read domain registration over RDAP, and stop reporting an empty WHOIS reply as healthy
- PR: #3055
- fix(kubernetes-agent): pin every workload to Linux nodes so Windows pools don't ImagePullBackOff
- PR: #3057
- fix(helm): pin every oneuptime chart pod to Linux nodes
- PR: #3063
- fix(incident): show telemetry previews at the snapshot time, not the past hour
- PR: #3060
- Separate incident and alert AI settings
- PR: #3066
- Show AI investigation status in incident header
- PR: #3067
- feat(monitor): add labels to create form
- PR: #3059
- Add downloadable error support bundles
- PR: #3061
- Fix port monitor connection phase timings
- PR: #3062
- fix(identity): harden dashboard and status page master password hashing
- PR: #3065
- Improve incident, alert, and maintenance action controls
- PR: #3064
- Show completed AI investigation reports
- PR: #3068
- fix(clickhouse): survive distributed DDL confirmation timeouts during migrations
- PR: #3070
- fix: hide PR actions for non-code investigations
- PR: #3074
- fix(ci): repair the two App jobs failing on master
- PR: #3075
- fix(compile): unbreak compile-dashboard on the saved-log-view update
- PR: #3076
- fix(ci): unbreak Common Test — 29 security tests were never running
- PR: #3079
- fix(terraform): mark worker-written notification messages computed
- PR: #3080
- fix(e2e): match the Labels combobox by its real accessible name
- PR: #3081
- test(common): add coverage for infrastructure metric catalogs
- PR: #3082
- test(common): cover session-replay masking mode and dashboard templates
- PR: #3083
- test(e2e): assert Home install-script shortcuts redirect to release scripts
- PR: #3084