googleapis / googleapis/python-aiplatform
ReasoningEngineSpec missing effectiveIdentity field causes ParseError when creating Agent Engines
- Dominant language
- Python
- Stars
- 905
- Forks
- 465
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 44
Description
## Environment
- **google-cloud-aiplatform version:** 1.136.0
- **google-adk version:** 1.24.0
- **Python version:** 3.12
- **OS:** Ubuntu Linux (GCE VM)
## Description
When creating a new Reasoning Engine using `vertexai.agent_engines.create()`, the API returns a response containing an `effectiveIdentity` field that is not defined in the local protobuf definitions, causing a `ParseError`.
The `effectiveIdentity` field is documented in the [REST API reference](https://cloud.google.com/vertex-ai/generative-ai/docs/reference/rest/v1/projects.locations.reasoningEngines#ReasoningEngineSpec) as an output-only field, but the Python SDK's proto definitions don't include it.
## Steps to Reproduce
```python
import vertexai
from vertexai import agent_engines
vertexai.init(project="my-project", location="us-central1")
# This triggers the error when parsing the API response
engine = agent_engines.create(display_name="test_engine")
```
## Error Message
```
Failed to parse spec field: Message type "google.cloud.aiplatform.v1.ReasoningEngineSpec" has no field named "effectiveIdentity" at "Operation.response.spec".
Available Fields(except extensions): "['sourceCodeSpec', 'serviceAccount', 'packageSpec', 'deploymentSpec', 'classMethods', 'agentFramework']".
```
## Expected Behavior
The SDK should be able to parse the API response without errors. The `effectiveIdentity` field should be added to the `ReasoningEngineSpec` proto definition.
## Additional Context
This is similar to:
- #5176 - `SpeechConfig` missing `languageCode`
- #4995 - `GenerationConfig` missing `responseModalities`
The pattern is the same: the API returns fields that the SDK's protobuf definitions don't yet support.
Contributor guide
Research direction
Start by locating the Python protobuf definition for ReasoningEngineSpec and reproduce the parse failure with the vertexai.agent_engines.create() example. Compare its fields with the REST API reference, then verify that a response containing effectiveIdentity parses successfully and that the relevant tests pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- api
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 65/100