[bug] hero_voice Rustpotter wake-word detector hard-disabled by candle-core 0.2.2 conflict #23
Labels
No labels
prio_critical
prio_low
type_bug
type_contact
type_issue
type_lead
type_question
type_story
type_task
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
lhumina_code/hero_voice#23
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
The Rustpotter wake-word detector is hard-disabled stub in
hero_voicedue to acandle-core 0.2.2dependency conflict with the rest of the workspace. The only working wake path is a fragile fallback: WebSocketListenmode that VAD-segments microphone input and substring-matches"hey hero"on Whisper STT output. This blocks the Ambient AI roadmap (hero_agent#16).Source
hero_voice/.../wakeword.rs— Rustpotter integration is conditionally compiled out / always returns the stub.hero_voice/.../ws.rs:389— substring-match"hey hero"on Whisper transcription is the only live wake path.Why the fallback is fragile
Proposed fix (pick one)
Option A: upgrade
candle-core. Find the candle-core version range that's compatible with the rest of the workspace and unstub Rustpotter. Cleanest but may cascade into other dep upgrades.Option B: alternative detector. Pick a different wake-word library that doesn't depend on candle-core. Candidates worth evaluating:
porcupine(Picovoice; commercial license),openWakeWord(ONNX-based), simple keyword spotting with whisper-base on a short audio window.Option C: live with the substring fallback but expose it cleanly via OpenRPC + MCP so other services can subscribe. Doesn't fix the latency / false-positive cost.
Severity
Medium. Not a deploy blocker (substring fallback works), but the Ambient AI vision in hero_agent#16 and hero_demo#52 leans on responsive wake — the substring path doesn't get there.
Cross-refs
Spotted during docs_hero Phase 1 source-grounded read (session 52). Reconciliation memo:
memory/investigation_roadmap_reconciliation.md.