isair/jarvis

Task 1a — Expose confidence score from listener.py when transcript is rejected

Open

#373 opened on May 5, 2026

View on GitHub
 (1 comment) (0 reactions) (0 assignees)Python (201 forks)github user discovery
enhancementgood first issue

Repository metrics

Stars
 (1,090 stars)
PR merge metrics
 (PR metrics pending)

Description

Task 1a — Expose confidence score on low-confidence rejection

Part of Task 1: Low Confidence Voice Feedback.

What to do

In src/jarvis/listening/listener.py, find where Whisper transcripts are filtered out due to low confidence (currently logs 🔇 Low confidence (x.xx): ...).

  • Extract the confidence value and the reason for rejection into a structured object or named return value (e.g. a LowConfidenceEvent dataclass or a dict {"confidence": float, "transcript": str}).
  • Emit or return this event so downstream code (reply engine, output layer) can react to it.
  • Do not change any TTS or UI behaviour yet — this subtask is purely about surfacing the data.

Files to touch

  • src/jarvis/listening/listener.py

Acceptance criteria

  • Low-confidence rejection produces a structured event/value (not just a log line)
  • The confidence score and raw transcript are both accessible from outside the listener
  • Existing behaviour is unchanged (nothing new is spoken or displayed yet)

Contributor guide