{
"id": "app.matakite.resolution",
"defs": {
"main": {
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"subject",
"outcome",
"createdAt"
],
"properties": {
"note": {
"type": "string",
"maxLength": 3000,
"description": "Optional reasoning, especially recommended for ambiguous/annulled outcomes.",
"maxGraphemes": 300
},
"outcome": {
"type": "string",
"description": "Semantic outcome. For binary questions this is the resolved value. For non-binary questions a 'yes' outcome pairs with a typed value field (resolvedOption for multi, resolvedValue for numeric, resolvedDate for date); 'ambiguous'/'annulled' apply to every question type and carry no typed value.",
"knownValues": [
"yes",
"no",
"ambiguous",
"annulled"
]
},
"subject": {
"ref": "com.atproto.repo.strongRef",
"type": "ref",
"description": "The question being resolved (uri + cid). The cid pins the question version the outcome applies to."
},
"evidence": {
"type": "array",
"items": {
"ref": "app.matakite.question#source",
"type": "ref"
},
"maxLength": 10,
"description": "Sources supporting the outcome, captured at resolution time. Archive links encouraged; sources rot."
},
"createdAt": {
"type": "string",
"format": "datetime"
},
"resolvedDate": {
"type": "string",
"format": "datetime",
"description": "For a date question, the UTC datetime the event occurred, within the question's date bounds. Optional and only meaningful for date resolutions. Additive per scoring-spec v0.3 §1."
},
"resolvedValue": {
"type": "string",
"description": "For a numeric question, the decimal-string value the question resolved to, within the question's numeric bounds. Optional and only meaningful for numeric resolutions. Additive per scoring-spec v0.3 §1."
},
"resolvedOption": {
"type": "string",
"maxLength": 640,
"minLength": 1,
"description": "For a mutually exclusive multi question (sumToOne), the stable option id from the subject question's multi.optionIds that resolved yes. Optional and only meaningful for multi resolutions; ignored for other question types. Additive per scoring-spec v0.3 §1.",
"maxGraphemes": 64,
"minGraphemes": 1
}
}
},
"description": "An outcome determination for a question. Resolution is data, not authority: any DID can write one, and appviews choose which resolvers to trust and display (default: the question's designated resolver). Outcome semantics follow Metaculus: 'ambiguous' = reality could not be determined under the criteria; 'annulled' = the question itself was defective (underspecified, assumptions violated). Both are excluded from forecaster Brier scoring; 'annulled' counts against the question author's quality record."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}