Skip to content

feat: add support for stateless MCP 2026 draft and protocol negotiation fallback - #699

Merged
anubhav756 merged 5 commits into
mainfrom
mcp-v202606
Jul 9, 2026
Merged

anubhav756 merged 5 commits into
mainfrom
mcp-v202606

feat: support user-defined fallback protocols array (#707)

e0c772c
Select commit
Loading
Failed to load commit list.
Google Cloud Build / adk-python-sdk-pr-py310 (toolbox-testing-438616) succeeded Jul 9, 2026 in 1m 2s

Summary

Build Information

Trigger adk-python-sdk-pr-py310
Build 92e2a52f-fd4a-4ecd-9627-35df04081476
Start 2026-07-09T04:30:52-07:00
Duration 55.969s
Status SUCCESS

Steps

Step Status Duration
Install requirements SUCCESS 22.458s
Run integration tests SUCCESS 29.597s

Details


starting build "92e2a52f-fd4a-4ecd-9627-35df04081476"

FETCHSOURCE
From https://github.com/googleapis/mcp-toolbox-sdk-python
 * branch            e0c772cf3cac93ad3eb513be5325726e465f111d -> FETCH_HEAD
HEAD is now at e0c772c feat: support user-defined fallback protocols array (#707)
GitCommit:
e0c772cf3cac93ad3eb513be5325726e465f111d
BUILD
Starting Step #0 - "Install requirements"
Step #0 - "Install requirements": Pulling image: python:3.10
Step #0 - "Install requirements": 3.10: Pulling from library/python
Step #0 - "Install requirements": aa3e9ef32f73: Already exists
Step #0 - "Install requirements": 3f59c84a7863: Already exists
Step #0 - "Install requirements": 30d0db852850: Already exists
Step #0 - "Install requirements": 0252e6abaf0f: Already exists
Step #0 - "Install requirements": 80a4e88782de: Pulling fs layer
Step #0 - "Install requirements": 10a1f22bdca6: Pulling fs layer
Step #0 - "Install requirements": 120ba859d699: Pulling fs layer
Step #0 - "Install requirements": 120ba859d699: Verifying Checksum
Step #0 - "Install requirements": 120ba859d699: Download complete
Step #0 - "Install requirements": 80a4e88782de: Verifying Checksum
Step #0 - "Install requirements": 80a4e88782de: Download complete
Step #0 - "Install requirements": 10a1f22bdca6: Verifying Checksum
Step #0 - "Install requirements": 10a1f22bdca6: Download complete
Step #0 - "Install requirements": 80a4e88782de: Pull complete
Step #0 - "Install requirements": 10a1f22bdca6: Pull complete
Step #0 - "Install requirements": 120ba859d699: Pull complete
Step #0 - "Install requirements": Digest: sha256:41161d378d6f09dec7f9b2cae08fa6874ad98b794723cf2f78c4a378a78b33c0
Step #0 - "Install requirements": Status: Downloaded newer image for python:3.10
Step #0 - "Install requirements": docker.io/library/python:3.10
Step #0 - "Install requirements": Collecting uv
Step #0 - "Install requirements":   Downloading uv-0.11.28-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (27.1 MB)
Step #0 - "Install requirements":      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 27.1/27.1 MB 60.0 MB/s eta 0:00:00
Step #0 - "Install requirements": Installing collected packages: uv
Step #0 - "Install requirements": Successfully installed uv-0.11.28
Step #0 - "Install requirements": WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
Step #0 - "Install requirements": 
Step #0 - "Install requirements": [notice] A new release of pip is available: 23.0.1 -> 26.1.2
Step #0 - "Install requirements": [notice] To update, run: pip install --upgrade pip
Step #0 - "Install requirements": Using CPython 3.10.20 interpreter at: /usr/local/bin/python3
Step #0 - "Install requirements": Creating virtual environment at: /workspace/venv
Step #0 - "Install requirements": Activate with: source /workspace/venv/bin/activate
Step #0 - "Install requirements": Using Python 3.10.20 environment at: /workspace/venv
Step #0 - "Install requirements": Resolved 1 package in 185ms
Step #0 - "Install requirements": Downloading uv (25.9MiB)
Step #0 - "Install requirements":  Downloaded uv
Step #0 - "Install requirements": Prepared 1 package in 293ms
Step #0 - "Install requirements": warning: Failed to hardlink files; falling back to full copy. This may lead to degraded performance.
Step #0 - "Install requirements":          If the cache and target directories are on different filesystems, hardlinking may not be supported.
Step #0 - "Install requirements":          If this is intentional, set `export UV_LINK_MODE=copy` or use `--link-mode=copy` to suppress this warning.
Step #0 - "Install requirements": Installed 1 package in 74ms
Step #0 - "Install requirements":  + uv==0.11.28
Step #0 - "Install requirements": Using Python 3.10.20 environment at: /workspace/venv
Step #0 - "Install requirements": Resolved 127 packages in 1.59s
Step #0 - "Install requirements":    Building toolbox-core @ file:///workspace/packages/toolbox-core
Step #0 - "Install requirements": Downloading grpcio (6.6MiB)
Step #0 - "Install requirements": Downloading google-api-python-client (14.9MiB)
Step #0 - "Install requirements": Downloading pydantic-core (2.0MiB)
Step #0 - "Install requirements": Downloading cryptography (4.5MiB)
Step #0 - "Install requirements": Downloading sqlalchemy (3.1MiB)
Step #0 - "Install requirements": Downloading google-cloud-discoveryengine (3.2MiB)
Step #0 - "Install requirements": Downloading google-adk (2.7MiB)
Step #0 - "Install requirements": Downloading aiohttp (1.6MiB)
Step #0 - "Install requirements": Downloading google-cloud-aiplatform (8.9MiB)
Step #0 - "Install requirements": Downloading pyarrow (46.6MiB)
Step #0 - "Install requirements":       Built toolbox-core @ file:///workspace/packages/toolbox-core
Step #0 - "Install requirements":  Downloaded aiohttp
Step #0 - "Install requirements":  Downloaded pydantic-core
Step #0 - "Install requirements":  Downloaded sqlalchemy
Step #0 - "Install requirements":  Downloaded cryptography
Step #0 - "Install requirements":  Downloaded grpcio
Step #0 - "Install requirements":  Downloaded google-adk
Step #0 - "Install requirements":  Downloaded google-cloud-discoveryengine
Step #0 - "Install requirements":  Downloaded google-api-python-client
Step #0 - "Install requirements":  Downloaded pyarrow
Step #0 - "Install requirements":  Downloaded google-cloud-aiplatform
Step #0 - "Install requirements": Prepared 127 packages in 2.26s
Step #0 - "Install requirements": warning: Failed to hardlink files; falling back to full copy. This may lead to degraded performance.
Step #0 - "Install requirements":          If the cache and target directories are on different filesystems, hardlinking may not be supported.
Step #0 - "Install requirements":          If this is intentional, set `export UV_LINK_MODE=copy` or use `--link-mode=copy` to suppress this warning.
Step #0 - "Install requirements": Installed 127 packages in 1.96s
Step #0 - "Install requirements":  + aiohappyeyeballs==2.7.1
Step #0 - "Install requirements":  + aiohttp==3.14.1
Step #0 - "Install requirements":  + aiosignal==1.4.0
Step #0 - "Install requirements":  + aiosqlite==0.22.1
Step #0 - "Install requirements":  + alembic==1.18.5
Step #0 - "Install requirements":  + annotated-doc==0.0.4
Step #0 - "Install requirements":  + annotated-types==0.7.0
Step #0 - "Install requirements":  + anyio==4.14.1
Step #0 - "Install requirements":  + async-timeout==5.0.1
Step #0 - "Install requirements":  + attrs==26.1.0
Step #0 - "Install requirements":  + authlib==1.7.2
Step #0 - "Install requirements":  + certifi==2026.6.17
Step #0 - "Install requirements":  + cffi==2.1.0
Step #0 - "Install requirements":  + charset-normalizer==3.4.9
Step #0 - "Install requirements":  + click==8.4.2
Step #0 - "Install requirements":  + cloudpickle==3.1.2
Step #0 - "Install requirements":  + cryptography==49.0.0
Step #0 - "Install requirements":  + deprecated==1.3.1
Step #0 - "Install requirements":  + distro==1.9.0
Step #0 - "Install requirements":  + docstring-parser==0.18.0
Step #0 - "Install requirements":  + exceptiongroup==1.3.1
Step #0 - "Install requirements":  + fastapi==0.139.0
Step #0 - "Install requirements":  + frozenlist==1.8.0
Step #0 - "Install requirements":  + google-adk==1.34.1
Step #0 - "Install requirements":  + google-api-core==2.31.0
Step #0 - "Install requirements":  + google-api-python-client==2.198.0
Step #0 - "Install requirements":  + google-auth==2.53.0
Step #0 - "Install requirements":  + google-auth-httplib2==0.4.0
Step #0 - "Install requirements":  + google-auth-oauthlib==1.4.0
Step #0 - "Install requirements":  + google-cloud-aiplatform==1.160.0
Step #0 - "Install requirements":  + google-cloud-appengine-logging==1.10.0
Step #0 - "Install requirements":  + google-cloud-audit-log==0.6.0
Step #0 - "Install requirements":  + google-cloud-bigquery==3.42.2
Step #0 - "Install requirements":  + google-cloud-bigquery-storage==2.39.0
Step #0 - "Install requirements":  + google-cloud-bigtable==2.40.0
Step #0 - "Install requirements":  + google-cloud-core==2.6.0
Step #0 - "Install requirements":  + google-cloud-dataplex==2.20.0
Step #0 - "Install requirements":  + google-cloud-discoveryengine==0.13.12
Step #0 - "Install requirements":  + google-cloud-iam==2.24.0
Step #0 - "Install requirements":  + google-cloud-logging==3.16.1
Step #0 - "Install requirements":  + google-cloud-monitoring==2.31.0
Step #0 - "Install requirements":  + google-cloud-pubsub==2.39.0
Step #0 - "Install requirements":  + google-cloud-resource-manager==1.18.0
Step #0 - "Install requirements":  + google-cloud-secret-manager==2.29.0
Step #0 - "Install requirements":  + google-cloud-spanner==3.69.0
Step #0 - "Install requirements":  + google-cloud-speech==2.40.0
Step #0 - "Install requirements":  + google-cloud-storage==3.12.1
Step #0 - "Install requirements":  + google-cloud-trace==1.20.0
Step #0 - "Install requirements":  + google-crc32c==1.8.0
Step #0 - "Install requirements":  + google-genai==1.75.0
Step #0 - "Install requirements":  + google-resumable-media==2.10.0
Step #0 - "Install requirements":  + googleapis-common-protos==1.75.0
Step #0 - "Install requirements":  + graphviz==0.21
Step #0 - "Install requirements":  + greenlet==3.5.3
Step #0 - "Install requirements":  + grpc-google-iam-v1==0.14.4
Step #0 - "Install requirements":  + grpc-interceptor==0.15.4
Step #0 - "Install requirements":  + grpcio==1.82.1
Step #0 - "Install requirements":  + grpcio-status==1.81.1
Step #0 - "Install requirements":  + h11==0.16.0
Step #0 - "Install requirements":  + httpcore==1.0.9
Step #0 - "Install requirements":  + httplib2==0.32.0
Step #0 - "Install requirements":  + httpx==0.28.1
Step #0 - "Install requirements":  + httpx-sse==0.4.3
Step #0 - "Install requirements":  + idna==3.18
Step #0 - "Install requirements":  + importlib-metadata==8.7.1
Step #0 - "Install requirements":  + joserfc==1.7.3
Step #0 - "Install requirements":  + jsonschema==4.26.0
Step #0 - "Install requirements":  + jsonschema-specifications==2025.9.1
Step #0 - "Install requirements":  + mako==1.3.12
Step #0 - "Install requirements":  + markupsafe==3.0.3
Step #0 - "Install requirements":  + mcp==1.28.1
Step #0 - "Install requirements":  + mmh3==5.2.1
Step #0 - "Install requirements":  + multidict==6.7.1
Step #0 - "Install requirements":  + oauthlib==3.3.1
Step #0 - "Install requirements":  + opentelemetry-api==1.41.1
Step #0 - "Install requirements":  + opentelemetry-exporter-gcp-logging==1.12.0a0
Step #0 - "Install requirements":  + opentelemetry-exporter-gcp-monitoring==1.9.0a0
Step #0 - "Install requirements":  + opentelemetry-exporter-gcp-trace==1.12.0
Step #0 - "Install requirements":  + opentelemetry-exporter-otlp-proto-common==1.41.1
Step #0 - "Install requirements":  + opentelemetry-exporter-otlp-proto-http==1.41.1
Step #0 - "Install requirements":  + opentelemetry-proto==1.41.1
Step #0 - "Install requirements":  + opentelemetry-resourcedetector-gcp==1.12.0a0
Step #0 - "Install requirements":  + opentelemetry-sdk==1.41.1
Step #0 - "Install requirements":  + opentelemetry-semantic-conventions==0.62b1
Step #0 - "Install requirements":  + packaging==26.2
Step #0 - "Install requirements":  + propcache==0.5.2
Step #0 - "Install requirements":  + proto-plus==1.28.1
Step #0 - "Install requirements":  + protobuf==6.33.6
Step #0 - "Install requirements":  + pyarrow==24.0.0
Step #0 - "Install requirements":  + pyasn1==0.6.4
Step #0 - "Install requirements":  + pyasn1-modules==0.4.2
Step #0 - "Install requirements":  + pycparser==3.0
Step #0 - "Install requirements":  + pydantic==2.13.4
Step #0 - "Install requirements":  + pydantic-core==2.46.4
Step #0 - "Install requirements":  + pydantic-settings==2.14.2
Step #0 - "Install requirements":  + pyjwt==2.13.0
Step #0 - "Install requirements":  + pyopenssl==26.3.0
Step #0 - "Install requirements":  + pyparsing==3.3.2
Step #0 - "Install requirements":  + python-dateutil==2.9.0.post0
Step #0 - "Install requirements":  + python-dotenv==1.2.2
Step #0 - "Install requirements":  + python-multipart==0.0.32
Step #0 - "Install requirements":  + pyyaml==6.0.3
Step #0 - "Install requirements":  + referencing==0.37.0
Step #0 - "Install requirements":  + requests==2.34.2
Step #0 - "Install requirements":  + requests-oauthlib==2.0.0
Step #0 - "Install requirements":  + rpds-py==0.30.0
Step #0 - "Install requirements":  + six==1.17.0
Step #0 - "Install requirements":  + sniffio==1.3.1
Step #0 - "Install requirements":  + sqlalchemy==2.0.51
Step #0 - "Install requirements":  + sqlalchemy-spanner==1.19.0
Step #0 - "Install requirements":  + sqlparse==0.5.5
Step #0 - "Install requirements":  + sse-starlette==3.4.5
Step #0 - "Install requirements":  + starlette==0.52.1
Step #0 - "Install requirements":  + tenacity==9.1.4
Step #0 - "Install requirements":  + tomli==2.4.1
Step #0 - "Install requirements":  + toolbox-core==1.1.0 (from file:///workspace/packages/toolbox-core)
Step #0 - "Install requirements":  + typing-extensions==4.15.0
Step #0 - "Install requirements":  + typing-inspection==0.4.2
Step #0 - "Install requirements":  + tzlocal==5.4.4
Step #0 - "Install requirements":  + uritemplate==4.2.0
Step #0 - "Install requirements":  + urllib3==2.7.0
Step #0 - "Install requirements":  + uvicorn==0.51.0
Step #0 - "Install requirements":  + watchdog==6.0.0
Step #0 - "Install requirements":  + websockets==15.0.1
Step #0 - "Install requirements":  + wrapt==2.2.2
Step #0 - "Install requirements":  + yarl==1.24.2
Step #0 - "Install requirements":  + zipp==4.1.0
Step #0 - "Install requirements": Using Python 3.10.20 environment at: /workspace/venv
Step #0 - "Install requirements": Resolved 162 packages in 1.01s
Step #0 - "Install requirements":    Building toolbox-adk @ file:///workspace/packages/toolbox-adk
Step #0 - "Install requirements": Downloading pygments (1.2MiB)
Step #0 - "Install requirements": Downloading ast-serialize (1.2MiB)
Step #0 - "Install requirements": Downloading jedi (4.7MiB)
Step #0 - "Install requirements": Downloading numpy (17.4MiB)
Step #0 - "Install requirements": Downloading black (1.8MiB)
Step #0 - "Install requirements": Downloading mypy (14.3MiB)
Step #0 - "Install requirements":  Downloaded ast-serialize
Step #0 - "Install requirements":  Downloaded black
Step #0 - "Install requirements":       Built toolbox-adk @ file:///workspace/packages/toolbox-adk
Step #0 - "Install requirements":  Downloaded pygments
Step #0 - "Install requirements":  Downloaded numpy
Step #0 - "Install requirements":  Downloaded mypy
Step #0 - "Install requirements":  Downloaded jedi
Step #0 - "Install requirements": Prepared 35 packages in 1.63s
Step #0 - "Install requirements": warning: Failed to hardlink files; falling back to full copy. This may lead to degraded performance.
Step #0 - "Install requirements":          If the cache and target directories are on different filesystems, hardlinking may not be supported.
Step #0 - "Install requirements":          If this is intentional, set `export UV_LINK_MODE=copy` or use `--link-mode=copy` to suppress this warning.
Step #0 - "Install requirements": Installed 35 packages in 1.23s
Step #0 - "Install requirements":  + ast-serialize==0.6.0
Step #0 - "Install requirements":  + asttokens==3.0.1
Step #0 - "Install requirements":  + backports-asyncio-runner==1.2.0
Step #0 - "Install requirements":  + black==26.5.1
Step #0 - "Install requirements":  + coverage==7.15.0
Step #0 - "Install requirements":  + decorator==5.3.1
Step #0 - "Install requirements":  + executing==2.2.1
Step #0 - "Install requirements":  + iniconfig==2.3.0
Step #0 - "Install requirements":  + ipython==8.39.0
Step #0 - "Install requirements":  + isort==8.0.1
Step #0 - "Install requirements":  + jedi==0.20.0
Step #0 - "Install requirements":  + librt==0.13.0
Step #0 - "Install requirements":  + matplotlib-inline==0.2.2
Step #0 - "Install requirements":  + mypy==2.1.0
Step #0 - "Install requirements":  + mypy-extensions==1.1.0
Step #0 - "Install requirements":  + numpy==1.26.4
Step #0 - "Install requirements":  + parso==0.8.7
Step #0 - "Install requirements":  + pathspec==1.1.1
Step #0 - "Install requirements":  + pexpect==4.9.0
Step #0 - "Install requirements":  + platformdirs==4.10.0
Step #0 - "Install requirements":  + pluggy==1.6.0
Step #0 - "Install requirements":  + prompt-toolkit==3.0.52
Step #0 - "Install requirements":  + ptyprocess==0.7.0
Step #0 - "Install requirements":  + pure-eval==0.2.3
Step #0 - "Install requirements":  + pygments==2.20.0
Step #0 - "Install requirements":  + pytest==9.0.3
Step #0 - "Install requirements":  + pytest-asyncio==1.4.0
Step #0 - "Install requirements":  + pytest-cov==7.1.0
Step #0 - "Install requirements":  + pytest-mock==3.15.1
Step #0 - "Install requirements":  + pytokens==0.4.1
Step #0 - "Install requirements":  + stack-data==0.6.3
Step #0 - "Install requirements":  + tokenize-rt==6.2.0
Step #0 - "Install requirements":  + toolbox-adk==1.0.1 (from file:///workspace/packages/toolbox-adk)
Step #0 - "Install requirements":  + traitlets==5.15.1
Step #0 - "Install requirements":  + wcwidth==0.8.2
Finished Step #0 - "Install requirements"
Starting Step #1 - "Run integration tests"
Step #1 - "Run integration tests": Already have image (with digest): python:3.10
Step #1 - "Run integration tests": ============================= test session starts ==============================
Step #1 - "Run integration tests": platform linux -- Python 3.10.20, pytest-9.0.3, pluggy-1.6.0
Step #1 - "Run integration tests": rootdir: /workspace/packages/toolbox-adk
Step #1 - "Run integration tests": configfile: pyproject.toml
Step #1 - "Run integration tests": plugins: cov-7.1.0, mock-3.15.1, asyncio-1.4.0, anyio-4.14.1
Step #1 - "Run integration tests": asyncio: mode=strict, debug=False, asyncio_default_fixture_loop_scope=None, asyncio_default_test_loop_scope=function
Step #1 - "Run integration tests": collected 118 items
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": tests/integration/test_integration.py ...............................s.. [ 28%]
Step #1 - "Run integration tests": .............................s                                           [ 54%]
Step #1 - "Run integration tests": tests/unit/test_client.py ..............                                 [ 66%]
Step #1 - "Run integration tests": tests/unit/test_credentials.py ................                          [ 79%]
Step #1 - "Run integration tests": tests/unit/test_tool.py ..............                                   [ 91%]
Step #1 - "Run integration tests": tests/unit/test_toolset.py ..........                                    [100%]
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": =============================== warnings summary ===============================
Step #1 - "Run integration tests": ../../venv/lib/python3.10/site-packages/google/api_core/_python_version_support.py:255
Step #1 - "Run integration tests":   /workspace/venv/lib/python3.10/site-packages/google/api_core/_python_version_support.py:255: FutureWarning: You are using a Python version (3.10.20) which Google will stop supporting in new releases of google.api_core once it reaches its end of life (2026-10-04). Please upgrade to the latest Python version, or at least Python 3.11, to continue receiving updates for google.api_core past that date.
Step #1 - "Run integration tests":     warnings.warn(message, FutureWarning)
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": ../../venv/lib/python3.10/site-packages/google/api_core/_python_version_support.py:255
Step #1 - "Run integration tests":   /workspace/venv/lib/python3.10/site-packages/google/api_core/_python_version_support.py:255: FutureWarning: You are using a Python version (3.10.20) which Google will stop supporting in new releases of google.cloud.secretmanager_v1 once it reaches its end of life (2026-10-04). Please upgrade to the latest Python version, or at least Python 3.11, to continue receiving updates for google.cloud.secretmanager_v1 past that date.
Step #1 - "Run integration tests":     warnings.warn(message, FutureWarning)
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": tests/integration/test_integration.py: 18 warnings
Step #1 - "Run integration tests":   /workspace/packages/toolbox-core/src/toolbox_core/utils.py:56: UserWarning: This connection is using HTTP. To prevent credential exposure, please ensure all communication is sent over HTTPS.
Step #1 - "Run integration tests":     warnings.warn(
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": tests/integration/test_integration.py::TestToolboxAdkIntegration::test_3lo_flow_simulation[http://localhost:5000]
Step #1 - "Run integration tests": tests/integration/test_integration.py::TestToolboxAdkIntegration::test_3lo_flow_simulation[http://localhost:5000]
Step #1 - "Run integration tests": tests/integration/test_integration.py::TestToolboxAdkIntegration::test_3lo_flow_simulation[http://localhost:5001]
Step #1 - "Run integration tests": tests/integration/test_integration.py::TestToolboxAdkIntegration::test_3lo_flow_simulation[http://localhost:5001]
Step #1 - "Run integration tests": tests/unit/test_credentials.py::TestCredentialStrategy::test_from_adk_auth_config
Step #1 - "Run integration tests": tests/unit/test_tool.py::TestToolboxTool::test_3lo_request_credential_when_missing
Step #1 - "Run integration tests": tests/unit/test_tool.py::TestToolboxTool::test_3lo_uses_existing_credential
Step #1 - "Run integration tests": tests/unit/test_tool.py::TestToolboxTool::test_3lo_exception_reraise
Step #1 - "Run integration tests": tests/unit/test_tool.py::TestToolboxTool::test_3lo_exception_fallback
Step #1 - "Run integration tests":   /workspace/venv/lib/python3.10/site-packages/google/adk/auth/auth_tool.py:94: DeprecationWarning: This method is deprecated. Use credential_key instead.
Step #1 - "Run integration tests":     self.credential_key = self.get_credential_key()
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
Step #1 - "Run integration tests": ================================ tests coverage ================================
Step #1 - "Run integration tests": _______________ coverage: platform linux, python 3.10.20-final-0 _______________
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": Name                             Stmts   Miss  Cover
Step #1 - "Run integration tests": ----------------------------------------------------
Step #1 - "Run integration tests": src/toolbox_adk/__init__.py          6      0   100%
Step #1 - "Run integration tests": src/toolbox_adk/client.py           79      0   100%
Step #1 - "Run integration tests": src/toolbox_adk/credentials.py      75      3    96%
Step #1 - "Run integration tests": src/toolbox_adk/tool.py            128      4    97%
Step #1 - "Run integration tests": src/toolbox_adk/toolset.py          55      0   100%
Step #1 - "Run integration tests": src/toolbox_adk/version.py           1      0   100%
Step #1 - "Run integration tests": ----------------------------------------------------
Step #1 - "Run integration tests": TOTAL                              344      7    98%
Step #1 - "Run integration tests": Required test coverage of 90% reached. Total coverage: 97.97%
Step #1 - "Run integration tests": ================= 116 passed, 2 skipped, 29 warnings in 23.19s =================
PUSH

starting build "92e2a52f-fd4a-4ecd-9627-35df04081476"

FETCHSOURCE
From https://github.com/googleapis/mcp-toolbox-sdk-python
 * branch            e0c772cf3cac93ad3eb513be5325726e465f111d -> FETCH_HEAD
HEAD is now at e0c772c feat: support user-defined fallback protocols array (#707)
GitCommit:
e0c772cf3cac93ad3eb513be5325726e465f111d
BUILD
Starting Step #0 - "Install requirements"
Step #0 - "Install requirements": Pulling image: python:3.10
Step #0 - "Install requirements": 3.10: Pulling from library/python
Step #0 - "Install requirements": aa3e9ef32f73: Already exists
Step #0 - "Install requirements": 3f59c84a7863: Already exists
Step #0 - "Install requirements": 30d0db852850: Already exists
Step #0 - "Install requirements": 0252e6abaf0f: Already exists
Step #0 - "Install requirements": 80a4e88782de: Pulling fs layer
Step #0 - "Install requirements": 10a1f22bdca6: Pulling fs layer
Step #0 - "Install requirements": 120ba859d699: Pulling fs layer
Step #0 - "Install requirements": 120ba859d699: Verifying Checksum
Step #0 - "Install requirements": 120ba859d699: Download complete
Step #0 - "Install requirements": 80a4e88782de: Verifying Checksum
Step #0 - "Install requirements": 80a4e88782de: Download complete
Step #0 - "Install requirements": 10a1f22bdca6: Verifying Checksum
Step #0 - "Install requirements": 10a1f22bdca6: Download complete
Step #0 - "Install requirements": 80a4e88782de: Pull complete
Step #0 - "Install requirements": 10a1f22bdca6: Pull complete
Step #0 - "Install requirements": 120ba859d699: Pull complete
Step #0 - "Install requirements": Digest: sha256:41161d378d6f09dec7f9b2cae08fa6874ad98b794723cf2f78c4a378a78b33c0
Step #0 - "Install requirements": Status: Downloaded newer image for python:3.10
Step #0 - "Install requirements": docker.io/library/python:3.10
Step #0 - "Install requirements": Collecting uv
Step #0 - "Install requirements":   Downloading uv-0.11.28-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (27.1 MB)
Step #0 - "Install requirements":      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 27.1/27.1 MB 60.0 MB/s eta 0:00:00
Step #0 - "Install requirements": Installing collected packages: uv
Step #0 - "Install requirements": Successfully installed uv-0.11.28
Step #0 - "Install requirements": WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
Step #0 - "Install requirements": 
Step #0 - "Install requirements": [notice] A new release of pip is available: 23.0.1 -> 26.1.2
Step #0 - "Install requirements": [notice] To update, run: pip install --upgrade pip
Step #0 - "Install requirements": Using CPython 3.10.20 interpreter at: /usr/local/bin/python3
Step #0 - "Install requirements": Creating virtual environment at: /workspace/venv
Step #0 - "Install requirements": Activate with: source /workspace/venv/bin/activate
Step #0 - "Install requirements": Using Python 3.10.20 environment at: /workspace/venv
Step #0 - "Install requirements": Resolved 1 package in 185ms
Step #0 - "Install requirements": Downloading uv (25.9MiB)
Step #0 - "Install requirements":  Downloaded uv
Step #0 - "Install requirements": Prepared 1 package in 293ms
Step #0 - "Install requirements": warning: Failed to hardlink files; falling back to full copy. This may lead to degraded performance.
Step #0 - "Install requirements":          If the cache and target directories are on different filesystems, hardlinking may not be supported.
Step #0 - "Install requirements":          If this is intentional, set `export UV_LINK_MODE=copy` or use `--link-mode=copy` to suppress this warning.
Step #0 - "Install requirements": Installed 1 package in 74ms
Step #0 - "Install requirements":  + uv==0.11.28
Step #0 - "Install requirements": Using Python 3.10.20 environment at: /workspace/venv
Step #0 - "Install requirements": Resolved 127 packages in 1.59s
Step #0 - "Install requirements":    Building toolbox-core @ file:///workspace/packages/toolbox-core
Step #0 - "Install requirements": Downloading grpcio (6.6MiB)
Step #0 - "Install requirements": Downloading google-api-python-client (14.9MiB)
Step #0 - "Install requirements": Downloading pydantic-core (2.0MiB)
Step #0 - "Install requirements": Downloading cryptography (4.5MiB)
Step #0 - "Install requirements": Downloading sqlalchemy (3.1MiB)
Step #0 - "Install requirements": Downloading google-cloud-discoveryengine (3.2MiB)
Step #0 - "Install requirements": Downloading google-adk (2.7MiB)
Step #0 - "Install requirements": Downloading aiohttp (1.6MiB)
Step #0 - "Install requirements": Downloading google-cloud-aiplatform (8.9MiB)
Step #0 - "Install requirements": Downloading pyarrow (46.6MiB)
Step #0 - "Install requirements":       Built toolbox-core @ file:///workspace/packages/toolbox-core
Step #0 - "Install requirements":  Downloaded aiohttp
Step #0 - "Install requirements":  Downloaded pydantic-core
Step #0 - "Install requirements":  Downloaded sqlalchemy
Step #0 - "Install requirements":  Downloaded cryptography
Step #0 - "Install requirements":  Downloaded grpcio
Step #0 - "Install requirements":  Downloaded google-adk
Step #0 - "Install requirements":  Downloaded google-cloud-discoveryengine
Step #0 - "Install requirements":  Downloaded google-api-python-client
Step #0 - "Install requirements":  Downloaded pyarrow
Step #0 - "Install requirements":  Downloaded google-cloud-aiplatform
Step #0 - "Install requirements": Prepared 127 packages in 2.26s
Step #0 - "Install requirements": warning: Failed to hardlink files; falling back to full copy. This may lead to degraded performance.
Step #0 - "Install requirements":          If the cache and target directories are on different filesystems, hardlinking may not be supported.
Step #0 - "Install requirements":          If this is intentional, set `export UV_LINK_MODE=copy` or use `--link-mode=copy` to suppress this warning.
Step #0 - "Install requirements": Installed 127 packages in 1.96s
Step #0 - "Install requirements":  + aiohappyeyeballs==2.7.1
Step #0 - "Install requirements":  + aiohttp==3.14.1
Step #0 - "Install requirements":  + aiosignal==1.4.0
Step #0 - "Install requirements":  + aiosqlite==0.22.1
Step #0 - "Install requirements":  + alembic==1.18.5
Step #0 - "Install requirements":  + annotated-doc==0.0.4
Step #0 - "Install requirements":  + annotated-types==0.7.0
Step #0 - "Install requirements":  + anyio==4.14.1
Step #0 - "Install requirements":  + async-timeout==5.0.1
Step #0 - "Install requirements":  + attrs==26.1.0
Step #0 - "Install requirements":  + authlib==1.7.2
Step #0 - "Install requirements":  + certifi==2026.6.17
Step #0 - "Install requirements":  + cffi==2.1.0
Step #0 - "Install requirements":  + charset-normalizer==3.4.9
Step #0 - "Install requirements":  + click==8.4.2
Step #0 - "Install requirements":  + cloudpickle==3.1.2
Step #0 - "Install requirements":  + cryptography==49.0.0
Step #0 - "Install requirements":  + deprecated==1.3.1
Step #0 - "Install requirements":  + distro==1.9.0
Step #0 - "Install requirements":  + docstring-parser==0.18.0
Step #0 - "Install requirements":  + exceptiongroup==1.3.1
Step #0 - "Install requirements":  + fastapi==0.139.0
Step #0 - "Install requirements":  + frozenlist==1.8.0
Step #0 - "Install requirements":  + google-adk==1.34.1
Step #0 - "Insta
...
[Logs truncated due to log size limitations. For full logs, see https://console.cloud.google.com/logs/viewer?advancedFilter=resource.type%3D%22build%22+AND+resource.labels.build_id%3D%2292e2a52f-fd4a-4ecd-9627-35df04081476%22+AND+resource.labels.build_trigger_id%3D%226804c99b-e5f6-46cb-87fa-0f4e37243526%22&project=toolbox-testing-438616.]
...
4.9.0
Step #0 - "Install requirements":  + platformdirs==4.10.0
Step #0 - "Install requirements":  + pluggy==1.6.0
Step #0 - "Install requirements":  + prompt-toolkit==3.0.52
Step #0 - "Install requirements":  + ptyprocess==0.7.0
Step #0 - "Install requirements":  + pure-eval==0.2.3
Step #0 - "Install requirements":  + pygments==2.20.0
Step #0 - "Install requirements":  + pytest==9.0.3
Step #0 - "Install requirements":  + pytest-asyncio==1.4.0
Step #0 - "Install requirements":  + pytest-cov==7.1.0
Step #0 - "Install requirements":  + pytest-mock==3.15.1
Step #0 - "Install requirements":  + pytokens==0.4.1
Step #0 - "Install requirements":  + stack-data==0.6.3
Step #0 - "Install requirements":  + tokenize-rt==6.2.0
Step #0 - "Install requirements":  + toolbox-adk==1.0.1 (from file:///workspace/packages/toolbox-adk)
Step #0 - "Install requirements":  + traitlets==5.15.1
Step #0 - "Install requirements":  + wcwidth==0.8.2
Finished Step #0 - "Install requirements"
Starting Step #1 - "Run integration tests"
Step #1 - "Run integration tests": Already have image (with digest): python:3.10
Step #1 - "Run integration tests": ============================= test session starts ==============================
Step #1 - "Run integration tests": platform linux -- Python 3.10.20, pytest-9.0.3, pluggy-1.6.0
Step #1 - "Run integration tests": rootdir: /workspace/packages/toolbox-adk
Step #1 - "Run integration tests": configfile: pyproject.toml
Step #1 - "Run integration tests": plugins: cov-7.1.0, mock-3.15.1, asyncio-1.4.0, anyio-4.14.1
Step #1 - "Run integration tests": asyncio: mode=strict, debug=False, asyncio_default_fixture_loop_scope=None, asyncio_default_test_loop_scope=function
Step #1 - "Run integration tests": collected 118 items
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": tests/integration/test_integration.py ...............................s.. [ 28%]
Step #1 - "Run integration tests": .............................s                                           [ 54%]
Step #1 - "Run integration tests": tests/unit/test_client.py ..............                                 [ 66%]
Step #1 - "Run integration tests": tests/unit/test_credentials.py ................                          [ 79%]
Step #1 - "Run integration tests": tests/unit/test_tool.py ..............                                   [ 91%]
Step #1 - "Run integration tests": tests/unit/test_toolset.py ..........                                    [100%]
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": =============================== warnings summary ===============================
Step #1 - "Run integration tests": ../../venv/lib/python3.10/site-packages/google/api_core/_python_version_support.py:255
Step #1 - "Run integration tests":   /workspace/venv/lib/python3.10/site-packages/google/api_core/_python_version_support.py:255: FutureWarning: You are using a Python version (3.10.20) which Google will stop supporting in new releases of google.api_core once it reaches its end of life (2026-10-04). Please upgrade to the latest Python version, or at least Python 3.11, to continue receiving updates for google.api_core past that date.
Step #1 - "Run integration tests":     warnings.warn(message, FutureWarning)
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": ../../venv/lib/python3.10/site-packages/google/api_core/_python_version_support.py:255
Step #1 - "Run integration tests":   /workspace/venv/lib/python3.10/site-packages/google/api_core/_python_version_support.py:255: FutureWarning: You are using a Python version (3.10.20) which Google will stop supporting in new releases of google.cloud.secretmanager_v1 once it reaches its end of life (2026-10-04). Please upgrade to the latest Python version, or at least Python 3.11, to continue receiving updates for google.cloud.secretmanager_v1 past that date.
Step #1 - "Run integration tests":     warnings.warn(message, FutureWarning)
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": tests/integration/test_integration.py: 18 warnings
Step #1 - "Run integration tests":   /workspace/packages/toolbox-core/src/toolbox_core/utils.py:56: UserWarning: This connection is using HTTP. To prevent credential exposure, please ensure all communication is sent over HTTPS.
Step #1 - "Run integration tests":     warnings.warn(
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": tests/integration/test_integration.py::TestToolboxAdkIntegration::test_3lo_flow_simulation[http://localhost:5000]
Step #1 - "Run integration tests": tests/integration/test_integration.py::TestToolboxAdkIntegration::test_3lo_flow_simulation[http://localhost:5000]
Step #1 - "Run integration tests": tests/integration/test_integration.py::TestToolboxAdkIntegration::test_3lo_flow_simulation[http://localhost:5001]
Step #1 - "Run integration tests": tests/integration/test_integration.py::TestToolboxAdkIntegration::test_3lo_flow_simulation[http://localhost:5001]
Step #1 - "Run integration tests": tests/unit/test_credentials.py::TestCredentialStrategy::test_from_adk_auth_config
Step #1 - "Run integration tests": tests/unit/test_tool.py::TestToolboxTool::test_3lo_request_credential_when_missing
Step #1 - "Run integration tests": tests/unit/test_tool.py::TestToolboxTool::test_3lo_uses_existing_credential
Step #1 - "Run integration tests": tests/unit/test_tool.py::TestToolboxTool::test_3lo_exception_reraise
Step #1 - "Run integration tests": tests/unit/test_tool.py::TestToolboxTool::test_3lo_exception_fallback
Step #1 - "Run integration tests":   /workspace/venv/lib/python3.10/site-packages/google/adk/auth/auth_tool.py:94: DeprecationWarning: This method is deprecated. Use credential_key instead.
Step #1 - "Run integration tests":     self.credential_key = self.get_credential_key()
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
Step #1 - "Run integration tests": ================================ tests coverage ================================
Step #1 - "Run integration tests": _______________ coverage: platform linux, python 3.10.20-final-0 _______________
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": Name                             Stmts   Miss  Cover
Step #1 - "Run integration tests": ----------------------------------------------------
Step #1 - "Run integration tests": src/toolbox_adk/__init__.py          6      0   100%
Step #1 - "Run integration tests": src/toolbox_adk/client.py           79      0   100%
Step #1 - "Run integration tests": src/toolbox_adk/credentials.py      75      3    96%
Step #1 - "Run integration tests": src/toolbox_adk/tool.py            128      4    97%
Step #1 - "Run integration tests": src/toolbox_adk/toolset.py          55      0   100%
Step #1 - "Run integration tests": src/toolbox_adk/version.py           1      0   100%
Step #1 - "Run integration tests": ----------------------------------------------------
Step #1 - "Run integration tests": TOTAL                              344      7    98%
Step #1 - "Run integration tests": Required test coverage of 90% reached. Total coverage: 97.97%
Step #1 - "Run integration tests": ================= 116 passed, 2 skipped, 29 warnings in 23.19s =================
PUSH

starting build "92e2a52f-fd4a-4ecd-9627-35df04081476"

FETCHSOURCE
From https://github.com/googleapis/mcp-toolbox-sdk-python
 * branch            e0c772cf3cac93ad3eb513be5325726e465f111d -> FETCH_HEAD
HEAD is now at e0c772c feat: support user-defined fallback protocols array (#707)
GitCommit:
e0c772cf3cac93ad3eb513be5325726e465f111d
BUILD
Starting Step #0 - "Install requirements"
Step #0 - "Install requirements": Pulling image: python:3.10
Step #0 - "Install requirements": 3.10: Pulling from library/python
Step #0 - "Install requirements": aa3e9ef32f73: Already exists
Step #0 - "Install requirements": 3f59c84a7863: Already exists
Step #0 - "Install requirements": 30d0db852850: Already exists
Step #0 - "Install requirements": 0252e6abaf0f: Already exists
Step #0 - "Install requirements": 80a4e88782de: Pulling fs layer
Step #0 - "Install requirements": 10a1f22bdca6: Pulling fs layer
Step #0 - "Install requirements": 120ba859d699: Pulling fs layer
Step #0 - "Install requirements": 120ba859d699: Verifying Checksum
Step #0 - "Install requirements": 120ba859d699: Download complete
Step #0 - "Install requirements": 80a4e88782de: Verifying Checksum
Step #0 - "Install requirements": 80a4e88782de: Download complete
Step #0 - "Install requirements": 10a1f22bdca6: Verifying Checksum
Step #0 - "Install requirements": 10a1f22bdca6: Download complete
Step #0 - "Install requirements": 80a4e88782de: Pull complete
Step #0 - "Install requirements": 10a1f22bdca6: Pull complete
Step #0 - "Install requirements": 120ba859d699: Pull complete
Step #0 - "Install requirements": Digest: sha256:41161d378d6f09dec7f9b2cae08fa6874ad98b794723cf2f78c4a378a78b33c0
Step #0 - "Install requirements": Status: Downloaded newer image for python:3.10
Step #0 - "Install requirements": docker.io/library/python:3.10
Step #0 - "Install requirements": Collecting uv
Step #0 - "Install requirements":   Downloading uv-0.11.28-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (27.1 MB)
Step #0 - "Install requirements":      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 27.1/27.1 MB 60.0 MB/s eta 0:00:00
Step #0 - "Install requirements": Installing collected packages: uv
Step #0 - "Install requirements": Successfully installed uv-0.11.28
Step #0 - "Install requirements": WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
Step #0 - "Install requirements": 
Step #0 - "Install requirements": [notice] A new release of pip is available: 23.0.1 -> 26.1.2
Step #0 - "Install requirements": [notice] To update, run: pip install --upgrade pip
Step #0 - "Install requirements": Using CPython 3.10.20 interpreter at: /usr/local/bin/python3
Step #0 - "Install requirements": Creating virtual environment at: /workspace/venv
Step #0 - "Install requirements": Activate with: source /workspace/venv/bin/activate
Step #0 - "Install requirements": Using Python 3.10.20 environment at: /workspace/venv
Step #0 - "Install requirements": Resolved 1 package in 185ms
Step #0 - "Install requirements": Downloading uv (25.9MiB)
Step #0 - "Install requirements":  Downloaded uv
Step #0 - "Install requirements": Prepared 1 package in 293ms
Step #0 - "Install requirements": warning: Failed to hardlink files; falling back to full copy. This may lead to degraded performance.
Step #0 - "Install requirements":          If the cache and target directories are on different filesystems, hardlinking may not be supported.
Step #0 - "Install requirements":          If this is intentional, set `export UV_LINK_MODE=copy` or use `--link-mode=copy` to suppress this warning.
Step #0 - "Install requirements": Installed 1 package in 74ms
Step #0 - "Install requirements":  + uv==0.11.28
Step #0 - "Install requirements": Using Python 3.10.20 environment at: /workspace/venv
Step #0 - "Install requirements": Resolved 127 packages in 1.59s
Step #0 - "Install requirements":    Building toolbox-core @ file:///workspace/packages/toolbox-core
Step #0 - "Install requirements": Downloading grpcio (6.6MiB)
Step #0 - "Install requirements": Downloading google-api-python-client (14.9MiB)
Step #0 - "Install requirements": Downloading pydantic-core (2.0MiB)
Step #0 - "Install requirements": Downloading cryptography (4.5MiB)
Step #0 - "Install requirements": Downloading sqlalchemy (3.1MiB)
Step #0 - "Install requirements": Downloading google-cloud-discoveryengine (3.2MiB)
Step #0 - "Install requirements": Downloading google-adk (2.7MiB)
Step #0 - "Install requirements": Downloading aiohttp (1.6MiB)
Step #0 - "Install requirements": Downloading google-cloud-aiplatform (8.9MiB)
Step #0 - "Install requirements": Downloading pyarrow (46.6MiB)
Step #0 - "Install requirements":       Built toolbox-core @ file:///workspace/packages/toolbox-core
Step #0 - "Install requirements":  Downloaded aiohttp
Step #0 - "Install requirements":  Downloaded pydantic-core
Step #0 - "Install requirements":  Downloaded sqlalchemy
Step #0 - "Install requirements":  Downloaded cryptography
Step #0 - "Install requirements":  Downloaded grpcio
Step #0 - "Install requirements":  Downloaded google-adk
Step #0 - "Install requirements":  Downloaded google-cloud-discoveryengine
Step #0 - "Install requirements":  Downloaded google-api-python-client
Step #0 - "Install requirements":  Downloaded pyarrow
Step #0 - "Install requirements":  Downloaded google-cloud-aiplatform
Step #0 - "Install requirements": Prepared 127 packages in 2.26s
Step #0 - "Install requirements": warning: Failed to hardlink files; falling back to full copy. This may lead to degraded performance.
Step #0 - "Install requirements":          If the cache and target directories are on different filesystems, hardlinking may not be supported.
Step #0 - "Install requirements":          If this is intentional, set `export UV_LINK_MODE=copy` or use `--link-mode=copy` to suppress this warning.
Step #0 - "Install requirements": Installed 127 packages in 1.96s
Step #0 - "Install requirements":  + aiohappyeyeballs==2.7.1
Step #0 - "Install requirements":  + aiohttp==3.14.1
Step #0 - "Install requirements":  + aiosignal==1.4.0
Step #0 - "Install requirements":  + aiosqlite==0.22.1
Step #0 - "Install requirements":  + alembic==1.18.5
Step #0 - "Install requirements":  + annotated-doc==0.0.4
Step #0 - "Install requirements":  + annotated-types==0.7.0
Step #0 - "Install requirements":  + anyio==4.14.1
Step #0 - "Install requirements":  + async-timeout==5.0.1
Step #0 - "Install requirements":  + attrs==26.1.0
Step #0 - "Install requirements":  + authlib==1.7.2
Step #0 - "Install requirements":  + certifi==2026.6.17
Step #0 - "Install requirements":  + cffi==2.1.0
Step #0 - "Install requirements":  + charset-normalizer==3.4.9
Step #0 - "Install requirements":  + click==8.4.2
Step #0 - "Install requirements":  + cloudpickle==3.1.2
Step #0 - "Install requirements":  + cryptography==49.0.0
Step #0 - "Install requirements":  + deprecated==1.3.1
Step #0 - "Install requirements":  + distro==1.9.0
Step #0 - "Install requirements":  + docstring-parser==0.18.0
Step #0 - "Install requirements":  + exceptiongroup==1.3.1
Step #0 - "Install requirements":  + fastapi==0.139.0
Step #0 - "Install requirements":  + frozenlist==1.8.0
Step #0 - "Install requirements":  + google-adk==1.34.1
Step #0 - "Install requirements":  + google-api-core==2.31.0
Step #0 - "Install requirements":  + google-api-python-client==2.198.0
Step #0 - "Install requirements":  + google-auth==2.53.0
Step #0 - "Install requirements":  + google-auth-httplib2==0.4.0
Step #0 - "Install requirements":  + google-auth-oauthlib==1.4.0
Step #0 - "Install requirements":  + google-cloud-aiplatform==1.160.0
Step #0 - "Install requirements":  + google-cloud-appengine-logging==1.10.0
Step #0 - "Install requirements":  + google-cloud-audit-log==0.6.0
Step #0 - "Install requirements":  + google-cloud-bigquery==3.42.2
Step #0 - "Install requirements":  + google-cloud-bigquery-storage==2.39.0
Step #0 - "Install requirements":  + google-cloud-bigtable==2.40.0
Step #0 - "Install requirements":  + google-cloud-core==2.6.0
Step #0 - "Install requirements":  + google-cloud-dataplex==2.20.0
Step #0 - "Install requirements":  + google-cloud-discoveryengine==0.13.12
Step #0 - "Install requirements":  + google-cloud-iam==2.24.0
Step #0 - "Install requirements":  + google-cloud-logging==3.16.1
Step #0 - "Install requirements":  + google-cloud-monitoring==2.31.0
Step #0 - "Install requirements":  + google-cloud-pubsub==2.39.0
Step #0 - "Install requirements":  + google-cloud-resource-manager==1.18.0
Step #0 - "Install requirements":  + google-cloud-secret-manager==2.29.0
Step #0 - "Install requirements":  + google-cloud-spanner==3.69.0
Step #0 - "Install requirements":  + google-cloud-speech==2.40.0
Step #0 - "Install requirements":  + google-cloud-storage==3.12.1
Step #0 - "Install requirements":  + google-cloud-trace==1.20.0
Step #0 - "Install requirements":  + google-crc32c==1.8.0
Step #0 - "Install requirements":  + google-genai==1.75.0
Step #0 - "Install requirements":  + google-resumable-media==2.10.0
Step #0 - "Install requirements":  + googleapis-common-protos==1.75.0
Step #0 - "Install requirements":  + graphviz==0.21
Step #0 - "Install requirements":  + greenlet==3.5.3
Step #0 - "Install requirements":  + grpc-google-iam-v1==0.14.4
Step #0 - "Install requirements":  + grpc-interceptor==0.15.4
Step #0 - "Install requirements":  + grpcio==1.82.1
Step #0 - "Install requirements":  + grpcio-status==1.81.1
Step #0 - "Install requirements":  + h11==0.16.0
Step #0 - "Install requirements":  + httpcore==1.0.9
Step #0 - "Install requirements":  + httplib2==0.32.0
Step #0 - "Install requirements":  + httpx==0.28.1
Step #0 - "Install requirements":  + httpx-sse==0.4.3
Step #0 - "Install requirements":  + idna==3.18
Step #0 - "Install requirements":  + importlib-metadata==8.7.1
Step #0 - "Install requirements":  + joserfc==1.7.3
Step #0 - "Install requirements":  + jsonschema==4.26.0
Step #0 - "Install requirements":  + jsonschema-specifications==2025.9.1
Step #0 - "Install requirements":  + mako==1.3.12
Step #0 - "Install requirements":  + markupsafe==3.0.3
Step #0 - "Install requirements":  + mcp==1.28.1
Step #0 - "Install requirements":  + mmh3==5.2.1
Step #0 - "Install requirements":  + multidict==6.7.1
Step #0 - "Install requirements":  + oauthlib==3.3.1
Step #0 - "Install requirements":  + opentelemetry-api==1.41.1
Step #0 - "Install requirements":  + opentelemetry-exporter-gcp-logging==1.12.0a0
Step #0 - "Install requirements":  + opentelemetry-exporter-gcp-monitoring==1.9.0a0
Step #0 - "Install requirements":  + opentelemetry-exporter-gcp-trace==1.12.0
Step #0 - "Install requirements":  + opentelemetry-exporter-otlp-proto-common==1.41.1
Step #0 - "Install requirements":  + opentelemetry-exporter-otlp-proto-http==1.41.1
Step #0 - "Install requirements":  + opentelemetry-proto==1.41.1
Step #0 - "Install requirements":  + opentelemetry-resourcedetector-gcp==1.12.0a0
Step #0 - "Install requirements":  + opentelemetry-sdk==1.41.1
Step #0 - "Install requirements":  + opentelemetry-semantic-conventions==0.62b1
Step #0 - "Install requirements":  + packaging==26.2
Step #0 - "Install requirements":  + propcache==0.5.2
Step #0 - "Install requirements":  + proto-plus==1.28.1
Step #0 - "Install requirements":  + protobuf==6.33.6
Step #0 - "Install requirements":  + pyarrow==24.0.0
Step #0 - "Install requirements":  + pyasn1==0.6.4
Step #0 - "Install requirements":  + pyasn1-modules==0.4.2
Step #0 - "Install requirements":  + pycparser==3.0
Step #0 - "Install requirements":  + pydantic==2.13.4
Step #0 - "Install requirements":  + pydantic-core==2.46.4
Step #0 - "Install requirements":  + pydantic-settings==2.14.2
Step #0 - "Install requirements":  + pyjwt==2.13.0
Step #0 - "Install requirements":  + pyopenssl==26.3.0
Step #0 - "Install requirements":  + pyparsing==3.3.2
Step #0 - "Install requirements":  + python-dateutil==2.9.0.post0
Step #0 - "Install requirements":  + python-dotenv==1.2.2
Step #0 - "Install requirements":  + python-multipart==0.0.32
Step #0 - "Install requirements":  + pyyaml==6.0.3
Step #0 - "Install requirements":  + referencing==0.37.0
Step #0 - "Install requirements":  + requests==2.34.2
Step #0 - "Install requirements":  + requests-oauthlib==2.0.0
Step #0 - "Install requirements":  + rpds-py==0.30.0
Step #0 - "Install requirements":  + six==1.17.0
Step #0 - "Install requirements":  + sniffio==1.3.1
Step #0 - "Install requirements":  + sqlalchemy==2.0.51
Step #0 - "Install requirements":  + sqlalchemy-spanner==1.19.0
Step #0 - "Install requirements":  + sqlparse==0.5.5
Step #0 - "Install requirements":  + sse-starlette==3.4.5
Step #0 - "Install requirements":  + starlette==0.52.1
Step #0 - "Install requirements":  + tenacity==9.1.4
Step #0 - "Install requirements":  + tomli==2.4.1
Step #0 - "Install requirements":  + toolbox-core==1.1.0 (from file:///workspace/packages/toolbox-core)
Step #0 - "Install requirements":  + typing-extensions==4.15.0
Step #0 - "Install requirements":  + typing-inspection==0.4.2
Step #0 - "Install requirements":  + tzlocal==5.4.4
Step #0 - "Install requirements":  + uritemplate==4.2.0
Step #0 - "Install requirements":  + urllib3==2.7.0
Step #0 - "Install requirements":  + uvicorn==0.51.0
Step #0 - "Install requirements":  + watchdog==6.0.0
Step #0 - "Install requirements":  + websockets==15.0.1
Step #0 - "Install requirements":  + wrapt==2.2.2
Step #0 - "Install requirements":  + yarl==1.24.2
Step #0 - "Install requirements":  + zipp==4.1.0
Step #0 - "Install requirements": Using Python 3.10.20 environment at: /workspace/venv
Step #0 - "Install requirements": Resolved 162 packages in 1.01s
Step #0 - "Install requirements":    Building toolbox-adk @ file:///workspace/packages/toolbox-adk
Step #0 - "Install requirements": Downloading pygments (1.2MiB)
Step #0 - "Install requirements": Downloading ast-serialize (1.2MiB)
Step #0 - "Install requirements": Downloading jedi (4.7MiB)
Step #0 - "Install requirements": Downloading numpy (17.4MiB)
Step #0 - "Install requirements": Downloading black (1.8MiB)
Step #0 - "Install requirements": Downloading mypy (14.3MiB)
Step #0 - "Install requirements":  Downloaded ast-serialize
Step #0 - "Install requirements":  Downloaded black
Step #0 - "Install requirements":       Built toolbox-adk @ file:///workspace/packages/toolbox-adk
Step #0 - "Install requirements":  Downloaded pygments
Step #0 - "Install requirements":  Downloaded numpy
Step #0 - "Install requirements":  Downloaded mypy
Step #0 - "Install requirements":  Downloaded jedi
Step #0 - "Install requirements": Prepared 35 packages in 1.63s
Step #0 - "Install requirements": warning: Failed to hardlink files; falling back to full copy. This may lead to degraded performance.
Step #0 - "Install requirements":          If the cache and target directories are on different filesystems, hardlinking may not be supported.
Step #0 - "Install requirements":          If this is intentional, set `export UV_LINK_MODE=copy` or use `--link-mode=copy` to suppress this warning.
Step #0 - "Install requirements": Installed 35 packages in 1.23s
Step #0 - "Install requirements":  + ast-serialize==0.6.0
Step #0 - "Install requirements":  + asttokens==3.0.1
Step #0 - "Install requirements":  + backports-asyncio-runner==1.2.0
Step #0 - "Install requirements":  + black==26.5.1
Step #0 - "Install requirements":  + coverage==7.15.0
Step #0 - "Install requirements":  + decorator==5.3.1
Step #0 - "Install requirements":  + executing==2.2.1
Step #0 - "Install requirements":  + iniconfig==2.3.0
Step #0 - "Install requirements":  + ipython==8.39.0
Step #0 - "Install requirements":  + isort==8.0.1
Step #0 - "Install requirements":  + jedi==0.20.0
Step #0 - "Install requirements":  + librt==0.13.0
Step #0 - "Install requirements":  + matplotlib-inline==0.2.2
Step #0 - "Install requirements":  + mypy==2.1.0
Step #0 - "Install requirements":  + mypy-extensions==1.1.0
Step #0 - "Install requirements":  + numpy==1.26.4
Step #0 - "Install requirements":  + parso==0.8.7
Step #0 - "Install requirements":  + pathspec==1.1.1
Step #0 - "Install requirements":  + pexpect==4.9.0
Step #0 - "Install requirements":  + platformdirs==4.10.0
Step #0 - "Install requirements":  + pluggy==1.6.0
Step #0 - "Install requirements":  + prompt-toolkit==3.0.52
Step #0 - "Install requirements":  + ptyprocess==0.7.0
Step #0 - "Install requirements":  + pure-eval==0.2.3
Step #0 - "Install requirements":  + pygments==2.20.0
Step #0 - "Install requirements":  + pytest==9.0.3
Step #0 - "Install requirements":  + pytest-asyncio==1.4.0
Step #0 - "Install requirements":  + pytest-cov==7.1.0
Step #0 - "Install requirements":  + pytest-mock==3.15.1
Step #0 - "Install requirements":  + pytokens==0.4.1
Step #0 - "Install requirements":  + stack-data==0.6.3
Step #0 - "Install requirements":  + tokenize-rt==6.2.0
Step #0 - "Install requirements":  + toolbox-adk==1.0.1 (from file:///workspace/packages/toolbox-adk)
Step #0 - "Install requirements":  + traitlets==5.15.1
Step #0 - "Install requirements":  + wcwidth==0.8.2
Finished Step #0 - "Install requirements"
Starting Step #1 - "Run integration tests"
Step #1 - "Run integration tests": Already have image (with digest): python:3.10
Step #1 - "Run integration tests": ============================= test session starts ==============================
Step #1 - "Run integration tests": platform linux -- Python 3.10.20, pytest-9.0.3, pluggy-1.6.0
Step #1 - "Run integration tests": rootdir: /workspace/packages/toolbox-adk
Step #1 - "Run integration tests": configfile: pyproject.toml
Step #1 - "Run integration tests": plugins: cov-7.1.0, mock-3.15.1, asyncio-1.4.0, anyio-4.14.1
Step #1 - "Run integration tests": asyncio: mode=strict, debug=False, asyncio_default_fixture_loop_scope=None, asyncio_default_test_loop_scope=function
Step #1 - "Run integration tests": collected 118 items
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": tests/integration/test_integration.py ...............................s.. [ 28%]
Step #1 - "Run integration tests": .............................s                                           [ 54%]
Step #1 - "Run integration tests": tests/unit/test_client.py ..............                                 [ 66%]
Step #1 - "Run integration tests": tests/unit/test_credentials.py ................                          [ 79%]
Step #1 - "Run integration tests": tests/unit/test_tool.py ..............                                   [ 91%]
Step #1 - "Run integration tests": tests/unit/test_toolset.py ..........                                    [100%]
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": =============================== warnings summary ===============================
Step #1 - "Run integration tests": ../../venv/lib/python3.10/site-packages/google/api_core/_python_version_support.py:255
Step #1 - "Run integration tests":   /workspace/venv/lib/python3.10/site-packages/google/api_core/_python_version_support.py:255: FutureWarning: You are using a Python version (3.10.20) which Google will stop supporting in new releases of google.api_core once it reaches its end of life (2026-10-04). Please upgrade to the latest Python version, or at least Python 3.11, to continue receiving updates for google.api_core past that date.
Step #1 - "Run integration tests":     warnings.warn(message, FutureWarning)
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": ../../venv/lib/python3.10/site-packages/google/api_core/_python_version_support.py:255
Step #1 - "Run integration tests":   /workspace/venv/lib/python3.10/site-packages/google/api_core/_python_version_support.py:255: FutureWarning: You are using a Python version (3.10.20) which Google will stop supporting in new releases of google.cloud.secretmanager_v1 once it reaches its end of life (2026-10-04). Please upgrade to the latest Python version, or at least Python 3.11, to continue receiving updates for google.cloud.secretmanager_v1 past that date.
Step #1 - "Run integration tests":     warnings.warn(message, FutureWarning)
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": tests/integration/test_integration.py: 18 warnings
Step #1 - "Run integration tests":   /workspace/packages/toolbox-core/src/toolbox_core/utils.py:56: UserWarning: This connection is using HTTP. To prevent credential exposure, please ensure all communication is sent over HTTPS.
Step #1 - "Run integration tests":     warnings.warn(
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": tests/integration/test_integration.py::TestToolboxAdkIntegration::test_3lo_flow_simulation[http://localhost:5000]
Step #1 - "Run integration tests": tests/integration/test_integration.py::TestToolboxAdkIntegration::test_3lo_flow_simulation[http://localhost:5000]
Step #1 - "Run integration tests": tests/integration/test_integration.py::TestToolboxAdkIntegration::test_3lo_flow_simulation[http://localhost:5001]
Step #1 - "Run integration tests": tests/integration/test_integration.py::TestToolboxAdkIntegration::test_3lo_flow_simulation[http://localhost:5001]
Step #1 - "Run integration tests": tests/unit/test_credentials.py::TestCredentialStrategy::test_from_adk_auth_config
Step #1 - "Run integration tests": tests/unit/test_tool.py::TestToolboxTool::test_3lo_request_credential_when_missing
Step #1 - "Run integration tests": tests/unit/test_tool.py::TestToolboxTool::test_3lo_uses_existing_credential
Step #1 - "Run integration tests": tests/unit/test_tool.py::TestToolboxTool::test_3lo_exception_reraise
Step #1 - "Run integration tests": tests/unit/test_tool.py::TestToolboxTool::test_3lo_exception_fallback
Step #1 - "Run integration tests":   /workspace/venv/lib/python3.10/site-packages/google/adk/auth/auth_tool.py:94: DeprecationWarning: This method is deprecated. Use credential_key instead.
Step #1 - "Run integration tests":     self.credential_key = self.get_credential_key()
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
Step #1 - "Run integration tests": ================================ tests coverage ================================
Step #1 - "Run integration tests": _______________ coverage: platform linux, python 3.10.20-final-0 _______________
Step #1 - "Run integration tests": 
Step #1 - "Run integration tests": Name                             Stmts   Miss  Cover
Step #1 - "Run integration tests": ----------------------------------------------------
Step #1 - "Run integration tests": src/toolbox_adk/__init__.py          6      0   100%
Step #1 - "Run integration tests": src/toolbox_adk/client.py           79      0   100%
Step #1 - "Run integration tests": src/toolbox_adk/credentials.py      75      3    96%
Step #1 - "Run integration tests": src/toolbox_adk/tool.py            128      4    97%
Step #1 - "Run integration tests": src/toolbox_adk/toolset.py          55      0   100%
Step #1 - "Run integration tests": src/toolbox_adk/version.py           1      0   100%
Step #1 - "Run integration tests": ----------------------------------------------------
Step #1 - "Run integration tests": TOTAL                              344      7    98%
Step #1 - "Run integration tests": Required test coverage of 90% reached. Total coverage: 97.97%
Step #1 - "Run integration tests": ================= 116 passed, 2 skipped, 29 warnings in 23.19s =================
Finished Step #1 - "Run integration tests"
PUSH
DONE

Build Log: https://console.cloud.google.com/logs/viewer?advancedFilter=resource.type%3D%22build%22+AND+resource.labels.build_id%3D%2292e2a52f-fd4a-4ecd-9627-35df04081476%22+AND+resource.labels.build_trigger_id%3D%226804c99b-e5f6-46cb-87fa-0f4e37243526%22&project=toolbox-testing-438616