# Next Session: Phone Observability Parity

## What
Extend Fix 5's priority-classed observability queue (from `~/.claude/plans/coffee-fragility-fixes.md`) to the phone loop on Panda. Phone currently uses loguru + ad-hoc JSON — no bounded queue, no priority.

## Why deferred
Main plan's observability fix is annie-voice-local. Phone loop on Panda does not import `observability.py`. Adopting it requires wiring and possibly careful handling of Panda's tighter memory budget.

## Scope
- Decide whether phone should share `annie-voice/observability.py` via a thin import, OR maintain its own priority queue (smaller queue sizes to match Panda's smaller VRAM/RAM envelope).
- Ensure phone errors + tool dispatch events are CRITICAL priority, never silently dropped.
- Wire phone's existing loguru lines into the shared `emit_event` pattern without losing log formatting.
- Add tests.

## Open questions
- What is phone loop's current event volume (events/sec under a typical call)?
- Does Panda have enough memory headroom for three queues (500 + 1000 + 1000 events)?
- Do phone alerts need to go through the same `~/.her-os/alerts.jsonl` file as annie-voice? (Most likely yes — single pipeline.)

## Non-goals
- Changing phone's ASR/TTS pipeline.
- Building a generic cross-service observability abstraction.

## Prerequisites
Main plan Fix 5 deployed and verified.
