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