- Add empty goal guard in parser (returns done instead of passthrough) - Replace `as any` casts in pipeline.ts with proper ActionDecision types - Add runtime type guards for untrusted LLM output in classifier - Add intent action to dynamic prompt so UI agent can fire intents Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>