org.simocracy.gathering

gainforest.earth

Schema Diff

+31 -0

From

CID
bafyreib2yuer6ci...
Indexed At
2026-04-07 00:29 UTC
View this version

To

CID
bafyreidprfqipmq...
Indexed At
2026-04-24 18:20 UTC
View this version

Compatibility Analysis

Backward Compatible

Backward compatible. 14 non-breaking changes.

Non-Breaking Changes (14)
  • AddedVertex AddedVertex { vertex_id: "org.simocracy.gathering:body.context" }
  • AddedVertex AddedVertex { vertex_id: "org.simocracy.gathering:body.contextFacets" }
  • AddedVertex AddedVertex { vertex_id: "org.simocracy.gathering:body.contextFacets:items" }
  • AddedVertex AddedVertex { vertex_id: "org.simocracy.gathering:body.simScope" }
  • AddedVertex AddedVertex { vertex_id: "org.simocracy.gathering:body.suggestedInterviewTemplates" }
  • AddedVertex AddedVertex { vertex_id: "org.simocracy.gathering:body.suggestedInterviewTemplates:items" }
  • AddedEdge AddedEdge { src: "org.simocracy.gathering:body", tgt: "org.simocracy.gathering:body.context", kind: "prop", name: Some("context") }
  • AddedEdge AddedEdge { src: "org.simocracy.gathering:body", tgt: "org.simocracy.gathering:body.contextFacets", kind: "prop", name: Some("contextFacets") }
  • AddedEdge AddedEdge { src: "org.simocracy.gathering:body", tgt: "org.simocracy.gathering:body.simScope", kind: "prop", name: Some("simScope") }
  • AddedEdge AddedEdge { src: "org.simocracy.gathering:body", tgt: "org.simocracy.gathering:body.suggestedInterviewTemplates", kind: "prop", name: Some("suggestedInterviewTemplates") }
  • AddedEdge AddedEdge { src: "org.simocracy.gathering:body.contextFacets", tgt: "org.simocracy.gathering:body.contextFacets:items", kind: "items", name: None }
  • AddedEdge AddedEdge { src: "org.simocracy.gathering:body.contextFacets:items", tgt: "app.bsky.richtext.facet", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "org.simocracy.gathering:body.suggestedInterviewTemplates", tgt: "org.simocracy.gathering:body.suggestedInterviewTemplates:items", kind: "items", name: None }
  • AddedEdge AddedEdge { src: "org.simocracy.gathering:body.suggestedInterviewTemplates:items", tgt: "com.atproto.repo.strongRef", kind: "ref", name: None }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "org.simocracy.gathering:body.context" }
  • AddedVertex { vertex_id: "org.simocracy.gathering:body.contextFacets" }
  • AddedVertex { vertex_id: "org.simocracy.gathering:body.contextFacets:items" }
  • AddedVertex { vertex_id: "org.simocracy.gathering:body.simScope" }
  • AddedVertex { vertex_id: "org.simocracy.gathering:body.suggestedInterviewTemplates" }
  • AddedVertex { vertex_id: "org.simocracy.gathering:body.suggestedInterviewTemplates:items" }

Additional Notes

  • Non-breaking: AddedEdge { src: "org.simocracy.gathering:body", tgt: "org.simocracy.gathering:body.context", kind: "prop", name: Some("context") }
  • Non-breaking: AddedEdge { src: "org.simocracy.gathering:body", tgt: "org.simocracy.gathering:body.contextFacets", kind: "prop", name: Some("contextFacets") }
  • Non-breaking: AddedEdge { src: "org.simocracy.gathering:body", tgt: "org.simocracy.gathering:body.simScope", kind: "prop", name: Some("simScope") }
  • Non-breaking: AddedEdge { src: "org.simocracy.gathering:body", tgt: "org.simocracy.gathering:body.suggestedInterviewTemplates", kind: "prop", name: Some("suggestedInterviewTemplates") }
  • Non-breaking: AddedEdge { src: "org.simocracy.gathering:body.contextFacets", tgt: "org.simocracy.gathering:body.contextFacets:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "org.simocracy.gathering:body.contextFacets:items", tgt: "app.bsky.richtext.facet", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "org.simocracy.gathering:body.suggestedInterviewTemplates", tgt: "org.simocracy.gathering:body.suggestedInterviewTemplates:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "org.simocracy.gathering:body.suggestedInterviewTemplates:items", tgt: "com.atproto.repo.strongRef", kind: "ref", name: None }
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 +
          "context": {
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).",
35 +
            "maxGraphemes": 5000,
36 +
            "maxLength": 50000,
37 +
            "type": "string"
38 +
          },
39 +
          "contextFacets": {
40 +
            "description": "Rich text facets for context",
41 +
            "items": {
42 +
              "ref": "app.bsky.richtext.facet",
43 +
              "type": "ref"
44 +
            },
45 +
            "type": "array"
46 +
          },
33 47
          "councilSims": {
34 48
            "description": "Array of StrongRefs to sim records appointed to this gathering's council by the event creator.",
35 49
            "items": {
36 50
              "ref": "com.atproto.repo.strongRef",
37 51
              "type": "ref"
38 52
            },
39 53
            "maxLength": 50,
40 54
            "type": "array"
41 55
          },
42 56
          "createdAt": {
43 57
            "description": "Timestamp when the record was created",
44 58
            "format": "datetime",
45 59
            "type": "string"
46 60
          },
47 61
          "dates": {
48 62
            "description": "Human-readable date range (e.g. March 14-15, 2026)",
49 63
            "maxGraphemes": 100,
50 64
            "maxLength": 1000,
51 65
            "type": "string"
52 66
          },
53 67
          "description": {
54 68
            "description": "Full event description with details, agenda, etc.",
55 69
            "maxGraphemes": 3000,
56 70
            "maxLength": 30000,
57 71
            "type": "string"
58 72
          },
59 73
          "descriptionFacets": {
60 74
            "description": "Rich text facets for description",
61 75
            "items": {
62 76
              "ref": "app.bsky.richtext.facet",
63 77
              "type": "ref"
64 78
            },
65 79
            "type": "array"
66 80
          },
67 81
          "gatheringType": {
68 82
            "description": "Type of gathering",
69 83
            "knownValues": [
70 84
              "funding",
71 85
              "governance",
72 86
              "hybrid"
73 87
            ],
74 88
            "type": "string"
75 89
          },
76 90
          "image": {
77 91
            "accept": [
78 92
              "image/png",
79 93
              "image/jpeg",
80 94
              "image/webp"
81 95
            ],
82 96
            "description": "Cover image for the event (ATProto blob)",
83 97
            "maxSize": 1000000,
84 98
            "type": "blob"
85 99
          },
86 100
          "location": {
87 101
            "description": "Physical or virtual location",
88 102
            "maxGraphemes": 300,
89 103
            "maxLength": 3000,
90 104
            "type": "string"
91 105
          },
92 106
          "name": {
93 107
            "description": "Display name of the event",
94 108
            "maxGraphemes": 300,
95 109
            "maxLength": 3000,
96 110
            "type": "string"
97 111
          },
98 112
          "shortDescription": {
99 113
            "description": "Brief summary for cards and previews",
100 114
            "maxGraphemes": 300,
101 115
            "maxLength": 3000,
102 116
            "type": "string"
103 117
          },
104 118
          "shortDescriptionFacets": {
105 119
            "description": "Rich text facets for shortDescription",
106 120
            "items": {
107 121
              "ref": "app.bsky.richtext.facet",
108 122
              "type": "ref"
109 123
            },
110 124
            "type": "array"
111 125
          },
126 +
          "simScope": {
127 +
            "description": "Which sims walk around in this gathering's world. council=only appointed council sims (default), all=every sim in Simocracy.",
128 +
            "knownValues": [
129 +
              "council",
130 +
              "all"
131 +
            ],
132 +
            "type": "string"
133 +
          },
112 134
          "simSize": {
113 135
            "description": "Size of sim avatars in this gathering's world. large=48px, normal=32px (senate default), small=20px (ftc-sf default).",
114 136
            "knownValues": [
115 137
              "large",
116 138
              "normal",
117 139
              "small"
118 140
            ],
119 141
            "type": "string"
120 142
          },
121 143
          "status": {
122 144
            "description": "Current status of the gathering",
123 145
            "knownValues": [
124 146
              "application",
125 147
              "upcoming",
126 148
              "active",
127 149
              "completed"
128 150
            ],
129 151
            "type": "string"
130 152
          },
153 +
          "suggestedInterviewTemplates": {
154 +
            "description": "Optional: interview templates this gathering suggests to prospective council members.",
155 +
            "items": {
156 +
              "ref": "com.atproto.repo.strongRef",
157 +
              "type": "ref"
158 +
            },
159 +
            "maxLength": 5,
160 +
            "type": "array"
161 +
          },
131 162
          "treasuryUsd": {
132 163
            "description": "Optional agentic treasury amount in USD that the council governs.",
133 164
            "minimum": 0,
134 165
            "type": "integer"
135 166
          },
136 167
          "url": {
137 168
            "description": "External link (e.g. Luma registration page)",
138 169
            "maxLength": 5000,
139 170
            "type": "string"
140 171
          }
141 172
        },
142 173
        "required": [
143 174
          "name",
144 175
          "gatheringType",
145 176
          "status",
146 177
          "createdAt"
147 178
        ],
148 179
        "type": "object"
149 180
      },
150 181
      "type": "record"
151 182
    }
152 183
  },
153 184
  "id": "org.simocracy.gathering",
154 185
  "lexicon": 1
155 186
}

Compare Other Versions

Lexicon Garden

@