Context debug: guardar system_prompt + messages completos del último build

El endpoint /context-debug ahora devuelve full_context con el
system_prompt y messages exactos enviados al modelo.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Jordan Diaz
2026-04-04 09:19:16 +00:00
parent bc6ad3bcec
commit 184486b62b
2 changed files with 16 additions and 0 deletions

View File

@@ -52,6 +52,8 @@ class ContextEngine:
# Debug history: last N context builds per session
self._history: dict[str, list[dict[str, Any]]] = defaultdict(list)
self._max_history = 20
# Full context of the LAST build per session (not accumulated)
self._last_full_context: dict[str, dict[str, Any]] = {}
# ------------------------------------------------------------------
# Public — build context for a model call
@@ -117,6 +119,14 @@ class ContextEngine:
total_token_estimate=total_tokens,
)
# Guardar contexto completo del último build (solo el último por sesión)
self._last_full_context[session.session_id] = {
"system_prompt": system_prompt,
"messages": messages,
"total_tokens": total_tokens,
"timestamp": time.time(),
}
# --- Debug: log and store context build ---
section_summary = []
for s in sections:
@@ -169,6 +179,10 @@ class ContextEngine:
history = self._history.get(session_id, [])
return history[-1] if history else None
def get_last_full_context(self, session_id: str) -> dict[str, Any] | None:
"""Return the full context (system_prompt + messages) of the last build."""
return self._last_full_context.get(session_id)
def rehydrate_artifact(
self,
artifact: ArtifactSummary,