From ebad59b63fa32b87db1a2ad427dcc57c9653ea35 Mon Sep 17 00:00:00 2001 From: eman-cickusic Date: Wed, 15 Jul 2026 20:27:06 +0200 Subject: [PATCH 1/4] Fix whatsapp_agent 404: use GA gemini-2.5-flash (2.0-flash retired) The /message endpoint runs whatsapp_agent, pinned to gemini-2.0-flash. That model is decommissioned on Vertex AI and now returns 404 NOT_FOUND "Publisher model ... was not found or your project does not have access to it" for every call (reproduced in us-east1 against both benevolent-bandwidth and b2-platform). It is not an IAM issue -- a missing role returns 403, and gemini-2.5-flash returns 200 with the same credentials. Switch to gemini-2.5-flash (GA, verified 200 in us-east1, already used by poc_deathCertParserAgent; works with thinking_budget: 0). Co-Authored-By: Claude Opus 4.8 (1M context) --- agents/whatsapp_agent.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/agents/whatsapp_agent.yaml b/agents/whatsapp_agent.yaml index 5084722..00711db 100644 --- a/agents/whatsapp_agent.yaml +++ b/agents/whatsapp_agent.yaml @@ -24,6 +24,6 @@ system_prompt: | provider: type: gemini - model: gemini-2.0-flash + model: gemini-2.5-flash settings: thinking_budget: 0 From 6a8275c90d07f46fdb0a0e7c8464088d6132a031 Mon Sep 17 00:00:00 2001 From: AnkitGole Date: Wed, 15 Jul 2026 12:15:58 -0700 Subject: [PATCH 2/4] fix(build): slim pydantic-ai extras, use GoogleCloudProvider - pydantic-ai -> pydantic-ai-slim[google,vertexai] to avoid logfire transitive conflict that broke Cloud Build - GoogleProvider(vertexai=True) -> GoogleCloudProvider to clear deprecation warning in Cloud Run logs --- requirements-api.txt | 2 +- src/orchestrator/agent.py | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/requirements-api.txt b/requirements-api.txt index 89eb63f..f1a0c61 100644 --- a/requirements-api.txt +++ b/requirements-api.txt @@ -6,7 +6,7 @@ fastapi>=0.115.0 uvicorn[standard]>=0.30.0 pydantic>=2.8.0 pydantic-settings>=2.3.0 -pydantic-ai==1.98.0 +pydantic-ai-slim[google,vertexai]==1.98.0 google-genai>=1.0.0 google-cloud-firestore>=2.0.0 numpy>=1.26.0 diff --git a/src/orchestrator/agent.py b/src/orchestrator/agent.py index c3b454a..3c9004a 100644 --- a/src/orchestrator/agent.py +++ b/src/orchestrator/agent.py @@ -14,7 +14,7 @@ from pydantic_ai.messages import ModelMessage, UserContent from pydantic_ai.models import Model from pydantic_ai.models.google import GoogleModel -from pydantic_ai.providers.google import GoogleProvider +from pydantic_ai.providers.google import GoogleCloudProvider from . import prompts, tools @@ -147,8 +147,7 @@ def _build_gemini_model(cls, provider: dict[str, Any], model_name: str) -> tuple model_settings = cls._model_settings_from_provider(provider, model_name) model = GoogleModel( model_name, - provider=GoogleProvider( - vertexai=True, + provider=GoogleCloudProvider( project=project, location=location, ), From 4b5cfa50cd12cf60c3211d98671b20c11772af01 Mon Sep 17 00:00:00 2001 From: AnkitGole Date: Wed, 15 Jul 2026 12:29:44 -0700 Subject: [PATCH 3/4] =?UTF-8?q?revert(agent):=20restore=20GoogleProvider?= =?UTF-8?q?=20=E2=80=94=20GoogleCloudProvider=20not=20in=20pydantic-ai=201?= =?UTF-8?q?.98.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/orchestrator/agent.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/orchestrator/agent.py b/src/orchestrator/agent.py index 3c9004a..c3b454a 100644 --- a/src/orchestrator/agent.py +++ b/src/orchestrator/agent.py @@ -14,7 +14,7 @@ from pydantic_ai.messages import ModelMessage, UserContent from pydantic_ai.models import Model from pydantic_ai.models.google import GoogleModel -from pydantic_ai.providers.google import GoogleCloudProvider +from pydantic_ai.providers.google import GoogleProvider from . import prompts, tools @@ -147,7 +147,8 @@ def _build_gemini_model(cls, provider: dict[str, Any], model_name: str) -> tuple model_settings = cls._model_settings_from_provider(provider, model_name) model = GoogleModel( model_name, - provider=GoogleCloudProvider( + provider=GoogleProvider( + vertexai=True, project=project, location=location, ), From 47a93fef5e7c39b07635c031c249d495bce1a45e Mon Sep 17 00:00:00 2001 From: AnkitGole Date: Wed, 15 Jul 2026 12:38:10 -0700 Subject: [PATCH 4/4] fix(agents): replace non-existent gemini-3.1-flash-lite-preview with gemini-2.5-flash --- agents/creativeAgent.yaml | 2 +- agents/exampleAgent.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/agents/creativeAgent.yaml b/agents/creativeAgent.yaml index a39575f..bc1260e 100644 --- a/agents/creativeAgent.yaml +++ b/agents/creativeAgent.yaml @@ -19,7 +19,7 @@ tools: provider: type: gemini - model: gemini-3.1-flash-lite-preview + model: gemini-2.5-flash settings: thinking_budget: 0 diff --git a/agents/exampleAgent.yaml b/agents/exampleAgent.yaml index 8a597e8..7eebaa6 100644 --- a/agents/exampleAgent.yaml +++ b/agents/exampleAgent.yaml @@ -16,7 +16,7 @@ tools: provider: type: gemini - model: gemini-3.1-flash-lite-preview + model: gemini-2.5-flash settings: thinking_budget: 0