|
60 | 60 | # independent and one shouldn't mask the other. |
61 | 61 | - if: ${{ !cancelled() }} |
62 | 62 | run: uv run --extra tracing pytest tests/test_e2e_tracing.py -v < /dev/null |
63 | | - # Diagnostic: the Claude Stop hook writes its trace-creation log to |
64 | | - # $cwd/.claude/mlflow/claude_tracing.log. If the tracing test failed |
65 | | - # because no root `claude_code_conversation` span landed, this shows |
66 | | - # whether the hook fired on the runner and what its MLflow write did. |
67 | | - - if: ${{ failure() }} |
68 | | - name: Dump Claude tracing hook log |
69 | | - run: | |
70 | | - echo "=== claude_tracing.log ===" |
71 | | - cat .claude/mlflow/claude_tracing.log 2>/dev/null || echo "(no hook log — Stop hook never ran)" |
72 | | - echo "=== installed claude-code + mlflow CLI ===" |
73 | | - claude --version || true |
74 | | - "$(uv tool dir --bin)/mlflow" --version || true |
75 | | - # Diagnostic: reproduce the client-side span export from the runner with |
76 | | - # verbose logging. The hook's `log_spans` failure is logged at WARNING to |
77 | | - # mlflow's own logger (not the hook file log), so surface it directly to |
78 | | - # see why the root span never reaches the trace server from CI. |
79 | | - - if: ${{ failure() }} |
80 | | - name: Probe MLflow span export (3.11.1 vs 3.12.0) |
81 | | - env: |
82 | | - DATABRICKS_TOKEN: ${{ secrets.DATABRICKS_BEARER }} |
83 | | - run: | |
84 | | - for V in 3.11.1 3.12.0; do |
85 | | - echo "=== probing mlflow==$V ===" |
86 | | - uv run --with "mlflow[databricks]==$V" python - "$V" <<'PY' 2>&1 | grep -iE "probe|trace_id|version|error|exception|Failed to log" || true |
87 | | - import sys, mlflow |
88 | | - v = sys.argv[1] |
89 | | - mlflow.set_tracking_uri("databricks") |
90 | | - mlflow.set_experiment(experiment_id="2190569664060193") |
91 | | - print("mlflow version", mlflow.__version__) |
92 | | - with mlflow.start_span(name=f"ci_probe_{v.replace('.','_')}") as span: |
93 | | - span.set_inputs({"v": v}) |
94 | | - print("trace_id", span.trace_id) |
95 | | - mlflow.flush_trace_async_logging() |
96 | | - PY |
97 | | - done |
0 commit comments