com.cultureblocs.annotation

cultureblocs.com

Schema Diff

+9 -12

From

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

To

CID
bafyreifa43wagjs...
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.annotation:body.photos" }
  • RemovedVertex RemovedVertex { vertex_id: "com.cultureblocs.annotation:body.photos:items" }
  • RemovedEdge RemovedEdge { src: "com.cultureblocs.annotation:body", tgt: "com.cultureblocs.annotation:body.photos", kind: "prop", name: Some("photos") }
  • RemovedEdge RemovedEdge { src: "com.cultureblocs.annotation:body.photos", tgt: "com.cultureblocs.annotation:body.photos:items", kind: "items", name: None }
Non-Breaking Changes (6)
  • AddedVertex AddedVertex { vertex_id: "com.cultureblocs.annotation:body.images" }
  • AddedVertex AddedVertex { vertex_id: "com.cultureblocs.annotation:body.images:items" }
  • AddedVertex AddedVertex { vertex_id: "com.cultureblocs.defs#imageRef" }
  • AddedEdge AddedEdge { src: "com.cultureblocs.annotation:body", tgt: "com.cultureblocs.annotation:body.images", kind: "prop", name: Some("images") }
  • AddedEdge AddedEdge { src: "com.cultureblocs.annotation:body.images", tgt: "com.cultureblocs.annotation:body.images:items", kind: "items", name: None }
  • AddedEdge AddedEdge { src: "com.cultureblocs.annotation:body.images:items", tgt: "com.cultureblocs.defs#imageRef", kind: "ref", name: None }

Migration Guidance

Removed Elements

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

Added Elements

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

Additional Notes

  • Breaking: RemovedEdge { src: "com.cultureblocs.annotation:body", tgt: "com.cultureblocs.annotation:body.photos", kind: "prop", name: Some("photos") }
  • Breaking: RemovedEdge { src: "com.cultureblocs.annotation:body.photos", tgt: "com.cultureblocs.annotation:body.photos:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "com.cultureblocs.annotation:body", tgt: "com.cultureblocs.annotation:body.images", kind: "prop", name: Some("images") }
  • Non-breaking: AddedEdge { src: "com.cultureblocs.annotation:body.images", tgt: "com.cultureblocs.annotation:body.images:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "com.cultureblocs.annotation:body.images:items", tgt: "com.cultureblocs.defs#imageRef", kind: "ref", name: None }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "main": {
5 5
      "description": "A bookmark/note about a specific work, typically minted by the AR gallery app at the moment of recognition. Meaningful entirely on its own — no bead required.",
6 6
      "key": "tid",
7 7
      "record": {
8 8
        "properties": {
9 9
          "context": {
10 10
            "description": "Optional exhibition or event record this annotation was made within.",
11 11
            "ref": "com.cultureblocs.defs#strongRef",
12 12
            "type": "ref"
13 13
          },
14 14
          "createdAt": {
15 15
            "format": "datetime",
16 16
            "type": "string"
17 17
          },
18 18
          "geo": {
19 19
            "ref": "com.cultureblocs.defs#geo",
20 20
            "type": "ref"
21 21
          },
22 +
          "images": {
23 +
            "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.",
24 +
            "items": {
25 +
              "ref": "com.cultureblocs.defs#imageRef",
26 +
              "type": "ref"
27 +
            },
28 +
            "maxLength": 10,
29 +
            "type": "array"
30 +
          },
22 31
          "matchConfidence": {
23 32
            "description": "How the work was identified: cosine embedding match, ORB geometric verification, or manual entry.",
24 33
            "knownValues": [
25 34
              "embedding",
26 35
              "geometric",
27 36
              "manual"
28 37
            ],
29 38
            "type": "string"
30 39
          },
31 40
          "media": {
32 41
            "items": {
33 42
              "ref": "com.cultureblocs.defs#mediaRef",
34 43
              "type": "ref"
35 44
            },
36 45
            "maxLength": 10,
37 46
            "type": "array"
38 47
          },
39 48
          "note": {
40 49
            "maxGraphemes": 3000,
41 50
            "type": "string"
42 -
          },
43 -
          "photos": {
44 -
            "description": "Published photos as ATProto blobs. Tier 0 records use `media` (local refs); the promoter uploads and swaps at publish time.",
45 -
            "items": {
46 -
              "accept": [
47 -
                "image/*"
48 -
              ],
49 -
              "maxSize": 2000000,
50 -
              "type": "blob"
51 -
            },
52 -
            "maxLength": 10,
53 -
            "type": "array"
54 51
          },
55 52
          "provenance": {
56 53
            "ref": "com.cultureblocs.defs#provenance",
57 54
            "type": "ref"
58 55
          },
59 56
          "work": {
60 57
            "ref": "com.cultureblocs.defs#workRef",
61 58
            "type": "ref"
62 59
          }
63 60
        },
64 61
        "required": [
65 62
          "createdAt",
66 63
          "work"
67 64
        ],
68 65
        "type": "object"
69 66
      },
70 67
      "type": "record"
71 68
    }
72 69
  },
73 70
  "id": "com.cultureblocs.annotation",
74 71
  "lexicon": 1
75 72
}

Compare Other Versions

Lexicon Garden

@