docs: Phase 2 complete — Android telemetry checked off, roadmap updated
This commit is contained in:
parent
ae45054d32
commit
0edafab501
@ -1,6 +1,6 @@
|
||||
# Client Telemetry — Implementation Roadmap
|
||||
|
||||
> **Status:** Phase 2 in progress (Android pending; tracker + admin self-telemetry done), Phase 3 pending
|
||||
> **Status:** Phase 2 complete ✅, Phase 3 in progress
|
||||
> **Last updated:** 2026-02-17
|
||||
> **Design doc:** [`CLIENT_TELEMETRY_DESIGN.md`](./CLIENT_TELEMETRY_DESIGN.md)
|
||||
> **Repos:** `learning_ai_common_plat` (platform-service) · `learning_voice_ai_agent` (all clients + dashboards)
|
||||
@ -94,12 +94,18 @@
|
||||
- [x] `/api/telemetry/admin-ingest/route.ts` — Separate proxy from admin query route ([`a102609`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/a102609))
|
||||
- [x] `providers.tsx` — `initTelemetry()` called on app mount ([`a102609`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/a102609))
|
||||
|
||||
### Android (Not Started)
|
||||
### Android
|
||||
|
||||
- [ ] `TelemetryClient.kt` — Kotlin telemetry client for Android keyboard + main app
|
||||
- [ ] Instrument `LysnrInputMethodService.kt` — dictation lifecycle events
|
||||
- [ ] Offline queue using SharedPreferences or Room
|
||||
- [ ] Flush on app foreground via `ProcessLifecycleOwner`
|
||||
- [x] `TelemetryClient.kt` — Kotlin singleton with OkHttp POST, SharedPreferences offline queue, persistent install ID ([`9196f48`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/9196f48))
|
||||
- [x] Instrument `LysnrInputMethodService.kt` — 10 telemetry points ([`9196f48`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/9196f48))
|
||||
- [x] `session_started` / `session_ended` (with words_inserted metric)
|
||||
- [x] `dictation_started` (with backend + reason tags)
|
||||
- [x] `dictation_completed` (with duration_ms, word_count, segment_count, transcript_length)
|
||||
- [x] `mic_permission_denied`
|
||||
- [x] `recognition_failed` (with errorCode + errorDomain)
|
||||
- [x] `error_recovery_attempted` (azure→local fallback)
|
||||
- [x] Offline queue using SharedPreferences with FIFO eviction ([`9196f48`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/9196f48))
|
||||
- [x] Flush on app foreground via `ProcessLifecycleOwner` + 60s periodic flush timer ([`9196f48`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/9196f48))
|
||||
|
||||
---
|
||||
|
||||
@ -185,7 +191,7 @@
|
||||
└─────────────────────────┘ └──────────────────────┘
|
||||
|
||||
┌───────────────────────┐
|
||||
│ Android (Phase 2) │ ← Not yet implemented
|
||||
│ Android │
|
||||
│ TelemetryClient.kt │──▶ POST /api/telemetry/events ──▶ platform-service
|
||||
│ (SharedPreferences) │
|
||||
└───────────────────────┘
|
||||
@ -222,6 +228,7 @@ cd learning_voice_ai_agent/user-dashboard-web && npx vitest run src/__tests__/te
|
||||
|
||||
- [ ] iOS `LysnrTelemetry.swift` — needs XCTest target (Swift unit tests)
|
||||
- [ ] iOS `TelemetryService.swift` — needs XCTest target
|
||||
- [ ] Android `TelemetryClient.kt` — needs Android instrumented tests or Robolectric
|
||||
- [ ] Admin dashboard `/api/telemetry/route.ts` — API route integration test
|
||||
- [ ] Platform-service HTTP integration tests (Fastify inject)
|
||||
- [ ] End-to-end: client → platform-service → Cosmos read-back
|
||||
@ -249,17 +256,18 @@ The following bugs were discovered during systematic review of the roadmap again
|
||||
|
||||
## Commit Log
|
||||
|
||||
| Date | Repo | Commit | Description |
|
||||
| ---------- | ----------- | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------ |
|
||||
| 2026-02-16 | common-plat | [`c59049e`](https://github.com/saravanakumardb1/learning_ai_common_plat/commit/c59049e) | Design doc: client telemetry & log insights |
|
||||
| 2026-02-16 | common-plat | [`083cf02`](https://github.com/saravanakumardb1/learning_ai_common_plat/commit/083cf02) | Fix 18 gaps in telemetry design doc (rev 2) |
|
||||
| 2026-02-16 | common-plat | [`ce4c4ff`](https://github.com/saravanakumardb1/learning_ai_common_plat/commit/ce4c4ff) | Telemetry module — ingest, config, query, clusters, policies (34 tests) |
|
||||
| 2026-02-17 | voice-agent | [`e546475`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/e546475) | iOS keyboard telemetry client + KeyboardViewController instrumentation |
|
||||
| 2026-02-17 | voice-agent | [`d202f94`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/d202f94) | Admin dashboard Client Logs page + sidebar nav |
|
||||
| 2026-02-17 | voice-agent | [`a173baa`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/a173baa) | iOS main app TelemetryService + Desktop Python platform_telemetry |
|
||||
| 2026-02-17 | voice-agent | [`130e1d6`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/130e1d6) | Web user-dashboard telemetry client + ingest proxy |
|
||||
| 2026-02-17 | common-plat | [`c3d6977`](https://github.com/saravanakumardb1/learning_ai_common_plat/commit/c3d6977) | Telemetry roadmap doc (this file) |
|
||||
| 2026-02-17 | voice-agent | [`ae77438`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/ae77438) | Fix: desktop uuid format + web osFamily — pass Zod validation |
|
||||
| 2026-02-17 | common-plat | [`20f77d5`](https://github.com/saravanakumardb1/learning_ai_common_plat/commit/20f77d5) | Tests: route-logic tests — PII, pk, fingerprint, policy matching (34→77) |
|
||||
| 2026-02-17 | voice-agent | [`08efdb6`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/08efdb6) | Tests: Python client (19) + web dashboard (12) telemetry tests |
|
||||
| 2026-02-17 | voice-agent | [`a102609`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/a102609) | Tracker + admin self-telemetry clients + tests (20 tests) |
|
||||
| Date | Repo | Commit | Description |
|
||||
| ---------- | ----------- | --------------------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
|
||||
| 2026-02-16 | common-plat | [`c59049e`](https://github.com/saravanakumardb1/learning_ai_common_plat/commit/c59049e) | Design doc: client telemetry & log insights |
|
||||
| 2026-02-16 | common-plat | [`083cf02`](https://github.com/saravanakumardb1/learning_ai_common_plat/commit/083cf02) | Fix 18 gaps in telemetry design doc (rev 2) |
|
||||
| 2026-02-16 | common-plat | [`ce4c4ff`](https://github.com/saravanakumardb1/learning_ai_common_plat/commit/ce4c4ff) | Telemetry module — ingest, config, query, clusters, policies (34 tests) |
|
||||
| 2026-02-17 | voice-agent | [`e546475`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/e546475) | iOS keyboard telemetry client + KeyboardViewController instrumentation |
|
||||
| 2026-02-17 | voice-agent | [`d202f94`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/d202f94) | Admin dashboard Client Logs page + sidebar nav |
|
||||
| 2026-02-17 | voice-agent | [`a173baa`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/a173baa) | iOS main app TelemetryService + Desktop Python platform_telemetry |
|
||||
| 2026-02-17 | voice-agent | [`130e1d6`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/130e1d6) | Web user-dashboard telemetry client + ingest proxy |
|
||||
| 2026-02-17 | common-plat | [`c3d6977`](https://github.com/saravanakumardb1/learning_ai_common_plat/commit/c3d6977) | Telemetry roadmap doc (this file) |
|
||||
| 2026-02-17 | voice-agent | [`ae77438`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/ae77438) | Fix: desktop uuid format + web osFamily — pass Zod validation |
|
||||
| 2026-02-17 | common-plat | [`20f77d5`](https://github.com/saravanakumardb1/learning_ai_common_plat/commit/20f77d5) | Tests: route-logic tests — PII, pk, fingerprint, policy matching (34→77) |
|
||||
| 2026-02-17 | voice-agent | [`08efdb6`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/08efdb6) | Tests: Python client (19) + web dashboard (12) telemetry tests |
|
||||
| 2026-02-17 | voice-agent | [`a102609`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/a102609) | Tracker + admin self-telemetry clients + tests (20 tests) |
|
||||
| 2026-02-17 | voice-agent | [`9196f48`](https://github.com/saravanakumardb1/learning_voice_ai_agent/commit/9196f48) | Android TelemetryClient + keyboard instrumentation + ProcessLifecycleOwner |
|
||||
|
||||
Loading…
Reference in New Issue
Block a user