feat(models): define capability schema and readers (#2739)

* feat(models): define capability schema and readers

* fix(models): harden Google catalog probing

Restrict native catalog probing to the Gemini host, keep provider keys out of request URLs, filter non-chat model resources, and preserve the manual refresh default in the built-in Google add flow.
This commit is contained in:
RaresKeY
2026-07-18 10:40:58 +02:00
committed by GitHub
parent f87107e16f
commit 4f04c347cc
17 changed files with 3861 additions and 4 deletions
+18
View File
@@ -28,6 +28,24 @@ def test_provider_selection_is_inert_and_add_button_starts_device_flow():
assert "_startProviderDeviceAuth(deviceAuthProvider" in add_block
def test_google_add_omits_auto_refresh_mode_for_backend_manual_default():
refresh_helper = _between(
_ADMIN,
"function _modelRefreshModeForApiEndpoint",
"function _normalizeBaseUrl",
)
add_block = _between(
_ADMIN,
"el('adm-epAddBtn').addEventListener('click'",
"async function _startProviderDeviceAuth",
)
assert "generativelanguage.googleapis.com" in refresh_helper
assert "return '';" in refresh_helper
assert "_modelRefreshModeForApiEndpoint(url, endpointKind)" in add_block
assert "if (refreshMode) fd.append('model_refresh_mode', refreshMode)" in add_block
def test_device_auth_selection_disables_and_dims_api_test_button():
form_block = _between(_ADMIN, "function _setApiFormForProvider()", "function _renderPickerMenu()")