v0.3.7 — startup sanity check + log rotation
Added
- Startup sanity check across the interceptor, pool and arbiter. Before wrapping anything the plugin verifies the critical enigma2 surface it depends on (
InfoBar.zapUp/zapDown/servicelist,NavigationInstance.recordService/playService). A missing critical interface makes the plugin refuse to start with a clear log line + one-shot popup instead of failing piecemeal at the first zap. Missing optional interfaces (historyBack/historyNext,servicelist.setCurrentSelection,RecordTimer.on_state_change) log a degraded-mode warning and the plugin keeps running.
Changed
- Log rotation in
logger.py: whenfbc_csc.logpasses 256 KB it shifts to.1/.2/.3(oldest dropped) instead of being wiped, so the minutes leading up to a recent crash survive for post-mortems.
Fixed
- The IPK no longer ships
__pycache__/*.pyc. Both build paths prune host-built bytecode before packaging; enigma2 compiles its own on first import. The package is noticeably smaller.
Off-box test suite grew 29 → 42. Verified on the GigaBlue UHD Quad 4K Pro: installs cleanly, sanity passes, controller and interceptor start, no tracebacks.