feat(telemetry): track successful voice starts - #210
Conversation
morgmart
left a comment
There was a problem hiding this comment.
🤖 Automated code review
APPROVE. Fresh static review completed for the exact three-dot comparison d67756c...f43d7c2. The consent-gated voice-start counter is emitted only after native startup and microphone reconciliation succeed, carries no event attributes, and is covered for successful and failed startup. The schema-version update and exact wire/event literals are pinned by tests. Final self-check covered the changed voice-start and telemetry-upload flows; accessibility and localization (no changed UI or user-facing copy); navigation and consent guards; async failure, never-completes, lifecycle, and race behavior; test honesty; project/design-system rules; duplicate overlap; and severity evidence/user effect. No publishable findings survived. Supplied GitHub evidence was inspected: all nine check runs at the exact head SHA completed successfully, while the combined commit status is pending with no legacy statuses; required checks still govern merge readiness.
Deterministic publication result: 0 blocking and 0 non-blocking finding(s) publishable; 0 duplicate(s) suppressed.
Pending checks: 1 check(s) are not complete.
This approval reflects the completed code review only; merge readiness remains governed by the repository's required checks.
Summary
Berd cannot currently distinguish whether voice conversations are used. This adds the consent-gated
berd_voice_conversation_startedcounter after native voice startup succeeds. The event has no attributes and collects no session, transcript, voice selection, or failure details.Uploads opt into the strict
berd-otlp-logs-v2contract that accepts this counter.Notes
berd-otlp-logs-v2must be deployed insquareup/berd-monitoringbefore releasing this client version. End-to-end gateway verification requires that deployment.