Skip to content

feat(tool/cloud-storage): configure object operation parameters#3529

Open
huangjiahua wants to merge 1 commit into
googleapis:mainfrom
huangjiahua:feat/cloud-storage-configured-object-tools
Open

feat(tool/cloud-storage): configure object operation parameters#3529
huangjiahua wants to merge 1 commit into
googleapis:mainfrom
huangjiahua:feat/cloud-storage-configured-object-tools

Conversation

@huangjiahua

@huangjiahua huangjiahua commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

1. Description

Completes configurable parameter support for the remaining Cloud Storage object tools, using the functional-option parameter constructors introduced in #3314.

This change adds optional config-backed values for download, upload, write, copy, move, and delete object tools. Configured fields are hidden from the runtime manifest while zero-config tools keep their current parameter schemas. Download also supports a configured destination_dir, where the runtime destination remains visible but becomes a relative path constrained under that directory.

2. PR Checklist

  • Make sure to open an issue as a bug/issue before writing your code!
  • Ensure the tests and linter pass
  • Code coverage does not decrease (if any source code was changed)
  • Appropriate docs were updated (if necessary)
  • Make sure to add ! if this involves a breaking change

3. Issue Reference

Related to #3314 🦕

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

Copy link
Copy Markdown
Contributor

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 introduces tool-level configuration options for Google Cloud Storage (GCS) tools, allowing parameters like bucket, source_bucket, destination_bucket, destination_dir, and overwrite to be pre-configured. When configured, these parameters are hidden from the LLM's parameter list. It also adds path resolution safety via ResolveWithinDir to prevent directory traversal attacks during downloads, updates the corresponding documentation pages, and adds comprehensive unit and integration tests. I have no feedback to provide as there are no review comments to evaluate.

@huangjiahua huangjiahua marked this pull request as ready for review June 25, 2026 22:04
@huangjiahua huangjiahua requested a review from a team as a code owner June 25, 2026 22:04
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.

2 participants