tech.waow.brand.defs
Schema Diff
+4 -0
Compatibility Analysis
Backward Compatible
Backward compatible. 2 non-breaking changes.
Non-Breaking Changes (2)
- AddedVertex AddedVertex { vertex_id: "tech.waow.brand.defs#brandView.known" }
- AddedEdge AddedEdge { src: "tech.waow.brand.defs#brandView", tgt: "tech.waow.brand.defs#brandView.known", kind: "prop", name: Some("known") }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "tech.waow.brand.defs#brandView.known" }
Additional Notes
- Non-breaking: AddedEdge { src: "tech.waow.brand.defs#brandView", tgt: "tech.waow.brand.defs#brandView.known", kind: "prop", name: Some("known") }
1
1
{
2
2
"id": "tech.waow.brand.defs",
3
3
"defs": {
4
4
"colors": {
5
5
"type": "object",
6
6
"properties": {
7
7
"primary": {
8
8
"type": "string",
9
9
"maxLength": 7
10
10
},
11
11
"background": {
12
12
"type": "string",
13
13
"maxLength": 7
14
14
},
15
15
"foreground": {
16
16
"type": "string",
17
17
"maxLength": 7
18
18
}
19
19
},
20
20
"description": "Brand colors as sRGB hex, '#rrggbb'. Shared by the declaration record and the views that render it."
21
21
},
22
22
"authority": {
23
23
"type": "object",
24
24
"required": [
25
25
"domain",
26
26
"did",
27
27
"uri"
28
28
],
29
29
"properties": {
30
30
"did": {
31
31
"type": "string",
32
32
"format": "did"
33
33
},
34
34
"uri": {
35
35
"type": "string",
36
36
"format": "at-uri"
37
37
},
38
38
"domain": {
39
39
"type": "string",
40
40
"maxLength": 253,
41
41
"description": "The domain whose _lexicon TXT record names the declaring DID, or the actor's handle."
42
42
}
43
43
},
44
44
"description": "Who chose this, and where they said it. For a namespace, the DID its _lexicon TXT record names; for an actor, the account itself."
45
45
},
46
46
"brandView": {
47
47
"type": "object",
48
48
"required": [
49
49
"subject",
50
50
"namespace",
51
51
"matched",
52
52
"source",
53
53
"icon"
54
54
],
55
55
"properties": {
56
56
"url": {
57
57
"type": "string",
58
58
"format": "uri"
59
59
},
60
60
"icon": {
61
61
"type": "string",
62
62
"maxLength": 8192,
63
63
"description": "URL for the icon: an https URL, or a data: URI when generated."
64
64
},
65
65
"name": {
66
66
"type": "string",
67
67
"maxLength": 128
68
68
},
69
+
"known": {
70
+
"type": "boolean",
71
+
"description": "Whether records have ever been written under this exact namespace, or a schema published for it. Prefix inheritance means an invented namespace still resolves with its parent's icon, so this is how a consumer spots a typo. A hint, never a rejection: false can also mean declared-but-not-yet-used. Absent for actors, or when the check failed."
72
+
},
69
73
"colors": {
70
74
"ref": "tech.waow.brand.defs#colors",
71
75
"type": "ref"
72
76
},
73
77
"source": {
74
78
"type": "string",
75
79
"maxLength": 32,
76
80
"description": "Who chose this. 'declared': the namespace's lexicon authority, in a record. 'borrowed': the reverse-DNS domain's atproto account avatar, chosen for that account rather than for this namespace. 'curated': the responding service's own table. 'generated': nobody, a deterministic monogram.",
77
81
"knownValues": [
78
82
"declared",
79
83
"borrowed",
80
84
"curated",
81
85
"generated"
82
86
]
83
87
},
84
88
"matched": {
85
89
"type": "string",
86
90
"maxLength": 317,
87
91
"description": "What actually answered: the namespace itself, a shorter prefix it inherits from, or -- for an actor -- their resolved handle."
88
92
},
89
93
"subject": {
90
94
"type": "string",
91
95
"maxLength": 16,
92
96
"description": "What kind of thing answered. 'plyr.fm' and 'fm.plyr' are both well-formed inputs and mean entirely different things: an identity and a namespace.",
93
97
"knownValues": [
94
98
"namespace",
95
99
"actor"
96
100
]
97
101
},
98
102
"wordmark": {
99
103
"type": "string",
100
104
"maxLength": 8192
101
105
},
102
106
"authority": {
103
107
"ref": "tech.waow.brand.defs#authority",
104
108
"type": "ref"
105
109
},
106
110
"namespace": {
107
111
"type": "string",
108
112
"maxLength": 317,
109
113
"description": "The namespace or identifier that was asked for."
110
114
},
111
115
"iconSource": {
112
116
"type": "string",
113
117
"maxLength": 32,
114
118
"description": "Present only when the icon comes from a lower tier than the rest of the response, e.g. a declaration that omitted an icon. The icon never inherits the declaration's authority.",
115
119
"knownValues": [
116
120
"declared",
117
121
"borrowed",
118
122
"curated",
119
123
"generated"
120
124
]
121
125
},
122
126
"description": {
123
127
"type": "string",
124
128
"maxLength": 512
125
129
}
126
130
},
127
131
"description": "Resolved brand assets for one namespace."
128
132
}
129
133
},
130
134
"$type": "com.atproto.lexicon.schema",
131
135
"lexicon": 1
132
136
}