com.cultureblocs.bead

cultureblocs.com

Schema Diff

+12 -0

From

CID
bafyreicz4zek4km...
Indexed At
2026-07-22 10:01 UTC
View this version

To

CID
bafyreibnjkajivv...
Indexed At
2026-07-24 22:02 UTC
View this version

Compatibility Analysis

Backward Compatible

Backward compatible. 4 non-breaking changes.

Non-Breaking Changes (4)
  • AddedVertex AddedVertex { vertex_id: "com.cultureblocs.bead:body.photos" }
  • AddedVertex AddedVertex { vertex_id: "com.cultureblocs.bead:body.photos:items" }
  • AddedEdge AddedEdge { src: "com.cultureblocs.bead:body", tgt: "com.cultureblocs.bead:body.photos", kind: "prop", name: Some("photos") }
  • AddedEdge AddedEdge { src: "com.cultureblocs.bead:body.photos", tgt: "com.cultureblocs.bead:body.photos:items", kind: "items", name: None }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "com.cultureblocs.bead:body.photos" }
  • AddedVertex { vertex_id: "com.cultureblocs.bead:body.photos:items" }

Additional Notes

  • Non-breaking: AddedEdge { src: "com.cultureblocs.bead:body", tgt: "com.cultureblocs.bead:body.photos", kind: "prop", name: Some("photos") }
  • Non-breaking: AddedEdge { src: "com.cultureblocs.bead:body.photos", tgt: "com.cultureblocs.bead:body.photos:items", kind: "items", name: None }
1 1
{
2 2
  "id": "com.cultureblocs.bead",
3 3
  "defs": {
4 4
    "main": {
5 5
      "key": "tid",
6 6
      "type": "record",
7 7
      "record": {
8 8
        "type": "object",
9 9
        "required": [
10 10
          "createdAt",
11 11
          "kind"
12 12
        ],
13 13
        "properties": {
14 14
          "geo": {
15 15
            "ref": "com.cultureblocs.defs#geo",
16 16
            "type": "ref"
17 17
          },
18 18
          "kind": {
19 19
            "type": "string",
20 20
            "description": "What kind of cultural moment: bloc is the neutral default (a marked moment); read/listen/watch cover at-home culture; visit/dwell/screening/performance cover being out; encounter is a mutual mint.",
21 21
            "knownValues": [
22 22
              "bloc",
23 23
              "visit",
24 24
              "dwell",
25 25
              "encounter",
26 26
              "read",
27 27
              "listen",
28 28
              "watch",
29 29
              "screening",
30 30
              "performance",
31 31
              "note"
32 32
            ]
33 33
          },
34 34
          "note": {
35 35
            "type": "string",
36 36
            "maxGraphemes": 3000
37 37
          },
38 38
          "prev": {
39 39
            "ref": "com.cultureblocs.defs#strongRef",
40 40
            "type": "ref",
41 41
            "description": "Previous bead in the day's chain, if any."
42 42
          },
43 43
          "tags": {
44 44
            "type": "array",
45 45
            "items": {
46 46
              "type": "string",
47 47
              "maxGraphemes": 64
48 48
            },
49 49
            "maxLength": 8,
50 50
            "description": "Freeform tags: the CultureBloc mask worn at mint time, ad-hoc event tags (emfcamp26), etc."
51 51
          },
52 52
          "links": {
53 53
            "type": "array",
54 54
            "items": {
55 55
              "ref": "com.cultureblocs.defs#linkRef",
56 56
              "type": "ref"
57 57
            },
58 58
            "maxLength": 8,
59 59
            "description": "Event page, venue page, etc."
60 60
          },
61 61
          "media": {
62 62
            "type": "array",
63 63
            "items": {
64 64
              "ref": "com.cultureblocs.defs#mediaRef",
65 65
              "type": "ref"
66 66
            },
67 67
            "maxLength": 10
68 68
          },
69 +
          "photos": {
70 +
            "type": "array",
71 +
            "items": {
72 +
              "type": "blob",
73 +
              "accept": [
74 +
                "image/*"
75 +
              ],
76 +
              "maxSize": 2000000
77 +
            },
78 +
            "maxLength": 10,
79 +
            "description": "Published photos as ATProto blobs. Tier 0 records use `media` (local refs); the promoter uploads and swaps at publish time."
80 +
          },
69 81
          "subject": {
70 82
            "refs": [
71 83
              "com.cultureblocs.defs#workRef",
72 84
              "com.cultureblocs.defs#placeRef",
73 85
              "com.cultureblocs.defs#strongRef"
74 86
            ],
75 87
            "type": "union",
76 88
            "description": "What the bead is about: a work, a place, or a published record (event, exhibition)."
77 89
          },
78 90
          "createdAt": {
79 91
            "type": "string",
80 92
            "format": "datetime"
81 93
          },
82 94
          "provenance": {
83 95
            "ref": "com.cultureblocs.defs#provenance",
84 96
            "type": "ref"
85 97
          }
86 98
        }
87 99
      },
88 100
      "description": "An atomic cultural memory: a visit, a dwell, an encounter, a screening. Minted on-device or by hand; annotated later."
89 101
    }
90 102
  },
91 103
  "$type": "com.atproto.lexicon.schema",
92 104
  "lexicon": 1
93 105
}

Compare Other Versions

Lexicon Garden

@