tech.waow.brand.defs

waow.tech

Schema Diff

+4 -0

From

CID
bafyreicu5oh4xkg...
Indexed At
2026-08-09 18:17 UTC
View this version

To

CID
bafyreiek6t3757e...
Indexed At
2026-08-09 21:56 UTC
View this version

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
}

Compare Other Versions

Lexicon Garden

@