67a5eb38059bd48fda1f8c4a8609b16ecb904bd7
applyAction (cmd/mavend/voice.go) dispatched all 7 intents from one giant switch. Extract each case body verbatim into its own actionXxx method in new cmd/mavend/actions.go, dispatched from an actionHandlers table keyed by router.Intent. applyAction itself is now just the dec.Clarify guard plus a table lookup. No behaviour change: same reply strings, same side-effect order, comments moved verbatim. The destructive-act confirm gate and the enabled-tool allowlist stay entirely inside actionAct, exactly where they lived in the old switch's IntentAct case — they're act-specific, not cross-cutting, so they don't move to a separate layer. dec.Clarify short-circuit, dialogue bookkeeping and detectPattern stay outside the table since they run regardless of intent. voice.go: 1638 -> 1344 lines. New actions.go: 362 lines. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CGeSZxh1DCtRxmFVSYVGvJ
Description
No description provided
Languages
Go
97.1%
HTML
0.9%
Shell
0.6%
CSS
0.5%
Makefile
0.3%
Other
0.6%