mlflow
MLflow user-feedback logging: detect whether MLflow tracing is wired for this deployment, and log a thumbs / comment as a trace assessment via the Databricks MLflow REST API.
Feedback attaches to a trace, and the plugin’s spans reach MLflow
through the same OTel pipeline as every other AppKit span (see
observability.ts). On Databricks Apps that pipeline is the UC
sidecar injected by telemetry_export_destinations, not a direct
workspace OTLP URL. MLflow derives its trace id from the OpenTelemetry
trace id (tr-<hex(otelTraceId)>), so the server stamps the active
trace id on each turn’s response and the client sends it back here.
There is no MLflow JS SDK, so this posts to the assessments REST endpoint directly using the OBO-scoped workspace client (the feedback is thus attributed to the signed-in user). Trace export is asynchronous, so the just-finished trace may not exist in MLflow yet when the user reacts; the log call retries briefly on “not found” before giving up softly.