TRUST INFRASTRUCTURE · POLICY LAYER

Policy Engine

Acceptance policies turn a Transparency Report into a decision. Express what evidence your organisation requires from inbound content, and get allow / warn / block with auditable reasons.

What it is

The verification engine answers what evidence exists. The policy engine answers is that enough for us. A policy is a declarative set of requirements evaluated against an ATP v1 package plus its live Transparency Report.

Two policy kinds share the same storage and audit trail: action policies gate what your organisation may emit, and acceptance policies gate what your organisation is willing to accept from the outside.

Policy DSL

Authored as YAML, stored as JSON on the policy row.

evidence.class

Requires an evidence object of a given class, optionally pinned to a provider, strength or verified flag.

trust_score.min

Minimum composite trust score produced by the verification engine (0–100).

timestamp.max_age_hours

Maximum age of the package, measured from produced_at.

module

Requires a named verification module to return pass (or warn, when explicitly allowed).

Decisions

Every rule was satisfied. The content can enter the workflow.

Something is missing but not disqualifying — surface it to a human reviewer.

A required rule failed. Reject the content or route it to manual escalation.

Every evaluation writes an audit row with the content hash, the decision, the machine-readable reasons and a snapshot of module verdicts — never the package itself, so retention windows stay clean.

REST

Pass atp instead of content_hash to evaluate a package you already hold — useful for air-gapped or offline-first flows.

SDK

JavaScript / TypeScript

Python

The same clients expose atp.publish() / atp.resolve() for detached Transparency Manifests and conformance.runSelf() for the ATP v1 conformance suite.

Managing policies

Acceptance policies are organisation-scoped and edited from the Policies tab in your dashboard. Evaluation always runs server-side against the live evidence layer — a client can never assert its own decision.