Margin Master

Margin Master 2026.901.28986

Published September 1, 2026

Strategy & Pricing

Resolved a critical bug where certain rounding schemes would stop generating price bands partway through, leaving prices above the stall point unrounded. The issue occurred when a price rounded below itself to a value the previous band didn't cover, causing the generator to repeat the same bands until hitting the row limit.

User Interface

The lesson catalog now organizes lessons by topic (matching the documentation structure), supports multi-part lesson series with navigation between parts, and uses a numbering convention where the thousands digit indicates the topic area (1xxx = Getting Started, 2xxx = Pricing & Analysis, etc.).

The training window now shows the lesson browser and player side by side in a single card, starts centred on the current monitor, remembers its position and browse state, and automatically moves aside when a dialog would cover it on narrow screens.

The training window now has two modes: a large library view with a searchable tree of lessons and detailed descriptions, and a compact speech-bubble callout that follows the highlighted controls during lessons. The library replaces the previous collapsible list with a richer browsing experience showing lesson steps, progress, and navigation between series parts.

The training system now separates interactive "guides" (user performs each step) from educational "lessons" (app demonstrates). The training bubble intelligently avoids open menus and dialogs, and a new "Creating a new database" guide walks users through the database creation process.

Adds an in-app lesson editor for developers to revise step wording with live text-to-speech preview, publishes a six-part main window overview series covering menus, selection boxes, buttons, grid, summary and pricing panel, and introduces guided training for database creation and POS data import.

Performance & Reliability

Added a startup check that detects when Windows permissions prevent Margin Master from saving settings files (like DatabaseConnections.json) in its ProgramData folder. Previously, this surfaced as "User cancelled" errors and caused the database setup to loop on every launch; now the app shows a clear error message explaining the permission problem and how to fix it.

Infrastructure & Internal

Fixed a critical bug where export operations could fail with "Access denied" when the default export path setting was missing or blank. All import and export operations now consistently resolve to C:\MarginMaster (or the configured path) instead of sometimes defaulting to the C:\ drive root, which standard users cannot write to.

See all Margin Master releases