[codex-app-server] stabilize native integrity state bridge [ci changed_files]

This commit is contained in:
Cooper Gamble
2026-06-03 09:57:46 +00:00
parent eacd9bc5c4
commit f6c9720d9f
15 changed files with 414 additions and 7 deletions
@@ -1581,6 +1581,24 @@
"ModelProviderCapabilitiesReadParams": {
"type": "object"
},
"NativeIntegrityStateWriteParams": {
"properties": {
"expectedState": {
"description": "When present, write only if the calling surface still stores this state.",
"type": [
"string",
"null"
]
},
"state": {
"type": "string"
}
},
"required": [
"state"
],
"type": "object"
},
"NetworkAccess": {
"enum": [
"restricted",
@@ -5661,6 +5679,76 @@
"title": "ExperimentalFeature/enablement/setRequest",
"type": "object"
},
{
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"enum": [
"nativeIntegrityState/read"
],
"title": "NativeIntegrityState/readRequestMethod",
"type": "string"
},
"params": {
"type": "null"
}
},
"required": [
"id",
"method"
],
"title": "NativeIntegrityState/readRequest",
"type": "object"
},
{
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"enum": [
"nativeIntegrityState/write"
],
"title": "NativeIntegrityState/writeRequestMethod",
"type": "string"
},
"params": {
"$ref": "#/definitions/NativeIntegrityStateWriteParams"
}
},
"required": [
"id",
"method",
"params"
],
"title": "NativeIntegrityState/writeRequest",
"type": "object"
},
{
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"enum": [
"nativeIntegrityState/clear"
],
"title": "NativeIntegrityState/clearRequestMethod",
"type": "string"
},
"params": {
"type": "null"
}
},
"required": [
"id",
"method"
],
"title": "NativeIntegrityState/clearRequest",
"type": "object"
},
{
"properties": {
"id": {
@@ -1573,6 +1573,76 @@
"title": "ExperimentalFeature/enablement/setRequest",
"type": "object"
},
{
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"enum": [
"nativeIntegrityState/read"
],
"title": "NativeIntegrityState/readRequestMethod",
"type": "string"
},
"params": {
"type": "null"
}
},
"required": [
"id",
"method"
],
"title": "NativeIntegrityState/readRequest",
"type": "object"
},
{
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"enum": [
"nativeIntegrityState/write"
],
"title": "NativeIntegrityState/writeRequestMethod",
"type": "string"
},
"params": {
"$ref": "#/definitions/v2/NativeIntegrityStateWriteParams"
}
},
"required": [
"id",
"method",
"params"
],
"title": "NativeIntegrityState/writeRequest",
"type": "object"
},
{
"properties": {
"id": {
"$ref": "#/definitions/v2/RequestId"
},
"method": {
"enum": [
"nativeIntegrityState/clear"
],
"title": "NativeIntegrityState/clearRequestMethod",
"type": "string"
},
"params": {
"type": "null"
}
},
"required": [
"id",
"method"
],
"title": "NativeIntegrityState/clearRequest",
"type": "object"
},
{
"properties": {
"id": {
@@ -11790,6 +11860,57 @@
"title": "ModelVerificationNotification",
"type": "object"
},
"NativeIntegrityStateClearResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "NativeIntegrityStateClearResponse",
"type": "object"
},
"NativeIntegrityStateReadResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"state": {
"type": [
"string",
"null"
]
}
},
"title": "NativeIntegrityStateReadResponse",
"type": "object"
},
"NativeIntegrityStateWriteParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"expectedState": {
"description": "When present, write only if the calling surface still stores this state.",
"type": [
"string",
"null"
]
},
"state": {
"type": "string"
}
},
"required": [
"state"
],
"title": "NativeIntegrityStateWriteParams",
"type": "object"
},
"NativeIntegrityStateWriteResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"written": {
"type": "boolean"
}
},
"required": [
"written"
],
"title": "NativeIntegrityStateWriteResponse",
"type": "object"
},
"NetworkAccess": {
"enum": [
"restricted",
@@ -2332,6 +2332,76 @@
"title": "ExperimentalFeature/enablement/setRequest",
"type": "object"
},
{
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"enum": [
"nativeIntegrityState/read"
],
"title": "NativeIntegrityState/readRequestMethod",
"type": "string"
},
"params": {
"type": "null"
}
},
"required": [
"id",
"method"
],
"title": "NativeIntegrityState/readRequest",
"type": "object"
},
{
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"enum": [
"nativeIntegrityState/write"
],
"title": "NativeIntegrityState/writeRequestMethod",
"type": "string"
},
"params": {
"$ref": "#/definitions/NativeIntegrityStateWriteParams"
}
},
"required": [
"id",
"method",
"params"
],
"title": "NativeIntegrityState/writeRequest",
"type": "object"
},
{
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"enum": [
"nativeIntegrityState/clear"
],
"title": "NativeIntegrityState/clearRequestMethod",
"type": "string"
},
"params": {
"type": "null"
}
},
"required": [
"id",
"method"
],
"title": "NativeIntegrityState/clearRequest",
"type": "object"
},
{
"properties": {
"id": {
@@ -8312,6 +8382,57 @@
"title": "ModelVerificationNotification",
"type": "object"
},
"NativeIntegrityStateClearResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "NativeIntegrityStateClearResponse",
"type": "object"
},
"NativeIntegrityStateReadResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"state": {
"type": [
"string",
"null"
]
}
},
"title": "NativeIntegrityStateReadResponse",
"type": "object"
},
"NativeIntegrityStateWriteParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"expectedState": {
"description": "When present, write only if the calling surface still stores this state.",
"type": [
"string",
"null"
]
},
"state": {
"type": "string"
}
},
"required": [
"state"
],
"title": "NativeIntegrityStateWriteParams",
"type": "object"
},
"NativeIntegrityStateWriteResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"written": {
"type": "boolean"
}
},
"required": [
"written"
],
"title": "NativeIntegrityStateWriteResponse",
"type": "object"
},
"NetworkAccess": {
"enum": [
"restricted",
@@ -0,0 +1,5 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "NativeIntegrityStateClearResponse",
"type": "object"
}
@@ -0,0 +1,13 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"state": {
"type": [
"string",
"null"
]
}
},
"title": "NativeIntegrityStateReadResponse",
"type": "object"
}
@@ -0,0 +1,20 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"expectedState": {
"description": "When present, write only if the calling surface still stores this state.",
"type": [
"string",
"null"
]
},
"state": {
"type": "string"
}
},
"required": [
"state"
],
"title": "NativeIntegrityStateWriteParams",
"type": "object"
}
@@ -0,0 +1,13 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"written": {
"type": "boolean"
}
},
"required": [
"written"
],
"title": "NativeIntegrityStateWriteResponse",
"type": "object"
}
File diff suppressed because one or more lines are too long
@@ -0,0 +1,5 @@
// 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 NativeIntegrityStateClearResponse = Record<string, never>;
@@ -0,0 +1,5 @@
// 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 NativeIntegrityStateReadResponse = { state: string | null, };
@@ -0,0 +1,9 @@
// 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 NativeIntegrityStateWriteParams = { state: string,
/**
* When present, write only if the calling surface still stores this state.
*/
expectedState?: string | null, };
@@ -0,0 +1,5 @@
// 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 NativeIntegrityStateWriteResponse = { written: boolean, };
@@ -245,6 +245,10 @@ export type { ModelServiceTier } from "./ModelServiceTier";
export type { ModelUpgradeInfo } from "./ModelUpgradeInfo";
export type { ModelVerification } from "./ModelVerification";
export type { ModelVerificationNotification } from "./ModelVerificationNotification";
export type { NativeIntegrityStateClearResponse } from "./NativeIntegrityStateClearResponse";
export type { NativeIntegrityStateReadResponse } from "./NativeIntegrityStateReadResponse";
export type { NativeIntegrityStateWriteParams } from "./NativeIntegrityStateWriteParams";
export type { NativeIntegrityStateWriteResponse } from "./NativeIntegrityStateWriteResponse";
export type { NetworkAccess } from "./NetworkAccess";
export type { NetworkApprovalContext } from "./NetworkApprovalContext";
export type { NetworkApprovalProtocol } from "./NetworkApprovalProtocol";
@@ -861,19 +861,16 @@ client_request_definitions! {
serialization: global("remote-control-clients"),
response: v2::RemoteControlClientsRevokeResponse,
},
#[experimental("nativeIntegrityState/read")]
NativeIntegrityStateRead => "nativeIntegrityState/read" {
params: #[ts(type = "undefined")] #[serde(skip_serializing_if = "Option::is_none")] Option<()>,
serialization: global_shared_read("native-integrity-state"),
response: v2::NativeIntegrityStateReadResponse,
},
#[experimental("nativeIntegrityState/write")]
NativeIntegrityStateWrite => "nativeIntegrityState/write" {
params: v2::NativeIntegrityStateWriteParams,
serialization: global("native-integrity-state"),
response: v2::NativeIntegrityStateWriteResponse,
},
#[experimental("nativeIntegrityState/clear")]
NativeIntegrityStateClear => "nativeIntegrityState/clear" {
params: #[ts(type = "undefined")] #[serde(skip_serializing_if = "Option::is_none")] Option<()>,
serialization: global("native-integrity-state"),
+3 -3
View File
@@ -214,9 +214,9 @@ Example with notification opt-out:
- `remoteControl/client/list` — experimental; list controller devices granted access to an environment. Pass `environmentId` and optional `cursor`, `limit`, and `order`; returns picker-oriented client metadata plus `nextCursor`. This signed-in account-management operation works while the local relay is disabled or unenrolled.
- `remoteControl/client/revoke` — experimental; revoke one controller device's grant for an environment. Pass `environmentId` and `clientId`; returns an empty object. This signed-in account-management operation works while the local relay is disabled or unenrolled.
- `remoteControl/status/changed` — notification emitted when the remote-control status or client-visible environment id changes. `status` is one of `disabled`, `connecting`, `connected`, or `errored`; `serverName` is the local machine name used by this app-server process; `environmentId` is a string when the app-server has a current enrollment and `null` when that enrollment is cleared, invalidated, or remote control is disabled. Newly initialized app-server clients always receive the current status snapshot.
- `nativeIntegrityState/read` — experimental; read the integrity state file for the initialized client's recognized native surface. Returns `{ state }`, where `state` is `null` when no file exists.
- `nativeIntegrityState/write` — experimental; write the initialized client's recognized native-surface state file. Pass `expectedState` to write only when the file still contains that value; omit it to replace the file unconditionally. Returns `{ written }`.
- `nativeIntegrityState/clear` — experimental; delete the integrity state file for the initialized client's recognized native surface. Returns `{}`.
- `nativeIntegrityState/read` — read the integrity state file for the initialized client's recognized native surface. Returns `{ state }`, where `state` is `null` when no file exists.
- `nativeIntegrityState/write` — write the initialized client's recognized native-surface state file. Pass `expectedState` to write only when the file still contains that value; omit it to replace the file unconditionally. Returns `{ written }`.
- `nativeIntegrityState/clear` — delete the integrity state file for the initialized client's recognized native surface. Returns `{}`.
- `skills/config/write` — write user-level skill config by name or absolute path.
- `plugin/install` — install a plugin from a discovered marketplace entry, rejecting marketplace entries marked unavailable for install, install MCPs if any, and return the effective plugin auth policy plus any apps that still need auth (**under development; do not call from production clients yet**).
- `plugin/uninstall` — uninstall a local plugin by `pluginId` in `<plugin>@<marketplace>` form by removing its cached files and clearing its user-level config entry, or uninstall a remote ChatGPT plugin by backend `pluginId` by forwarding the uninstall to the ChatGPT plugin backend and removing any downloaded remote-plugin cache (**under development; do not call from production clients yet**).