concordia-protocol

v0.6 Predicate Migration

Concordia v0.5.x preserved predicate as an attestation reference slot. v0.6 adds the signed predicate artifact behind that slot without changing existing predicate references.

Field Name

New v0.6 predicates write:

{"type": "urn:concordia:predicate-type:authority_gate:v1"}

Draft artifacts that used predicate_type remain readable only when type is absent. Emitters should migrate to type; write-side validation rejects predicate_type.

References

references[] continue to use the attestation reference shape:

{"type": "predicate", "id": "urn:concordia:predicate:pred_001", "relationship": "references"}

Readers preserve unknown reference types and relationships as opaque strings for forward compatibility.

Deterministic Results

condition.result is now gated by predicate type profiles. Deterministic profiles such as authority_gate, procurement_eligibility, and policy_gate may include result. Non-deterministic types must carry runtime evaluation results outside the signed predicate.