org.simocracy.gathering

gainforest.earth

Schema Diff

+10 -0

From

CID
bafyreiheu3bpiuv...
Indexed At
2026-05-05 11:47 UTC
View this version

To

CID
bafyreieocuy3itj...
Indexed At
2026-08-18 03:00 UTC
View this version

Compatibility Analysis

Backward Compatible

Backward compatible. 2 non-breaking changes.

Non-Breaking Changes (2)
  • AddedVertex AddedVertex { vertex_id: "org.simocracy.gathering:body.logo" }
  • AddedEdge AddedEdge { src: "org.simocracy.gathering:body", tgt: "org.simocracy.gathering:body.logo", kind: "prop", name: Some("logo") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "org.simocracy.gathering:body.logo" }

Additional Notes

  • Non-breaking: AddedEdge { src: "org.simocracy.gathering:body", tgt: "org.simocracy.gathering:body.logo", kind: "prop", name: Some("logo") }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "main": {
5 5
      "description": "A governance or funding event that users can create and participate in.",
6 6
      "key": "tid",
7 7
      "record": {
8 8
        "properties": {
9 9
          "allocationMechanism": {
10 10
            "description": "The mechanism used to allocate the treasury among proposals.",
11 11
            "knownValues": [
12 12
              "quadratic-funding",
13 13
              "s-process",
14 14
              "condorcet"
15 15
            ],
16 16
            "type": "string"
17 17
          },
18 18
          "appRoute": {
19 19
            "description": "Internal app route path (e.g. /senate, /ftc-sf) for built-in events",
20 20
            "maxLength": 1000,
21 21
            "type": "string"
22 22
          },
23 23
          "buildingImageUrl": {
24 24
            "description": "URL of the building/venue image for this gathering. Can be an absolute URL or a path relative to the app (e.g. /senate.png, /frontiertower.webp).",
25 25
            "maxLength": 5000,
26 26
            "type": "string"
27 27
          },
28 28
          "collectionUri": {
29 29
            "description": "AT-URI of an org.hypercerts.collection record for this gathering's proposals.",
30 30
            "maxLength": 5000,
31 31
            "type": "string"
32 32
          },
33 33
          "context": {
34 34
            "description": "Background / briefing material for sims participating in this event. Shown to AI sims as event context so they can act efficiently (e.g. prior decisions, mission, constraints, data, links). Unbounded — length constrained only by ATProto's per-record size limit.",
35 35
            "type": "string"
36 36
          },
37 37
          "contextFacets": {
38 38
            "description": "Rich text facets for context",
39 39
            "items": {
40 40
              "ref": "app.bsky.richtext.facet",
41 41
              "type": "ref"
42 42
            },
43 43
            "type": "array"
44 44
          },
45 45
          "councilSims": {
46 46
            "description": "Array of StrongRefs to sim records appointed to this gathering's council by the event creator.",
47 47
            "items": {
48 48
              "ref": "com.atproto.repo.strongRef",
49 49
              "type": "ref"
50 50
            },
51 51
            "maxLength": 50,
52 52
            "type": "array"
53 53
          },
54 54
          "createdAt": {
55 55
            "description": "Timestamp when the record was created",
56 56
            "format": "datetime",
57 57
            "type": "string"
58 58
          },
59 59
          "dates": {
60 60
            "description": "Human-readable date range (e.g. March 14-15, 2026)",
61 61
            "maxGraphemes": 100,
62 62
            "maxLength": 1000,
63 63
            "type": "string"
64 64
          },
65 65
          "description": {
66 66
            "description": "Full event description with details, agenda, etc.",
67 67
            "maxGraphemes": 3000,
68 68
            "maxLength": 30000,
69 69
            "type": "string"
70 70
          },
71 71
          "descriptionFacets": {
72 72
            "description": "Rich text facets for description",
73 73
            "items": {
74 74
              "ref": "app.bsky.richtext.facet",
75 75
              "type": "ref"
76 76
            },
77 77
            "type": "array"
78 78
          },
79 79
          "gatheringType": {
80 80
            "description": "Type of gathering",
81 81
            "knownValues": [
82 82
              "funding",
83 83
              "governance",
84 84
              "hybrid"
85 85
            ],
86 86
            "type": "string"
87 87
          },
88 88
          "image": {
89 89
            "accept": [
90 90
              "image/png",
91 91
              "image/jpeg",
92 92
              "image/webp"
93 93
            ],
94 94
            "description": "Cover image for the event (ATProto blob)",
95 95
            "maxSize": 1000000,
96 96
            "type": "blob"
97 97
          },
98 98
          "location": {
99 99
            "description": "Physical or virtual location",
100 100
            "maxGraphemes": 300,
101 101
            "maxLength": 3000,
102 102
            "type": "string"
103 103
          },
104 +
          "logo": {
105 +
            "accept": [
106 +
              "image/png",
107 +
              "image/jpeg",
108 +
              "image/webp"
109 +
            ],
110 +
            "description": "Square community logo displayed in navigation rails, pickers, and community cards.",
111 +
            "maxSize": 1000000,
112 +
            "type": "blob"
113 +
          },
104 114
          "name": {
105 115
            "description": "Display name of the event",
106 116
            "maxGraphemes": 300,
107 117
            "maxLength": 3000,
108 118
            "type": "string"
109 119
          },
110 120
          "proposalScope": {
111 121
            "description": "Who can submit proposals to this gathering. council=only users who own at least one sim on the appointed council (event creator always allowed), all=anyone signed in (default).",
112 122
            "knownValues": [
113 123
              "council",
114 124
              "all"
115 125
            ],
116 126
            "type": "string"
117 127
          },
118 128
          "shortDescription": {
119 129
            "description": "Brief summary for cards and previews",
120 130
            "maxGraphemes": 300,
121 131
            "maxLength": 3000,
122 132
            "type": "string"
123 133
          },
124 134
          "shortDescriptionFacets": {
125 135
            "description": "Rich text facets for shortDescription",
126 136
            "items": {
127 137
              "ref": "app.bsky.richtext.facet",
128 138
              "type": "ref"
129 139
            },
130 140
            "type": "array"
131 141
          },
132 142
          "simScope": {
133 143
            "description": "Which sims walk around in this gathering's world. council=only appointed council sims (default), all=every sim in Simocracy.",
134 144
            "knownValues": [
135 145
              "council",
136 146
              "all"
137 147
            ],
138 148
            "type": "string"
139 149
          },
140 150
          "simSize": {
141 151
            "description": "Size of sim avatars in this gathering's world. large=48px, normal=32px (senate default), small=20px (ftc-sf default).",
142 152
            "knownValues": [
143 153
              "large",
144 154
              "normal",
145 155
              "small"
146 156
            ],
147 157
            "type": "string"
148 158
          },
149 159
          "status": {
150 160
            "description": "Current status of the gathering",
151 161
            "knownValues": [
152 162
              "application",
153 163
              "upcoming",
154 164
              "active",
155 165
              "completed"
156 166
            ],
157 167
            "type": "string"
158 168
          },
159 169
          "suggestedInterviewTemplates": {
160 170
            "description": "Optional: interview templates this gathering suggests to prospective council members.",
161 171
            "items": {
162 172
              "ref": "com.atproto.repo.strongRef",
163 173
              "type": "ref"
164 174
            },
165 175
            "maxLength": 5,
166 176
            "type": "array"
167 177
          },
168 178
          "treasuryUsd": {
169 179
            "description": "Optional agentic treasury amount in USD that the council governs.",
170 180
            "minimum": 0,
171 181
            "type": "integer"
172 182
          },
173 183
          "updatedAt": {
174 184
            "description": "Timestamp when the gathering was last updated",
175 185
            "format": "datetime",
176 186
            "type": "string"
177 187
          },
178 188
          "url": {
179 189
            "description": "External link (e.g. Luma registration page)",
180 190
            "maxLength": 5000,
181 191
            "type": "string"
182 192
          },
183 193
          "visibility": {
184 194
            "description": "Whether this gathering is listed in public overviews. public=shown in the events gallery, profile pages, etc. (default). private=hidden from every overview list; only the creator sees it in their own listings, but anyone with the direct AT-URI / DID-PLC link or canonical slug URL can still load the detail page.",
185 195
            "knownValues": [
186 196
              "public",
187 197
              "private"
188 198
            ],
189 199
            "type": "string"
190 200
          }
191 201
        },
192 202
        "required": [
193 203
          "name",
194 204
          "gatheringType",
195 205
          "status",
196 206
          "createdAt"
197 207
        ],
198 208
        "type": "object"
199 209
      },
200 210
      "type": "record"
201 211
    }
202 212
  },
203 213
  "id": "org.simocracy.gathering",
204 214
  "lexicon": 1
205 215
}

Compare Other Versions

Lexicon Garden

@