am.noz.at.spl.group
Schema Diff
+8 -2
Compatibility Analysis
Breaking Changes Detected
1 breaking change, 1 non-breaking change.
Breaking Changes (1)
- RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "am.noz.at.spl.group:body", src: "am.noz.at.spl.group:body", tgt: "am.noz.at.spl.group:body.groupId", kind: "prop", name: Some("groupId") }
Non-Breaking Changes (1)
- AddedVertex AddedVertex { vertex_id: "am.noz.at.spl.group:body.groupId" }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "am.noz.at.spl.group:body.groupId" }
Additional Notes
- Breaking: RequiredEdgeAdded { vertex_id: "am.noz.at.spl.group:body", src: "am.noz.at.spl.group:body", tgt: "am.noz.at.spl.group:body.groupId", kind: "prop", name: Some("groupId") }
1
1
{
2
2
"id": "am.noz.at.spl.group",
3
3
"defs": {
4
4
"main": {
5
-
"key": "literal:self",
5
+
"key": "tid",
6
6
"type": "record",
7
7
"record": {
8
8
"type": "object",
9
9
"required": [
10
10
"schemaVersion",
11
+
"groupId",
11
12
"name",
12
13
"kind",
13
14
"defaultCurrency",
14
15
"timezone",
15
16
"simplifyDebts",
16
17
"members",
17
18
"createdAt",
18
19
"updatedAt"
19
20
],
20
21
"properties": {
21
22
"kind": {
22
23
"enum": [
23
24
"group",
24
25
"trip",
25
26
"household",
26
27
"couple",
27
28
"other"
28
29
],
29
30
"type": "string"
30
31
},
31
32
"name": {
32
33
"type": "string",
33
34
"maxLength": 256,
34
35
"minLength": 1,
35
36
"maxGraphemes": 80
36
37
},
38
+
"groupId": {
39
+
"type": "string",
40
+
"maxLength": 64,
41
+
"minLength": 1
42
+
},
37
43
"members": {
38
44
"type": "array",
39
45
"items": {
40
46
"ref": "lex:am.noz.at.spl.group#member",
41
47
"type": "ref"
42
48
},
43
49
"maxLength": 250,
44
50
"minLength": 1
45
51
},
46
52
"timezone": {
47
53
"type": "string",
48
54
"maxLength": 64,
49
55
"minLength": 1,
50
56
"description": "IANA time-zone name used for recurring expenses."
51
57
},
52
58
"createdAt": {
53
59
"type": "string",
54
60
"format": "datetime"
55
61
},
56
62
"updatedAt": {
57
63
"type": "string",
58
64
"format": "datetime"
59
65
},
60
66
"schemaVersion": {
61
67
"type": "integer",
62
68
"const": 1
63
69
},
64
70
"simplifyDebts": {
65
71
"type": "boolean"
66
72
},
67
73
"defaultCurrency": {
68
74
"type": "string",
69
75
"maxLength": 3,
70
76
"minLength": 3,
71
77
"description": "Uppercase ISO 4217 currency code, such as EUR or USD."
72
78
}
73
79
}
74
80
},
75
-
"description": "Group metadata. Only the record in the space authority's repo is canonical."
81
+
"description": "Optional group or trip metadata inside a ledger Space. Multiple groups may share one Space when they have the same members."
76
82
},
77
83
"member": {
78
84
"type": "object",
79
85
"required": [
80
86
"did",
81
87
"role",
82
88
"joinedAt",
83
89
"active"
84
90
],
85
91
"properties": {
86
92
"did": {
87
93
"type": "string",
88
94
"format": "did"
89
95
},
90
96
"role": {
91
97
"enum": [
92
98
"owner",
93
99
"admin",
94
100
"member"
95
101
],
96
102
"type": "string"
97
103
},
98
104
"active": {
99
105
"type": "boolean"
100
106
},
101
107
"joinedAt": {
102
108
"type": "string",
103
109
"format": "datetime"
104
110
}
105
111
}
106
112
}
107
113
},
108
114
"$type": "com.atproto.lexicon.schema",
109
115
"lexicon": 1
110
116
}