v1.3.1
Award Tracker v1.3.1
Bug fixes, test resilience improvements, and a refactor to eliminate duplicated interactive login instructions across templates.
🚀 New Features & Fixes
- Marriott Expiration Fix (issue #84): Fixed incorrect expiration date detection where the regex was matching a session token (
expiresIn) instead of the actual points expiration date, causing points to incorrectly show as expired. - JetBlue Session Loop Fix (issue #83): Fixed sync loop when the user didn't check "Keep me signed in" during interactive login. Sync now reports a clear error instead of looping, and the interactive login prompt explicitly warns users to check "Keep me signed in" in bold red.
- Test Resilience: Made 5 previously failing tests resilient to missing optional dependencies (
psutil,dateutil) and absent local reference HTML files by usingskipTestand stdlib alternatives. - Interactive Login Instructions Refactor: Moved all plugin-specific interactive login modal instructions (JetBlue, British Airways, Wyndham, Virgin Atlantic, Air Canada) from hardcoded JS if/else chains in templates into structured
interactive_login_instructionsproperties on each plugin class. Adding instructions for new plugins now only requires a property override in the plugin file. - Pre-push Test Requirement: Updated AGENTS.md to mandate running the full test suite before any push-to-remote workflow.
- New Tests: Added 8 tests covering interactive login instruction properties, template helper, and plugin mode consistency.
📁 Commits in this Release
68b34d5fix(marriott): fix incorrect expiration date detection and display (issue #84) (#87)0fbfe07Merge pull request #88 from shyoo/fix-test-failuresae7930dfix(tests): make 5 failing tests resilient to missing optional dependencies and reference files7d072b5Merge pull request #89 from shyoo/fix-jetblue-session-loop471082bfix(jetblue): stop sync loop when session expired and clarify "Keep me signed in" requirement (issue #83)c0d6074refactor(interactive-login): move plugin-specific login instructions into plugin classes, add pre-push test step to AGENTS.md, and bump version to v1.3.1