Three fixes:
1. Logger: windsurf_gateway_service used zap.L() (nop) instead of
logger.L() — all gateway-level logs were silently dropped.
2. Tool mode routing: when tools are present in the request,
force cascade mode even for legacy-enum models. Legacy mode
ignores toolPreamble entirely, so tool calls were never injected.
3. Model enum hint: pass meta.EnumValue through to
SendUserCascadeMessage/buildCascadeConfig as a fallback when
modelUID-based enum resolution returns 0. Prevents 'neither
PlanModel nor RequestedModel specified' gRPC errors.
Tested: claude-sonnet-4-6 with tool definitions returns proper
tool_use content blocks in both streaming and non-streaming modes.
Tool result round-trip verified.