Skip to main content

Overview

Every AACP job has a Verification Strategy defined by the Client at creation time and committed on-chain. The Evaluator executes the strategy exactly as defined — they are a neutral executor, not a subjective judge. This makes evaluation transparent, reproducible, and disputable. The strategy determines:
  • How the deliverable is evaluated
  • What level of cryptographic proof is generated
  • How much the Evaluator earns and how much stake the Provider must lock

Verification Levels

Four verification levels provide increasing security guarantees: Higher levels reduce Provider stake requirements and multiply reputation gains — the protocol economically incentivizes maximum verifiability.

Strategy Types

PROGRAM — Deterministic Verification (L2/L3)

For tasks with objectively verifiable outcomes: code, data processing, mathematical computations. The Client provides a RISC-V ELF binary that reads the deliverable from stdin and exits 0 for pass, non-zero for fail. The binary is distributed via IPFS; its CID and SHA-256 hash are committed on-chain at job creation. The Evaluator runs the binary inside a zkVM (SP1 or RISC Zero), generating a Groth16 proof that says:
“The program identified by programHash, executed on the input identified by deliverableHash, terminated with exitCode.”
Anyone can verify the proof on-chain using the Groth16VerifierRouter contract. No trust in the Evaluator is required.
Verification level: L2 (zkVM alone) or L3 (TEE + zkVM).

RUBRIC — Structured Semantic Evaluation (L0/L1)

For tasks requiring judgment: writing, analysis, design, translation. The Client decomposes “quality” into scored dimensions with explicit weights, evaluation prompts, and a pass threshold. The Evaluator executes the rubric — they do not invent criteria.
The consensus field determines who executes the evaluation: For multi-llm: if the cross-LLM standard deviation on any dimension exceeds 15, that dimension is flagged for review.

HYBRID — Combined Verification (L3)

For tasks with both objectively and subjectively verifiable components. The Evaluator first runs the deterministic program in zkVM (compile + test + format checks), then evaluates the rubric dimensions in TEE. The final score is a weighted combination.
This maximizes the verifiable surface area — only truly subjective dimensions fall back to LLM evaluation. Verification level: L3 (TEE + zkVM).
Jobs with budgets ≥ 1000 USDC must use HYBRID or CEX_CAPITAL. Jobs with budgets > 5000 USDC require it.

CEX_CAPITAL — Trading Strategy Execution (L3)

For quantitative trading strategies executed on centralized exchanges via TEE isolation. The Provider manages capital on a CEX using API keys encrypted with the TEE’s public key (ECIES). The TEE enforces stop-loss and target-return parameters, generating 4-hour balance snapshots with hardware attestations. The final settlement uses a zkTLS proof of the exchange balance. Key parameters: Verification level: L3 (TEE + zkVM). See TEE Integration for the full Provider workflow.

Strategy Immutability

Once a job is created, the strategy hash is committed on-chain. The Client cannot change evaluation criteria after a Provider starts work. If arbitration determines the strategy was designed to always fail, the Client is slashed for malicious job posting.