05/23 Phase 16
This commit is contained in:
@@ -341,6 +341,20 @@ All actions are logged to console and optionally to a log file:
|
||||
|
||||
---
|
||||
|
||||
### ✅ Phase 17 — Predictor Power Features
|
||||
- [x] Add `quick_pick(game_id, exclude=None)` to `core/predictor.py` — pure random, no draw history required
|
||||
- [x] Add `exclude: set | None = None` parameter to all 5 existing strategies + `_random_ticket` + `_fill_to_count`
|
||||
- [x] Falls back silently to full pool if excluded numbers would leave fewer candidates than `main_count`
|
||||
- [x] Add `_safe_pool(game, exclude)` helper used by weighted_random and monte_carlo
|
||||
- [x] Update `ui/predictor_ui.py`
|
||||
- [x] Add "Quick Pick" to `_STRATEGIES` and `_DESCRIPTIONS`
|
||||
- [x] Add "Exclude:" entry field to Generate tab bar (comma/space-separated integers)
|
||||
- [x] Pass parsed exclusion set to strategy on generate
|
||||
- [x] Add "Copy" button — copies all generated tickets to clipboard as formatted text; enabled/disabled with generate/clear
|
||||
- [x] Write `tests/test_quick_pick.py` — 20 tests (326/326 total passing)
|
||||
|
||||
---
|
||||
|
||||
### ✅ Phase 16 — Lottery Ball Display
|
||||
- [x] Write `ui/widgets.py`
|
||||
- [x] `ball_color(number, is_bonus) -> (bg, fg)` — range-based colour lookup (pure, no Tk)
|
||||
|
||||
Reference in New Issue
Block a user