Как связать трассировку с конкретным промптом и его версией, чтобы доходить до причины сбоя: реестр промптов плюс трассировки из прода?
Prompt-version tracking в observability — это observability plane, не control plane (последний — это prompt management из Q14). Каждая трасса из прода должна нести три связанных значения: prompt.id + prompt.version + gen_ai.request.model (полная версия модели с датой, например claude-sonnet-5-20260115, а не просто claude-sonnet-5). Без этой связки не докопаться до причины ухудшения: «верность источникам просела 5 дней назад — а какую версию промпта я тогда выкатил?». Langfuse делает linking автоматически через langfuse.get_prompt(...).link() внутри @observe; LangSmith Hub через hub.pull_prompt("name:commit_hash") + metadata. Code version (git SHA, Docker tag) идёт как trace metadata. Git-tracked prompts (в prompts/) — link через relative_path + sha256(content). Главный dashboard — heatmap [prompt_version × metric] для regression detection.