com.cultureblocs.bead

cultureblocs.com

Schema Diff

+4 -7

From

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

To

CID
bafyreih7aqllfp2...
Indexed At
2026-08-17 10:43 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

4 breaking changes, 6 non-breaking changes.

Breaking Changes (4)
  • RemovedVertex RemovedVertex { vertex_id: "com.cultureblocs.bead:body.photos" }
  • RemovedVertex RemovedVertex { vertex_id: "com.cultureblocs.bead:body.photos:items" }
  • RemovedEdge RemovedEdge { src: "com.cultureblocs.bead:body", tgt: "com.cultureblocs.bead:body.photos", kind: "prop", name: Some("photos") }
  • RemovedEdge RemovedEdge { src: "com.cultureblocs.bead:body.photos", tgt: "com.cultureblocs.bead:body.photos:items", kind: "items", name: None }
Non-Breaking Changes (6)
  • AddedVertex AddedVertex { vertex_id: "com.cultureblocs.bead:body.images" }
  • AddedVertex AddedVertex { vertex_id: "com.cultureblocs.bead:body.images:items" }
  • AddedVertex AddedVertex { vertex_id: "com.cultureblocs.defs#imageRef" }
  • AddedEdge AddedEdge { src: "com.cultureblocs.bead:body", tgt: "com.cultureblocs.bead:body.images", kind: "prop", name: Some("images") }
  • AddedEdge AddedEdge { src: "com.cultureblocs.bead:body.images", tgt: "com.cultureblocs.bead:body.images:items", kind: "items", name: None }
  • AddedEdge AddedEdge { src: "com.cultureblocs.bead:body.images:items", tgt: "com.cultureblocs.defs#imageRef", kind: "ref", name: None }

Migration Guidance

Removed Elements

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

Added Elements

  • AddedVertex { vertex_id: "com.cultureblocs.bead:body.images" }
  • AddedVertex { vertex_id: "com.cultureblocs.bead:body.images:items" }
  • AddedVertex { vertex_id: "com.cultureblocs.defs#imageRef" }

Additional Notes

  • Breaking: RemovedEdge { src: "com.cultureblocs.bead:body", tgt: "com.cultureblocs.bead:body.photos", kind: "prop", name: Some("photos") }
  • Breaking: RemovedEdge { src: "com.cultureblocs.bead:body.photos", tgt: "com.cultureblocs.bead:body.photos:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "com.cultureblocs.bead:body", tgt: "com.cultureblocs.bead:body.images", kind: "prop", name: Some("images") }
  • Non-breaking: AddedEdge { src: "com.cultureblocs.bead:body.images", tgt: "com.cultureblocs.bead:body.images:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "com.cultureblocs.bead:body.images:items", tgt: "com.cultureblocs.defs#imageRef", kind: "ref", 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": {
69 +
          "images": {
70 70
            "type": "array",
71 71
            "items": {
72 -
              "type": "blob",
73 -
              "accept": [
74 -
                "image/*"
75 -
              ],
76 -
              "maxSize": 2000000
72 +
              "ref": "com.cultureblocs.defs#imageRef",
73 +
              "type": "ref"
77 74
            },
78 75
            "maxLength": 10,
79 -
            "description": "Published photos as ATProto blobs. Tier 0 records use `media` (local refs); the promoter uploads and swaps at publish time."
76 +
            "description": "Published images as imageRefs. Tier 0 records use `media` (local refs); the promoter uploads the bytes and maps alt + aspectRatio across at publish time."
80 77
          },
81 78
          "subject": {
82 79
            "refs": [
83 80
              "com.cultureblocs.defs#workRef",
84 81
              "com.cultureblocs.defs#placeRef",
85 82
              "com.cultureblocs.defs#strongRef"
86 83
            ],
87 84
            "type": "union",
88 85
            "description": "What the bead is about: a work, a place, or a published record (event, exhibition)."
89 86
          },
90 87
          "createdAt": {
91 88
            "type": "string",
92 89
            "format": "datetime"
93 90
          },
94 91
          "provenance": {
95 92
            "ref": "com.cultureblocs.defs#provenance",
96 93
            "type": "ref"
97 94
          }
98 95
        }
99 96
      },
100 97
      "description": "An atomic cultural memory: a visit, a dwell, an encounter, a screening. Minted on-device or by hand; annotated later."
101 98
    }
102 99
  },
103 100
  "$type": "com.atproto.lexicon.schema",
104 101
  "lexicon": 1
105 102
}

Compare Other Versions

Lexicon Garden

@