ai.rizom.brain.card
Schema Diff
+15 -9
Compatibility Analysis
Breaking Changes Detected
2 breaking changes, 2 non-breaking changes.
Breaking Changes (2)
- RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "ai.rizom.brain.card#anchor", src: "ai.rizom.brain.card#anchor", tgt: "ai.rizom.brain.card#anchor.category", kind: "prop", name: Some("category") }
- ConstraintAdded ConstraintAdded { vertex_id: "ai.rizom.brain.card#anchor.kind", sort: "maxLength", value: "200" }
Non-Breaking Changes (2)
- AddedVertex AddedVertex { vertex_id: "ai.rizom.brain.card#anchor.category" }
- ConstraintRemoved ConstraintRemoved { vertex_id: "ai.rizom.brain.card#anchor.kind", sort: "knownValues" }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "ai.rizom.brain.card#anchor.category" }
Constraint Changes
- ConstraintAdded ConstraintAdded { vertex_id: "ai.rizom.brain.card#anchor.kind", sort: "maxLength", value: "200" }
- ConstraintRemoved ConstraintRemoved { vertex_id: "ai.rizom.brain.card#anchor.kind", sort: "knownValues" }
Additional Notes
- Breaking: RequiredEdgeAdded { vertex_id: "ai.rizom.brain.card#anchor", src: "ai.rizom.brain.card#anchor", tgt: "ai.rizom.brain.card#anchor.category", kind: "prop", name: Some("category") }
1
1
{
2
2
"id": "ai.rizom.brain.card",
3
3
"defs": {
4
4
"main": {
5
5
"key": "literal:self",
6
6
"type": "record",
7
7
"record": {
8
8
"type": "object",
9
9
"required": [
10
10
"siteUrl",
11
11
"brain",
12
12
"anchor",
13
13
"skills",
14
14
"model",
15
15
"version",
16
16
"createdAt"
17
17
],
18
18
"properties": {
19
19
"brain": {
20
20
"ref": "#brain",
21
21
"type": "ref",
22
22
"description": "Brain identity described by this discovery card."
23
23
},
24
24
"model": {
25
25
"type": "string",
26
26
"description": "Rizom brain model identifier."
27
27
},
28
28
"anchor": {
29
29
"ref": "#anchor",
30
30
"type": "ref",
31
-
"description": "Minimal owner/operator snapshot for discovery grouping and display."
31
+
"description": "Minimal Anchor snapshot for discovery grouping and display."
32
32
},
33
33
"skills": {
34
34
"type": "array",
35
35
"items": {
36
36
"ref": "#skill",
37
37
"type": "ref"
38
38
},
39
39
"maxLength": 100,
40
40
"description": "User-facing skills this brain advertises for discovery."
41
41
},
42
42
"siteUrl": {
43
43
"type": "string",
44
44
"format": "uri",
45
45
"description": "Public site URL. Consumers derive the A2A Agent Card URL from this base."
46
46
},
47
47
"version": {
48
48
"type": "string",
49
49
"description": "Brain runtime/model implementation version."
50
50
},
51
51
"createdAt": {
52
52
"type": "string",
53
53
"format": "datetime"
54
54
},
55
55
"updatedAt": {
56
56
"type": "string",
57
57
"format": "datetime"
58
58
}
59
59
}
60
60
},
61
61
"description": "Public discovery card for a Rizom brain. The operational A2A Agent Card is conventionally served at /.well-known/agent-card.json under siteUrl."
62
62
},
63
63
"brain": {
64
64
"type": "object",
65
65
"required": [
66
66
"did",
67
67
"name",
68
68
"role",
69
69
"purpose",
70
70
"values"
71
71
],
72
72
"properties": {
73
73
"did": {
74
74
"type": "string",
75
75
"description": "Public DID for the brain identity."
76
76
},
77
77
"name": {
78
78
"type": "string",
79
79
"maxLength": 200,
80
80
"description": "Human-readable brain name."
81
81
},
82
82
"role": {
83
83
"type": "string",
84
84
"maxLength": 500,
85
85
"description": "Brain role or persona."
86
86
},
87
87
"values": {
88
88
"type": "array",
89
89
"items": {
90
90
"type": "string",
91
91
"maxLength": 200
92
92
},
93
93
"maxLength": 50,
94
94
"description": "Public values or principles for this brain."
95
95
},
96
96
"purpose": {
97
97
"type": "string",
98
98
"maxLength": 2000,
99
99
"description": "Short public description of what this brain is for."
100
100
}
101
101
},
102
102
"description": "Brain identity described by this discovery card."
103
103
},
104
104
"skill": {
105
105
"type": "object",
106
106
"required": [
107
107
"id",
108
108
"name",
109
109
"description"
110
110
],
111
111
"properties": {
112
112
"id": {
113
113
"type": "string",
114
114
"maxLength": 200
115
115
},
116
116
"name": {
117
117
"type": "string",
118
118
"maxLength": 200
119
119
},
120
120
"tags": {
121
121
"type": "array",
122
122
"items": {
123
123
"type": "string"
124
124
},
125
125
"maxLength": 50
126
126
},
127
127
"examples": {
128
128
"type": "array",
129
129
"items": {
130
130
"type": "string"
131
131
},
132
132
"maxLength": 20
133
133
},
134
134
"description": {
135
135
"type": "string",
136
136
"maxLength": 2000
137
137
}
138
138
},
139
139
"description": "User-facing skill this brain advertises for discovery."
140
140
},
141
141
"anchor": {
142
142
"type": "object",
143
143
"required": [
144
144
"did",
145
145
"name",
146
+
"category",
146
147
"kind"
147
148
],
148
149
"properties": {
149
150
"did": {
150
151
"type": "string",
151
-
"description": "Public DID for the owner/operator anchor identity."
152
+
"description": "Public DID for the Anchor identity."
152
153
},
153
154
"kind": {
154
155
"type": "string",
155
-
"description": "Anchor type.",
156
-
"knownValues": [
157
-
"professional",
158
-
"team",
159
-
"collective"
160
-
]
156
+
"maxLength": 200,
157
+
"description": "Open semantic profile kind selected by the publishing brain."
161
158
},
162
159
"name": {
163
160
"type": "string",
164
161
"maxLength": 200,
165
162
"description": "Human-readable anchor name."
163
+
},
164
+
"category": {
165
+
"type": "string",
166
+
"description": "Stable structural category for discovery and grouping.",
167
+
"knownValues": [
168
+
"person",
169
+
"team",
170
+
"organization"
171
+
]
166
172
}
167
173
},
168
-
"description": "Minimal owner/operator snapshot for discovery grouping and display."
174
+
"description": "Minimal Anchor snapshot for discovery grouping and display."
169
175
}
170
176
},
171
177
"$type": "com.atproto.lexicon.schema",
172
178
"lexicon": 1
173
179
}