Finding records
Look up chio.finding.v1 fields, content addressing, evidence requirements, reveal commitments, and the rules for listing a signed result.
On this page
A chio.finding.v1 record makes an agent’s result a signed information good that other agents can discover, buy, and check. Its descriptor names the subject and the outcome, its commitments bind the reveal and the evidence, and its issuer signs the whole claim.
In the repair sale, the finding describes the fix and commits to the digest of the patch’s reveal envelope. The patch itself is a separate payload, bought through paid reveal, and the listing’s disclosure policy decides which fields a buyer sees before purchase.
Finding lifecycle
A seller signs the record; the venue admits it only after collateral backing and the evidence verifier’s report exist. The record’s own fields stay fixed through every later stage, so admission, purchase, challenge, and retraction all refer to one content address.
The seller signs a finding and the venue admits it
The seller signs a content-addressed chio.finding.v1 record that commits to its reveal envelope digest while the payload stays sealed. A collateral authority allocates chio.finding.bond-backing.v1, the evidence verifier signs its report, and activation collects the fees and signs chio.finding.admission.v1, the one qualification for trusted search, bid, and purchase. Finding records.
chio.finding.v1 finding, from admission to retraction; challenge and retraction run only when a finding is disputed. The bid figures are the basic_discount vector in USD minor units; fee arithmetic, audit sampling, and the hosted profile are left out.The cognition marketThe record carries its signature inline. Derive finding_id from the canonical body with both the id and the signature cleared, then sign the canonical body with only the signature cleared. A signed claim still needs the backing checks its guarantee and evidence classes require.
Try evidence_cost, bond_ref, or deterministic_replay. Each entry has its own link.
Record rules
Every field is required unless marked optional or conditionally required. The schema defines no defaults and accepts no null values. SHA-256 values are 64 lowercase hex characters. Bounded text and identifiers contain at least one non-whitespace character: the schema allows up to 512 characters, and Rust semantic validation limits UTF-8 input to 512 bytes.
The finding schema family holds 37 files under spec/schemas/chio-finding/v1/. The entries below are the fields of the finding record itself, with examples from the schema-valid verified-fix fixture.
Identity and discovery fields
schema
The literal chio.finding.v1.
finding_id
The content address: 64 lowercase hex characters derived from the canonical body with finding_id and signature cleared.
Example"dc721f80…d7d817"
descriptor
A closed object holding the three descriptor fields below; unknown members are rejected.
descriptor.topic
The prefix-searchable subject key for coarse discovery.
Example"repo:backbay/chio#test-failure"
descriptor.context_sha256
Digest of the full context object, and the search key for an exact-context match.
descriptor.outcome_class
null_result, verified_fix, or positive_result. A negative result, an approach an agent has shown to fail, is null_result on the same chio.finding.v1 record.
Example"verified_fix"
Guarantee and backing fields
guarantee_class
deterministic_replay, metered_attested, or asserted: how the buyer can recheck the result. Backing requirements apply to every value.
Example"deterministic_replay"
evidence_class
asserted, observed, or verified: the claim-to-evidence classification, set independently of guarantee_class.
Example"verified"
evidence_receipt_ids
At most 256 unique bounded identifiers. At least one is required when either class is other than asserted, or when runtime_assurance_tier is present.
Example["r-1"]
evidence_checkpoint_ref
The signed Merkle checkpoint used to check receipt inclusion.
Example"ckpt-1"
evidence_cost
A closed object requiring units and currency. Verifiable against the receipts in full-receipt mode; otherwise a seller assertion until audit.
Example{ "units": 4200, "currency": "USD" }
evidence_cost.units
0 through 9007199254740991 inclusive.
evidence_cost.currency
Exactly three uppercase ASCII letters, matching ^[A-Z]{3}$. The schema checks the format only; membership in a currency registry is outside it.
runtime_assurance_tier
basic, attested, or verified. An unset tier is omitted; none and null are both rejected.
ExampleOmitted in the verified-fix fixture
replay_recipe_sha256
Required for deterministic_replay and optional for the other guarantees. Commits to the canonical replay recipe.
intent_commitment_receipt_id
A pre-outcome commitment receipt. It earns a pricing uplift only after semantic verification, described under intent commitment validation.
Reveal and listing fields
payload_sha256
Commitment to the canonical reveal envelope delivered to a buyer, rather than the raw payload bytes.
payload_media_type
Media type of the committed payload, such as application/json.
Example"text/x-diff"
bond_ref
An opaque collateral reference at publication. Admission resolves the live backing; the reference itself is neither a requirement id nor verified collateral.
Example"bond-req-1"
status_feed_ref
The oracle feed that publishes the finding’s retraction and status.
Example"finding-status/test"
license_ref
License terms for the reveal.
price_hint_ref
A cycle-free pricing policy authored before the finding. Absent for the finding-scoped listing pricing hint; see listing actor kind.
Issuer and signature fields
issuer
Exactly 64 lowercase hex characters. Semantic validation rejects weak keys.
Example"fd172438…35e9f618"
issued_at
The issuance timestamp, 0 through 9007199254740991 inclusive.
Example1784880000
expires_at
The expiry timestamp, in the same range. Semantic validation requires expires_at > issued_at; checking current liveness is the caller’s step, outside structural validation.
Example1792656000
signature
Exactly 128 lowercase hex characters, over the canonical body with signature cleared and the derived finding_id retained.
Verified-fix fixture
chio proof fixture generate finding-verified-fix-basic writes a schema-valid chio.finding.v1 document. Its reference values (r-1, ckpt-1, bond-req-1, and finding-status/test) are short so the structure reads at a glance.
chio proof fixture generate finding-verified-fix-basic --out ./finding{
"schema": "chio.finding.v1",
"finding_id": "dc721f80b183eb65945ba4754d9ba6b131d3c8309d8a7bff710f4160b9d7d817",
"descriptor": {
"topic": "repo:backbay/chio#test-failure",
"context_sha256": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"outcome_class": "verified_fix"
},
"guarantee_class": "deterministic_replay",
"payload_sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
"payload_media_type": "text/x-diff",
"evidence_receipt_ids": [
"r-1"
],
"evidence_checkpoint_ref": "ckpt-1",
"evidence_cost": {
"units": 4200,
"currency": "USD"
},
"evidence_class": "verified",
"replay_recipe_sha256": "cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
"bond_ref": "bond-req-1",
"status_feed_ref": "finding-status/test",
"issuer": "fd1724385aa0c75b64fb78cd602fa1d991fdebf76b13c58ed702eac835e9f618",
"issued_at": 1784880000,
"expires_at": 1792656000,
"signature": "d1620bf0c941fdafe410104b49b60c764dad7a099af570f5b0b1f08c5abaa13ac5ffd23852352a06d813c5a93e19553d41689b6978c0e89ed0a97e6c67aa3a0e"
}replay_recipe_sha256 is present because guarantee_class is deterministic_replay, the one value the schema requires it for. The optional fields runtime_assurance_tier, intent_commitment_receipt_id, license_ref, and price_hint_ref are absent, and each omission is legal.
Guarantee and evidence classes
guarantee_class says how the buyer can recheck a result; evidence_class classifies the backing for the claim. Consumers read both fields and validate the backing each combination requires:
deterministic_replayrequires a bound replay recipe the verifier can check.metered_attestedrequires authenticated receipts, checkpoint membership, and metered-exposure backing.observedandverifiedevidence both require authenticated receipts and checkpoint membership.
A finding may pair verified evidence with an asserted guarantee. The evidence label establishes neither that the buyer can replay the result nor an exemption from the backing checks.
Reveal commitment
payload_sha256 is the digest of the canonical reveal envelope delivered to a buyer. Paid reveal specifies the envelope shape and its settlement binding.
Evidence, cost, and runtime assurance
evidence_receipt_ids and evidence_checkpoint_ref point at the backing signed receipts and the Merkle checkpoint used to verify their inclusion. A valid Merkle path establishes membership in the signed checkpoint; its timestamp and signer standing need their own trust checks. In full-receipt mode evidence_cost is verifiable against those receipts; in any other mode it is a seller assertion until audit.
Replay and runtime assurance
replay_recipe_sha256 is required when guarantee_class is deterministic_replay. runtime_assurance_tier draws on the closed vocabulary of runtime assurance elsewhere in Chio, minus its default: a finding carries basic, attested, or verified, and an untiered finding omits the field instead of encoding none.
Intent commitment validation
intent_commitment_receipt_id earns a pricing uplift only when semantically verified: the referenced receipt resolves, it precedes every evidence receipt on the finding, and its parameter_hash commits to this finding’s context_sha256. Presence alone earns nothing.
Collateral backing
bond_ref is resolved at admission against a collateral-store snapshot. The fee schedule declares the bond class, amount, currency, and slashable flag, and its digests are separate fields in the signed backing. A fee requirement or a BondBacked listing label creates no exclusive allocation for a finding.
Live backing is chio.finding.bond-backing.v1. The collateral authority binds it to the seller key, the listing and finding ids, the fee-requirement digest, class and currency, the locked amount, the maximum sale exposure, the claim, audit, appeal, and settlement horizons, and a unique allocation id. Admission rejects stale, wrong-owner, wrong-currency, underfunded, or already encumbered backing; Pricing a finding covers sizing.
Listing actor kind
A finding lists under an existing subject kind. GenericListingActorKind (see Discovery) is closed and wire-frozen at four variants: ToolServer, CredentialIssuer, CredentialVerifier, and LiabilityProvider. The seller’s tool server is listed as ToolServer, and that listing’s metadata_url and resolution_url point at the Finding record.
The finding’s identity is in the listing pricing hint, at a capability_scope of finding:<finding_id>. That hint cannot be the target of price_hint_ref: it signs finding:<finding_id>, so its envelope digest cannot also enter the preimage the finding id is computed over. Admission requires price_hint_ref absent for the finding-scoped projection and binds both exact signed envelopes itself, which is why the field exists only for a cycle-free pricing policy authored before the finding.
Validation and compatibility
The v1 schema closes the record and its nested objects to unknown fields. Schema validation checks structure, enum values, encodings, bounds, and conditionally required fields. Semantic validation adds the content address, key strength, and expiry ordering; callers establish current validity and verify required evidence against trusted authorities.
An empty receipt array is allowed only when both classes are asserted and the runtime assurance tier is absent. A deterministic_replay record without replay_recipe_sha256 fails the schema. Omitting an optional field is valid; encoding it as null fails.
spec/schemas/chio-finding/v1/finding.schema.jsondefines field types, required members, and structural constraints.crates/economy/chio-finding/src/types.rsdefines the signed record;crates/economy/chio-finding/src/validate.rschecks semantic structure.crates/trust/chio-finding-verifier/src/verify.rschecks guarantee and evidence backing;crates/trust/chio-finding-verifier/src/checkpoints.rschecks checkpoint membership and trust.