Skip to content

Commit 79b2762

Browse files
authored
Merge pull request #190 from kalibr-ai/fix/model-attribution-outcome-reporting
fix: kalibr_model_used on response + re-resolve tenant_id in singleton
2 parents e55feb4 + f0f3760 commit 79b2762

2 files changed

Lines changed: 8 additions & 1 deletion

File tree

‎kalibr/intelligence.py‎

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -677,7 +677,7 @@ def __exit__(self, *args):
677677

678678
def _get_intelligence_client() -> KalibrIntelligence:
679679
"""Get or create the singleton intelligence client.
680-
680+
681681
Thread-safe singleton pattern using double-checked locking.
682682
"""
683683
global _intelligence_client
@@ -686,6 +686,11 @@ def _get_intelligence_client() -> KalibrIntelligence:
686686
# Double-check inside lock to prevent race condition
687687
if _intelligence_client is None:
688688
_intelligence_client = KalibrIntelligence()
689+
# Re-resolve if tenant_id is empty (env var may have been set after construction)
690+
if not _intelligence_client.tenant_id:
691+
_, tenant_id = resolve_credentials()
692+
if tenant_id:
693+
_intelligence_client.tenant_id = tenant_id
689694
return _intelligence_client
690695

691696

‎kalibr/router.py‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -894,6 +894,7 @@ def _heal_dispatch(m_id: str, msgs: List[Dict], system_prompt: Optional[str] = N
894894
response.kalibr_healed = bool(heal_result.get("healed"))
895895
response.kalibr_heal_count = heal_result.get("heal_count", 0)
896896
response.kalibr_models_tried = heal_result.get("models_tried") or []
897+
response.kalibr_model_used = used_model
897898
return response
898899

899900
# Heal loop exhausted all paths — fire failure telemetry.
@@ -1071,6 +1072,7 @@ def _heal_dispatch(m_id: str, msgs: List[Dict], system_prompt: Optional[str] = N
10711072

10721073
# Add trace_id to response for explicit linkage
10731074
response.kalibr_trace_id = trace_id
1075+
response.kalibr_model_used = candidate_model
10741076
return response
10751077

10761078
except Exception as e:

0 commit comments

Comments
 (0)