mirror of
https://github.com/stablyai/orca.git
synced 2026-10-31 17:17:38 +00:00
* refactor(jira): split issue workspace hooks and IPC param checks - Move IPC argument normalization into jira-ipc-params.ts so the jira:* handlers and its tests share one validator. Issue edits are now also checked for labelOperations, which the host reads, so malformed label edits are rejected before they reach Jira. - Move issue hydration and remote detail state out of JiraIssueWorkspace.tsx into use-jira-issue-workspace-data.ts, and comment submission into use-jira-issue-comment-submission.ts, so the component stays under the file-size limit. - Split the reopened-issue and rollback optimistic-edit tests into their own files to keep each test file focused. - Move runtime capability constants into runtime-capability-constants.ts and re-export them from protocol-version.ts, so the values keep the same names and exports for existing importers. * refactor(protocol): use named imports for runtime capability constants Import the runtime capability constants by name instead of destructuring them from a namespace object. The bindings and values are unchanged. Named imports make the dependency explicit to readers and tooling, and the protocol version comment now sits next to the constants it describes.
277 lines
14 KiB
TypeScript
277 lines
14 KiB
TypeScript
import { JIRA_AGENT_ACCESS_RUNTIME_CAPABILITY } from './jira-agent-capability'
|
|
import { JIRA_STATUS_FILTER_RUNTIME_CAPABILITY } from './jira-quick-filters'
|
|
import { JIRA_SAVED_FILTER_RUNTIME_CAPABILITY } from './jira-saved-filter-capability'
|
|
import * as jiraDetailCapabilities from './jira-detail-capabilities'
|
|
export * from './jira-detail-capabilities'
|
|
import { WORKSPACE_ATTACHMENT_RUNTIME_CAPABILITIES } from './workspace-attachment-capabilities'
|
|
import { SSH_TARGET_MANAGEMENT_RUNTIME_CAPABILITY } from './ssh-target-management'
|
|
import {
|
|
AUTOMATION_RUNTIME_CAPABILITIES,
|
|
AUTOMATION_RUNTIME_CLIENT_CAPABILITIES
|
|
} from './automation-runtime-capabilities'
|
|
export {
|
|
AUTOMATION_LIST_HOST_SCOPE_RUNTIME_CAPABILITY,
|
|
AUTOMATION_LIST_HOST_SCOPE_UPDATE_REQUIRED_MESSAGE,
|
|
AUTOMATION_OWNER_FENCING_RUNTIME_CAPABILITY,
|
|
AUTOMATION_OWNER_FENCING_UPDATE_REQUIRED_MESSAGE,
|
|
AUTOMATION_CREATE_IDEMPOTENCY_RUNTIME_CAPABILITY,
|
|
AUTOMATION_EXTRA_AGENT_ARGS_RUNTIME_CAPABILITY
|
|
} from './automation-runtime-capabilities'
|
|
import { STRUCTURED_AGENT_SESSION_SURFACE_RUNTIME_CAPABILITIES } from './structured-agent-session-surface-capabilities'
|
|
export {
|
|
STRUCTURED_AGENT_SESSION_HOLD_RUNTIME_CAPABILITY,
|
|
STRUCTURED_AGENT_SESSION_REVEAL_RUNTIME_CAPABILITY,
|
|
STRUCTURED_AGENT_SESSION_REGISTERED_AGENTS_RUNTIME_CAPABILITY,
|
|
PI_STRUCTURED_DIALOGS_RUNTIME_CAPABILITY,
|
|
STRUCTURED_AGENT_SESSION_RESUME_HISTORY_RUNTIME_CAPABILITY
|
|
} from './structured-agent-session-surface-capabilities'
|
|
import { AGENT_SESSION_ATTENTION_RUNTIME_CAPABILITIES } from './agent-session-attention-capabilities'
|
|
export {
|
|
AGENT_SESSION_STATUS_FEED_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_TURN_COMPLETION_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_ATTENTION_ACK_RUNTIME_CAPABILITY
|
|
} from './agent-session-attention-capabilities'
|
|
import { ORCHESTRATION_RUNTIME_CAPABILITIES } from './orchestration-runtime-capabilities'
|
|
export {
|
|
ORCHESTRATION_FEDERATION_RUNTIME_CAPABILITY,
|
|
ORCHESTRATION_FEDERATION_CONTROL_MAIL_RUNTIME_CAPABILITY,
|
|
ORCHESTRATION_FEDERATION_LIFECYCLE_SETTLEMENT_RUNTIME_CAPABILITY,
|
|
ORCHESTRATION_WORKER_STOP_VERDICT_RUNTIME_CAPABILITY,
|
|
ORCHESTRATION_WORKER_LAUNCH_PREFERENCES_RUNTIME_CAPABILITY,
|
|
ORCHESTRATION_FEDERATION_STRUCTURED_READ_RUNTIME_CAPABILITY,
|
|
ORCHESTRATION_FEDERATION_FLEET_SNAPSHOT_RUNTIME_CAPABILITY,
|
|
ORCHESTRATION_FEDERATION_RELEASE_ARCHIVE_RUNTIME_CAPABILITY,
|
|
ORCHESTRATION_FEDERATION_CONTROL_MAIL_PROTOCOL_VERSION,
|
|
ORCHESTRATION_FEDERATION_LIFECYCLE_SETTLEMENT_PROTOCOL_VERSION,
|
|
ORCHESTRATION_CONTRACT_VERSION,
|
|
ORCHESTRATION_CONTRACT_RUNTIME_CAPABILITY
|
|
} from './orchestration-runtime-capabilities'
|
|
import { AGENT_SESSION_RESUME_RUNTIME_CAPABILITIES } from './agent-session-resume-runtime-capabilities'
|
|
import { QODER_OWNED_TERMINAL_CREATE_CAPABILITY } from './qoder-terminal-create-capability'
|
|
import { SESSION_TABS_RUNTIME_CAPABILITIES } from './session-tabs-runtime-capabilities'
|
|
export { SESSION_TABS_SPLIT_GROUP_PLACEMENT_RUNTIME_CAPABILITY } from './session-tabs-runtime-capabilities'
|
|
import { AGENT_SESSION_CONTINUE_INTERRUPTED_RUNTIME_CAPABILITY } from './agent-session-continue-interrupted-capability'
|
|
import { ORCAD_RUNTIME_CAPABILITIES } from './orcad-runtime-capabilities'
|
|
import { DEVICE_KEY_RUNTIME_CAPABILITIES } from './device-key-capability'
|
|
// Why a star: every resume capability is part of the runtime contract this module re-exports.
|
|
export * from './agent-session-resume-runtime-capabilities'
|
|
import { AGENT_SESSION_BACKGROUND_TASK_CHILD_VIEWS_CAPABILITY } from './agent-session-background-task-child-views-capability'
|
|
import { AGENT_SESSION_STOP_RUNTIME_CAPABILITIES } from './agent-session-stop-capabilities'
|
|
import { AGENT_SESSION_CREATE_RUNTIME_CAPABILITIES } from './agent-session-create-capabilities'
|
|
import { REMOTE_SERVER_UPDATE_CAPABILITY } from './remote-server-update'
|
|
import { MOBILE_RELAY_RUNTIME_CAPABILITIES } from './mobile-desktop-relay-contract'
|
|
import { SKILL_RUNTIME_CAPABILITIES } from './skill-install-capability'
|
|
import { ACCOUNT_RUNTIME_CAPABILITIES } from './account-runtime-capabilities'
|
|
import * as agentLaunchCapabilities from './agent-launch-runtime-capability'
|
|
import {
|
|
AGENT_SESSION_ACCEPTED_SEND_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_ATTACHMENTS_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_BACKGROUND_TASK_ROW_STOP_CAPABILITY,
|
|
AGENT_SESSION_BACKGROUND_TASK_STOP_CAPABILITY,
|
|
AGENT_SESSION_BOUNDARY_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_CONVERSATION_OUTLINE_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_HOST_AUTHORITY_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_KEYBOARD_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_OMP_RESUME_PATH_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_PENDING_SEND_RESULT_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_QUEUED_COMMANDS_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_QUEUED_MESSAGE_EDIT_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_QUESTION_ANSWERS_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_REWIND_RECOVERY_CAPABILITY,
|
|
AGENT_SESSION_REWIND_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_SEND_ANSWERS_PROOF_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_TURN_ITEM_CAPABILITY,
|
|
AI_VAULT_RUNTIME_CAPABILITY,
|
|
AI_VAULT_SESSION_TITLES_RUNTIME_CAPABILITY,
|
|
ANTIGRAVITY_CONFIGURED_MODEL_RUNTIME_CAPABILITY,
|
|
BROWSER_CLIENT_AUTOMATION_RUNTIME_CAPABILITY,
|
|
BROWSER_CLIENT_FILE_CHANNEL_RUNTIME_CAPABILITY,
|
|
BROWSER_CLIENT_HOST_RUNTIME_CAPABILITY,
|
|
BROWSER_CLIENT_PAGE_METADATA_RUNTIME_CAPABILITY,
|
|
BROWSER_NETWORK_EXECUTION_HOSTS_RUNTIME_CAPABILITY,
|
|
BROWSER_NETWORK_TUNNEL_RUNTIME_CAPABILITY,
|
|
BROWSER_SCREENCAST_RUNTIME_CAPABILITY,
|
|
BROWSER_TAB_CREATE_KNOWN_ID_RUNTIME_CAPABILITY,
|
|
FILE_MUTATION_OWNERSHIP_RUNTIME_CAPABILITY,
|
|
FOLDER_WORKSPACE_PATH_STATUS_RUNTIME_CAPABILITY,
|
|
GITHUB_MARK_PR_READY_RUNTIME_CAPABILITY,
|
|
GITLAB_READY_FOR_REVIEW_RUNTIME_CAPABILITY,
|
|
LINEAR_ISSUE_ATTRIBUTE_FILTER_RUNTIME_CAPABILITY,
|
|
NOTIFICATIONS_REMOTE_PUSH_RUNTIME_CAPABILITY,
|
|
PREFLIGHT_OTHER_RUNTIME_REFUSAL_RUNTIME_CAPABILITY,
|
|
PREFLIGHT_WORKSPACE_SCOPED_RUNTIME_CAPABILITY,
|
|
PROJECT_HOST_SETUP_RUNTIME_CAPABILITY,
|
|
REMOTE_RUNTIME_SHARED_CONTROL_CAPABILITY,
|
|
REPO_SEARCH_QUALIFIED_REFS_RUNTIME_CAPABILITY,
|
|
RUNTIME_AUTOMATIC_WORK_RUNTIME_CAPABILITY,
|
|
RUNTIME_SOURCE_FENCE_RUNTIME_CAPABILITY,
|
|
SESSION_TAB_CLOSE_INTENT_RUNTIME_CAPABILITY,
|
|
SESSION_TABS_AUTHORITATIVE_INVENTORY_RUNTIME_CAPABILITY,
|
|
STRUCTURED_AGENT_SESSION_CLIENT_LAUNCH_MODE_CAPABILITY,
|
|
STRUCTURED_AGENT_SESSION_RUNTIME_CAPABILITY,
|
|
TASK_SOURCE_CONTEXT_RUNTIME_CAPABILITY,
|
|
TERMINAL_CREATE_IDEMPOTENCY_RUNTIME_CAPABILITY,
|
|
TERMINAL_CREATE_SHELL_SELECTION_RUNTIME_CAPABILITY,
|
|
TERMINAL_PAIRED_PARKING_RUNTIME_CAPABILITY,
|
|
TERMINAL_PROMPT_DELIVERY_RUNTIME_CAPABILITY,
|
|
TERMINAL_QUERY_REPLY_INPUT_RUNTIME_CAPABILITY,
|
|
TERMINAL_QUICK_COMMANDS_RUNTIME_CAPABILITY,
|
|
TERMINAL_SPAWN_INTENT_RUNTIME_CAPABILITY,
|
|
WORKSPACE_PORTS_HOST_SCOPED_RUNTIME_CAPABILITY,
|
|
WORKSPACE_RUN_CONTEXT_RUNTIME_CAPABILITY,
|
|
WORKTREE_ARCHIVE_FAILURE_BLOCKING_RUNTIME_CAPABILITY,
|
|
WORKTREE_CREATE_IDEMPOTENCY_RUNTIME_CAPABILITY,
|
|
WORKTREE_GITHUB_PR_SUPPRESSION_RUNTIME_CAPABILITY,
|
|
WORKTREE_LINKED_WORK_ITEM_CONTEXT_RUNTIME_CAPABILITY,
|
|
WORKTREE_PROVISIONED_ROOT_RUNTIME_CAPABILITY,
|
|
WORKTREE_VISIBILITY_DEFAULTS_RUNTIME_CAPABILITY,
|
|
WORKTREE_VISIBILITY_SOURCE_DEFAULTS_RUNTIME_CAPABILITY
|
|
} from './runtime-capability-constants'
|
|
|
|
// Why: declares the Orca runtime RPC compatibility contract. Desktop,
|
|
// headless server, CLI, and mobile builds may drift in app version, but
|
|
// they must agree on this protocol range before runtime RPCs are allowed.
|
|
//
|
|
// Bump RUNTIME_PROTOCOL_VERSION when:
|
|
// - You remove an RPC method or required parameter that clients use.
|
|
// - You change the meaning (units, nullability) of an existing field
|
|
// clients read.
|
|
// - You change encrypted framing, terminal stream framing, or auth.
|
|
// Do NOT bump for:
|
|
// - Adding new RPC methods.
|
|
// - Adding new optional fields on existing methods.
|
|
// - Adding new ignorable event types.
|
|
//
|
|
// Bump MIN_COMPATIBLE_RUNTIME_CLIENT_VERSION when a runtime server must
|
|
// refuse older clients. Bump MIN_COMPATIBLE_RUNTIME_SERVER_VERSION when
|
|
// this client build requires a newer server. Exact app-version equality is
|
|
// never required; these numbers define the supported compatibility window.
|
|
|
|
export const RUNTIME_PROTOCOL_VERSION = 3
|
|
export const MIN_COMPATIBLE_RUNTIME_CLIENT_VERSION = 2
|
|
export const MIN_COMPATIBLE_RUNTIME_SERVER_VERSION = 2
|
|
|
|
export * from './runtime-capability-constants'
|
|
export { REMOTE_SERVER_UPDATE_CAPABILITY } from './remote-server-update'
|
|
export * from './agent-session-stop-capabilities'
|
|
|
|
// Native clients include the CLI, which cannot place Electron browser pages.
|
|
export const NATIVE_REMOTE_RUNTIME_CLIENT_CAPABILITIES = [
|
|
SESSION_TAB_CLOSE_INTENT_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_BOUNDARY_RUNTIME_CAPABILITY,
|
|
WORKTREE_VISIBILITY_DEFAULTS_RUNTIME_CAPABILITY,
|
|
WORKTREE_VISIBILITY_SOURCE_DEFAULTS_RUNTIME_CAPABILITY,
|
|
WORKTREE_GITHUB_PR_SUPPRESSION_RUNTIME_CAPABILITY,
|
|
REPO_SEARCH_QUALIFIED_REFS_RUNTIME_CAPABILITY,
|
|
...AUTOMATION_RUNTIME_CLIENT_CAPABILITIES,
|
|
agentLaunchCapabilities.AGENT_LAUNCH_RUNTIME_CAPABILITY
|
|
] as const
|
|
|
|
export const RUNTIME_CAPABILITIES = [
|
|
jiraDetailCapabilities.JIRA_TRANSITION_FIELDS_RUNTIME_CAPABILITY,
|
|
JIRA_AGENT_ACCESS_RUNTIME_CAPABILITY,
|
|
jiraDetailCapabilities.JIRA_CURRENT_SPRINT_RUNTIME_CAPABILITY,
|
|
...ORCAD_RUNTIME_CAPABILITIES,
|
|
...DEVICE_KEY_RUNTIME_CAPABILITIES,
|
|
QODER_OWNED_TERMINAL_CREATE_CAPABILITY,
|
|
...AGENT_SESSION_STOP_RUNTIME_CAPABILITIES,
|
|
...AGENT_SESSION_CREATE_RUNTIME_CAPABILITIES,
|
|
ANTIGRAVITY_CONFIGURED_MODEL_RUNTIME_CAPABILITY,
|
|
'files.pathsExist',
|
|
'files.resolve-terminal-path.cross-workspace.v1',
|
|
'runtime.status.compat.v1',
|
|
'runtime.environments.v1',
|
|
REMOTE_RUNTIME_SHARED_CONTROL_CAPABILITY,
|
|
...ORCHESTRATION_RUNTIME_CAPABILITIES,
|
|
BROWSER_SCREENCAST_RUNTIME_CAPABILITY,
|
|
BROWSER_TAB_CREATE_KNOWN_ID_RUNTIME_CAPABILITY,
|
|
BROWSER_CLIENT_HOST_RUNTIME_CAPABILITY,
|
|
BROWSER_CLIENT_PAGE_METADATA_RUNTIME_CAPABILITY,
|
|
BROWSER_CLIENT_AUTOMATION_RUNTIME_CAPABILITY,
|
|
BROWSER_CLIENT_FILE_CHANNEL_RUNTIME_CAPABILITY,
|
|
BROWSER_NETWORK_TUNNEL_RUNTIME_CAPABILITY,
|
|
BROWSER_NETWORK_EXECUTION_HOSTS_RUNTIME_CAPABILITY,
|
|
'terminal.binary-stream.v1',
|
|
'terminal.multiplex.v1',
|
|
'workspace-ports.v1',
|
|
'mobile.tasks.v1',
|
|
PROJECT_HOST_SETUP_RUNTIME_CAPABILITY,
|
|
TASK_SOURCE_CONTEXT_RUNTIME_CAPABILITY,
|
|
WORKSPACE_RUN_CONTEXT_RUNTIME_CAPABILITY,
|
|
WORKTREE_PROVISIONED_ROOT_RUNTIME_CAPABILITY,
|
|
WORKTREE_LINKED_WORK_ITEM_CONTEXT_RUNTIME_CAPABILITY,
|
|
...WORKSPACE_ATTACHMENT_RUNTIME_CAPABILITIES,
|
|
WORKTREE_GITHUB_PR_SUPPRESSION_RUNTIME_CAPABILITY,
|
|
REPO_SEARCH_QUALIFIED_REFS_RUNTIME_CAPABILITY,
|
|
FOLDER_WORKSPACE_PATH_STATUS_RUNTIME_CAPABILITY,
|
|
LINEAR_ISSUE_ATTRIBUTE_FILTER_RUNTIME_CAPABILITY,
|
|
...jiraDetailCapabilities.JIRA_DETAIL_RUNTIME_CAPABILITIES,
|
|
JIRA_SAVED_FILTER_RUNTIME_CAPABILITY,
|
|
JIRA_STATUS_FILTER_RUNTIME_CAPABILITY,
|
|
AI_VAULT_RUNTIME_CAPABILITY,
|
|
AI_VAULT_SESSION_TITLES_RUNTIME_CAPABILITY,
|
|
TERMINAL_QUERY_REPLY_INPUT_RUNTIME_CAPABILITY,
|
|
TERMINAL_PROMPT_DELIVERY_RUNTIME_CAPABILITY,
|
|
TERMINAL_PAIRED_PARKING_RUNTIME_CAPABILITY,
|
|
TERMINAL_SPAWN_INTENT_RUNTIME_CAPABILITY,
|
|
RUNTIME_AUTOMATIC_WORK_RUNTIME_CAPABILITY,
|
|
TERMINAL_QUICK_COMMANDS_RUNTIME_CAPABILITY,
|
|
WORKTREE_CREATE_IDEMPOTENCY_RUNTIME_CAPABILITY,
|
|
WORKTREE_ARCHIVE_FAILURE_BLOCKING_RUNTIME_CAPABILITY,
|
|
TERMINAL_CREATE_IDEMPOTENCY_RUNTIME_CAPABILITY,
|
|
TERMINAL_CREATE_SHELL_SELECTION_RUNTIME_CAPABILITY,
|
|
SESSION_TAB_CLOSE_INTENT_RUNTIME_CAPABILITY,
|
|
SESSION_TABS_AUTHORITATIVE_INVENTORY_RUNTIME_CAPABILITY,
|
|
...SESSION_TABS_RUNTIME_CAPABILITIES,
|
|
AGENT_SESSION_BOUNDARY_RUNTIME_CAPABILITY,
|
|
REMOTE_SERVER_UPDATE_CAPABILITY,
|
|
AGENT_SESSION_HOST_AUTHORITY_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_OMP_RESUME_PATH_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_KEYBOARD_RUNTIME_CAPABILITY,
|
|
STRUCTURED_AGENT_SESSION_RUNTIME_CAPABILITY,
|
|
STRUCTURED_AGENT_SESSION_CLIENT_LAUNCH_MODE_CAPABILITY,
|
|
AGENT_SESSION_PENDING_SEND_RESULT_RUNTIME_CAPABILITY,
|
|
// The host side: it accepts a send before any agent has it, and a Stop with no writer before a
|
|
// turn starts, so a client may gate on either.
|
|
AGENT_SESSION_ACCEPTED_SEND_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_SEND_ANSWERS_PROOF_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_QUEUED_COMMANDS_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_QUEUED_MESSAGE_EDIT_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_CONTINUE_INTERRUPTED_RUNTIME_CAPABILITY,
|
|
...STRUCTURED_AGENT_SESSION_SURFACE_RUNTIME_CAPABILITIES,
|
|
...AGENT_SESSION_ATTENTION_RUNTIME_CAPABILITIES,
|
|
AGENT_SESSION_REWIND_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_REWIND_RECOVERY_CAPABILITY,
|
|
AGENT_SESSION_CONVERSATION_OUTLINE_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_BACKGROUND_TASK_STOP_CAPABILITY,
|
|
AGENT_SESSION_QUESTION_ANSWERS_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_ATTACHMENTS_RUNTIME_CAPABILITY,
|
|
AGENT_SESSION_TURN_ITEM_CAPABILITY,
|
|
AGENT_SESSION_BACKGROUND_TASK_ROW_STOP_CAPABILITY,
|
|
AGENT_SESSION_BACKGROUND_TASK_CHILD_VIEWS_CAPABILITY,
|
|
...AGENT_SESSION_RESUME_RUNTIME_CAPABILITIES,
|
|
FILE_MUTATION_OWNERSHIP_RUNTIME_CAPABILITY,
|
|
GITHUB_MARK_PR_READY_RUNTIME_CAPABILITY,
|
|
GITLAB_READY_FOR_REVIEW_RUNTIME_CAPABILITY,
|
|
WORKTREE_VISIBILITY_DEFAULTS_RUNTIME_CAPABILITY,
|
|
WORKTREE_VISIBILITY_SOURCE_DEFAULTS_RUNTIME_CAPABILITY,
|
|
...ACCOUNT_RUNTIME_CAPABILITIES,
|
|
...SKILL_RUNTIME_CAPABILITIES,
|
|
...AUTOMATION_RUNTIME_CAPABILITIES,
|
|
NOTIFICATIONS_REMOTE_PUSH_RUNTIME_CAPABILITY,
|
|
...MOBILE_RELAY_RUNTIME_CAPABILITIES,
|
|
PREFLIGHT_WORKSPACE_SCOPED_RUNTIME_CAPABILITY,
|
|
PREFLIGHT_OTHER_RUNTIME_REFUSAL_RUNTIME_CAPABILITY,
|
|
WORKSPACE_PORTS_HOST_SCOPED_RUNTIME_CAPABILITY,
|
|
RUNTIME_SOURCE_FENCE_RUNTIME_CAPABILITY,
|
|
SSH_TARGET_MANAGEMENT_RUNTIME_CAPABILITY,
|
|
...agentLaunchCapabilities.AGENT_LAUNCH_RUNTIME_CAPABILITIES
|
|
] as const
|
|
|
|
export type RuntimeCapability = (typeof RUNTIME_CAPABILITIES)[number] | (string & {})
|
|
|
|
// COMPAT(mobileProtocolAliases): added 2026-05-15 for mobile builds that
|
|
// still read desktop/mobile names; remove once mobile reads runtime names.
|
|
export const DESKTOP_PROTOCOL_VERSION = RUNTIME_PROTOCOL_VERSION
|
|
export const MIN_COMPATIBLE_MOBILE_VERSION = MIN_COMPATIBLE_RUNTIME_CLIENT_VERSION
|