social.nstar.provider.declaration

nstar.social

Schema Diff

+19 -6

From

CID
bafyreify6ucwszy...
Indexed At
2026-05-01 05:42 UTC
View this version

To

CID
bafyreibt2anb67b...
Indexed At
2026-06-19 06:53 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

4 breaking changes, 4 non-breaking changes.

Breaking Changes (4)
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "social.nstar.provider.declaration#service", src: "social.nstar.provider.declaration#service", tgt: "social.nstar.provider.declaration#service.uri", kind: "prop", name: Some("uri") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "social.nstar.provider.declaration#service", src: "social.nstar.provider.declaration#service", tgt: "social.nstar.provider.declaration#service.id", kind: "prop", name: Some("id") }
  • KindChanged KindChanged { vertex_id: "social.nstar.provider.declaration:body.services:items", old_kind: "string", new_kind: "ref" }
  • ConstraintAdded ConstraintAdded { vertex_id: "social.nstar.provider.declaration:body.services:items", sort: "ref", value: "#service" }
Non-Breaking Changes (4)
  • AddedVertex AddedVertex { vertex_id: "social.nstar.provider.declaration#service.id" }
  • AddedVertex AddedVertex { vertex_id: "social.nstar.provider.declaration#service.uri" }
  • AddedEdge AddedEdge { src: "social.nstar.provider.declaration:body.services:items", tgt: "social.nstar.provider.declaration#service", kind: "ref", name: None }
  • ConstraintRemoved ConstraintRemoved { vertex_id: "social.nstar.provider.declaration:body.services:items", sort: "knownValues" }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "social.nstar.provider.declaration#service.id" }
  • AddedVertex { vertex_id: "social.nstar.provider.declaration#service.uri" }

Constraint Changes

  • ConstraintAdded ConstraintAdded { vertex_id: "social.nstar.provider.declaration:body.services:items", sort: "ref", value: "#service" }
  • ConstraintRemoved ConstraintRemoved { vertex_id: "social.nstar.provider.declaration:body.services:items", sort: "knownValues" }

Additional Notes

  • Breaking: RequiredEdgeAdded { vertex_id: "social.nstar.provider.declaration#service", src: "social.nstar.provider.declaration#service", tgt: "social.nstar.provider.declaration#service.uri", kind: "prop", name: Some("uri") }
  • Breaking: RequiredEdgeAdded { vertex_id: "social.nstar.provider.declaration#service", src: "social.nstar.provider.declaration#service", tgt: "social.nstar.provider.declaration#service.id", kind: "prop", name: Some("id") }
  • Breaking: KindChanged { vertex_id: "social.nstar.provider.declaration:body.services:items", old_kind: "string", new_kind: "ref" }
  • Non-breaking: AddedEdge { src: "social.nstar.provider.declaration:body.services:items", tgt: "social.nstar.provider.declaration#service", kind: "ref", name: None }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "createdAt": "2026-04-19T22:58:04.496Z",
4 4
  "defs": {
5 5
    "contact": {
6 6
      "properties": {
7 7
        "email": {
8 8
          "description": "Provider's support email address.",
9 9
          "type": "string"
10 10
        },
11 11
        "phone": {
12 12
          "description": "Provider's support phone number.",
13 13
          "type": "string"
14 14
        }
15 15
      },
16 16
      "required": [
17 17
        "email"
18 18
      ],
19 19
      "type": "object"
20 20
    },
21 21
    "links": {
22 22
      "properties": {
23 23
        "privacyPolicy": {
24 24
          "description": "Link reference to the provider's privacy policy.",
25 25
          "format": "uri",
26 26
          "type": "string"
27 27
        },
28 28
        "termsOfService": {
29 29
          "description": "Link reference to the provider's terms of service.",
30 30
          "format": "uri",
31 31
          "type": "string"
32 32
        },
33 33
        "website": {
34 34
          "description": "Provider's website reference.",
35 35
          "format": "uri",
36 36
          "type": "string"
37 37
        }
38 38
      },
39 39
      "required": [
40 40
        "website",
41 41
        "privacyPolicy",
42 42
        "termsOfService"
43 43
      ],
44 44
      "type": "object"
45 45
    },
46 46
    "main": {
47 47
      "description": "A declaration of an Atmosphere service provider.",
48 48
      "key": "tid",
49 49
      "record": {
50 50
        "properties": {
51 51
          "contact": {
52 52
            "description": "Provider's contact information",
53 53
            "ref": "#contact",
54 54
            "type": "ref"
55 55
          },
56 56
          "description": {
57 57
            "description": "Description of the services distinguish and are offered by provider.",
58 58
            "maxGraphemes": 2560,
59 59
            "maxLength": 256,
60 60
            "type": "string"
61 61
          },
62 62
          "did": {
63 63
            "description": "Provider's DID document containing 1 or more of following services: #atproto_pds, #appview_bsky, #appview_notif",
64 64
            "format": "uri",
65 65
            "type": "string"
66 66
          },
67 67
          "displayName": {
68 68
            "description": "Abbreviated name for displaying in limited UI space presentations (e.g. button label).",
69 69
            "maxGraphemes": 150,
70 70
            "maxLength": 15,
71 71
            "type": "string"
72 72
          },
73 73
          "legalName": {
74 74
            "description": "Provider's full legal name",
75 75
            "maxGraphemes": 640,
76 76
            "maxLength": 64,
77 77
            "type": "string"
78 78
          },
79 79
          "links": {
80 80
            "description": "URLs of the providers website and service policy documents.",
81 81
            "ref": "#links",
82 82
            "type": "ref"
83 83
          },
84 84
          "services": {
85 85
            "description": "The services offered by the provider as listed in the provider's DID document.",
86 86
            "items": {
87 -
              "knownValues": [
88 -
                "atproto_pds",
89 -
                "bsky_appview",
90 -
                "bsky_notif"
91 -
              ],
92 -
              "type": "string"
87 +
              "ref": "#service",
88 +
              "type": "ref"
93 89
            },
94 90
            "type": "array"
95 91
          },
96 92
          "theme": {
97 93
            "description": "URLs of the providers website and service policy documents.",
98 94
            "ref": "#theme",
99 95
            "type": "ref"
100 96
          }
101 97
        },
102 98
        "required": [
103 99
          "did",
104 100
          "legalName",
105 101
          "displayName",
106 102
          "description",
107 103
          "services",
108 104
          "theme",
109 105
          "links",
110 106
          "contact"
111 107
        ],
112 108
        "type": "object"
113 109
      },
114 110
      "type": "record"
115 111
    },
116 112
    "service": {
113 +
      "properties": {
114 +
        "id": {
115 +
          "description": "A service identifier",
116 +
          "maxGraphemes": 640,
117 +
          "maxLength": 64,
118 +
          "type": "string"
119 +
        },
120 +
        "uri": {
121 +
          "description": "Service identifier's URI",
122 +
          "format": "uri",
123 +
          "type": "string"
124 +
        }
125 +
      },
126 +
      "required": [
127 +
        "id",
128 +
        "uri"
129 +
      ],
117 130
      "type": "object"
118 131
    },
119 132
    "theme": {
120 133
      "properties": {
121 134
        "colorDark": {
122 135
          "description": "HEX color code to use in dark mode presentations. Optional.",
123 136
          "maxGraphemes": 70,
124 137
          "maxLength": 7,
125 138
          "type": "string"
126 139
        },
127 140
        "colorLight": {
128 141
          "description": "HEX color code to use in light mode presentations. Optional.",
129 142
          "maxGraphemes": 70,
130 143
          "maxLength": 7,
131 144
          "type": "string"
132 145
        },
133 146
        "logoPNG": {
134 147
          "description": "Providers branded logo in PNG format (base64 encoded). Optional.",
135 148
          "maxGraphemes": 40960,
136 149
          "maxLength": 4096,
137 150
          "type": "string"
138 151
        },
139 152
        "logoSVG": {
140 153
          "description": "Providers branded template logo in SVG format. Optional.",
141 154
          "maxGraphemes": 40960,
142 155
          "maxLength": 4096,
143 156
          "type": "string"
144 157
        }
145 158
      },
146 159
      "type": "object"
147 160
    }
148 161
  },
149 162
  "id": "social.nstar.provider.declaration",
150 163
  "lexicon": 1
151 164
}

Compare Other Versions

Lexicon Garden

@