-
[OPIK-6734] [BE] fix: resolve ClassCastException in thread-level online evaluation rules with filters (#6904)
发布于
2026-05-28 15:41:44 +00:00 Thread-level LLM-as-judge rules with configured filters threw
ClassCastException (TraceThreadFilter cannot be cast to TraceFilter)
because shouldSampleTraceThread() incorrectly cast the evaluator's
filters to List and then attempted to convert them back.The evaluator already holds correctly-typed TraceThreadFilter objects
since the filters architecture refactor (#4311), so the cast and
conversion logic were both wrong and unnecessary. Removed the dead
conversion pipeline and cast directly to List.Wrote regression test that reproduces the exact production error first,
then applied the fix. The original intent of the conversion code was
valid when filters were stored as TraceFilter, but it was never updated
after the type was corrected upstream.下载附件