Commit Graph
1066 Commits
Author SHA1 Message Date
alex 4b339228fe fix(ci): merge coverage into pytest step to fix Coverage failure 2026-05-30 09:41:50 +02:00
alex 43f973ebc2 bump version to 0.8.4 2026-05-30 09:34:41 +02:00
alex 16a4d121c0 feat: log rotation with Discord notifications + failure reason tracking
- Add utils/log_rotation.py: safe_imwrite() auto-rotates screenshot dirs
  when they exceed configured file count or size limits
- Add [log_rotation] config section in params.ini (pickit/info/items
  max_files, max_mb, discord_notify_rotation)
- Replace 40 cv2.imwrite() calls with safe_imwrite() across 13 files
- Add failure reason tracking: bot.py catches run exceptions, stores
  reason in game_stats, Discord message includes the error
- Add Discord notification when log rotation deletes old files
- Prevents disk-full crashes that stopped botty on May 30
2026-05-30 09:32:24 +02:00
alex be874f3275 Ignore debug_forum.html and fg_daily_estimates.json 2026-05-28 20:43:03 +02:00
alex 719b0b1dea Clean up .gitignore: add data/, screenshots/, tools/__pycache__, remove duplicates 2026-05-28 19:27:57 +02:00
alex c228fa9661 Add log/ and *.log to .gitignore
- Ignore log/, log/archive/, log/runs/, log/stats/, *.log
- Remove duplicate *.log and log/ entries that were lower in the file
2026-05-28 19:12:45 +02:00
alex 8853620786 Archive rotated logs to log/archive/ as zips
- Custom ArchiveRotatingFileHandler zips old log.txt.N files
  into log/archive/log_YYYYMMDD_HHMMSS.zip
- Keeps log/ directory clean — no loose .txt.1 files
2026-05-28 19:12:18 +02:00
alex e4c201bf2d Add rotating session reports and log rotation
- on_exit() now generates a session report (txt + json) in log/runs/
- Log file rotates daily, keeps 7 days (TimedRotatingFileHandler)
- Added log/runs directory creation in main.py
2026-05-28 19:07:42 +02:00
alex 9491169549 Add gold tracking to stats and fix game resolution 2026-05-28 16:52:41 +02:00
alex 3f50a6529c Update FG database with 1229 sellers 2026-05-27 20:00:00 +02:00
alex ed65691257 Add post links to sellers: extract post anchors, store direct links to seller posts 2026-05-27 19:57:51 +02:00
alex 14b4835702 Update FG data: 1500 topics, 1229 sellers with usernames 2026-05-27 16:44:34 +02:00
alex ecf91683b7 Add query_fg_prices.py: CLI tool to query FG price database 2026-05-27 16:04:11 +02:00
alex 29e6cc3c99 Add query_fg_prices.py: CLI tool to query FG price database 2026-05-27 15:56:22 +02:00
alex 9c00ca5de7 Fix DB update script: correct prev_scrape query 2026-05-27 15:16:24 +02:00
alex dbee47e152 Add database update script for FG price tracker 2026-05-27 15:15:46 +02:00
alex 512acb02b9 Fix username extraction: correct regex for user.php links and split indexing 2026-05-27 15:12:30 +02:00
alex 69dc33706a Add SQLite database for FG price tracking with sellers table 2026-05-27 13:46:32 +02:00
alex 93771198f1 Add username extraction: per-seller cheapest prices in output and DB 2026-05-27 13:42:36 +02:00
alex 5cfa91fe64 Major scraper overhaul: multi-page pagination, 80+ item patterns, multi-item detection 2026-05-27 11:23:32 +02:00
alex 8574eedc16 Update FG daily estimates: 1500 topics, 24 item types 2026-05-27 09:46:21 +02:00
alex bc649ed863 Fix FG report: normalize item names, estimate FG from item_kept events 2026-05-27 09:38:14 +02:00
alex ea4a753e1c Update FG daily estimates: 500 topics, 20 item types with prices 2026-05-27 08:57:42 +02:00
alex 635ccb0dea Ignore fg_reports output directory 2026-05-27 08:51:20 +02:00
alex fd49d9700d Add FG report outputs 2026-05-27 08:51:02 +02:00
alex ef29136e16 Add FG daily earnings report tool (8h interval) 2026-05-27 08:50:57 +02:00
alex 51319fd11f Fix d2jsp scraper: Cloudflare bypass, relative URL handling, URL dedup, Python 3.10 compat 2026-05-27 01:13:10 +02:00
alex e3d6605595 Update FG price tracker, game stats, and add d2jsp collection tooling 2026-05-27 01:08:45 +02:00
alex 19f4b8a553 Harden offline FG parser and add d2jsp collection tooling 2026-05-26 13:04:28 +02:00
alex 3888cc9666 Fix status XP/level math, env refs, and potion tier fallback 2026-05-26 11:36:58 +02:00
alex 055cd4fdf1 Expand cows route plan with screenshot and coordinate SOP 2026-05-26 09:53:13 +02:00
alex 377b2803e3 Improve run stability, repair flow, and stats tracking 2026-05-26 09:43:53 +02:00
alex 7620bd4ef7 Document each route in params.ini routes section 2026-05-26 09:34:24 +02:00
alex 9b5ba463c2 Improve routes documentation and add Hammerdin keyrun example 2026-05-26 09:33:25 +02:00
alex 64349a988d Add Hermes (Qwen) Botty takeover development/testing guide 2026-05-26 08:49:06 +02:00
alex cdc13d1c6c Add configurable Discord event toggles in params.ini 2026-05-26 08:42:31 +02:00
alex a3ac31463e Fix Discord embed send by omitting file arg when no attachment 2026-05-26 08:28:49 +02:00
alex e54bb64d03 Add phased Linux port plan documentation 2026-05-26 08:19:07 +02:00
alex 179eac8b80 Document .env workflow and recent stability/safety fixes 2026-05-25 20:14:55 +02:00
alex b7a7280964 Fix XP status math edge-cases causing 'Failed to log exp' 2026-05-25 19:49:15 +02:00
alex 909aa88977 Make XP OCR parsing robust to casing and common OCR typos 2026-05-25 19:46:51 +02:00
alex 254c167cbe Reduce XP logging warning spam and keep run stable 2026-05-25 19:45:27 +02:00
alex b3fd60c26d Add sell safety for shields and log sold item names 2026-05-25 19:43:46 +02:00
alex 55def980cd Make repair flow best-effort and harden Discord send fallback 2026-05-25 19:23:09 +02:00
alex 265326a471 Stop tracking personal .env file 2026-05-25 17:17:58 +02:00
alex af6ab38939 Add untracked .env overrides with documented template 2026-05-25 17:15:58 +02:00
alex 5ee0061936 Add Discord embed unit tests for safe send behavior 2026-05-25 17:13:15 +02:00
alex 0bd8e7e7bc Add A5->A4 repair fallback and harden Discord embed send 2026-05-25 17:03:16 +02:00
alex 25c5810778 Handle missing OCR deps without crashing XP logging 2026-05-25 15:18:45 +02:00
alex f20ac02720 Add tesserocr wheel fallback to Windows installer 2026-05-25 15:16:09 +02:00