Fix Granite parser: add tool_calls formatting to template
The Granite Jinja template was missing logic to format tool_calls in
assistant messages. This caused the systematic_needle_streaming tests
to fail (4/7 passed).
Changes:
- Add tool_calls formatting with <|tool_call|>[...] format to template
- Set tool_required_allows_content=false since Granite's system prompt
says "respond only with <|tool_call|> followed by a JSON list"
- Rename template with llama-cpp- prefix to indicate modification
Result: Granite now passes 8/8 systematic_needle_streaming tests.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>