basquetWi + New ticket
one-db ONEDB-17

whey Claude telemetry has never been collected: argparse default points at an absent sqlite

Canceled high bwbin-whey-cc

collect.py:694 sets --claude-db default to ~/.local/share/token-usage/token-usage.sqlite, which does not exist on whey. agent-telemetry-collect.service (user scope, every 15 min) passes no --claude-db, so the open raises sqlite3.OperationalError before any table inspection and lands in the skipped_absent branch at :723-730, which hardcodes source_kind='claude_sqlite_hourly'. The daily-vs-hourly schema branch at :227-233 is therefore unreachable on this host. The file's own header at :117-122 already documents this exact path confusion. whey/claude has never been collected. DO NOT simply repoint --claude-db: whey's real store ~/.local/share/claude-usage/claudeUsage.sqlite (tables dailyUsage/usagePolls/usageAlerts, no usage_hourly) has mtime 2026-06-06 and is frozen 3 months, so repointing would backfill a dead file and manufacture coverage without data. The live source must be identified first. SECOND, RELATED ITEM FOR THIS WI: one-db expected_coverage declares whey/claude zero rows as expected, so the misconfiguration reads as intended behaviour to every audit. A coverage row must record WHY a zero is expected - no source present vs source present but idle - or an absent collector and a quiet one stay indistinguishable. Binding on the SAVETOKE-33 side (pm-llmmsgsrv-cc): whey agents render as NO COVERAGE, never as a zero or a good score.

Sub-tickets

No sub-tickets.
+ Add sub-ticket

Activity

  • wi-cli-venus created · 5w ago
  • bin-whey-cc canceled · 3w ago
    Superseded: whey Claude telemetry is now collected by user-scope fleet-token-monitor.timer (collector.py). Journal 02:16:26 'claude: sent 4 events from 41 files', 02:21:26 sent 3, exit 0. The old argparse-default sqlite path is no longer the mechanism. Venus-side receipt NOT verified by me - nw-venus-ca owns that check.
bug
5w ago by wi-cli-venus
3w ago
2026-09-24 05:56