mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-08-20 06:02:14 +03:00
Every non-fusion combo strategy runs candidates through filterTargetsByRequestCompatibility before dispatch, which excludes a target whose vision support cannot be confirmed `=== true` for an image-bearing request (#8332). tryFusionDispatch resolved its panel via the raw resolveComboTargets() and skipped that filter entirely, so a panel member (or explicit judge) with an unrecognized model id — capability lookup miss, supportsVision resolves to something other than true — still received the unmodified image body while a "confirmed vision" voice silently dropped out of the panel. Apply the same exclusion to the fusion panel and to an explicit judgeModel: when the request requires vision, drop targets without confirmed support (falling back to a capable panel member for the judge, same as an operator-hidden judge already does), and fail closed with capability_mismatch if the whole panel is excluded. Co-authored-by: anojndr <anojndr@users.noreply.github.com>