@mplp/schema 1.0.0

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.
Files changed (38) hide show
  1. package/LICENSE.txt +201 -0
  2. package/dist/index.d.ts +45 -0
  3. package/dist/index.js +63 -0
  4. package/package.json +38 -0
  5. package/schemas/common/common-types.schema.json +49 -0
  6. package/schemas/common/events.schema.json +66 -0
  7. package/schemas/common/identifiers.schema.json +13 -0
  8. package/schemas/common/learning-sample.schema.json +194 -0
  9. package/schemas/common/metadata.schema.json +113 -0
  10. package/schemas/common/trace-base.schema.json +43 -0
  11. package/schemas/events/mplp-event-core.schema.json +58 -0
  12. package/schemas/events/mplp-graph-update-event.schema.json +58 -0
  13. package/schemas/events/mplp-map-event.schema.json +147 -0
  14. package/schemas/events/mplp-pipeline-stage-event.schema.json +56 -0
  15. package/schemas/events/mplp-runtime-execution-event.schema.json +58 -0
  16. package/schemas/events/mplp-sa-event.schema.json +109 -0
  17. package/schemas/integration/mplp-ci-event.schema.json +130 -0
  18. package/schemas/integration/mplp-file-update-event.schema.json +70 -0
  19. package/schemas/integration/mplp-git-event.schema.json +98 -0
  20. package/schemas/integration/mplp-tool-event.schema.json +83 -0
  21. package/schemas/invariants/integration-invariants.yaml +143 -0
  22. package/schemas/invariants/learning-invariants.yaml +102 -0
  23. package/schemas/invariants/map-invariants.yaml +69 -0
  24. package/schemas/invariants/observability-invariants.yaml +102 -0
  25. package/schemas/invariants/sa-invariants.yaml +68 -0
  26. package/schemas/learning/mplp-learning-sample-core.schema.json +94 -0
  27. package/schemas/learning/mplp-learning-sample-delta.schema.json +137 -0
  28. package/schemas/learning/mplp-learning-sample-intent.schema.json +119 -0
  29. package/schemas/mplp-collab.schema.json +243 -0
  30. package/schemas/mplp-confirm.schema.json +226 -0
  31. package/schemas/mplp-context.schema.json +246 -0
  32. package/schemas/mplp-core.schema.json +183 -0
  33. package/schemas/mplp-dialog.schema.json +198 -0
  34. package/schemas/mplp-extension.schema.json +179 -0
  35. package/schemas/mplp-network.schema.json +230 -0
  36. package/schemas/mplp-plan.schema.json +193 -0
  37. package/schemas/mplp-role.schema.json +139 -0
  38. package/schemas/mplp-trace.schema.json +216 -0
@@ -0,0 +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
+ }
@@ -0,0 +1,226 @@
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-confirm.schema.json",
5
+ "title": "MPLP Confirm Module – Core Protocol v1.0",
6
+ "description": "Confirm Module Core Protocol: Describes the minimal required semantics (Core Profile) for approval requests and decision records.",
7
+ "type": "object",
8
+ "additionalProperties": false,
9
+ "properties": {
10
+ "meta": {
11
+ "$ref": "common/metadata.schema.json",
12
+ "description": "[PROTOCOL-CORE] MPLP protocol schema metadata (version, source, cross-cutting tags, etc.)."
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
+ "confirm_id": {
38
+ "$ref": "common/identifiers.schema.json",
39
+ "description": "[PROTOCOL-CORE] Global unique identifier for the approval request."
40
+ },
41
+ "target_type": {
42
+ "type": "string",
43
+ "description": "[PROTOCOL-CORE] Approval target type (type of the resource being approved).",
44
+ "enum": [
45
+ "context",
46
+ "plan",
47
+ "trace",
48
+ "extension",
49
+ "other"
50
+ ]
51
+ },
52
+ "target_id": {
53
+ "$ref": "common/identifiers.schema.json",
54
+ "description": "[PROTOCOL-CORE] Global unique identifier of the resource being approved."
55
+ },
56
+ "status": {
57
+ "type": "string",
58
+ "description": "[PROTOCOL-CORE] Current status of the approval request.",
59
+ "enum": [
60
+ "pending",
61
+ "approved",
62
+ "rejected",
63
+ "cancelled"
64
+ ]
65
+ },
66
+ "requested_by_role": {
67
+ "type": "string",
68
+ "description": "[PROTOCOL-CORE] Identifier of the role initiating the approval request (should correspond to role_id in Role module)."
69
+ },
70
+ "requested_at": {
71
+ "type": "string",
72
+ "format": "date-time",
73
+ "description": "[PROTOCOL-CORE] Approval request creation time (ISO 8601)."
74
+ },
75
+ "reason": {
76
+ "type": "string",
77
+ "description": "[PROTOCOL-CORE] Reason for the request, for humans and Agents."
78
+ },
79
+ "decisions": {
80
+ "type": "array",
81
+ "description": "[PROTOCOL-CORE] List of decision records related to this Confirm request.",
82
+ "items": {
83
+ "$ref": "#/$defs/confirm_decision_core"
84
+ }
85
+ },
86
+ "trace": {
87
+ "$ref": "common/trace-base.schema.json",
88
+ "description": "[PROTOCOL-CORE] Trace reference bound to this Confirm request (for cross-module tracing)."
89
+ },
90
+ "events": {
91
+ "type": "array",
92
+ "description": "[PROTOCOL-CORE] List of key events directly related to this Confirm request (creation, decision, cancellation, etc.).",
93
+ "items": {
94
+ "$ref": "common/events.schema.json"
95
+ }
96
+ }
97
+ },
98
+ "required": [
99
+ "meta",
100
+ "confirm_id",
101
+ "target_type",
102
+ "target_id",
103
+ "status",
104
+ "requested_by_role",
105
+ "requested_at"
106
+ ],
107
+ "$defs": {
108
+ "confirm_core_properties": {
109
+ "type": "object",
110
+ "properties": {
111
+ "meta": {
112
+ "$ref": "common/metadata.schema.json",
113
+ "description": "[PROTOCOL-CORE] MPLP protocol schema metadata (version, source, cross-cutting tags, etc.)."
114
+ },
115
+ "confirm_id": {
116
+ "$ref": "common/identifiers.schema.json",
117
+ "description": "[PROTOCOL-CORE] Global unique identifier for the approval request."
118
+ },
119
+ "target_type": {
120
+ "type": "string",
121
+ "description": "[PROTOCOL-CORE] Approval target type (type of the resource being approved).",
122
+ "enum": [
123
+ "context",
124
+ "plan",
125
+ "trace",
126
+ "extension",
127
+ "other"
128
+ ]
129
+ },
130
+ "target_id": {
131
+ "$ref": "common/identifiers.schema.json",
132
+ "description": "[PROTOCOL-CORE] Global unique identifier of the resource being approved."
133
+ },
134
+ "status": {
135
+ "type": "string",
136
+ "description": "[PROTOCOL-CORE] Current status of the approval request.",
137
+ "enum": [
138
+ "pending",
139
+ "approved",
140
+ "rejected",
141
+ "cancelled"
142
+ ]
143
+ },
144
+ "requested_by_role": {
145
+ "type": "string",
146
+ "description": "[PROTOCOL-CORE] Identifier of the role initiating the approval request (should correspond to role_id in Role module)."
147
+ },
148
+ "requested_at": {
149
+ "type": "string",
150
+ "format": "date-time",
151
+ "description": "[PROTOCOL-CORE] Approval request creation time (ISO 8601)."
152
+ },
153
+ "reason": {
154
+ "type": "string",
155
+ "description": "[PROTOCOL-CORE] Reason for the request, for humans and Agents."
156
+ },
157
+ "decisions": {
158
+ "type": "array",
159
+ "description": "[PROTOCOL-CORE] List of decision records related to this Confirm request.",
160
+ "items": {
161
+ "$ref": "#/$defs/confirm_decision_core"
162
+ }
163
+ },
164
+ "trace": {
165
+ "$ref": "common/trace-base.schema.json",
166
+ "description": "[PROTOCOL-CORE] Trace reference bound to this Confirm request (for cross-module tracing)."
167
+ },
168
+ "events": {
169
+ "type": "array",
170
+ "description": "[PROTOCOL-CORE] List of key events directly related to this Confirm request (creation, decision, cancellation, etc.).",
171
+ "items": {
172
+ "$ref": "common/events.schema.json"
173
+ }
174
+ }
175
+ },
176
+ "required": [
177
+ "meta",
178
+ "confirm_id",
179
+ "target_type",
180
+ "target_id",
181
+ "status",
182
+ "requested_by_role",
183
+ "requested_at"
184
+ ]
185
+ },
186
+ "confirm_decision_core": {
187
+ "type": "object",
188
+ "description": "[PROTOCOL-CORE] Minimal required semantics for a single approval decision record.",
189
+ "additionalProperties": false,
190
+ "properties": {
191
+ "decision_id": {
192
+ "$ref": "common/identifiers.schema.json",
193
+ "description": "[PROTOCOL-CORE] Global unique identifier for the decision record."
194
+ },
195
+ "status": {
196
+ "type": "string",
197
+ "description": "[PROTOCOL-CORE] Decision result status.",
198
+ "enum": [
199
+ "approved",
200
+ "rejected",
201
+ "cancelled"
202
+ ]
203
+ },
204
+ "decided_by_role": {
205
+ "type": "string",
206
+ "description": "[PROTOCOL-CORE] Identifier of the role making the decision (should correspond to role_id in Role module)."
207
+ },
208
+ "decided_at": {
209
+ "type": "string",
210
+ "format": "date-time",
211
+ "description": "[PROTOCOL-CORE] Decision time (ISO 8601)."
212
+ },
213
+ "reason": {
214
+ "type": "string",
215
+ "description": "[PROTOCOL-CORE] Summary of the decision reason (optional)."
216
+ }
217
+ },
218
+ "required": [
219
+ "decision_id",
220
+ "status",
221
+ "decided_by_role",
222
+ "decided_at"
223
+ ]
224
+ }
225
+ }
226
+ }