deploy.list
Every deployment the layer declares, typed: the application, the package and binary shipped, the address the process listens on, the routes a platform polls, the resources, the machine count, the region, the build inputs, the measured budgets and the provider's own facts. An object of the kind this executable cannot read is reported with the reason rather than skipped.
Every deployment the layer declares, typed: the application, the package and binary shipped, the address the process listens on, the routes a platform polls, the resources, the machine count, the region, the build inputs, the measured budgets and the provider's own facts. An object of the kind this executable cannot read is reported with the reason rather than skipped.
- query
- behaviorally_verified
- module deploy
- #deployment
Exposure
Where this one definition is reachable. Absence is explicit: a surface not listed does not carry it.
| surface | as |
|---|---|
| MCP | tool majordomus_deployments resource majordomus://deployments |
| HTTP | GET /api/v1/deployments operationId deploy.list |
| command line | — |
Schemas
The canonical input and output, from the Rust types; the MCP tool schema and the OpenAPI parameters and responses are derived from these.
input · Empty
No input.
No properties: the capability takes no input.
JSON Schema
{
"additionalProperties": false,
"description": "No input.",
"title": "Empty",
"type": "object"
}output · DeploymentList
Every deployment the layer declares.
| property | type | required | description |
|---|---|---|---|
| count | integer | yes | How many. |
| deployments | array | yes | Each, in identity order. |
| unreadable | array | no | Objects of the deployment kind this executable could not read, with why. A malformed object is reported here rather than hidden by being skipped. |
JSON Schema
{
"$defs": {
"Budgets": {
"additionalProperties": false,
"description": "The measured figures this deployment is held to. Each is written by the run that\nmeasured it; an absent one has not been measured yet and is not a licence.",
"properties": {
"binary_bytes": {
"anyOf": [
{
"$ref": "#/$defs/Positive"
},
{
"type": "null"
}
],
"default": null,
"description": "Largest accepted stripped binary size."
},
"blocking_check_ms": {
"anyOf": [
{
"$ref": "#/$defs/Positive"
},
{
"type": "null"
}
],
"default": null,
"description": "Longest accepted time for one liveness or readiness check."
},
"build_context_bytes": {
"anyOf": [
{
"$ref": "#/$defs/Positive"
},
{
"type": "null"
}
],
"default": null,
"description": "Largest accepted build context."
},
"cold_start_ms": {
"anyOf": [
{
"$ref": "#/$defs/Positive"
},
{
"type": "null"
}
],
"default": null,
"description": "Longest accepted time from a stopped machine to a served response."
},
"image_bytes": {
"anyOf": [
{
"$ref": "#/$defs/Positive"
},
{
"type": "null"
}
],
"default": null,
"description": "Largest accepted compressed image size."
},
"request_p99_ms": {
"anyOf": [
{
"$ref": "#/$defs/Positive"
},
{
"type": "null"
}
],
"default": null,
"description": "Longest accepted p99 for a served request."
},
"resident_memory_mb": {
"anyOf": [
{
"$ref": "#/$defs/Positive"
},
{
"type": "null"
}
],
"default": null,
"description": "Largest accepted resident set under load."
}
},
"type": "object"
},
"Build": {
"additionalProperties": false,
"description": "What is shipped and what it is built from.",
"properties": {
"binary": {
"description": "The binary target the image runs.",
"type": "string"
},
"inputs": {
"description": "The repository-relative paths the build context carries, and the only ones.",
"items": {
"type": "string"
},
"type": "array"
},
"package": {
"description": "The Cargo package that is built.",
"type": "string"
},
"profile": {
"description": "The Cargo profile the image is built under.",
"type": "string"
},
"site": {
"default": null,
"description": "The directory the canonical site pipeline writes; absent means the image serves no\nsite.",
"type": [
"string",
"null"
]
}
},
"required": [
"package",
"binary",
"profile",
"inputs"
],
"type": "object"
},
"Concurrency": {
"additionalProperties": false,
"description": "When the edge considers a machine loaded, in requests.",
"properties": {
"hard_limit": {
"$ref": "#/$defs/Positive",
"description": "Where it stops sending requests to this one."
},
"soft_limit": {
"$ref": "#/$defs/Positive",
"description": "Where the edge starts preferring another machine."
}
},
"required": [
"soft_limit",
"hard_limit"
],
"type": "object"
},
"CpuKind": {
"description": "What a machine's CPU is.",
"oneOf": [
{
"const": "shared",
"description": "A fraction of a core: the cheap profile.",
"type": "string"
},
{
"const": "performance",
"description": "A dedicated one.",
"type": "string"
}
]
},
"DeploymentStatus": {
"description": "Where a deployment stands.\n\n`Status` is the right name inside this module; the schema component namespace is flat,\nand `distribution::Status` answers a different question, so each says which it is.",
"oneOf": [
{
"const": "declared",
"description": "The object exists and nothing is deployed from it yet.",
"type": "string"
},
{
"const": "active",
"description": "It is deployed.",
"type": "string"
},
{
"const": "retired",
"description": "It was, and the object is kept for the record.",
"type": "string"
}
]
},
"DeploymentView": {
"description": "One deployment as this process reads it, with where it came from.",
"properties": {
"application": {
"description": "The application's name at the provider.",
"type": "string"
},
"budgets": {
"$ref": "#/$defs/Budgets",
"default": {
"binary_bytes": null,
"blocking_check_ms": null,
"build_context_bytes": null,
"cold_start_ms": null,
"image_bytes": null,
"request_p99_ms": null,
"resident_memory_mb": null
},
"description": "The measured figures it is held to."
},
"build": {
"$ref": "#/$defs/Build",
"description": "What is shipped and what it is built from."
},
"created_at": {
"default": null,
"description": "When the object was written.",
"type": [
"string",
"null"
]
},
"description": {
"default": null,
"description": "One line: what it serves and to whom.",
"type": [
"string",
"null"
]
},
"file": {
"description": "The repository-relative file the object lives in.",
"type": "string"
},
"health": {
"$ref": "#/$defs/HealthRoutes",
"description": "The routes a platform polls."
},
"id": {
"description": "The identity within the repository.",
"type": "string"
},
"kind": {
"description": "Always `deployment`.",
"type": "string"
},
"listen": {
"$ref": "#/$defs/Listen",
"description": "The address the process listens on."
},
"machines": {
"$ref": "#/$defs/Machines",
"description": "How many machines run."
},
"provider": {
"$ref": "#/$defs/Provider",
"description": "The provider and its own facts."
},
"region": {
"description": "The region they run in.",
"type": "string"
},
"resources": {
"$ref": "#/$defs/Resources",
"description": "What one machine is granted."
},
"schema": {
"description": "The format version; a version this executable does not read is refused.",
"type": "string"
},
"status": {
"anyOf": [
{
"$ref": "#/$defs/DeploymentStatus"
},
{
"type": "null"
}
],
"default": null,
"description": "Where it stands."
},
"title": {
"description": "One line naming it.",
"type": "string"
},
"updated_at": {
"default": null,
"description": "When it was last changed.",
"type": [
"string",
"null"
]
}
},
"required": [
"file",
"schema",
"kind",
"id",
"title",
"application",
"build",
"listen",
"health",
"resources",
"machines",
"region",
"provider"
],
"type": "object"
},
"Fly": {
"additionalProperties": false,
"description": "Fly.io's own facts: what has no meaning for any other provider.",
"properties": {
"concurrency": {
"anyOf": [
{
"$ref": "#/$defs/Concurrency"
},
{
"type": "null"
}
],
"default": null,
"description": "When the edge considers a machine loaded."
},
"force_https": {
"default": null,
"description": "Whether the edge redirects plain HTTP to HTTPS.",
"type": [
"boolean",
"null"
]
},
"org": {
"default": null,
"description": "The organisation the application belongs to.",
"type": [
"string",
"null"
]
}
},
"type": "object"
},
"HealthRoutes": {
"additionalProperties": false,
"description": "The routes a platform polls, and how often.",
"properties": {
"grace_seconds": {
"default": null,
"description": "How long the platform waits before the first check counts.",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"interval_seconds": {
"anyOf": [
{
"$ref": "#/$defs/Positive"
},
{
"type": "null"
}
],
"default": null,
"description": "How often the platform polls liveness."
},
"liveness": {
"$ref": "#/$defs/Route",
"description": "Is this process alive."
},
"readiness": {
"$ref": "#/$defs/Route",
"description": "Can this process serve traffic."
},
"timeout_seconds": {
"anyOf": [
{
"$ref": "#/$defs/Positive"
},
{
"type": "null"
}
],
"default": null,
"description": "How long one check may take before it counts as failed."
}
},
"required": [
"liveness",
"readiness"
],
"type": "object"
},
"Interface": {
"description": "Which interface a process listens on.",
"oneOf": [
{
"const": "loopback",
"description": "Reachable from this host alone: the local default, and what every local invocation\nkeeps.",
"type": "string"
},
{
"const": "all",
"description": "Every interface. A hosted process needs it and a local one never does; stating it\nis the intent that replaces suppressing the bind warning.",
"type": "string"
}
]
},
"Listen": {
"additionalProperties": false,
"description": "The address the process listens on.",
"properties": {
"interface": {
"$ref": "#/$defs/Interface",
"description": "Which interface."
},
"port": {
"$ref": "#/$defs/Port",
"description": "The port, stated once for the process, the image and the provider configuration."
}
},
"required": [
"port",
"interface"
],
"type": "object"
},
"Machines": {
"additionalProperties": false,
"description": "How many machines run, and whether the platform may stop them.",
"properties": {
"autostart": {
"description": "Whether a request to a stopped machine starts it.",
"type": "boolean"
},
"autostop": {
"description": "Whether an idle machine is stopped.",
"type": "boolean"
},
"count": {
"$ref": "#/$defs/Positive",
"description": "How many machines the application has."
},
"min_running": {
"description": "How many stay running when idle.",
"format": "uint32",
"minimum": 0,
"type": "integer"
}
},
"required": [
"count",
"min_running",
"autostart",
"autostop"
],
"type": "object"
},
"Port": {
"description": "A TCP port a deployed process may bind. Privileged ports are not among them: the\nprocess runs as a non-root user and could not bind one.",
"format": "uint16",
"maximum": 65535,
"minimum": 0,
"type": "integer"
},
"Positive": {
"description": "A count that is at least one: memory in megabytes, CPUs, machines. Zero is refused\nwherever zero would mean \"a deployment that cannot run\".",
"format": "uint32",
"minimum": 0,
"type": "integer"
},
"Provider": {
"additionalProperties": false,
"description": "The provider and the facts that belong to it alone.",
"properties": {
"fly": {
"anyOf": [
{
"$ref": "#/$defs/Fly"
},
{
"type": "null"
}
],
"default": null,
"description": "Fly's own block, when the provider is Fly."
},
"name": {
"$ref": "#/$defs/ProviderName",
"description": "Which provider."
}
},
"required": [
"name"
],
"type": "object"
},
"ProviderName": {
"description": "The hosting provider. One is supported; a second is an object of its own rather than an\nabstraction over this one.",
"oneOf": [
{
"const": "fly",
"description": "Fly.io.",
"type": "string"
}
]
},
"Refusal": {
"description": "Why a deployment object is refused: what was read, where, and what to do about it.",
"properties": {
"correction": {
"description": "What to do instead.",
"type": "string"
},
"file": {
"description": "The repository-relative file the value came from.",
"type": "string"
},
"found": {
"description": "The value observed, rendered as it was read.",
"type": "string"
},
"key": {
"description": "The key path within it, as the contract names it.",
"type": "string"
},
"problem": {
"description": "What is wrong with it, in one line.",
"type": "string"
}
},
"required": [
"file",
"key",
"found",
"problem",
"correction"
],
"type": "object"
},
"Resources": {
"additionalProperties": false,
"description": "What one machine is granted.",
"properties": {
"cpu_kind": {
"$ref": "#/$defs/CpuKind",
"description": "Shared or dedicated."
},
"cpus": {
"$ref": "#/$defs/Positive",
"description": "How many CPUs one machine has."
},
"memory_mb": {
"$ref": "#/$defs/Positive",
"description": "Memory per machine, in megabytes."
}
},
"required": [
"cpu_kind",
"cpus",
"memory_mb"
],
"type": "object"
},
"Route": {
"description": "A route a platform polls: an absolute path on this service, never a URL. The host is\nthe deployment's to know and not the object's to state.",
"type": "string"
}
},
"description": "Every deployment the layer declares.",
"properties": {
"count": {
"description": "How many.",
"format": "uint",
"minimum": 0,
"type": "integer"
},
"deployments": {
"description": "Each, in identity order.",
"items": {
"$ref": "#/$defs/DeploymentView"
},
"type": "array"
},
"unreadable": {
"description": "Objects of the deployment kind this executable could not read, with why. A\nmalformed object is reported here rather than hidden by being skipped.",
"items": {
"$ref": "#/$defs/Refusal"
},
"type": "array"
}
},
"required": [
"count",
"deployments"
],
"title": "DeploymentList",
"type": "object"
}Policies
- benchmark
- required — a target on every transport the exposure declares; the cases are the input type's
- cache
- disabled — every call runs the handler
Benchmark targets
Derived from the registry for this repository: one requirement per transport, and the cases the input type provides. The whole matrix is on the benchmarks page.