@vorionsys/contracts 0.1.0 → 0.1.2
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/CHANGELOG.md +44 -0
- package/LICENSE +190 -0
- package/README.md +435 -0
- package/dist/aci/index.d.ts +6 -62
- package/dist/aci/index.d.ts.map +1 -1
- package/dist/aci/index.js +22 -152
- package/dist/aci/index.js.map +1 -1
- package/dist/canonical/agent.d.ts +2 -2
- package/dist/canonical/agent.d.ts.map +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/{aci → car}/attestation.d.ts +73 -73
- package/dist/{aci → car}/attestation.d.ts.map +1 -1
- package/dist/{aci → car}/attestation.js +69 -59
- 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/{aci → car}/domains.d.ts +3 -3
- package/dist/{aci → car}/domains.d.ts.map +1 -1
- package/dist/{aci → car}/domains.js +57 -39
- package/dist/car/domains.js.map +1 -0
- package/dist/{aci → car}/effective-permission.d.ts +8 -8
- package/dist/{aci → car}/effective-permission.d.ts.map +1 -1
- package/dist/{aci → car}/effective-permission.js +59 -46
- package/dist/car/effective-permission.js.map +1 -0
- package/dist/{aci → car}/identity.d.ts +235 -129
- package/dist/car/identity.d.ts.map +1 -0
- package/dist/{aci → car}/identity.js +125 -105
- 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/{aci → car}/levels.d.ts +5 -5
- package/dist/{aci → car}/levels.d.ts.map +1 -1
- package/dist/{aci → car}/levels.js +81 -62
- package/dist/car/levels.js.map +1 -0
- package/dist/{aci → car}/mapping.d.ts +5 -5
- package/dist/{aci → car}/mapping.d.ts.map +1 -1
- package/dist/{aci → car}/mapping.js +96 -76
- package/dist/car/mapping.js.map +1 -0
- package/dist/{aci → car}/skills.d.ts +4 -4
- package/dist/{aci → car}/skills.d.ts.map +1 -1
- package/dist/{aci → car}/skills.js +72 -50
- package/dist/car/skills.js.map +1 -0
- package/dist/{aci → car}/tiers.d.ts +3 -3
- package/dist/{aci → car}/tiers.d.ts.map +1 -1
- package/dist/{aci → car}/tiers.js +140 -113
- 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 +1914 -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 +506 -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 +554 -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 +535 -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 +475 -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 +256 -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 +149 -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 +412 -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 +882 -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 +783 -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 +603 -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 +382 -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.d.ts +3 -1
- package/dist/v2/proof-event.d.ts.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.d.ts +3 -0
- package/dist/validators/proof-event.d.ts.map +1 -1
- package/dist/validators/proof-event.js +103 -99
- 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 +81 -15
- package/dist/aci/aci-string.d.ts +0 -539
- package/dist/aci/aci-string.d.ts.map +0 -1
- package/dist/aci/aci-string.js +0 -563
- package/dist/aci/aci-string.js.map +0 -1
- package/dist/aci/attestation.js.map +0 -1
- package/dist/aci/domains.js.map +0 -1
- package/dist/aci/effective-permission.js.map +0 -1
- package/dist/aci/identity.d.ts.map +0 -1
- package/dist/aci/identity.js.map +0 -1
- package/dist/aci/jwt-claims.d.ts +0 -756
- package/dist/aci/jwt-claims.d.ts.map +0 -1
- package/dist/aci/jwt-claims.js +0 -335
- package/dist/aci/jwt-claims.js.map +0 -1
- package/dist/aci/levels.js.map +0 -1
- package/dist/aci/mapping.js.map +0 -1
- package/dist/aci/skills.js.map +0 -1
- package/dist/aci/tiers.js.map +0 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
/**
|
|
2
|
-
* @fileoverview
|
|
3
|
+
* @fileoverview CAR Skill Codes and Bitmask Operations
|
|
3
4
|
*
|
|
4
5
|
* Defines the skill codes used for fine-grained capability matching,
|
|
5
6
|
* with bitmask encoding for efficient queries and skill matching.
|
|
@@ -8,13 +9,34 @@
|
|
|
8
9
|
* define broad capability areas (A-I, S), skills provide granular
|
|
9
10
|
* specialization within those areas.
|
|
10
11
|
*
|
|
11
|
-
* @module @
|
|
12
|
+
* @module @vorionsys/contracts/car/skills
|
|
12
13
|
*/
|
|
13
|
-
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.skillStringSchema = exports.skillBitmaskSchema = exports.skillCodeArraySchema = exports.skillDefinitionSchema = exports.LEGACY_ID_TO_SKILL = exports.SKILLS_BY_CATEGORY = exports.ALL_SKILLS_BITMASK = exports.SKILL_NAMES = exports.SKILL_DEFINITIONS = exports.skillCodeSchema = exports.SKILL_CODES = void 0;
|
|
16
|
+
exports.legacyIdToSkillCode = legacyIdToSkillCode;
|
|
17
|
+
exports.legacyIdsToSkillCodes = legacyIdsToSkillCodes;
|
|
18
|
+
exports.encodeSkills = encodeSkills;
|
|
19
|
+
exports.decodeSkills = decodeSkills;
|
|
20
|
+
exports.parseSkillString = parseSkillString;
|
|
21
|
+
exports.formatSkillString = formatSkillString;
|
|
22
|
+
exports.hasSkills = hasSkills;
|
|
23
|
+
exports.satisfiesSkillRequirements = satisfiesSkillRequirements;
|
|
24
|
+
exports.intersectSkills = intersectSkills;
|
|
25
|
+
exports.unionSkills = unionSkills;
|
|
26
|
+
exports.differenceSkills = differenceSkills;
|
|
27
|
+
exports.getSkillDefinition = getSkillDefinition;
|
|
28
|
+
exports.getSkillName = getSkillName;
|
|
29
|
+
exports.getSkillBit = getSkillBit;
|
|
30
|
+
exports.getSkillCategory = getSkillCategory;
|
|
31
|
+
exports.getSkillsInCategory = getSkillsInCategory;
|
|
32
|
+
exports.countSkills = countSkills;
|
|
33
|
+
exports.isSkillCode = isSkillCode;
|
|
34
|
+
exports.isSkillCodeArray = isSkillCodeArray;
|
|
35
|
+
const zod_1 = require("zod");
|
|
14
36
|
/**
|
|
15
37
|
* Array of all valid skill codes.
|
|
16
38
|
*/
|
|
17
|
-
|
|
39
|
+
exports.SKILL_CODES = [
|
|
18
40
|
'TG', 'CW', 'CR', 'TD', 'TR', 'SM', // Content & Generation
|
|
19
41
|
'DA', 'RS', 'QA', // Analysis & Research
|
|
20
42
|
'CA', 'DV', 'RV', 'WS', 'FO', 'AI', // Development & Technical
|
|
@@ -24,14 +46,14 @@ export const SKILL_CODES = [
|
|
|
24
46
|
/**
|
|
25
47
|
* Zod schema for SkillCode validation.
|
|
26
48
|
*/
|
|
27
|
-
|
|
49
|
+
exports.skillCodeSchema = zod_1.z.enum([
|
|
28
50
|
'TG', 'CW', 'CR', 'TD', 'TR', 'SM',
|
|
29
51
|
'DA', 'RS', 'QA',
|
|
30
52
|
'CA', 'DV', 'RV', 'WS', 'FO', 'AI',
|
|
31
53
|
'PL', 'CM', 'CS', 'AU',
|
|
32
54
|
'SC', 'GV',
|
|
33
55
|
], {
|
|
34
|
-
errorMap: () => ({ message: `Invalid skill code. Must be one of: ${SKILL_CODES.join(', ')}` }),
|
|
56
|
+
errorMap: () => ({ message: `Invalid skill code. Must be one of: ${exports.SKILL_CODES.join(', ')}` }),
|
|
35
57
|
});
|
|
36
58
|
/**
|
|
37
59
|
* Skill definitions with their bitmask values.
|
|
@@ -41,7 +63,7 @@ export const skillCodeSchema = z.enum([
|
|
|
41
63
|
*
|
|
42
64
|
* Using 32-bit integers, we can support up to 32 skills (21 currently defined).
|
|
43
65
|
*/
|
|
44
|
-
|
|
66
|
+
exports.SKILL_DEFINITIONS = {
|
|
45
67
|
// Content & Generation (bits 0-5)
|
|
46
68
|
TG: { code: 'TG', name: 'Text Generation', bit: 0x00001, description: 'General text creation and composition', category: 'content', legacyId: 'text_generation' },
|
|
47
69
|
CW: { code: 'CW', name: 'Content Writing', bit: 0x00002, description: 'Blog posts, articles, marketing copy', category: 'content', legacyId: 'content_writing' },
|
|
@@ -72,15 +94,15 @@ export const SKILL_DEFINITIONS = {
|
|
|
72
94
|
/**
|
|
73
95
|
* Human-readable skill names indexed by code.
|
|
74
96
|
*/
|
|
75
|
-
|
|
97
|
+
exports.SKILL_NAMES = Object.fromEntries(Object.entries(exports.SKILL_DEFINITIONS).map(([code, def]) => [code, def.name]));
|
|
76
98
|
/**
|
|
77
99
|
* Bitmask value representing all skills combined.
|
|
78
100
|
*/
|
|
79
|
-
|
|
101
|
+
exports.ALL_SKILLS_BITMASK = Object.values(exports.SKILL_DEFINITIONS).reduce((mask, skill) => mask | skill.bit, 0);
|
|
80
102
|
/**
|
|
81
103
|
* Skills grouped by category.
|
|
82
104
|
*/
|
|
83
|
-
|
|
105
|
+
exports.SKILLS_BY_CATEGORY = {
|
|
84
106
|
content: ['TG', 'CW', 'CR', 'TD', 'TR', 'SM'],
|
|
85
107
|
analysis: ['DA', 'RS', 'QA'],
|
|
86
108
|
development: ['CA', 'DV', 'RV', 'WS', 'FO', 'AI'],
|
|
@@ -93,7 +115,7 @@ export const SKILLS_BY_CATEGORY = {
|
|
|
93
115
|
/**
|
|
94
116
|
* Map legacy string identifiers to skill codes.
|
|
95
117
|
*/
|
|
96
|
-
|
|
118
|
+
exports.LEGACY_ID_TO_SKILL = {
|
|
97
119
|
text_generation: 'TG',
|
|
98
120
|
content_writing: 'CW',
|
|
99
121
|
creative_writing: 'CR',
|
|
@@ -114,8 +136,8 @@ export const LEGACY_ID_TO_SKILL = {
|
|
|
114
136
|
* @param legacyId - Legacy string identifier
|
|
115
137
|
* @returns Skill code or undefined if not found
|
|
116
138
|
*/
|
|
117
|
-
|
|
118
|
-
return LEGACY_ID_TO_SKILL[legacyId];
|
|
139
|
+
function legacyIdToSkillCode(legacyId) {
|
|
140
|
+
return exports.LEGACY_ID_TO_SKILL[legacyId];
|
|
119
141
|
}
|
|
120
142
|
/**
|
|
121
143
|
* Converts an array of legacy skill IDs to skill codes.
|
|
@@ -123,9 +145,9 @@ export function legacyIdToSkillCode(legacyId) {
|
|
|
123
145
|
* @param legacyIds - Array of legacy string identifiers
|
|
124
146
|
* @returns Array of skill codes (unrecognized IDs are filtered out)
|
|
125
147
|
*/
|
|
126
|
-
|
|
148
|
+
function legacyIdsToSkillCodes(legacyIds) {
|
|
127
149
|
return legacyIds
|
|
128
|
-
.map((id) => LEGACY_ID_TO_SKILL[id])
|
|
150
|
+
.map((id) => exports.LEGACY_ID_TO_SKILL[id])
|
|
129
151
|
.filter((code) => code !== undefined);
|
|
130
152
|
}
|
|
131
153
|
// ============================================================================
|
|
@@ -144,9 +166,9 @@ export function legacyIdsToSkillCodes(legacyIds) {
|
|
|
144
166
|
* encodeSkills([]); // 0
|
|
145
167
|
* ```
|
|
146
168
|
*/
|
|
147
|
-
|
|
169
|
+
function encodeSkills(skills) {
|
|
148
170
|
return skills.reduce((mask, code) => {
|
|
149
|
-
const skill = SKILL_DEFINITIONS[code];
|
|
171
|
+
const skill = exports.SKILL_DEFINITIONS[code];
|
|
150
172
|
return mask | skill.bit;
|
|
151
173
|
}, 0);
|
|
152
174
|
}
|
|
@@ -163,8 +185,8 @@ export function encodeSkills(skills) {
|
|
|
163
185
|
* decodeSkills(0); // []
|
|
164
186
|
* ```
|
|
165
187
|
*/
|
|
166
|
-
|
|
167
|
-
return SKILL_CODES.filter((code) => (bitmask & SKILL_DEFINITIONS[code].bit) !== 0);
|
|
188
|
+
function decodeSkills(bitmask) {
|
|
189
|
+
return exports.SKILL_CODES.filter((code) => (bitmask & exports.SKILL_DEFINITIONS[code].bit) !== 0);
|
|
168
190
|
}
|
|
169
191
|
/**
|
|
170
192
|
* Parses a skill string (e.g., "TG,CA,DA") into an array of codes.
|
|
@@ -179,7 +201,7 @@ export function decodeSkills(bitmask) {
|
|
|
179
201
|
* parseSkillString(''); // []
|
|
180
202
|
* ```
|
|
181
203
|
*/
|
|
182
|
-
|
|
204
|
+
function parseSkillString(skillString) {
|
|
183
205
|
if (!skillString)
|
|
184
206
|
return [];
|
|
185
207
|
// Try comma-separated first
|
|
@@ -211,7 +233,7 @@ export function parseSkillString(skillString) {
|
|
|
211
233
|
* formatSkillString(['TG', 'TG']); // 'TG'
|
|
212
234
|
* ```
|
|
213
235
|
*/
|
|
214
|
-
|
|
236
|
+
function formatSkillString(skills) {
|
|
215
237
|
const unique = [...new Set(skills)];
|
|
216
238
|
return unique.sort().join(',');
|
|
217
239
|
}
|
|
@@ -232,7 +254,7 @@ export function formatSkillString(skills) {
|
|
|
232
254
|
* hasSkills(agentMask, required); // true
|
|
233
255
|
* ```
|
|
234
256
|
*/
|
|
235
|
-
|
|
257
|
+
function hasSkills(agentSkills, requiredSkills) {
|
|
236
258
|
return (agentSkills & requiredSkills) === requiredSkills;
|
|
237
259
|
}
|
|
238
260
|
/**
|
|
@@ -242,7 +264,7 @@ export function hasSkills(agentSkills, requiredSkills) {
|
|
|
242
264
|
* @param requiredSkills - Required skill codes
|
|
243
265
|
* @returns True if agent has all required skills
|
|
244
266
|
*/
|
|
245
|
-
|
|
267
|
+
function satisfiesSkillRequirements(agentSkills, requiredSkills) {
|
|
246
268
|
const agentMask = encodeSkills(agentSkills);
|
|
247
269
|
const requiredMask = encodeSkills(requiredSkills);
|
|
248
270
|
return hasSkills(agentMask, requiredMask);
|
|
@@ -254,7 +276,7 @@ export function satisfiesSkillRequirements(agentSkills, requiredSkills) {
|
|
|
254
276
|
* @param skills2 - Second skill set
|
|
255
277
|
* @returns Skills present in both sets
|
|
256
278
|
*/
|
|
257
|
-
|
|
279
|
+
function intersectSkills(skills1, skills2) {
|
|
258
280
|
const mask1 = encodeSkills(skills1);
|
|
259
281
|
const mask2 = encodeSkills(skills2);
|
|
260
282
|
return decodeSkills(mask1 & mask2);
|
|
@@ -266,7 +288,7 @@ export function intersectSkills(skills1, skills2) {
|
|
|
266
288
|
* @param skills2 - Second skill set
|
|
267
289
|
* @returns All skills from both sets
|
|
268
290
|
*/
|
|
269
|
-
|
|
291
|
+
function unionSkills(skills1, skills2) {
|
|
270
292
|
const mask1 = encodeSkills(skills1);
|
|
271
293
|
const mask2 = encodeSkills(skills2);
|
|
272
294
|
return decodeSkills(mask1 | mask2);
|
|
@@ -278,7 +300,7 @@ export function unionSkills(skills1, skills2) {
|
|
|
278
300
|
* @param skills2 - Second skill set
|
|
279
301
|
* @returns Skills unique to the first set
|
|
280
302
|
*/
|
|
281
|
-
|
|
303
|
+
function differenceSkills(skills1, skills2) {
|
|
282
304
|
const mask1 = encodeSkills(skills1);
|
|
283
305
|
const mask2 = encodeSkills(skills2);
|
|
284
306
|
return decodeSkills(mask1 & ~mask2);
|
|
@@ -292,8 +314,8 @@ export function differenceSkills(skills1, skills2) {
|
|
|
292
314
|
* @param code - Skill code
|
|
293
315
|
* @returns Skill definition or undefined if not found
|
|
294
316
|
*/
|
|
295
|
-
|
|
296
|
-
return SKILL_DEFINITIONS[code];
|
|
317
|
+
function getSkillDefinition(code) {
|
|
318
|
+
return exports.SKILL_DEFINITIONS[code];
|
|
297
319
|
}
|
|
298
320
|
/**
|
|
299
321
|
* Gets the human-readable name for a skill code.
|
|
@@ -301,8 +323,8 @@ export function getSkillDefinition(code) {
|
|
|
301
323
|
* @param code - Skill code
|
|
302
324
|
* @returns Skill name
|
|
303
325
|
*/
|
|
304
|
-
|
|
305
|
-
return SKILL_DEFINITIONS[code].name;
|
|
326
|
+
function getSkillName(code) {
|
|
327
|
+
return exports.SKILL_DEFINITIONS[code].name;
|
|
306
328
|
}
|
|
307
329
|
/**
|
|
308
330
|
* Gets the bitmask value for a skill code.
|
|
@@ -310,8 +332,8 @@ export function getSkillName(code) {
|
|
|
310
332
|
* @param code - Skill code
|
|
311
333
|
* @returns Bitmask value
|
|
312
334
|
*/
|
|
313
|
-
|
|
314
|
-
return SKILL_DEFINITIONS[code].bit;
|
|
335
|
+
function getSkillBit(code) {
|
|
336
|
+
return exports.SKILL_DEFINITIONS[code].bit;
|
|
315
337
|
}
|
|
316
338
|
/**
|
|
317
339
|
* Gets the category for a skill code.
|
|
@@ -319,8 +341,8 @@ export function getSkillBit(code) {
|
|
|
319
341
|
* @param code - Skill code
|
|
320
342
|
* @returns Skill category
|
|
321
343
|
*/
|
|
322
|
-
|
|
323
|
-
return SKILL_DEFINITIONS[code].category;
|
|
344
|
+
function getSkillCategory(code) {
|
|
345
|
+
return exports.SKILL_DEFINITIONS[code].category;
|
|
324
346
|
}
|
|
325
347
|
/**
|
|
326
348
|
* Gets all skills in a category.
|
|
@@ -328,8 +350,8 @@ export function getSkillCategory(code) {
|
|
|
328
350
|
* @param category - Skill category
|
|
329
351
|
* @returns Array of skill codes in that category
|
|
330
352
|
*/
|
|
331
|
-
|
|
332
|
-
return SKILLS_BY_CATEGORY[category];
|
|
353
|
+
function getSkillsInCategory(category) {
|
|
354
|
+
return exports.SKILLS_BY_CATEGORY[category];
|
|
333
355
|
}
|
|
334
356
|
/**
|
|
335
357
|
* Counts the number of skills in a bitmask.
|
|
@@ -337,7 +359,7 @@ export function getSkillsInCategory(category) {
|
|
|
337
359
|
* @param bitmask - Skill bitmask
|
|
338
360
|
* @returns Number of skills
|
|
339
361
|
*/
|
|
340
|
-
|
|
362
|
+
function countSkills(bitmask) {
|
|
341
363
|
let count = 0;
|
|
342
364
|
let mask = bitmask;
|
|
343
365
|
while (mask) {
|
|
@@ -355,8 +377,8 @@ export function countSkills(bitmask) {
|
|
|
355
377
|
* @param value - Value to check
|
|
356
378
|
* @returns True if value is a valid SkillCode
|
|
357
379
|
*/
|
|
358
|
-
|
|
359
|
-
return typeof value === 'string' && SKILL_CODES.includes(value);
|
|
380
|
+
function isSkillCode(value) {
|
|
381
|
+
return typeof value === 'string' && exports.SKILL_CODES.includes(value);
|
|
360
382
|
}
|
|
361
383
|
/**
|
|
362
384
|
* Type guard to check if an array contains only valid skill codes.
|
|
@@ -364,7 +386,7 @@ export function isSkillCode(value) {
|
|
|
364
386
|
* @param values - Array to check
|
|
365
387
|
* @returns True if all values are valid SkillCodes
|
|
366
388
|
*/
|
|
367
|
-
|
|
389
|
+
function isSkillCodeArray(values) {
|
|
368
390
|
return Array.isArray(values) && values.every(isSkillCode);
|
|
369
391
|
}
|
|
370
392
|
// ============================================================================
|
|
@@ -373,26 +395,26 @@ export function isSkillCodeArray(values) {
|
|
|
373
395
|
/**
|
|
374
396
|
* Zod schema for SkillDefinition validation.
|
|
375
397
|
*/
|
|
376
|
-
|
|
377
|
-
code: skillCodeSchema,
|
|
378
|
-
name: z.string().min(1),
|
|
379
|
-
bit: z.number().int().positive(),
|
|
380
|
-
description: z.string().min(1),
|
|
381
|
-
category: z.enum(['content', 'analysis', 'development', 'business', 'security']),
|
|
382
|
-
legacyId: z.string().optional(),
|
|
398
|
+
exports.skillDefinitionSchema = zod_1.z.object({
|
|
399
|
+
code: exports.skillCodeSchema,
|
|
400
|
+
name: zod_1.z.string().min(1),
|
|
401
|
+
bit: zod_1.z.number().int().positive(),
|
|
402
|
+
description: zod_1.z.string().min(1),
|
|
403
|
+
category: zod_1.z.enum(['content', 'analysis', 'development', 'business', 'security']),
|
|
404
|
+
legacyId: zod_1.z.string().optional(),
|
|
383
405
|
});
|
|
384
406
|
/**
|
|
385
407
|
* Zod schema for skill code array validation.
|
|
386
408
|
*/
|
|
387
|
-
|
|
409
|
+
exports.skillCodeArraySchema = zod_1.z.array(exports.skillCodeSchema);
|
|
388
410
|
/**
|
|
389
411
|
* Zod schema for skill bitmask validation (21 bits max).
|
|
390
412
|
*/
|
|
391
|
-
|
|
413
|
+
exports.skillBitmaskSchema = zod_1.z.number().int().min(0).max(exports.ALL_SKILLS_BITMASK);
|
|
392
414
|
/**
|
|
393
415
|
* Zod schema for skill string validation (comma-separated codes).
|
|
394
416
|
*/
|
|
395
|
-
|
|
417
|
+
exports.skillStringSchema = zod_1.z
|
|
396
418
|
.string()
|
|
397
419
|
.refine((val) => {
|
|
398
420
|
if (!val)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/car/skills.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @fileoverview
|
|
2
|
+
* @fileoverview CAR Certification Tiers and Vorion Runtime Tiers
|
|
3
3
|
*
|
|
4
4
|
* Defines two distinct tier systems with 8 levels (T0-T7):
|
|
5
5
|
*
|
|
6
|
-
* 1. **CertificationTier (T0-T7)**: External attestation status from
|
|
6
|
+
* 1. **CertificationTier (T0-T7)**: External attestation status from CAR spec.
|
|
7
7
|
* Represents the level of external verification and certification an agent
|
|
8
8
|
* has received from certification authorities.
|
|
9
9
|
*
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* These two systems are conceptually different but can be mapped to each other
|
|
15
15
|
* for interoperability.
|
|
16
16
|
*
|
|
17
|
-
* @module @
|
|
17
|
+
* @module @vorionsys/contracts/car/tiers
|
|
18
18
|
*/
|
|
19
19
|
import { z } from 'zod';
|
|
20
20
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tiers.d.ts","sourceRoot":"","sources":["../../src/
|
|
1
|
+
{"version":3,"file":"tiers.d.ts","sourceRoot":"","sources":["../../src/car/tiers.ts"],"names":[],"mappings":"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"}
|