ai.rizom.brain.link

rizom.ai

Schema Diff

+22 -13

From

CID
bafyreigmqmohkac...
Indexed At
2026-07-21 14:09 UTC
View this version

To

CID
bafyreih2np2v2yr...
Indexed At
2026-10-03 10:59 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

8 breaking changes, 6 non-breaking changes.

Breaking Changes (8)
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "ai.rizom.brain.link#source", src: "ai.rizom.brain.link#source", tgt: "ai.rizom.brain.link#source.ref", kind: "prop", name: Some("ref") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "ai.rizom.brain.link#source", src: "ai.rizom.brain.link#source", tgt: "ai.rizom.brain.link#source.label", kind: "prop", name: Some("label") }
  • RequiredEdgeRemoved RequiredEdgeRemoved { vertex_id: "ai.rizom.brain.link:body.source", src: "ai.rizom.brain.link:body.source", tgt: "ai.rizom.brain.link:body.source.label", kind: "prop", name: Some("label") }
  • RequiredEdgeRemoved RequiredEdgeRemoved { vertex_id: "ai.rizom.brain.link:body.source", src: "ai.rizom.brain.link:body.source", tgt: "ai.rizom.brain.link:body.source.ref", kind: "prop", name: Some("ref") }
  • RemovedVertex RemovedVertex { vertex_id: "ai.rizom.brain.link:body.source.label" }
  • RemovedVertex RemovedVertex { vertex_id: "ai.rizom.brain.link:body.source.ref" }
  • KindChanged KindChanged { vertex_id: "ai.rizom.brain.link:body.source", old_kind: "object", new_kind: "ref" }
  • ConstraintAdded ConstraintAdded { vertex_id: "ai.rizom.brain.link:body.source", sort: "ref", value: "#source" }
Non-Breaking Changes (6)
  • AddedVertex AddedVertex { vertex_id: "ai.rizom.brain.link#source" }
  • AddedVertex AddedVertex { vertex_id: "ai.rizom.brain.link#source.label" }
  • AddedVertex AddedVertex { vertex_id: "ai.rizom.brain.link#source.ref" }
  • AddedVertex AddedVertex { vertex_id: "ai.rizom.brain.link:body.canonicalUrl" }
  • AddedEdge AddedEdge { src: "ai.rizom.brain.link:body", tgt: "ai.rizom.brain.link:body.canonicalUrl", kind: "prop", name: Some("canonicalUrl") }
  • AddedEdge AddedEdge { src: "ai.rizom.brain.link:body.source", tgt: "ai.rizom.brain.link#source", kind: "ref", name: None }

Migration Guidance

Removed Elements

  • RemovedVertex { vertex_id: "ai.rizom.brain.link:body.source.label" }
  • RemovedVertex { vertex_id: "ai.rizom.brain.link:body.source.ref" }

Added Elements

  • AddedVertex { vertex_id: "ai.rizom.brain.link#source" }
  • AddedVertex { vertex_id: "ai.rizom.brain.link#source.label" }
  • AddedVertex { vertex_id: "ai.rizom.brain.link#source.ref" }
  • AddedVertex { vertex_id: "ai.rizom.brain.link:body.canonicalUrl" }

Constraint Changes

  • ConstraintAdded ConstraintAdded { vertex_id: "ai.rizom.brain.link:body.source", sort: "ref", value: "#source" }

Additional Notes

  • Breaking: RequiredEdgeAdded { vertex_id: "ai.rizom.brain.link#source", src: "ai.rizom.brain.link#source", tgt: "ai.rizom.brain.link#source.ref", kind: "prop", name: Some("ref") }
  • Breaking: RequiredEdgeAdded { vertex_id: "ai.rizom.brain.link#source", src: "ai.rizom.brain.link#source", tgt: "ai.rizom.brain.link#source.label", kind: "prop", name: Some("label") }
  • Breaking: RequiredEdgeRemoved { vertex_id: "ai.rizom.brain.link:body.source", src: "ai.rizom.brain.link:body.source", tgt: "ai.rizom.brain.link:body.source.label", kind: "prop", name: Some("label") }
  • Breaking: RequiredEdgeRemoved { vertex_id: "ai.rizom.brain.link:body.source", src: "ai.rizom.brain.link:body.source", tgt: "ai.rizom.brain.link:body.source.ref", kind: "prop", name: Some("ref") }
  • Breaking: KindChanged { vertex_id: "ai.rizom.brain.link:body.source", old_kind: "object", new_kind: "ref" }
  • Non-breaking: AddedEdge { src: "ai.rizom.brain.link:body", tgt: "ai.rizom.brain.link:body.canonicalUrl", kind: "prop", name: Some("canonicalUrl") }
  • Non-breaking: AddedEdge { src: "ai.rizom.brain.link:body.source", tgt: "ai.rizom.brain.link#source", kind: "ref", name: None }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "main": {
5 5
      "description": "Public curated link from a Rizom brain.",
6 6
      "key": "any",
7 7
      "record": {
8 8
        "properties": {
9 9
          "anchorDid": {
10 10
            "type": "string"
11 11
          },
12 12
          "brainDid": {
13 13
            "type": "string"
14 14
          },
15 +
          "canonicalUrl": {
16 +
            "format": "uri",
17 +
            "type": "string"
18 +
          },
15 19
          "capturedAt": {
16 20
            "format": "datetime",
17 21
            "type": "string"
18 22
          },
19 23
          "createdAt": {
20 24
            "format": "datetime",
21 25
            "type": "string"
22 26
          },
23 27
          "description": {
24 28
            "maxLength": 2000,
25 29
            "type": "string"
26 30
          },
27 31
          "domain": {
28 32
            "type": "string"
29 33
          },
30 34
          "source": {
31 -
            "properties": {
32 -
              "label": {
33 -
                "type": "string"
34 -
              },
35 -
              "ref": {
36 -
                "type": "string"
37 -
              }
38 -
            },
39 -
            "required": [
40 -
              "ref",
41 -
              "label"
42 -
            ],
43 -
            "type": "object"
35 +
            "ref": "#source",
36 +
            "type": "ref"
44 37
          },
45 38
          "sourceEntityId": {
46 39
            "type": "string"
47 40
          },
48 41
          "sourceEntityType": {
49 42
            "type": "string"
50 43
          },
51 44
          "summary": {
52 45
            "maxLength": 100000,
53 46
            "type": "string"
54 47
          },
55 48
          "title": {
56 49
            "maxLength": 500,
57 50
            "type": "string"
58 51
          },
59 52
          "updatedAt": {
60 53
            "format": "datetime",
61 54
            "type": "string"
62 55
          },
63 56
          "url": {
64 57
            "format": "uri",
65 58
            "type": "string"
66 59
          }
67 60
        },
68 61
        "required": [
69 62
          "title",
70 63
          "url",
71 64
          "createdAt"
72 65
        ],
73 66
        "type": "object"
74 67
      },
75 68
      "type": "record"
69 +
    },
70 +
    "source": {
71 +
      "description": "Attribution for where this link was captured.",
72 +
      "properties": {
73 +
        "label": {
74 +
          "type": "string"
75 +
        },
76 +
        "ref": {
77 +
          "type": "string"
78 +
        }
79 +
      },
80 +
      "required": [
81 +
        "ref",
82 +
        "label"
83 +
      ],
84 +
      "type": "object"
76 85
    }
77 86
  },
78 87
  "id": "ai.rizom.brain.link",
79 88
  "lexicon": 1
80 89
}

Compare Other Versions

Lexicon Garden

@