ActivityWatch / ActivityWatch/stats
Play Console data collection: state, tooling, and what's automatable
- Vorherrschende Sprache
- Python
- Sterne
- 11
- Forks
- 3
- Ø Merge
- 3 Std. 36 Min.
- Gemergte PRs (30 T.)
- 1
Beschreibung
Tracking issue for the Play Console data-collection capability that now lives in this repo (`vitals.py`, `android_installs.py`, `collect-play.yml`), what works, and open decisions. Related: #4, aw-android#176.
## Service account
`aw-play-reports@activitywatch-176907.iam.gserviceaccount.com` — key at `~/.config/activitywatch/play-sa.json` (local + Bob's machine); repo secrets `PLAY_SA_JSON` + `PLAY_BUCKET` set.
## ✅ Works — Play Developer Reporting API (vitals + errors)
`vitals.py` works end-to-end; `collect-play.yml` runs it daily:
- `crash-rate` / `anr-rate` → `data/android-crash-rate.csv`, `data/android-anr-rate.csv`
- `errors [--stacktraces]` → top crash/ANR clusters + stacktraces (`errorIssues`/`errorReports`)
Actionable for agents/devs: the current top crash is `ChromeWatcher.onAccessibilityEvent` NPE at `ChromeWatcher.kt:76` (~791 reports).
## ✅ Works — GCS bulk reports (installs)
**Update:** the SA's bucket access finally propagated (well past Google's "up to 24h"), so `android_installs.py` can now list **and** read the `pubsite_prod_rev_…` reports. CI automation via the SA is viable (earlier this was blocked by `403 storage.objects.list`; resolved).
## `installed.csv` metric — the real remaining decision
Access is no longer the blocker; the metric is:
- Manual export used **"Installed audience" (unique users)** — *not present in any bulk report* (installs/acquisition/ratings/crashes/store_performance); Statistics-dashboard-only, no API. **Cannot be automated.**
- Bulk reports offer **"Active Device Installs" (devices, ~10% higher)** — automatable in CI now, matches the chart's "Installed Devices" label.
So: **Installed audience = manual forever**, or **switch to Active Device Installs = full CI automation**.
## Open items
- [ ] Decide `installed.csv` metric (Installed audience manual vs Active Device Installs automated).
- [ ] If switching: skip spurious `0` values from not-yet-finalized recent days (e.g. saw `2026-07-06 = 0` between ~6300 neighbors).
- [ ] "Mobile usage" metric — no programmatic source (#4).
- [ ] Fix the dominant crash: `ChromeWatcher.kt:76` NPE (aw-android#176).
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Bewertung
Dieses Issue wurde noch nicht bewertet.