community.gifthood.interest
Schema Diff
+8 -0
Compatibility Analysis
Backward Compatible
Backward compatible. 6 non-breaking changes.
Non-Breaking Changes (6)
- AddedVertex AddedVertex { vertex_id: "app.bsky.richtext.facet" }
- AddedVertex AddedVertex { vertex_id: "community.gifthood.interest:body.facets" }
- AddedVertex AddedVertex { vertex_id: "community.gifthood.interest:body.facets:items" }
- AddedEdge AddedEdge { src: "community.gifthood.interest:body", tgt: "community.gifthood.interest:body.facets", kind: "prop", name: Some("facets") }
- AddedEdge AddedEdge { src: "community.gifthood.interest:body.facets", tgt: "community.gifthood.interest:body.facets:items", kind: "items", name: None }
- AddedEdge AddedEdge { src: "community.gifthood.interest:body.facets:items", tgt: "app.bsky.richtext.facet", kind: "ref", name: None }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "app.bsky.richtext.facet" }AddedVertex { vertex_id: "community.gifthood.interest:body.facets" }AddedVertex { vertex_id: "community.gifthood.interest:body.facets:items" }
Additional Notes
- Non-breaking: AddedEdge { src: "community.gifthood.interest:body", tgt: "community.gifthood.interest:body.facets", kind: "prop", name: Some("facets") }
- Non-breaking: AddedEdge { src: "community.gifthood.interest:body.facets", tgt: "community.gifthood.interest:body.facets:items", kind: "items", name: None }
- Non-breaking: AddedEdge { src: "community.gifthood.interest:body.facets:items", tgt: "app.bsky.richtext.facet", kind: "ref", name: None }
1
1
{
2
2
"$type": "com.atproto.lexicon.schema",
3
3
"defs": {
4
4
"main": {
5
5
"description": "A public expression of interest in a listing. Coordination of pickup happens off-app via direct message.",
6
6
"key": "tid",
7
7
"record": {
8
8
"properties": {
9
9
"createdAt": {
10
10
"format": "datetime",
11
11
"type": "string"
12
12
},
13
+
"facets": {
14
+
"description": "Annotations over `message` (mentions, links) keyed by UTF-8 byte range. Reuses app.bsky.richtext.facet for atmosphere-wide interop. Author-asserted at compose time; clients MUST treat them as display hints, re-validate ranges, and never trust a facet URI over the visible text. Addresses and phone numbers are deliberately NOT faceted here — those affordances are direct-message-only.",
15
+
"items": {
16
+
"ref": "app.bsky.richtext.facet",
17
+
"type": "ref"
18
+
},
19
+
"type": "array"
20
+
},
13
21
"langs": {
14
22
"description": "Language(s) the message is written in, as BCP-47 language tags. Author-asserted; clients default from the composer's locale.",
15
23
"items": {
16
24
"format": "language",
17
25
"type": "string"
18
26
},
19
27
"maxLength": 3,
20
28
"type": "array"
21
29
},
22
30
"message": {
23
31
"description": "Optional short public note (e.g. 'still available?'). Pickup details belong in direct messages, not here.",
24
32
"maxGraphemes": 300,
25
33
"maxLength": 600,
26
34
"type": "string"
27
35
},
28
36
"subject": {
29
37
"description": "Strong reference (URI + CID) to the listing this interest refers to.",
30
38
"ref": "com.atproto.repo.strongRef",
31
39
"type": "ref"
32
40
}
33
41
},
34
42
"required": [
35
43
"subject",
36
44
"createdAt"
37
45
],
38
46
"type": "object"
39
47
},
40
48
"type": "record"
41
49
}
42
50
},
43
51
"id": "community.gifthood.interest",
44
52
"lexicon": 1
45
53
}