@vorionsys/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/README.md +146 -0
- package/dist/aci/aci-string.d.ts +7 -7
- package/dist/aci/aci-string.js +87 -69
- package/dist/aci/aci-string.js.map +1 -1
- package/dist/aci/attestation.d.ts +71 -71
- package/dist/aci/attestation.js +67 -57
- package/dist/aci/attestation.js.map +1 -1
- package/dist/aci/domains.d.ts +1 -1
- package/dist/aci/domains.js +55 -37
- package/dist/aci/domains.js.map +1 -1
- package/dist/aci/effective-permission.d.ts +6 -6
- package/dist/aci/effective-permission.js +59 -46
- package/dist/aci/effective-permission.js.map +1 -1
- package/dist/aci/identity.d.ts +99 -99
- package/dist/aci/identity.js +95 -85
- package/dist/aci/identity.js.map +1 -1
- package/dist/aci/index.d.ts +13 -3
- package/dist/aci/index.d.ts.map +1 -1
- package/dist/aci/index.js +268 -43
- package/dist/aci/index.js.map +1 -1
- package/dist/aci/jwt-claims.d.ts +29 -29
- package/dist/aci/jwt-claims.js +72 -62
- package/dist/aci/jwt-claims.js.map +1 -1
- package/dist/aci/levels.d.ts +3 -3
- package/dist/aci/levels.js +79 -60
- package/dist/aci/levels.js.map +1 -1
- package/dist/aci/mapping.d.ts +3 -3
- package/dist/aci/mapping.js +94 -74
- package/dist/aci/mapping.js.map +1 -1
- package/dist/aci/skills.d.ts +3 -3
- package/dist/aci/skills.js +71 -49
- package/dist/aci/skills.js.map +1 -1
- package/dist/aci/tiers.d.ts +1 -1
- package/dist/aci/tiers.js +144 -117
- package/dist/aci/tiers.js.map +1 -1
- package/dist/canonical/agent.d.ts +1 -1
- package/dist/canonical/agent.js +146 -130
- package/dist/canonical/agent.js.map +1 -1
- package/dist/canonical/governance.d.ts +1 -1
- package/dist/canonical/governance.js +134 -120
- package/dist/canonical/governance.js.map +1 -1
- package/dist/canonical/index.d.ts +1 -0
- package/dist/canonical/index.d.ts.map +1 -1
- package/dist/canonical/index.js +26 -8
- package/dist/canonical/index.js.map +1 -1
- package/dist/canonical/intent.d.ts +8 -15
- package/dist/canonical/intent.d.ts.map +1 -1
- package/dist/canonical/intent.js +91 -82
- package/dist/canonical/intent.js.map +1 -1
- package/dist/canonical/middleware.d.ts +513 -0
- package/dist/canonical/middleware.d.ts.map +1 -0
- package/dist/canonical/middleware.js +218 -0
- package/dist/canonical/middleware.js.map +1 -0
- package/dist/canonical/risk-level.d.ts +1 -1
- package/dist/canonical/risk-level.js +66 -46
- package/dist/canonical/risk-level.js.map +1 -1
- package/dist/canonical/trust-band.d.ts +1 -1
- package/dist/canonical/trust-band.js +39 -28
- package/dist/canonical/trust-band.js.map +1 -1
- package/dist/canonical/trust-score.d.ts +1 -1
- package/dist/canonical/trust-score.js +46 -29
- package/dist/canonical/trust-score.js.map +1 -1
- package/dist/canonical/trust-signal.d.ts +13 -13
- package/dist/canonical/trust-signal.js +91 -78
- package/dist/canonical/trust-signal.js.map +1 -1
- package/dist/canonical/validation.js +148 -102
- package/dist/canonical/validation.js.map +1 -1
- package/dist/car/attestation.d.ts +648 -0
- package/dist/car/attestation.d.ts.map +1 -0
- package/dist/car/attestation.js +299 -0
- package/dist/car/attestation.js.map +1 -0
- package/dist/car/car-string.d.ts +846 -0
- package/dist/car/car-string.d.ts.map +1 -0
- package/dist/car/car-string.js +734 -0
- package/dist/car/car-string.js.map +1 -0
- package/dist/car/domains.d.ts +260 -0
- package/dist/car/domains.d.ts.map +1 -0
- package/dist/car/domains.js +340 -0
- package/dist/car/domains.js.map +1 -0
- package/dist/car/effective-permission.d.ts +371 -0
- package/dist/car/effective-permission.d.ts.map +1 -0
- package/dist/car/effective-permission.js +364 -0
- package/dist/car/effective-permission.js.map +1 -0
- package/dist/car/identity.d.ts +1206 -0
- package/dist/car/identity.d.ts.map +1 -0
- package/dist/car/identity.js +348 -0
- package/dist/car/identity.js.map +1 -0
- package/dist/car/index.d.ts +104 -0
- package/dist/car/index.d.ts.map +1 -0
- package/dist/car/index.js +401 -0
- package/dist/car/index.js.map +1 -0
- package/dist/car/jwt-claims.d.ts +1364 -0
- package/dist/car/jwt-claims.d.ts.map +1 -0
- package/dist/car/jwt-claims.js +388 -0
- package/dist/car/jwt-claims.js.map +1 -0
- package/dist/car/levels.d.ts +279 -0
- package/dist/car/levels.d.ts.map +1 -0
- package/dist/car/levels.js +486 -0
- package/dist/car/levels.js.map +1 -0
- package/dist/car/mapping.d.ts +291 -0
- package/dist/car/mapping.d.ts.map +1 -0
- package/dist/car/mapping.js +447 -0
- package/dist/car/mapping.js.map +1 -0
- package/dist/car/skills.d.ts +314 -0
- package/dist/car/skills.d.ts.map +1 -0
- package/dist/car/skills.js +426 -0
- package/dist/car/skills.js.map +1 -0
- package/dist/car/tiers.d.ts +403 -0
- package/dist/car/tiers.d.ts.map +1 -0
- package/dist/car/tiers.js +686 -0
- package/dist/car/tiers.js.map +1 -0
- package/dist/common/index.d.ts +1 -0
- package/dist/common/index.d.ts.map +1 -1
- package/dist/common/index.js +18 -1
- package/dist/common/index.js.map +1 -1
- package/dist/common/primitives.d.ts +9 -7
- package/dist/common/primitives.d.ts.map +1 -1
- package/dist/common/primitives.js +30 -25
- package/dist/common/primitives.js.map +1 -1
- package/dist/common/types.d.ts +328 -0
- package/dist/common/types.d.ts.map +1 -0
- package/dist/common/types.js +61 -0
- package/dist/common/types.js.map +1 -0
- package/dist/db/agents.d.ts +1374 -0
- package/dist/db/agents.d.ts.map +1 -0
- package/dist/db/agents.js +283 -0
- package/dist/db/agents.js.map +1 -0
- package/dist/db/api-keys.d.ts +365 -0
- package/dist/db/api-keys.d.ts.map +1 -0
- package/dist/db/api-keys.js +101 -0
- package/dist/db/api-keys.js.map +1 -0
- package/dist/db/escalations.d.ts +400 -0
- package/dist/db/escalations.d.ts.map +1 -0
- package/dist/db/escalations.js +100 -0
- package/dist/db/escalations.js.map +1 -0
- package/dist/db/index.d.ts +20 -0
- package/dist/db/index.d.ts.map +1 -0
- package/dist/db/index.js +47 -0
- package/dist/db/index.js.map +1 -0
- package/dist/db/intents.d.ts +384 -0
- package/dist/db/intents.d.ts.map +1 -0
- package/dist/db/intents.js +93 -0
- package/dist/db/intents.js.map +1 -0
- package/dist/db/merkle.d.ts +344 -0
- package/dist/db/merkle.d.ts.map +1 -0
- package/dist/db/merkle.js +103 -0
- package/dist/db/merkle.js.map +1 -0
- package/dist/db/operations.d.ts +187 -0
- package/dist/db/operations.d.ts.map +1 -0
- package/dist/db/operations.js +68 -0
- package/dist/db/operations.js.map +1 -0
- package/dist/db/policy-versions.d.ts +112 -0
- package/dist/db/policy-versions.d.ts.map +1 -0
- package/dist/db/policy-versions.js +44 -0
- package/dist/db/policy-versions.js.map +1 -0
- package/dist/db/proofs.d.ts +296 -0
- package/dist/db/proofs.d.ts.map +1 -0
- package/dist/db/proofs.js +66 -0
- package/dist/db/proofs.js.map +1 -0
- package/dist/db/rbac.d.ts +655 -0
- package/dist/db/rbac.d.ts.map +1 -0
- package/dist/db/rbac.js +189 -0
- package/dist/db/rbac.js.map +1 -0
- package/dist/db/service-accounts.d.ts +571 -0
- package/dist/db/service-accounts.d.ts.map +1 -0
- package/dist/db/service-accounts.js +179 -0
- package/dist/db/service-accounts.js.map +1 -0
- package/dist/db/trust.d.ts +437 -0
- package/dist/db/trust.d.ts.map +1 -0
- package/dist/db/trust.js +111 -0
- package/dist/db/trust.js.map +1 -0
- package/dist/db/webhooks.d.ts +280 -0
- package/dist/db/webhooks.d.ts.map +1 -0
- package/dist/db/webhooks.js +94 -0
- package/dist/db/webhooks.js.map +1 -0
- package/dist/flags.d.ts +214 -0
- package/dist/flags.d.ts.map +1 -0
- package/dist/flags.js +443 -0
- package/dist/flags.js.map +1 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +47 -4
- package/dist/index.js.map +1 -1
- package/dist/v2/canary-probe.js +10 -7
- package/dist/v2/canary-probe.js.map +1 -1
- package/dist/v2/component.js +2 -1
- package/dist/v2/component.js.map +1 -1
- package/dist/v2/decision.js +5 -2
- package/dist/v2/decision.js.map +1 -1
- package/dist/v2/enums.js +28 -25
- package/dist/v2/enums.js.map +1 -1
- package/dist/v2/evidence.js +75 -72
- package/dist/v2/evidence.js.map +1 -1
- package/dist/v2/execution.js +2 -1
- package/dist/v2/execution.js.map +1 -1
- package/dist/v2/index.js +29 -13
- package/dist/v2/index.js.map +1 -1
- package/dist/v2/intent.js +2 -1
- package/dist/v2/intent.js.map +1 -1
- package/dist/v2/policy-bundle.js +5 -2
- package/dist/v2/policy-bundle.js.map +1 -1
- package/dist/v2/pre-action-gate.js +10 -7
- package/dist/v2/pre-action-gate.js.map +1 -1
- package/dist/v2/proof-event.js +2 -1
- package/dist/v2/proof-event.js.map +1 -1
- package/dist/v2/retention.js +104 -101
- package/dist/v2/retention.js.map +1 -1
- package/dist/v2/trust-delta.js +5 -2
- package/dist/v2/trust-delta.js.map +1 -1
- package/dist/v2/trust-profile.js +12 -9
- package/dist/v2/trust-profile.js.map +1 -1
- package/dist/validators/decision.d.ts +2 -2
- package/dist/validators/decision.js +49 -46
- package/dist/validators/decision.js.map +1 -1
- package/dist/validators/enums.js +14 -11
- package/dist/validators/enums.js.map +1 -1
- package/dist/validators/index.js +30 -9
- package/dist/validators/index.js.map +1 -1
- package/dist/validators/intent.js +40 -37
- package/dist/validators/intent.js.map +1 -1
- package/dist/validators/proof-event.js +101 -98
- package/dist/validators/proof-event.js.map +1 -1
- package/dist/validators/trust-profile.js +40 -37
- package/dist/validators/trust-profile.js.map +1 -1
- package/package.json +65 -13
package/dist/aci/tiers.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
/**
|
|
2
3
|
* @fileoverview ACI Certification Tiers and Vorion Runtime Tiers
|
|
3
4
|
*
|
|
@@ -14,9 +15,35 @@
|
|
|
14
15
|
* These two systems are conceptually different but can be mapped to each other
|
|
15
16
|
* for interoperability.
|
|
16
17
|
*
|
|
17
|
-
* @module @
|
|
18
|
-
*/
|
|
19
|
-
|
|
18
|
+
* @module @vorionsys/contracts/aci/tiers
|
|
19
|
+
*/
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
exports.runtimeTierStringSchema = exports.certificationTierStringSchema = exports.tierStringSchema = exports.runtimeTierConfigSchema = exports.certificationTierConfigSchema = exports.RUNTIME_TIER_CONFIGS = exports.CERTIFICATION_TIER_CONFIGS = exports.RUNTIME_TIER_SCORES = exports.RUNTIME_TIER_DESCRIPTIONS = exports.RUNTIME_TIER_NAMES = exports.runtimeTierSchema = exports.RUNTIME_TIERS = exports.RuntimeTier = exports.CERTIFICATION_TIER_SCORES = exports.CERTIFICATION_TIER_DESCRIPTIONS = exports.CERTIFICATION_TIER_NAMES = exports.certificationTierSchema = exports.CERTIFICATION_TIERS = exports.CertificationTier = void 0;
|
|
22
|
+
exports.isCertificationTierHigher = isCertificationTierHigher;
|
|
23
|
+
exports.meetsCertificationTier = meetsCertificationTier;
|
|
24
|
+
exports.compareCertificationTiers = compareCertificationTiers;
|
|
25
|
+
exports.isRuntimeTierHigher = isRuntimeTierHigher;
|
|
26
|
+
exports.meetsRuntimeTier = meetsRuntimeTier;
|
|
27
|
+
exports.compareRuntimeTiers = compareRuntimeTiers;
|
|
28
|
+
exports.scoreToCertificationTier = scoreToCertificationTier;
|
|
29
|
+
exports.scoreToRuntimeTier = scoreToRuntimeTier;
|
|
30
|
+
exports.certificationTierToScore = certificationTierToScore;
|
|
31
|
+
exports.runtimeTierToScore = runtimeTierToScore;
|
|
32
|
+
exports.getCertificationTierMinScore = getCertificationTierMinScore;
|
|
33
|
+
exports.getCertificationTierMaxScore = getCertificationTierMaxScore;
|
|
34
|
+
exports.getRuntimeTierMinScore = getRuntimeTierMinScore;
|
|
35
|
+
exports.getRuntimeTierMaxScore = getRuntimeTierMaxScore;
|
|
36
|
+
exports.getCertificationTierConfig = getCertificationTierConfig;
|
|
37
|
+
exports.getRuntimeTierConfig = getRuntimeTierConfig;
|
|
38
|
+
exports.getCertificationTierName = getCertificationTierName;
|
|
39
|
+
exports.getRuntimeTierName = getRuntimeTierName;
|
|
40
|
+
exports.getCertificationTierDescription = getCertificationTierDescription;
|
|
41
|
+
exports.getRuntimeTierDescription = getRuntimeTierDescription;
|
|
42
|
+
exports.parseCertificationTier = parseCertificationTier;
|
|
43
|
+
exports.parseRuntimeTier = parseRuntimeTier;
|
|
44
|
+
exports.isCertificationTier = isCertificationTier;
|
|
45
|
+
exports.isRuntimeTier = isRuntimeTier;
|
|
46
|
+
const zod_1 = require("zod");
|
|
20
47
|
// ============================================================================
|
|
21
48
|
// ACI Certification Tiers (T0-T7)
|
|
22
49
|
// ============================================================================
|
|
@@ -35,7 +62,7 @@ import { z } from 'zod';
|
|
|
35
62
|
* - T6: Third-party audit completed (Certified)
|
|
36
63
|
* - T7: Highest assurance level (Autonomous)
|
|
37
64
|
*/
|
|
38
|
-
|
|
65
|
+
var CertificationTier;
|
|
39
66
|
(function (CertificationTier) {
|
|
40
67
|
/** Sandbox - No external verification, isolated testing */
|
|
41
68
|
CertificationTier[CertificationTier["T0_SANDBOX"] = 0] = "T0_SANDBOX";
|
|
@@ -53,11 +80,11 @@ export var CertificationTier;
|
|
|
53
80
|
CertificationTier[CertificationTier["T6_CERTIFIED"] = 6] = "T6_CERTIFIED";
|
|
54
81
|
/** Autonomous - Highest assurance level with full certification */
|
|
55
82
|
CertificationTier[CertificationTier["T7_AUTONOMOUS"] = 7] = "T7_AUTONOMOUS";
|
|
56
|
-
})(CertificationTier || (CertificationTier = {}));
|
|
83
|
+
})(CertificationTier || (exports.CertificationTier = CertificationTier = {}));
|
|
57
84
|
/**
|
|
58
85
|
* Array of all certification tiers in ascending order.
|
|
59
86
|
*/
|
|
60
|
-
|
|
87
|
+
exports.CERTIFICATION_TIERS = [
|
|
61
88
|
CertificationTier.T0_SANDBOX,
|
|
62
89
|
CertificationTier.T1_OBSERVED,
|
|
63
90
|
CertificationTier.T2_PROVISIONAL,
|
|
@@ -70,13 +97,13 @@ export const CERTIFICATION_TIERS = [
|
|
|
70
97
|
/**
|
|
71
98
|
* Zod schema for CertificationTier enum validation.
|
|
72
99
|
*/
|
|
73
|
-
|
|
100
|
+
exports.certificationTierSchema = zod_1.z.nativeEnum(CertificationTier, {
|
|
74
101
|
errorMap: () => ({ message: 'Invalid certification tier. Must be T0-T7 (0-7).' }),
|
|
75
102
|
});
|
|
76
103
|
/**
|
|
77
104
|
* Human-readable names for certification tiers.
|
|
78
105
|
*/
|
|
79
|
-
|
|
106
|
+
exports.CERTIFICATION_TIER_NAMES = {
|
|
80
107
|
[CertificationTier.T0_SANDBOX]: 'Sandbox',
|
|
81
108
|
[CertificationTier.T1_OBSERVED]: 'Observed',
|
|
82
109
|
[CertificationTier.T2_PROVISIONAL]: 'Provisional',
|
|
@@ -89,7 +116,7 @@ export const CERTIFICATION_TIER_NAMES = {
|
|
|
89
116
|
/**
|
|
90
117
|
* Detailed descriptions for certification tiers.
|
|
91
118
|
*/
|
|
92
|
-
|
|
119
|
+
exports.CERTIFICATION_TIER_DESCRIPTIONS = {
|
|
93
120
|
[CertificationTier.T0_SANDBOX]: 'Isolated sandbox environment. No external verification, all actions are simulated.',
|
|
94
121
|
[CertificationTier.T1_OBSERVED]: 'Basic observation period. Identity registered, behavior being monitored.',
|
|
95
122
|
[CertificationTier.T2_PROVISIONAL]: 'Provisional status. Initial capabilities verified, limited operations permitted.',
|
|
@@ -102,11 +129,11 @@ export const CERTIFICATION_TIER_DESCRIPTIONS = {
|
|
|
102
129
|
/**
|
|
103
130
|
* Trust score ranges for certification tiers (ACI spec scale: 0-1000).
|
|
104
131
|
*/
|
|
105
|
-
|
|
132
|
+
exports.CERTIFICATION_TIER_SCORES = {
|
|
106
133
|
[CertificationTier.T0_SANDBOX]: { min: 0, max: 199 },
|
|
107
134
|
[CertificationTier.T1_OBSERVED]: { min: 200, max: 349 },
|
|
108
|
-
[CertificationTier.T2_PROVISIONAL]: { min: 350, max:
|
|
109
|
-
[CertificationTier.T3_MONITORED]: { min:
|
|
135
|
+
[CertificationTier.T2_PROVISIONAL]: { min: 350, max: 500 },
|
|
136
|
+
[CertificationTier.T3_MONITORED]: { min: 501, max: 649 },
|
|
110
137
|
[CertificationTier.T4_STANDARD]: { min: 650, max: 799 },
|
|
111
138
|
[CertificationTier.T5_TRUSTED]: { min: 800, max: 875 },
|
|
112
139
|
[CertificationTier.T6_CERTIFIED]: { min: 876, max: 950 },
|
|
@@ -130,7 +157,7 @@ export const CERTIFICATION_TIER_SCORES = {
|
|
|
130
157
|
* - T6: Certified - Independent operation with auditing
|
|
131
158
|
* - T7: Autonomous - Full autonomy for mission-critical operations
|
|
132
159
|
*/
|
|
133
|
-
|
|
160
|
+
var RuntimeTier;
|
|
134
161
|
(function (RuntimeTier) {
|
|
135
162
|
/** Sandbox - No autonomy, isolated testing environment */
|
|
136
163
|
RuntimeTier[RuntimeTier["T0_SANDBOX"] = 0] = "T0_SANDBOX";
|
|
@@ -148,11 +175,11 @@ export var RuntimeTier;
|
|
|
148
175
|
RuntimeTier[RuntimeTier["T6_CERTIFIED"] = 6] = "T6_CERTIFIED";
|
|
149
176
|
/** Autonomous - Full autonomy for mission-critical operations */
|
|
150
177
|
RuntimeTier[RuntimeTier["T7_AUTONOMOUS"] = 7] = "T7_AUTONOMOUS";
|
|
151
|
-
})(RuntimeTier || (RuntimeTier = {}));
|
|
178
|
+
})(RuntimeTier || (exports.RuntimeTier = RuntimeTier = {}));
|
|
152
179
|
/**
|
|
153
180
|
* Array of all runtime tiers in ascending order.
|
|
154
181
|
*/
|
|
155
|
-
|
|
182
|
+
exports.RUNTIME_TIERS = [
|
|
156
183
|
RuntimeTier.T0_SANDBOX,
|
|
157
184
|
RuntimeTier.T1_OBSERVED,
|
|
158
185
|
RuntimeTier.T2_PROVISIONAL,
|
|
@@ -165,13 +192,13 @@ export const RUNTIME_TIERS = [
|
|
|
165
192
|
/**
|
|
166
193
|
* Zod schema for RuntimeTier enum validation.
|
|
167
194
|
*/
|
|
168
|
-
|
|
195
|
+
exports.runtimeTierSchema = zod_1.z.nativeEnum(RuntimeTier, {
|
|
169
196
|
errorMap: () => ({ message: 'Invalid runtime tier. Must be T0-T7 (0-7).' }),
|
|
170
197
|
});
|
|
171
198
|
/**
|
|
172
199
|
* Human-readable names for runtime tiers.
|
|
173
200
|
*/
|
|
174
|
-
|
|
201
|
+
exports.RUNTIME_TIER_NAMES = {
|
|
175
202
|
[RuntimeTier.T0_SANDBOX]: 'Sandbox',
|
|
176
203
|
[RuntimeTier.T1_OBSERVED]: 'Observed',
|
|
177
204
|
[RuntimeTier.T2_PROVISIONAL]: 'Provisional',
|
|
@@ -184,7 +211,7 @@ export const RUNTIME_TIER_NAMES = {
|
|
|
184
211
|
/**
|
|
185
212
|
* Detailed descriptions for runtime tiers.
|
|
186
213
|
*/
|
|
187
|
-
|
|
214
|
+
exports.RUNTIME_TIER_DESCRIPTIONS = {
|
|
188
215
|
[RuntimeTier.T0_SANDBOX]: 'Isolated sandbox environment. No external access, all actions are simulated.',
|
|
189
216
|
[RuntimeTier.T1_OBSERVED]: 'Observation period. Every action is logged and reviewed, human oversight required.',
|
|
190
217
|
[RuntimeTier.T2_PROVISIONAL]: 'Provisional operations. Limited autonomy with strict policy constraints.',
|
|
@@ -197,11 +224,11 @@ export const RUNTIME_TIER_DESCRIPTIONS = {
|
|
|
197
224
|
/**
|
|
198
225
|
* Trust score ranges for runtime tiers (Vorion scale: 0-1000).
|
|
199
226
|
*/
|
|
200
|
-
|
|
227
|
+
exports.RUNTIME_TIER_SCORES = {
|
|
201
228
|
[RuntimeTier.T0_SANDBOX]: { min: 0, max: 199 },
|
|
202
229
|
[RuntimeTier.T1_OBSERVED]: { min: 200, max: 349 },
|
|
203
|
-
[RuntimeTier.T2_PROVISIONAL]: { min: 350, max:
|
|
204
|
-
[RuntimeTier.T3_MONITORED]: { min:
|
|
230
|
+
[RuntimeTier.T2_PROVISIONAL]: { min: 350, max: 500 },
|
|
231
|
+
[RuntimeTier.T3_MONITORED]: { min: 501, max: 649 },
|
|
205
232
|
[RuntimeTier.T4_STANDARD]: { min: 650, max: 799 },
|
|
206
233
|
[RuntimeTier.T5_TRUSTED]: { min: 800, max: 875 },
|
|
207
234
|
[RuntimeTier.T6_CERTIFIED]: { min: 876, max: 950 },
|
|
@@ -210,13 +237,13 @@ export const RUNTIME_TIER_SCORES = {
|
|
|
210
237
|
/**
|
|
211
238
|
* Configuration for all certification tiers.
|
|
212
239
|
*/
|
|
213
|
-
|
|
240
|
+
exports.CERTIFICATION_TIER_CONFIGS = {
|
|
214
241
|
[CertificationTier.T0_SANDBOX]: {
|
|
215
242
|
tier: CertificationTier.T0_SANDBOX,
|
|
216
243
|
code: 'T0',
|
|
217
244
|
name: 'Sandbox',
|
|
218
|
-
description: CERTIFICATION_TIER_DESCRIPTIONS[CertificationTier.T0_SANDBOX],
|
|
219
|
-
scoreRange: CERTIFICATION_TIER_SCORES[CertificationTier.T0_SANDBOX],
|
|
245
|
+
description: exports.CERTIFICATION_TIER_DESCRIPTIONS[CertificationTier.T0_SANDBOX],
|
|
246
|
+
scoreRange: exports.CERTIFICATION_TIER_SCORES[CertificationTier.T0_SANDBOX],
|
|
220
247
|
requiredAttestations: [],
|
|
221
248
|
maxCapabilityLevel: 1,
|
|
222
249
|
},
|
|
@@ -224,8 +251,8 @@ export const CERTIFICATION_TIER_CONFIGS = {
|
|
|
224
251
|
tier: CertificationTier.T1_OBSERVED,
|
|
225
252
|
code: 'T1',
|
|
226
253
|
name: 'Observed',
|
|
227
|
-
description: CERTIFICATION_TIER_DESCRIPTIONS[CertificationTier.T1_OBSERVED],
|
|
228
|
-
scoreRange: CERTIFICATION_TIER_SCORES[CertificationTier.T1_OBSERVED],
|
|
254
|
+
description: exports.CERTIFICATION_TIER_DESCRIPTIONS[CertificationTier.T1_OBSERVED],
|
|
255
|
+
scoreRange: exports.CERTIFICATION_TIER_SCORES[CertificationTier.T1_OBSERVED],
|
|
229
256
|
requiredAttestations: ['identity'],
|
|
230
257
|
maxCapabilityLevel: 2,
|
|
231
258
|
},
|
|
@@ -233,8 +260,8 @@ export const CERTIFICATION_TIER_CONFIGS = {
|
|
|
233
260
|
tier: CertificationTier.T2_PROVISIONAL,
|
|
234
261
|
code: 'T2',
|
|
235
262
|
name: 'Provisional',
|
|
236
|
-
description: CERTIFICATION_TIER_DESCRIPTIONS[CertificationTier.T2_PROVISIONAL],
|
|
237
|
-
scoreRange: CERTIFICATION_TIER_SCORES[CertificationTier.T2_PROVISIONAL],
|
|
263
|
+
description: exports.CERTIFICATION_TIER_DESCRIPTIONS[CertificationTier.T2_PROVISIONAL],
|
|
264
|
+
scoreRange: exports.CERTIFICATION_TIER_SCORES[CertificationTier.T2_PROVISIONAL],
|
|
238
265
|
requiredAttestations: ['identity', 'capability_test'],
|
|
239
266
|
maxCapabilityLevel: 3,
|
|
240
267
|
},
|
|
@@ -242,8 +269,8 @@ export const CERTIFICATION_TIER_CONFIGS = {
|
|
|
242
269
|
tier: CertificationTier.T3_MONITORED,
|
|
243
270
|
code: 'T3',
|
|
244
271
|
name: 'Monitored',
|
|
245
|
-
description: CERTIFICATION_TIER_DESCRIPTIONS[CertificationTier.T3_MONITORED],
|
|
246
|
-
scoreRange: CERTIFICATION_TIER_SCORES[CertificationTier.T3_MONITORED],
|
|
272
|
+
description: exports.CERTIFICATION_TIER_DESCRIPTIONS[CertificationTier.T3_MONITORED],
|
|
273
|
+
scoreRange: exports.CERTIFICATION_TIER_SCORES[CertificationTier.T3_MONITORED],
|
|
247
274
|
requiredAttestations: ['identity', 'capability_test', 'continuous_monitoring'],
|
|
248
275
|
maxCapabilityLevel: 4,
|
|
249
276
|
},
|
|
@@ -251,8 +278,8 @@ export const CERTIFICATION_TIER_CONFIGS = {
|
|
|
251
278
|
tier: CertificationTier.T4_STANDARD,
|
|
252
279
|
code: 'T4',
|
|
253
280
|
name: 'Standard',
|
|
254
|
-
description: CERTIFICATION_TIER_DESCRIPTIONS[CertificationTier.T4_STANDARD],
|
|
255
|
-
scoreRange: CERTIFICATION_TIER_SCORES[CertificationTier.T4_STANDARD],
|
|
281
|
+
description: exports.CERTIFICATION_TIER_DESCRIPTIONS[CertificationTier.T4_STANDARD],
|
|
282
|
+
scoreRange: exports.CERTIFICATION_TIER_SCORES[CertificationTier.T4_STANDARD],
|
|
256
283
|
requiredAttestations: ['identity', 'capability_test', 'continuous_monitoring', 'track_record'],
|
|
257
284
|
maxCapabilityLevel: 5,
|
|
258
285
|
},
|
|
@@ -260,8 +287,8 @@ export const CERTIFICATION_TIER_CONFIGS = {
|
|
|
260
287
|
tier: CertificationTier.T5_TRUSTED,
|
|
261
288
|
code: 'T5',
|
|
262
289
|
name: 'Trusted',
|
|
263
|
-
description: CERTIFICATION_TIER_DESCRIPTIONS[CertificationTier.T5_TRUSTED],
|
|
264
|
-
scoreRange: CERTIFICATION_TIER_SCORES[CertificationTier.T5_TRUSTED],
|
|
290
|
+
description: exports.CERTIFICATION_TIER_DESCRIPTIONS[CertificationTier.T5_TRUSTED],
|
|
291
|
+
scoreRange: exports.CERTIFICATION_TIER_SCORES[CertificationTier.T5_TRUSTED],
|
|
265
292
|
requiredAttestations: ['identity', 'capability_test', 'continuous_monitoring', 'track_record', 'trust_verification'],
|
|
266
293
|
maxCapabilityLevel: 6,
|
|
267
294
|
},
|
|
@@ -269,8 +296,8 @@ export const CERTIFICATION_TIER_CONFIGS = {
|
|
|
269
296
|
tier: CertificationTier.T6_CERTIFIED,
|
|
270
297
|
code: 'T6',
|
|
271
298
|
name: 'Certified',
|
|
272
|
-
description: CERTIFICATION_TIER_DESCRIPTIONS[CertificationTier.T6_CERTIFIED],
|
|
273
|
-
scoreRange: CERTIFICATION_TIER_SCORES[CertificationTier.T6_CERTIFIED],
|
|
299
|
+
description: exports.CERTIFICATION_TIER_DESCRIPTIONS[CertificationTier.T6_CERTIFIED],
|
|
300
|
+
scoreRange: exports.CERTIFICATION_TIER_SCORES[CertificationTier.T6_CERTIFIED],
|
|
274
301
|
requiredAttestations: ['identity', 'capability_test', 'continuous_monitoring', 'track_record', 'trust_verification', 'third_party_audit'],
|
|
275
302
|
maxCapabilityLevel: 7,
|
|
276
303
|
},
|
|
@@ -278,8 +305,8 @@ export const CERTIFICATION_TIER_CONFIGS = {
|
|
|
278
305
|
tier: CertificationTier.T7_AUTONOMOUS,
|
|
279
306
|
code: 'T7',
|
|
280
307
|
name: 'Autonomous',
|
|
281
|
-
description: CERTIFICATION_TIER_DESCRIPTIONS[CertificationTier.T7_AUTONOMOUS],
|
|
282
|
-
scoreRange: CERTIFICATION_TIER_SCORES[CertificationTier.T7_AUTONOMOUS],
|
|
308
|
+
description: exports.CERTIFICATION_TIER_DESCRIPTIONS[CertificationTier.T7_AUTONOMOUS],
|
|
309
|
+
scoreRange: exports.CERTIFICATION_TIER_SCORES[CertificationTier.T7_AUTONOMOUS],
|
|
283
310
|
requiredAttestations: ['identity', 'capability_test', 'continuous_monitoring', 'track_record', 'trust_verification', 'third_party_audit', 'autonomous_certification'],
|
|
284
311
|
maxCapabilityLevel: 7,
|
|
285
312
|
},
|
|
@@ -287,13 +314,13 @@ export const CERTIFICATION_TIER_CONFIGS = {
|
|
|
287
314
|
/**
|
|
288
315
|
* Configuration for all runtime tiers.
|
|
289
316
|
*/
|
|
290
|
-
|
|
317
|
+
exports.RUNTIME_TIER_CONFIGS = {
|
|
291
318
|
[RuntimeTier.T0_SANDBOX]: {
|
|
292
319
|
tier: RuntimeTier.T0_SANDBOX,
|
|
293
320
|
code: 'T0',
|
|
294
321
|
name: 'Sandbox',
|
|
295
|
-
description: RUNTIME_TIER_DESCRIPTIONS[RuntimeTier.T0_SANDBOX],
|
|
296
|
-
scoreRange: RUNTIME_TIER_SCORES[RuntimeTier.T0_SANDBOX],
|
|
322
|
+
description: exports.RUNTIME_TIER_DESCRIPTIONS[RuntimeTier.T0_SANDBOX],
|
|
323
|
+
scoreRange: exports.RUNTIME_TIER_SCORES[RuntimeTier.T0_SANDBOX],
|
|
297
324
|
requiresApproval: false, // No approval needed - everything is isolated
|
|
298
325
|
hasGuardrails: true,
|
|
299
326
|
allowsAutonomy: false,
|
|
@@ -302,8 +329,8 @@ export const RUNTIME_TIER_CONFIGS = {
|
|
|
302
329
|
tier: RuntimeTier.T1_OBSERVED,
|
|
303
330
|
code: 'T1',
|
|
304
331
|
name: 'Observed',
|
|
305
|
-
description: RUNTIME_TIER_DESCRIPTIONS[RuntimeTier.T1_OBSERVED],
|
|
306
|
-
scoreRange: RUNTIME_TIER_SCORES[RuntimeTier.T1_OBSERVED],
|
|
332
|
+
description: exports.RUNTIME_TIER_DESCRIPTIONS[RuntimeTier.T1_OBSERVED],
|
|
333
|
+
scoreRange: exports.RUNTIME_TIER_SCORES[RuntimeTier.T1_OBSERVED],
|
|
307
334
|
requiresApproval: true,
|
|
308
335
|
hasGuardrails: true,
|
|
309
336
|
allowsAutonomy: false,
|
|
@@ -312,8 +339,8 @@ export const RUNTIME_TIER_CONFIGS = {
|
|
|
312
339
|
tier: RuntimeTier.T2_PROVISIONAL,
|
|
313
340
|
code: 'T2',
|
|
314
341
|
name: 'Provisional',
|
|
315
|
-
description: RUNTIME_TIER_DESCRIPTIONS[RuntimeTier.T2_PROVISIONAL],
|
|
316
|
-
scoreRange: RUNTIME_TIER_SCORES[RuntimeTier.T2_PROVISIONAL],
|
|
342
|
+
description: exports.RUNTIME_TIER_DESCRIPTIONS[RuntimeTier.T2_PROVISIONAL],
|
|
343
|
+
scoreRange: exports.RUNTIME_TIER_SCORES[RuntimeTier.T2_PROVISIONAL],
|
|
317
344
|
requiresApproval: true,
|
|
318
345
|
hasGuardrails: true,
|
|
319
346
|
allowsAutonomy: false,
|
|
@@ -322,8 +349,8 @@ export const RUNTIME_TIER_CONFIGS = {
|
|
|
322
349
|
tier: RuntimeTier.T3_MONITORED,
|
|
323
350
|
code: 'T3',
|
|
324
351
|
name: 'Monitored',
|
|
325
|
-
description: RUNTIME_TIER_DESCRIPTIONS[RuntimeTier.T3_MONITORED],
|
|
326
|
-
scoreRange: RUNTIME_TIER_SCORES[RuntimeTier.T3_MONITORED],
|
|
352
|
+
description: exports.RUNTIME_TIER_DESCRIPTIONS[RuntimeTier.T3_MONITORED],
|
|
353
|
+
scoreRange: exports.RUNTIME_TIER_SCORES[RuntimeTier.T3_MONITORED],
|
|
327
354
|
requiresApproval: false,
|
|
328
355
|
hasGuardrails: true,
|
|
329
356
|
allowsAutonomy: false,
|
|
@@ -332,8 +359,8 @@ export const RUNTIME_TIER_CONFIGS = {
|
|
|
332
359
|
tier: RuntimeTier.T4_STANDARD,
|
|
333
360
|
code: 'T4',
|
|
334
361
|
name: 'Standard',
|
|
335
|
-
description: RUNTIME_TIER_DESCRIPTIONS[RuntimeTier.T4_STANDARD],
|
|
336
|
-
scoreRange: RUNTIME_TIER_SCORES[RuntimeTier.T4_STANDARD],
|
|
362
|
+
description: exports.RUNTIME_TIER_DESCRIPTIONS[RuntimeTier.T4_STANDARD],
|
|
363
|
+
scoreRange: exports.RUNTIME_TIER_SCORES[RuntimeTier.T4_STANDARD],
|
|
337
364
|
requiresApproval: false,
|
|
338
365
|
hasGuardrails: false,
|
|
339
366
|
allowsAutonomy: false,
|
|
@@ -342,8 +369,8 @@ export const RUNTIME_TIER_CONFIGS = {
|
|
|
342
369
|
tier: RuntimeTier.T5_TRUSTED,
|
|
343
370
|
code: 'T5',
|
|
344
371
|
name: 'Trusted',
|
|
345
|
-
description: RUNTIME_TIER_DESCRIPTIONS[RuntimeTier.T5_TRUSTED],
|
|
346
|
-
scoreRange: RUNTIME_TIER_SCORES[RuntimeTier.T5_TRUSTED],
|
|
372
|
+
description: exports.RUNTIME_TIER_DESCRIPTIONS[RuntimeTier.T5_TRUSTED],
|
|
373
|
+
scoreRange: exports.RUNTIME_TIER_SCORES[RuntimeTier.T5_TRUSTED],
|
|
347
374
|
requiresApproval: false,
|
|
348
375
|
hasGuardrails: false,
|
|
349
376
|
allowsAutonomy: false,
|
|
@@ -352,8 +379,8 @@ export const RUNTIME_TIER_CONFIGS = {
|
|
|
352
379
|
tier: RuntimeTier.T6_CERTIFIED,
|
|
353
380
|
code: 'T6',
|
|
354
381
|
name: 'Certified',
|
|
355
|
-
description: RUNTIME_TIER_DESCRIPTIONS[RuntimeTier.T6_CERTIFIED],
|
|
356
|
-
scoreRange: RUNTIME_TIER_SCORES[RuntimeTier.T6_CERTIFIED],
|
|
382
|
+
description: exports.RUNTIME_TIER_DESCRIPTIONS[RuntimeTier.T6_CERTIFIED],
|
|
383
|
+
scoreRange: exports.RUNTIME_TIER_SCORES[RuntimeTier.T6_CERTIFIED],
|
|
357
384
|
requiresApproval: false,
|
|
358
385
|
hasGuardrails: false,
|
|
359
386
|
allowsAutonomy: true,
|
|
@@ -362,8 +389,8 @@ export const RUNTIME_TIER_CONFIGS = {
|
|
|
362
389
|
tier: RuntimeTier.T7_AUTONOMOUS,
|
|
363
390
|
code: 'T7',
|
|
364
391
|
name: 'Autonomous',
|
|
365
|
-
description: RUNTIME_TIER_DESCRIPTIONS[RuntimeTier.T7_AUTONOMOUS],
|
|
366
|
-
scoreRange: RUNTIME_TIER_SCORES[RuntimeTier.T7_AUTONOMOUS],
|
|
392
|
+
description: exports.RUNTIME_TIER_DESCRIPTIONS[RuntimeTier.T7_AUTONOMOUS],
|
|
393
|
+
scoreRange: exports.RUNTIME_TIER_SCORES[RuntimeTier.T7_AUTONOMOUS],
|
|
367
394
|
requiresApproval: false,
|
|
368
395
|
hasGuardrails: false,
|
|
369
396
|
allowsAutonomy: true,
|
|
@@ -375,19 +402,19 @@ export const RUNTIME_TIER_CONFIGS = {
|
|
|
375
402
|
/**
|
|
376
403
|
* Checks if one certification tier is higher than another.
|
|
377
404
|
*/
|
|
378
|
-
|
|
405
|
+
function isCertificationTierHigher(tier, other) {
|
|
379
406
|
return tier > other;
|
|
380
407
|
}
|
|
381
408
|
/**
|
|
382
409
|
* Checks if a certification tier meets a minimum requirement.
|
|
383
410
|
*/
|
|
384
|
-
|
|
411
|
+
function meetsCertificationTier(tier, minTier) {
|
|
385
412
|
return tier >= minTier;
|
|
386
413
|
}
|
|
387
414
|
/**
|
|
388
415
|
* Compares two certification tiers.
|
|
389
416
|
*/
|
|
390
|
-
|
|
417
|
+
function compareCertificationTiers(a, b) {
|
|
391
418
|
if (a < b)
|
|
392
419
|
return -1;
|
|
393
420
|
if (a > b)
|
|
@@ -397,19 +424,19 @@ export function compareCertificationTiers(a, b) {
|
|
|
397
424
|
/**
|
|
398
425
|
* Checks if one runtime tier is higher than another.
|
|
399
426
|
*/
|
|
400
|
-
|
|
427
|
+
function isRuntimeTierHigher(tier, other) {
|
|
401
428
|
return tier > other;
|
|
402
429
|
}
|
|
403
430
|
/**
|
|
404
431
|
* Checks if a runtime tier meets a minimum requirement.
|
|
405
432
|
*/
|
|
406
|
-
|
|
433
|
+
function meetsRuntimeTier(tier, minTier) {
|
|
407
434
|
return tier >= minTier;
|
|
408
435
|
}
|
|
409
436
|
/**
|
|
410
437
|
* Compares two runtime tiers.
|
|
411
438
|
*/
|
|
412
|
-
|
|
439
|
+
function compareRuntimeTiers(a, b) {
|
|
413
440
|
if (a < b)
|
|
414
441
|
return -1;
|
|
415
442
|
if (a > b)
|
|
@@ -425,7 +452,7 @@ export function compareRuntimeTiers(a, b) {
|
|
|
425
452
|
* @param score - Trust score on 0-1000 scale
|
|
426
453
|
* @returns Corresponding CertificationTier
|
|
427
454
|
*/
|
|
428
|
-
|
|
455
|
+
function scoreToCertificationTier(score) {
|
|
429
456
|
if (score < 0 || score > 1000) {
|
|
430
457
|
throw new Error(`Trust score must be between 0 and 1000, got ${score}`);
|
|
431
458
|
}
|
|
@@ -433,7 +460,7 @@ export function scoreToCertificationTier(score) {
|
|
|
433
460
|
return CertificationTier.T0_SANDBOX;
|
|
434
461
|
if (score < 350)
|
|
435
462
|
return CertificationTier.T1_OBSERVED;
|
|
436
|
-
if (score <
|
|
463
|
+
if (score < 501)
|
|
437
464
|
return CertificationTier.T2_PROVISIONAL;
|
|
438
465
|
if (score < 650)
|
|
439
466
|
return CertificationTier.T3_MONITORED;
|
|
@@ -451,7 +478,7 @@ export function scoreToCertificationTier(score) {
|
|
|
451
478
|
* @param score - Trust score on 0-1000 scale
|
|
452
479
|
* @returns Corresponding RuntimeTier
|
|
453
480
|
*/
|
|
454
|
-
|
|
481
|
+
function scoreToRuntimeTier(score) {
|
|
455
482
|
if (score < 0 || score > 1000) {
|
|
456
483
|
throw new Error(`Trust score must be between 0 and 1000, got ${score}`);
|
|
457
484
|
}
|
|
@@ -459,7 +486,7 @@ export function scoreToRuntimeTier(score) {
|
|
|
459
486
|
return RuntimeTier.T0_SANDBOX;
|
|
460
487
|
if (score < 350)
|
|
461
488
|
return RuntimeTier.T1_OBSERVED;
|
|
462
|
-
if (score <
|
|
489
|
+
if (score < 501)
|
|
463
490
|
return RuntimeTier.T2_PROVISIONAL;
|
|
464
491
|
if (score < 650)
|
|
465
492
|
return RuntimeTier.T3_MONITORED;
|
|
@@ -477,8 +504,8 @@ export function scoreToRuntimeTier(score) {
|
|
|
477
504
|
* @param tier - The certification tier
|
|
478
505
|
* @returns Midpoint score for the tier
|
|
479
506
|
*/
|
|
480
|
-
|
|
481
|
-
const range = CERTIFICATION_TIER_SCORES[tier];
|
|
507
|
+
function certificationTierToScore(tier) {
|
|
508
|
+
const range = exports.CERTIFICATION_TIER_SCORES[tier];
|
|
482
509
|
return Math.round((range.min + range.max) / 2);
|
|
483
510
|
}
|
|
484
511
|
/**
|
|
@@ -487,33 +514,33 @@ export function certificationTierToScore(tier) {
|
|
|
487
514
|
* @param tier - The runtime tier
|
|
488
515
|
* @returns Midpoint score for the tier
|
|
489
516
|
*/
|
|
490
|
-
|
|
491
|
-
const range = RUNTIME_TIER_SCORES[tier];
|
|
517
|
+
function runtimeTierToScore(tier) {
|
|
518
|
+
const range = exports.RUNTIME_TIER_SCORES[tier];
|
|
492
519
|
return Math.round((range.min + range.max) / 2);
|
|
493
520
|
}
|
|
494
521
|
/**
|
|
495
522
|
* Gets the minimum score for a certification tier.
|
|
496
523
|
*/
|
|
497
|
-
|
|
498
|
-
return CERTIFICATION_TIER_SCORES[tier].min;
|
|
524
|
+
function getCertificationTierMinScore(tier) {
|
|
525
|
+
return exports.CERTIFICATION_TIER_SCORES[tier].min;
|
|
499
526
|
}
|
|
500
527
|
/**
|
|
501
528
|
* Gets the maximum score for a certification tier.
|
|
502
529
|
*/
|
|
503
|
-
|
|
504
|
-
return CERTIFICATION_TIER_SCORES[tier].max;
|
|
530
|
+
function getCertificationTierMaxScore(tier) {
|
|
531
|
+
return exports.CERTIFICATION_TIER_SCORES[tier].max;
|
|
505
532
|
}
|
|
506
533
|
/**
|
|
507
534
|
* Gets the minimum score for a runtime tier.
|
|
508
535
|
*/
|
|
509
|
-
|
|
510
|
-
return RUNTIME_TIER_SCORES[tier].min;
|
|
536
|
+
function getRuntimeTierMinScore(tier) {
|
|
537
|
+
return exports.RUNTIME_TIER_SCORES[tier].min;
|
|
511
538
|
}
|
|
512
539
|
/**
|
|
513
540
|
* Gets the maximum score for a runtime tier.
|
|
514
541
|
*/
|
|
515
|
-
|
|
516
|
-
return RUNTIME_TIER_SCORES[tier].max;
|
|
542
|
+
function getRuntimeTierMaxScore(tier) {
|
|
543
|
+
return exports.RUNTIME_TIER_SCORES[tier].max;
|
|
517
544
|
}
|
|
518
545
|
// ============================================================================
|
|
519
546
|
// Tier Information Helpers
|
|
@@ -521,38 +548,38 @@ export function getRuntimeTierMaxScore(tier) {
|
|
|
521
548
|
/**
|
|
522
549
|
* Gets the configuration for a certification tier.
|
|
523
550
|
*/
|
|
524
|
-
|
|
525
|
-
return CERTIFICATION_TIER_CONFIGS[tier];
|
|
551
|
+
function getCertificationTierConfig(tier) {
|
|
552
|
+
return exports.CERTIFICATION_TIER_CONFIGS[tier];
|
|
526
553
|
}
|
|
527
554
|
/**
|
|
528
555
|
* Gets the configuration for a runtime tier.
|
|
529
556
|
*/
|
|
530
|
-
|
|
531
|
-
return RUNTIME_TIER_CONFIGS[tier];
|
|
557
|
+
function getRuntimeTierConfig(tier) {
|
|
558
|
+
return exports.RUNTIME_TIER_CONFIGS[tier];
|
|
532
559
|
}
|
|
533
560
|
/**
|
|
534
561
|
* Gets the name of a certification tier.
|
|
535
562
|
*/
|
|
536
|
-
|
|
537
|
-
return CERTIFICATION_TIER_NAMES[tier];
|
|
563
|
+
function getCertificationTierName(tier) {
|
|
564
|
+
return exports.CERTIFICATION_TIER_NAMES[tier];
|
|
538
565
|
}
|
|
539
566
|
/**
|
|
540
567
|
* Gets the name of a runtime tier.
|
|
541
568
|
*/
|
|
542
|
-
|
|
543
|
-
return RUNTIME_TIER_NAMES[tier];
|
|
569
|
+
function getRuntimeTierName(tier) {
|
|
570
|
+
return exports.RUNTIME_TIER_NAMES[tier];
|
|
544
571
|
}
|
|
545
572
|
/**
|
|
546
573
|
* Gets the description of a certification tier.
|
|
547
574
|
*/
|
|
548
|
-
|
|
549
|
-
return CERTIFICATION_TIER_DESCRIPTIONS[tier];
|
|
575
|
+
function getCertificationTierDescription(tier) {
|
|
576
|
+
return exports.CERTIFICATION_TIER_DESCRIPTIONS[tier];
|
|
550
577
|
}
|
|
551
578
|
/**
|
|
552
579
|
* Gets the description of a runtime tier.
|
|
553
580
|
*/
|
|
554
|
-
|
|
555
|
-
return RUNTIME_TIER_DESCRIPTIONS[tier];
|
|
581
|
+
function getRuntimeTierDescription(tier) {
|
|
582
|
+
return exports.RUNTIME_TIER_DESCRIPTIONS[tier];
|
|
556
583
|
}
|
|
557
584
|
// ============================================================================
|
|
558
585
|
// Parsing
|
|
@@ -564,7 +591,7 @@ export function getRuntimeTierDescription(tier) {
|
|
|
564
591
|
* @returns Parsed CertificationTier
|
|
565
592
|
* @throws Error if the string is not a valid tier
|
|
566
593
|
*/
|
|
567
|
-
|
|
594
|
+
function parseCertificationTier(tierStr) {
|
|
568
595
|
const normalized = tierStr.toUpperCase().replace(/^T/, '');
|
|
569
596
|
const tier = parseInt(normalized, 10);
|
|
570
597
|
if (isNaN(tier) || tier < 0 || tier > 7) {
|
|
@@ -579,7 +606,7 @@ export function parseCertificationTier(tierStr) {
|
|
|
579
606
|
* @returns Parsed RuntimeTier
|
|
580
607
|
* @throws Error if the string is not a valid tier
|
|
581
608
|
*/
|
|
582
|
-
|
|
609
|
+
function parseRuntimeTier(tierStr) {
|
|
583
610
|
const normalized = tierStr.toUpperCase().replace(/^T/, '');
|
|
584
611
|
const tier = parseInt(normalized, 10);
|
|
585
612
|
if (isNaN(tier) || tier < 0 || tier > 7) {
|
|
@@ -593,7 +620,7 @@ export function parseRuntimeTier(tierStr) {
|
|
|
593
620
|
/**
|
|
594
621
|
* Type guard to check if a value is a valid CertificationTier.
|
|
595
622
|
*/
|
|
596
|
-
|
|
623
|
+
function isCertificationTier(value) {
|
|
597
624
|
return (typeof value === 'number' &&
|
|
598
625
|
Number.isInteger(value) &&
|
|
599
626
|
value >= 0 &&
|
|
@@ -602,7 +629,7 @@ export function isCertificationTier(value) {
|
|
|
602
629
|
/**
|
|
603
630
|
* Type guard to check if a value is a valid RuntimeTier.
|
|
604
631
|
*/
|
|
605
|
-
|
|
632
|
+
function isRuntimeTier(value) {
|
|
606
633
|
return (typeof value === 'number' &&
|
|
607
634
|
Number.isInteger(value) &&
|
|
608
635
|
value >= 0 &&
|
|
@@ -614,46 +641,46 @@ export function isRuntimeTier(value) {
|
|
|
614
641
|
/**
|
|
615
642
|
* Zod schema for certification tier configuration.
|
|
616
643
|
*/
|
|
617
|
-
|
|
618
|
-
tier: certificationTierSchema,
|
|
619
|
-
code: z.string().regex(/^T[0-7]$/),
|
|
620
|
-
name: z.string().min(1),
|
|
621
|
-
description: z.string().min(1),
|
|
622
|
-
scoreRange: z.object({
|
|
623
|
-
min: z.number().int().min(0).max(1000),
|
|
624
|
-
max: z.number().int().min(0).max(1000),
|
|
644
|
+
exports.certificationTierConfigSchema = zod_1.z.object({
|
|
645
|
+
tier: exports.certificationTierSchema,
|
|
646
|
+
code: zod_1.z.string().regex(/^T[0-7]$/),
|
|
647
|
+
name: zod_1.z.string().min(1),
|
|
648
|
+
description: zod_1.z.string().min(1),
|
|
649
|
+
scoreRange: zod_1.z.object({
|
|
650
|
+
min: zod_1.z.number().int().min(0).max(1000),
|
|
651
|
+
max: zod_1.z.number().int().min(0).max(1000),
|
|
625
652
|
}),
|
|
626
|
-
requiredAttestations: z.array(z.string()).readonly(),
|
|
627
|
-
maxCapabilityLevel: z.number().int().min(0).max(7),
|
|
653
|
+
requiredAttestations: zod_1.z.array(zod_1.z.string()).readonly(),
|
|
654
|
+
maxCapabilityLevel: zod_1.z.number().int().min(0).max(7),
|
|
628
655
|
});
|
|
629
656
|
/**
|
|
630
657
|
* Zod schema for runtime tier configuration.
|
|
631
658
|
*/
|
|
632
|
-
|
|
633
|
-
tier: runtimeTierSchema,
|
|
634
|
-
code: z.string().regex(/^T[0-7]$/),
|
|
635
|
-
name: z.string().min(1),
|
|
636
|
-
description: z.string().min(1),
|
|
637
|
-
scoreRange: z.object({
|
|
638
|
-
min: z.number().int().min(0).max(1000),
|
|
639
|
-
max: z.number().int().min(0).max(1000),
|
|
659
|
+
exports.runtimeTierConfigSchema = zod_1.z.object({
|
|
660
|
+
tier: exports.runtimeTierSchema,
|
|
661
|
+
code: zod_1.z.string().regex(/^T[0-7]$/),
|
|
662
|
+
name: zod_1.z.string().min(1),
|
|
663
|
+
description: zod_1.z.string().min(1),
|
|
664
|
+
scoreRange: zod_1.z.object({
|
|
665
|
+
min: zod_1.z.number().int().min(0).max(1000),
|
|
666
|
+
max: zod_1.z.number().int().min(0).max(1000),
|
|
640
667
|
}),
|
|
641
|
-
requiresApproval: z.boolean(),
|
|
642
|
-
hasGuardrails: z.boolean(),
|
|
643
|
-
allowsAutonomy: z.boolean(),
|
|
668
|
+
requiresApproval: zod_1.z.boolean(),
|
|
669
|
+
hasGuardrails: zod_1.z.boolean(),
|
|
670
|
+
allowsAutonomy: zod_1.z.boolean(),
|
|
644
671
|
});
|
|
645
672
|
/**
|
|
646
673
|
* Zod schema for parsing tier strings.
|
|
647
674
|
*/
|
|
648
|
-
|
|
675
|
+
exports.tierStringSchema = zod_1.z
|
|
649
676
|
.string()
|
|
650
677
|
.regex(/^[Tt]?[0-7]$/, 'Tier must be T0-T7 or 0-7');
|
|
651
678
|
/**
|
|
652
679
|
* Zod schema for parsing and transforming to CertificationTier.
|
|
653
680
|
*/
|
|
654
|
-
|
|
681
|
+
exports.certificationTierStringSchema = exports.tierStringSchema.transform((str) => parseCertificationTier(str));
|
|
655
682
|
/**
|
|
656
683
|
* Zod schema for parsing and transforming to RuntimeTier.
|
|
657
684
|
*/
|
|
658
|
-
|
|
685
|
+
exports.runtimeTierStringSchema = exports.tierStringSchema.transform((str) => parseRuntimeTier(str));
|
|
659
686
|
//# sourceMappingURL=tiers.js.map
|