From 1ecc779b55463913cd110b08bc16ec1722de5fb7 Mon Sep 17 00:00:00 2001 From: NISH1001 Date: Mon, 27 Apr 2026 13:13:05 -0500 Subject: [PATCH] Widen RunContext.messages to list[Any] for adapter flexibility Lets non-AKD-native adapters (pydantic-ai, langchain) carry their own message types in the field instead of stashing them under extras. Co-Authored-By: Claude Opus 4.7 (1M context) --- akd/_base/structures.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/akd/_base/structures.py b/akd/_base/structures.py index be5f3022..16d2d244 100644 --- a/akd/_base/structures.py +++ b/akd/_base/structures.py @@ -103,9 +103,13 @@ class RunContext(BaseModel): default=None, description="Human response for resumption after HUMAN_INPUT_REQUIRED", ) - messages: list[dict[str, Any]] | None = Field( + messages: list[Any] | None = Field( default=None, - description="Conversation history for resumption", + description=( + "Conversation history for resumption. AKD's own BaseAgent populates " + "these as OpenAI-style {role, content} dicts; adapters (pydantic-ai, " + "langchain, etc.) may carry their native message types instead." + ), ) run_id: str | None = Field( default=None,