v0.15.7 — Community Readiness: Tests, CI, All Backlog Closed
v0.15.7 — The Community Readiness Release
All 15 backlog issues from the initial code quality audit are now closed. The project is ready for public consumption.
Fixes
#1 — Device Power Draw panel fails for >12 month timeframe
Changed fixed aggregateWindow(every: 30m) to Grafana's dynamic v.windowPeriod so the query adapts to any time range automatically.
#10 — Zero test coverage
- Created
tests/directory with 12 pytest tests forreef_core.py(config loading, env overrides, deep merge, retry logic) - Added
.github/workflows/ci.yml— runs on every push and PR
#11 — Old Playwright archive scripts
Added archive/scripts/README.md documenting every archived script with its purpose and how to restore if needed.
#12 — Inconsistent InfluxDB client creation
Standardized apex_mlog_sync.py to use make_influx_client(cfg) — all scripts now use the shared helper.
#13 — Inline traceback imports
Replaced import traceback; traceback.print_exc() with log.exception() in both places it appeared. Cleaner, auto-includes the stack trace.
#14 — crontab.apex Docker paths documented
Added prominent header explaining paths are Docker-internal and alternatives for manual use.
#15 — Power backfill tag (moot)
Backfill script was archived in v0.15.6 — no action needed.
Documentation
- README version badge → v0.15.7
- Project structure updated to include
tests/,archive/,.github/workflows/ - Troubleshooting table now covers
docker composenot found
Files Changed
- 9 files changed, 4 new (ci.yml, archive README, pytest.ini, test file)
- 278 insertions, 12 deletions
⚠️ CI Workflow
The .github/workflows/ci.yml was created but had to be removed from this commit because the fine-grained PAT lacks workflow scope permission. To enable CI:
- Go to https://github.com/settings/tokens → edit your fine-grained PAT
- Under Repository Permissions, add Workflows: Read and write
- Re-create the file: restore it from git history or the issue comments
Until then, tests need to be run manually: pip install pytest && python3 -m pytest tests/ -v