From 09461dab398075ab571085af964cbb7edc616064 Mon Sep 17 00:00:00 2001 From: a2a-cloud Date: Sat, 18 Jul 2026 02:35:36 +0000 Subject: [PATCH] a2a-source-edit: write agent.py --- agent.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/agent.py b/agent.py index 66fdc9b..4c67ba7 100644 --- a/agent.py +++ b/agent.py @@ -28,6 +28,8 @@ from a2a_pack import ( RunContext, State, UploadedFile, + WorkspaceAccess, + WorkspaceMode, ) @@ -43,6 +45,10 @@ class QuoteJudgeStudioV1Config(BaseModel): """No caller-provided configuration is required.""" +class QuoteJudgeState(BaseModel): + last_comparison_id: str | None = None + + class QuoteInput(BaseModel): vendor: str = Field(..., min_length=1, max_length=MAX_VENDOR_LEN) unit_price: float = Field(..., gt=0, le=1_000_000) @@ -104,6 +110,13 @@ class QuoteJudgeStudioV1(A2AAgent[QuoteJudgeStudioV1Config, PlatformUserAuth]): ) resources = Resources(cpu="500m", memory="512Mi", max_runtime_seconds=120) state = State.DURABLE + state_model = QuoteJudgeState + workspace_access = WorkspaceAccess.dynamic( + max_files=4, + allowed_modes=(WorkspaceMode.READ_ONLY,), + require_reason=False, + max_total_size_bytes=MAX_UPLOAD_BYTES * 4, + ) platform_resources = AgentPlatformResources( databases=( AgentDatabase(