refactor(agent-runner): use protocol version field

This commit is contained in:
huanghuoguoguo
2026-06-06 15:13:40 +08:00
committed by huanghuoguoguo
parent b793409bed
commit b0e576dbb8
2 changed files with 6 additions and 2 deletions
@@ -115,7 +115,7 @@ class AgentRuntimeContext(typing.TypedDict):
"""Agent runtime context.""" """Agent runtime context."""
langbot_version: str | None langbot_version: str | None
sdk_protocol_version: str protocol_version: str
trace_id: str | None trace_id: str | None
deadline_at: float | None deadline_at: float | None
metadata: dict[str, typing.Any] metadata: dict[str, typing.Any]
@@ -263,7 +263,7 @@ class AgentRunContextBuilder:
# Build runtime context # Build runtime context
runtime: AgentRuntimeContext = { runtime: AgentRuntimeContext = {
'langbot_version': self.ap.ver_mgr.get_current_version(), 'langbot_version': self.ap.ver_mgr.get_current_version(),
'sdk_protocol_version': descriptor.protocol_version, 'protocol_version': descriptor.protocol_version,
'trace_id': run_id, 'trace_id': run_id,
'deadline_at': self._build_deadline_from_binding(binding), 'deadline_at': self._build_deadline_from_binding(binding),
'metadata': { 'metadata': {
@@ -144,6 +144,10 @@ class TestContextValidation:
assert isinstance(validated.resources, AgentResources) assert isinstance(validated.resources, AgentResources)
assert validated.runtime is not None assert validated.runtime is not None
assert isinstance(validated.runtime, AgentRuntimeContext) assert isinstance(validated.runtime, AgentRuntimeContext)
assert validated.runtime.protocol_version == "1"
assert "protocol_version" in validated.runtime.model_dump()
assert "sdk_protocol_version" not in validated.runtime.model_dump()
assert "sdk_protocol_version" not in context_dict["runtime"]
# Verify event context # Verify event context
assert validated.event.event_id == "evt_1" assert validated.event.event_id == "evt_1"