adaa075e6e
scripts/usage_stats.py: standalone script (PEP 723, runs via uv run) that parses all nginx access.log files, filters bots, maps Referer headers to feature labels, and produces a 3-panel matplotlib figure: daily logins + 7-day rolling mean, hour×weekday API heatmap, and weekly feature usage stacked area. Output saved to /var/bincio/stats/latest.png. Intended for a weekly cron job. bincio/serve/routers/admin.py: GET /api/admin/stats serves the PNG via the existing _require_admin() check — no new auth logic or nginx changes needed. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>