com.cultureblocs.annotation

cultureblocs.com

Schema Diff

+12 -0

From

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

To

CID
bafyreidyp7sllfk...
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.annotation:body.photos" }
  • AddedVertex AddedVertex { vertex_id: "com.cultureblocs.annotation:body.photos:items" }
  • AddedEdge AddedEdge { src: "com.cultureblocs.annotation:body", tgt: "com.cultureblocs.annotation:body.photos", kind: "prop", name: Some("photos") }
  • AddedEdge AddedEdge { src: "com.cultureblocs.annotation:body.photos", tgt: "com.cultureblocs.annotation:body.photos:items", kind: "items", name: None }

Migration Guidance

Added Elements

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

Additional Notes

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

Compare Other Versions

Lexicon Garden

@