Release v0.4.2 - Structured Application Logging & Global Exception Handling
Pre-release🛠️ Feature Enhancements & Observability
Structured Application Logging: Integrated standard logging across services/ and database.py to record domain events, operational state changes, and database errors.
Log Rotation & Configuration: Added RotatingFileHandler support (1 MB max size, 3 backup files) driven by .env variables (LOG_FILE, LOG_LEVEL) and added log files to .gitignore.
Global Crash Diagnostics: Added top-level unhandled exception capture in main.py using logger.exception() to record full stack traces upon application failure.
🛡️ Error Handling & Auditing
Complete Purchase Failure Auditing: Fixed a logging gap where pre-transaction out-of-stock validation checks failed silently in logs; both pre-transaction and in-transaction stock failures are now recorded.
CLI Output Separation: Restricted console log output strictly to WARNING level and above, preserving clean user-facing CLI menus rendered via user_interface/ print() functions.
Full Changelog: v0.4.1...v0.4.2