@vorionsys/contracts 0.1.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/dist/aci/aci-string.d.ts +539 -0
- package/dist/aci/aci-string.d.ts.map +1 -0
- package/dist/aci/aci-string.js +563 -0
- package/dist/aci/aci-string.js.map +1 -0
- package/dist/aci/attestation.d.ts +648 -0
- package/dist/aci/attestation.d.ts.map +1 -0
- package/dist/aci/attestation.js +289 -0
- package/dist/aci/attestation.js.map +1 -0
- package/dist/aci/domains.d.ts +260 -0
- package/dist/aci/domains.d.ts.map +1 -0
- package/dist/aci/domains.js +322 -0
- package/dist/aci/domains.js.map +1 -0
- package/dist/aci/effective-permission.d.ts +371 -0
- package/dist/aci/effective-permission.d.ts.map +1 -0
- package/dist/aci/effective-permission.js +351 -0
- package/dist/aci/effective-permission.js.map +1 -0
- package/dist/aci/identity.d.ts +1100 -0
- package/dist/aci/identity.d.ts.map +1 -0
- package/dist/aci/identity.js +328 -0
- package/dist/aci/identity.js.map +1 -0
- package/dist/aci/index.d.ts +67 -0
- package/dist/aci/index.d.ts.map +1 -0
- package/dist/aci/index.js +157 -0
- package/dist/aci/index.js.map +1 -0
- package/dist/aci/jwt-claims.d.ts +756 -0
- package/dist/aci/jwt-claims.d.ts.map +1 -0
- package/dist/aci/jwt-claims.js +335 -0
- package/dist/aci/jwt-claims.js.map +1 -0
- package/dist/aci/levels.d.ts +279 -0
- package/dist/aci/levels.d.ts.map +1 -0
- package/dist/aci/levels.js +467 -0
- package/dist/aci/levels.js.map +1 -0
- package/dist/aci/mapping.d.ts +291 -0
- package/dist/aci/mapping.d.ts.map +1 -0
- package/dist/aci/mapping.js +427 -0
- package/dist/aci/mapping.js.map +1 -0
- package/dist/aci/skills.d.ts +314 -0
- package/dist/aci/skills.d.ts.map +1 -0
- package/dist/aci/skills.js +404 -0
- package/dist/aci/skills.js.map +1 -0
- package/dist/aci/tiers.d.ts +403 -0
- package/dist/aci/tiers.d.ts.map +1 -0
- package/dist/aci/tiers.js +659 -0
- package/dist/aci/tiers.js.map +1 -0
- package/dist/canonical/agent.d.ts +796 -0
- package/dist/canonical/agent.d.ts.map +1 -0
- package/dist/canonical/agent.js +527 -0
- package/dist/canonical/agent.js.map +1 -0
- package/dist/canonical/governance.d.ts +905 -0
- package/dist/canonical/governance.d.ts.map +1 -0
- package/dist/canonical/governance.js +454 -0
- package/dist/canonical/governance.js.map +1 -0
- package/dist/canonical/index.d.ts +17 -0
- package/dist/canonical/index.d.ts.map +1 -0
- package/dist/canonical/index.js +21 -0
- package/dist/canonical/index.js.map +1 -0
- package/dist/canonical/intent.d.ts +727 -0
- package/dist/canonical/intent.d.ts.map +1 -0
- package/dist/canonical/intent.js +203 -0
- package/dist/canonical/intent.js.map +1 -0
- package/dist/canonical/risk-level.d.ts +344 -0
- package/dist/canonical/risk-level.d.ts.map +1 -0
- package/dist/canonical/risk-level.js +472 -0
- package/dist/canonical/risk-level.js.map +1 -0
- package/dist/canonical/trust-band.d.ts +239 -0
- package/dist/canonical/trust-band.d.ts.map +1 -0
- package/dist/canonical/trust-band.js +298 -0
- package/dist/canonical/trust-band.js.map +1 -0
- package/dist/canonical/trust-score.d.ts +301 -0
- package/dist/canonical/trust-score.d.ts.map +1 -0
- package/dist/canonical/trust-score.js +390 -0
- package/dist/canonical/trust-score.js.map +1 -0
- package/dist/canonical/trust-signal.d.ts +617 -0
- package/dist/canonical/trust-signal.d.ts.map +1 -0
- package/dist/canonical/trust-signal.js +355 -0
- package/dist/canonical/trust-signal.js.map +1 -0
- package/dist/canonical/validation.d.ts +231 -0
- package/dist/canonical/validation.d.ts.map +1 -0
- package/dist/canonical/validation.js +558 -0
- package/dist/canonical/validation.js.map +1 -0
- package/dist/common/index.d.ts +7 -0
- package/dist/common/index.d.ts.map +1 -0
- package/dist/common/index.js +7 -0
- package/dist/common/index.js.map +1 -0
- package/dist/common/primitives.d.ts +56 -0
- package/dist/common/primitives.d.ts.map +1 -0
- package/dist/common/primitives.js +70 -0
- package/dist/common/primitives.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -0
- package/dist/v2/canary-probe.d.ts +201 -0
- package/dist/v2/canary-probe.d.ts.map +1 -0
- package/dist/v2/canary-probe.js +99 -0
- package/dist/v2/canary-probe.js.map +1 -0
- package/dist/v2/component.d.ts +132 -0
- package/dist/v2/component.d.ts.map +1 -0
- package/dist/v2/component.js +5 -0
- package/dist/v2/component.js.map +1 -0
- package/dist/v2/decision.d.ts +310 -0
- package/dist/v2/decision.d.ts.map +1 -0
- package/dist/v2/decision.js +21 -0
- package/dist/v2/decision.js.map +1 -0
- package/dist/v2/enums.d.ts +185 -0
- package/dist/v2/enums.d.ts.map +1 -0
- package/dist/v2/enums.js +203 -0
- package/dist/v2/enums.js.map +1 -0
- package/dist/v2/evidence.d.ts +368 -0
- package/dist/v2/evidence.d.ts.map +1 -0
- package/dist/v2/evidence.js +152 -0
- package/dist/v2/evidence.js.map +1 -0
- package/dist/v2/execution.d.ts +190 -0
- package/dist/v2/execution.d.ts.map +1 -0
- package/dist/v2/execution.js +5 -0
- package/dist/v2/execution.js.map +1 -0
- package/dist/v2/index.d.ts +19 -0
- package/dist/v2/index.d.ts.map +1 -0
- package/dist/v2/index.js +32 -0
- package/dist/v2/index.js.map +1 -0
- package/dist/v2/intent.d.ts +89 -0
- package/dist/v2/intent.d.ts.map +1 -0
- package/dist/v2/intent.js +5 -0
- package/dist/v2/intent.js.map +1 -0
- package/dist/v2/policy-bundle.d.ts +166 -0
- package/dist/v2/policy-bundle.d.ts.map +1 -0
- package/dist/v2/policy-bundle.js +20 -0
- package/dist/v2/policy-bundle.js.map +1 -0
- package/dist/v2/pre-action-gate.d.ts +185 -0
- package/dist/v2/pre-action-gate.d.ts.map +1 -0
- package/dist/v2/pre-action-gate.js +64 -0
- package/dist/v2/pre-action-gate.js.map +1 -0
- package/dist/v2/proof-event.d.ts +201 -0
- package/dist/v2/proof-event.d.ts.map +1 -0
- package/dist/v2/proof-event.js +5 -0
- package/dist/v2/proof-event.js.map +1 -0
- package/dist/v2/retention.d.ts +329 -0
- package/dist/v2/retention.d.ts.map +1 -0
- package/dist/v2/retention.js +162 -0
- package/dist/v2/retention.js.map +1 -0
- package/dist/v2/trust-delta.d.ts +119 -0
- package/dist/v2/trust-delta.d.ts.map +1 -0
- package/dist/v2/trust-delta.js +28 -0
- package/dist/v2/trust-delta.js.map +1 -0
- package/dist/v2/trust-profile.d.ts +337 -0
- package/dist/v2/trust-profile.d.ts.map +1 -0
- package/dist/v2/trust-profile.js +96 -0
- package/dist/v2/trust-profile.js.map +1 -0
- package/dist/validators/decision.d.ts +430 -0
- package/dist/validators/decision.d.ts.map +1 -0
- package/dist/validators/decision.js +61 -0
- package/dist/validators/decision.js.map +1 -0
- package/dist/validators/enums.d.ts +24 -0
- package/dist/validators/enums.d.ts.map +1 -0
- package/dist/validators/enums.js +24 -0
- package/dist/validators/enums.js.map +1 -0
- package/dist/validators/index.d.ts +30 -0
- package/dist/validators/index.d.ts.map +1 -0
- package/dist/validators/index.js +42 -0
- package/dist/validators/index.js.map +1 -0
- package/dist/validators/intent.d.ts +229 -0
- package/dist/validators/intent.d.ts.map +1 -0
- package/dist/validators/intent.js +47 -0
- package/dist/validators/intent.js.map +1 -0
- package/dist/validators/proof-event.d.ts +981 -0
- package/dist/validators/proof-event.d.ts.map +1 -0
- package/dist/validators/proof-event.js +134 -0
- package/dist/validators/proof-event.js.map +1 -0
- package/dist/validators/trust-profile.d.ts +350 -0
- package/dist/validators/trust-profile.d.ts.map +1 -0
- package/dist/validators/trust-profile.js +65 -0
- package/dist/validators/trust-profile.js.map +1 -0
- package/package.json +65 -0
|
@@ -0,0 +1,329 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Vorion v2 Retention Schema (ERPL)
|
|
3
|
+
*
|
|
4
|
+
* Defines retention policies and legal holds per ERPL spec.
|
|
5
|
+
* WORM compliance, legal holds, cryptographic sealing.
|
|
6
|
+
*/
|
|
7
|
+
import { z } from 'zod';
|
|
8
|
+
export declare const RetentionPolicySchema: z.ZodObject<{
|
|
9
|
+
id: z.ZodString;
|
|
10
|
+
schemaVersion: z.ZodDefault<z.ZodString>;
|
|
11
|
+
version: z.ZodString;
|
|
12
|
+
name: z.ZodString;
|
|
13
|
+
description: z.ZodOptional<z.ZodString>;
|
|
14
|
+
appliesToClassifications: z.ZodArray<z.ZodEnum<["ROUTINE", "SIGNIFICANT", "COMPLIANCE_RELEVANT", "SECURITY_RELEVANT", "INCIDENT_RELATED", "LEGAL_HOLD"]>, "many">;
|
|
15
|
+
appliesToSources: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
16
|
+
appliesToJurisdictions: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
17
|
+
defaultRetentionDays: z.ZodNumber;
|
|
18
|
+
maxRetentionDays: z.ZodOptional<z.ZodNumber>;
|
|
19
|
+
minRetentionDays: z.ZodOptional<z.ZodNumber>;
|
|
20
|
+
wormEnabled: z.ZodDefault<z.ZodBoolean>;
|
|
21
|
+
immutablePeriodDays: z.ZodOptional<z.ZodNumber>;
|
|
22
|
+
deletionMethod: z.ZodEnum<["SOFT_DELETE", "HARD_DELETE", "CRYPTO_SHRED"]>;
|
|
23
|
+
deletionApprovalRequired: z.ZodDefault<z.ZodBoolean>;
|
|
24
|
+
deletionApproverRoles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
25
|
+
legalHoldOverridesRetention: z.ZodDefault<z.ZodBoolean>;
|
|
26
|
+
status: z.ZodEnum<["DRAFT", "ACTIVE", "DEPRECATED"]>;
|
|
27
|
+
effectiveFrom: z.ZodString;
|
|
28
|
+
effectiveUntil: z.ZodOptional<z.ZodString>;
|
|
29
|
+
createdAt: z.ZodString;
|
|
30
|
+
updatedAt: z.ZodString;
|
|
31
|
+
approvedBy: z.ZodOptional<z.ZodString>;
|
|
32
|
+
approvedAt: z.ZodOptional<z.ZodString>;
|
|
33
|
+
}, "strip", z.ZodTypeAny, {
|
|
34
|
+
name: string;
|
|
35
|
+
id: string;
|
|
36
|
+
status: "DRAFT" | "ACTIVE" | "DEPRECATED";
|
|
37
|
+
schemaVersion: string;
|
|
38
|
+
createdAt: string;
|
|
39
|
+
version: string;
|
|
40
|
+
appliesToClassifications: ("ROUTINE" | "SIGNIFICANT" | "COMPLIANCE_RELEVANT" | "SECURITY_RELEVANT" | "INCIDENT_RELATED" | "LEGAL_HOLD")[];
|
|
41
|
+
defaultRetentionDays: number;
|
|
42
|
+
wormEnabled: boolean;
|
|
43
|
+
deletionMethod: "SOFT_DELETE" | "HARD_DELETE" | "CRYPTO_SHRED";
|
|
44
|
+
deletionApprovalRequired: boolean;
|
|
45
|
+
legalHoldOverridesRetention: boolean;
|
|
46
|
+
effectiveFrom: string;
|
|
47
|
+
updatedAt: string;
|
|
48
|
+
description?: string | undefined;
|
|
49
|
+
appliesToSources?: string[] | undefined;
|
|
50
|
+
appliesToJurisdictions?: string[] | undefined;
|
|
51
|
+
maxRetentionDays?: number | undefined;
|
|
52
|
+
minRetentionDays?: number | undefined;
|
|
53
|
+
immutablePeriodDays?: number | undefined;
|
|
54
|
+
deletionApproverRoles?: string[] | undefined;
|
|
55
|
+
effectiveUntil?: string | undefined;
|
|
56
|
+
approvedBy?: string | undefined;
|
|
57
|
+
approvedAt?: string | undefined;
|
|
58
|
+
}, {
|
|
59
|
+
name: string;
|
|
60
|
+
id: string;
|
|
61
|
+
status: "DRAFT" | "ACTIVE" | "DEPRECATED";
|
|
62
|
+
createdAt: string;
|
|
63
|
+
version: string;
|
|
64
|
+
appliesToClassifications: ("ROUTINE" | "SIGNIFICANT" | "COMPLIANCE_RELEVANT" | "SECURITY_RELEVANT" | "INCIDENT_RELATED" | "LEGAL_HOLD")[];
|
|
65
|
+
defaultRetentionDays: number;
|
|
66
|
+
deletionMethod: "SOFT_DELETE" | "HARD_DELETE" | "CRYPTO_SHRED";
|
|
67
|
+
effectiveFrom: string;
|
|
68
|
+
updatedAt: string;
|
|
69
|
+
schemaVersion?: string | undefined;
|
|
70
|
+
description?: string | undefined;
|
|
71
|
+
appliesToSources?: string[] | undefined;
|
|
72
|
+
appliesToJurisdictions?: string[] | undefined;
|
|
73
|
+
maxRetentionDays?: number | undefined;
|
|
74
|
+
minRetentionDays?: number | undefined;
|
|
75
|
+
wormEnabled?: boolean | undefined;
|
|
76
|
+
immutablePeriodDays?: number | undefined;
|
|
77
|
+
deletionApprovalRequired?: boolean | undefined;
|
|
78
|
+
deletionApproverRoles?: string[] | undefined;
|
|
79
|
+
legalHoldOverridesRetention?: boolean | undefined;
|
|
80
|
+
effectiveUntil?: string | undefined;
|
|
81
|
+
approvedBy?: string | undefined;
|
|
82
|
+
approvedAt?: string | undefined;
|
|
83
|
+
}>;
|
|
84
|
+
export declare const LegalHoldSchema: z.ZodObject<{
|
|
85
|
+
id: z.ZodString;
|
|
86
|
+
schemaVersion: z.ZodDefault<z.ZodString>;
|
|
87
|
+
name: z.ZodString;
|
|
88
|
+
description: z.ZodOptional<z.ZodString>;
|
|
89
|
+
matterReference: z.ZodOptional<z.ZodString>;
|
|
90
|
+
scope: z.ZodObject<{
|
|
91
|
+
correlationIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
92
|
+
evidencePackIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
93
|
+
actorIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
94
|
+
dateRangeStart: z.ZodOptional<z.ZodString>;
|
|
95
|
+
dateRangeEnd: z.ZodOptional<z.ZodString>;
|
|
96
|
+
classifications: z.ZodOptional<z.ZodArray<z.ZodEnum<["ROUTINE", "SIGNIFICANT", "COMPLIANCE_RELEVANT", "SECURITY_RELEVANT", "INCIDENT_RELATED", "LEGAL_HOLD"]>, "many">>;
|
|
97
|
+
customQuery: z.ZodOptional<z.ZodString>;
|
|
98
|
+
}, "strip", z.ZodTypeAny, {
|
|
99
|
+
classifications?: ("ROUTINE" | "SIGNIFICANT" | "COMPLIANCE_RELEVANT" | "SECURITY_RELEVANT" | "INCIDENT_RELATED" | "LEGAL_HOLD")[] | undefined;
|
|
100
|
+
correlationIds?: string[] | undefined;
|
|
101
|
+
evidencePackIds?: string[] | undefined;
|
|
102
|
+
actorIds?: string[] | undefined;
|
|
103
|
+
dateRangeStart?: string | undefined;
|
|
104
|
+
dateRangeEnd?: string | undefined;
|
|
105
|
+
customQuery?: string | undefined;
|
|
106
|
+
}, {
|
|
107
|
+
classifications?: ("ROUTINE" | "SIGNIFICANT" | "COMPLIANCE_RELEVANT" | "SECURITY_RELEVANT" | "INCIDENT_RELATED" | "LEGAL_HOLD")[] | undefined;
|
|
108
|
+
correlationIds?: string[] | undefined;
|
|
109
|
+
evidencePackIds?: string[] | undefined;
|
|
110
|
+
actorIds?: string[] | undefined;
|
|
111
|
+
dateRangeStart?: string | undefined;
|
|
112
|
+
dateRangeEnd?: string | undefined;
|
|
113
|
+
customQuery?: string | undefined;
|
|
114
|
+
}>;
|
|
115
|
+
preserveAllVersions: z.ZodDefault<z.ZodBoolean>;
|
|
116
|
+
preventModification: z.ZodDefault<z.ZodBoolean>;
|
|
117
|
+
preventDeletion: z.ZodDefault<z.ZodBoolean>;
|
|
118
|
+
notifyCustodians: z.ZodDefault<z.ZodBoolean>;
|
|
119
|
+
custodianEmails: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
120
|
+
status: z.ZodEnum<["PENDING", "ACTIVE", "RELEASED", "EXPIRED"]>;
|
|
121
|
+
createdAt: z.ZodString;
|
|
122
|
+
createdBy: z.ZodString;
|
|
123
|
+
activatedAt: z.ZodOptional<z.ZodString>;
|
|
124
|
+
releasedAt: z.ZodOptional<z.ZodString>;
|
|
125
|
+
releasedBy: z.ZodOptional<z.ZodString>;
|
|
126
|
+
releaseReason: z.ZodOptional<z.ZodString>;
|
|
127
|
+
expiresAt: z.ZodOptional<z.ZodString>;
|
|
128
|
+
holdHash: z.ZodOptional<z.ZodString>;
|
|
129
|
+
}, "strip", z.ZodTypeAny, {
|
|
130
|
+
name: string;
|
|
131
|
+
id: string;
|
|
132
|
+
status: "EXPIRED" | "PENDING" | "ACTIVE" | "RELEASED";
|
|
133
|
+
schemaVersion: string;
|
|
134
|
+
createdAt: string;
|
|
135
|
+
scope: {
|
|
136
|
+
classifications?: ("ROUTINE" | "SIGNIFICANT" | "COMPLIANCE_RELEVANT" | "SECURITY_RELEVANT" | "INCIDENT_RELATED" | "LEGAL_HOLD")[] | undefined;
|
|
137
|
+
correlationIds?: string[] | undefined;
|
|
138
|
+
evidencePackIds?: string[] | undefined;
|
|
139
|
+
actorIds?: string[] | undefined;
|
|
140
|
+
dateRangeStart?: string | undefined;
|
|
141
|
+
dateRangeEnd?: string | undefined;
|
|
142
|
+
customQuery?: string | undefined;
|
|
143
|
+
};
|
|
144
|
+
preserveAllVersions: boolean;
|
|
145
|
+
preventModification: boolean;
|
|
146
|
+
preventDeletion: boolean;
|
|
147
|
+
notifyCustodians: boolean;
|
|
148
|
+
createdBy: string;
|
|
149
|
+
expiresAt?: string | undefined;
|
|
150
|
+
description?: string | undefined;
|
|
151
|
+
matterReference?: string | undefined;
|
|
152
|
+
custodianEmails?: string[] | undefined;
|
|
153
|
+
activatedAt?: string | undefined;
|
|
154
|
+
releasedAt?: string | undefined;
|
|
155
|
+
releasedBy?: string | undefined;
|
|
156
|
+
releaseReason?: string | undefined;
|
|
157
|
+
holdHash?: string | undefined;
|
|
158
|
+
}, {
|
|
159
|
+
name: string;
|
|
160
|
+
id: string;
|
|
161
|
+
status: "EXPIRED" | "PENDING" | "ACTIVE" | "RELEASED";
|
|
162
|
+
createdAt: string;
|
|
163
|
+
scope: {
|
|
164
|
+
classifications?: ("ROUTINE" | "SIGNIFICANT" | "COMPLIANCE_RELEVANT" | "SECURITY_RELEVANT" | "INCIDENT_RELATED" | "LEGAL_HOLD")[] | undefined;
|
|
165
|
+
correlationIds?: string[] | undefined;
|
|
166
|
+
evidencePackIds?: string[] | undefined;
|
|
167
|
+
actorIds?: string[] | undefined;
|
|
168
|
+
dateRangeStart?: string | undefined;
|
|
169
|
+
dateRangeEnd?: string | undefined;
|
|
170
|
+
customQuery?: string | undefined;
|
|
171
|
+
};
|
|
172
|
+
createdBy: string;
|
|
173
|
+
schemaVersion?: string | undefined;
|
|
174
|
+
expiresAt?: string | undefined;
|
|
175
|
+
description?: string | undefined;
|
|
176
|
+
matterReference?: string | undefined;
|
|
177
|
+
preserveAllVersions?: boolean | undefined;
|
|
178
|
+
preventModification?: boolean | undefined;
|
|
179
|
+
preventDeletion?: boolean | undefined;
|
|
180
|
+
notifyCustodians?: boolean | undefined;
|
|
181
|
+
custodianEmails?: string[] | undefined;
|
|
182
|
+
activatedAt?: string | undefined;
|
|
183
|
+
releasedAt?: string | undefined;
|
|
184
|
+
releasedBy?: string | undefined;
|
|
185
|
+
releaseReason?: string | undefined;
|
|
186
|
+
holdHash?: string | undefined;
|
|
187
|
+
}>;
|
|
188
|
+
export declare const SealEventSchema: z.ZodObject<{
|
|
189
|
+
id: z.ZodString;
|
|
190
|
+
schemaVersion: z.ZodDefault<z.ZodString>;
|
|
191
|
+
sealType: z.ZodEnum<["EVIDENCE_SEAL", "PACK_SEAL", "PERIOD_SEAL", "COMPLIANCE_SEAL", "AUDIT_SEAL", "INCIDENT_SEAL"]>;
|
|
192
|
+
sealedEntityType: z.ZodString;
|
|
193
|
+
sealedEntityIds: z.ZodArray<z.ZodString, "many">;
|
|
194
|
+
evidencePackId: z.ZodOptional<z.ZodString>;
|
|
195
|
+
sealedContentHash: z.ZodString;
|
|
196
|
+
merkleRoot: z.ZodOptional<z.ZodString>;
|
|
197
|
+
itemCount: z.ZodNumber;
|
|
198
|
+
periodStart: z.ZodOptional<z.ZodString>;
|
|
199
|
+
periodEnd: z.ZodOptional<z.ZodString>;
|
|
200
|
+
algorithm: z.ZodEnum<["SHA256", "SHA384", "SHA512", "BLAKE3"]>;
|
|
201
|
+
signature: z.ZodString;
|
|
202
|
+
publicKeyId: z.ZodString;
|
|
203
|
+
timestampAuthority: z.ZodOptional<z.ZodString>;
|
|
204
|
+
timestampToken: z.ZodOptional<z.ZodString>;
|
|
205
|
+
previousSealId: z.ZodOptional<z.ZodString>;
|
|
206
|
+
previousSealHash: z.ZodOptional<z.ZodString>;
|
|
207
|
+
chainPosition: z.ZodOptional<z.ZodNumber>;
|
|
208
|
+
verificationUrl: z.ZodOptional<z.ZodString>;
|
|
209
|
+
verificationInstructions: z.ZodOptional<z.ZodString>;
|
|
210
|
+
sealedAt: z.ZodString;
|
|
211
|
+
sealedBy: z.ZodString;
|
|
212
|
+
sealHash: z.ZodString;
|
|
213
|
+
}, "strip", z.ZodTypeAny, {
|
|
214
|
+
id: string;
|
|
215
|
+
schemaVersion: string;
|
|
216
|
+
signature: string;
|
|
217
|
+
itemCount: number;
|
|
218
|
+
algorithm: "SHA256" | "SHA384" | "SHA512" | "BLAKE3";
|
|
219
|
+
sealType: "EVIDENCE_SEAL" | "PACK_SEAL" | "PERIOD_SEAL" | "COMPLIANCE_SEAL" | "AUDIT_SEAL" | "INCIDENT_SEAL";
|
|
220
|
+
sealedEntityType: string;
|
|
221
|
+
sealedEntityIds: string[];
|
|
222
|
+
sealedContentHash: string;
|
|
223
|
+
publicKeyId: string;
|
|
224
|
+
sealedAt: string;
|
|
225
|
+
sealedBy: string;
|
|
226
|
+
sealHash: string;
|
|
227
|
+
merkleRoot?: string | undefined;
|
|
228
|
+
evidencePackId?: string | undefined;
|
|
229
|
+
chainPosition?: number | undefined;
|
|
230
|
+
periodStart?: string | undefined;
|
|
231
|
+
periodEnd?: string | undefined;
|
|
232
|
+
timestampAuthority?: string | undefined;
|
|
233
|
+
timestampToken?: string | undefined;
|
|
234
|
+
previousSealId?: string | undefined;
|
|
235
|
+
previousSealHash?: string | undefined;
|
|
236
|
+
verificationUrl?: string | undefined;
|
|
237
|
+
verificationInstructions?: string | undefined;
|
|
238
|
+
}, {
|
|
239
|
+
id: string;
|
|
240
|
+
signature: string;
|
|
241
|
+
itemCount: number;
|
|
242
|
+
algorithm: "SHA256" | "SHA384" | "SHA512" | "BLAKE3";
|
|
243
|
+
sealType: "EVIDENCE_SEAL" | "PACK_SEAL" | "PERIOD_SEAL" | "COMPLIANCE_SEAL" | "AUDIT_SEAL" | "INCIDENT_SEAL";
|
|
244
|
+
sealedEntityType: string;
|
|
245
|
+
sealedEntityIds: string[];
|
|
246
|
+
sealedContentHash: string;
|
|
247
|
+
publicKeyId: string;
|
|
248
|
+
sealedAt: string;
|
|
249
|
+
sealedBy: string;
|
|
250
|
+
sealHash: string;
|
|
251
|
+
schemaVersion?: string | undefined;
|
|
252
|
+
merkleRoot?: string | undefined;
|
|
253
|
+
evidencePackId?: string | undefined;
|
|
254
|
+
chainPosition?: number | undefined;
|
|
255
|
+
periodStart?: string | undefined;
|
|
256
|
+
periodEnd?: string | undefined;
|
|
257
|
+
timestampAuthority?: string | undefined;
|
|
258
|
+
timestampToken?: string | undefined;
|
|
259
|
+
previousSealId?: string | undefined;
|
|
260
|
+
previousSealHash?: string | undefined;
|
|
261
|
+
verificationUrl?: string | undefined;
|
|
262
|
+
verificationInstructions?: string | undefined;
|
|
263
|
+
}>;
|
|
264
|
+
export declare const RetentionScheduleSchema: z.ZodObject<{
|
|
265
|
+
id: z.ZodString;
|
|
266
|
+
schemaVersion: z.ZodDefault<z.ZodString>;
|
|
267
|
+
evidencePackId: z.ZodString;
|
|
268
|
+
retentionPolicyId: z.ZodString;
|
|
269
|
+
legalHoldIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
270
|
+
retainUntil: z.ZodString;
|
|
271
|
+
originalRetainUntil: z.ZodString;
|
|
272
|
+
extensionReason: z.ZodOptional<z.ZodString>;
|
|
273
|
+
extendedBy: z.ZodOptional<z.ZodString>;
|
|
274
|
+
extendedAt: z.ZodOptional<z.ZodString>;
|
|
275
|
+
status: z.ZodEnum<["ACTIVE", "EXTENDED", "UNDER_HOLD", "PENDING_DELETION", "DELETED"]>;
|
|
276
|
+
underLegalHold: z.ZodDefault<z.ZodBoolean>;
|
|
277
|
+
markedForDeletionAt: z.ZodOptional<z.ZodString>;
|
|
278
|
+
deletionApprovedBy: z.ZodOptional<z.ZodString>;
|
|
279
|
+
deletionApprovedAt: z.ZodOptional<z.ZodString>;
|
|
280
|
+
deletedAt: z.ZodOptional<z.ZodString>;
|
|
281
|
+
deletionCertificate: z.ZodOptional<z.ZodString>;
|
|
282
|
+
createdAt: z.ZodString;
|
|
283
|
+
updatedAt: z.ZodString;
|
|
284
|
+
}, "strip", z.ZodTypeAny, {
|
|
285
|
+
id: string;
|
|
286
|
+
status: "EXTENDED" | "ACTIVE" | "UNDER_HOLD" | "PENDING_DELETION" | "DELETED";
|
|
287
|
+
schemaVersion: string;
|
|
288
|
+
createdAt: string;
|
|
289
|
+
evidencePackId: string;
|
|
290
|
+
updatedAt: string;
|
|
291
|
+
retentionPolicyId: string;
|
|
292
|
+
retainUntil: string;
|
|
293
|
+
originalRetainUntil: string;
|
|
294
|
+
underLegalHold: boolean;
|
|
295
|
+
legalHoldIds?: string[] | undefined;
|
|
296
|
+
extensionReason?: string | undefined;
|
|
297
|
+
extendedBy?: string | undefined;
|
|
298
|
+
extendedAt?: string | undefined;
|
|
299
|
+
markedForDeletionAt?: string | undefined;
|
|
300
|
+
deletionApprovedBy?: string | undefined;
|
|
301
|
+
deletionApprovedAt?: string | undefined;
|
|
302
|
+
deletedAt?: string | undefined;
|
|
303
|
+
deletionCertificate?: string | undefined;
|
|
304
|
+
}, {
|
|
305
|
+
id: string;
|
|
306
|
+
status: "EXTENDED" | "ACTIVE" | "UNDER_HOLD" | "PENDING_DELETION" | "DELETED";
|
|
307
|
+
createdAt: string;
|
|
308
|
+
evidencePackId: string;
|
|
309
|
+
updatedAt: string;
|
|
310
|
+
retentionPolicyId: string;
|
|
311
|
+
retainUntil: string;
|
|
312
|
+
originalRetainUntil: string;
|
|
313
|
+
schemaVersion?: string | undefined;
|
|
314
|
+
legalHoldIds?: string[] | undefined;
|
|
315
|
+
extensionReason?: string | undefined;
|
|
316
|
+
extendedBy?: string | undefined;
|
|
317
|
+
extendedAt?: string | undefined;
|
|
318
|
+
underLegalHold?: boolean | undefined;
|
|
319
|
+
markedForDeletionAt?: string | undefined;
|
|
320
|
+
deletionApprovedBy?: string | undefined;
|
|
321
|
+
deletionApprovedAt?: string | undefined;
|
|
322
|
+
deletedAt?: string | undefined;
|
|
323
|
+
deletionCertificate?: string | undefined;
|
|
324
|
+
}>;
|
|
325
|
+
export type RetentionPolicy = z.infer<typeof RetentionPolicySchema>;
|
|
326
|
+
export type LegalHold = z.infer<typeof LegalHoldSchema>;
|
|
327
|
+
export type SealEvent = z.infer<typeof SealEventSchema>;
|
|
328
|
+
export type RetentionSchedule = z.infer<typeof RetentionScheduleSchema>;
|
|
329
|
+
//# sourceMappingURL=retention.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retention.d.ts","sourceRoot":"","sources":["../../src/v2/retention.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwChC,CAAC;AAMH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0C1B,CAAC;AAMH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiD1B,CAAC;AAMH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+BlC,CAAC;AAMH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Vorion v2 Retention Schema (ERPL)
|
|
3
|
+
*
|
|
4
|
+
* Defines retention policies and legal holds per ERPL spec.
|
|
5
|
+
* WORM compliance, legal holds, cryptographic sealing.
|
|
6
|
+
*/
|
|
7
|
+
import { z } from 'zod';
|
|
8
|
+
import { UUIDSchema, TimestampSchema, SemVerSchema, HashSchema, } from '../common/primitives.js';
|
|
9
|
+
import { EvidenceClassificationSchema } from './evidence.js';
|
|
10
|
+
// ============================================================================
|
|
11
|
+
// RETENTION POLICY
|
|
12
|
+
// ============================================================================
|
|
13
|
+
export const RetentionPolicySchema = z.object({
|
|
14
|
+
// Identity
|
|
15
|
+
id: UUIDSchema,
|
|
16
|
+
schemaVersion: SemVerSchema.default('2.0.0'),
|
|
17
|
+
version: SemVerSchema,
|
|
18
|
+
// Metadata
|
|
19
|
+
name: z.string().min(1),
|
|
20
|
+
description: z.string().optional(),
|
|
21
|
+
// Applicability
|
|
22
|
+
appliesToClassifications: z.array(EvidenceClassificationSchema),
|
|
23
|
+
appliesToSources: z.array(z.string()).optional(),
|
|
24
|
+
appliesToJurisdictions: z.array(z.string()).optional(),
|
|
25
|
+
// Retention Rules
|
|
26
|
+
defaultRetentionDays: z.number().int().positive(),
|
|
27
|
+
maxRetentionDays: z.number().int().positive().optional(),
|
|
28
|
+
minRetentionDays: z.number().int().positive().optional(),
|
|
29
|
+
// WORM Configuration
|
|
30
|
+
wormEnabled: z.boolean().default(true),
|
|
31
|
+
immutablePeriodDays: z.number().int().nonnegative().optional(),
|
|
32
|
+
// Deletion Rules
|
|
33
|
+
deletionMethod: z.enum(['SOFT_DELETE', 'HARD_DELETE', 'CRYPTO_SHRED']),
|
|
34
|
+
deletionApprovalRequired: z.boolean().default(true),
|
|
35
|
+
deletionApproverRoles: z.array(z.string()).optional(),
|
|
36
|
+
// Legal Hold Override
|
|
37
|
+
legalHoldOverridesRetention: z.boolean().default(true),
|
|
38
|
+
// Lifecycle
|
|
39
|
+
status: z.enum(['DRAFT', 'ACTIVE', 'DEPRECATED']),
|
|
40
|
+
effectiveFrom: TimestampSchema,
|
|
41
|
+
effectiveUntil: TimestampSchema.optional(),
|
|
42
|
+
createdAt: TimestampSchema,
|
|
43
|
+
updatedAt: TimestampSchema,
|
|
44
|
+
approvedBy: z.string().optional(),
|
|
45
|
+
approvedAt: TimestampSchema.optional(),
|
|
46
|
+
});
|
|
47
|
+
// ============================================================================
|
|
48
|
+
// LEGAL HOLD
|
|
49
|
+
// ============================================================================
|
|
50
|
+
export const LegalHoldSchema = z.object({
|
|
51
|
+
// Identity
|
|
52
|
+
id: UUIDSchema,
|
|
53
|
+
schemaVersion: SemVerSchema.default('2.0.0'),
|
|
54
|
+
// Metadata
|
|
55
|
+
name: z.string().min(1),
|
|
56
|
+
description: z.string().optional(),
|
|
57
|
+
matterReference: z.string().optional(), // Legal case reference
|
|
58
|
+
// Scope
|
|
59
|
+
scope: z.object({
|
|
60
|
+
correlationIds: z.array(z.string()).optional(),
|
|
61
|
+
evidencePackIds: z.array(UUIDSchema).optional(),
|
|
62
|
+
actorIds: z.array(z.string()).optional(),
|
|
63
|
+
dateRangeStart: TimestampSchema.optional(),
|
|
64
|
+
dateRangeEnd: TimestampSchema.optional(),
|
|
65
|
+
classifications: z.array(EvidenceClassificationSchema).optional(),
|
|
66
|
+
customQuery: z.string().optional(),
|
|
67
|
+
}),
|
|
68
|
+
// Hold Configuration
|
|
69
|
+
preserveAllVersions: z.boolean().default(true),
|
|
70
|
+
preventModification: z.boolean().default(true),
|
|
71
|
+
preventDeletion: z.boolean().default(true),
|
|
72
|
+
// Notification
|
|
73
|
+
notifyCustodians: z.boolean().default(true),
|
|
74
|
+
custodianEmails: z.array(z.string().email()).optional(),
|
|
75
|
+
// Lifecycle
|
|
76
|
+
status: z.enum(['PENDING', 'ACTIVE', 'RELEASED', 'EXPIRED']),
|
|
77
|
+
createdAt: TimestampSchema,
|
|
78
|
+
createdBy: z.string().min(1),
|
|
79
|
+
activatedAt: TimestampSchema.optional(),
|
|
80
|
+
releasedAt: TimestampSchema.optional(),
|
|
81
|
+
releasedBy: z.string().optional(),
|
|
82
|
+
releaseReason: z.string().optional(),
|
|
83
|
+
expiresAt: TimestampSchema.optional(),
|
|
84
|
+
// Audit
|
|
85
|
+
holdHash: HashSchema.optional(),
|
|
86
|
+
});
|
|
87
|
+
// ============================================================================
|
|
88
|
+
// SEAL EVENT (Cryptographic sealing)
|
|
89
|
+
// ============================================================================
|
|
90
|
+
export const SealEventSchema = z.object({
|
|
91
|
+
// Identity
|
|
92
|
+
id: UUIDSchema,
|
|
93
|
+
schemaVersion: SemVerSchema.default('2.0.0'),
|
|
94
|
+
// Seal Type
|
|
95
|
+
sealType: z.enum([
|
|
96
|
+
'EVIDENCE_SEAL',
|
|
97
|
+
'PACK_SEAL',
|
|
98
|
+
'PERIOD_SEAL',
|
|
99
|
+
'COMPLIANCE_SEAL',
|
|
100
|
+
'AUDIT_SEAL',
|
|
101
|
+
'INCIDENT_SEAL',
|
|
102
|
+
]),
|
|
103
|
+
// References
|
|
104
|
+
sealedEntityType: z.string().min(1),
|
|
105
|
+
sealedEntityIds: z.array(UUIDSchema),
|
|
106
|
+
evidencePackId: UUIDSchema.optional(),
|
|
107
|
+
// Seal Content
|
|
108
|
+
sealedContentHash: HashSchema,
|
|
109
|
+
merkleRoot: HashSchema.optional(),
|
|
110
|
+
itemCount: z.number().int().nonnegative(),
|
|
111
|
+
periodStart: TimestampSchema.optional(),
|
|
112
|
+
periodEnd: TimestampSchema.optional(),
|
|
113
|
+
// Cryptographic Proof
|
|
114
|
+
algorithm: z.enum(['SHA256', 'SHA384', 'SHA512', 'BLAKE3']),
|
|
115
|
+
signature: z.string(),
|
|
116
|
+
publicKeyId: z.string(),
|
|
117
|
+
timestampAuthority: z.string().optional(),
|
|
118
|
+
timestampToken: z.string().optional(),
|
|
119
|
+
// Chain
|
|
120
|
+
previousSealId: UUIDSchema.optional(),
|
|
121
|
+
previousSealHash: HashSchema.optional(),
|
|
122
|
+
chainPosition: z.number().int().nonnegative().optional(),
|
|
123
|
+
// Verification
|
|
124
|
+
verificationUrl: z.string().url().optional(),
|
|
125
|
+
verificationInstructions: z.string().optional(),
|
|
126
|
+
// Timing
|
|
127
|
+
sealedAt: TimestampSchema,
|
|
128
|
+
sealedBy: z.string().min(1),
|
|
129
|
+
// Integrity
|
|
130
|
+
sealHash: HashSchema,
|
|
131
|
+
});
|
|
132
|
+
// ============================================================================
|
|
133
|
+
// RETENTION SCHEDULE (Applied retention)
|
|
134
|
+
// ============================================================================
|
|
135
|
+
export const RetentionScheduleSchema = z.object({
|
|
136
|
+
// Identity
|
|
137
|
+
id: UUIDSchema,
|
|
138
|
+
schemaVersion: SemVerSchema.default('2.0.0'),
|
|
139
|
+
// Reference
|
|
140
|
+
evidencePackId: UUIDSchema,
|
|
141
|
+
retentionPolicyId: UUIDSchema,
|
|
142
|
+
legalHoldIds: z.array(UUIDSchema).optional(),
|
|
143
|
+
// Schedule
|
|
144
|
+
retainUntil: TimestampSchema,
|
|
145
|
+
originalRetainUntil: TimestampSchema,
|
|
146
|
+
extensionReason: z.string().optional(),
|
|
147
|
+
extendedBy: z.string().optional(),
|
|
148
|
+
extendedAt: TimestampSchema.optional(),
|
|
149
|
+
// Status
|
|
150
|
+
status: z.enum(['ACTIVE', 'EXTENDED', 'UNDER_HOLD', 'PENDING_DELETION', 'DELETED']),
|
|
151
|
+
underLegalHold: z.boolean().default(false),
|
|
152
|
+
// Deletion Tracking
|
|
153
|
+
markedForDeletionAt: TimestampSchema.optional(),
|
|
154
|
+
deletionApprovedBy: z.string().optional(),
|
|
155
|
+
deletionApprovedAt: TimestampSchema.optional(),
|
|
156
|
+
deletedAt: TimestampSchema.optional(),
|
|
157
|
+
deletionCertificate: HashSchema.optional(),
|
|
158
|
+
// Timing
|
|
159
|
+
createdAt: TimestampSchema,
|
|
160
|
+
updatedAt: TimestampSchema,
|
|
161
|
+
});
|
|
162
|
+
//# sourceMappingURL=retention.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retention.js","sourceRoot":"","sources":["../../src/v2/retention.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,UAAU,EACV,eAAe,EACf,YAAY,EACZ,UAAU,GACX,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,4BAA4B,EAAE,MAAM,eAAe,CAAC;AAE7D,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,WAAW;IACX,EAAE,EAAE,UAAU;IACd,aAAa,EAAE,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC;IAC5C,OAAO,EAAE,YAAY;IAErB,WAAW;IACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAElC,gBAAgB;IAChB,wBAAwB,EAAE,CAAC,CAAC,KAAK,CAAC,4BAA4B,CAAC;IAC/D,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAChD,sBAAsB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAEtD,kBAAkB;IAClB,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACjD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACxD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAExD,qBAAqB;IACrB,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACtC,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IAE9D,iBAAiB;IACjB,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;IACtE,wBAAwB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACnD,qBAAqB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAErD,sBAAsB;IACtB,2BAA2B,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAEtD,YAAY;IACZ,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IACjD,aAAa,EAAE,eAAe;IAC9B,cAAc,EAAE,eAAe,CAAC,QAAQ,EAAE;IAC1C,SAAS,EAAE,eAAe;IAC1B,SAAS,EAAE,eAAe;IAC1B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,UAAU,EAAE,eAAe,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAEH,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAE/E,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,WAAW;IACX,EAAE,EAAE,UAAU;IACd,aAAa,EAAE,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC;IAE5C,WAAW;IACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,uBAAuB;IAE/D,QAAQ;IACR,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;QAC9C,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE;QAC/C,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;QACxC,cAAc,EAAE,eAAe,CAAC,QAAQ,EAAE;QAC1C,YAAY,EAAE,eAAe,CAAC,QAAQ,EAAE;QACxC,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC,QAAQ,EAAE;QACjE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KACnC,CAAC;IAEF,qBAAqB;IACrB,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC9C,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC9C,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAE1C,eAAe;IACf,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC3C,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,EAAE;IAEvD,YAAY;IACZ,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IAC5D,SAAS,EAAE,eAAe;IAC1B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,WAAW,EAAE,eAAe,CAAC,QAAQ,EAAE;IACvC,UAAU,EAAE,eAAe,CAAC,QAAQ,EAAE;IACtC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,SAAS,EAAE,eAAe,CAAC,QAAQ,EAAE;IAErC,QAAQ;IACR,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE;CAChC,CAAC,CAAC;AAEH,+EAA+E;AAC/E,qCAAqC;AACrC,+EAA+E;AAE/E,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,WAAW;IACX,EAAE,EAAE,UAAU;IACd,aAAa,EAAE,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC;IAE5C,YAAY;IACZ,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC;QACf,eAAe;QACf,WAAW;QACX,aAAa;QACb,iBAAiB;QACjB,YAAY;QACZ,eAAe;KAChB,CAAC;IAEF,aAAa;IACb,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACnC,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;IACpC,cAAc,EAAE,UAAU,CAAC,QAAQ,EAAE;IAErC,eAAe;IACf,iBAAiB,EAAE,UAAU;IAC7B,UAAU,EAAE,UAAU,CAAC,QAAQ,EAAE;IACjC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACzC,WAAW,EAAE,eAAe,CAAC,QAAQ,EAAE;IACvC,SAAS,EAAE,eAAe,CAAC,QAAQ,EAAE;IAErC,sBAAsB;IACtB,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC3D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzC,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAErC,QAAQ;IACR,cAAc,EAAE,UAAU,CAAC,QAAQ,EAAE;IACrC,gBAAgB,EAAE,UAAU,CAAC,QAAQ,EAAE;IACvC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IAExD,eAAe;IACf,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC5C,wBAAwB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE/C,SAAS;IACT,QAAQ,EAAE,eAAe;IACzB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAE3B,YAAY;IACZ,QAAQ,EAAE,UAAU;CACrB,CAAC,CAAC;AAEH,+EAA+E;AAC/E,yCAAyC;AACzC,+EAA+E;AAE/E,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,WAAW;IACX,EAAE,EAAE,UAAU;IACd,aAAa,EAAE,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC;IAE5C,YAAY;IACZ,cAAc,EAAE,UAAU;IAC1B,iBAAiB,EAAE,UAAU;IAC7B,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE;IAE5C,WAAW;IACX,WAAW,EAAE,eAAe;IAC5B,mBAAmB,EAAE,eAAe;IACpC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,UAAU,EAAE,eAAe,CAAC,QAAQ,EAAE;IAEtC,SAAS;IACT,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,kBAAkB,EAAE,SAAS,CAAC,CAAC;IACnF,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAE1C,oBAAoB;IACpB,mBAAmB,EAAE,eAAe,CAAC,QAAQ,EAAE;IAC/C,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzC,kBAAkB,EAAE,eAAe,CAAC,QAAQ,EAAE;IAC9C,SAAS,EAAE,eAAe,CAAC,QAAQ,EAAE;IACrC,mBAAmB,EAAE,UAAU,CAAC,QAAQ,EAAE;IAE1C,SAAS;IACT,SAAS,EAAE,eAAe;IAC1B,SAAS,EAAE,eAAe;CAC3B,CAAC,CAAC"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Trust Delta types - represents changes to trust state
|
|
3
|
+
*/
|
|
4
|
+
import type { TrustBand } from './enums.js';
|
|
5
|
+
import type { TrustDimensions, TrustEvidence } from './trust-profile.js';
|
|
6
|
+
/**
|
|
7
|
+
* Reason for trust change
|
|
8
|
+
*/
|
|
9
|
+
export declare enum TrustDeltaReason {
|
|
10
|
+
/** Positive evidence from successful execution */
|
|
11
|
+
POSITIVE_EVIDENCE = "positive_evidence",
|
|
12
|
+
/** Negative evidence from failed execution */
|
|
13
|
+
NEGATIVE_EVIDENCE = "negative_evidence",
|
|
14
|
+
/** Manual adjustment by administrator */
|
|
15
|
+
MANUAL_ADJUSTMENT = "manual_adjustment",
|
|
16
|
+
/** Time-based decay */
|
|
17
|
+
TIME_DECAY = "time_decay",
|
|
18
|
+
/** Band promotion after stability period */
|
|
19
|
+
BAND_PROMOTION = "band_promotion",
|
|
20
|
+
/** Band demotion due to incidents */
|
|
21
|
+
BAND_DEMOTION = "band_demotion",
|
|
22
|
+
/** Recalculation with new evidence */
|
|
23
|
+
RECALCULATION = "recalculation",
|
|
24
|
+
/** Observation tier change affecting ceiling */
|
|
25
|
+
OBSERVATION_TIER_CHANGE = "observation_tier_change",
|
|
26
|
+
/** Policy change affecting calculation */
|
|
27
|
+
POLICY_CHANGE = "policy_change"
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Trust delta - a change in an agent's trust profile
|
|
31
|
+
*/
|
|
32
|
+
export interface TrustDelta {
|
|
33
|
+
/** Unique delta identifier */
|
|
34
|
+
deltaId: string;
|
|
35
|
+
/** Agent whose trust changed */
|
|
36
|
+
agentId: string;
|
|
37
|
+
/** Profile ID before the change */
|
|
38
|
+
previousProfileId: string;
|
|
39
|
+
/** Profile ID after the change */
|
|
40
|
+
newProfileId: string;
|
|
41
|
+
/** Correlation ID if this resulted from an action */
|
|
42
|
+
correlationId?: string;
|
|
43
|
+
/** Why did trust change? */
|
|
44
|
+
reason: TrustDeltaReason;
|
|
45
|
+
/** Previous scores */
|
|
46
|
+
previousDimensions: TrustDimensions;
|
|
47
|
+
/** New scores */
|
|
48
|
+
newDimensions: TrustDimensions;
|
|
49
|
+
/** Previous composite score */
|
|
50
|
+
previousCompositeScore: number;
|
|
51
|
+
/** New composite score */
|
|
52
|
+
newCompositeScore: number;
|
|
53
|
+
/** Previous adjusted score */
|
|
54
|
+
previousAdjustedScore: number;
|
|
55
|
+
/** New adjusted score */
|
|
56
|
+
newAdjustedScore: number;
|
|
57
|
+
/** Previous trust band */
|
|
58
|
+
previousBand: TrustBand;
|
|
59
|
+
/** New trust band */
|
|
60
|
+
newBand: TrustBand;
|
|
61
|
+
/** Did the band change? */
|
|
62
|
+
bandChanged: boolean;
|
|
63
|
+
/** Evidence that caused this delta */
|
|
64
|
+
triggeringEvidence?: TrustEvidence;
|
|
65
|
+
/** Human-readable explanation */
|
|
66
|
+
explanation: string;
|
|
67
|
+
/** When the change occurred */
|
|
68
|
+
occurredAt: Date;
|
|
69
|
+
/** Who/what initiated the change */
|
|
70
|
+
initiatedBy: string;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Summary of trust delta for listings
|
|
74
|
+
*/
|
|
75
|
+
export interface TrustDeltaSummary {
|
|
76
|
+
deltaId: string;
|
|
77
|
+
agentId: string;
|
|
78
|
+
reason: TrustDeltaReason;
|
|
79
|
+
previousAdjustedScore: number;
|
|
80
|
+
newAdjustedScore: number;
|
|
81
|
+
scoreChange: number;
|
|
82
|
+
bandChanged: boolean;
|
|
83
|
+
previousBand: TrustBand;
|
|
84
|
+
newBand: TrustBand;
|
|
85
|
+
occurredAt: Date;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Request to apply a manual trust adjustment
|
|
89
|
+
*/
|
|
90
|
+
export interface ManualTrustAdjustmentRequest {
|
|
91
|
+
agentId: string;
|
|
92
|
+
dimension: keyof TrustDimensions;
|
|
93
|
+
adjustment: number;
|
|
94
|
+
reason: string;
|
|
95
|
+
initiatedBy: string;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Trust trend analysis
|
|
99
|
+
*/
|
|
100
|
+
export interface TrustTrend {
|
|
101
|
+
agentId: string;
|
|
102
|
+
period: {
|
|
103
|
+
start: Date;
|
|
104
|
+
end: Date;
|
|
105
|
+
};
|
|
106
|
+
dataPoints: number;
|
|
107
|
+
startScore: number;
|
|
108
|
+
endScore: number;
|
|
109
|
+
averageScore: number;
|
|
110
|
+
minScore: number;
|
|
111
|
+
maxScore: number;
|
|
112
|
+
scoreChange: number;
|
|
113
|
+
bandChanges: number;
|
|
114
|
+
promotions: number;
|
|
115
|
+
demotions: number;
|
|
116
|
+
trend: 'improving' | 'stable' | 'declining';
|
|
117
|
+
volatility: number;
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=trust-delta.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trust-delta.d.ts","sourceRoot":"","sources":["../../src/v2/trust-delta.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Trust Delta types - represents changes to trust state
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Reason for trust change
|
|
6
|
+
*/
|
|
7
|
+
export var TrustDeltaReason;
|
|
8
|
+
(function (TrustDeltaReason) {
|
|
9
|
+
/** Positive evidence from successful execution */
|
|
10
|
+
TrustDeltaReason["POSITIVE_EVIDENCE"] = "positive_evidence";
|
|
11
|
+
/** Negative evidence from failed execution */
|
|
12
|
+
TrustDeltaReason["NEGATIVE_EVIDENCE"] = "negative_evidence";
|
|
13
|
+
/** Manual adjustment by administrator */
|
|
14
|
+
TrustDeltaReason["MANUAL_ADJUSTMENT"] = "manual_adjustment";
|
|
15
|
+
/** Time-based decay */
|
|
16
|
+
TrustDeltaReason["TIME_DECAY"] = "time_decay";
|
|
17
|
+
/** Band promotion after stability period */
|
|
18
|
+
TrustDeltaReason["BAND_PROMOTION"] = "band_promotion";
|
|
19
|
+
/** Band demotion due to incidents */
|
|
20
|
+
TrustDeltaReason["BAND_DEMOTION"] = "band_demotion";
|
|
21
|
+
/** Recalculation with new evidence */
|
|
22
|
+
TrustDeltaReason["RECALCULATION"] = "recalculation";
|
|
23
|
+
/** Observation tier change affecting ceiling */
|
|
24
|
+
TrustDeltaReason["OBSERVATION_TIER_CHANGE"] = "observation_tier_change";
|
|
25
|
+
/** Policy change affecting calculation */
|
|
26
|
+
TrustDeltaReason["POLICY_CHANGE"] = "policy_change";
|
|
27
|
+
})(TrustDeltaReason || (TrustDeltaReason = {}));
|
|
28
|
+
//# sourceMappingURL=trust-delta.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trust-delta.js","sourceRoot":"","sources":["../../src/v2/trust-delta.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH;;GAEG;AACH,MAAM,CAAN,IAAY,gBAmBX;AAnBD,WAAY,gBAAgB;IAC1B,kDAAkD;IAClD,2DAAuC,CAAA;IACvC,8CAA8C;IAC9C,2DAAuC,CAAA;IACvC,yCAAyC;IACzC,2DAAuC,CAAA;IACvC,uBAAuB;IACvB,6CAAyB,CAAA;IACzB,4CAA4C;IAC5C,qDAAiC,CAAA;IACjC,qCAAqC;IACrC,mDAA+B,CAAA;IAC/B,sCAAsC;IACtC,mDAA+B,CAAA;IAC/B,gDAAgD;IAChD,uEAAmD,CAAA;IACnD,0CAA0C;IAC1C,mDAA+B,CAAA;AACjC,CAAC,EAnBW,gBAAgB,KAAhB,gBAAgB,QAmB3B"}
|