@mplp/schema 1.0.1 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +61 -0
- package/dist/index.d.ts +0 -11
- package/dist/index.js +7 -11
- package/package.json +24 -5
- package/schemas/common/common-types.schema.json +49 -49
- package/schemas/common/events.schema.json +66 -66
- package/schemas/common/identifiers.schema.json +13 -13
- package/schemas/common/learning-sample.schema.json +194 -194
- package/schemas/common/metadata.schema.json +113 -113
- package/schemas/common/trace-base.schema.json +43 -43
- package/schemas/events/mplp-event-core.schema.json +58 -58
- package/schemas/events/mplp-graph-update-event.schema.json +58 -58
- package/schemas/events/mplp-map-event.schema.json +147 -147
- package/schemas/events/mplp-pipeline-stage-event.schema.json +56 -56
- package/schemas/events/mplp-runtime-execution-event.schema.json +58 -58
- package/schemas/events/mplp-sa-event.schema.json +109 -109
- package/schemas/integration/mplp-ci-event.schema.json +130 -130
- package/schemas/integration/mplp-file-update-event.schema.json +70 -70
- package/schemas/integration/mplp-git-event.schema.json +98 -98
- package/schemas/integration/mplp-tool-event.schema.json +83 -83
- package/schemas/invariants/integration-invariants.yaml +12 -8
- package/schemas/invariants/learning-invariants.yaml +12 -8
- package/schemas/invariants/map-invariants.yaml +12 -8
- package/schemas/invariants/observability-invariants.yaml +12 -8
- package/schemas/invariants/sa-invariants.yaml +12 -8
- package/schemas/learning/mplp-learning-sample-core.schema.json +94 -94
- package/schemas/learning/mplp-learning-sample-delta.schema.json +137 -137
- package/schemas/learning/mplp-learning-sample-intent.schema.json +119 -119
- package/schemas/mplp-collab.schema.json +243 -243
- package/schemas/mplp-confirm.schema.json +226 -226
- package/schemas/mplp-context.schema.json +246 -246
- package/schemas/mplp-core.schema.json +183 -183
- package/schemas/mplp-dialog.schema.json +198 -198
- package/schemas/mplp-extension.schema.json +179 -179
- package/schemas/mplp-network.schema.json +230 -230
- package/schemas/mplp-plan.schema.json +193 -193
- package/schemas/mplp-role.schema.json +139 -139
- package/schemas/mplp-trace.schema.json +216 -216
|
@@ -1,243 +1,243 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$comment": "MPLP Protocol v1.0.0 — Frozen Specification\nFreeze Date: 2025-12-03\nStatus: FROZEN (no breaking changes permitted)\nGovernance: MPLP Protocol Governance Committee (MPGC)\nCopyright: © 2025 邦士(北京)网络科技有限公司\nLicense: Apache-2.0\nAny normative change requires a new protocol version.",
|
|
3
|
-
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
4
|
-
"$id": "https://schemas.mplp.dev/v1.0/mplp-collab.schema.json",
|
|
5
|
-
"title": "MPLP Collab Module – Core Protocol v1.0",
|
|
6
|
-
"description": "Collab Module Core Protocol: Describes the minimal required semantics (Core Profile) for multi-agent / multi-role collaboration sessions.",
|
|
7
|
-
"type": "object",
|
|
8
|
-
"additionalProperties": false,
|
|
9
|
-
"properties": {
|
|
10
|
-
"meta": {
|
|
11
|
-
"$ref": "common/metadata.schema.json",
|
|
12
|
-
"description": "[PROTOCOL-CORE] Protocol and schema metadata."
|
|
13
|
-
},
|
|
14
|
-
"governance": {
|
|
15
|
-
"type": "object",
|
|
16
|
-
"description": "[PROTOCOL-CORE] Governance metadata for lifecycle management, truth domain authority, and locking status.",
|
|
17
|
-
"properties": {
|
|
18
|
-
"lifecyclePhase": {
|
|
19
|
-
"type": "string",
|
|
20
|
-
"description": "Current phase in the lifecycle fence (e.g., 'design', 'implementation', 'review')."
|
|
21
|
-
},
|
|
22
|
-
"truthDomain": {
|
|
23
|
-
"type": "string",
|
|
24
|
-
"description": "The truth domain this object belongs to (e.g., 'requirements', 'architecture')."
|
|
25
|
-
},
|
|
26
|
-
"locked": {
|
|
27
|
-
"type": "boolean",
|
|
28
|
-
"description": "If true, this object cannot be modified except by specific governance overrides."
|
|
29
|
-
},
|
|
30
|
-
"lastConfirmRef": {
|
|
31
|
-
"$ref": "common/common-types.schema.json#/definitions/Ref",
|
|
32
|
-
"description": "Reference to the last Confirm decision that validated this state."
|
|
33
|
-
}
|
|
34
|
-
},
|
|
35
|
-
"additionalProperties": false
|
|
36
|
-
},
|
|
37
|
-
"collab_id": {
|
|
38
|
-
"$ref": "common/identifiers.schema.json",
|
|
39
|
-
"description": "[PROTOCOL-CORE] Global unique identifier for the collaboration session."
|
|
40
|
-
},
|
|
41
|
-
"context_id": {
|
|
42
|
-
"$ref": "common/identifiers.schema.json",
|
|
43
|
-
"description": "[PROTOCOL-CORE] Identifier of the Context this collaboration session belongs to."
|
|
44
|
-
},
|
|
45
|
-
"title": {
|
|
46
|
-
"type": "string",
|
|
47
|
-
"minLength": 1,
|
|
48
|
-
"description": "[PROTOCOL-CORE] Collaboration session title."
|
|
49
|
-
},
|
|
50
|
-
"purpose": {
|
|
51
|
-
"type": "string",
|
|
52
|
-
"minLength": 1,
|
|
53
|
-
"description": "[PROTOCOL-CORE] Description of the purpose/goal of the collaboration."
|
|
54
|
-
},
|
|
55
|
-
"mode": {
|
|
56
|
-
"type": "string",
|
|
57
|
-
"description": "[PROTOCOL-CORE] Collaboration mode (broadcast, round_robin, orchestrated, etc.).",
|
|
58
|
-
"enum": [
|
|
59
|
-
"broadcast",
|
|
60
|
-
"round_robin",
|
|
61
|
-
"orchestrated",
|
|
62
|
-
"swarm",
|
|
63
|
-
"pair"
|
|
64
|
-
]
|
|
65
|
-
},
|
|
66
|
-
"status": {
|
|
67
|
-
"type": "string",
|
|
68
|
-
"description": "[PROTOCOL-CORE] Collaboration session status.",
|
|
69
|
-
"enum": [
|
|
70
|
-
"draft",
|
|
71
|
-
"active",
|
|
72
|
-
"suspended",
|
|
73
|
-
"completed",
|
|
74
|
-
"cancelled"
|
|
75
|
-
]
|
|
76
|
-
},
|
|
77
|
-
"participants": {
|
|
78
|
-
"type": "array",
|
|
79
|
-
"description": "[PROTOCOL-CORE] List of roles/Agents participating in the collaboration.",
|
|
80
|
-
"minItems": 1,
|
|
81
|
-
"items": {
|
|
82
|
-
"$ref": "#/$defs/collab_participant_core"
|
|
83
|
-
}
|
|
84
|
-
},
|
|
85
|
-
"created_at": {
|
|
86
|
-
"type": "string",
|
|
87
|
-
"format": "date-time",
|
|
88
|
-
"description": "[PROTOCOL-CORE] Creation time (ISO 8601)."
|
|
89
|
-
},
|
|
90
|
-
"updated_at": {
|
|
91
|
-
"type": "string",
|
|
92
|
-
"format": "date-time",
|
|
93
|
-
"description": "[PROTOCOL-CORE] Last update time (ISO 8601)."
|
|
94
|
-
},
|
|
95
|
-
"trace": {
|
|
96
|
-
"$ref": "common/trace-base.schema.json",
|
|
97
|
-
"description": "[PROTOCOL-CORE] Trace reference bound to this collaboration session."
|
|
98
|
-
},
|
|
99
|
-
"events": {
|
|
100
|
-
"type": "array",
|
|
101
|
-
"description": "[PROTOCOL-CORE] List of key events directly related to this collaboration.",
|
|
102
|
-
"items": {
|
|
103
|
-
"$ref": "common/events.schema.json"
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
},
|
|
107
|
-
"required": [
|
|
108
|
-
"meta",
|
|
109
|
-
"collab_id",
|
|
110
|
-
"context_id",
|
|
111
|
-
"title",
|
|
112
|
-
"purpose",
|
|
113
|
-
"mode",
|
|
114
|
-
"status",
|
|
115
|
-
"participants",
|
|
116
|
-
"created_at"
|
|
117
|
-
],
|
|
118
|
-
"$defs": {
|
|
119
|
-
"collab_core_properties": {
|
|
120
|
-
"type": "object",
|
|
121
|
-
"properties": {
|
|
122
|
-
"meta": {
|
|
123
|
-
"$ref": "common/metadata.schema.json",
|
|
124
|
-
"description": "[PROTOCOL-CORE] Protocol and schema metadata."
|
|
125
|
-
},
|
|
126
|
-
"collab_id": {
|
|
127
|
-
"$ref": "common/identifiers.schema.json",
|
|
128
|
-
"description": "[PROTOCOL-CORE] Global unique identifier for the collaboration session."
|
|
129
|
-
},
|
|
130
|
-
"context_id": {
|
|
131
|
-
"$ref": "common/identifiers.schema.json",
|
|
132
|
-
"description": "[PROTOCOL-CORE] Identifier of the Context this collaboration session belongs to."
|
|
133
|
-
},
|
|
134
|
-
"title": {
|
|
135
|
-
"type": "string",
|
|
136
|
-
"minLength": 1,
|
|
137
|
-
"description": "[PROTOCOL-CORE] Collaboration session title."
|
|
138
|
-
},
|
|
139
|
-
"purpose": {
|
|
140
|
-
"type": "string",
|
|
141
|
-
"minLength": 1,
|
|
142
|
-
"description": "[PROTOCOL-CORE] Description of the purpose/goal of the collaboration."
|
|
143
|
-
},
|
|
144
|
-
"mode": {
|
|
145
|
-
"type": "string",
|
|
146
|
-
"description": "[PROTOCOL-CORE] Collaboration mode (broadcast, round_robin, orchestrated, etc.).",
|
|
147
|
-
"enum": [
|
|
148
|
-
"broadcast",
|
|
149
|
-
"round_robin",
|
|
150
|
-
"orchestrated",
|
|
151
|
-
"swarm",
|
|
152
|
-
"pair"
|
|
153
|
-
]
|
|
154
|
-
},
|
|
155
|
-
"status": {
|
|
156
|
-
"type": "string",
|
|
157
|
-
"description": "[PROTOCOL-CORE] Collaboration session status.",
|
|
158
|
-
"enum": [
|
|
159
|
-
"draft",
|
|
160
|
-
"active",
|
|
161
|
-
"suspended",
|
|
162
|
-
"completed",
|
|
163
|
-
"cancelled"
|
|
164
|
-
]
|
|
165
|
-
},
|
|
166
|
-
"participants": {
|
|
167
|
-
"type": "array",
|
|
168
|
-
"description": "[PROTOCOL-CORE] List of roles/Agents participating in the collaboration.",
|
|
169
|
-
"minItems": 1,
|
|
170
|
-
"items": {
|
|
171
|
-
"$ref": "#/$defs/collab_participant_core"
|
|
172
|
-
}
|
|
173
|
-
},
|
|
174
|
-
"created_at": {
|
|
175
|
-
"type": "string",
|
|
176
|
-
"format": "date-time",
|
|
177
|
-
"description": "[PROTOCOL-CORE] Creation time (ISO 8601)."
|
|
178
|
-
},
|
|
179
|
-
"updated_at": {
|
|
180
|
-
"type": "string",
|
|
181
|
-
"format": "date-time",
|
|
182
|
-
"description": "[PROTOCOL-CORE] Last update time (ISO 8601)."
|
|
183
|
-
},
|
|
184
|
-
"trace": {
|
|
185
|
-
"$ref": "common/trace-base.schema.json",
|
|
186
|
-
"description": "[PROTOCOL-CORE] Trace reference bound to this collaboration session."
|
|
187
|
-
},
|
|
188
|
-
"events": {
|
|
189
|
-
"type": "array",
|
|
190
|
-
"description": "[PROTOCOL-CORE] List of key events directly related to this collaboration.",
|
|
191
|
-
"items": {
|
|
192
|
-
"$ref": "common/events.schema.json"
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
},
|
|
196
|
-
"required": [
|
|
197
|
-
"meta",
|
|
198
|
-
"collab_id",
|
|
199
|
-
"context_id",
|
|
200
|
-
"title",
|
|
201
|
-
"purpose",
|
|
202
|
-
"mode",
|
|
203
|
-
"status",
|
|
204
|
-
"participants",
|
|
205
|
-
"created_at"
|
|
206
|
-
]
|
|
207
|
-
},
|
|
208
|
-
"collab_participant_core": {
|
|
209
|
-
"type": "object",
|
|
210
|
-
"description": "[PROTOCOL-CORE] Minimal required semantics for a collaboration participant.",
|
|
211
|
-
"additionalProperties": false,
|
|
212
|
-
"properties": {
|
|
213
|
-
"participant_id": {
|
|
214
|
-
"type": "string",
|
|
215
|
-
"minLength": 1,
|
|
216
|
-
"description": "[PROTOCOL-CORE] Participant identifier (can be Role/Agent/External ID)."
|
|
217
|
-
},
|
|
218
|
-
"role_id": {
|
|
219
|
-
"type": "string",
|
|
220
|
-
"description": "[PROTOCOL-CORE] Role ID bound to this participant (corresponds to role_id in Role module)."
|
|
221
|
-
},
|
|
222
|
-
"kind": {
|
|
223
|
-
"type": "string",
|
|
224
|
-
"description": "[PROTOCOL-CORE] Participant type.",
|
|
225
|
-
"enum": [
|
|
226
|
-
"agent",
|
|
227
|
-
"human",
|
|
228
|
-
"system",
|
|
229
|
-
"external"
|
|
230
|
-
]
|
|
231
|
-
},
|
|
232
|
-
"display_name": {
|
|
233
|
-
"type": "string",
|
|
234
|
-
"description": "[PROTOCOL-CORE] Display name (for human identification)."
|
|
235
|
-
}
|
|
236
|
-
},
|
|
237
|
-
"required": [
|
|
238
|
-
"participant_id",
|
|
239
|
-
"kind"
|
|
240
|
-
]
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"$comment": "MPLP Protocol v1.0.0 — Frozen Specification\nFreeze Date: 2025-12-03\nStatus: FROZEN (no breaking changes permitted)\nGovernance: MPLP Protocol Governance Committee (MPGC)\nCopyright: © 2025 邦士(北京)网络科技有限公司\nLicense: Apache-2.0\nAny normative change requires a new protocol version.",
|
|
3
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
4
|
+
"$id": "https://schemas.mplp.dev/v1.0/mplp-collab.schema.json",
|
|
5
|
+
"title": "MPLP Collab Module – Core Protocol v1.0",
|
|
6
|
+
"description": "Collab Module Core Protocol: Describes the minimal required semantics (Core Profile) for multi-agent / multi-role collaboration sessions.",
|
|
7
|
+
"type": "object",
|
|
8
|
+
"additionalProperties": false,
|
|
9
|
+
"properties": {
|
|
10
|
+
"meta": {
|
|
11
|
+
"$ref": "common/metadata.schema.json",
|
|
12
|
+
"description": "[PROTOCOL-CORE] Protocol and schema metadata."
|
|
13
|
+
},
|
|
14
|
+
"governance": {
|
|
15
|
+
"type": "object",
|
|
16
|
+
"description": "[PROTOCOL-CORE] Governance metadata for lifecycle management, truth domain authority, and locking status.",
|
|
17
|
+
"properties": {
|
|
18
|
+
"lifecyclePhase": {
|
|
19
|
+
"type": "string",
|
|
20
|
+
"description": "Current phase in the lifecycle fence (e.g., 'design', 'implementation', 'review')."
|
|
21
|
+
},
|
|
22
|
+
"truthDomain": {
|
|
23
|
+
"type": "string",
|
|
24
|
+
"description": "The truth domain this object belongs to (e.g., 'requirements', 'architecture')."
|
|
25
|
+
},
|
|
26
|
+
"locked": {
|
|
27
|
+
"type": "boolean",
|
|
28
|
+
"description": "If true, this object cannot be modified except by specific governance overrides."
|
|
29
|
+
},
|
|
30
|
+
"lastConfirmRef": {
|
|
31
|
+
"$ref": "common/common-types.schema.json#/definitions/Ref",
|
|
32
|
+
"description": "Reference to the last Confirm decision that validated this state."
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
"additionalProperties": false
|
|
36
|
+
},
|
|
37
|
+
"collab_id": {
|
|
38
|
+
"$ref": "common/identifiers.schema.json",
|
|
39
|
+
"description": "[PROTOCOL-CORE] Global unique identifier for the collaboration session."
|
|
40
|
+
},
|
|
41
|
+
"context_id": {
|
|
42
|
+
"$ref": "common/identifiers.schema.json",
|
|
43
|
+
"description": "[PROTOCOL-CORE] Identifier of the Context this collaboration session belongs to."
|
|
44
|
+
},
|
|
45
|
+
"title": {
|
|
46
|
+
"type": "string",
|
|
47
|
+
"minLength": 1,
|
|
48
|
+
"description": "[PROTOCOL-CORE] Collaboration session title."
|
|
49
|
+
},
|
|
50
|
+
"purpose": {
|
|
51
|
+
"type": "string",
|
|
52
|
+
"minLength": 1,
|
|
53
|
+
"description": "[PROTOCOL-CORE] Description of the purpose/goal of the collaboration."
|
|
54
|
+
},
|
|
55
|
+
"mode": {
|
|
56
|
+
"type": "string",
|
|
57
|
+
"description": "[PROTOCOL-CORE] Collaboration mode (broadcast, round_robin, orchestrated, etc.).",
|
|
58
|
+
"enum": [
|
|
59
|
+
"broadcast",
|
|
60
|
+
"round_robin",
|
|
61
|
+
"orchestrated",
|
|
62
|
+
"swarm",
|
|
63
|
+
"pair"
|
|
64
|
+
]
|
|
65
|
+
},
|
|
66
|
+
"status": {
|
|
67
|
+
"type": "string",
|
|
68
|
+
"description": "[PROTOCOL-CORE] Collaboration session status.",
|
|
69
|
+
"enum": [
|
|
70
|
+
"draft",
|
|
71
|
+
"active",
|
|
72
|
+
"suspended",
|
|
73
|
+
"completed",
|
|
74
|
+
"cancelled"
|
|
75
|
+
]
|
|
76
|
+
},
|
|
77
|
+
"participants": {
|
|
78
|
+
"type": "array",
|
|
79
|
+
"description": "[PROTOCOL-CORE] List of roles/Agents participating in the collaboration.",
|
|
80
|
+
"minItems": 1,
|
|
81
|
+
"items": {
|
|
82
|
+
"$ref": "#/$defs/collab_participant_core"
|
|
83
|
+
}
|
|
84
|
+
},
|
|
85
|
+
"created_at": {
|
|
86
|
+
"type": "string",
|
|
87
|
+
"format": "date-time",
|
|
88
|
+
"description": "[PROTOCOL-CORE] Creation time (ISO 8601)."
|
|
89
|
+
},
|
|
90
|
+
"updated_at": {
|
|
91
|
+
"type": "string",
|
|
92
|
+
"format": "date-time",
|
|
93
|
+
"description": "[PROTOCOL-CORE] Last update time (ISO 8601)."
|
|
94
|
+
},
|
|
95
|
+
"trace": {
|
|
96
|
+
"$ref": "common/trace-base.schema.json",
|
|
97
|
+
"description": "[PROTOCOL-CORE] Trace reference bound to this collaboration session."
|
|
98
|
+
},
|
|
99
|
+
"events": {
|
|
100
|
+
"type": "array",
|
|
101
|
+
"description": "[PROTOCOL-CORE] List of key events directly related to this collaboration.",
|
|
102
|
+
"items": {
|
|
103
|
+
"$ref": "common/events.schema.json"
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
"required": [
|
|
108
|
+
"meta",
|
|
109
|
+
"collab_id",
|
|
110
|
+
"context_id",
|
|
111
|
+
"title",
|
|
112
|
+
"purpose",
|
|
113
|
+
"mode",
|
|
114
|
+
"status",
|
|
115
|
+
"participants",
|
|
116
|
+
"created_at"
|
|
117
|
+
],
|
|
118
|
+
"$defs": {
|
|
119
|
+
"collab_core_properties": {
|
|
120
|
+
"type": "object",
|
|
121
|
+
"properties": {
|
|
122
|
+
"meta": {
|
|
123
|
+
"$ref": "common/metadata.schema.json",
|
|
124
|
+
"description": "[PROTOCOL-CORE] Protocol and schema metadata."
|
|
125
|
+
},
|
|
126
|
+
"collab_id": {
|
|
127
|
+
"$ref": "common/identifiers.schema.json",
|
|
128
|
+
"description": "[PROTOCOL-CORE] Global unique identifier for the collaboration session."
|
|
129
|
+
},
|
|
130
|
+
"context_id": {
|
|
131
|
+
"$ref": "common/identifiers.schema.json",
|
|
132
|
+
"description": "[PROTOCOL-CORE] Identifier of the Context this collaboration session belongs to."
|
|
133
|
+
},
|
|
134
|
+
"title": {
|
|
135
|
+
"type": "string",
|
|
136
|
+
"minLength": 1,
|
|
137
|
+
"description": "[PROTOCOL-CORE] Collaboration session title."
|
|
138
|
+
},
|
|
139
|
+
"purpose": {
|
|
140
|
+
"type": "string",
|
|
141
|
+
"minLength": 1,
|
|
142
|
+
"description": "[PROTOCOL-CORE] Description of the purpose/goal of the collaboration."
|
|
143
|
+
},
|
|
144
|
+
"mode": {
|
|
145
|
+
"type": "string",
|
|
146
|
+
"description": "[PROTOCOL-CORE] Collaboration mode (broadcast, round_robin, orchestrated, etc.).",
|
|
147
|
+
"enum": [
|
|
148
|
+
"broadcast",
|
|
149
|
+
"round_robin",
|
|
150
|
+
"orchestrated",
|
|
151
|
+
"swarm",
|
|
152
|
+
"pair"
|
|
153
|
+
]
|
|
154
|
+
},
|
|
155
|
+
"status": {
|
|
156
|
+
"type": "string",
|
|
157
|
+
"description": "[PROTOCOL-CORE] Collaboration session status.",
|
|
158
|
+
"enum": [
|
|
159
|
+
"draft",
|
|
160
|
+
"active",
|
|
161
|
+
"suspended",
|
|
162
|
+
"completed",
|
|
163
|
+
"cancelled"
|
|
164
|
+
]
|
|
165
|
+
},
|
|
166
|
+
"participants": {
|
|
167
|
+
"type": "array",
|
|
168
|
+
"description": "[PROTOCOL-CORE] List of roles/Agents participating in the collaboration.",
|
|
169
|
+
"minItems": 1,
|
|
170
|
+
"items": {
|
|
171
|
+
"$ref": "#/$defs/collab_participant_core"
|
|
172
|
+
}
|
|
173
|
+
},
|
|
174
|
+
"created_at": {
|
|
175
|
+
"type": "string",
|
|
176
|
+
"format": "date-time",
|
|
177
|
+
"description": "[PROTOCOL-CORE] Creation time (ISO 8601)."
|
|
178
|
+
},
|
|
179
|
+
"updated_at": {
|
|
180
|
+
"type": "string",
|
|
181
|
+
"format": "date-time",
|
|
182
|
+
"description": "[PROTOCOL-CORE] Last update time (ISO 8601)."
|
|
183
|
+
},
|
|
184
|
+
"trace": {
|
|
185
|
+
"$ref": "common/trace-base.schema.json",
|
|
186
|
+
"description": "[PROTOCOL-CORE] Trace reference bound to this collaboration session."
|
|
187
|
+
},
|
|
188
|
+
"events": {
|
|
189
|
+
"type": "array",
|
|
190
|
+
"description": "[PROTOCOL-CORE] List of key events directly related to this collaboration.",
|
|
191
|
+
"items": {
|
|
192
|
+
"$ref": "common/events.schema.json"
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
},
|
|
196
|
+
"required": [
|
|
197
|
+
"meta",
|
|
198
|
+
"collab_id",
|
|
199
|
+
"context_id",
|
|
200
|
+
"title",
|
|
201
|
+
"purpose",
|
|
202
|
+
"mode",
|
|
203
|
+
"status",
|
|
204
|
+
"participants",
|
|
205
|
+
"created_at"
|
|
206
|
+
]
|
|
207
|
+
},
|
|
208
|
+
"collab_participant_core": {
|
|
209
|
+
"type": "object",
|
|
210
|
+
"description": "[PROTOCOL-CORE] Minimal required semantics for a collaboration participant.",
|
|
211
|
+
"additionalProperties": false,
|
|
212
|
+
"properties": {
|
|
213
|
+
"participant_id": {
|
|
214
|
+
"type": "string",
|
|
215
|
+
"minLength": 1,
|
|
216
|
+
"description": "[PROTOCOL-CORE] Participant identifier (can be Role/Agent/External ID)."
|
|
217
|
+
},
|
|
218
|
+
"role_id": {
|
|
219
|
+
"type": "string",
|
|
220
|
+
"description": "[PROTOCOL-CORE] Role ID bound to this participant (corresponds to role_id in Role module)."
|
|
221
|
+
},
|
|
222
|
+
"kind": {
|
|
223
|
+
"type": "string",
|
|
224
|
+
"description": "[PROTOCOL-CORE] Participant type.",
|
|
225
|
+
"enum": [
|
|
226
|
+
"agent",
|
|
227
|
+
"human",
|
|
228
|
+
"system",
|
|
229
|
+
"external"
|
|
230
|
+
]
|
|
231
|
+
},
|
|
232
|
+
"display_name": {
|
|
233
|
+
"type": "string",
|
|
234
|
+
"description": "[PROTOCOL-CORE] Display name (for human identification)."
|
|
235
|
+
}
|
|
236
|
+
},
|
|
237
|
+
"required": [
|
|
238
|
+
"participant_id",
|
|
239
|
+
"kind"
|
|
240
|
+
]
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
}
|