From
bafyreihjjaushvyx6wpntofmb52yyjusirltap32xwcnpnd3o5fiu7p3dm
indexed 2026-10-17 02:20 UTC
View this version
To
bafyreibsl26pdvjwprsid7sr3pxitbh5kjwmrvyfzxm6mht2cuyllhln4q
indexed 2026-10-20 03:09 UTC
View this version
Compatibility
breaking 2 breaking changes, 10 non-breaking changes.
Breaking changes (2)
- RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "fyi.opensocial.templateVersion#preview", src: "fyi.opensocial.templateVersion#preview", tgt: "fyi.opensocial.templateVersion#preview.image", kind: "prop", name: Some("image") }
- RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "fyi.opensocial.templateVersion#preview", src: "fyi.opensocial.templateVersion#preview", tgt: "fyi.opensocial.templateVersion#preview.alt", kind: "prop", name: Some("alt") }
Non-breaking changes (10)
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.templateVersion#preview" }
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.templateVersion#preview.alt" }
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.templateVersion#preview.image" }
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.templateVersion#preview.size" }
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.templateVersion:body.previews" }
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.templateVersion:body.previews:items" }
- AddedEdge AddedEdge { src: "fyi.opensocial.templateVersion#preview", tgt: "fyi.opensocial.templateVersion#preview.size", kind: "prop", name: Some("size") }
- AddedEdge AddedEdge { src: "fyi.opensocial.templateVersion:body", tgt: "fyi.opensocial.templateVersion:body.previews", kind: "prop", name: Some("previews") }
- AddedEdge AddedEdge { src: "fyi.opensocial.templateVersion:body.previews", tgt: "fyi.opensocial.templateVersion:body.previews:items", kind: "items", name: None }
- AddedEdge AddedEdge { src: "fyi.opensocial.templateVersion:body.previews:items", tgt: "fyi.opensocial.templateVersion#preview", kind: "ref", name: None }
Migration guidance
Added
AddedVertex { vertex_id: "fyi.opensocial.templateVersion#preview" }AddedVertex { vertex_id: "fyi.opensocial.templateVersion#preview.alt" }AddedVertex { vertex_id: "fyi.opensocial.templateVersion#preview.image" }AddedVertex { vertex_id: "fyi.opensocial.templateVersion#preview.size" }AddedVertex { vertex_id: "fyi.opensocial.templateVersion:body.previews" }AddedVertex { vertex_id: "fyi.opensocial.templateVersion:body.previews:items" }
Notes
- Breaking: RequiredEdgeAdded { vertex_id: "fyi.opensocial.templateVersion#preview", src: "fyi.opensocial.templateVersion#preview", tgt: "fyi.opensocial.templateVersion#preview.image", kind: "prop", name: Some("image") }
- Breaking: RequiredEdgeAdded { vertex_id: "fyi.opensocial.templateVersion#preview", src: "fyi.opensocial.templateVersion#preview", tgt: "fyi.opensocial.templateVersion#preview.alt", kind: "prop", name: Some("alt") }
- Non-breaking: AddedEdge { src: "fyi.opensocial.templateVersion#preview", tgt: "fyi.opensocial.templateVersion#preview.size", kind: "prop", name: Some("size") }
- Non-breaking: AddedEdge { src: "fyi.opensocial.templateVersion:body", tgt: "fyi.opensocial.templateVersion:body.previews", kind: "prop", name: Some("previews") }
- Non-breaking: AddedEdge { src: "fyi.opensocial.templateVersion:body.previews", tgt: "fyi.opensocial.templateVersion:body.previews:items", kind: "items", name: None }
- Non-breaking: AddedEdge { src: "fyi.opensocial.templateVersion:body.previews:items", tgt: "fyi.opensocial.templateVersion#preview", kind: "ref", name: None }
Changes
11
{22
"$type": "com.atproto.lexicon.schema",33
"defs": {44
"main": {55
"description": "One version of a published template, as it was put out: never changed, so a tab that names it gets what was chosen. Its files are the template itself, as a folder of it has them: `template.html` (the page, drawn in a sandboxed frame with the site kit in front of it), `SKILL.md` (how to use it, for an agent), `outside.js` and `outside.html` (its public page, if its tabs can have one), `methods/<name>.js` with `lexicons/<name>.json` (the methods it brings, each a query every tab made from it answers under that tab's own namespace), and `lexicons/<nsid>.json` (kinds of record it makes up).",66
"key": "tid",77
"record": {88
"properties": {99
"changes": {1010
"description": "What's new in it, in a line or two.",1111
"maxGraphemes": 300,1212
"maxLength": 3000,1313
"type": "string"1414
},1515
"createdAt": {1616
"format": "datetime",1717
"type": "string"1818
},1919
"createdBy": {2020
"description": "Who put it out, for one a group shares, within it or with everyone: the group's own repo or members space holds it, whoever shared it.",2121
"format": "did",2222
"type": "string"2323
},2424
"entry": {2525
"description": "How a site uses it unless told otherwise; what it reads, writes and calls are what it needs to be allowed for it to work.",2626
"ref": "fyi.opensocial.template#entry",2727
"type": "ref"2828
},2929
"files": {3030
"items": {3131
"ref": "fyi.opensocial.defs#file",3232
"type": "ref"3333
},3434
"maxLength": 100,3535
"type": "array"3636
},37
"previews": {38
"description": "Pictures of a tab made from it, filled in, for whoever's choosing one: shown on its page and where a tab is added.",39
"items": {40
"ref": "#preview",41
"type": "ref"42
},43
"maxLength": 4,44
"type": "array"45
},3746
"template": {3847
"description": "The fyi.opensocial.template it's a version of.",3948
"format": "at-uri",4049
"type": "string"4150
},4251
"version": {4352
"description": "Which it is, counting from 1: each new one more than the last.",4453
"minimum": 1,4554
"type": "integer"4655
}4756
},4857
"required": [4958
"template",5059
"version",5160
"files",5261
"createdAt"5362
],5463
"type": "object"5564
},5665
"type": "record"66
},67
"preview": {68
"description": "One picture of a tab made from it.",69
"properties": {70
"alt": {71
"description": "What it shows, for whoever can't see it.",72
"maxGraphemes": 300,73
"maxLength": 3000,74
"type": "string"75
},76
"image": {77
"accept": [78
"image/png",79
"image/jpeg",80
"image/webp"81
],82
"maxSize": 1000000,83
"type": "blob"84
},85
"size": {86
"description": "What it was seen on: a wide screen or a phone.",87
"knownValues": [88
"wide",89
"phone"90
],91
"type": "string"92
}93
},94
"required": [95
"image",96
"alt"97
],98
"type": "object"5799
}58100
},59101
"id": "fyi.opensocial.templateVersion",60102
"lexicon": 161103
}