@floegence/redevplugin-ui 0.6.16 → 0.6.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -379,6 +379,23 @@ export interface paths {
379
379
  patch?: never;
380
380
  trace?: never;
381
381
  };
382
+ "/_redevplugin/api/plugins/surfaces/{surface_instance_id}/operations/query": {
383
+ parameters: {
384
+ query?: never;
385
+ header?: never;
386
+ path?: never;
387
+ cookie?: never;
388
+ };
389
+ get?: never;
390
+ put?: never;
391
+ /** @description Returns only the sandbox-safe status projection for an operation bound to the authenticated surface, session, and private bridge channel. */
392
+ post: operations["getSurfacePluginOperationSnapshot"];
393
+ delete?: never;
394
+ options?: never;
395
+ head?: never;
396
+ patch?: never;
397
+ trace?: never;
398
+ };
382
399
  "/_redevplugin/api/plugins/surfaces/{surface_instance_id}/confirmations/reject": {
383
400
  parameters: {
384
401
  query?: never;
@@ -978,6 +995,11 @@ export interface components {
978
995
  ok: true;
979
996
  data: components["schemas"]["SurfaceStreamAcknowledgementResult"];
980
997
  };
998
+ PluginOperationSnapshotSuccessResponse: {
999
+ /** @constant */
1000
+ ok: true;
1001
+ data: components["schemas"]["PluginOperationSnapshot"];
1002
+ };
981
1003
  SurfaceDisposeSuccessResponse: {
982
1004
  /** @constant */
983
1005
  ok: true;
@@ -1143,13 +1165,19 @@ export interface components {
1143
1165
  ok: true;
1144
1166
  data: components["schemas"]["PluginSettingsSnapshot"];
1145
1167
  };
1146
- PlatformError: components["schemas"]["GenericPlatformError"] | components["schemas"]["JSONLimitPlatformError"] | components["schemas"]["PackageValidationPlatformError"] | components["schemas"]["ManagementRevisionPlatformError"] | components["schemas"]["AuthorizationRevisionPlatformError"] | components["schemas"]["BindingRevisionPlatformError"] | components["schemas"]["ValuesRevisionPlatformError"] | components["schemas"]["CapabilityPlatformError"] | components["schemas"]["WorkerPlatformError"];
1168
+ PlatformError: components["schemas"]["GenericPlatformError"] | components["schemas"]["OperationRateLimitPlatformError"] | components["schemas"]["JSONLimitPlatformError"] | components["schemas"]["PackageValidationPlatformError"] | components["schemas"]["ManagementRevisionPlatformError"] | components["schemas"]["AuthorizationRevisionPlatformError"] | components["schemas"]["BindingRevisionPlatformError"] | components["schemas"]["ValuesRevisionPlatformError"] | components["schemas"]["CapabilityPlatformError"] | components["schemas"]["WorkerPlatformError"];
1147
1169
  MutationPlatformError: components["schemas"]["MutationGenericPlatformError"] | components["schemas"]["MutationJSONLimitPlatformError"] | components["schemas"]["MutationPackageValidationPlatformError"] | components["schemas"]["MutationManagementRevisionPlatformError"] | components["schemas"]["MutationAuthorizationRevisionPlatformError"] | components["schemas"]["MutationBindingRevisionPlatformError"] | components["schemas"]["MutationValuesRevisionPlatformError"] | components["schemas"]["MutationCapabilityPlatformError"] | components["schemas"]["MutationWorkerPlatformError"] | components["schemas"]["MutationSessionTeardownPlatformError"];
1148
1170
  GenericPlatformError: {
1149
1171
  code: components["schemas"]["GenericPlatformErrorCode"];
1150
1172
  message: components["schemas"]["PlatformErrorMessage"];
1151
1173
  details: components["schemas"]["EmptyErrorDetails"];
1152
1174
  };
1175
+ OperationRateLimitPlatformError: {
1176
+ /** @constant */
1177
+ code: "PLUGIN_OPERATION_RATE_LIMITED";
1178
+ message: components["schemas"]["PlatformErrorMessage"];
1179
+ details: components["schemas"]["OperationRateLimitErrorDetails"];
1180
+ };
1153
1181
  JSONLimitPlatformError: {
1154
1182
  /** @constant */
1155
1183
  code: "PLUGIN_JSON_LIMIT_EXCEEDED";
@@ -1271,6 +1299,9 @@ export interface components {
1271
1299
  /** @enum {string} */
1272
1300
  MutationOutcome: "committed" | "not_committed" | "unknown";
1273
1301
  EmptyErrorDetails: Record<string, never>;
1302
+ OperationRateLimitErrorDetails: {
1303
+ retry_after_ms: number;
1304
+ };
1274
1305
  JSONLimitErrorDetails: {
1275
1306
  /** @enum {string} */
1276
1307
  reason: "payload_bytes" | "json_depth" | "prototype_key" | "number_precision";
@@ -1325,7 +1356,7 @@ export interface components {
1325
1356
  expected_values_revision: number;
1326
1357
  actual_values_revision: number;
1327
1358
  };
1328
- ErrorCode: components["schemas"]["ErrorCodesV6PlatformErrorCode"];
1359
+ ErrorCode: components["schemas"]["ErrorCodesV7PlatformErrorCode"];
1329
1360
  PlatformErrorMessage: string;
1330
1361
  /** @enum {string} */
1331
1362
  GenericPlatformErrorCode: "PLUGIN_INVALID_REQUEST" | "PLUGIN_SIGNATURE_INVALID" | "PLUGIN_TRUST_STATE_DENIED" | "PLUGIN_TRUST_VERIFICATION_REQUIRED" | "PLUGIN_TRUST_VERIFICATION_INVALID" | "PLUGIN_RELEASE_REF_VERIFICATION_FAILED" | "PLUGIN_RELEASE_REF_POLICY_DENIED" | "PLUGIN_DISABLED" | "PLUGIN_DISABLED_BY_POLICY" | "PLUGIN_PERMISSION_DENIED" | "PLUGIN_ORIGIN_DENIED" | "PLUGIN_ACTION_DENIED" | "PLUGIN_OWNER_SCOPE_MISMATCH" | "PLUGIN_SECRET_SCOPE_MISMATCH" | "PLUGIN_STORAGE_SCOPE_MISMATCH" | "PLUGIN_ADAPTER_FAILURE" | "PLUGIN_SESSION_REVOKED" | "PLUGIN_SESSION_TEARDOWN_INCOMPLETE" | "PLUGIN_SESSION_FENCE_CAPACITY" | "PLUGIN_CONFIRMATION_REQUIRED" | "PLUGIN_CONFIRMATION_INVALID" | "PLUGIN_TOKEN_EXPIRED" | "PLUGIN_TOKEN_REPLAY" | "PLUGIN_GATEWAY_TOKEN_INVALID" | "PLUGIN_GATEWAY_TOKEN_REPLAYED" | "PLUGIN_GATEWAY_TOKEN_CHANNEL_MISMATCH" | "PLUGIN_ASSET_TICKET_INVALID" | "PLUGIN_ASSET_SESSION_INVALID" | "PLUGIN_STREAM_TICKET_INVALID" | "PLUGIN_STREAM_DELIVERY_INVALID" | "PLUGIN_STREAM_CANCELLED" | "PLUGIN_LEASE_INVALID" | "PLUGIN_LEASE_REPLAYED" | "PLUGIN_GRANT_INVALID" | "PLUGIN_STORAGE_QUOTA_EXCEEDED" | "PLUGIN_OPERATION_BLOCKED" | "PLUGIN_OPERATION_NOT_FOUND" | "PLUGIN_OPERATION_NOT_CANCELABLE" | "PLUGIN_NETWORK_TARGET_DENIED" | "PLUGIN_NETWORK_RATE_LIMITED" | "PLUGIN_RUNTIME_UNAVAILABLE" | "PLUGIN_RUNTIME_VERSION_MISMATCH" | "PLUGIN_RUNTIME_CONTRACT_MISMATCH" | "PLUGIN_UI_PROTOCOL_UNSUPPORTED" | "PLUGIN_UI_PROTOCOL_VIOLATION" | "PLUGIN_SURFACE_QUIESCE_TIMEOUT" | "PLUGIN_CONTRACT_MISMATCH" | "PLUGIN_CSRF_REQUIRED" | "PLUGIN_CSRF_INVALID" | "PLUGIN_FEATURE_NOT_CONFIGURED";
@@ -1345,7 +1376,7 @@ export interface components {
1345
1376
  PluginCatalogResult: {
1346
1377
  plugins: components["schemas"]["PluginRecord"][];
1347
1378
  };
1348
- PluginCompatibilityManifest: components["schemas"]["CompatibilityManifestV9"];
1379
+ PluginCompatibilityManifest: components["schemas"]["CompatibilityManifestV11"];
1349
1380
  PluginOperationList: {
1350
1381
  operations: components["schemas"]["OperationRecord"][];
1351
1382
  next_cursor?: string;
@@ -1445,7 +1476,7 @@ export interface components {
1445
1476
  invocation_id?: string;
1446
1477
  method?: string;
1447
1478
  failure_code?: string;
1448
- runtime_process_failure_code?: components["schemas"]["ErrorCodesV6RuntimeProcessFailureCode"];
1479
+ runtime_process_failure_code?: components["schemas"]["ErrorCodesV7RuntimeProcessFailureCode"];
1449
1480
  operation_id?: string;
1450
1481
  stream_id?: string;
1451
1482
  runtime_instance_id?: string;
@@ -2009,7 +2040,7 @@ export interface components {
2009
2040
  update_eligibility?: components["schemas"]["ExternalPackageUpdateEligibility"];
2010
2041
  security_summary?: components["schemas"]["ExternalPackageSecuritySummary"];
2011
2042
  capability_contracts?: components["schemas"]["CapabilityContractPin"][];
2012
- manifest: components["schemas"]["ManifestV5"];
2043
+ manifest: components["schemas"]["ManifestV5"] | components["schemas"]["ManifestV6"];
2013
2044
  package_entries: components["schemas"]["PackageEntry"][];
2014
2045
  runtime_requirement?: components["schemas"]["RuntimeRequirement"];
2015
2046
  /** Format: date-time */
@@ -2047,7 +2078,7 @@ export interface components {
2047
2078
  policy_revision: number;
2048
2079
  management_revision: number;
2049
2080
  revoke_epoch: number;
2050
- manifest: components["schemas"]["ManifestV5"];
2081
+ manifest: components["schemas"]["ManifestV5"] | components["schemas"]["ManifestV6"];
2051
2082
  package_entries: components["schemas"]["PackageEntry"][];
2052
2083
  runtime_requirement?: components["schemas"]["RuntimeRequirement"];
2053
2084
  version_history?: components["schemas"]["PluginVersion"][];
@@ -2172,6 +2203,8 @@ export interface components {
2172
2203
  plugin_id: string;
2173
2204
  plugin_instance_id: string;
2174
2205
  plugin_version: components["schemas"]["StrictSemVer"];
2206
+ /** @enum {string} */
2207
+ ui_protocol_version: "plugin-ui-v5" | "plugin-ui-v6";
2175
2208
  surface_id: string;
2176
2209
  surface_instance_id: string;
2177
2210
  active_fingerprint: string;
@@ -2217,8 +2250,8 @@ export interface components {
2217
2250
  asset_session_nonce: string;
2218
2251
  management_revision: number;
2219
2252
  revoke_epoch: number;
2220
- /** @constant */
2221
- ui_protocol_version: "plugin-ui-v5";
2253
+ /** @enum {string} */
2254
+ ui_protocol_version: "plugin-ui-v5" | "plugin-ui-v6";
2222
2255
  };
2223
2256
  TrustedParentBridgeTokenRequest: {
2224
2257
  handshake: components["schemas"]["TrustedParentBridgeHandshake"];
@@ -2275,6 +2308,47 @@ export interface components {
2275
2308
  bridge_channel_id: string;
2276
2309
  reason?: string;
2277
2310
  };
2311
+ GetSurfaceOperationRequest: {
2312
+ operation_id: string;
2313
+ bridge_channel_id: string;
2314
+ };
2315
+ PluginOperationSnapshot: {
2316
+ operation_id: string;
2317
+ /** @enum {string} */
2318
+ status: "running" | "cancel_requested";
2319
+ cancelable: boolean;
2320
+ /** Format: date-time */
2321
+ created_at: string;
2322
+ /** Format: date-time */
2323
+ updated_at: string;
2324
+ retry_after_ms: number;
2325
+ } | {
2326
+ operation_id: string;
2327
+ /** @enum {string} */
2328
+ status: "completed" | "canceled" | "orphaned_after_disable" | "orphaned_after_uninstall";
2329
+ cancelable: boolean;
2330
+ /** Format: date-time */
2331
+ created_at: string;
2332
+ /** Format: date-time */
2333
+ updated_at: string;
2334
+ retry_after_ms: number;
2335
+ /** Format: date-time */
2336
+ terminal_at: string;
2337
+ } | {
2338
+ operation_id: string;
2339
+ /** @constant */
2340
+ status: "failed";
2341
+ cancelable: boolean;
2342
+ /** Format: date-time */
2343
+ created_at: string;
2344
+ /** Format: date-time */
2345
+ updated_at: string;
2346
+ retry_after_ms: number;
2347
+ /** Format: date-time */
2348
+ terminal_at: string;
2349
+ /** @enum {string} */
2350
+ failure_code: "adapter_failed" | "contract_invalid" | "platform_failed" | "quota_exceeded" | "runtime_failed";
2351
+ };
2278
2352
  RejectSurfaceConfirmationRequest: {
2279
2353
  plugin_instance_id: string;
2280
2354
  bridge_channel_id: string;
@@ -2380,9 +2454,11 @@ export interface components {
2380
2454
  request_hash: string;
2381
2455
  plan_hash: string;
2382
2456
  /** @description Host-redacted confirmation plan payload returned by the declared preflight method, when available. */
2383
- plan?: components["schemas"]["RiskPlan"] | {
2457
+ plan?: components["schemas"]["RiskPlan"] | ({
2458
+ schema_version?: unknown;
2459
+ } & {
2384
2460
  [key: string]: unknown;
2385
- };
2461
+ });
2386
2462
  /** Format: date-time */
2387
2463
  expires_at: string;
2388
2464
  };
@@ -2586,18 +2662,18 @@ export interface components {
2586
2662
  };
2587
2663
  remove?: string[];
2588
2664
  };
2589
- ErrorCodesV6: Record<string, never>;
2665
+ ErrorCodesV7: Record<string, never>;
2590
2666
  /** @enum {string} */
2591
- ErrorCodesV6PlatformErrorCode: "PLUGIN_INVALID_REQUEST" | "PLUGIN_MANIFEST_INVALID" | "PLUGIN_PACKAGE_INVALID" | "PLUGIN_PACKAGE_TOO_LARGE" | "PLUGIN_PACKAGE_PATH_FORBIDDEN" | "PLUGIN_SIGNATURE_INVALID" | "PLUGIN_TRUST_STATE_DENIED" | "PLUGIN_TRUST_VERIFICATION_REQUIRED" | "PLUGIN_TRUST_VERIFICATION_INVALID" | "PLUGIN_RELEASE_REF_VERIFICATION_FAILED" | "PLUGIN_RELEASE_REF_POLICY_DENIED" | "PLUGIN_DISABLED" | "PLUGIN_DISABLED_BY_POLICY" | "PLUGIN_PERMISSION_DENIED" | "PLUGIN_ORIGIN_DENIED" | "PLUGIN_ACTION_DENIED" | "PLUGIN_OWNER_SCOPE_MISMATCH" | "PLUGIN_SECRET_SCOPE_MISMATCH" | "PLUGIN_STORAGE_SCOPE_MISMATCH" | "PLUGIN_ADAPTER_FAILURE" | "PLUGIN_SESSION_REVOKED" | "PLUGIN_SESSION_TEARDOWN_INCOMPLETE" | "PLUGIN_SESSION_FENCE_CAPACITY" | "PLUGIN_CONFIRMATION_REQUIRED" | "PLUGIN_CONFIRMATION_INVALID" | "PLUGIN_TOKEN_EXPIRED" | "PLUGIN_TOKEN_REPLAY" | "PLUGIN_GATEWAY_TOKEN_INVALID" | "PLUGIN_GATEWAY_TOKEN_REPLAYED" | "PLUGIN_GATEWAY_TOKEN_CHANNEL_MISMATCH" | "PLUGIN_ASSET_TICKET_INVALID" | "PLUGIN_ASSET_SESSION_INVALID" | "PLUGIN_STREAM_TICKET_INVALID" | "PLUGIN_STREAM_DELIVERY_INVALID" | "PLUGIN_STREAM_CANCELLED" | "PLUGIN_LEASE_INVALID" | "PLUGIN_LEASE_REPLAYED" | "PLUGIN_GRANT_INVALID" | "PLUGIN_STORAGE_QUOTA_EXCEEDED" | "PLUGIN_OPERATION_BLOCKED" | "PLUGIN_OPERATION_NOT_FOUND" | "PLUGIN_OPERATION_NOT_CANCELABLE" | "PLUGIN_NETWORK_TARGET_DENIED" | "PLUGIN_NETWORK_RATE_LIMITED" | "PLUGIN_RUNTIME_UNAVAILABLE" | "PLUGIN_RUNTIME_VERSION_MISMATCH" | "PLUGIN_RUNTIME_CONTRACT_MISMATCH" | "PLUGIN_UI_PROTOCOL_UNSUPPORTED" | "PLUGIN_UI_PROTOCOL_VIOLATION" | "PLUGIN_SURFACE_QUIESCE_TIMEOUT" | "PLUGIN_JSON_LIMIT_EXCEEDED" | "PLUGIN_CAPABILITY_ERROR" | "PLUGIN_WORKER_ERROR" | "PLUGIN_CONTRACT_MISMATCH" | "PLUGIN_MANAGEMENT_REVISION_MISMATCH" | "PLUGIN_AUTHORIZATION_REVISION_MISMATCH" | "PLUGIN_BINDING_REVISION_MISMATCH" | "PLUGIN_VALUES_REVISION_MISMATCH" | "PLUGIN_CSRF_REQUIRED" | "PLUGIN_CSRF_INVALID" | "PLUGIN_FEATURE_NOT_CONFIGURED";
2667
+ ErrorCodesV7PlatformErrorCode: "PLUGIN_INVALID_REQUEST" | "PLUGIN_MANIFEST_INVALID" | "PLUGIN_PACKAGE_INVALID" | "PLUGIN_PACKAGE_TOO_LARGE" | "PLUGIN_PACKAGE_PATH_FORBIDDEN" | "PLUGIN_SIGNATURE_INVALID" | "PLUGIN_TRUST_STATE_DENIED" | "PLUGIN_TRUST_VERIFICATION_REQUIRED" | "PLUGIN_TRUST_VERIFICATION_INVALID" | "PLUGIN_RELEASE_REF_VERIFICATION_FAILED" | "PLUGIN_RELEASE_REF_POLICY_DENIED" | "PLUGIN_DISABLED" | "PLUGIN_DISABLED_BY_POLICY" | "PLUGIN_PERMISSION_DENIED" | "PLUGIN_ORIGIN_DENIED" | "PLUGIN_ACTION_DENIED" | "PLUGIN_OWNER_SCOPE_MISMATCH" | "PLUGIN_SECRET_SCOPE_MISMATCH" | "PLUGIN_STORAGE_SCOPE_MISMATCH" | "PLUGIN_ADAPTER_FAILURE" | "PLUGIN_SESSION_REVOKED" | "PLUGIN_SESSION_TEARDOWN_INCOMPLETE" | "PLUGIN_SESSION_FENCE_CAPACITY" | "PLUGIN_CONFIRMATION_REQUIRED" | "PLUGIN_CONFIRMATION_INVALID" | "PLUGIN_TOKEN_EXPIRED" | "PLUGIN_TOKEN_REPLAY" | "PLUGIN_GATEWAY_TOKEN_INVALID" | "PLUGIN_GATEWAY_TOKEN_REPLAYED" | "PLUGIN_GATEWAY_TOKEN_CHANNEL_MISMATCH" | "PLUGIN_ASSET_TICKET_INVALID" | "PLUGIN_ASSET_SESSION_INVALID" | "PLUGIN_STREAM_TICKET_INVALID" | "PLUGIN_STREAM_DELIVERY_INVALID" | "PLUGIN_STREAM_CANCELLED" | "PLUGIN_LEASE_INVALID" | "PLUGIN_LEASE_REPLAYED" | "PLUGIN_GRANT_INVALID" | "PLUGIN_STORAGE_QUOTA_EXCEEDED" | "PLUGIN_OPERATION_BLOCKED" | "PLUGIN_OPERATION_NOT_FOUND" | "PLUGIN_OPERATION_NOT_CANCELABLE" | "PLUGIN_OPERATION_RATE_LIMITED" | "PLUGIN_NETWORK_TARGET_DENIED" | "PLUGIN_NETWORK_RATE_LIMITED" | "PLUGIN_RUNTIME_UNAVAILABLE" | "PLUGIN_RUNTIME_VERSION_MISMATCH" | "PLUGIN_RUNTIME_CONTRACT_MISMATCH" | "PLUGIN_UI_PROTOCOL_UNSUPPORTED" | "PLUGIN_UI_PROTOCOL_VIOLATION" | "PLUGIN_SURFACE_QUIESCE_TIMEOUT" | "PLUGIN_JSON_LIMIT_EXCEEDED" | "PLUGIN_CAPABILITY_ERROR" | "PLUGIN_WORKER_ERROR" | "PLUGIN_CONTRACT_MISMATCH" | "PLUGIN_MANAGEMENT_REVISION_MISMATCH" | "PLUGIN_AUTHORIZATION_REVISION_MISMATCH" | "PLUGIN_BINDING_REVISION_MISMATCH" | "PLUGIN_VALUES_REVISION_MISMATCH" | "PLUGIN_CSRF_REQUIRED" | "PLUGIN_CSRF_INVALID" | "PLUGIN_FEATURE_NOT_CONFIGURED";
2592
2668
  /** @enum {string} */
2593
- ErrorCodesV6BridgeErrorCode: "PLUGIN_INVALID_REQUEST" | "PLUGIN_MANIFEST_INVALID" | "PLUGIN_PACKAGE_INVALID" | "PLUGIN_PACKAGE_TOO_LARGE" | "PLUGIN_PACKAGE_PATH_FORBIDDEN" | "PLUGIN_SIGNATURE_INVALID" | "PLUGIN_TRUST_STATE_DENIED" | "PLUGIN_TRUST_VERIFICATION_REQUIRED" | "PLUGIN_TRUST_VERIFICATION_INVALID" | "PLUGIN_RELEASE_REF_VERIFICATION_FAILED" | "PLUGIN_RELEASE_REF_POLICY_DENIED" | "PLUGIN_DISABLED" | "PLUGIN_DISABLED_BY_POLICY" | "PLUGIN_PERMISSION_DENIED" | "PLUGIN_ORIGIN_DENIED" | "PLUGIN_ACTION_DENIED" | "PLUGIN_OWNER_SCOPE_MISMATCH" | "PLUGIN_SECRET_SCOPE_MISMATCH" | "PLUGIN_STORAGE_SCOPE_MISMATCH" | "PLUGIN_ADAPTER_FAILURE" | "PLUGIN_SESSION_REVOKED" | "PLUGIN_SESSION_TEARDOWN_INCOMPLETE" | "PLUGIN_SESSION_FENCE_CAPACITY" | "PLUGIN_CONFIRMATION_REQUIRED" | "PLUGIN_CONFIRMATION_INVALID" | "PLUGIN_TOKEN_EXPIRED" | "PLUGIN_TOKEN_REPLAY" | "PLUGIN_GATEWAY_TOKEN_INVALID" | "PLUGIN_GATEWAY_TOKEN_REPLAYED" | "PLUGIN_GATEWAY_TOKEN_CHANNEL_MISMATCH" | "PLUGIN_ASSET_TICKET_INVALID" | "PLUGIN_ASSET_SESSION_INVALID" | "PLUGIN_STREAM_TICKET_INVALID" | "PLUGIN_STREAM_DELIVERY_INVALID" | "PLUGIN_STREAM_CANCELLED" | "PLUGIN_LEASE_INVALID" | "PLUGIN_LEASE_REPLAYED" | "PLUGIN_GRANT_INVALID" | "PLUGIN_STORAGE_QUOTA_EXCEEDED" | "PLUGIN_OPERATION_BLOCKED" | "PLUGIN_OPERATION_NOT_FOUND" | "PLUGIN_OPERATION_NOT_CANCELABLE" | "PLUGIN_NETWORK_TARGET_DENIED" | "PLUGIN_NETWORK_RATE_LIMITED" | "PLUGIN_RUNTIME_UNAVAILABLE" | "PLUGIN_RUNTIME_VERSION_MISMATCH" | "PLUGIN_RUNTIME_CONTRACT_MISMATCH" | "PLUGIN_UI_PROTOCOL_UNSUPPORTED" | "PLUGIN_UI_PROTOCOL_VIOLATION" | "PLUGIN_SURFACE_QUIESCE_TIMEOUT" | "PLUGIN_JSON_LIMIT_EXCEEDED" | "PLUGIN_CAPABILITY_ERROR" | "PLUGIN_WORKER_ERROR" | "PLUGIN_CONTRACT_MISMATCH" | "PLUGIN_MANAGEMENT_REVISION_MISMATCH" | "PLUGIN_AUTHORIZATION_REVISION_MISMATCH" | "PLUGIN_BINDING_REVISION_MISMATCH" | "PLUGIN_VALUES_REVISION_MISMATCH" | "PLUGIN_CSRF_REQUIRED" | "PLUGIN_CSRF_INVALID" | "PLUGIN_FEATURE_NOT_CONFIGURED" | "PLUGIN_CONFIRMATION_REJECTED" | "PLUGIN_BRIDGE_CANCELLED" | "PLUGIN_BRIDGE_TIMEOUT" | "PLUGIN_BRIDGE_DISPOSED" | "PLUGIN_BRIDGE_HANDSHAKE_FAILED" | "PLUGIN_BRIDGE_HANDSHAKE_REQUIRED";
2669
+ ErrorCodesV7BridgeErrorCode: "PLUGIN_INVALID_REQUEST" | "PLUGIN_MANIFEST_INVALID" | "PLUGIN_PACKAGE_INVALID" | "PLUGIN_PACKAGE_TOO_LARGE" | "PLUGIN_PACKAGE_PATH_FORBIDDEN" | "PLUGIN_SIGNATURE_INVALID" | "PLUGIN_TRUST_STATE_DENIED" | "PLUGIN_TRUST_VERIFICATION_REQUIRED" | "PLUGIN_TRUST_VERIFICATION_INVALID" | "PLUGIN_RELEASE_REF_VERIFICATION_FAILED" | "PLUGIN_RELEASE_REF_POLICY_DENIED" | "PLUGIN_DISABLED" | "PLUGIN_DISABLED_BY_POLICY" | "PLUGIN_PERMISSION_DENIED" | "PLUGIN_ORIGIN_DENIED" | "PLUGIN_ACTION_DENIED" | "PLUGIN_OWNER_SCOPE_MISMATCH" | "PLUGIN_SECRET_SCOPE_MISMATCH" | "PLUGIN_STORAGE_SCOPE_MISMATCH" | "PLUGIN_ADAPTER_FAILURE" | "PLUGIN_SESSION_REVOKED" | "PLUGIN_SESSION_TEARDOWN_INCOMPLETE" | "PLUGIN_SESSION_FENCE_CAPACITY" | "PLUGIN_CONFIRMATION_REQUIRED" | "PLUGIN_CONFIRMATION_INVALID" | "PLUGIN_TOKEN_EXPIRED" | "PLUGIN_TOKEN_REPLAY" | "PLUGIN_GATEWAY_TOKEN_INVALID" | "PLUGIN_GATEWAY_TOKEN_REPLAYED" | "PLUGIN_GATEWAY_TOKEN_CHANNEL_MISMATCH" | "PLUGIN_ASSET_TICKET_INVALID" | "PLUGIN_ASSET_SESSION_INVALID" | "PLUGIN_STREAM_TICKET_INVALID" | "PLUGIN_STREAM_DELIVERY_INVALID" | "PLUGIN_STREAM_CANCELLED" | "PLUGIN_LEASE_INVALID" | "PLUGIN_LEASE_REPLAYED" | "PLUGIN_GRANT_INVALID" | "PLUGIN_STORAGE_QUOTA_EXCEEDED" | "PLUGIN_OPERATION_BLOCKED" | "PLUGIN_OPERATION_NOT_FOUND" | "PLUGIN_OPERATION_NOT_CANCELABLE" | "PLUGIN_OPERATION_RATE_LIMITED" | "PLUGIN_NETWORK_TARGET_DENIED" | "PLUGIN_NETWORK_RATE_LIMITED" | "PLUGIN_RUNTIME_UNAVAILABLE" | "PLUGIN_RUNTIME_VERSION_MISMATCH" | "PLUGIN_RUNTIME_CONTRACT_MISMATCH" | "PLUGIN_UI_PROTOCOL_UNSUPPORTED" | "PLUGIN_UI_PROTOCOL_VIOLATION" | "PLUGIN_SURFACE_QUIESCE_TIMEOUT" | "PLUGIN_JSON_LIMIT_EXCEEDED" | "PLUGIN_CAPABILITY_ERROR" | "PLUGIN_WORKER_ERROR" | "PLUGIN_CONTRACT_MISMATCH" | "PLUGIN_MANAGEMENT_REVISION_MISMATCH" | "PLUGIN_AUTHORIZATION_REVISION_MISMATCH" | "PLUGIN_BINDING_REVISION_MISMATCH" | "PLUGIN_VALUES_REVISION_MISMATCH" | "PLUGIN_CSRF_REQUIRED" | "PLUGIN_CSRF_INVALID" | "PLUGIN_FEATURE_NOT_CONFIGURED" | "PLUGIN_CONFIRMATION_REJECTED" | "PLUGIN_BRIDGE_CANCELLED" | "PLUGIN_BRIDGE_TIMEOUT" | "PLUGIN_BRIDGE_DISPOSED" | "PLUGIN_BRIDGE_HANDSHAKE_FAILED" | "PLUGIN_BRIDGE_HANDSHAKE_REQUIRED";
2594
2670
  /** @enum {string} */
2595
- ErrorCodesV6TypescriptClientErrorCode: "PLUGIN_INVALID_REQUEST" | "PLUGIN_MANIFEST_INVALID" | "PLUGIN_PACKAGE_INVALID" | "PLUGIN_PACKAGE_TOO_LARGE" | "PLUGIN_PACKAGE_PATH_FORBIDDEN" | "PLUGIN_SIGNATURE_INVALID" | "PLUGIN_TRUST_STATE_DENIED" | "PLUGIN_TRUST_VERIFICATION_REQUIRED" | "PLUGIN_TRUST_VERIFICATION_INVALID" | "PLUGIN_RELEASE_REF_VERIFICATION_FAILED" | "PLUGIN_RELEASE_REF_POLICY_DENIED" | "PLUGIN_DISABLED" | "PLUGIN_DISABLED_BY_POLICY" | "PLUGIN_PERMISSION_DENIED" | "PLUGIN_ORIGIN_DENIED" | "PLUGIN_ACTION_DENIED" | "PLUGIN_OWNER_SCOPE_MISMATCH" | "PLUGIN_SECRET_SCOPE_MISMATCH" | "PLUGIN_STORAGE_SCOPE_MISMATCH" | "PLUGIN_ADAPTER_FAILURE" | "PLUGIN_SESSION_REVOKED" | "PLUGIN_SESSION_TEARDOWN_INCOMPLETE" | "PLUGIN_SESSION_FENCE_CAPACITY" | "PLUGIN_CONFIRMATION_REQUIRED" | "PLUGIN_CONFIRMATION_INVALID" | "PLUGIN_TOKEN_EXPIRED" | "PLUGIN_TOKEN_REPLAY" | "PLUGIN_GATEWAY_TOKEN_INVALID" | "PLUGIN_GATEWAY_TOKEN_REPLAYED" | "PLUGIN_GATEWAY_TOKEN_CHANNEL_MISMATCH" | "PLUGIN_ASSET_TICKET_INVALID" | "PLUGIN_ASSET_SESSION_INVALID" | "PLUGIN_STREAM_TICKET_INVALID" | "PLUGIN_STREAM_DELIVERY_INVALID" | "PLUGIN_STREAM_CANCELLED" | "PLUGIN_LEASE_INVALID" | "PLUGIN_LEASE_REPLAYED" | "PLUGIN_GRANT_INVALID" | "PLUGIN_STORAGE_QUOTA_EXCEEDED" | "PLUGIN_OPERATION_BLOCKED" | "PLUGIN_OPERATION_NOT_FOUND" | "PLUGIN_OPERATION_NOT_CANCELABLE" | "PLUGIN_NETWORK_TARGET_DENIED" | "PLUGIN_NETWORK_RATE_LIMITED" | "PLUGIN_RUNTIME_UNAVAILABLE" | "PLUGIN_RUNTIME_VERSION_MISMATCH" | "PLUGIN_RUNTIME_CONTRACT_MISMATCH" | "PLUGIN_UI_PROTOCOL_UNSUPPORTED" | "PLUGIN_UI_PROTOCOL_VIOLATION" | "PLUGIN_SURFACE_QUIESCE_TIMEOUT" | "PLUGIN_JSON_LIMIT_EXCEEDED" | "PLUGIN_CAPABILITY_ERROR" | "PLUGIN_WORKER_ERROR" | "PLUGIN_CONTRACT_MISMATCH" | "PLUGIN_MANAGEMENT_REVISION_MISMATCH" | "PLUGIN_AUTHORIZATION_REVISION_MISMATCH" | "PLUGIN_BINDING_REVISION_MISMATCH" | "PLUGIN_VALUES_REVISION_MISMATCH" | "PLUGIN_CSRF_REQUIRED" | "PLUGIN_CSRF_INVALID" | "PLUGIN_FEATURE_NOT_CONFIGURED" | "PLUGIN_CONFIRMATION_REJECTED" | "PLUGIN_BRIDGE_CANCELLED" | "PLUGIN_BRIDGE_TIMEOUT" | "PLUGIN_BRIDGE_DISPOSED" | "PLUGIN_BRIDGE_HANDSHAKE_FAILED" | "PLUGIN_BRIDGE_HANDSHAKE_REQUIRED" | "PLUGIN_PLATFORM_REQUEST_FAILED" | "PLUGIN_STREAM_FAILED";
2671
+ ErrorCodesV7TypescriptClientErrorCode: "PLUGIN_INVALID_REQUEST" | "PLUGIN_MANIFEST_INVALID" | "PLUGIN_PACKAGE_INVALID" | "PLUGIN_PACKAGE_TOO_LARGE" | "PLUGIN_PACKAGE_PATH_FORBIDDEN" | "PLUGIN_SIGNATURE_INVALID" | "PLUGIN_TRUST_STATE_DENIED" | "PLUGIN_TRUST_VERIFICATION_REQUIRED" | "PLUGIN_TRUST_VERIFICATION_INVALID" | "PLUGIN_RELEASE_REF_VERIFICATION_FAILED" | "PLUGIN_RELEASE_REF_POLICY_DENIED" | "PLUGIN_DISABLED" | "PLUGIN_DISABLED_BY_POLICY" | "PLUGIN_PERMISSION_DENIED" | "PLUGIN_ORIGIN_DENIED" | "PLUGIN_ACTION_DENIED" | "PLUGIN_OWNER_SCOPE_MISMATCH" | "PLUGIN_SECRET_SCOPE_MISMATCH" | "PLUGIN_STORAGE_SCOPE_MISMATCH" | "PLUGIN_ADAPTER_FAILURE" | "PLUGIN_SESSION_REVOKED" | "PLUGIN_SESSION_TEARDOWN_INCOMPLETE" | "PLUGIN_SESSION_FENCE_CAPACITY" | "PLUGIN_CONFIRMATION_REQUIRED" | "PLUGIN_CONFIRMATION_INVALID" | "PLUGIN_TOKEN_EXPIRED" | "PLUGIN_TOKEN_REPLAY" | "PLUGIN_GATEWAY_TOKEN_INVALID" | "PLUGIN_GATEWAY_TOKEN_REPLAYED" | "PLUGIN_GATEWAY_TOKEN_CHANNEL_MISMATCH" | "PLUGIN_ASSET_TICKET_INVALID" | "PLUGIN_ASSET_SESSION_INVALID" | "PLUGIN_STREAM_TICKET_INVALID" | "PLUGIN_STREAM_DELIVERY_INVALID" | "PLUGIN_STREAM_CANCELLED" | "PLUGIN_LEASE_INVALID" | "PLUGIN_LEASE_REPLAYED" | "PLUGIN_GRANT_INVALID" | "PLUGIN_STORAGE_QUOTA_EXCEEDED" | "PLUGIN_OPERATION_BLOCKED" | "PLUGIN_OPERATION_NOT_FOUND" | "PLUGIN_OPERATION_NOT_CANCELABLE" | "PLUGIN_OPERATION_RATE_LIMITED" | "PLUGIN_NETWORK_TARGET_DENIED" | "PLUGIN_NETWORK_RATE_LIMITED" | "PLUGIN_RUNTIME_UNAVAILABLE" | "PLUGIN_RUNTIME_VERSION_MISMATCH" | "PLUGIN_RUNTIME_CONTRACT_MISMATCH" | "PLUGIN_UI_PROTOCOL_UNSUPPORTED" | "PLUGIN_UI_PROTOCOL_VIOLATION" | "PLUGIN_SURFACE_QUIESCE_TIMEOUT" | "PLUGIN_JSON_LIMIT_EXCEEDED" | "PLUGIN_CAPABILITY_ERROR" | "PLUGIN_WORKER_ERROR" | "PLUGIN_CONTRACT_MISMATCH" | "PLUGIN_MANAGEMENT_REVISION_MISMATCH" | "PLUGIN_AUTHORIZATION_REVISION_MISMATCH" | "PLUGIN_BINDING_REVISION_MISMATCH" | "PLUGIN_VALUES_REVISION_MISMATCH" | "PLUGIN_CSRF_REQUIRED" | "PLUGIN_CSRF_INVALID" | "PLUGIN_FEATURE_NOT_CONFIGURED" | "PLUGIN_CONFIRMATION_REJECTED" | "PLUGIN_BRIDGE_CANCELLED" | "PLUGIN_BRIDGE_TIMEOUT" | "PLUGIN_BRIDGE_DISPOSED" | "PLUGIN_BRIDGE_HANDSHAKE_FAILED" | "PLUGIN_BRIDGE_HANDSHAKE_REQUIRED" | "PLUGIN_PLATFORM_REQUEST_FAILED" | "PLUGIN_STREAM_FAILED";
2596
2672
  /** @enum {string} */
2597
- ErrorCodesV6RustIpcErrorCode: "ARTIFACT_HANDLE_FAILED" | "HANDLE_GRANT_VALIDATION_FAILED" | "STORAGE_FILE_FAILED" | "STORAGE_KV_FAILED" | "STORAGE_SQLITE_FAILED" | "NETWORK_GRANT_FAILED" | "NETWORK_EXECUTE_FAILED" | "NETWORK_STREAM_STORE_UNAVAILABLE" | "NETWORK_STREAM_FAILED" | "NETWORK_STREAM_BACKPRESSURE" | "NETWORK_STREAM_INVALID" | "NETWORK_STREAM_NOT_FOUND" | "NETWORK_STREAM_CLOSED" | "WORKER_INVOCATION_INVALID" | "RUNTIME_CAPABILITY_REVOKED" | "RUNTIME_CONTROL_CHANNEL_STALE" | "RUNTIME_LEASE_INVALID" | "RUNTIME_LEASE_SIGNATURE_INVALID" | "PLUGIN_LEASE_REPLAYED" | "WASM_WORKER_INVALID" | "WASM_WORKER_FAILED" | "WASM_HOSTCALL_FAILED" | "RUNTIME_CAPACITY_EXCEEDED" | "RUNTIME_INVOCATION_CANCELED" | "PLUGIN_SESSION_REVOKED" | "SESSION_REVOKE_SEQUENCE_STALE" | "SESSION_REVOKE_DRAIN_TIMEOUT" | "UNSUPPORTED_FRAME";
2673
+ ErrorCodesV7RustIpcErrorCode: "ARTIFACT_HANDLE_FAILED" | "HANDLE_GRANT_VALIDATION_FAILED" | "STORAGE_FILE_FAILED" | "STORAGE_KV_FAILED" | "STORAGE_SQLITE_FAILED" | "NETWORK_GRANT_FAILED" | "NETWORK_EXECUTE_FAILED" | "NETWORK_STREAM_STORE_UNAVAILABLE" | "NETWORK_STREAM_FAILED" | "NETWORK_STREAM_BACKPRESSURE" | "NETWORK_STREAM_INVALID" | "NETWORK_STREAM_NOT_FOUND" | "NETWORK_STREAM_CLOSED" | "WORKER_INVOCATION_INVALID" | "RUNTIME_CAPABILITY_REVOKED" | "RUNTIME_CONTROL_CHANNEL_STALE" | "RUNTIME_LEASE_INVALID" | "RUNTIME_LEASE_SIGNATURE_INVALID" | "PLUGIN_LEASE_REPLAYED" | "WASM_WORKER_INVALID" | "WASM_WORKER_FAILED" | "WASM_HOSTCALL_FAILED" | "RUNTIME_CAPACITY_EXCEEDED" | "RUNTIME_INVOCATION_CANCELED" | "PLUGIN_SESSION_REVOKED" | "SESSION_REVOKE_SEQUENCE_STALE" | "SESSION_REVOKE_DRAIN_TIMEOUT" | "UNSUPPORTED_FRAME";
2598
2674
  /** @enum {string} */
2599
- ErrorCodesV6RuntimeProcessFailureCode: "RUNTIME_PROCESS_FAILED" | "RUNTIME_PROCESS_EXIT_UNEXPECTED" | "RUNTIME_PROCESS_EXIT_UNRECOGNIZED" | "RUNTIME_PROCESS_SIGNALLED" | "IPC_WRITER_CAPACITY_OVERFLOW" | "IPC_WRITER_CAPACITY_LIMIT_EXCEEDED" | "IPC_WRITER_START_FAILED" | "IPC_WRITER_CLOSED" | "IPC_WRITER_BATCH_SIZE_OVERFLOW" | "IPC_WRITER_WRITE_FAILED" | "IPC_WRITER_FLUSH_FAILED" | "IPC_WRITER_PANICKED";
2600
- ErrorCodesV6RuntimeProcessExitFailure: {
2675
+ ErrorCodesV7RuntimeProcessFailureCode: "RUNTIME_PROCESS_FAILED" | "RUNTIME_PROCESS_EXIT_UNEXPECTED" | "RUNTIME_PROCESS_EXIT_UNRECOGNIZED" | "RUNTIME_PROCESS_SIGNALLED" | "IPC_WRITER_CAPACITY_OVERFLOW" | "IPC_WRITER_CAPACITY_LIMIT_EXCEEDED" | "IPC_WRITER_START_FAILED" | "IPC_WRITER_CLOSED" | "IPC_WRITER_BATCH_SIZE_OVERFLOW" | "IPC_WRITER_WRITE_FAILED" | "IPC_WRITER_FLUSH_FAILED" | "IPC_WRITER_PANICKED";
2676
+ ErrorCodesV7RuntimeProcessExitFailure: {
2601
2677
  /** @constant */
2602
2678
  exit_code: 1;
2603
2679
  /** @constant */
@@ -2690,25 +2766,43 @@ export interface components {
2690
2766
  counts: components["schemas"]["SessionScopeV1RevokeCounts"];
2691
2767
  };
2692
2768
  SessionScopeV1PublicRevokeResult: components["schemas"]["SessionScopeV1CompleteRevokeResult"] | components["schemas"]["SessionScopeV1IncompleteRevokeResult"];
2693
- CompatibilityManifestV9: {
2769
+ CompatibilityManifestV11: {
2694
2770
  /** @constant */
2695
- schema_version: "redevplugin.compatibility.v9";
2771
+ schema_version: "redevplugin.compatibility.v11";
2696
2772
  package_set: components["schemas"]["PlatformPackageSetV1"];
2697
2773
  matrix: {
2698
2774
  /** @constant */
2699
- plugin_ui_protocol_version: "plugin-ui-v5";
2775
+ plugin_ui_protocol_version: "plugin-ui-v6";
2700
2776
  /** @constant */
2701
- plugin_host_protocol_version: "plugin-host-v6";
2777
+ supported_plugin_ui_protocol_versions: [
2778
+ "plugin-ui-v5",
2779
+ "plugin-ui-v6"
2780
+ ];
2781
+ /** @constant */
2782
+ plugin_ui_transport_mappings: [
2783
+ {
2784
+ plugin_ui_protocol_version: "plugin-ui-v5";
2785
+ opaque_surface_transport_schema_version: "opaque-surface-transport-v4";
2786
+ bridge_schema_version: "bridge-v5";
2787
+ },
2788
+ {
2789
+ plugin_ui_protocol_version: "plugin-ui-v6";
2790
+ opaque_surface_transport_schema_version: "opaque-surface-transport-v5";
2791
+ bridge_schema_version: "bridge-v6";
2792
+ }
2793
+ ];
2794
+ /** @constant */
2795
+ plugin_host_protocol_version: "plugin-host-v8";
2702
2796
  /** @constant */
2703
2797
  rust_ipc_version: "rust-ipc-v6";
2704
2798
  /** @constant */
2705
2799
  wasm_abi_version: "redevplugin-wasm-worker-v2";
2706
2800
  /** @constant */
2707
- manifest_schema_version: "manifest-v5";
2801
+ manifest_schema_version: "manifest-v6";
2708
2802
  /** @constant */
2709
2803
  package_signature_schema_version: "package-signature-v1";
2710
2804
  /** @constant */
2711
- release_metadata_schema_version: "release-metadata-v5";
2805
+ release_metadata_schema_version: "release-metadata-v6";
2712
2806
  /** @constant */
2713
2807
  release_root_delegation_schema_version: "release-root-delegation-v1";
2714
2808
  /** @constant */
@@ -2738,11 +2832,11 @@ export interface components {
2738
2832
  /** @constant */
2739
2833
  token_ticket_schema_version: "token-ticket-v4";
2740
2834
  /** @constant */
2741
- bridge_schema_version: "bridge-v5";
2835
+ bridge_schema_version: "bridge-v6";
2742
2836
  /** @constant */
2743
2837
  opaque_surface_document_schema_version: "opaque-surface-document-v3";
2744
2838
  /** @constant */
2745
- opaque_surface_transport_schema_version: "opaque-surface-transport-v4";
2839
+ opaque_surface_transport_schema_version: "opaque-surface-transport-v5";
2746
2840
  /** @constant */
2747
2841
  target_classifier_version: "target-classifier-v2";
2748
2842
  /** @constant */
@@ -2752,9 +2846,11 @@ export interface components {
2752
2846
  /** @constant */
2753
2847
  session_scope_schema_version: "session-scope-v1";
2754
2848
  /** @constant */
2755
- plugin_platform_openapi_version: "plugin-platform-v8";
2849
+ session_scope_maintenance_schema_version: "session-scope-maintenance-v1";
2756
2850
  /** @constant */
2757
- compatibility_schema_version: "compatibility-manifest-v9";
2851
+ plugin_platform_openapi_version: "plugin-platform-v9";
2852
+ /** @constant */
2853
+ compatibility_schema_version: "compatibility-manifest-v11";
2758
2854
  /** @constant */
2759
2855
  worker_invocation_schema_version: "worker-invocation-v3";
2760
2856
  /** @constant */
@@ -2770,7 +2866,7 @@ export interface components {
2770
2866
  /** @constant */
2771
2867
  host_capability_notices_schema_version: "host-capability-notices-v1";
2772
2868
  /** @constant */
2773
- error_codes_schema_version: "error-codes-v6";
2869
+ error_codes_schema_version: "error-codes-v7";
2774
2870
  /** @constant */
2775
2871
  performance_contract_version: "performance-contract-v4";
2776
2872
  /** @constant */
@@ -2801,9 +2897,9 @@ export interface components {
2801
2897
  quarantine_cleanup_schema_version: "quarantine-cleanup-v1";
2802
2898
  };
2803
2899
  contract_set_sha256: string;
2804
- contracts: components["schemas"]["CompatibilityManifestV9Contract"][];
2900
+ contracts: components["schemas"]["CompatibilityManifestV11Contract"][];
2805
2901
  };
2806
- CompatibilityManifestV9Contract: {
2902
+ CompatibilityManifestV11Contract: {
2807
2903
  id: string;
2808
2904
  path: string;
2809
2905
  version: string;
@@ -3103,6 +3199,193 @@ export interface components {
3103
3199
  HostCapabilityPinV1ArtifactRef: string;
3104
3200
  HostCapabilityPinV1Sha256: string;
3105
3201
  HostCapabilityPinV1DecimalEpoch: string;
3202
+ ManifestV6: {
3203
+ /** @constant */
3204
+ schema_version: "redevplugin.manifest.v6";
3205
+ publisher: {
3206
+ publisher_id: string;
3207
+ display_name?: string;
3208
+ };
3209
+ plugin: {
3210
+ plugin_id: string;
3211
+ display_name: string;
3212
+ version: components["schemas"]["ManifestV6Semver"];
3213
+ /** @constant */
3214
+ api_version: "plugin-v1";
3215
+ min_runtime_version: components["schemas"]["ManifestV6Semver"];
3216
+ /** @constant */
3217
+ ui_protocol_version: "plugin-ui-v6";
3218
+ };
3219
+ surfaces: {
3220
+ surface_id: string;
3221
+ /** @enum {unknown} */
3222
+ kind: "view" | "command" | "background";
3223
+ /** @enum {unknown} */
3224
+ intent?: "primary" | "secondary" | "utility";
3225
+ label: string;
3226
+ entry: string;
3227
+ icon?: string;
3228
+ default_size?: {
3229
+ width: number;
3230
+ height: number;
3231
+ };
3232
+ }[];
3233
+ capability_bindings?: {
3234
+ binding_id: string;
3235
+ contract: components["schemas"]["HostCapabilityPinV1"];
3236
+ }[];
3237
+ methods?: ({
3238
+ method: string;
3239
+ /** @enum {unknown} */
3240
+ effect?: "read" | "write" | "delete" | "execute" | "admin";
3241
+ /** @enum {unknown} */
3242
+ execution?: "sync" | "operation" | "subscription";
3243
+ dangerous?: boolean;
3244
+ preflight_only?: boolean;
3245
+ broker_access?: {
3246
+ storage?: {
3247
+ store_id: string;
3248
+ operations: ("read" | "write" | "delete" | "list" | "get" | "put" | "query" | "exec")[];
3249
+ }[];
3250
+ network?: ({
3251
+ connector_id: string;
3252
+ /** @enum {unknown} */
3253
+ transport: "http" | "websocket" | "tcp" | "udp";
3254
+ operations: ("http" | "http_stream" | "websocket_round_trip" | "tcp_round_trip" | "udp_round_trip")[];
3255
+ http_methods?: ("GET" | "HEAD" | "POST" | "PUT" | "PATCH" | "DELETE" | "OPTIONS")[];
3256
+ } & unknown)[];
3257
+ };
3258
+ route: {
3259
+ /** @enum {unknown} */
3260
+ kind: "capability" | "worker" | "core_action";
3261
+ binding_id?: string;
3262
+ target_method?: string;
3263
+ worker_id?: string;
3264
+ action_id?: string;
3265
+ } & (unknown & unknown & unknown);
3266
+ confirmation?: {
3267
+ /** @enum {unknown} */
3268
+ mode: "none" | "required" | "risk_based";
3269
+ preflight_method?: string | null;
3270
+ request_hash_fields?: string[];
3271
+ plan_hash_required?: boolean;
3272
+ };
3273
+ cancel_policy?: {
3274
+ cancelable: boolean;
3275
+ /** @enum {unknown} */
3276
+ disable_behavior?: "cancel" | "orphan" | "wait";
3277
+ /** @enum {unknown} */
3278
+ uninstall_behavior?: "cancel_then_block_delete" | "force_cleanup_allowed";
3279
+ ack_timeout_ms?: number;
3280
+ } & (unknown & unknown);
3281
+ request_schema?: components["schemas"]["ManifestV6MethodSchema"] & {
3282
+ /** @constant */
3283
+ type: "object";
3284
+ /** @constant */
3285
+ additionalProperties: false;
3286
+ };
3287
+ response_schema?: components["schemas"]["ManifestV6MethodSchema"] & {
3288
+ /** @constant */
3289
+ type: "object";
3290
+ /** @constant */
3291
+ additionalProperties: false;
3292
+ };
3293
+ } & (unknown & unknown & unknown & unknown))[];
3294
+ workers?: {
3295
+ worker_id: string;
3296
+ artifact: string;
3297
+ /** @constant */
3298
+ abi: "redevplugin-wasm-worker-v2";
3299
+ /** @constant */
3300
+ mode: "job";
3301
+ /** @enum {unknown} */
3302
+ scope: "user" | "environment";
3303
+ memory_limit_bytes: number;
3304
+ idle_timeout_ms?: number;
3305
+ }[];
3306
+ storage?: {
3307
+ stores?: {
3308
+ store_id: string;
3309
+ /** @enum {unknown} */
3310
+ kind: "kv" | "files" | "sqlite";
3311
+ /** @enum {unknown} */
3312
+ scope: "user" | "environment";
3313
+ quota_bytes: number;
3314
+ quota_files?: number;
3315
+ schema_version: number;
3316
+ }[];
3317
+ };
3318
+ network_access?: {
3319
+ connectors?: {
3320
+ connector_id: string;
3321
+ /** @enum {unknown} */
3322
+ transport: "http" | "websocket" | "tcp" | "udp";
3323
+ /** @enum {unknown} */
3324
+ scope: "user" | "environment";
3325
+ destinations: string[];
3326
+ auth?: Record<string, never>;
3327
+ tls?: Record<string, never>;
3328
+ }[];
3329
+ };
3330
+ settings?: {
3331
+ schema_version: number;
3332
+ fields?: {
3333
+ key: string;
3334
+ type: string;
3335
+ /** @enum {unknown} */
3336
+ scope: "user" | "environment";
3337
+ label: string;
3338
+ default?: unknown;
3339
+ secret_ref?: string;
3340
+ options?: string[];
3341
+ validation?: Record<string, never>;
3342
+ }[];
3343
+ };
3344
+ intents?: {
3345
+ intent_id: string;
3346
+ method: string;
3347
+ payload_schema?: Record<string, never>;
3348
+ }[];
3349
+ };
3350
+ ManifestV6Semver: string;
3351
+ ManifestV6MethodSchema: false | (({
3352
+ description?: string;
3353
+ readOnly?: boolean;
3354
+ writeOnly?: boolean;
3355
+ $ref?: string;
3356
+ type?: ("null" | "boolean" | "object" | "array" | "number" | "integer" | "string") | ("null" | "boolean" | "object" | "array" | "number" | "integer" | "string")[];
3357
+ properties?: {
3358
+ [key: string]: components["schemas"]["ManifestV6MethodSchema"];
3359
+ };
3360
+ patternProperties?: {
3361
+ [key: string]: components["schemas"]["ManifestV6MethodSchema"];
3362
+ };
3363
+ required?: string[];
3364
+ /** @constant */
3365
+ additionalProperties?: false;
3366
+ items?: components["schemas"]["ManifestV6MethodSchema"];
3367
+ allOf?: components["schemas"]["ManifestV6MethodSchema"][];
3368
+ anyOf?: components["schemas"]["ManifestV6MethodSchema"][];
3369
+ oneOf?: components["schemas"]["ManifestV6MethodSchema"][];
3370
+ enum?: unknown[];
3371
+ const?: unknown;
3372
+ default?: unknown;
3373
+ examples?: unknown[];
3374
+ minimum?: number;
3375
+ maximum?: number;
3376
+ exclusiveMinimum?: number;
3377
+ exclusiveMaximum?: number;
3378
+ multipleOf?: number;
3379
+ minLength?: number;
3380
+ maxLength?: number;
3381
+ pattern?: string;
3382
+ format?: string;
3383
+ minItems?: number;
3384
+ maxItems?: number;
3385
+ uniqueItems?: boolean;
3386
+ minProperties?: number;
3387
+ maxProperties?: number;
3388
+ } & (unknown & unknown)) | unknown | unknown | unknown | unknown | unknown | unknown | unknown | unknown | unknown | unknown | unknown | unknown | unknown);
3106
3389
  OpaqueSurfaceDocumentV3: {
3107
3390
  /** @constant */
3108
3391
  schema_version: "redevplugin.opaque_surface_document.v3";
@@ -3222,6 +3505,15 @@ export interface components {
3222
3505
  "application/json": components["schemas"]["SurfaceStreamAcknowledgementSuccessResponse"];
3223
3506
  };
3224
3507
  };
3508
+ /** @description Closed sandbox-safe operation status projection. */
3509
+ PluginOperationSnapshotResponse: {
3510
+ headers: {
3511
+ [name: string]: unknown;
3512
+ };
3513
+ content: {
3514
+ "application/json": components["schemas"]["PluginOperationSnapshotSuccessResponse"];
3515
+ };
3516
+ };
3225
3517
  /** @description Surface revocation response. */
3226
3518
  SurfaceDisposeResponse: {
3227
3519
  headers: {
@@ -3665,6 +3957,11 @@ export interface components {
3665
3957
  "application/json": components["schemas"]["CancelSurfaceOperationRequest"];
3666
3958
  };
3667
3959
  };
3960
+ GetSurfaceOperationRequest: {
3961
+ content: {
3962
+ "application/json": components["schemas"]["GetSurfaceOperationRequest"];
3963
+ };
3964
+ };
3668
3965
  RejectSurfaceConfirmationRequest: {
3669
3966
  content: {
3670
3967
  "application/json": components["schemas"]["RejectSurfaceConfirmationRequest"];
@@ -4118,6 +4415,21 @@ export interface operations {
4118
4415
  default: components["responses"]["MutationPlatformErrorResponse"];
4119
4416
  };
4120
4417
  };
4418
+ getSurfacePluginOperationSnapshot: {
4419
+ parameters: {
4420
+ query?: never;
4421
+ header?: never;
4422
+ path: {
4423
+ surface_instance_id: components["parameters"]["SurfaceInstanceID"];
4424
+ };
4425
+ cookie?: never;
4426
+ };
4427
+ requestBody: components["requestBodies"]["GetSurfaceOperationRequest"];
4428
+ responses: {
4429
+ 200: components["responses"]["PluginOperationSnapshotResponse"];
4430
+ default: components["responses"]["PlatformErrorResponse"];
4431
+ };
4432
+ };
4121
4433
  rejectSurfacePluginConfirmation: {
4122
4434
  parameters: {
4123
4435
  query?: never;
package/dist/platform.js CHANGED
@@ -7,6 +7,7 @@ function toPluginSurfaceHostBootstrap(value) {
7
7
  pluginId: value.plugin_id,
8
8
  pluginInstanceId: value.plugin_instance_id,
9
9
  pluginVersion: value.plugin_version,
10
+ uiProtocolVersion: value.ui_protocol_version,
10
11
  surfaceId: value.surface_id,
11
12
  surfaceInstanceId: value.surface_instance_id,
12
13
  activeFingerprint: value.active_fingerprint,
package/dist/plugin.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { PluginBridgeClient } from "./surface.js";
2
2
  export { PluginBridgeError } from "./errors.js";
3
3
  export { callCapabilityOperation, callCapabilityStream, callCapabilitySync, isCapabilityBusinessError, } from "./capability-client.js";
4
- export type { BridgeLifecycleEvent, MessagePortLike, PluginBridgeClientOptions, PluginBridgeRequestOptions, PluginCanvasAccessibilityState, PluginCanvasInputEvent, PluginCanvasKeyEvent, PluginCanvasPointerEvent, PluginCanvasResizeEvent, PluginCanvasSurface, PluginJSONObject, PluginJSONValue, PluginMethodResult, PluginStreamTerminalStatus, PluginUIActionEvent, PluginUIAttributeValue, PluginUIElementVNode, PluginUIPatchOperation, PluginUIVNode, } from "./surface.js";
5
- export type { PluginCapabilitySchema, PluginCapabilityEffect, PluginCapabilityOperationContract, PluginCapabilityStreamContract, PluginCapabilitySyncContract, PluginCapabilityStreamEvent, PluginCapabilityStreamReadResult, PluginOperation, PluginStream, } from "./capability-client.js";
4
+ export type { BridgeLifecycleEvent, MessagePortLike, PluginBridgeClientOptions, PluginBridgeRequestOptions, PluginCanvasAccessibilityState, PluginCanvasInputEvent, PluginCanvasKeyEvent, PluginCanvasPointerEvent, PluginCanvasResizeEvent, PluginCanvasSurface, PluginJSONObject, PluginJSONValue, PluginMethodResult, PluginExecutionFailureCode, PluginOperationSnapshot, PluginStreamTerminalStatus, PluginUIActionEvent, PluginUIAttributeValue, PluginUIElementVNode, PluginUIPatchOperation, PluginUIVNode, } from "./surface.js";
5
+ export type { PluginCapabilitySchema, PluginCapabilityEffect, PluginCapabilityOperationContract, PluginCapabilityStreamContract, PluginCapabilitySyncContract, PluginCapabilityStreamEvent, PluginCapabilityStreamReadResult, PluginOperation, PluginOperationTerminalStatus, PluginOperationWaitOptions, PluginStream, } from "./capability-client.js";