org.simocracy.gathering

gainforest.earth

Schema Diff

+14 -0

From

CID
bafyreifec6w43kr...
Indexed At
2026-04-02 17:01 UTC
View this version

To

CID
bafyreie6k7qcxmf...
Indexed At
2026-04-06 02:15 UTC
View this version

Compatibility Analysis

Backward Compatible

Backward compatible. 8 non-breaking changes.

Non-Breaking Changes (8)
  • AddedVertex AddedVertex { vertex_id: "com.atproto.repo.strongRef" }
  • AddedVertex AddedVertex { vertex_id: "org.simocracy.gathering:body.collectionUri" }
  • AddedVertex AddedVertex { vertex_id: "org.simocracy.gathering:body.councilSims" }
  • AddedVertex AddedVertex { vertex_id: "org.simocracy.gathering:body.councilSims:items" }
  • AddedEdge AddedEdge { src: "org.simocracy.gathering:body", tgt: "org.simocracy.gathering:body.collectionUri", kind: "prop", name: Some("collectionUri") }
  • AddedEdge AddedEdge { src: "org.simocracy.gathering:body", tgt: "org.simocracy.gathering:body.councilSims", kind: "prop", name: Some("councilSims") }
  • AddedEdge AddedEdge { src: "org.simocracy.gathering:body.councilSims", tgt: "org.simocracy.gathering:body.councilSims:items", kind: "items", name: None }
  • AddedEdge AddedEdge { src: "org.simocracy.gathering:body.councilSims:items", tgt: "com.atproto.repo.strongRef", kind: "ref", name: None }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "com.atproto.repo.strongRef" }
  • AddedVertex { vertex_id: "org.simocracy.gathering:body.collectionUri" }
  • AddedVertex { vertex_id: "org.simocracy.gathering:body.councilSims" }
  • AddedVertex { vertex_id: "org.simocracy.gathering:body.councilSims:items" }

Additional Notes

  • Non-breaking: AddedEdge { src: "org.simocracy.gathering:body", tgt: "org.simocracy.gathering:body.collectionUri", kind: "prop", name: Some("collectionUri") }
  • Non-breaking: AddedEdge { src: "org.simocracy.gathering:body", tgt: "org.simocracy.gathering:body.councilSims", kind: "prop", name: Some("councilSims") }
  • Non-breaking: AddedEdge { src: "org.simocracy.gathering:body.councilSims", tgt: "org.simocracy.gathering:body.councilSims:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "org.simocracy.gathering:body.councilSims: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
          "appRoute": {
10 10
            "description": "Internal app route path (e.g. /senate, /ftc-sf) for built-in events",
11 11
            "maxLength": 1000,
12 12
            "type": "string"
13 13
          },
14 14
          "buildingImageUrl": {
15 15
            "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).",
16 16
            "maxLength": 5000,
17 17
            "type": "string"
18 18
          },
19 +
          "collectionUri": {
20 +
            "description": "AT-URI of an org.hypercerts.collection record for this gathering's proposals.",
21 +
            "maxLength": 5000,
22 +
            "type": "string"
23 +
          },
24 +
          "councilSims": {
25 +
            "description": "Array of StrongRefs to sim records appointed to this gathering's council by the event creator.",
26 +
            "items": {
27 +
              "ref": "com.atproto.repo.strongRef",
28 +
              "type": "ref"
29 +
            },
30 +
            "maxLength": 50,
31 +
            "type": "array"
32 +
          },
19 33
          "createdAt": {
20 34
            "description": "Timestamp when the record was created",
21 35
            "format": "datetime",
22 36
            "type": "string"
23 37
          },
24 38
          "dates": {
25 39
            "description": "Human-readable date range (e.g. March 14-15, 2026)",
26 40
            "maxGraphemes": 100,
27 41
            "maxLength": 1000,
28 42
            "type": "string"
29 43
          },
30 44
          "description": {
31 45
            "description": "Full event description with details, agenda, etc.",
32 46
            "maxGraphemes": 3000,
33 47
            "maxLength": 30000,
34 48
            "type": "string"
35 49
          },
36 50
          "descriptionFacets": {
37 51
            "description": "Rich text facets for description",
38 52
            "items": {
39 53
              "ref": "app.bsky.richtext.facet",
40 54
              "type": "ref"
41 55
            },
42 56
            "type": "array"
43 57
          },
44 58
          "gatheringType": {
45 59
            "description": "Type of gathering",
46 60
            "knownValues": [
47 61
              "funding",
48 62
              "governance",
49 63
              "hybrid"
50 64
            ],
51 65
            "type": "string"
52 66
          },
53 67
          "image": {
54 68
            "accept": [
55 69
              "image/png",
56 70
              "image/jpeg",
57 71
              "image/webp"
58 72
            ],
59 73
            "description": "Cover image for the event (ATProto blob)",
60 74
            "maxSize": 1000000,
61 75
            "type": "blob"
62 76
          },
63 77
          "location": {
64 78
            "description": "Physical or virtual location",
65 79
            "maxGraphemes": 300,
66 80
            "maxLength": 3000,
67 81
            "type": "string"
68 82
          },
69 83
          "name": {
70 84
            "description": "Display name of the event",
71 85
            "maxGraphemes": 300,
72 86
            "maxLength": 3000,
73 87
            "type": "string"
74 88
          },
75 89
          "shortDescription": {
76 90
            "description": "Brief summary for cards and previews",
77 91
            "maxGraphemes": 300,
78 92
            "maxLength": 3000,
79 93
            "type": "string"
80 94
          },
81 95
          "shortDescriptionFacets": {
82 96
            "description": "Rich text facets for shortDescription",
83 97
            "items": {
84 98
              "ref": "app.bsky.richtext.facet",
85 99
              "type": "ref"
86 100
            },
87 101
            "type": "array"
88 102
          },
89 103
          "simSize": {
90 104
            "description": "Size of sim avatars in this gathering's world. large=48px, normal=32px (senate default), small=20px (ftc-sf default).",
91 105
            "knownValues": [
92 106
              "large",
93 107
              "normal",
94 108
              "small"
95 109
            ],
96 110
            "type": "string"
97 111
          },
98 112
          "status": {
99 113
            "description": "Current status of the gathering",
100 114
            "knownValues": [
101 115
              "application",
102 116
              "upcoming",
103 117
              "active",
104 118
              "completed"
105 119
            ],
106 120
            "type": "string"
107 121
          },
108 122
          "url": {
109 123
            "description": "External link (e.g. Luma registration page)",
110 124
            "maxLength": 5000,
111 125
            "type": "string"
112 126
          }
113 127
        },
114 128
        "required": [
115 129
          "name",
116 130
          "gatheringType",
117 131
          "status",
118 132
          "createdAt"
119 133
        ],
120 134
        "type": "object"
121 135
      },
122 136
      "type": "record"
123 137
    }
124 138
  },
125 139
  "id": "org.simocracy.gathering",
126 140
  "lexicon": 1
127 141
}

Compare Other Versions

Lexicon Garden

@