PROBATUM-1/A · the agent profile · draft v0.1

Who earned it, and may I pay them.

Verifiable track records for autonomous agents: binding to a committed model and identity, every version counted, forward-only records, the autonomy declaration, the verdict object and the allocate-check. Text unchanged from VTR-1/A v0.1; relabelled as a profile of the Machine Capital Standard.

The allocate-check is live. The profile is a draft; nothing in it is in-circuit yet.

DRAFTStatus
A-01 … A-38Clauses
A1 → A4Conformance classes
1c1e889194ecf4ff…sha256 of the draft

Licence: PROBATUM Open Reliance Licence v0.1 (draft): read, cite, verify and implement freely; never fork; never issue under the name without conformance. Profile zero (VTR-1) stays CC BY 4.0. Read the licence. Nothing on this page is in-circuit unless its chip says LIVE.

§00Abstract

VTR-1 makes a track record verifiable: its statistics are proven correct on committed data, net of a committed cost floor, deflated for the committed size of the search that produced it, without revealing the strategy. VTR-1 judges the record, not its author, so it already applies to records produced by software.

Autonomous agents add four problems VTR-1 does not address, because a human manager does not raise them:

  1. Who earned it. An agent is a key, an endpoint and a model, any of which can change. A verdict must be bound to the thing a counterparty will actually pay or allocate to.
  2. Silent replacement. An agent can swap its model, prompt or weights between the record and the sale. Each swap is a new trial that a record would otherwise hide.
  3. Identity laundering. An agent that fails can re-register under a fresh identity at zero cost and present a clean history.
  4. No interview. An allocating agent cannot sit across a table from a counterparty. It needs a check it can run in one call, with defined semantics, before money moves.

This profile defines four conformance classes for agent credentials (A1 to A4), a cumulative trial count across model versions, a forward-only record discipline, an autonomy declaration, a machine-readable verdict object, and an allocate-check procedure. Every normative requirement carries a stable identifier, A-01 onward, so a conformance claim can be contradicted.

The key words MUST, MUST NOT, SHALL, SHOULD and MAY are used as in VTR-1.

§01Scope

This profile governs credentials whose positions were produced by an agent: software that selects positions without a human choosing each one. It is silent on what the agent is built from. Rules, statistical models, neural networks and language-model agents are all in scope.

This profile governs the claim, not the agent. It does not certify safety, alignment, intent, legality, or future performance. A conforming credential proves that a record is honest and that it belongs to a specific, committed agent. Nothing more.

§02Definitions

Agent. A process that emits positions under a committed decision procedure without per-decision human selection.

Agent identity. A durable, resolvable identifier for an agent: an ERC-8004 agentRegistry:agentId pair, a W3C DID, or an A2A agent-card URL. An agent MAY hold several; a credential binds to at least one.

Model commitment. H(model_artifact ‖ model_salt), where model_artifact is the complete decision procedure (code, weights, prompts, parameters, tool configuration) and model_salt is 32 secret random bytes. The commitment reveals nothing about the artifact. VTR-1's sealed path already produces it.

Model version. One model commitment. Any change to any byte of the artifact is a new version.

Version ledger. A Merkle commitment to every model version an operator has run under one agent identity, in order. Its leaf count is the agent's lifetime version count N_life; each leaf also commits that version's search size N_v.

Operator. The party that controls the agent's identity keys.

Forward record. A record whose positions were committed and anchored before the market bars they act on existed (VTR-1 chained credentials).

Record age. Time from the first anchored forward commitment to the latest verified extension.

Autonomy class. The degree of human involvement in each position, declared in §07.

Binding statement. A statement signed by the agent identity's key over the credential digest, the model commitment and the identity, asserting "this record is mine."

§03Conformance classes

An agent credential MUST declare exactly one class. Each class includes every requirement of the classes below it, and every requirement of the VTR-1 Level it is built on.

ClassNameBuilt onAnswers
A1BoundVTR-1 Level II or IIIWhose record is this, and which model produced it?
A2VersionedA1How many models did this agent try before this one?
A3ForwardA2Was any of it known in advance?
A4Inference-boundA3Did the committed model actually produce these positions?

A3 is the class an allocating agent SHOULD require before moving capital. A4 is the ceiling: the record, the model and the decisions are all inside the proof.

### A1 · Bound

### A2 · Versioned

### A3 · Forward

### A4 · Inference-bound

§04Identity laundering

The cheapest attack on an agent's reputation is to abandon it. An agent that fails registers a new identity and starts clean. No cryptography can stop an operator from generating new keys. This profile does not pretend otherwise. It makes the attack expensive instead.

§05Identity transfer

ERC-8004 identities are ERC-721 tokens and can be sold.

§06The allocate-check

An allocating agent cannot interview a counterparty. This section defines the one call it makes instead. An allocating agent conforms to this profile if, before transferring capital or payment conditioned on performance, it performs:

The allocate-check reads properties. It does not set thresholds. What class, age or autonomy level is sufficient is the allocator's policy, exactly as VTR-1 leaves gate thresholds to the implementation.

§07Autonomy declaration
ClassMeaning
H0Human-executed: a human placed every order the agent proposed.
H1Human-approved: the agent placed orders after a human approved each.
H2Supervised: the agent placed orders; a human could override.
H3Autonomous: no human in the decision path.
§08Machine-readable verdict
{ "profile": "VTR-1/A 0.1", "class": "A3", "verdict": "PASS | FAIL | NOT_SIGNIFICANT", "credentialDigest": "sha256:…", "era": "<image id>", "agent": [{ "type": "erc8004", "id": "eip155:8453:0x8004A169…:42" }], "modelCommitment": "0x…", "versionLedgerRoot": "0x…", "modelVersions": 7, "cumulativeTrials": 143, "recordAgeDays": 211, "latestExtension": "2026-10-01", "stale": false, "autonomy": { "class": "H3", "proven": false }, "bundle": "https://…", "anchors": ["bitcoin:…", "eas:base:…"] }
§09Boundary

This profile does not certify, and a conforming credential MUST NOT be presented as certifying:

§10Security considerations
AttackDefence
Model swap between record and saleA-01, A-09, A-15: positions bind to a model commitment; a swap restarts the record
Hiding failed versionsA-06 to A-08: cumulative trial count enters the deflation
Identity laundering§04: age and N_cum shown beside every verdict; FAILs never deleted
Buying an aged identity§05: transfer reported; prior credentials not re-signable
Borrowing someone else's recordA-02 to A-04: bidirectional binding
Paying the wrong endpointA-29: endpoint must be in the bound identity
HindsightA3: positions anchored before bars
Human cherry-picking an "autonomous" agentA-34 at A4; declared-not-proven below it
Stale reputationA-14: staleness reported

Residual risks this profile does not remove: an operator running many agents and promoting the survivor across operators it does not disclose; collusion between an agent and its data source outside committed data; and the declared, unproven nature of autonomy below A4.

§11Interoperability (informative)
LayerMapping
ERC-8004 IdentityAgent identity; registration file lists credential digests (A-04)
ERC-8004 ReputationVerdict score per A-36
ERC-8004 ValidationvalidationResponse(requestHash, score, bundle, keccak(bundle), "vtr1")
A2AAgent card skill verify_credential; allocate-check as a task
MCPTool verify_credential returning the §08 object
x402proofOfPayment MAY be attached to a mint receipt; never a verdict input
IETF agent passport draftsThe §08 object as a proof-grade performance attribute
§12Relationship to VTR-1

This profile adds A-01 to A-38. It removes nothing, weakens nothing, and redefines nothing in VTR-1. A credential that satisfies this profile satisfies VTR-1 at the Level it is built on. Governance follows VTR-1 §6: the profile freezes at v1.0, changes after that by errata or a new version only, and every credential names the profile version and era that judged it.

§13Open questions for review
  1. Should A3 require a minimum record age, or leave it entirely to allocator policy?
  2. Can the version ledger be made to cover all agents of one operator without revealing how many the operator runs?
  3. What is the smallest A4 model class that is useful, and can a language-model agent's tool calls, not its full inference, be the committed decision procedure?
  4. Should staleness windows have a published maximum?
Appendix A · Requirement index
IdLevel§Subject
A-01MUST3Model commitment bound to positions
A-02MUST3Signed binding statement
A-03MUST3Verifier checks binding; UNBOUND
A-04MUST3Bidirectional binding
A-05MUST NOT3Undeclared custodial binding
A-06MUST3Version ledger + inclusion proof
A-07MUST3Deflate with cumulative N = Σ N_v
A-08MUST3Append-only ledger
A-09MUST3New leaf before changed model trades
A-10SHOULD3Anchor ledger roots
A-11MUST3Positions anchored before bars
A-12MUST3VTR-1 chaining
A-13MUST3Report record age
A-14MUST3Report STALE
A-15MUST3Model change resets age
A-16SHOULD3Monthly extension
A-17MUST3Inference recomputed in-proof
A-18MUST3Inputs derived from committed data
A-19MAY3Named supported model class
A-20MUST4Age and N_life beside verdict
A-21MUST4FAILs published, never deleted
A-22SHOULD4One ledger across operator's agents
A-23SHOULD4Weight record age
A-24MUST5Report identity transfer
A-25MUST5No re-signing after transfer
A-26MUST6Resolve identity and endpoint
A-27MUST6Retrieve and hash-check
A-28MUST6Verify proof, verdict as issued
A-29MUST6Endpoint in bound identity
A-30MUST6Read class, age, N_life, autonomy, staleness
A-31MUST NOT6Fail-closed conditions
A-32MUST7Commit autonomy class
A-33MUST7Autonomy declared, not proven
A-34MUST7A4 autonomy consistency
A-35MUST8Verdict object
A-36MUST8Registry score mapping
A-37SHOULD8Callable allocate-check
A-38MUST9Class shown beside every verdict
Appendix B · Conformance vectors

To be published with v1.0: one known-answer vector per class (A1 to A4), one UNBOUND, one STALE, one transferred identity, one laundering case (fresh identity, zero age), and one A4 inconsistency (declared H1, position differs from model output).

Prove the edge. Never reveal the strategy. — Mizan Verification, Inc.