Open specification · version 1
QarainTrace v1
An open format for one traced claim: where it was checked, what stands behind it, what is missing, and — the part most formats skip — when it stops being safe to rely on.
The format marks its own limits: a record without a gaps array is not a valid trace.
Evidence has a half-life
Most evidence formats record what was true. Few record when it stops being safe to assume. A registry entry changes; an account is closed; a permit lapses. QarainTrace makes expiry a first-class part of the record: every trace states when it was observed, how volatile its subject is, and by when it should be revalidated.
A record that admits its own decay is worth more than a record that pretends to be permanent.
The record
| Field | Type | Meaning |
|---|---|---|
claim | string | The claim under examination, quoted or normalized. |
jurisdiction | string | ISO country code of the legal regime the claim lives under. |
sources | array | Each source: name, class per the published method ladder (1 = primary and independent; higher numbers = less independent), independence flag, and what it can prove. |
evidence_posture | enum | verify · investigate · hold. Never a verdict; a reading posture. |
gaps | array | What no available source supports. An empty array must mean examined-and-none, never unexamined. |
contradictions | array | Where sources disagree, stated as pairs. |
safe_questions | array | Questions the reader can ask a seller, lawyer, or authority without risk. |
observed_at | date | When the evidence state was read. |
volatility_class | enum | stable · seasonal · volatile — how fast this kind of evidence decays. |
revalidate_by | date | The date after which the record should be re-checked, derived from volatility. |
superseded_by | url|null | The newer record, when one exists. A superseded trace is kept, not deleted. |
validity_scope | string | What the record covers — one project, one market, one instrument class. |
method_version | string | The method version the trace was produced under. |
Status and changes
This is version 1, at a stable URL. Substantive changes produce a new version at a new URL; changes to this page are logged on the corrections page like any other correction.
Reference implementation
The escrow trace on this site is the reference implementation, and a machine-readable instance is published at /api/public/v1/sample-trace.json. The sample page shows the same structure with fictional data.
This specification may be implemented and cited freely with attribution. It claims no standard-body status; it earns use or it does not.