You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+81Lines changed: 81 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,6 +5,87 @@ All notable changes to this project will be documented in this file.
5
5
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
8
+
## [2.3.0] - 2026-03-18
9
+
10
+
### Important
11
+
12
+
-**Schema upgrade**: Six columns widened across three tables (`query_stats`, `cpu_scheduler_stats`, `waiting_tasks`, `database_size_stats`) to match DMV documentation types. These are in-place ALTER COLUMN operations — fast on any table size, no data migration. Upgrade scripts run automatically via the CLI/GUI installer.
13
+
-**SQL Server version check**: Both installers now reject SQL Server 2014 and earlier before running any scripts, with a clear error message. Azure MI (EngineEdition 8) is always accepted. ([#543])
14
+
-**Installer adversarial tests**: 35 automated tests covering upgrade failures, data survival, idempotency, version detection fallback, file filtering, restricted permissions, and more. These run as part of pre-release validation. ([#543])
15
+
16
+
### Added
17
+
18
+
-**ErikAI analysis engine** — rule-based inference engine for Lite that scores server health across wait stats, CPU, memory, I/O, blocking, tempdb, and query performance. Surfaces actionable findings with severity, detail, and recommended actions. Includes anomaly detection (baseline comparison for acute deviations), bad actor detection (per-query scoring for consistently terrible queries), and CPU spike detection for bursty workloads. ([#589], [#593])
19
+
-**ErikAI Dashboard port** — full analysis engine ported to Dashboard with SQL Server backend ([#590])
-**On-demand plan fetch** for bad actor and analysis findings — click to retrieve execution plans for flagged queries ([#604])
24
+
-**Plan analysis integration** — findings include execution plan analysis when plans are available ([#594])
25
+
-**Server unreachable email alerts** — Dashboard sends email (not just tray notification) when a monitored server goes offline or comes back online ([#529])
26
+
-**Column filters on all FinOps DataGrids** — filter funnel icons on every column header across all 7 FinOps grids in Lite and Dashboard ([#562])
27
+
-**Column filters on Dashboard** IdleDatabases, TempDB, and Index Analysis grids
28
+
-**Lite data import** — "Import Data" button brings in monitoring history from a previous Lite install via parquet files, preserving trend data across version upgrades ([#566])
29
+
-**Per-server Utility Database setting** — Lite can call community stored procedures (sp_IndexCleanup) from a database other than master ([#555])
30
+
-**SQL Server version check** in both CLI and GUI installers — rejects 2014 and earlier with a clear message ([#543])
31
+
-**Execution plan analysis MCP tools** for both Dashboard and Lite
32
+
-**Full MCP tool coverage** — Dashboard expanded from 28 to 57 tools, Lite from 32 to 51 tools ([#576], [#577])
-**NuGet package dependency licenses** in THIRD_PARTY_NOTICES.md
35
+
36
+
### Changed
37
+
38
+
-**Azure SQL DB FinOps** — all collectors (database sizes, query stats, file I/O) now connect to each database individually instead of only querying master. Server Inventory uses dynamic SQL to avoid `sys.master_files` dependency. ([#557])
39
+
-**Index Analysis scroll fix** — both summary and detail grids now use proportional heights instead of Auto, so they scroll independently with large result sets ([#554])
40
+
-**Dashboard Add Server dialog** — increased MaxHeight from 700 to 850px so buttons are visible when SQL auth fields are shown
41
+
-**GUI installer** — Uninstall button now correctly enables after a successful install
42
+
-**GUI installer** — fixed encryption mapping and history logging ([#612])
43
+
-**Dashboard visible sub-tab only refresh** on auto-refresh ticks ([#528])
44
+
- Analysis engine decouples data maturity check from analysis window
45
+
46
+
### Fixed
47
+
48
+
-**Installer dropping database on every upgrade** — `00_uninstall.sql` excluded from install file list, installer aborts on upgrade failure, version detection fallback returns "1.0.0" instead of null ([#538], [#539])
49
+
-**SQL dumps on mirroring passive servers** from FinOps collectors ([#535])
0 commit comments