@vev-software/atlas-contracts 0.1.0 → 0.1.1
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/dist/index.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vev-software/atlas-contracts",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Public, versioned data model and interop contracts for VEV Atlas — the catalogue asset model plus manual relationships, tags and the landscape import/export document.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "dist/index.js",
|
|
8
8
|
"types": "dist/index.d.ts",
|
|
9
|
-
"files": [
|
|
9
|
+
"files": [
|
|
10
|
+
"dist",
|
|
11
|
+
"schemas"
|
|
12
|
+
],
|
|
10
13
|
"repository": {
|
|
11
14
|
"type": "git",
|
|
12
15
|
"url": "https://github.com/Vev-software/atlas-contracts"
|
|
@@ -8,6 +8,11 @@
|
|
|
8
8
|
"required": ["id", "kind", "name", "lifecycle"],
|
|
9
9
|
"properties": {
|
|
10
10
|
"id": { "$ref": "common.schema.json#/$defs/AssetId" },
|
|
11
|
+
"numericId": {
|
|
12
|
+
"type": "integer",
|
|
13
|
+
"minimum": 1,
|
|
14
|
+
"description": "Stable numeric identifier assigned by Atlas when the asset is created. Immutable, and independent of the editable name and human-readable id."
|
|
15
|
+
},
|
|
11
16
|
"kind": { "$ref": "common.schema.json#/$defs/AssetKind" },
|
|
12
17
|
"name": {
|
|
13
18
|
"type": "string",
|
|
@@ -73,6 +78,22 @@
|
|
|
73
78
|
"column": { "$ref": "common.schema.json#/$defs/ColumnDetails" }
|
|
74
79
|
}
|
|
75
80
|
}
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
"if": { "properties": { "kind": { "const": "ai-service" } } },
|
|
84
|
+
"then": {
|
|
85
|
+
"properties": {
|
|
86
|
+
"aiService": { "$ref": "common.schema.json#/$defs/AiServiceDetails" }
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"if": { "properties": { "kind": { "const": "ai-model" } } },
|
|
92
|
+
"then": {
|
|
93
|
+
"properties": {
|
|
94
|
+
"aiModel": { "$ref": "common.schema.json#/$defs/AiModelDetails" }
|
|
95
|
+
}
|
|
96
|
+
}
|
|
76
97
|
}
|
|
77
98
|
]
|
|
78
99
|
}
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
"$defs": {
|
|
7
7
|
"AssetKind": {
|
|
8
8
|
"type": "string",
|
|
9
|
-
"description": "The kind of asset held in the catalogue. The data-layer kinds (data-area, dataset, column) model the data architecture beneath a system, down to the column.",
|
|
10
|
-
"enum": ["system", "application", "server", "infrastructure", "data-area", "dataset", "column"]
|
|
9
|
+
"description": "The kind of asset held in the catalogue. The data-layer kinds (data-area, dataset, column) model the data architecture beneath a system, down to the column. The AI kinds (ai-service, ai-model) catalogue AI platforms and models as first-class assets.",
|
|
10
|
+
"enum": ["system", "application", "server", "infrastructure", "data-area", "dataset", "column", "ai-service", "ai-model"]
|
|
11
11
|
},
|
|
12
12
|
"Lifecycle": {
|
|
13
13
|
"type": "string",
|
|
@@ -124,6 +124,27 @@
|
|
|
124
124
|
"dataType": { "type": ["string", "null"], "maxLength": 128 },
|
|
125
125
|
"nullable": { "type": ["boolean", "null"] }
|
|
126
126
|
}
|
|
127
|
+
},
|
|
128
|
+
"AiServiceDetails": {
|
|
129
|
+
"type": "object",
|
|
130
|
+
"description": "Held AI service metadata. Cataloguing only: provider, endpoint and environment are recorded facts, never analysis.",
|
|
131
|
+
"additionalProperties": false,
|
|
132
|
+
"properties": {
|
|
133
|
+
"provider": { "type": ["string", "null"], "maxLength": 128 },
|
|
134
|
+
"endpoint": { "type": ["string", "null"], "maxLength": 512 },
|
|
135
|
+
"environment": { "type": ["string", "null"], "maxLength": 64 }
|
|
136
|
+
}
|
|
137
|
+
},
|
|
138
|
+
"AiModelDetails": {
|
|
139
|
+
"type": "object",
|
|
140
|
+
"description": "Held AI model metadata. Cataloguing only: model name, version, provider and embedding dimensions are recorded facts, never analysis.",
|
|
141
|
+
"additionalProperties": false,
|
|
142
|
+
"properties": {
|
|
143
|
+
"modelName": { "type": ["string", "null"], "maxLength": 128 },
|
|
144
|
+
"version": { "type": ["string", "null"], "maxLength": 64 },
|
|
145
|
+
"provider": { "type": ["string", "null"], "maxLength": 128 },
|
|
146
|
+
"embeddingDimensions": { "type": ["integer", "null"] }
|
|
147
|
+
}
|
|
127
148
|
}
|
|
128
149
|
}
|
|
129
150
|
}
|
|
@@ -80,6 +80,14 @@
|
|
|
80
80
|
{
|
|
81
81
|
"if": { "properties": { "kind": { "const": "column" } } },
|
|
82
82
|
"then": { "properties": { "column": { "$ref": "common.schema.json#/$defs/ColumnDetails" } } }
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"if": { "properties": { "kind": { "const": "ai-service" } } },
|
|
86
|
+
"then": { "properties": { "aiService": { "$ref": "common.schema.json#/$defs/AiServiceDetails" } } }
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
"if": { "properties": { "kind": { "const": "ai-model" } } },
|
|
90
|
+
"then": { "properties": { "aiModel": { "$ref": "common.schema.json#/$defs/AiModelDetails" } } }
|
|
83
91
|
}
|
|
84
92
|
]
|
|
85
93
|
},
|