As reported in #2038, when working on fixing types, I discovered that currently
the Weave Tracer violates of the Liskov Substitution Principle and fixing this does not seem straightforward.
|
# the current implementation violates the Liskov Substitution Principle by using WeaveSpan instead of Span |
|
# unfortunately, it seems hard to fix without rewriting the Tracer |
|
parent_span: Optional[WeaveSpan] = None, # type: ignore[override] |
Since I'm not an expert on this integration, I can't confidently say if this is problematic or no.
(Langfuse might have similar problems but I am not sure).
We should evaluate whether this causes practical problems and if it's worth refactoring the integration to address it.
As reported in #2038, when working on fixing types, I discovered that currently
the Weave Tracer violates of the Liskov Substitution Principle and fixing this does not seem straightforward.
haystack-core-integrations/integrations/weights_and_biases_weave/src/haystack_integrations/tracing/weave/tracer.py
Lines 157 to 159 in 14fd1b8
Since I'm not an expert on this integration, I can't confidently say if this is problematic or no.
(Langfuse might have similar problems but I am not sure).
We should evaluate whether this causes practical problems and if it's worth refactoring the integration to address it.