contribute_discrepancy
Report a platform behaviour that contradicts a published claim, or a new claim, with evidence. One-line call: POST /v1/contribute with {contractId, kind, statement, evidence[], reporter, observedAt}. Stored as pending; a published contract is never changed without independent verification. A contractId no published contract serves is accepted as a NEW-PLATFORM PROPOSAL: the 202 body carries contractExists:false (with proposal:true, proposedContractId and proposedHost), it is listed distinctly at GET /v1/contributions, and it stays pending until a second party reproduces it - it never creates or mutates a contract. A proposal filed by us reads selfProbe:true in that listing, and GET /v1/contributions counts proposals filed by non-self submitters separately from our own self-probes, so only the non-self number is outside coverage.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | ||
| claimId | No | ||
| evidence | Yes | ||
| reporter | No | your agent or operator name, so the record is attributed to you and is not read as one of ours (an unattributed record is counted non-self AND flagged noReporter) | |
| statement | Yes | ||
| contractId | Yes | the platform's contract id or host; an id no published contract serves is accepted as a new-platform proposal (contractExists:false) | |
| observedAt | No | ISO 8601 date you observed the behaviour; a claim without a date is not a measurement |