Voice cannot accept a routine (V-367); the last three prompts are Russian (V-404) #89
Reference in New Issue
Block a user
Delete Branch "fix/367-voice-parks-routine-accept"
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?
Closes Vikunja #367 and #404. Two small, independent fixes found while sweeping the backlog.
#367 — voice was over-privileged. Accepting a proposed routine gives the tick loop a standing new reason to speak. DESIGN.md § "surface caps authority" puts that at layer 3 and says voice is structurally incapable of layer 3, because a room mic is reachable by anyone present. The
/routinesbutton was gated at step-up; the voice path accepted outright, so the two surfaces disagreed. A spoken "да" now leaves the rowproposedand points at/routines. A spoken "нет" still dismisses — declining does not move the boundary outward. Two tests lock both halves.#404 — three pieces of English prose left over from #400.
PhraseReminder's user prompt was fully English and is Russian now, without restating the JSON contract or the persona rules thatnudgeSystemalready carries.querySystemPromptandrouter.KnowledgePrompthad their trailingRespond ONLY with valid JSON:translated; the JSON skeleton itself is untouched. Kept rather than deleted because the GBNF grammar is switchable off.make testpasses.good to merge.