Skip to content

capabilities

capabilities is implemented by handleCapabilities in src/api/handlers/capabilities.osl.

Stores the optional protocol features understood by this connection. This affects focused channel refresh behavior.

Gate Requirement
Authentication Required by the central API gate.
Central permission None. Resource, channel, ownership, or hierarchy checks may still apply in the handler/helpers.
Broadcast Not marked global directly by this adapter. A helper may emit focused or server-wide updates.

Every request includes cmd: "capabilities" and may include an opaque listener correlation value.

Field Validation / meaning
capabilities array accepted as the preferred field; non-string entries are discarded
val legacy field; when non-null it takes precedence over capabilities

This adapter delegates validation to a shared helper. The field table lists values read directly by the handler; follow the collaborators below for the shared domain schema.

  1. handleCmd enforces authentication.
  2. dispatchCmd routes capabilities to handleCapabilities.
  3. The adapter validates and normalizes input, then calls its domain collaborators.
  4. Durable mutations complete before the response or event is returned.
  5. onMessage adds the request listener to direct responses and performs any marked broadcast.

Direct collaborators visible in the handler: typeof

None. This command stores connection state and intentionally returns an empty response array.

Validation and domain failures use:

{
"cmd": "error",
"val": "<message>",
"src": "capabilities",
"listener": "<copied from request>"
}