Description
In crates/zeph-core/src/agent/tool_execution/llm_dispatch.rs, unknown ThinkingBlock variants
introduced after #[non_exhaustive] was added to ThinkingBlock are discarded via filter_map
with _ => None.
This is the only forward-compatible option since no MessagePart variant exists to hold an
unknown ThinkingBlock shape. However, if a new ThinkingBlock variant carries data that should
influence tool dispatch (e.g. reasoning steps that affect tool selection), it will be silently
dropped with no log.
Suggested fix
Add a tracing::debug! log in the _ => None arm so that discarded unknown variants are
observable in traces without blocking compilation.
Environment
Description
In
crates/zeph-core/src/agent/tool_execution/llm_dispatch.rs, unknownThinkingBlockvariantsintroduced after
#[non_exhaustive]was added toThinkingBlockare discarded viafilter_mapwith
_ => None.This is the only forward-compatible option since no
MessagePartvariant exists to hold anunknown
ThinkingBlockshape. However, if a newThinkingBlockvariant carries data that shouldinfluence tool dispatch (e.g. reasoning steps that affect tool selection), it will be silently
dropped with no log.
Suggested fix
Add a
tracing::debug!log in the_ => Nonearm so that discarded unknown variants areobservable in traces without blocking compilation.
Environment
crates/zeph-core/src/agent/tool_execution/llm_dispatch.rs