archgraph-argo 0.10.43 → 0.10.44
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/LICENSE +201 -201
- package/argo/package.json +8 -8
- package/argo/schema/ImplementationToCodingHandoff.schema.json +251 -251
- package/argo/schema/ImplementationToIntentTraceProposal.schema.json +180 -180
- package/argo/schema/IntentToImplementationHandoff.schema.json +74 -74
- package/argo/schema/SystemArchitecture.schema.json +378 -378
- package/argo/schema/archimate3.2.md +7153 -7153
- package/argo/scripts/archimate32-rules.js +12301 -12301
- package/argo/scripts/generateArchitectureDiffPlantuml.js +466 -466
- package/argo/scripts/graph-rag/ARCHITECTURE.md +192 -192
- package/argo/scripts/graph-rag/canonicalProjectionAuthority.js +45 -45
- package/argo/scripts/graph-rag/embeddingQualificationGate.js +59 -59
- package/argo/scripts/graph-rag/externalProductionConfig.js +74 -74
- package/argo/scripts/graph-rag/liveEmbeddingProviderClient.js +49 -49
- package/argo/scripts/graph-rag/neo4jNativeRetrieval.js +37 -37
- package/argo/scripts/graph-rag/semantic-persistence/ARCHITECTURE.md +51 -51
- package/argo/scripts/graph-rag/semantic-persistence/productionSemanticCheckpointStore.js +99 -99
- package/argo/scripts/graph-rag/semantic-persistence/productionSemanticProjectionStore.js +171 -171
- package/argo/scripts/graph-rag/semanticOperatorError.js +38 -38
- package/argo/scripts/graph-rag/semanticOperatorJourney.js +459 -459
- package/argo/scripts/graph-rag/semanticReadinessAttestationStore.js +398 -398
- package/argo/scripts/graph-rag/systemMetadataCommandAdapter.js +269 -269
- package/argo/scripts/graph-semantics.js +220 -220
- package/argo/scripts/repositoryArgoEnvironment.js +101 -101
- package/argo/scripts/runArchitectureTests.js +583 -583
- package/argo/scripts/semanticOperatorJourneyCli.js +91 -91
- package/argo/scripts/syncSystemArchitectureToNeo4j.js +66 -66
- package/argo/scripts/test-executors/_template.js +58 -58
- package/argo/scripts/test-executors/default.js +199 -199
- package/argo/scripts/validateStageHandoff.js +458 -458
- package/argo/scripts/validateSystemArchitecture.js +253 -253
- package/argo/scripts/validateTraceProposal.js +181 -181
- package/bin/argo-deploy.js +12 -12
- package/install-argo.ps1 +27 -8
- package/package.json +1 -1
|
@@ -1,378 +1,378 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "./.argo/schema/SystemArchitecture.schema.json",
|
|
4
|
-
"title": "SystemArchitecture Knowledge Graph Schema",
|
|
5
|
-
"description": "Schema for design/KG/SystemArchitecture.json. The repository keeps its existing knowledge-graph shape, while ArchiMate 3.2 terminology is enforced for element and relationship concepts.",
|
|
6
|
-
"type": "object",
|
|
7
|
-
"additionalProperties": false,
|
|
8
|
-
"required": [
|
|
9
|
-
"name",
|
|
10
|
-
"description",
|
|
11
|
-
"elements",
|
|
12
|
-
"relationships",
|
|
13
|
-
"views"
|
|
14
|
-
],
|
|
15
|
-
"properties": {
|
|
16
|
-
"name": {
|
|
17
|
-
"type": "string",
|
|
18
|
-
"minLength": 1
|
|
19
|
-
},
|
|
20
|
-
"description": {
|
|
21
|
-
"type": "string",
|
|
22
|
-
"minLength": 1
|
|
23
|
-
},
|
|
24
|
-
"attributes": {
|
|
25
|
-
"type": "array",
|
|
26
|
-
"items": {
|
|
27
|
-
"$ref": "#/$defs/attribute"
|
|
28
|
-
}
|
|
29
|
-
},
|
|
30
|
-
"elements": {
|
|
31
|
-
"type": "array",
|
|
32
|
-
"minItems": 1,
|
|
33
|
-
"items": {
|
|
34
|
-
"$ref": "#/$defs/element"
|
|
35
|
-
}
|
|
36
|
-
},
|
|
37
|
-
"relationships": {
|
|
38
|
-
"type": "array",
|
|
39
|
-
"minItems": 1,
|
|
40
|
-
"items": {
|
|
41
|
-
"$ref": "#/$defs/relationship"
|
|
42
|
-
}
|
|
43
|
-
},
|
|
44
|
-
"views": {
|
|
45
|
-
"type": "array",
|
|
46
|
-
"minItems": 1,
|
|
47
|
-
"items": {
|
|
48
|
-
"$ref": "#/$defs/view"
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
},
|
|
52
|
-
"$defs": {
|
|
53
|
-
"identifier": {
|
|
54
|
-
"type": "string",
|
|
55
|
-
"minLength": 1,
|
|
56
|
-
"pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$"
|
|
57
|
-
},
|
|
58
|
-
"nonEmptyString": {
|
|
59
|
-
"type": "string",
|
|
60
|
-
"minLength": 1
|
|
61
|
-
},
|
|
62
|
-
"archimateElementType": {
|
|
63
|
-
"type": "string",
|
|
64
|
-
"enum": [
|
|
65
|
-
"Resource",
|
|
66
|
-
"Capability",
|
|
67
|
-
"Value Stream",
|
|
68
|
-
"Course of Action",
|
|
69
|
-
"Business Actor",
|
|
70
|
-
"Business Role",
|
|
71
|
-
"Business Collaboration",
|
|
72
|
-
"Business Interface",
|
|
73
|
-
"Business Process",
|
|
74
|
-
"Business Function",
|
|
75
|
-
"Business Interaction",
|
|
76
|
-
"Business Event",
|
|
77
|
-
"Business Service",
|
|
78
|
-
"Business Object",
|
|
79
|
-
"Contract",
|
|
80
|
-
"Representation",
|
|
81
|
-
"Product",
|
|
82
|
-
"Application Component",
|
|
83
|
-
"Application Collaboration",
|
|
84
|
-
"Application Interface",
|
|
85
|
-
"Application Process",
|
|
86
|
-
"Application Function",
|
|
87
|
-
"Application Interaction",
|
|
88
|
-
"Application Event",
|
|
89
|
-
"Application Service",
|
|
90
|
-
"Data Object",
|
|
91
|
-
"Node",
|
|
92
|
-
"Device",
|
|
93
|
-
"System Software",
|
|
94
|
-
"Technology Collaboration",
|
|
95
|
-
"Technology Interface",
|
|
96
|
-
"Path",
|
|
97
|
-
"Communication Network",
|
|
98
|
-
"Technology Process",
|
|
99
|
-
"Technology Function",
|
|
100
|
-
"Technology Interaction",
|
|
101
|
-
"Technology Event",
|
|
102
|
-
"Technology Service",
|
|
103
|
-
"Artifact",
|
|
104
|
-
"Equipment",
|
|
105
|
-
"Facility",
|
|
106
|
-
"Distribution Network",
|
|
107
|
-
"Material",
|
|
108
|
-
"Stakeholder",
|
|
109
|
-
"Driver",
|
|
110
|
-
"Assessment",
|
|
111
|
-
"Goal",
|
|
112
|
-
"Outcome",
|
|
113
|
-
"Principle",
|
|
114
|
-
"Requirement",
|
|
115
|
-
"Constraint",
|
|
116
|
-
"Meaning",
|
|
117
|
-
"Value",
|
|
118
|
-
"Work Package",
|
|
119
|
-
"Deliverable",
|
|
120
|
-
"Implementation Event",
|
|
121
|
-
"Plateau",
|
|
122
|
-
"Gap",
|
|
123
|
-
"Grouping",
|
|
124
|
-
"Location",
|
|
125
|
-
"And Junction",
|
|
126
|
-
"Or Junction",
|
|
127
|
-
"Skill",
|
|
128
|
-
"Rule"
|
|
129
|
-
]
|
|
130
|
-
},
|
|
131
|
-
"archimateRelationshipType": {
|
|
132
|
-
"type": "string",
|
|
133
|
-
"enum": [
|
|
134
|
-
"Association",
|
|
135
|
-
"Composition",
|
|
136
|
-
"Aggregation",
|
|
137
|
-
"Assignment",
|
|
138
|
-
"Realization",
|
|
139
|
-
"Serving",
|
|
140
|
-
"Access",
|
|
141
|
-
"Influence",
|
|
142
|
-
"Triggering",
|
|
143
|
-
"Flow",
|
|
144
|
-
"Specialization"
|
|
145
|
-
]
|
|
146
|
-
},
|
|
147
|
-
"attribute": {
|
|
148
|
-
"type": "object",
|
|
149
|
-
"additionalProperties": false,
|
|
150
|
-
"required": [
|
|
151
|
-
"name"
|
|
152
|
-
],
|
|
153
|
-
"description": "Generic EA-style attribute container. Use this for architecture annotations such as verification_focus, external_scope, acceptance_outcomes, and design_risks instead of introducing dedicated top-level fields.",
|
|
154
|
-
"properties": {
|
|
155
|
-
"name": {
|
|
156
|
-
"$ref": "#/$defs/nonEmptyString"
|
|
157
|
-
},
|
|
158
|
-
"description": {
|
|
159
|
-
"type": "string"
|
|
160
|
-
},
|
|
161
|
-
"value": {
|
|
162
|
-
"type": "string"
|
|
163
|
-
},
|
|
164
|
-
"content": {
|
|
165
|
-
"type": "string"
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
},
|
|
169
|
-
"subdiagramView": {
|
|
170
|
-
"type": "object",
|
|
171
|
-
"additionalProperties": false,
|
|
172
|
-
"required": [
|
|
173
|
-
"view_id",
|
|
174
|
-
"view_name"
|
|
175
|
-
],
|
|
176
|
-
"properties": {
|
|
177
|
-
"view_id": {
|
|
178
|
-
"$ref": "#/$defs/identifier"
|
|
179
|
-
},
|
|
180
|
-
"view_name": {
|
|
181
|
-
"$ref": "#/$defs/nonEmptyString"
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
},
|
|
185
|
-
"testcase": {
|
|
186
|
-
"type": "object",
|
|
187
|
-
"additionalProperties": false,
|
|
188
|
-
"required": [
|
|
189
|
-
"name",
|
|
190
|
-
"description",
|
|
191
|
-
"type",
|
|
192
|
-
"Input",
|
|
193
|
-
"acceptanceCriteria"
|
|
194
|
-
],
|
|
195
|
-
"properties": {
|
|
196
|
-
"name": {
|
|
197
|
-
"$ref": "#/$defs/nonEmptyString",
|
|
198
|
-
"description": "Stable testcase identifier. Use the testcase name itself as the long-lived identity; do not add a separate testcase id field."
|
|
199
|
-
},
|
|
200
|
-
"description": {
|
|
201
|
-
"$ref": "#/$defs/nonEmptyString",
|
|
202
|
-
"description": "Place the intent being verified here. Each testcase should normally be mounted under exactly one element rather than using extra verifies_elements or verifies_intents fields."
|
|
203
|
-
},
|
|
204
|
-
"type": {
|
|
205
|
-
"type": "string",
|
|
206
|
-
"enum": [
|
|
207
|
-
"Acceptance Test"
|
|
208
|
-
]
|
|
209
|
-
},
|
|
210
|
-
"Input": {
|
|
211
|
-
"$ref": "#/$defs/nonEmptyString"
|
|
212
|
-
},
|
|
213
|
-
"acceptanceCriteria": {
|
|
214
|
-
"$ref": "#/$defs/nonEmptyString",
|
|
215
|
-
"description": "By the end of implementation design, this must be the concrete workspace-relative executable testcase entrypoint for the testcase, optionally including a pytest node id selector such as tests/test_x.py::test_y, rather than descriptive prose."
|
|
216
|
-
},
|
|
217
|
-
"TestResults": {
|
|
218
|
-
"$ref": "#/$defs/nonEmptyString"
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
},
|
|
222
|
-
"element": {
|
|
223
|
-
"type": "object",
|
|
224
|
-
"additionalProperties": false,
|
|
225
|
-
"required": [
|
|
226
|
-
"id",
|
|
227
|
-
"name",
|
|
228
|
-
"type"
|
|
229
|
-
],
|
|
230
|
-
"properties": {
|
|
231
|
-
"id": {
|
|
232
|
-
"$ref": "#/$defs/identifier"
|
|
233
|
-
},
|
|
234
|
-
"name": {
|
|
235
|
-
"$ref": "#/$defs/nonEmptyString"
|
|
236
|
-
},
|
|
237
|
-
"parent": {
|
|
238
|
-
"$ref": "#/$defs/identifier"
|
|
239
|
-
},
|
|
240
|
-
"type": {
|
|
241
|
-
"$ref": "#/$defs/archimateElementType"
|
|
242
|
-
},
|
|
243
|
-
"alias": {
|
|
244
|
-
"type": "string"
|
|
245
|
-
},
|
|
246
|
-
"classifier": {
|
|
247
|
-
"type": "string"
|
|
248
|
-
},
|
|
249
|
-
"description": {
|
|
250
|
-
"type": "string"
|
|
251
|
-
},
|
|
252
|
-
"attributes": {
|
|
253
|
-
"type": "array",
|
|
254
|
-
"description": "Use attributes to store additional architecture intent metadata, including verification_focus, external_scope, acceptance_outcomes, and design_risks.",
|
|
255
|
-
"items": {
|
|
256
|
-
"$ref": "#/$defs/attribute"
|
|
257
|
-
}
|
|
258
|
-
},
|
|
259
|
-
"subdiagram_views": {
|
|
260
|
-
"type": "array",
|
|
261
|
-
"items": {
|
|
262
|
-
"$ref": "#/$defs/subdiagramView"
|
|
263
|
-
}
|
|
264
|
-
},
|
|
265
|
-
"testcases": {
|
|
266
|
-
"type": "array",
|
|
267
|
-
"items": {
|
|
268
|
-
"$ref": "#/$defs/testcase"
|
|
269
|
-
}
|
|
270
|
-
}
|
|
271
|
-
}
|
|
272
|
-
},
|
|
273
|
-
"relationshipAttribute": {
|
|
274
|
-
"type": "object",
|
|
275
|
-
"additionalProperties": false,
|
|
276
|
-
"required": [
|
|
277
|
-
"name"
|
|
278
|
-
],
|
|
279
|
-
"properties": {
|
|
280
|
-
"name": {
|
|
281
|
-
"$ref": "#/$defs/nonEmptyString"
|
|
282
|
-
},
|
|
283
|
-
"description": {
|
|
284
|
-
"$ref": "#/$defs/nonEmptyString"
|
|
285
|
-
}
|
|
286
|
-
}
|
|
287
|
-
},
|
|
288
|
-
"relationship": {
|
|
289
|
-
"type": "object",
|
|
290
|
-
"additionalProperties": false,
|
|
291
|
-
"required": [
|
|
292
|
-
"id",
|
|
293
|
-
"statement",
|
|
294
|
-
"name",
|
|
295
|
-
"type",
|
|
296
|
-
"source_id",
|
|
297
|
-
"target_id",
|
|
298
|
-
"source_name",
|
|
299
|
-
"target_name"
|
|
300
|
-
],
|
|
301
|
-
"properties": {
|
|
302
|
-
"id": {
|
|
303
|
-
"$ref": "#/$defs/identifier"
|
|
304
|
-
},
|
|
305
|
-
"statement": {
|
|
306
|
-
"$ref": "#/$defs/nonEmptyString"
|
|
307
|
-
},
|
|
308
|
-
"name": {
|
|
309
|
-
"$ref": "#/$defs/nonEmptyString"
|
|
310
|
-
},
|
|
311
|
-
"type": {
|
|
312
|
-
"$ref": "#/$defs/archimateRelationshipType"
|
|
313
|
-
},
|
|
314
|
-
"description": {
|
|
315
|
-
"type": "string"
|
|
316
|
-
},
|
|
317
|
-
"document": {
|
|
318
|
-
"type": "string"
|
|
319
|
-
},
|
|
320
|
-
"attributes": {
|
|
321
|
-
"type": "array",
|
|
322
|
-
"items": {
|
|
323
|
-
"$ref": "#/$defs/relationshipAttribute"
|
|
324
|
-
}
|
|
325
|
-
},
|
|
326
|
-
"source_id": {
|
|
327
|
-
"$ref": "#/$defs/identifier"
|
|
328
|
-
},
|
|
329
|
-
"target_id": {
|
|
330
|
-
"$ref": "#/$defs/identifier"
|
|
331
|
-
},
|
|
332
|
-
"source_name": {
|
|
333
|
-
"$ref": "#/$defs/nonEmptyString"
|
|
334
|
-
},
|
|
335
|
-
"target_name": {
|
|
336
|
-
"$ref": "#/$defs/nonEmptyString"
|
|
337
|
-
}
|
|
338
|
-
}
|
|
339
|
-
},
|
|
340
|
-
"view": {
|
|
341
|
-
"type": "object",
|
|
342
|
-
"additionalProperties": false,
|
|
343
|
-
"required": [
|
|
344
|
-
"view_id",
|
|
345
|
-
"view_name"
|
|
346
|
-
],
|
|
347
|
-
"properties": {
|
|
348
|
-
"view_id": {
|
|
349
|
-
"$ref": "#/$defs/identifier"
|
|
350
|
-
},
|
|
351
|
-
"view_name": {
|
|
352
|
-
"$ref": "#/$defs/nonEmptyString"
|
|
353
|
-
},
|
|
354
|
-
"parent_element_id": {
|
|
355
|
-
"$ref": "#/$defs/identifier"
|
|
356
|
-
},
|
|
357
|
-
"parent_element_name": {
|
|
358
|
-
"type": "string"
|
|
359
|
-
},
|
|
360
|
-
"description": {
|
|
361
|
-
"type": "string"
|
|
362
|
-
},
|
|
363
|
-
"included_elements": {
|
|
364
|
-
"type": "array",
|
|
365
|
-
"items": {
|
|
366
|
-
"$ref": "#/$defs/identifier"
|
|
367
|
-
}
|
|
368
|
-
},
|
|
369
|
-
"included_relationships": {
|
|
370
|
-
"type": "array",
|
|
371
|
-
"items": {
|
|
372
|
-
"$ref": "#/$defs/identifier"
|
|
373
|
-
}
|
|
374
|
-
}
|
|
375
|
-
}
|
|
376
|
-
}
|
|
377
|
-
}
|
|
378
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "./.argo/schema/SystemArchitecture.schema.json",
|
|
4
|
+
"title": "SystemArchitecture Knowledge Graph Schema",
|
|
5
|
+
"description": "Schema for design/KG/SystemArchitecture.json. The repository keeps its existing knowledge-graph shape, while ArchiMate 3.2 terminology is enforced for element and relationship concepts.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": false,
|
|
8
|
+
"required": [
|
|
9
|
+
"name",
|
|
10
|
+
"description",
|
|
11
|
+
"elements",
|
|
12
|
+
"relationships",
|
|
13
|
+
"views"
|
|
14
|
+
],
|
|
15
|
+
"properties": {
|
|
16
|
+
"name": {
|
|
17
|
+
"type": "string",
|
|
18
|
+
"minLength": 1
|
|
19
|
+
},
|
|
20
|
+
"description": {
|
|
21
|
+
"type": "string",
|
|
22
|
+
"minLength": 1
|
|
23
|
+
},
|
|
24
|
+
"attributes": {
|
|
25
|
+
"type": "array",
|
|
26
|
+
"items": {
|
|
27
|
+
"$ref": "#/$defs/attribute"
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"elements": {
|
|
31
|
+
"type": "array",
|
|
32
|
+
"minItems": 1,
|
|
33
|
+
"items": {
|
|
34
|
+
"$ref": "#/$defs/element"
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
"relationships": {
|
|
38
|
+
"type": "array",
|
|
39
|
+
"minItems": 1,
|
|
40
|
+
"items": {
|
|
41
|
+
"$ref": "#/$defs/relationship"
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
"views": {
|
|
45
|
+
"type": "array",
|
|
46
|
+
"minItems": 1,
|
|
47
|
+
"items": {
|
|
48
|
+
"$ref": "#/$defs/view"
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
"$defs": {
|
|
53
|
+
"identifier": {
|
|
54
|
+
"type": "string",
|
|
55
|
+
"minLength": 1,
|
|
56
|
+
"pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$"
|
|
57
|
+
},
|
|
58
|
+
"nonEmptyString": {
|
|
59
|
+
"type": "string",
|
|
60
|
+
"minLength": 1
|
|
61
|
+
},
|
|
62
|
+
"archimateElementType": {
|
|
63
|
+
"type": "string",
|
|
64
|
+
"enum": [
|
|
65
|
+
"Resource",
|
|
66
|
+
"Capability",
|
|
67
|
+
"Value Stream",
|
|
68
|
+
"Course of Action",
|
|
69
|
+
"Business Actor",
|
|
70
|
+
"Business Role",
|
|
71
|
+
"Business Collaboration",
|
|
72
|
+
"Business Interface",
|
|
73
|
+
"Business Process",
|
|
74
|
+
"Business Function",
|
|
75
|
+
"Business Interaction",
|
|
76
|
+
"Business Event",
|
|
77
|
+
"Business Service",
|
|
78
|
+
"Business Object",
|
|
79
|
+
"Contract",
|
|
80
|
+
"Representation",
|
|
81
|
+
"Product",
|
|
82
|
+
"Application Component",
|
|
83
|
+
"Application Collaboration",
|
|
84
|
+
"Application Interface",
|
|
85
|
+
"Application Process",
|
|
86
|
+
"Application Function",
|
|
87
|
+
"Application Interaction",
|
|
88
|
+
"Application Event",
|
|
89
|
+
"Application Service",
|
|
90
|
+
"Data Object",
|
|
91
|
+
"Node",
|
|
92
|
+
"Device",
|
|
93
|
+
"System Software",
|
|
94
|
+
"Technology Collaboration",
|
|
95
|
+
"Technology Interface",
|
|
96
|
+
"Path",
|
|
97
|
+
"Communication Network",
|
|
98
|
+
"Technology Process",
|
|
99
|
+
"Technology Function",
|
|
100
|
+
"Technology Interaction",
|
|
101
|
+
"Technology Event",
|
|
102
|
+
"Technology Service",
|
|
103
|
+
"Artifact",
|
|
104
|
+
"Equipment",
|
|
105
|
+
"Facility",
|
|
106
|
+
"Distribution Network",
|
|
107
|
+
"Material",
|
|
108
|
+
"Stakeholder",
|
|
109
|
+
"Driver",
|
|
110
|
+
"Assessment",
|
|
111
|
+
"Goal",
|
|
112
|
+
"Outcome",
|
|
113
|
+
"Principle",
|
|
114
|
+
"Requirement",
|
|
115
|
+
"Constraint",
|
|
116
|
+
"Meaning",
|
|
117
|
+
"Value",
|
|
118
|
+
"Work Package",
|
|
119
|
+
"Deliverable",
|
|
120
|
+
"Implementation Event",
|
|
121
|
+
"Plateau",
|
|
122
|
+
"Gap",
|
|
123
|
+
"Grouping",
|
|
124
|
+
"Location",
|
|
125
|
+
"And Junction",
|
|
126
|
+
"Or Junction",
|
|
127
|
+
"Skill",
|
|
128
|
+
"Rule"
|
|
129
|
+
]
|
|
130
|
+
},
|
|
131
|
+
"archimateRelationshipType": {
|
|
132
|
+
"type": "string",
|
|
133
|
+
"enum": [
|
|
134
|
+
"Association",
|
|
135
|
+
"Composition",
|
|
136
|
+
"Aggregation",
|
|
137
|
+
"Assignment",
|
|
138
|
+
"Realization",
|
|
139
|
+
"Serving",
|
|
140
|
+
"Access",
|
|
141
|
+
"Influence",
|
|
142
|
+
"Triggering",
|
|
143
|
+
"Flow",
|
|
144
|
+
"Specialization"
|
|
145
|
+
]
|
|
146
|
+
},
|
|
147
|
+
"attribute": {
|
|
148
|
+
"type": "object",
|
|
149
|
+
"additionalProperties": false,
|
|
150
|
+
"required": [
|
|
151
|
+
"name"
|
|
152
|
+
],
|
|
153
|
+
"description": "Generic EA-style attribute container. Use this for architecture annotations such as verification_focus, external_scope, acceptance_outcomes, and design_risks instead of introducing dedicated top-level fields.",
|
|
154
|
+
"properties": {
|
|
155
|
+
"name": {
|
|
156
|
+
"$ref": "#/$defs/nonEmptyString"
|
|
157
|
+
},
|
|
158
|
+
"description": {
|
|
159
|
+
"type": "string"
|
|
160
|
+
},
|
|
161
|
+
"value": {
|
|
162
|
+
"type": "string"
|
|
163
|
+
},
|
|
164
|
+
"content": {
|
|
165
|
+
"type": "string"
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
"subdiagramView": {
|
|
170
|
+
"type": "object",
|
|
171
|
+
"additionalProperties": false,
|
|
172
|
+
"required": [
|
|
173
|
+
"view_id",
|
|
174
|
+
"view_name"
|
|
175
|
+
],
|
|
176
|
+
"properties": {
|
|
177
|
+
"view_id": {
|
|
178
|
+
"$ref": "#/$defs/identifier"
|
|
179
|
+
},
|
|
180
|
+
"view_name": {
|
|
181
|
+
"$ref": "#/$defs/nonEmptyString"
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
},
|
|
185
|
+
"testcase": {
|
|
186
|
+
"type": "object",
|
|
187
|
+
"additionalProperties": false,
|
|
188
|
+
"required": [
|
|
189
|
+
"name",
|
|
190
|
+
"description",
|
|
191
|
+
"type",
|
|
192
|
+
"Input",
|
|
193
|
+
"acceptanceCriteria"
|
|
194
|
+
],
|
|
195
|
+
"properties": {
|
|
196
|
+
"name": {
|
|
197
|
+
"$ref": "#/$defs/nonEmptyString",
|
|
198
|
+
"description": "Stable testcase identifier. Use the testcase name itself as the long-lived identity; do not add a separate testcase id field."
|
|
199
|
+
},
|
|
200
|
+
"description": {
|
|
201
|
+
"$ref": "#/$defs/nonEmptyString",
|
|
202
|
+
"description": "Place the intent being verified here. Each testcase should normally be mounted under exactly one element rather than using extra verifies_elements or verifies_intents fields."
|
|
203
|
+
},
|
|
204
|
+
"type": {
|
|
205
|
+
"type": "string",
|
|
206
|
+
"enum": [
|
|
207
|
+
"Acceptance Test"
|
|
208
|
+
]
|
|
209
|
+
},
|
|
210
|
+
"Input": {
|
|
211
|
+
"$ref": "#/$defs/nonEmptyString"
|
|
212
|
+
},
|
|
213
|
+
"acceptanceCriteria": {
|
|
214
|
+
"$ref": "#/$defs/nonEmptyString",
|
|
215
|
+
"description": "By the end of implementation design, this must be the concrete workspace-relative executable testcase entrypoint for the testcase, optionally including a pytest node id selector such as tests/test_x.py::test_y, rather than descriptive prose."
|
|
216
|
+
},
|
|
217
|
+
"TestResults": {
|
|
218
|
+
"$ref": "#/$defs/nonEmptyString"
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
},
|
|
222
|
+
"element": {
|
|
223
|
+
"type": "object",
|
|
224
|
+
"additionalProperties": false,
|
|
225
|
+
"required": [
|
|
226
|
+
"id",
|
|
227
|
+
"name",
|
|
228
|
+
"type"
|
|
229
|
+
],
|
|
230
|
+
"properties": {
|
|
231
|
+
"id": {
|
|
232
|
+
"$ref": "#/$defs/identifier"
|
|
233
|
+
},
|
|
234
|
+
"name": {
|
|
235
|
+
"$ref": "#/$defs/nonEmptyString"
|
|
236
|
+
},
|
|
237
|
+
"parent": {
|
|
238
|
+
"$ref": "#/$defs/identifier"
|
|
239
|
+
},
|
|
240
|
+
"type": {
|
|
241
|
+
"$ref": "#/$defs/archimateElementType"
|
|
242
|
+
},
|
|
243
|
+
"alias": {
|
|
244
|
+
"type": "string"
|
|
245
|
+
},
|
|
246
|
+
"classifier": {
|
|
247
|
+
"type": "string"
|
|
248
|
+
},
|
|
249
|
+
"description": {
|
|
250
|
+
"type": "string"
|
|
251
|
+
},
|
|
252
|
+
"attributes": {
|
|
253
|
+
"type": "array",
|
|
254
|
+
"description": "Use attributes to store additional architecture intent metadata, including verification_focus, external_scope, acceptance_outcomes, and design_risks.",
|
|
255
|
+
"items": {
|
|
256
|
+
"$ref": "#/$defs/attribute"
|
|
257
|
+
}
|
|
258
|
+
},
|
|
259
|
+
"subdiagram_views": {
|
|
260
|
+
"type": "array",
|
|
261
|
+
"items": {
|
|
262
|
+
"$ref": "#/$defs/subdiagramView"
|
|
263
|
+
}
|
|
264
|
+
},
|
|
265
|
+
"testcases": {
|
|
266
|
+
"type": "array",
|
|
267
|
+
"items": {
|
|
268
|
+
"$ref": "#/$defs/testcase"
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
},
|
|
273
|
+
"relationshipAttribute": {
|
|
274
|
+
"type": "object",
|
|
275
|
+
"additionalProperties": false,
|
|
276
|
+
"required": [
|
|
277
|
+
"name"
|
|
278
|
+
],
|
|
279
|
+
"properties": {
|
|
280
|
+
"name": {
|
|
281
|
+
"$ref": "#/$defs/nonEmptyString"
|
|
282
|
+
},
|
|
283
|
+
"description": {
|
|
284
|
+
"$ref": "#/$defs/nonEmptyString"
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
},
|
|
288
|
+
"relationship": {
|
|
289
|
+
"type": "object",
|
|
290
|
+
"additionalProperties": false,
|
|
291
|
+
"required": [
|
|
292
|
+
"id",
|
|
293
|
+
"statement",
|
|
294
|
+
"name",
|
|
295
|
+
"type",
|
|
296
|
+
"source_id",
|
|
297
|
+
"target_id",
|
|
298
|
+
"source_name",
|
|
299
|
+
"target_name"
|
|
300
|
+
],
|
|
301
|
+
"properties": {
|
|
302
|
+
"id": {
|
|
303
|
+
"$ref": "#/$defs/identifier"
|
|
304
|
+
},
|
|
305
|
+
"statement": {
|
|
306
|
+
"$ref": "#/$defs/nonEmptyString"
|
|
307
|
+
},
|
|
308
|
+
"name": {
|
|
309
|
+
"$ref": "#/$defs/nonEmptyString"
|
|
310
|
+
},
|
|
311
|
+
"type": {
|
|
312
|
+
"$ref": "#/$defs/archimateRelationshipType"
|
|
313
|
+
},
|
|
314
|
+
"description": {
|
|
315
|
+
"type": "string"
|
|
316
|
+
},
|
|
317
|
+
"document": {
|
|
318
|
+
"type": "string"
|
|
319
|
+
},
|
|
320
|
+
"attributes": {
|
|
321
|
+
"type": "array",
|
|
322
|
+
"items": {
|
|
323
|
+
"$ref": "#/$defs/relationshipAttribute"
|
|
324
|
+
}
|
|
325
|
+
},
|
|
326
|
+
"source_id": {
|
|
327
|
+
"$ref": "#/$defs/identifier"
|
|
328
|
+
},
|
|
329
|
+
"target_id": {
|
|
330
|
+
"$ref": "#/$defs/identifier"
|
|
331
|
+
},
|
|
332
|
+
"source_name": {
|
|
333
|
+
"$ref": "#/$defs/nonEmptyString"
|
|
334
|
+
},
|
|
335
|
+
"target_name": {
|
|
336
|
+
"$ref": "#/$defs/nonEmptyString"
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
},
|
|
340
|
+
"view": {
|
|
341
|
+
"type": "object",
|
|
342
|
+
"additionalProperties": false,
|
|
343
|
+
"required": [
|
|
344
|
+
"view_id",
|
|
345
|
+
"view_name"
|
|
346
|
+
],
|
|
347
|
+
"properties": {
|
|
348
|
+
"view_id": {
|
|
349
|
+
"$ref": "#/$defs/identifier"
|
|
350
|
+
},
|
|
351
|
+
"view_name": {
|
|
352
|
+
"$ref": "#/$defs/nonEmptyString"
|
|
353
|
+
},
|
|
354
|
+
"parent_element_id": {
|
|
355
|
+
"$ref": "#/$defs/identifier"
|
|
356
|
+
},
|
|
357
|
+
"parent_element_name": {
|
|
358
|
+
"type": "string"
|
|
359
|
+
},
|
|
360
|
+
"description": {
|
|
361
|
+
"type": "string"
|
|
362
|
+
},
|
|
363
|
+
"included_elements": {
|
|
364
|
+
"type": "array",
|
|
365
|
+
"items": {
|
|
366
|
+
"$ref": "#/$defs/identifier"
|
|
367
|
+
}
|
|
368
|
+
},
|
|
369
|
+
"included_relationships": {
|
|
370
|
+
"type": "array",
|
|
371
|
+
"items": {
|
|
372
|
+
"$ref": "#/$defs/identifier"
|
|
373
|
+
}
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
}
|