Skip to content

BRIC-1 - phoenix - Tracing / Prompting#9

Merged
Kaiohz merged 10 commits into
mainfrom
Bric-1/Phoenix
Apr 13, 2026
Merged

BRIC-1 - phoenix - Tracing / Prompting#9
Kaiohz merged 10 commits into
mainfrom
Bric-1/Phoenix

Conversation

@Guemri-Jawher
Copy link
Copy Markdown
Contributor

No description provided.

@Guemri-Jawher Guemri-Jawher self-assigned this Apr 6, 2026
@Guemri-Jawher Guemri-Jawher requested a review from Kaiohz April 6, 2026 22:13
@Kaiohz
Copy link
Copy Markdown
Contributor

Kaiohz commented Apr 12, 2026

📊 Code Confidence Score: 7/10

✅ Points positifs

  • Architecture hexagonale respectée : Domain entities (Prompt, PromptVersion), Domain port (PromptManager), Use cases (Create/Get/UpdatePromptUseCase), Adapter (PhoenixPromptAdapter)
  • Tests ajoutés : test_phoenix_prompt_manager.py (79 lignes)
  • CI mise à jour : uv sync --dev --extra phoenix
  • Cleanup .env : suppression des vars Langfuse/LangChain obsolètes, simplification
  • cachetools ajouté aux dépendances (caching prompts)
  • Documentation : README mis à jour avec section Prompt Management complète

⚠️ Points d'attention

  • Routes prompt.py : except Exception catch-all → 500 sur toute erreur. Devrait différencier 400 (bad request), 404 (not found), 409 (conflict/duplicate)
  • CreatePromptRequest.content = list[dict[str, str]] — pas de validation du format des messages (rôles valides : system/user/assistant ? content non vide ?)
  • Pas de tests unitaires sur les use cases Prompt (Create/Get/Update) — seulement l'adapter Phoenix est testé
  • .env.example toujours avec TRACING_ENABLED (deprecated?)

🔴 Risques identifiés

  • phoenix_prompt_adapter.py (187 lignes) : appels HTTP directs à Phoenix REST API sans retry, sans timeout configurable. Si Phoenix est down = erreur 500 brutale sans contexte

Recommandation

  1. Ajouter un timeout configurable (ex: PHOENIX_TIMEOUT=30) et un retry avec backoff sur les appels HTTP
  2. Affiner le error handling dans prompt.py (différencier les codes d'erreur)
  3. Ajouter des tests sur les use cases Prompt

Review automatique par SoluBot 🤖

@Kaiohz Kaiohz merged commit 6782bf4 into main Apr 13, 2026
1 check passed
@Kaiohz
Copy link
Copy Markdown
Contributor

Kaiohz commented Apr 13, 2026

🟡 Code Review — BRIC-1: Phoenix Tracing & Prompt Management

✅ Points positifs

  • Architecture hexagonale : PromptManager port → PhoenixPromptManager adapter
  • Nouvelles routes /prompts (create, get, update) bien structurées
  • Use cases séparées : CreatePrompt, GetPrompt, UpdatePrompt
  • arize-phoenix-client>=2.3.0 ajouté aux deps Phoenix
  • README documenté avec exemples curl
  • Subagents modèles spécifiés (claude-haiku-4.5:nitro)

⚠️ Points d'attention

  1. Exception handling générique : except Exception as e dans les routes → renvoie 500 ou 404 sans distinction fine. Manque des exceptions métier (PromptNotFound, PromptConflict, etc.)
  2. Pas de validation avancée sur CreatePromptRequest.identifier (min_length=1 mais pas de regex pour les caractères autorisés)

🔴 Risques

  1. Aucun test unitaire pour les nouvelles use cases CreatePrompt, GetPrompt, UpdatePrompt
  2. Pas de test intégration Phoenix → comment vérifier que le PromptManager fonctionne réellement ?

Score de confiance : 6/10 — Architecture propre mais coverage tests manquante

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants