Documentos de Decision Gate

Evaluación de puertas determinista, reproducible con decisiones auditables.

Documentación de Asset Core

Rutas de Habilidades Onboarding

Propósito

Esta guía es la única ruta de incorporación para ambos modos de uso de Decision Gate:

  1. DG supervisa la ejecución de habilidades externas.
  2. DG se llama como una habilidad de evaluación determinista.

También define cómo componer ambos modos de manera segura (bucles recursivos) sin permitir la deriva de políticas autoradas por LLM.

Qué Ruta Usar

IntentoRutaFuerza de aplicación
Mutar estado externo (deploy, delete, pay, publish)Ejecución de habilidades de guardias DGLímite estricto (cerrado por fallo)
Producir análisis/informes/soporte a decisionesDG como habilidad de evaluaciónCálculo solo a menos que esté envuelto por un límite
Bucles de agente de múltiples pasos que autor y luego ejecutanComposición recursiva (guardia externa + evaluación interna)Límite estricto en el anillo exterior

Ruta A: Ejecución de Habilidades de Guardias DG (Predeterminado de Producción)

Utiliza esto cuando las acciones tengan efectos secundarios.

Contrato Operativo

  1. La propiedad de la puerta es de propiedad humana/política.
  2. Las especificaciones de la puerta son artefactos versionados, no invenciones de LLM en tiempo de ejecución.
  3. Cada llamada de habilidad mutante debe pasar la evaluación DG en vivo antes de la ejecución.
  4. Los resultados no aprobatorios (hold, fail, unknown) bloquean la ejecución.

Lista de Verificación de Configuración

  1. Define un mapa de puerta por acción.
  2. Autor y registrar especificaciones de escenario para cada clase de acción.
  3. Implementar un envoltorio de tiempo de ejecución delgado: evaluate -> allow/deny -> execute.
  4. Exportar y verificar paquetes de ejecución para auditoría.

Ejemplo de mapa de acciones:

{
  "deploy_to_prod": {
    "scenario_id": "release-boundary-v1",
    "required_min_lane": "verified",
    "allowed_outcomes": ["advance", "complete"]
  },
  "publish_external_report": {
    "scenario_id": "publication-boundary-v1",
    "required_min_lane": "verified",
    "allowed_outcomes": ["complete"]
  }
}

Ejemplo de lógica de envoltura:

def guarded_skill_call(action_name, action_args):
    policy = action_gate_map[action_name]
    run_id = start_run(policy["scenario_id"])
    result = scenario_next(policy["scenario_id"], run_id, feedback="trace")
    outcome = extract_outcome_kind(result)
    if outcome not in policy["allowed_outcomes"]:
        return {"allowed": False, "reason": "gate_not_satisfied", "result": result}
    skill_result = call_external_skill(action_name, action_args)
    runpack = runpack_export(policy["scenario_id"], run_id)
    verify = runpack_verify(runpack["dir"], runpack["manifest_path"])
    return {"allowed": True, "skill_result": skill_result, "runpack_verify": verify}

Referencias de implementación:

Ruta B: Habilidad de Evaluación de DG

Utiliza esto para análisis estructurados cuando no se ejecuta ninguna acción de efecto secundario directa.

Contrato Operativo

  1. DG se invoca como un evaluador de reclamaciones determinista.
  2. Las salidas impulsan la explicación/informe, no la mutación directa.
  3. Si se solicita una mutación más tarde, cambie primero al límite de la Ruta A.

Flujo Típico de Herramientas

  1. Descubrir capacidades: providers_list, provider_contract_get, provider_check_schema_get.
  2. Artefactos de construcción: claim_inventory, capability_matrix, claim_condition_map.
  3. Evaluar: precheck para iteración, luego scenario_next en vivo cuando la política requiere prueba en vivo.
  4. Verificar la integridad cuando se requiera auditoría: runpack_export, runpack_verify.

Contrato canónico: llm_native_playbook.md

Ruta C: Composición Recursiva (Bucle de Autorización + Límite de Ejecución)

Esta es la preocupación común del “flujo de trabajo DG dentro de DG”.

Usa un modelo de anillo:

  1. Anillo interno: DG-as-skill para asistencia en la descomposición/verificación de reclamaciones.
  2. Anillo exterior: guardia DG para acción consecuente.

Reglas estrictas:

  1. El anillo interno puede proponer asignaciones; no puede relajar la política del anillo externo.
  2. Las definiciones de la puerta del anillo exterior permanecen creadas por el sistema y versionadas.
  3. Bloques del anillo exterior sobre cualquier reclamación requerida no resuelta independientemente del texto de confianza del anillo interior.
  4. La verificación de Runpack en el anillo exterior es la fuente de verdad de la auditoría.

Patrón a evitar:

"The agent self-evaluated with DG and therefore can deploy."

Patrón correcto:

"The agent used DG for analysis, then the system-enforced deployment gate passed live, then deploy executed."

Ruta de Incorporación Rápida (Repositorio)

Utiliza esta secuencia al integrar humanos o agentes LLM en ambos caminos.

  1. Ejecuta el inicio rápido de un solo comando probado (ambos caminos + caso de denegación forzada):
scripts/bootstrap/skill_pathways_quickstart.sh configs/presets/quickstart-dev.toml
  1. Lee llm_native_playbook.md y esta guía.
  2. Instalar habilidades:
scripts/skills/install_local.sh
  1. Ejecutar el bucle de incorporación de extremo a extremo:
python3 examples/frameworks/openai_agents_live_loop.py \
  --fixture-dir examples/agentic/onboarding/basic
  1. Ejecutar matriz de corrección determinista:
python3 scripts/skills/eval_runner.py \
  --mode deterministic \
  --trials 1 \
  --cases all \
  --out-dir .tmp/skills/eval-deterministic-local
  1. Ejecutar el verificador de corrección de incorporación:
python3 scripts/onboarding/provider_onboarding_check.py \
  --cases all \
  --out-dir .tmp/onboarding/local

Definición de Hecho (Mínimo Sin Errores)

Antes de declarar la adopción completa:

  1. Las habilidades mutantes están envueltas por la lógica de límite de la Ruta A.
  2. Las especificaciones de la puerta están versionadas y son propiedad de la política (no texto de aviso ad hoc).
  3. Las instrucciones orientadas a LLM incluyen reglas explícitas de parada definitiva.
  4. Los informes de evaluación de habilidades deterministas son válidos para los casos requeridos.
  5. El informe de corrección de incorporación marca todos los casos como completos.
  6. Las verificaciones de Runpack se realizan en flujos de trabajo de límite en vivo.

Referencias cruzadas