Skip to content

deploy.check

Every refusal the declared deployments earn locally: a health route no capability registers, a package or binary the workspace does not produce, a build input that does not resolve, more machines running than exist, a hosted process that would bind loopback. Each names the file, the key, the value observed and the correction. Nothing here contacts the provider.

Every refusal the declared deployments earn locally: a health route no capability registers, a package or binary the workspace does not produce, a build input that does not resolve, more machines running than exist, a hosted process that would bind loopback. Each names the file, the key, the value observed and the correction. Nothing here contacts the provider.

  • query
  • behaviorally_verified
  • module deploy
  • #deployment
  • #diagnostics

Exposure

Where this one definition is reachable. Absence is explicit: a surface not listed does not carry it.

surfaceas
MCPtool majordomus_deploy_check
HTTPGET /api/v1/deployments/check operationId deploy.check
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 · DeploymentCheck

Whether the deployments this repository declares would work, decided locally: against the capability registry this process built and the workspace it sits in.

propertytyperequireddescription
decided integer yes How many deployments were decided.
ok boolean yes True when no deployment earned a refusal.
refusals array yes Every refusal, in the order the objects and their keys appear.
JSON Schema
{
  "$defs": {
    "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"
    }
  },
  "description": "Whether the deployments this repository declares would work, decided locally: against\nthe capability registry this process built and the workspace it sits in.",
  "properties": {
    "decided": {
      "description": "How many deployments were decided.",
      "format": "uint",
      "minimum": 0,
      "type": "integer"
    },
    "ok": {
      "description": "True when no deployment earned a refusal.",
      "type": "boolean"
    },
    "refusals": {
      "description": "Every refusal, in the order the objects and their keys appear.",
      "items": {
        "$ref": "#/$defs/Refusal"
      },
      "type": "array"
    }
  },
  "required": [
    "ok",
    "decided",
    "refusals"
  ],
  "title": "DeploymentCheck",
  "type": "object"
}

Policies

benchmark
required — a target on every transport the exposure declares; the cases are the input type's
cache
process — up to 2 entries in the process, 5s each, scoped by the registry fingerprint

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.

transportstatecasestargets
directcovered1default cold+warm
mcpcovered1default cold+warm
httpcovered1default cold+warm