Skip to content

fix: error on invalid v1 config docs#2993

Merged
Yuan325 merged 5 commits intogoogleapis:mainfrom
Deeven-Seru:fix-2926-convertconfig
Apr 8, 2026
Merged

fix: error on invalid v1 config docs#2993
Yuan325 merged 5 commits intogoogleapis:mainfrom
Deeven-Seru:fix-2926-convertconfig

Conversation

@Deeven-Seru
Copy link
Copy Markdown
Contributor

Summary

  • return hard errors for invalid v1 docs in ConvertConfig (no silent drop)
  • include doc index + key path + v2 hint in error
  • add tests for invalid v1 docs

Testing

@Deeven-Seru Deeven-Seru requested a review from a team as a code owner April 8, 2026 12:25
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request enhances the configuration conversion process by introducing document indexing for more precise error reporting. It adds a check to identify documents already in the v2 format and ensures that invalid v1 configurations result in explicit errors rather than being silently ignored. The test suite has been updated to validate these new error paths and messages. I have no feedback to provide as there were no review comments to assess.

@Yuan325
Copy link
Copy Markdown
Contributor

Yuan325 commented Apr 8, 2026

/gemini review

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request enhances the configuration conversion process by introducing document indexing for clearer error reporting and improving the detection of v2 YAML formats. It adds a hasKindField utility to identify v2 documents and ensures that malformed v1 configurations trigger explicit errors instead of being ignored. Corresponding test cases were updated to validate these error conditions and messages. I have no feedback to provide.

Copy link
Copy Markdown
Contributor

@Yuan325 Yuan325 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Deeven-Seru Thank you! i think we won't need the "v2 formatting requiring kind + name". The error message should be clear enough, WDYT? I'll go ahead and merge this so we can include it in our release today, thank you!

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
@Yuan325
Copy link
Copy Markdown
Contributor

Yuan325 commented Apr 8, 2026

/gcbrun

@Yuan325
Copy link
Copy Markdown
Contributor

Yuan325 commented Apr 8, 2026

/gcbrun

@Yuan325 Yuan325 merged commit 62bdabb into googleapis:main Apr 8, 2026
14 checks passed
Yuan325 added a commit that referenced this pull request Apr 8, 2026
🤖 I have created a release *beep* *boop*
---


##
[0.32.0](v0.31.0...v0.32.0)
(2026-04-08)


### ⚠ BREAKING CHANGES

* update repo name
([#2968](#2968))

### Features

* Add MCP tool annotations to all remaining tools
([#2221](#2221))
([ea09db9](ea09db9))
* **bigquery:** Add conversational analytics tools for Data Agents
([#2517](#2517))
([2490a4b](2490a4b))
* **embeddingModel:** Add Backend API selection fields
([#2592](#2592))
([912aa9e](912aa9e))
* **skills:** Add Claude Code support to generated scripts
([#2966](#2966))
([a1609e1](a1609e1))
* **skills:** Add codex user agent
([#2973](#2973))
([070e939](070e939))
* **skills:** Tool invocation via npx
([#2916](#2916))
([377dc5b](377dc5b))
* **sources/singlestore:** Add ConnectionParams to SingleStore Config
([#2555](#2555))
([73e2a8c](73e2a8c))
* **tool/dataplex-lookup-context:** Relax project constraint and enforce
location
([#2952](#2952))
([7ebfdf1](7ebfdf1))
* **tools/looker:** Looker agent management from MCP
([#2830](#2830))
([649d4ad](649d4ad))
* **ui:** Update to use `/mcp` endpoint
([#2829](#2829))
([c3059c2](c3059c2))


### Bug Fixes

* **bigquery:** Add impersonateServiceAccount to prebuilt config
([#2770](#2770))
([9c3a748](9c3a748))
* **quickstart:** Robust tool lookup and modernize dependencies in
Python samples
([#2863](#2863))
([4c0845d](4c0845d))
* **skills:** Fix skill generation template
([#2914](#2914))
([a01a15e](a01a15e))
* **skills:** Prevent empty strings overriding optional env vars in node
scripts ([#2963](#2963))
([c52adeb](c52adeb))
* **tests/bigquery:** Implement uuid-based isolation and reliable
resource cleanup
([#2547](#2547))
([479d842](479d842))
* **tests/Bigtable:** Implement uuid-based isolation and reliable
resource cleanup
([#2880](#2880))
([a769f15](a769f15))
* Update error for ConvertConfig function
([#2993](#2993))
([62bdabb](62bdabb))


### Code Refactoring

* Update repo name
([#2968](#2968))
([3aae809](3aae809))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
github-actions bot pushed a commit that referenced this pull request Apr 8, 2026
🤖 I have created a release *beep* *boop*
---

##
[0.32.0](v0.31.0...v0.32.0)
(2026-04-08)

### ⚠ BREAKING CHANGES

* update repo name
([#2968](#2968))

### Features

* Add MCP tool annotations to all remaining tools
([#2221](#2221))
([ea09db9](ea09db9))
* **bigquery:** Add conversational analytics tools for Data Agents
([#2517](#2517))
([2490a4b](2490a4b))
* **embeddingModel:** Add Backend API selection fields
([#2592](#2592))
([912aa9e](912aa9e))
* **skills:** Add Claude Code support to generated scripts
([#2966](#2966))
([a1609e1](a1609e1))
* **skills:** Add codex user agent
([#2973](#2973))
([070e939](070e939))
* **skills:** Tool invocation via npx
([#2916](#2916))
([377dc5b](377dc5b))
* **sources/singlestore:** Add ConnectionParams to SingleStore Config
([#2555](#2555))
([73e2a8c](73e2a8c))
* **tool/dataplex-lookup-context:** Relax project constraint and enforce
location
([#2952](#2952))
([7ebfdf1](7ebfdf1))
* **tools/looker:** Looker agent management from MCP
([#2830](#2830))
([649d4ad](649d4ad))
* **ui:** Update to use `/mcp` endpoint
([#2829](#2829))
([c3059c2](c3059c2))

### Bug Fixes

* **bigquery:** Add impersonateServiceAccount to prebuilt config
([#2770](#2770))
([9c3a748](9c3a748))
* **quickstart:** Robust tool lookup and modernize dependencies in
Python samples
([#2863](#2863))
([4c0845d](4c0845d))
* **skills:** Fix skill generation template
([#2914](#2914))
([a01a15e](a01a15e))
* **skills:** Prevent empty strings overriding optional env vars in node
scripts ([#2963](#2963))
([c52adeb](c52adeb))
* **tests/bigquery:** Implement uuid-based isolation and reliable
resource cleanup
([#2547](#2547))
([479d842](479d842))
* **tests/Bigtable:** Implement uuid-based isolation and reliable
resource cleanup
([#2880](#2880))
([a769f15](a769f15))
* Update error for ConvertConfig function
([#2993](#2993))
([62bdabb](62bdabb))

### Code Refactoring

* Update repo name
([#2968](#2968))
([3aae809](3aae809))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com> b9ae1c6
github-actions bot pushed a commit to nowdaysmen-sudo/genai-toolbox that referenced this pull request Apr 8, 2026
🤖 I have created a release *beep* *boop*
---

##
[0.32.0](googleapis/mcp-toolbox@v0.31.0...v0.32.0)
(2026-04-08)

### ⚠ BREAKING CHANGES

* update repo name
([googleapis#2968](googleapis#2968))

### Features

* Add MCP tool annotations to all remaining tools
([googleapis#2221](googleapis#2221))
([ea09db9](googleapis@ea09db9))
* **bigquery:** Add conversational analytics tools for Data Agents
([googleapis#2517](googleapis#2517))
([2490a4b](googleapis@2490a4b))
* **embeddingModel:** Add Backend API selection fields
([googleapis#2592](googleapis#2592))
([912aa9e](googleapis@912aa9e))
* **skills:** Add Claude Code support to generated scripts
([googleapis#2966](googleapis#2966))
([a1609e1](googleapis@a1609e1))
* **skills:** Add codex user agent
([googleapis#2973](googleapis#2973))
([070e939](googleapis@070e939))
* **skills:** Tool invocation via npx
([googleapis#2916](googleapis#2916))
([377dc5b](googleapis@377dc5b))
* **sources/singlestore:** Add ConnectionParams to SingleStore Config
([googleapis#2555](googleapis#2555))
([73e2a8c](googleapis@73e2a8c))
* **tool/dataplex-lookup-context:** Relax project constraint and enforce
location
([googleapis#2952](googleapis#2952))
([7ebfdf1](googleapis@7ebfdf1))
* **tools/looker:** Looker agent management from MCP
([googleapis#2830](googleapis#2830))
([649d4ad](googleapis@649d4ad))
* **ui:** Update to use `/mcp` endpoint
([googleapis#2829](googleapis#2829))
([c3059c2](googleapis@c3059c2))

### Bug Fixes

* **bigquery:** Add impersonateServiceAccount to prebuilt config
([googleapis#2770](googleapis#2770))
([9c3a748](googleapis@9c3a748))
* **quickstart:** Robust tool lookup and modernize dependencies in
Python samples
([googleapis#2863](googleapis#2863))
([4c0845d](googleapis@4c0845d))
* **skills:** Fix skill generation template
([googleapis#2914](googleapis#2914))
([a01a15e](googleapis@a01a15e))
* **skills:** Prevent empty strings overriding optional env vars in node
scripts ([googleapis#2963](googleapis#2963))
([c52adeb](googleapis@c52adeb))
* **tests/bigquery:** Implement uuid-based isolation and reliable
resource cleanup
([googleapis#2547](googleapis#2547))
([479d842](googleapis@479d842))
* **tests/Bigtable:** Implement uuid-based isolation and reliable
resource cleanup
([googleapis#2880](googleapis#2880))
([a769f15](googleapis@a769f15))
* Update error for ConvertConfig function
([googleapis#2993](googleapis#2993))
([62bdabb](googleapis@62bdabb))

### Code Refactoring

* Update repo name
([googleapis#2968](googleapis#2968))
([3aae809](googleapis@3aae809))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com> b9ae1c6
github-actions bot pushed a commit to renovate-bot/googleapis-_-genai-toolbox that referenced this pull request Apr 8, 2026
🤖 I have created a release *beep* *boop*
---

##
[0.32.0](googleapis/mcp-toolbox@v0.31.0...v0.32.0)
(2026-04-08)

### ⚠ BREAKING CHANGES

* update repo name
([googleapis#2968](googleapis#2968))

### Features

* Add MCP tool annotations to all remaining tools
([googleapis#2221](googleapis#2221))
([ea09db9](googleapis@ea09db9))
* **bigquery:** Add conversational analytics tools for Data Agents
([googleapis#2517](googleapis#2517))
([2490a4b](googleapis@2490a4b))
* **embeddingModel:** Add Backend API selection fields
([googleapis#2592](googleapis#2592))
([912aa9e](googleapis@912aa9e))
* **skills:** Add Claude Code support to generated scripts
([googleapis#2966](googleapis#2966))
([a1609e1](googleapis@a1609e1))
* **skills:** Add codex user agent
([googleapis#2973](googleapis#2973))
([070e939](googleapis@070e939))
* **skills:** Tool invocation via npx
([googleapis#2916](googleapis#2916))
([377dc5b](googleapis@377dc5b))
* **sources/singlestore:** Add ConnectionParams to SingleStore Config
([googleapis#2555](googleapis#2555))
([73e2a8c](googleapis@73e2a8c))
* **tool/dataplex-lookup-context:** Relax project constraint and enforce
location
([googleapis#2952](googleapis#2952))
([7ebfdf1](googleapis@7ebfdf1))
* **tools/looker:** Looker agent management from MCP
([googleapis#2830](googleapis#2830))
([649d4ad](googleapis@649d4ad))
* **ui:** Update to use `/mcp` endpoint
([googleapis#2829](googleapis#2829))
([c3059c2](googleapis@c3059c2))

### Bug Fixes

* **bigquery:** Add impersonateServiceAccount to prebuilt config
([googleapis#2770](googleapis#2770))
([9c3a748](googleapis@9c3a748))
* **quickstart:** Robust tool lookup and modernize dependencies in
Python samples
([googleapis#2863](googleapis#2863))
([4c0845d](googleapis@4c0845d))
* **skills:** Fix skill generation template
([googleapis#2914](googleapis#2914))
([a01a15e](googleapis@a01a15e))
* **skills:** Prevent empty strings overriding optional env vars in node
scripts ([googleapis#2963](googleapis#2963))
([c52adeb](googleapis@c52adeb))
* **tests/bigquery:** Implement uuid-based isolation and reliable
resource cleanup
([googleapis#2547](googleapis#2547))
([479d842](googleapis@479d842))
* **tests/Bigtable:** Implement uuid-based isolation and reliable
resource cleanup
([googleapis#2880](googleapis#2880))
([a769f15](googleapis@a769f15))
* Update error for ConvertConfig function
([googleapis#2993](googleapis#2993))
([62bdabb](googleapis@62bdabb))

### Code Refactoring

* Update repo name
([googleapis#2968](googleapis#2968))
([3aae809](googleapis@3aae809))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com> b9ae1c6
github-actions bot pushed a commit to Jaleel-zhu/genai-toolbox that referenced this pull request Apr 8, 2026
🤖 I have created a release *beep* *boop*
---

##
[0.32.0](googleapis/mcp-toolbox@v0.31.0...v0.32.0)
(2026-04-08)

### ⚠ BREAKING CHANGES

* update repo name
([googleapis#2968](googleapis#2968))

### Features

* Add MCP tool annotations to all remaining tools
([googleapis#2221](googleapis#2221))
([ea09db9](googleapis@ea09db9))
* **bigquery:** Add conversational analytics tools for Data Agents
([googleapis#2517](googleapis#2517))
([2490a4b](googleapis@2490a4b))
* **embeddingModel:** Add Backend API selection fields
([googleapis#2592](googleapis#2592))
([912aa9e](googleapis@912aa9e))
* **skills:** Add Claude Code support to generated scripts
([googleapis#2966](googleapis#2966))
([a1609e1](googleapis@a1609e1))
* **skills:** Add codex user agent
([googleapis#2973](googleapis#2973))
([070e939](googleapis@070e939))
* **skills:** Tool invocation via npx
([googleapis#2916](googleapis#2916))
([377dc5b](googleapis@377dc5b))
* **sources/singlestore:** Add ConnectionParams to SingleStore Config
([googleapis#2555](googleapis#2555))
([73e2a8c](googleapis@73e2a8c))
* **tool/dataplex-lookup-context:** Relax project constraint and enforce
location
([googleapis#2952](googleapis#2952))
([7ebfdf1](googleapis@7ebfdf1))
* **tools/looker:** Looker agent management from MCP
([googleapis#2830](googleapis#2830))
([649d4ad](googleapis@649d4ad))
* **ui:** Update to use `/mcp` endpoint
([googleapis#2829](googleapis#2829))
([c3059c2](googleapis@c3059c2))

### Bug Fixes

* **bigquery:** Add impersonateServiceAccount to prebuilt config
([googleapis#2770](googleapis#2770))
([9c3a748](googleapis@9c3a748))
* **quickstart:** Robust tool lookup and modernize dependencies in
Python samples
([googleapis#2863](googleapis#2863))
([4c0845d](googleapis@4c0845d))
* **skills:** Fix skill generation template
([googleapis#2914](googleapis#2914))
([a01a15e](googleapis@a01a15e))
* **skills:** Prevent empty strings overriding optional env vars in node
scripts ([googleapis#2963](googleapis#2963))
([c52adeb](googleapis@c52adeb))
* **tests/bigquery:** Implement uuid-based isolation and reliable
resource cleanup
([googleapis#2547](googleapis#2547))
([479d842](googleapis@479d842))
* **tests/Bigtable:** Implement uuid-based isolation and reliable
resource cleanup
([googleapis#2880](googleapis#2880))
([a769f15](googleapis@a769f15))
* Update error for ConvertConfig function
([googleapis#2993](googleapis#2993))
([62bdabb](googleapis@62bdabb))

### Code Refactoring

* Update repo name
([googleapis#2968](googleapis#2968))
([3aae809](googleapis@3aae809))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com> b9ae1c6
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Config conversion should not silently drop invalid docs

2 participants