Files
OmniRoute/tests
Markus Hartung 0e6f844e1e fix(fusion): apply vision-compatibility filter to fusion panel + judge (port from 9router#3378)
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>
2026-08-19 08:49:29 -03:00
..