contimp-app / docs /findings.md
lefft's picture
contimp-app v0.1.0
910dadd verified
|
Raw
History Blame Contribute Delete
1.48 kB
# Dogfooding findings
Things contimp-app surfaced about the contimp/oumi pipeline. Newest first.
## 2026-06-10 β€” api importer drops vanilla (no-tools) LangFuse chat traces
**What**: `api/shared/src/shared/inference_logs/external/langfuse.py` parses a
generation's `input` only when it is a JSON-encoded *dict* (`{"model": ...,
"messages": [...]}`). But the LangFuse OpenAI integration (`langfuse.openai`,
verified on SDK 4.7.1, `_extract_chat_prompt`) logs the **bare message array**
whenever the request carries no `tools`/`functions` β€” the most common customer
shape. Result: every vanilla single-turn chat trace is silently dropped on
import (`parse()` yields nothing). Traces from tool-using apps import fine.
**Repro**: trace any plain `chat.completions.create(messages=...)` call through
`langfuse.openai`, export observations JSONL, run `parse()` β†’ 0 conversations.
contimp-app's `pr-area` task hits this; `config-copilot` (tools) does not.
**Verified fix** (tested against real exports of both shapes), in
`_parse_input_dict`:
```python
if isinstance(parsed, list):
# Vanilla chat completions: the LangFuse OpenAI integration logs the
# bare message array when the request carries no tools/functions.
return {"messages": parsed}
return parsed if isinstance(parsed, dict) else None
```
Relevant existing TODO: LOU-1829 ("simplify once real customer exports are
available") β€” these exports now exist, generated by this app.