mark update APIs experimental

This commit is contained in:
Will Wang
2026-06-23 14:54:23 -07:00
parent bd4bb1c8a7
commit 4501337708
11 changed files with 9 additions and 293 deletions
@@ -6067,52 +6067,6 @@
"title": "ModelProvider/capabilities/readRequest",
"type": "object"
},
{
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"enum": [
"update/check"
],
"title": "Update/checkRequestMethod",
"type": "string"
},
"params": {
"type": "null"
}
},
"required": [
"id",
"method"
],
"title": "Update/checkRequest",
"type": "object"
},
{
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"enum": [
"update/install"
],
"title": "Update/installRequestMethod",
"type": "string"
},
"params": {
"type": "null"
}
},
"required": [
"id",
"method"
],
"title": "Update/installRequest",
"type": "object"
},
{
"properties": {
"id": {
@@ -1525,52 +1525,6 @@
"title": "ModelProvider/capabilities/readRequest",
"type": "object"
},
{
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"enum": [
"update/check"
],
"title": "Update/checkRequestMethod",
"type": "string"
},
"params": {
"type": "null"
}
},
"required": [
"id",
"method"
],
"title": "Update/checkRequest",
"type": "object"
},
{
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"enum": [
"update/install"
],
"title": "Update/installRequestMethod",
"type": "string"
},
"params": {
"type": "null"
}
},
"required": [
"id",
"method"
],
"title": "Update/installRequest",
"type": "object"
},
{
"properties": {
"id": {
@@ -20224,48 +20178,6 @@
],
"type": "object"
},
"UpdateCheckResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"canAutoUpdate": {
"type": "boolean"
},
"currentVersion": {
"type": "string"
},
"installationMethod": {
"$ref": "#/definitions/v2/InstallationMethod"
},
"latestVersion": {
"type": "string"
}
},
"required": [
"canAutoUpdate",
"currentVersion",
"installationMethod",
"latestVersion"
],
"title": "UpdateCheckResponse",
"type": "object"
},
"UpdateInstallResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"installedVersion": {
"type": "string"
},
"success": {
"type": "boolean"
}
},
"required": [
"installedVersion",
"success"
],
"title": "UpdateInstallResponse",
"type": "object"
},
"UserInput": {
"oneOf": [
{
@@ -2536,52 +2536,6 @@
"title": "ModelProvider/capabilities/readRequest",
"type": "object"
},
{
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"enum": [
"update/check"
],
"title": "Update/checkRequestMethod",
"type": "string"
},
"params": {
"type": "null"
}
},
"required": [
"id",
"method"
],
"title": "Update/checkRequest",
"type": "object"
},
{
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"enum": [
"update/install"
],
"title": "Update/installRequestMethod",
"type": "string"
},
"params": {
"type": "null"
}
},
"required": [
"id",
"method"
],
"title": "Update/installRequest",
"type": "object"
},
{
"properties": {
"id": {
@@ -18003,48 +17957,6 @@
],
"type": "object"
},
"UpdateCheckResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"canAutoUpdate": {
"type": "boolean"
},
"currentVersion": {
"type": "string"
},
"installationMethod": {
"$ref": "#/definitions/InstallationMethod"
},
"latestVersion": {
"type": "string"
}
},
"required": [
"canAutoUpdate",
"currentVersion",
"installationMethod",
"latestVersion"
],
"title": "UpdateCheckResponse",
"type": "object"
},
"UpdateInstallResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"installedVersion": {
"type": "string"
},
"success": {
"type": "boolean"
}
},
"required": [
"installedVersion",
"success"
],
"title": "UpdateInstallResponse",
"type": "object"
},
"UserInput": {
"oneOf": [
{
@@ -1,38 +0,0 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"definitions": {
"InstallationMethod": {
"enum": [
"npm",
"bun",
"brew",
"standaloneUnix",
"standaloneWindows",
"other"
],
"type": "string"
}
},
"properties": {
"canAutoUpdate": {
"type": "boolean"
},
"currentVersion": {
"type": "string"
},
"installationMethod": {
"$ref": "#/definitions/InstallationMethod"
},
"latestVersion": {
"type": "string"
}
},
"required": [
"canAutoUpdate",
"currentVersion",
"installationMethod",
"latestVersion"
],
"title": "UpdateCheckResponse",
"type": "object"
}
@@ -1,17 +0,0 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"installedVersion": {
"type": "string"
},
"success": {
"type": "boolean"
}
},
"required": [
"installedVersion",
"success"
],
"title": "UpdateInstallResponse",
"type": "object"
}
File diff suppressed because one or more lines are too long
@@ -1,6 +0,0 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { InstallationMethod } from "./InstallationMethod";
export type UpdateCheckResponse = { currentVersion: string, latestVersion: string, installationMethod: InstallationMethod, canAutoUpdate: boolean, };
@@ -1,5 +0,0 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type UpdateInstallResponse = { installedVersion: string, success: boolean, };
@@ -487,8 +487,6 @@ export type { TurnStatus } from "./TurnStatus";
export type { TurnSteerParams } from "./TurnSteerParams";
export type { TurnSteerResponse } from "./TurnSteerResponse";
export type { TurnsPage } from "./TurnsPage";
export type { UpdateCheckResponse } from "./UpdateCheckResponse";
export type { UpdateInstallResponse } from "./UpdateInstallResponse";
export type { UserInput } from "./UserInput";
export type { WarningNotification } from "./WarningNotification";
export type { WebSearchAction } from "./WebSearchAction";
@@ -865,11 +865,13 @@ client_request_definitions! {
serialization: None,
response: v2::ModelProviderCapabilitiesReadResponse,
},
#[experimental("update/check")]
UpdateCheck => "update/check" {
params: #[ts(type = "undefined")] #[serde(skip_serializing_if = "Option::is_none")] Option<()>,
serialization: global("update"),
response: v2::UpdateCheckResponse,
},
#[experimental("update/install")]
UpdateInstall => "update/install" {
params: #[ts(type = "undefined")] #[serde(skip_serializing_if = "Option::is_none")] Option<()>,
serialization: global("update"),
+6 -2
View File
@@ -201,8 +201,8 @@ Example with notification opt-out:
- `fs/changed` — notification emitted when watched paths change, including the `watchId` and `changedPaths`.
- `model/list` — list available models (set `includeHidden: true` to include entries with `hidden: true`), with model-advertised string reasoning effort options in the catalog's intended progression order, `additionalSpeedTiers`, `serviceTiers`, optional `defaultServiceTier`, optional legacy `upgrade` model ids, optional `upgradeInfo` metadata (`model`, `upgradeCopy`, `modelLink`, `migrationMarkdown`), and optional `availabilityNux` metadata. Clients should preserve the `supportedReasoningEfforts` array order rather than deriving order from the effort names.
- `modelProvider/capabilities/read` — read provider-level capabilities for the currently configured model provider.
- `update/check` — force a fresh update check and return the current version, latest version available through the detected distribution channel, installation method, and whether app-server can apply the update automatically.
- `update/install` — run the updater associated with the detected installation method; returns the installed version and whether installation succeeded.
- `update/check` — experimental; force a fresh update check and return the current version, latest version available through the detected distribution channel, installation method, and whether app-server can apply the update automatically.
- `update/install` — experimental; run the updater associated with the detected installation method; returns the installed version and whether installation succeeded.
- `experimentalFeature/list` — list feature flags with stage metadata (`beta`, `underDevelopment`, `stable`, etc.), enabled/default-enabled state, and cursor pagination. Pass `threadId` when showing feature state for an existing loaded thread so `enabled` is computed from that thread's refreshed config, including project-local config for the thread's cwd; if omitted, the server uses its default config resolution context. For non-beta flags, `displayName`/`description`/`announcement` are `null`.
- `permissionProfile/list` — beta; list available permission profile ids with optional display `description` text and an `allowed` flag reflecting effective requirements, using cursor pagination. Pass `cwd` when the caller needs project-local `[permissions.<id>]` entries to be included in the current catalog view.
- `experimentalFeature/enablement/set` — patch the in-memory process-wide runtime feature enablement for currently supported feature keys. For each feature, precedence is: cloud requirements > --enable <feature_name> > config.toml > experimentalFeature/enablement/set (new) > code default. Invalid keys will be ignored.
@@ -1903,6 +1903,10 @@ $demo-app Pull the latest updates from the team.
## Update endpoints
Both update endpoints are experimental. Clients must set
`capabilities.experimentalApi` to `true` in the `initialize` request before
calling them.
Use `update/check` to bypass the TUI's cached startup check and
query the current installation's distribution channel immediately. The
request has no params: