{
"id": "org.simocracy.proposalContext",
"defs": {
"main": {
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"subject",
"context",
"createdAt"
],
"properties": {
"context": {
"refs": [
"#gatheringContext",
"#ftcSfContext"
],
"type": "union",
"description": "The container this proposal belongs to."
},
"subject": {
"ref": "com.atproto.repo.strongRef",
"type": "ref",
"description": "The activity record this context applies to (org.hypercerts.claim.activity)."
},
"createdAt": {
"type": "string",
"format": "datetime"
}
}
},
"description": "Sidecar associating a hypercerts activity (proposal) with its Simocracy context (a gathering or a Frontier Tower SF floor). Joined by `subject.uri`. Multiple records may exist per subject; precedence: a sidecar in the proposer's PDS (subject's repo DID == sidecar's repo DID) outranks one in any other PDS, and within a tier the latest `createdAt` wins."
},
"ftcSfContext": {
"type": "object",
"required": [
"floorNumber"
],
"properties": {
"floorNumber": {
"type": "integer",
"minimum": 1,
"description": "Floor number in the static FtC SF tower config."
}
},
"description": "Proposal belongs to a Frontier Tower SF floor."
},
"gatheringContext": {
"type": "object",
"required": [
"gathering"
],
"properties": {
"gathering": {
"ref": "com.atproto.repo.strongRef",
"type": "ref",
"description": "Strong reference to the org.simocracy.gathering record."
}
},
"description": "Proposal belongs to a gathering."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}