@globaltypesystem/gts-ts 0.1.0 → 0.2.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.
- package/.gitattributes +10 -0
- package/NOTICE +15 -0
- package/README.md +14 -18
- package/dist/cast.js +2 -2
- package/dist/cast.js.map +1 -1
- package/dist/cli/index.js +1 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/compatibility.d.ts +3 -1
- package/dist/compatibility.d.ts.map +1 -1
- package/dist/compatibility.js +79 -70
- package/dist/compatibility.js.map +1 -1
- package/dist/server/server.d.ts +2 -0
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +31 -0
- package/dist/server/server.js.map +1 -1
- package/dist/server/types.d.ts +7 -0
- package/dist/server/types.d.ts.map +1 -1
- package/dist/store.d.ts +9 -2
- package/dist/store.d.ts.map +1 -1
- package/dist/store.js +408 -0
- package/dist/store.js.map +1 -1
- package/dist/types.d.ts +14 -6
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/x-gts-ref.d.ts +1 -0
- package/dist/x-gts-ref.d.ts.map +1 -1
- package/dist/x-gts-ref.js +65 -0
- package/dist/x-gts-ref.js.map +1 -1
- package/package.json +4 -5
- package/src/cast.ts +2 -2
- package/src/cli/index.ts +1 -1
- package/src/compatibility.ts +90 -72
- package/src/server/server.ts +44 -0
- package/src/server/types.ts +9 -0
- package/src/store.ts +450 -2
- package/src/types.ts +14 -6
- package/src/x-gts-ref.ts +63 -0
- package/tests/gts.test.ts +5 -3
package/.gitattributes
ADDED
package/NOTICE
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
NOTICE
|
|
2
|
+
|
|
3
|
+
Copyright 2025–present Hypernetix Pte. Ltd.
|
|
4
|
+
|
|
5
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
you may not use this file except in compliance with the License.
|
|
7
|
+
You may obtain a copy of the License at
|
|
8
|
+
|
|
9
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
|
|
11
|
+
Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
See the License for the specific language governing permissions and
|
|
15
|
+
limitations under the License.
|
package/README.md
CHANGED
|
@@ -15,7 +15,7 @@ Featureset:
|
|
|
15
15
|
- [x] **OP#3 - ID Parsing**: Decompose identifiers into constituent parts (vendor, package, namespace, type, version, etc.)
|
|
16
16
|
- [x] **OP#4 - ID Pattern Matching**: Match identifiers against patterns containing wildcards
|
|
17
17
|
- [x] **OP#5 - ID to UUID Mapping**: Generate deterministic UUIDs from GTS identifiers
|
|
18
|
-
- [x] **OP#6 -
|
|
18
|
+
- [x] **OP#6 - Instance Validation**: Validate object instances against their corresponding schemas
|
|
19
19
|
- [x] **OP#7 - Relationship Resolution**: Load all schemas and instances, resolve inter-dependencies, and detect broken references
|
|
20
20
|
- [x] **OP#8 - Compatibility Checking**: Verify that schemas with different MINOR versions are compatible
|
|
21
21
|
- [x] **OP#8.1 - Backward compatibility checking**
|
|
@@ -24,6 +24,7 @@ Featureset:
|
|
|
24
24
|
- [x] **OP#9 - Version Casting**: Transform instances between compatible MINOR versions
|
|
25
25
|
- [x] **OP#10 - Query Execution**: Filter identifier collections using the GTS query language
|
|
26
26
|
- [x] **OP#11 - Attribute Access**: Retrieve property values and metadata using the attribute selector (`@`)
|
|
27
|
+
- [x] **OP#12 - Schema Validation**: Validate schema against its precedent schema
|
|
27
28
|
|
|
28
29
|
Other GTS spec [Reference Implementation](https://github.com/globaltypesystem/gts-spec/blob/main/README.md#9-reference-implementation-recommendations) recommended features support:
|
|
29
30
|
|
|
@@ -31,8 +32,8 @@ Other GTS spec [Reference Implementation](https://github.com/globaltypesystem/gt
|
|
|
31
32
|
- [x] **CLI** - command-line interface for all GTS operations
|
|
32
33
|
- [x] **Web server** - a non-production web-server with REST API for the operations processing and testing
|
|
33
34
|
- [x] **x-gts-ref** - to support special GTS entity reference annotation in schemas
|
|
34
|
-
- [ ] **YAML support** - to support YAML files (
|
|
35
|
-
- [ ] **TypeSpec support** - add [typespec.io](https://typespec.io/) files (
|
|
35
|
+
- [ ] **YAML support** - to support YAML files (`*.yml`, `*.yaml`) as input files
|
|
36
|
+
- [ ] **TypeSpec support** - add [typespec.io](https://typespec.io/) files (`*.tsp`) support
|
|
36
37
|
- [ ] **UUID for instances** - to support UUID as ID in JSON instances
|
|
37
38
|
|
|
38
39
|
## Usage
|
|
@@ -59,7 +60,7 @@ import { extractID } from '@globaltypesystem/gts-ts';
|
|
|
59
60
|
|
|
60
61
|
const content = {
|
|
61
62
|
gtsId: 'gts.vendor.pkg.ns.type.v1.0',
|
|
62
|
-
name: 'My Entity'
|
|
63
|
+
name: 'My Entity',
|
|
63
64
|
};
|
|
64
65
|
|
|
65
66
|
const extracted = extractID(content);
|
|
@@ -75,10 +76,7 @@ if (parsed.ok) {
|
|
|
75
76
|
}
|
|
76
77
|
|
|
77
78
|
// OP#4 - Pattern Matching
|
|
78
|
-
const matchResult = matchIDPattern(
|
|
79
|
-
'gts.vendor.pkg.ns.type.v1.0',
|
|
80
|
-
'gts.vendor.pkg.*'
|
|
81
|
-
);
|
|
79
|
+
const matchResult = matchIDPattern('gts.vendor.pkg.ns.type.v1.0', 'gts.vendor.pkg.*');
|
|
82
80
|
if (matchResult.match) {
|
|
83
81
|
console.log('Pattern matched!');
|
|
84
82
|
}
|
|
@@ -99,7 +97,7 @@ const gts = new GTS();
|
|
|
99
97
|
// Register an entity
|
|
100
98
|
const entity = {
|
|
101
99
|
gtsId: 'gts.vendor.pkg.ns.type.v1.0',
|
|
102
|
-
name: 'My Entity'
|
|
100
|
+
name: 'My Entity',
|
|
103
101
|
};
|
|
104
102
|
|
|
105
103
|
gts.register(entity);
|
|
@@ -116,20 +114,13 @@ console.log(`Relationships: ${relationships.relationships}`);
|
|
|
116
114
|
console.log(`Broken references: ${relationships.brokenReferences}`);
|
|
117
115
|
|
|
118
116
|
// OP#8 - Check compatibility
|
|
119
|
-
const compatResult = gts.checkCompatibility(
|
|
120
|
-
'gts.vendor.pkg.ns.type.v1~',
|
|
121
|
-
'gts.vendor.pkg.ns.type.v2~',
|
|
122
|
-
'backward'
|
|
123
|
-
);
|
|
117
|
+
const compatResult = gts.checkCompatibility('gts.vendor.pkg.ns.type.v1~', 'gts.vendor.pkg.ns.type.v2~', 'backward');
|
|
124
118
|
if (compatResult.compatible) {
|
|
125
119
|
console.log('Schemas are compatible');
|
|
126
120
|
}
|
|
127
121
|
|
|
128
122
|
// OP#9 - Cast instance to different version
|
|
129
|
-
const castResult = gts.castInstance(
|
|
130
|
-
'gts.vendor.pkg.ns.type.v1.0',
|
|
131
|
-
'gts.vendor.pkg.ns.type.v2~'
|
|
132
|
-
);
|
|
123
|
+
const castResult = gts.castInstance('gts.vendor.pkg.ns.type.v1.0', 'gts.vendor.pkg.ns.type.v2~');
|
|
133
124
|
if (castResult.ok) {
|
|
134
125
|
console.log('Instance casted successfully');
|
|
135
126
|
}
|
|
@@ -219,6 +210,7 @@ npx gts-server --host 127.0.0.1 --port 8000 --verbose 2
|
|
|
219
210
|
### API Endpoints
|
|
220
211
|
|
|
221
212
|
#### Entity Management
|
|
213
|
+
|
|
222
214
|
- `GET /entities` - List all entities
|
|
223
215
|
- `GET /entities/:id` - Get specific entity
|
|
224
216
|
- `POST /entities` - Add new entity
|
|
@@ -226,6 +218,7 @@ npx gts-server --host 127.0.0.1 --port 8000 --verbose 2
|
|
|
226
218
|
- `POST /schemas` - Add new schema
|
|
227
219
|
|
|
228
220
|
#### GTS Operations
|
|
221
|
+
|
|
229
222
|
- `GET /validate-id?id=<gts_id>` - Validate GTS ID (OP#1)
|
|
230
223
|
- `POST /extract-id` - Extract GTS ID from JSON (OP#2)
|
|
231
224
|
- `GET /parse-id?id=<gts_id>` - Parse GTS ID (OP#3)
|
|
@@ -237,8 +230,11 @@ npx gts-server --host 127.0.0.1 --port 8000 --verbose 2
|
|
|
237
230
|
- `POST /cast` - Cast instance (OP#9)
|
|
238
231
|
- `GET /query?expr=<expression>&limit=<limit>` - Query entities (OP#10)
|
|
239
232
|
- `GET /attr?path=<path>` - Get attribute value (OP#11)
|
|
233
|
+
- `POST /validate-schema` - Validate schema against parent schema (OP#12)
|
|
234
|
+
- `POST /validate-entity` - Validate entity (schema or instance) (OP#12)
|
|
240
235
|
|
|
241
236
|
#### Other
|
|
237
|
+
|
|
242
238
|
- `GET /health` - Health check
|
|
243
239
|
- `GET /openapi` - OpenAPI specification
|
|
244
240
|
|
package/dist/cast.js
CHANGED
|
@@ -52,12 +52,12 @@ class GtsCast {
|
|
|
52
52
|
};
|
|
53
53
|
}
|
|
54
54
|
const compatCheck = compatibility_1.GtsCompatibility.checkCompatibility(store, fromEntity.schemaId, toSchemaId, 'full');
|
|
55
|
-
if (!compatCheck.
|
|
55
|
+
if (!compatCheck.is_fully_compatible) {
|
|
56
56
|
return {
|
|
57
57
|
ok: false,
|
|
58
58
|
fromId,
|
|
59
59
|
toId: toSchemaId,
|
|
60
|
-
error: `Schemas are not compatible: ${compatCheck.
|
|
60
|
+
error: `Schemas are not compatible: ${compatCheck.incompatibility_reasons.join('; ')}`,
|
|
61
61
|
};
|
|
62
62
|
}
|
|
63
63
|
const castedInstance = this.performCast(fromEntity.content, fromSchemaEntity.content, toSchema.content, toSchemaId);
|
package/dist/cast.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cast.js","sourceRoot":"","sources":["../src/cast.ts"],"names":[],"mappings":";;;AAEA,+BAA4B;AAC5B,mDAAmD;AAEnD,MAAa,OAAO;IAClB,MAAM,CAAC,YAAY,CAAC,KAAe,EAAE,MAAc,EAAE,UAAkB;QACrE,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,SAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACzC,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAE3C,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM;oBACN,IAAI,EAAE,UAAU;oBAChB,KAAK,EAAE,uBAAuB,MAAM,EAAE;iBACvC,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;gBACzB,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM;oBACN,IAAI,EAAE,UAAU;oBAChB,KAAK,EAAE,iCAAiC,MAAM,EAAE;iBACjD,CAAC;YACJ,CAAC;YAED,MAAM,OAAO,GAAG,SAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAC3C,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAEvC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM;oBACN,IAAI,EAAE,UAAU;oBAChB,KAAK,EAAE,4BAA4B,UAAU,EAAE;iBAChD,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACvB,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM;oBACN,IAAI,EAAE,UAAU;oBAChB,KAAK,EAAE,2BAA2B,UAAU,EAAE;iBAC/C,CAAC;YACJ,CAAC;YAED,MAAM,gBAAgB,GAAG,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACxD,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM;oBACN,IAAI,EAAE,UAAU;oBAChB,KAAK,EAAE,4BAA4B,UAAU,CAAC,QAAQ,EAAE;iBACzD,CAAC;YACJ,CAAC;YAED,MAAM,WAAW,GAAG,gCAAgB,CAAC,kBAAkB,CAAC,KAAK,EAAE,UAAU,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;YAExG,IAAI,CAAC,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"cast.js","sourceRoot":"","sources":["../src/cast.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/index.js
CHANGED
|
@@ -138,7 +138,7 @@ program
|
|
|
138
138
|
const gts = loadStore(command.parent);
|
|
139
139
|
const result = gts.checkCompatibility(options.old, options.new, options.mode);
|
|
140
140
|
console.log(JSON.stringify(result, null, 2));
|
|
141
|
-
process.exit(result.
|
|
141
|
+
process.exit(result.is_fully_compatible ? 0 : 1);
|
|
142
142
|
});
|
|
143
143
|
// OP#9 - Cast
|
|
144
144
|
program
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
package/dist/compatibility.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { CompatibilityResult } from './types';
|
|
2
2
|
import { GtsStore } from './store';
|
|
3
3
|
export declare class GtsCompatibility {
|
|
4
|
-
static checkCompatibility(store: GtsStore, oldId: string, newId: string,
|
|
4
|
+
static checkCompatibility(store: GtsStore, oldId: string, newId: string, _mode?: 'backward' | 'forward' | 'full'): CompatibilityResult;
|
|
5
|
+
private static buildResult;
|
|
6
|
+
private static inferDirection;
|
|
5
7
|
private static checkBackwardCompatibility;
|
|
6
8
|
private static checkForwardCompatibility;
|
|
7
9
|
private static checkPropertyCompatibility;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compatibility.d.ts","sourceRoot":"","sources":["../src/compatibility.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGnC,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,kBAAkB,CACvB,KAAK,EAAE,QAAQ,EACf,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,
|
|
1
|
+
{"version":3,"file":"compatibility.d.ts","sourceRoot":"","sources":["../src/compatibility.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGnC,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,kBAAkB,CACvB,KAAK,EAAE,QAAQ,EACf,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,KAAK,GAAE,UAAU,GAAG,SAAS,GAAG,MAAe,GAC9C,mBAAmB;IA6CtB,OAAO,CAAC,MAAM,CAAC,WAAW;IA2B1B,OAAO,CAAC,MAAM,CAAC,cAAc;IAuB7B,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAuBzC,OAAO,CAAC,MAAM,CAAC,yBAAyB;IAuBxC,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAkCzC,OAAO,CAAC,MAAM,CAAC,aAAa;IAO5B,OAAO,CAAC,MAAM,CAAC,kBAAkB;CA0BlC"}
|
package/dist/compatibility.js
CHANGED
|
@@ -3,116 +3,130 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.GtsCompatibility = void 0;
|
|
4
4
|
const gts_1 = require("./gts");
|
|
5
5
|
class GtsCompatibility {
|
|
6
|
-
static checkCompatibility(store, oldId, newId,
|
|
7
|
-
const
|
|
8
|
-
const
|
|
6
|
+
static checkCompatibility(store, oldId, newId, _mode = 'full') {
|
|
7
|
+
const backwardErrors = [];
|
|
8
|
+
const forwardErrors = [];
|
|
9
9
|
try {
|
|
10
10
|
const oldGtsId = gts_1.Gts.parseGtsID(oldId);
|
|
11
11
|
const newGtsId = gts_1.Gts.parseGtsID(newId);
|
|
12
12
|
const oldEntity = store.get(oldGtsId.id);
|
|
13
13
|
const newEntity = store.get(newGtsId.id);
|
|
14
14
|
if (!oldEntity) {
|
|
15
|
-
|
|
16
|
-
return
|
|
15
|
+
backwardErrors.push(`Old schema not found: ${oldId}`);
|
|
16
|
+
return this.buildResult(oldId, newId, false, false, false, backwardErrors, forwardErrors);
|
|
17
17
|
}
|
|
18
18
|
if (!newEntity) {
|
|
19
|
-
|
|
20
|
-
return
|
|
19
|
+
backwardErrors.push(`New schema not found: ${newId}`);
|
|
20
|
+
return this.buildResult(oldId, newId, false, false, false, backwardErrors, forwardErrors);
|
|
21
21
|
}
|
|
22
22
|
if (!oldEntity.isSchema) {
|
|
23
|
-
|
|
24
|
-
return
|
|
23
|
+
backwardErrors.push(`Old entity is not a schema: ${oldId}`);
|
|
24
|
+
return this.buildResult(oldId, newId, false, false, false, backwardErrors, forwardErrors);
|
|
25
25
|
}
|
|
26
26
|
if (!newEntity.isSchema) {
|
|
27
|
-
|
|
28
|
-
return
|
|
27
|
+
backwardErrors.push(`New entity is not a schema: ${newId}`);
|
|
28
|
+
return this.buildResult(oldId, newId, false, false, false, backwardErrors, forwardErrors);
|
|
29
29
|
}
|
|
30
30
|
const oldSchema = oldEntity.content;
|
|
31
31
|
const newSchema = newEntity.content;
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
this.checkForwardCompatibility(oldSchema, newSchema, errors, warnings);
|
|
37
|
-
}
|
|
38
|
-
return {
|
|
39
|
-
compatible: errors.length === 0,
|
|
40
|
-
oldId,
|
|
41
|
-
newId,
|
|
42
|
-
mode,
|
|
43
|
-
errors,
|
|
44
|
-
warnings,
|
|
45
|
-
};
|
|
32
|
+
const isBackward = this.checkBackwardCompatibility(oldSchema, newSchema, backwardErrors);
|
|
33
|
+
const isForward = this.checkForwardCompatibility(oldSchema, newSchema, forwardErrors);
|
|
34
|
+
const isFullyCompatible = isBackward && isForward;
|
|
35
|
+
return this.buildResult(oldId, newId, isFullyCompatible, isBackward, isForward, backwardErrors, forwardErrors);
|
|
46
36
|
}
|
|
47
37
|
catch (error) {
|
|
48
|
-
|
|
49
|
-
return
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
38
|
+
backwardErrors.push(error instanceof Error ? error.message : String(error));
|
|
39
|
+
return this.buildResult(oldId, newId, false, false, false, backwardErrors, forwardErrors);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
static buildResult(oldId, newId, isFullyCompatible, isBackward, isForward, backwardErrors, forwardErrors) {
|
|
43
|
+
return {
|
|
44
|
+
from: oldId,
|
|
45
|
+
to: newId,
|
|
46
|
+
old: oldId,
|
|
47
|
+
new: newId,
|
|
48
|
+
direction: this.inferDirection(oldId, newId),
|
|
49
|
+
added_properties: [],
|
|
50
|
+
removed_properties: [],
|
|
51
|
+
changed_properties: [],
|
|
52
|
+
is_fully_compatible: isFullyCompatible,
|
|
53
|
+
is_backward_compatible: isBackward,
|
|
54
|
+
is_forward_compatible: isForward,
|
|
55
|
+
incompatibility_reasons: [...backwardErrors, ...forwardErrors],
|
|
56
|
+
backward_errors: backwardErrors,
|
|
57
|
+
forward_errors: forwardErrors,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
static inferDirection(fromId, toId) {
|
|
61
|
+
try {
|
|
62
|
+
const fromGtsId = gts_1.Gts.parseGtsID(fromId);
|
|
63
|
+
const toGtsId = gts_1.Gts.parseGtsID(toId);
|
|
64
|
+
if (!fromGtsId.segments.length || !toGtsId.segments.length) {
|
|
65
|
+
return 'unknown';
|
|
66
|
+
}
|
|
67
|
+
const fromSeg = fromGtsId.segments[fromGtsId.segments.length - 1];
|
|
68
|
+
const toSeg = toGtsId.segments[toGtsId.segments.length - 1];
|
|
69
|
+
if (fromSeg.verMajor < toSeg.verMajor)
|
|
70
|
+
return 'upgrade';
|
|
71
|
+
if (fromSeg.verMajor > toSeg.verMajor)
|
|
72
|
+
return 'downgrade';
|
|
73
|
+
if ((fromSeg.verMinor || 0) < (toSeg.verMinor || 0))
|
|
74
|
+
return 'upgrade';
|
|
75
|
+
if ((fromSeg.verMinor || 0) > (toSeg.verMinor || 0))
|
|
76
|
+
return 'downgrade';
|
|
77
|
+
return 'same';
|
|
78
|
+
}
|
|
79
|
+
catch {
|
|
80
|
+
return 'unknown';
|
|
57
81
|
}
|
|
58
82
|
}
|
|
59
|
-
static checkBackwardCompatibility(oldSchema, newSchema, errors
|
|
83
|
+
static checkBackwardCompatibility(oldSchema, newSchema, errors) {
|
|
60
84
|
const oldProps = oldSchema.properties || {};
|
|
61
85
|
const newProps = newSchema.properties || {};
|
|
62
86
|
const oldRequired = new Set(oldSchema.required || []);
|
|
63
|
-
|
|
64
|
-
for (const
|
|
65
|
-
if (!newRequired.has(prop)) {
|
|
66
|
-
warnings.push(`Property '${prop}' is no longer required in new schema`);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
for (const [propName, propSchema] of Object.entries(oldProps)) {
|
|
87
|
+
let compatible = true;
|
|
88
|
+
for (const propName of Object.keys(oldProps)) {
|
|
70
89
|
if (!(propName in newProps)) {
|
|
71
90
|
if (oldRequired.has(propName)) {
|
|
72
91
|
errors.push(`Required property '${propName}' removed in new schema`);
|
|
73
|
-
|
|
74
|
-
else {
|
|
75
|
-
warnings.push(`Optional property '${propName}' removed in new schema`);
|
|
92
|
+
compatible = false;
|
|
76
93
|
}
|
|
77
94
|
}
|
|
78
95
|
else {
|
|
79
|
-
this.checkPropertyCompatibility(propName,
|
|
96
|
+
if (!this.checkPropertyCompatibility(propName, oldProps[propName], newProps[propName], errors, 'backward')) {
|
|
97
|
+
compatible = false;
|
|
98
|
+
}
|
|
80
99
|
}
|
|
81
100
|
}
|
|
101
|
+
return compatible;
|
|
82
102
|
}
|
|
83
|
-
static checkForwardCompatibility(oldSchema, newSchema, errors
|
|
103
|
+
static checkForwardCompatibility(oldSchema, newSchema, errors) {
|
|
84
104
|
const oldProps = oldSchema.properties || {};
|
|
85
105
|
const newProps = newSchema.properties || {};
|
|
86
|
-
const oldRequired = new Set(oldSchema.required || []);
|
|
87
106
|
const newRequired = new Set(newSchema.required || []);
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
errors.push(`New required property '${prop}' added in new schema`);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
for (const [propName, propSchema] of Object.entries(newProps)) {
|
|
107
|
+
let compatible = true;
|
|
108
|
+
for (const propName of Object.keys(newProps)) {
|
|
94
109
|
if (!(propName in oldProps)) {
|
|
95
110
|
if (newRequired.has(propName)) {
|
|
96
111
|
errors.push(`New required property '${propName}' added`);
|
|
97
|
-
|
|
98
|
-
else {
|
|
99
|
-
warnings.push(`New optional property '${propName}' added`);
|
|
112
|
+
compatible = false;
|
|
100
113
|
}
|
|
101
114
|
}
|
|
102
115
|
else {
|
|
103
|
-
this.checkPropertyCompatibility(propName, oldProps[propName],
|
|
116
|
+
if (!this.checkPropertyCompatibility(propName, oldProps[propName], newProps[propName], errors, 'forward')) {
|
|
117
|
+
compatible = false;
|
|
118
|
+
}
|
|
104
119
|
}
|
|
105
120
|
}
|
|
121
|
+
return compatible;
|
|
106
122
|
}
|
|
107
|
-
static checkPropertyCompatibility(propName, oldProp, newProp, errors,
|
|
123
|
+
static checkPropertyCompatibility(propName, oldProp, newProp, errors, direction) {
|
|
108
124
|
const oldType = this.normalizeType(oldProp.type);
|
|
109
125
|
const newType = this.normalizeType(newProp.type);
|
|
110
126
|
if (oldType !== newType) {
|
|
111
|
-
if (this.areTypesCompatible(oldType, newType, direction)) {
|
|
112
|
-
warnings.push(`Property '${propName}' type changed from ${oldType} to ${newType}`);
|
|
113
|
-
}
|
|
114
|
-
else {
|
|
127
|
+
if (!this.areTypesCompatible(oldType, newType, direction)) {
|
|
115
128
|
errors.push(`Property '${propName}' type incompatibly changed from ${oldType} to ${newType}`);
|
|
129
|
+
return false;
|
|
116
130
|
}
|
|
117
131
|
}
|
|
118
132
|
if (oldProp.enum && newProp.enum) {
|
|
@@ -122,17 +136,12 @@ class GtsCompatibility {
|
|
|
122
136
|
for (const value of oldEnum) {
|
|
123
137
|
if (!newEnum.has(value)) {
|
|
124
138
|
errors.push(`Enum value '${value}' removed from property '${propName}'`);
|
|
125
|
-
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
else {
|
|
129
|
-
for (const value of newEnum) {
|
|
130
|
-
if (!oldEnum.has(value)) {
|
|
131
|
-
warnings.push(`Enum value '${value}' added to property '${propName}'`);
|
|
139
|
+
return false;
|
|
132
140
|
}
|
|
133
141
|
}
|
|
134
142
|
}
|
|
135
143
|
}
|
|
144
|
+
return true;
|
|
136
145
|
}
|
|
137
146
|
static normalizeType(type) {
|
|
138
147
|
if (Array.isArray(type)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compatibility.js","sourceRoot":"","sources":["../src/compatibility.ts"],"names":[],"mappings":";;;AAEA,+BAA4B;AAE5B,MAAa,gBAAgB;IAC3B,MAAM,CAAC,kBAAkB,CACvB,KAAe,EACf,KAAa,EACb,KAAa,EACb,
|
|
1
|
+
{"version":3,"file":"compatibility.js","sourceRoot":"","sources":["../src/compatibility.ts"],"names":[],"mappings":"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"}
|
package/dist/server/server.d.ts
CHANGED
|
@@ -24,6 +24,8 @@ export declare class GtsServer {
|
|
|
24
24
|
private handleCast;
|
|
25
25
|
private handleQuery;
|
|
26
26
|
private handleAttribute;
|
|
27
|
+
private handleValidateSchema;
|
|
28
|
+
private handleValidateEntity;
|
|
27
29
|
private handleOpenAPI;
|
|
28
30
|
private getOpenAPIPaths;
|
|
29
31
|
private getOpenAPIComponents;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,YAAY,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,YAAY,EAab,MAAM,SAAS,CAAC;AAGjB,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,KAAK,CAAM;IACnB,OAAO,CAAC,MAAM,CAAe;gBAEjB,MAAM,EAAE,YAAY;IAiBhC,OAAO,CAAC,eAAe;IAcvB,OAAO,CAAC,cAAc;YA0DR,iBAAiB;YAmBjB,eAAe;YAiBf,eAAe;IAwF7B,OAAO,CAAC,oBAAoB;IAyC5B,OAAO,CAAC,kBAAkB;YAwDZ,iBAAiB;YA4CjB,eAAe;YAKf,gBAAgB;YAgBhB,eAAe;YAMf,aAAa;YAwCb,oBAAoB;YAepB,UAAU;YAeV,sBAAsB;YAetB,0BAA0B;YAe1B,mBAAmB;YAgBnB,UAAU;YAaV,WAAW;YA4BX,eAAe;YAgCf,oBAAoB;YAYpB,oBAAoB;YAwBpB,aAAa;IAmB3B,OAAO,CAAC,eAAe;IAiHvB,OAAO,CAAC,oBAAoB;IAmCf,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAatB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAGnC"}
|
package/dist/server/server.js
CHANGED
|
@@ -101,6 +101,10 @@ class GtsServer {
|
|
|
101
101
|
this.fastify.get('/query', this.handleQuery.bind(this));
|
|
102
102
|
// OP#11 - Attribute Access
|
|
103
103
|
this.fastify.get('/attr', this.handleAttribute.bind(this));
|
|
104
|
+
// OP#12 - Validate Schema
|
|
105
|
+
this.fastify.post('/validate-schema', this.handleValidateSchema.bind(this));
|
|
106
|
+
// OP#12 - Validate Entity (unified)
|
|
107
|
+
this.fastify.post('/validate-entity', this.handleValidateEntity.bind(this));
|
|
104
108
|
// OpenAPI spec
|
|
105
109
|
this.fastify.get('/openapi', this.handleOpenAPI.bind(this));
|
|
106
110
|
}
|
|
@@ -492,6 +496,33 @@ class GtsServer {
|
|
|
492
496
|
}
|
|
493
497
|
return this.store['store'].getAttribute(gtsId, path);
|
|
494
498
|
}
|
|
499
|
+
// OP#12 - Validate Schema
|
|
500
|
+
async handleValidateSchema(request, _reply) {
|
|
501
|
+
const { schema_id } = request.body;
|
|
502
|
+
if (!schema_id) {
|
|
503
|
+
return { ok: false, error: 'Missing required field: schema_id' };
|
|
504
|
+
}
|
|
505
|
+
return this.store['store'].validateSchemaAgainstParent(schema_id);
|
|
506
|
+
}
|
|
507
|
+
// OP#12 - Validate Entity (unified)
|
|
508
|
+
async handleValidateEntity(request, _reply) {
|
|
509
|
+
const id = request.body.entity_id || request.body.gts_id;
|
|
510
|
+
if (!id) {
|
|
511
|
+
return { ok: false, error: 'Missing required field: entity_id or gts_id' };
|
|
512
|
+
}
|
|
513
|
+
const entity = this.store['store'].get(id);
|
|
514
|
+
if (!entity) {
|
|
515
|
+
return { ok: false, error: `Entity not found: ${id}` };
|
|
516
|
+
}
|
|
517
|
+
if (entity.isSchema) {
|
|
518
|
+
const result = this.store['store'].validateSchemaAgainstParent(id);
|
|
519
|
+
return { ...result, entity_type: 'schema' };
|
|
520
|
+
}
|
|
521
|
+
else {
|
|
522
|
+
const result = this.store.validateInstance(id);
|
|
523
|
+
return { ...result, entity_type: 'instance' };
|
|
524
|
+
}
|
|
525
|
+
}
|
|
495
526
|
// OpenAPI Specification
|
|
496
527
|
async handleOpenAPI() {
|
|
497
528
|
return {
|