# FuelDirect 057.007.072 Release Notes Release date: August 11, 2026 Release type: Official, standard four-channel FuelDirect/Classic GitHub release commit: `6d66ba3ecf0ed2cf682631c9705b19e5a989ff58` ## Comparison Baseline The legacy Atlanta source repository (`fueldirect_007_app.git`) ended at version `057.007.071`, commit `ce1b5d758b2bd6ff435389d32a6f5887bd813846`, dated June 3, 2024. This is the direct source baseline for these notes. Atlanta's separate build-capture repository (`fueldirect_007_git.git`) records `057.007.068`, captured February 22, 2022, as the last standard `057.007` official build artifact. It contains no later standard `.069`, `.070`, or `.071` capture. Sites upgrading from the last recorded official legacy artifact should therefore treat this as an upgrade from `.068` to `.072`. ## Highlights - Migrated the maintained FuelDirect build to GitHub and a fully Windows-based Visual Studio 2022 workflow. The retired Linux-to-Windows builder chain is no longer required. - Restored and locked down the standard four-channel personality, including correct channel numbering, diagnostics selection, and Dispensers/Readers Port Select behavior. - Improved dispenser and communication diagnostics so field logs consistently identify the one-based dispenser position, model, direction, and timestamp. - Hardened protocol calculations and conversions against invalid values, signed-byte errors, divide-by-zero conditions, and numeric overflow. - Improved OLE command results and rebuilt COM registration around per-user registration, avoiding an administrator/UAC requirement. - Added repeatable release packaging, generated version metadata, and validation that rejects stale or incorrectly identified builds. ## Operator-Visible Fixes - Corrected standard four-channel diagnostics to display and accept channels 1 through 4. - Restored the Dispensers/Readers Port Select dialog in the standard build. - Removed debug borders and blank placeholder artwork from unconfigured pump and reader tiles. - Preserved hidden-window behavior when FuelDirect is launched for automation. - Restored Help menu routing for revision information, contents, index, and search. - Added staged startup-splash progress tied to actual initialization milestones. - Added clearer licensing notifications, including the supported notification-suppression option. - Reduced repetitive reader-state, pump-save, dongle-check, and DRM diagnostic noise. ## Dispenser and Communication Diagnostics - Added timestamps and transmit/receive direction to Monitor Pump records. - Standardized pump identification in diagnostics as one-based `pos=xx` values. - Added model-aware configuration reporting, including improved Tokheim model identification. - Added Wayne calibration-factor and BCD-command-mode reporting. - Added the dispenser position to Gilbarco digit-mode and sale-flow logging. - Improved reporting for Bennett and other dispenser configuration paths. - Improved message-ring startup, final log flushing, repeated ring captures, output-file reporting, and failure reporting. ## Reliability and Protocol Safety - Added checked conversions for dispenser prices, licensing CRC values, event lengths, and timestamps. - Rejected invalid, negative, non-finite, zero, and overflowing values where they could corrupt protocol calculations. - Corrected Wayne CRC processing so protocol bytes with the high bit set remain unsigned. - Guarded Wayne preset calculations against zero prices and zero calibration factors. - Added defined divide-by-zero behavior and regression coverage for fixed-point arithmetic. - Corrected shutdown ordering so pump state is persisted before pump tasks stop and final deferred logs are flushed synchronously. - Corrected OLE/PCC beeper commands to return deterministic success or failure results. ## Registration and Runtime Packaging - Changed FuelDirect and PCCWin COM registration to the current user, covering both 32-bit and 64-bit registry views without requiring elevation. - Added cleanup of stale COM and type-library registration trees before replacement. - Added validation of the current `FD_OLE.tlb` before registration. - Ensured `FD_OLE.tlb`, validated licensing DLLs, message-ring helpers, Help, and revision files are copied beside `FuelDirect.exe` and included in release packaging. - Retained the legacy Inno Setup installer inputs for supported installer builds. ## Build and Release Changes - Added `FuelDirect.sln` and Visual Studio 2022 `Win32` Debug and Release builds. - Removed unused Linux, MinGW, STM32, and orphaned cross-platform build/test infrastructure from the maintained Windows tree. - Added native regression tests and source-contract checks that run before application builds and F5 launches. - Treats compiler warnings as build failures for both production and native-test targets. - Regenerates version, personality, OLE, resource, and logging inputs on every build. - Validates the completed executable, four-channel personality, version resources, support files, and disabled startup free-time setting after linking. - Separates Official and Bootleg identities. Official builds require Release configuration and a clean Git working tree; Bootleg packages carry an explicit revision suffix. - Produces release metadata and ZIP packaging with the version, commit, configuration, release kind, dirty-tree state, and build time. ## Validation - The current official executable reports file and product version `057.007.072`. - Release metadata identifies clean Git commit `6d66ba3ecf0ed2cf682631c9705b19e5a989ff58` and release kind `OFFICIAL`. - The post-link validator reports: `Release 057.007.072 (four channels, free time disabled)`. - The current build/source contract suite passes. - The native regression suite covers OLE result mapping, monitor timestamps, bounded numeric conversion, event and timestamp clamping, Wayne CRC behavior, and fixed-point arithmetic. ## Deployment Notes - This is the standard four-channel build; it is not a special 20-channel or customer-specific `957.*` build. - Existing `057.007.*` base-environment compatibility is retained. - Back up the site's configuration and runtime data before replacing an installed executable. - Deploy the runtime files from the generated release bundle together; do not copy only `FuelDirect.exe` from an intermediate build directory.