Herramientas de Puerta de Decisión MCP
Descargar: tooling.json (268 KB) Descargar: openapi/decision-gate.json (343 KB)
Páginas de detalles de herramientas
scenario_define- Registrar un ScenarioSpec, validarlo y devolver el hash canónico utilizado para las verificaciones de integridad.scenario_start- Crear un nuevo estado de ejecución para un escenario y, opcionalmente, emitir paquetes de entrada.scenario_status- Obtén una instantánea de ejecución de solo lectura y un resumen seguro sin cambiar el estado.scenario_next- Evaluar puertas en respuesta a una solicitud siguiente impulsada por un agente.scenario_submit- Enviar artefactos externos al estado de ejecución para auditoría y evaluación posterior.scenario_trigger- Enviar un evento de activación (programador/externo) y evaluar la ejecución.evidence_query- Consultar a un proveedor de evidencia con el contexto completo de ejecución y la política de divulgación.runpack_export- Exportar artefactos de runpack deterministas para verificación offline.runpack_verify- Verificar un manifiesto de runpack y artefactos sin conexión.providers_list- Lista de proveedores de evidencia registrados y resumen de capacidades.provider_contract_get- Obtener el JSON del contrato del proveedor canónico y el hash para un proveedor.provider_check_schema_get- Obtener detalles del esquema de verificación (parámetros/resultados/comparadores) para un proveedor.schemas_register- Registrar un esquema de forma de datos para un inquilino y un espacio de nombres.schemas_list- Lista de formas de datos registradas para un inquilino y un espacio de nombres.schemas_get- Recuperar una forma de datos específica por identificador y versión.scenarios_list- Lista de escenarios registrados para un inquilino y un espacio de nombres.precheck- Evaluar un escenario contra datos afirmados sin mutar el estado.decision_gate_docs_search- Buscar documentación de Decision Gate para orientación en tiempo de ejecución.
Este documento resume la superficie de la herramienta MCP y el uso esperado. Los esquemas completos están en tooling.json, con los esquemas de soporte en schemas/ y ejemplos en examples/.
Inicio rápido del ciclo de vida
scenario_defineregistra y valida un ScenarioSpec.scenario_startcrea una ejecución y opcionalmente emite paquetes de entrada.scenario_nextavanza una ejecución impulsada por un agente;scenario_triggeravanza el tiempo/disparadores externos.scenario_statusconsulta el estado de ejecución sin mutarlo.scenario_submitañade artefactos externos para auditoría y verificaciones posteriores.runpack_exportyrunpack_verifyadmiten verificación fuera de línea.
Referencias de artefactos
authoring.md: formatos de autoría y guía de normalización.[scenario.json](/downloads/decision-gate/examples/scenario.json): ejemplo completo de ScenarioSpec.examples/scenario.ron: ejemplo de ScenarioSpec amigable para la autoría.[run-config.json](/downloads/decision-gate/examples/run-config.json): ejemplo de configuración de ejecución para scenario_start.[decision-gate.toml](/downloads/decision-gate/examples/decision-gate.toml): ejemplo de configuración de MCP para proveedores.
| Herramienta | Descripción |
|---|---|
| scenario_define | Registrar un ScenarioSpec, validarlo y devolver el hash canónico utilizado para verificaciones de integridad. |
| scenario_start | Crear un nuevo estado de ejecución para un escenario y, opcionalmente, emitir paquetes de entrada. |
| scenario_status | Obtener una instantánea de ejecución de solo lectura y un resumen seguro sin cambiar el estado. |
| scenario_next | Evaluar puertas en respuesta a una solicitud de siguiente impulsada por un agente. |
| scenario_submit | Enviar artefactos externos al estado de ejecución para auditoría y evaluación posterior. |
| scenario_trigger | Enviar un evento de activación (programador/externo) y evaluar la ejecución. |
| evidence_query | Consultar a un proveedor de evidencia con el contexto completo de ejecución y la política de divulgación. |
| runpack_export | Exportar artefactos de runpack deterministas para verificación fuera de línea. |
| runpack_verify | Verificar un manifiesto de runpack y artefactos fuera de línea. |
| providers_list | Listar proveedores de evidencia registrados y resumen de capacidades. |
| provider_contract_get | Obtener el JSON del contrato canónico del proveedor y el hash para un proveedor. |
| provider_check_schema_get | Obtener detalles del esquema de verificación (parámetros/resultados/comparadores) para un proveedor. |
| schemas_register | Registrar un esquema de forma de datos para un inquilino y un espacio de nombres. |
| schemas_list | Listar formas de datos registradas para un inquilino y un espacio de nombres. |
| schemas_get | Obtener una forma de datos específica por identificador y versión. |
| scenarios_list | Listar escenarios registrados para un inquilino y un espacio de nombres. |
| precheck | Evaluar un escenario contra datos afirmados sin mutar el estado. |
| decision_gate_docs_search | Buscar documentación de Decision Gate para orientación en tiempo de ejecución. |
escenario_definir
Registra un ScenarioSpec, valídalo y devuelve el hash canónico utilizado para las verificaciones de integridad.
Entradas
- spec (requerido): Especificación del escenario a registrar.
Salidas
- scenario_id (requerido): Identificador del escenario.
- spec_hash (requerido): Tipo: object.
Notas
- Usar antes de comenzar las ejecuciones; scenario_id se convierte en el identificador estable para llamadas posteriores.
- Valida los IDs de etapa/puerta/condición, los árboles RET y las referencias de condición.
- El hash de especificación es determinista; guárdalo para auditoría e integridad de descompresión.
- Falla al cerrarse en especificaciones inválidas o IDs de escenario duplicados.
Ejemplo
Registra la especificación del escenario de ejemplo.
Entrada:
{
"spec": {
"conditions": [
{
"comparator": "equals",
"condition_id": "env_is_prod",
"expected": "production",
"policy_tags": [],
"query": {
"check_id": "get",
"params": {
"key": "DEPLOY_ENV"
},
"provider_id": "env"
}
},
{
"comparator": "equals",
"condition_id": "after_freeze",
"expected": true,
"policy_tags": [],
"query": {
"check_id": "after",
"params": {
"timestamp": 1710000000000
},
"provider_id": "time"
}
}
],
"default_tenant_id": null,
"namespace_id": 1,
"policies": [],
"scenario_id": "example-scenario",
"schemas": [],
"spec_version": "v1",
"stages": [
{
"advance_to": {
"kind": "terminal"
},
"entry_packets": [
{
"content_type": "application/json",
"expiry": null,
"packet_id": "packet-hello",
"payload": {
"kind": "json",
"value": {
"message": "hello",
"purpose": "scenario entry packet"
}
},
"policy_tags": [],
"schema_id": "schema-hello",
"visibility_labels": [
"public"
]
}
],
"gates": [
{
"gate_id": "env_gate",
"requirement": {
"Condition": "env_is_prod"
}
},
{
"gate_id": "time_gate",
"requirement": {
"Condition": "after_freeze"
}
}
],
"on_timeout": "fail",
"stage_id": "main",
"timeout": null
}
]
}
}
Output:
{
"scenario_id": "example-scenario",
"spec_hash": {
"algorithm": "sha256",
"value": "5c3a5b6bce0f4a2c9e22c4fa6a1e6d8d90b0f2dfed1b7f1e9b3d3b3d1f0c9b21"
}
}
iniciodelescenario
Crea un nuevo estado de ejecución para un escenario y opcionalmente emite paquetes de entrada.
Entradas
- issue_entry_packets (required): Emita paquetes de entrada de inmediato.
- run_config (requerido): Configuración de ejecución y destinos de despacho.
- scenario_id (requerido): Identificador del escenario.
- started_at (requerido): Marca de tiempo de inicio de ejecución proporcionada por el llamador.
Salidas
- current_stage_id (required): Identificador de la etapa actual.
- decisiones (requerido): Tipo: array.
- dispatch_targets (requerido): Tipo: array.
- gate_evals (requerido): Tipo: array.
- namespace_id (requerido): Identificador de espacio de nombres.
- paquetes (requerido): Tipo: array.
- run_id (requerido): Identificador de ejecución.
- scenario_id (requerido): Identificador del escenario.
- spec_hash (requerido): Tipo: object.
stage_entered_at(requerido): Uno de: objeto, objeto.- estado (requerido): Tipo: string.
- envíos (requerido): Tipo: array.
- tenant_id (required): Identificador del inquilino.
- tool_calls (requerido): Tipo: array.
- triggers (requerido): Tipo: array.
Notas
- Requiere RunConfig (tenant_id, run_id, scenario_id, dispatch_targets).
- Utilice started_at para registrar la marca de tiempo de inicio proporcionada por el llamador.
- Si issue_entry_packets es verdadero, los paquetes de entrada se divulgan inmediatamente.
- Falla cerrada si run_id ya existe o scenario_id es unknown.
Ejemplo
Inicie una ejecución para el escenario de ejemplo y emita paquetes de entrada.
Entrada:
{
"issue_entry_packets": true,
"run_config": {
"dispatch_targets": [
{
"agent_id": "agent-alpha",
"kind": "agent"
}
],
"namespace_id": 1,
"policy_tags": [],
"run_id": "run-0001",
"scenario_id": "example-scenario",
"tenant_id": 1
},
"scenario_id": "example-scenario",
"started_at": {
"kind": "unix_millis",
"value": 1710000000000
}
}
Output:
{
"current_stage_id": "main",
"decisions": [],
"dispatch_targets": [
{
"agent_id": "agent-alpha",
"kind": "agent"
}
],
"gate_evals": [],
"namespace_id": 1,
"packets": [],
"run_id": "run-0001",
"scenario_id": "example-scenario",
"spec_hash": {
"algorithm": "sha256",
"value": "5c3a5b6bce0f4a2c9e22c4fa6a1e6d8d90b0f2dfed1b7f1e9b3d3b3d1f0c9b21"
},
"stage_entered_at": {
"kind": "unix_millis",
"value": 1710000000000
},
"status": "active",
"submissions": [],
"tenant_id": 1,
"tool_calls": [],
"triggers": []
}
estadodelescenario
Obtén una instantánea de ejecución de solo lectura y un resumen seguro sin cambiar el estado.
Entradas
- request (required): Carga útil de solicitud de estado.
- scenario_id (requerido): Identificador del escenario.
Salidas
- current_stage_id (required): Identificador de la etapa actual.
- issued_packet_ids (requerido): Tipo: array.
last_decision(requerido, nullable): Uno de: null, objeto.- namespace_id (opcional): Identificador de espacio de nombres.
- run_id (requerido): Identificador de ejecución.
safe_summary(requerido, nullable): Uno de: null, objeto.- scenario_id (requerido): Identificador del escenario.
- estado (requerido): Tipo: string.
Notas
- Usar para encuestas o estado de UI; no evalúa puertas.
- Los resúmenes seguros omiten los valores de evidencia y pueden incluir sugerencias de reintento.
- Devuelve los IDs de paquetes emitidos para ayudar a rastrear divulgaciones.
Ejemplo
Estado de ejecución de la encuesta sin avanzar la ejecución.
Entrada:
{
"request": {
"correlation_id": null,
"namespace_id": 1,
"requested_at": {
"kind": "unix_millis",
"value": 1710000000000
},
"run_id": "run-0001",
"tenant_id": 1
},
"scenario_id": "example-scenario"
}
Output:
{
"current_stage_id": "main",
"issued_packet_ids": [],
"last_decision": null,
"run_id": "run-0001",
"safe_summary": null,
"scenario_id": "example-scenario",
"status": "active"
}
escenario_siguiente
Evalúa las puertas en respuesta a una solicitud siguiente impulsada por un agente.
Entradas
feedback(opcional, nulo): Nivel de retroalimentación opcional para el escenario_siguiente.- request (required): Siguiente carga útil de solicitud de un agente.
- scenario_id (requerido): Identificador del escenario.
Salidas
- decisión (requerido): Tipo: object.
feedback(opcional, nullable): Uno de: null, objeto.- paquetes (requerido): Tipo: array.
- estado (requerido): Tipo: string.
Notas
- Idempotente por trigger_id; las llamadas repetidas devuelven la misma decisión.
- Registra decisiones, evidencia y divulgaciones de paquetes en estado de ejecución.
- Requiere una ejecución activa; las ejecuciones completadas o fallidas no avanzan.
- La retroalimentación opcional puede incluir el rastro de la puerta o evidencia cuando lo permita la política de retroalimentación del servidor.
Ejemplo
Ejemplo 1: Evalúe el siguiente paso impulsado por el agente para una ejecución.
Entrada:
{
"request": {
"agent_id": "agent-alpha",
"correlation_id": null,
"namespace_id": 1,
"run_id": "run-0001",
"tenant_id": 1,
"time": {
"kind": "unix_millis",
"value": 1710000000000
},
"trigger_id": "trigger-0001"
},
"scenario_id": "example-scenario"
}
Output:
{
"decision": {
"correlation_id": null,
"decided_at": {
"kind": "unix_millis",
"value": 1710000000000
},
"decision_id": "decision-0001",
"outcome": {
"kind": "complete",
"stage_id": "main"
},
"seq": 0,
"stage_id": "main",
"trigger_id": "trigger-0001"
},
"packets": [],
"status": "completed"
}
Ejemplo 2: Evalúe una ejecución y solicite comentarios sobre el seguimiento.
Entrada:
{
"feedback": "trace",
"request": {
"agent_id": "agent-alpha",
"correlation_id": null,
"namespace_id": 1,
"run_id": "run-0001",
"tenant_id": 1,
"time": {
"kind": "unix_millis",
"value": 1710000000000
},
"trigger_id": "trigger-0001"
},
"scenario_id": "example-scenario"
}
Output:
{
"decision": {
"correlation_id": null,
"decided_at": {
"kind": "unix_millis",
"value": 1710000000000
},
"decision_id": "decision-0001",
"outcome": {
"kind": "complete",
"stage_id": "main"
},
"seq": 0,
"stage_id": "main",
"trigger_id": "trigger-0001"
},
"feedback": {
"gate_evaluations": [],
"level": "trace"
},
"packets": [],
"status": "completed"
}
escenario_enviar
Enviar artefactos externos al estado de ejecución para auditoría y evaluación posterior.
Entradas
- request (requerido): Carga útil de envío y metadatos.
- scenario_id (requerido): Identificador del escenario.
Salidas
- registro (requerido): Tipo: object.
Notas
- La carga útil se hash y se almacena como un registro de envío.
- No avanza la ejecución por sí mismo.
- Utilice para los artefactos el modelo o el operador proporciona.
Ejemplo
Enviar un artefacto externo para auditoría y evaluación posterior.
Entrada:
{
"request": {
"content_type": "application/json",
"correlation_id": null,
"namespace_id": 1,
"payload": {
"kind": "json",
"value": {
"artifact": "attestation",
"status": "approved"
}
},
"run_id": "run-0001",
"submission_id": "submission-0001",
"submitted_at": {
"kind": "unix_millis",
"value": 1710000000000
},
"tenant_id": 1
},
"scenario_id": "example-scenario"
}
Output:
{
"record": {
"content_hash": {
"algorithm": "sha256",
"value": "5c3a5b6bce0f4a2c9e22c4fa6a1e6d8d90b0f2dfed1b7f1e9b3d3b3d1f0c9b21"
},
"content_type": "application/json",
"correlation_id": null,
"payload": {
"kind": "json",
"value": {
"artifact": "attestation",
"status": "approved"
}
},
"run_id": "run-0001",
"submission_id": "submission-0001",
"submitted_at": {
"kind": "unix_millis",
"value": 1710000000000
}
}
}
escenario_disparador
Envía un evento de activación (programador/externo) y evalúa la ejecución.
Entradas
- scenario_id (requerido): Identificador del escenario.
- trigger (requerido): Carga útil del evento de activación.
Salidas
- decisión (requerido): Tipo: object.
- paquetes (requerido): Tipo: array.
- estado (requerido): Tipo: string.
Notas
- El tiempo de activación es proporcionado por el llamador; no se leen relojes de pared.
- Registra el evento desencadenante y la decisión resultante.
- Usar para desencadenadores basados en el tiempo o en sistemas externos.
Ejemplo
Avance una ejecución desde un programador o un desencadenador externo.
Entrada:
{
"scenario_id": "example-scenario",
"trigger": {
"correlation_id": null,
"kind": "tick",
"namespace_id": 1,
"payload": null,
"run_id": "run-0001",
"source_id": "scheduler-01",
"tenant_id": 1,
"time": {
"kind": "unix_millis",
"value": 1710000000000
},
"trigger_id": "trigger-0001"
}
}
Output:
{
"decision": {
"correlation_id": null,
"decided_at": {
"kind": "unix_millis",
"value": 1710000000000
},
"decision_id": "decision-0001",
"outcome": {
"kind": "complete",
"stage_id": "main"
},
"seq": 0,
"stage_id": "main",
"trigger_id": "trigger-0001"
},
"packets": [],
"status": "completed"
}
consultadeevidencia
Consulta a un proveedor de evidencia con el contexto completo de ejecución y la política de divulgación.
Entradas
- contexto (requerido): Contexto de evidencia utilizado para la evaluación.
- query (required): Carga útil de consulta de evidencia.
Salidas
- resultado (requerido): Tipo: object.
Notas
- La política de divulgación puede redactar valores en bruto; hashes/anclas aún se devuelven.
- Utilizar para diagnósticos o verificaciones previas al vuelo; el tiempo de ejecución utiliza la misma lógica del proveedor.
- Requiere provider_id, check_id y EvidenceContext completo.
Ejemplo
Consulta a un proveedor de evidencia utilizando el contexto de ejecución.
Entrada:
{
"context": {
"correlation_id": null,
"namespace_id": 1,
"run_id": "run-0001",
"scenario_id": "example-scenario",
"stage_id": "main",
"tenant_id": 1,
"trigger_id": "trigger-0001",
"trigger_time": {
"kind": "unix_millis",
"value": 1710000000000
}
},
"query": {
"check_id": "get",
"params": {
"key": "DEPLOY_ENV"
},
"provider_id": "env"
}
}
Output:
{
"result": {
"content_type": "text/plain",
"error": null,
"evidence_anchor": {
"anchor_type": "env",
"anchor_value": "DEPLOY_ENV"
},
"evidence_hash": {
"algorithm": "sha256",
"value": "5c3a5b6bce0f4a2c9e22c4fa6a1e6d8d90b0f2dfed1b7f1e9b3d3b3d1f0c9b21"
},
"evidence_ref": null,
"lane": "verified",
"signature": null,
"value": {
"kind": "json",
"value": "production"
}
}
}
runpack_export
Exportar artefactos de runpack deterministas para verificación offline.
Entradas
- generated_at (requerido): Marca de tiempo registrada en el manifiesto.
- include_verification (requerido): Generar un artefacto de informe de verificación.
manifest_name(opcional, nullable): Sobrescritura opcional para el nombre del archivo de manifiesto.- namespace_id (requerido): Identificador de espacio de nombres.
output_dir(opcional, anulable): Directorio de salida opcional (requerido para la exportación del sistema de archivos).- run_id (requerido): Identificador de ejecución.
- scenario_id (requerido): Identificador del escenario.
- tenant_id (required): Identificador del inquilino.
Salidas
- manifest (requerido): Tipo: object.
report(requerido, nullable): Uno de: null, objeto.storage_uri(opcional, anulable): URI de almacenamiento opcional para backends de almacenamiento de runpack gestionados.
Notas
- Escribe el manifiesto y los registros en output_dir; generated_at se registra en el manifiesto.
- include_verification agrega un artefacto de informe de verificación.
- Utilice después de que las ejecuciones se completen o para instantáneas de auditoría.
Ejemplo
Exportar un runpack con metadatos de manifiesto.
Entrada:
{
"generated_at": {
"kind": "unix_millis",
"value": 1710000000000
},
"include_verification": false,
"manifest_name": "manifest.json",
"namespace_id": 1,
"output_dir": "/var/lib/decision-gate/runpacks/run-0001",
"run_id": "run-0001",
"scenario_id": "example-scenario",
"tenant_id": 1
}
Output:
{
"manifest": {
"artifacts": [
{
"artifact_id": "decision_log",
"content_type": "application/json",
"hash": {
"algorithm": "sha256",
"value": "5c3a5b6bce0f4a2c9e22c4fa6a1e6d8d90b0f2dfed1b7f1e9b3d3b3d1f0c9b21"
},
"kind": "decision_log",
"path": "decision_log.json",
"required": true
}
],
"generated_at": {
"kind": "unix_millis",
"value": 1710000000000
},
"hash_algorithm": "sha256",
"integrity": {
"file_hashes": [
{
"hash": {
"algorithm": "sha256",
"value": "5c3a5b6bce0f4a2c9e22c4fa6a1e6d8d90b0f2dfed1b7f1e9b3d3b3d1f0c9b21"
},
"path": "decision_log.json"
}
],
"root_hash": {
"algorithm": "sha256",
"value": "5c3a5b6bce0f4a2c9e22c4fa6a1e6d8d90b0f2dfed1b7f1e9b3d3b3d1f0c9b21"
}
},
"manifest_version": "v1",
"namespace_id": 1,
"run_id": "run-0001",
"scenario_id": "example-scenario",
"spec_hash": {
"algorithm": "sha256",
"value": "5c3a5b6bce0f4a2c9e22c4fa6a1e6d8d90b0f2dfed1b7f1e9b3d3b3d1f0c9b21"
},
"tenant_id": 1,
"verifier_mode": "offline_strict"
},
"report": null,
"storage_uri": null
}
runpack_verify
Verifique un manifiesto de runpack y artefactos sin conexión.
Entradas
- manifest_path (requerido): Ruta del manifiesto relativa a la raíz de runpack.
- runpack_dir (requerido): Directorio raíz de Runpack.
Salidas
- informe (requerido): Tipo: object.
- estado (requerido): Estado de verificación de Runpack.
Notas
- Valida hashes, raíz de integridad y estructura del registro de decisiones.
- Falla al cerrarse en archivos faltantes o manipulados.
- Usar en CI o en auditorías fuera de línea.
Ejemplo
Verifique un manifiesto de runpack y artefactos sin conexión.
Entrada:
{
"manifest_path": "manifest.json",
"runpack_dir": "/var/lib/decision-gate/runpacks/run-0001"
}
Output:
{
"report": {
"checked_files": 12,
"errors": [],
"status": "pass"
},
"status": "pass"
}
providers_list
Lista de proveedores de evidencia registrados y resumen de capacidades.
Entradas
Salidas
- proveedores (requerido): Tipo: array.
Notas
- Devuelve identificadores de proveedores y metadatos de transporte.
- Los resultados están limitados por la política de autenticación.
Ejemplo
Listar proveedores de evidencia registrados.
Entrada:
{}
Output:
{
"providers": [
{
"checks": [
"get"
],
"provider_id": "env",
"transport": "builtin"
}
]
}
providercontractget
Obtén el JSON del contrato del proveedor canónico y el hash para un proveedor.
Entradas
- provider_id (required): Identificador del proveedor.
Salidas
- contrato (requerido): Tipo: object.
- contract_hash (requerido): Tipo: object.
- provider_id (required): Identificador del proveedor.
- source (required): Origen de la fuente del contrato.
version(requerido, nullable): Etiqueta de versión de contrato opcional.
Notas
- Devuelve el contrato del proveedor tal como lo carga el servidor MCP.
- Incluye un hash canónico para auditoría y reproducibilidad.
- Sujeto a la política de divulgación del proveedor y autorización.
Ejemplo
Obtén el JSON del contrato para un proveedor.
Entrada:
{
"provider_id": "json"
}
Output:
{
"contract": {
"checks": [],
"config_schema": {
"additionalProperties": false,
"type": "object"
},
"description": "Reads JSON or YAML files and evaluates JSONPath.",
"name": "JSON Provider",
"notes": [],
"provider_id": "json",
"transport": "builtin"
},
"contract_hash": {
"algorithm": "sha256",
"value": "5c3a5b6bce0f4a2c9e22c4fa6a1e6d8d90b0f2dfed1b7f1e9b3d3b3d1f0c9b21"
},
"provider_id": "json",
"source": "builtin",
"version": null
}
providercheckschema_get
Obtener detalles del esquema de verificación (parámetros/resultados/comparadores) para un proveedor.
Entradas
- check_id (required): Identificador de verificación del proveedor.
- provider_id (required): Identificador del proveedor.
Salidas
- allowed_comparators (requerido): Lista de permitidos de comparadores para esta verificación.
- anchor_types (requerido): Tipos de anclaje emitidos por esta verificación.
- check_id (required): Identificador de verificación.
- content_types (requerido): Tipos de contenido para la salida de verificación.
- contract_hash (requerido): Tipo: object.
- determinismo (requerido): Clasificación de determinismo para verificaciones de proveedor.
- ejemplos (requerido): Tipo: array.
- params_required (required): Si se requieren parámetros para esta verificación.
- params_schema (requerido): esquema JSON para verificar parámetros.
- provider_id (required): Identificador del proveedor.
- result_schema (requerido): esquema JSON para el valor del resultado de la verificación.
Notas
- Devuelve metadatos de esquema compilados para una única verificación.
- Incluye listas de permitidos de comparadores y ejemplos de verificación.
- Sujeto a la política de divulgación del proveedor y autorización.
Ejemplo
Obtén detalles del esquema de verificación para un proveedor.
Entrada:
{
"check_id": "path",
"provider_id": "json"
}
Output:
{
"allowed_comparators": [
"equals",
"in_set",
"exists",
"not_exists"
],
"anchor_types": [],
"check_id": "path",
"content_types": [
"application/json"
],
"contract_hash": {
"algorithm": "sha256",
"value": "5c3a5b6bce0f4a2c9e22c4fa6a1e6d8d90b0f2dfed1b7f1e9b3d3b3d1f0c9b21"
},
"determinism": "external",
"examples": [],
"params_required": true,
"params_schema": {
"properties": {
"file": {
"type": "string"
},
"jsonpath": {
"type": "string"
}
},
"required": [
"file"
],
"type": "object"
},
"provider_id": "json",
"result_schema": {
"type": [
"null",
"string",
"number",
"boolean",
"array",
"object"
]
}
}
schemas_register
Registra un esquema de forma de datos para un inquilino y un espacio de nombres.
Entradas
- registro (requerido): Tipo: object.
Salidas
- registro (requerido): Tipo: object.
Notas
- Los esquemas son inmutables; registrar la misma versión dos veces falla.
- Proporcione created_at para registrar cuándo se creó el esquema.
Ejemplo
Registrar un esquema de forma de datos.
Entrada:
{
"record": {
"created_at": {
"kind": "unix_millis",
"value": 1710000000000
},
"description": "Asserted payload schema.",
"namespace_id": 1,
"schema": {
"additionalProperties": false,
"properties": {
"deploy_env": {
"type": "string"
}
},
"required": [
"deploy_env"
],
"type": "object"
},
"schema_id": "asserted_payload",
"tenant_id": 1,
"version": "v1"
}
}
Output:
{
"record": {
"created_at": {
"kind": "unix_millis",
"value": 1710000000000
},
"description": "Asserted payload schema.",
"namespace_id": 1,
"schema": {
"additionalProperties": false,
"properties": {
"deploy_env": {
"type": "string"
}
},
"required": [
"deploy_env"
],
"type": "object"
},
"schema_id": "asserted_payload",
"tenant_id": 1,
"version": "v1"
}
}
listasdeesquemas
Lista de formas de datos registradas para un inquilino y un espacio de nombres.
Entradas
- cursor (opcional, nullable): Uno de: null, string.
- límite (opcional): Número máximo de registros a devolver.
- namespace_id (requerido): Identificador de espacio de nombres.
- tenant_id (required): Identificador del inquilino.
Salidas
- items (requerido): Tipo: array.
- next_token (requerido, nullable): Uno de: null, string.
Notas
- Requiere tenant_id y namespace_id.
- Soporta la paginación a través de cursor + límite.
Ejemplo
Lista las formas de datos para un espacio de nombres.
Entrada:
{
"cursor": null,
"limit": 50,
"namespace_id": 1,
"tenant_id": 1
}
Output:
{
"items": [
{
"created_at": {
"kind": "unix_millis",
"value": 1710000000000
},
"description": "Asserted payload schema.",
"namespace_id": 1,
"schema": {
"additionalProperties": false,
"properties": {
"deploy_env": {
"type": "string"
}
},
"required": [
"deploy_env"
],
"type": "object"
},
"schema_id": "asserted_payload",
"tenant_id": 1,
"version": "v1"
}
],
"next_token": null
}
schemas_get
Obtén una forma de datos específica por identificador y versión.
Entradas
- namespace_id (requerido): Identificador de espacio de nombres.
- schema_id (requerido): Identificador de forma de datos.
- tenant_id (required): Identificador del inquilino.
- version (requerido): Identificador de versión de la forma de datos.
Salidas
- registro (requerido): Tipo: object.
Notas
- Requiere tenant_id, namespace_id, schema_id y version.
- Falla al cerrarse cuando falta el esquema.
Ejemplo
Obtén una forma de datos por identificador y versión.
Entrada:
{
"namespace_id": 1,
"schema_id": "asserted_payload",
"tenant_id": 1,
"version": "v1"
}
Output:
{
"record": {
"created_at": {
"kind": "unix_millis",
"value": 1710000000000
},
"description": "Asserted payload schema.",
"namespace_id": 1,
"schema": {
"additionalProperties": false,
"properties": {
"deploy_env": {
"type": "string"
}
},
"required": [
"deploy_env"
],
"type": "object"
},
"schema_id": "asserted_payload",
"tenant_id": 1,
"version": "v1"
}
}
listadeescenarios
Lista de escenarios registrados para un inquilino y un espacio de nombres.
Entradas
- cursor (opcional, nullable): Uno de: null, string.
- límite (opcional): Número máximo de registros a devolver.
- namespace_id (requerido): Identificador de espacio de nombres.
- tenant_id (required): Identificador del inquilino.
Salidas
- items (requerido): Tipo: array.
- next_token (requerido, nullable): Uno de: null, string.
Notas
- Requiere tenant_id y namespace_id.
- Devuelve identificadores de escenario y hashes.
Ejemplo
Enumera los escenarios para un espacio de nombres.
Entrada:
{
"cursor": null,
"limit": 50,
"namespace_id": 1,
"tenant_id": 1
}
Output:
{
"items": [
{
"namespace_id": 1,
"scenario_id": "example-scenario",
"spec_hash": {
"algorithm": "sha256",
"value": "5c3a5b6bce0f4a2c9e22c4fa6a1e6d8d90b0f2dfed1b7f1e9b3d3b3d1f0c9b21"
}
}
],
"next_token": null
}
preverificación
Evalúa un escenario contra datos afirmados sin mutar el estado.
Entradas
- data_shape (requerido): Tipo: object.
- namespace_id (requerido): Identificador de espacio de nombres.
- payload (requerido): Carga de datos afirmada.
scenario_id(opcional, nullable): Uno de: null, string.spec(opcional, nullable): Uno de: null, ref decision-gate://contract/schemas/scenario.schema.json.stage_id(opcional, nullable): Uno de: null, string.- tenant_id (required): Identificador del inquilino.
Salidas
decision(requerido): Uno de: objeto, objeto, objeto, objeto, objeto.- evaluaciones_de_puerta (requerido): Tipo: array.
Notas
- Valida los datos afirmados contra una forma registrada.
- No muta el estado de ejecución; destinado a simulación.
Ejemplo
Prever un escenario con datos afirmados.
Entrada:
{
"data_shape": {
"schema_id": "asserted_payload",
"version": "v1"
},
"namespace_id": 1,
"payload": {
"deploy_env": "production"
},
"scenario_id": "example-scenario",
"spec": null,
"stage_id": null,
"tenant_id": 1
}
Output:
{
"decision": {
"kind": "hold",
"summary": {
"policy_tags": [],
"retry_hint": "await_evidence",
"status": "hold",
"unmet_gates": [
"ready"
]
}
},
"gate_evaluations": []
}
decisiongatedocs_search
Busque la documentación de Decision Gate para obtener orientación en tiempo de ejecución.
Entradas
- max_sections (opcional): Número máximo de secciones a devolver (por defecto 3, límite máximo 10).
- query (required): Consulta de búsqueda para secciones de documentación.
Salidas
- docs_covered (required): Tipo: array.
- secciones (requerido): Tipo: array.
- sugerencias_de_seguimiento (requerido): Indicaciones de seguimiento conscientes del rol.
Notas
- Utilice para búsquedas rápidas sobre el flujo de evidencia, comparadores y semántica del proveedor.
- Devuelve secciones clasificadas con etiquetas de rol y seguimientos sugeridos.
- La búsqueda es determinista y está limitada al catálogo de documentos configurado.
Ejemplo
Busca evidencia de flujo y orientación de carriles de confianza.
Entrada:
{
"max_sections": 2,
"query": "precheck vs live run trust lanes"
}
Output:
{
"docs_covered": [
{
"doc_id": "evidence_flow_and_execution_model",
"doc_role": "reasoning",
"doc_title": "Evidence Flow + Execution Model"
}
],
"sections": [
{
"content": "...",
"doc_id": "evidence_flow_and_execution_model",
"doc_role": "reasoning",
"doc_title": "Evidence Flow + Execution Model",
"heading": "Core Data Flow",
"rank": 0
}
],
"suggested_followups": [
"Refine the query with comparator or provider keywords for targeted guidance."
]
}