Decision Gate Docs

Avaluació de portes determinista, reproduïble amb decisions auditable.

Asset Core docs

Prova de confiança de la porta de decisió + Arquitectura d’ancoratge

Audience: Engineers implementing or reviewing evidence trust enforcement, Audiència: Enginyers que implementen o revisen l’aplicació de la confiança en les proves, la validació de signatures i el comportament de la política d’ancoratge.


Taula de continguts

  1. Visió Executiva
  2. Model d’Evidència
  3. Línies de confiança i requisits
  4. Política de confiança del proveïdor (Signatures)
  5. Política de Divulgació d’Evidències
  6. Configuració de la Política d’Ancoratge
  7. Validació d’ancoratge al pla de control
  8. Verificació de l’Ancoratge de Runpack
  9. Evidència Afirmada (Precomprovació)
  10. File per Fitxer Referència Creuada

Executive Overview

La Decision Gate separa trust (evidència verificada vs afirmada) de integrity (ancoratges i signatures). Les vies de confiança controlen si l’evidència és elegible per a l’evaluació de la porta, mentre que les polítiques d’ancoratge i les signatures proporcionen enllaços verificables a sistemes externs. L’aplicació es produeix en dos llocs:

  • Control plane runtime: applies trust requirements and validates anchors Temps d’execució del pla de control: aplica requisits de confiança i valida ancoratges quan està configurat.
  • Verificador de Runpack: reprodueix les comprovacions de política d’ancoratge fora de línia.

La divulgació d’evidències es controla de manera separada a la capa d’eines. F:crates/decision-gate-core/src/core/evidence.rs L97-L257 F:crates/decision-gate-core/src/runtime/engine.rs L511-L618 F:crates/decision-gate-core/src/runtime/engine.rs L983-L1018 F:crates/decision-gate-core/src/runtime/runpack.rs L519-L567 F:crates/decision-gate-mcp/src/tools.rs L2294-L2334


Model d’Evidència

Els tipus d’evidència bàsica defineixen les càrregues útils canòniques i la metadada d’integritat:

  • EvidenceResult carries a value, trust lane, hash, anchor, and optional EvidenceResult porta un valor, un canal de confiança, un hash, un ancoratge i una signatura opcional.
  • EvidenceAnchor conté un tipus d’ancora i un valor d’ancora codificat en JSON.
  • EvidenceAnchorPolicy mapeja proveïdors als tipus d’ancora i camps requerits.

F:crates/decision-gate-core/src/core/evidence.rs L175-L257


Trust Lanes i Requisits

Les vies de confiança són una reixeta de dos nivells:

  • Verificat (per defecte) per a proves proporcionades pel proveïdor.
  • Afirmat per a proves subministrades pel client.

TrustRequirement especifica el mínim acceptable per a la via i s’aplica per condició i porta. Si l’evidència no compleix el requisit, es converteix en un resultat Unknown amb un error de trust_lane.

F:crates/decision-gate-core/src/core/evidence.rs L97-L141 F:crates/decision-gate-core/src/runtime/engine.rs L730-L746 F:crates/decision-gate-core/src/runtime/engine.rs L1573-L1593

La configuració del pla de control exposa:

  • requisit_de_confiança_global
  • sobrescriptures per proveïdor (a través de provider_trust_overrides)

F:crates/decision-gate-core/src/runtime/engine.rs L111-L145


Política de confiança del proveïdor (Signatures)

La federació d’evidències MCP aplica la política de confiança del proveïdor abans que els resultats arribin a l’evaluació del pla de control:

  • TrustPolicy::Audit accepta resultats sense signar.
  • TrustPolicy::RequireSignature requires EvidenceSignature and validates TrustPolicy::RequireSignature requereix EvidenceSignature i valida signatures ed25519 utilitzant claus públiques configurades.

Avaluació de polítiques:

  • Les signatures mancants, els esquemes no suportats o les claus no autoritzades són rebutjades.
  • Si falta el hash de l’evidència, es calcula a partir de la càrrega canònica.
  • Si el hash de l’evidència està present, ha de coincidir amb el hash de la càrrega útil canònica.

F:crates/decision-gate-mcp/src/evidence.rs L122-L210 F:crates/decision-gate-mcp/src/evidence.rs L628-L701


Política de Divulgació d’Evidències

La divulgació d’evidències s’aplica en el moment de evidence_query:

  • evidence.allow_raw_values controla la divulgació global de valors en brut.
  • evidence.require_provider_opt_in requereix addicionalment l’opt-in del proveïdor.
  • Els proveïdors opten per participar a través de ProviderConfig.allow_raw.

Si no s’accepten valors en brut, la resposta de l’eina redacta value i content_type, però manté els hashes i els ancoratges. F:crates/decision-gate-config/src/config.rs L1226-L1234 F:crates/decision-gate-mcp/src/tools.rs L2294-L2334 F:crates/decision-gate-mcp/src/evidence.rs L138-L196


Configuració de la Política d’Ancoratge

La configuració de la política d’ancoratge s’expressa en la configuració MCP com anchors.providers[{provider_id, anchor_type, required_fields}]. La configuració es valida i es converteix en la EvidenceAnchorPolicy en temps d’execució utilitzada pel pla de control i el verificador de runpack. Els ids de proveïdor han de ser únics i retallats per evitar l’aplicació ambigua de l’ancoratge. F:crates/decision-gate-config/src/config.rs L1378-L1466


Validació d’Ancoratge al Pla de Control

Quan es configura un requisit d’ancoratge per a un proveïdor:

  • Els resultats de l’evidència han d’incloure evidence_anchor.
  • anchor_type ha de coincidir amb el requisit.
  • anchor_value ha de ser un objecte JSON canònic amb els camps escalar requerits.
  • Gate evaluation evidence records are stored in canonical condition order to Els registres d’evidència d’evaluació de portes es guarden en ordre de condició canònica per mantenir els artefactes de runpack deterministes a través de les execucions.

Per al proveïdor json integrat, els ancoratges utilitzen file_path_rooted amb els camps requerits root_id i path. El valor de path es normalitza a un camí relatiu d’estil POSIX sota l’arrel configurada per mantenir els hashes de runpack estables a través de plataformes.

Els ancoratges no vàlids resulten en un error de proveïdor anchor_invalid i el resultat de l’evidència es converteix en un resultat verificat buit per a l’avaluació. F:crates/decision-gate-core/src/runtime/engine.rs L730-L755 F:crates/decision-gate-core/src/runtime/engine.rs L983-L1018


Verificació de l’Ancoratge de Runpack

La verificació de runpack reprodueix les comprovacions de política d’ancoratge fora de línia:

  • Els registres de l’especificació de l’escenari i d’evaluació de la porta es carreguen a partir dels artefactes de runpack.
  • El mapeig de condicions a proveïdors es deriva de l’especificació.
  • Els ancoratges d’evidència en els registres d’evaluació de portes es validen contra la política.

Els errors es recullen i es reporten en el informe de verificació. F:crates/decision-gate-core/src/runtime/runpack.rs L519-L567 F:crates/decision-gate-core/src/runtime/runpack.rs L579-L612


Evidència Afirmada (Precomprovació)

Precheck utilitza evidència assertada sense contactar amb els proveïdors:

  • Els valors de càrrega útil estan embolicats com a EvidenceResult amb el carril Asserted.
  • Control plane applies trust requirements per condition/gate, which can force El pla de control aplica requisits de confiança per condició/portella, que poden forçar l’evidència afirmada a Unknown depenent de la configuració.

F:crates/decision-gate-mcp/src/tools.rs L2663-L2707 F:crates/decision-gate-core/src/runtime/engine.rs L511-L618


File per Fitxer Referència Creuada

ÀreaFitxerNotes
Model d’evidència + canals de confiançacrates/decision-gate-core/src/core/evidence.rsTipus canònics per a canals de confiança, ancoratges, polítiques.
Aplicació de confiança + validació d’ancoratgescrates/decision-gate-core/src/runtime/engine.rsAplica requisits de confiança i valida ancoratges.
Verificació d’ancoratge de Runpackcrates/decision-gate-core/src/runtime/runpack.rsValidació fora de línia contra la política d’ancoratge.
Política de signatura del proveïdorcrates/decision-gate-mcp/src/evidence.rsAnàlisi de TrustPolicy + aplicació de signatura.
Política de divulgació d’evidènciescrates/decision-gate-mcp/src/tools.rsRedacció d’evidències en brut per a evidence_query.
Superfície de configuraciócrates/decision-gate-config/src/config.rsconfiguració evidence.* i anchors.*.