# Changelog

## Score

- CAI 49 → 50 (+0.1)
- Rubric changed (rubric-2026.08.17 → rubric-2026.09.15) — scores are not directly comparable.

## Lenses

- Code Health 80 → 65 (-15.0)
- Architecture 61 → 66 (+5.5)
- Maturity 55 → 59 (+4.4)
- Readiness 33 → 33 (+0.0)
- Security 100 → 87 (-13.3)

## Resolved (54)

- Build did not complete in the analyzer
- Change coupling: ControlExtensions.vb ↔ Form1.vb (src/CareLink/Extensions/ControlExtensions.vb)
- Change coupling: CountryCodes.vb ↔ Form1.vb (src/CareLink/Extensions/CountryCodes.vb)
- Change coupling: DrawingExtensions.vb ↔ Form1.vb (src/CareLink/Extensions/DrawingExtensions.vb)
- Change coupling: Form1.vb ↔ ColorDictionaryHelpers.vb (src/CareLink/Forms/Form1.vb)
- Change coupling: Form1.vb ↔ CountrySettingsRecord.vb (src/CareLink/Forms/Form1.vb)
- Change coupling: Form1.vb ↔ ExceptionHelpers.vb (src/CareLink/Forms/Form1.vb)
- Change coupling: Form1.vb ↔ ItemIndexesModule.vb (src/CareLink/Forms/Form1.vb)
- Change coupling: Form1.vb ↔ PumpVariables.vb (src/CareLink/Forms/Form1.vb)
- Change coupling: MathExtensions.vb ↔ Form1.vb (src/CareLink/Extensions/MathExtensions.vb)
- Change coupling: SensorRecord.vb ↔ UtilitiesRecord.vb (src/CareLink/Records/UserDataRecords/PDF DeviceSettings/SensorRecord.vb)
- Coverage not measured — test suite did not build
- DeviceSettingsExtensions.GetSingleLineValue (cognitive 53) (src/CareLink/Records/UserDataRecords/PDF DeviceSettings/DeviceSettingsExtensions.vb)
- DeviceSettingsExtensions.GetSingleLineValue (cyclomatic 22) (src/CareLink/Records/UserDataRecords/PDF DeviceSettings/DeviceSettingsExtensions.vb)
- Discover.GetDiscoveryData (cognitive 19) (src/CareLink/Utilities/Discover.vb)
- Duplicated block (12 lines × 2) (src/CareLink/Forms/Form1.vb)
- Duplicated block (13 lines × 2) (src/CareLink/Extensions/SgExtensions.vb)
- Duplicated block (17–85 lines × 2) (src/CareLink/Extensions/JsonExtensions.vb)
- Duplicated block (20 lines × 2) (src/CareLink/Records/UserDataRecords/PDF DeviceSettings/HighAlertRecord.vb)
- Duplicated block (6 lines × 2) (src/CareLink/Records/UserDataRecords/PDF DeviceSettings/PresetBolusRecord.vb)
- …and 34 more

## New (183)

- BitmapCache.ReplaceTempBitmap (cognitive 22) (src/CareLink/Helpers/Form1Helpers/BitmapCache.vb)
- CareLinkService.ResolveEndpointConfigFromDiscoveryAsync (cognitive 18) (src/CareLink/Helpers/LoginHelpers/CareLinkService.vb)
- Change coupling: ActiveInsulin.vb ↔ Limit.vb (src/CareLink/Records/PatientData/ActiveInsulin.vb)
- Change-coupling hub: Form1.vb → DgvCellStyleHelpers.vb, DgvColumnEventArgsExtensions.vb, InitializeDialog.vb, ControlExtensions.vb, DateTimeExtensions.vb, DrawingExtensions.vb, MathExtensions.vb, StringExtensions.vb, TimeZoneExtensions.vb, CalloutHelpers.vb, PaintMarkerExtensions.vb, PlotSeriesBasal.vb, ColorDictionaryHelpers.vb, ExceptionHelpers.vb, FileIoHelpers.vb, Form1CollectMarkersHelper.vb, CareLinkService.vb, OAuthBrowserForm.vb, LegacyPdfParser.vb, RunningActiveInsulinHelpers.vb, SummaryHelpers.vb, TimeConstants.vb, PumpVariables.vb, SystemVariables.vb, ItemIndexesModule.vb, Discover.vb, FileUtilities.vb (src/CareLink/Forms/Form1.vb)
- ClassTooLong: LoginDialog (src/CareLink/Dialogs/LoginDialog.vb)
- ClassTooLong: LoginHelpers (src/CareLink/Helpers/LoginHelpers/LoginHelpers.vb)
- ClassTooLong: RegionCountryLists (src/CareLink/Extensions/CountryCodes.vb)
- ClassTooLong: SummaryHelpers (src/CareLink/Helpers/PatientDataHelpers/SummaryHelpers.vb)
- Client2.DoRefreshAsync (cognitive 24) (src/CareLink/CareLinkCommunications/Client2.vb)
- Client2.DoRefreshAsync (cyclomatic 18) (src/CareLink/CareLinkCommunications/Client2.vb)
- Client2.internalInit (cyclomatic 16) (src/CareLink/CareLinkCommunications/Client2.vb)
- Coverage not measured — test suite did not build
- DeviceSettingsExtensions.GetSingleLineValue (cognitive 40) (src/CareLink/Extensions/PdfParseExtensions/DeviceSettingsExtensions.vb)
- DeviceSettingsExtensions.GetSingleLineValue (cognitive 53) (src/CareLink/Extensions/PdfParseExtensions/DeviceSettingsExtensions.vb)
- DeviceSettingsExtensions.GetSingleLineValue (cyclomatic 19) (src/CareLink/Extensions/PdfParseExtensions/DeviceSettingsExtensions.vb)
- DeviceSettingsExtensions.GetSingleLineValue (cyclomatic 22) (src/CareLink/Extensions/PdfParseExtensions/DeviceSettingsExtensions.vb)
- Discover.GetConfigJson (cognitive 20) (src/CareLink/Utilities/Discover.vb)
- Discover.GetDiscoveryDataAsync (cognitive 20) (src/CareLink/Utilities/Discover.vb)
- Documentation: no installation or build instructions (README.md)
- Documentation: no usage examples (README.md)
- …and 163 more

## Changes since last survey

- 111 commits — 80 feature/other, 31 fixes

## By area

- src/CareLink — 94 commits
- (root) — 8 commits
- src/TestProject — 7 commits
- (repo) — 2 commits

## Notable commits

- fix: Add Flag support to login Fix ActiveInsulin Estimate to for FLex
- fix: Add URL display WebView2 Form Fix logic for now US/Clinical servers
- fix: Add support for  e.VisualStylesMode Add .Net Version to Status Bar Fix a few Buttons that were clipped with VisualStylesMode.Net11
- fix: Adjust Text Position on Shield Update all PUmp Battery Images Fix Crash in Image Helper Fully decode Json and use  <JsonExtensionData> Public Property AdditionalProperties As Dictionary(Of String, JsonElement)
- fix: Cache most of the fonts Fix issue with new login process that broke login for some users. Fixed formating of Time where : was separed by a space in addation colon. Added new message to support new CareLink™ API.
- fix: Cleanup MenuStartHere_DropDownOpening Move LoginHelper to propper Folder Fix UpdateSeparators to use Avaiable not Visible.
- fix: Finally fix refresh issue
- fix: Fix CursorPanel positioning
- fix: Fix CursorPictureBox Visible with InfusionSet
- fix: Fix HitTest to properly show the Infusion Set State.
- fix: Fix Simplera Like Display
- fix: Fix SummaryChart Y1 Axis formating
- fix: Fix Token Logging Fix Advnaced AIT messages
- fix: Fix ToolStringSeparator Name Hide unneeded Separators
- fix: Fix access token expiration message
- fix: Fix capitalization of Type names
- fix: Fix crash in LoginDialog.Show when its already visible
- fix: Fix crash in second login or login from Menu. Remove Panels that are causing issue is control positioning
- fix: Fix deadlocks
- fix: Fix messaging and logginf for Token Expiration Improve WebView2 Deployment.
- …and 91 more
