@agentplat/trust 0.3.0-alpha.4

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.
Files changed (63) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +14 -0
  3. package/dist/canonical.d.ts +20 -0
  4. package/dist/canonical.d.ts.map +1 -0
  5. package/dist/canonical.js +173 -0
  6. package/dist/canonical.js.map +1 -0
  7. package/dist/causal.d.ts +7 -0
  8. package/dist/causal.d.ts.map +1 -0
  9. package/dist/causal.js +155 -0
  10. package/dist/causal.js.map +1 -0
  11. package/dist/eligibility.d.ts +8 -0
  12. package/dist/eligibility.d.ts.map +1 -0
  13. package/dist/eligibility.js +325 -0
  14. package/dist/eligibility.js.map +1 -0
  15. package/dist/evidence.d.ts +20 -0
  16. package/dist/evidence.d.ts.map +1 -0
  17. package/dist/evidence.js +424 -0
  18. package/dist/evidence.js.map +1 -0
  19. package/dist/fusion.d.ts +8 -0
  20. package/dist/fusion.d.ts.map +1 -0
  21. package/dist/fusion.js +1278 -0
  22. package/dist/fusion.js.map +1 -0
  23. package/dist/index.d.ts +13 -0
  24. package/dist/index.d.ts.map +1 -0
  25. package/dist/index.js +13 -0
  26. package/dist/index.js.map +1 -0
  27. package/dist/lifecycle.d.ts +41 -0
  28. package/dist/lifecycle.d.ts.map +1 -0
  29. package/dist/lifecycle.js +1369 -0
  30. package/dist/lifecycle.js.map +1 -0
  31. package/dist/mesh-records.d.ts +36 -0
  32. package/dist/mesh-records.d.ts.map +1 -0
  33. package/dist/mesh-records.js +133 -0
  34. package/dist/mesh-records.js.map +1 -0
  35. package/dist/policy.d.ts +9 -0
  36. package/dist/policy.d.ts.map +1 -0
  37. package/dist/policy.js +598 -0
  38. package/dist/policy.js.map +1 -0
  39. package/dist/profile.d.ts +21 -0
  40. package/dist/profile.d.ts.map +1 -0
  41. package/dist/profile.js +253 -0
  42. package/dist/profile.js.map +1 -0
  43. package/dist/quarantine.d.ts +53 -0
  44. package/dist/quarantine.d.ts.map +1 -0
  45. package/dist/quarantine.js +742 -0
  46. package/dist/quarantine.js.map +1 -0
  47. package/dist/sha256.d.ts +2 -0
  48. package/dist/sha256.d.ts.map +1 -0
  49. package/dist/sha256.js +66 -0
  50. package/dist/sha256.js.map +1 -0
  51. package/dist/state.d.ts +18 -0
  52. package/dist/state.d.ts.map +1 -0
  53. package/dist/state.js +1015 -0
  54. package/dist/state.js.map +1 -0
  55. package/dist/types.d.ts +862 -0
  56. package/dist/types.d.ts.map +1 -0
  57. package/dist/types.js +60 -0
  58. package/dist/types.js.map +1 -0
  59. package/dist/validation.d.ts +18 -0
  60. package/dist/validation.d.ts.map +1 -0
  61. package/dist/validation.js +223 -0
  62. package/dist/validation.js.map +1 -0
  63. package/package.json +43 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../src/lifecycle.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import type { EvidenceAttestationV1, EvidenceChallengeV1, EvidenceClaimV1, EvidenceRetractionV1, EvidenceScopeV1, MeshEvidenceEnvelopeMaterialV1, MeshEvidenceWireScopeV1, TrustObservationV1 } from "./types.js";
2
+ export declare function normalizeMeshEvidenceScopeV1(envelope: MeshEvidenceEnvelopeMaterialV1, wireScope: MeshEvidenceWireScopeV1): EvidenceScopeV1;
3
+ export type MeshEvidenceWireSubjectV1 = {
4
+ readonly kind: "peer";
5
+ readonly peerId: string;
6
+ } | {
7
+ readonly kind: "peer_capability";
8
+ readonly peerId: string;
9
+ readonly capabilityKey: string;
10
+ readonly capabilityVersion: string;
11
+ readonly capabilityRevision: number;
12
+ };
13
+ export type MeshEvidenceClaimWireV1 = Omit<EvidenceClaimV1, "schemaVersion" | "claimId" | "claimRelationDigest" | "rootBasisDigest" | "sourceId" | "sourceKind" | "causationId" | "subject" | "scope" | "assertionDigest"> & {
14
+ readonly subject: MeshEvidenceWireSubjectV1;
15
+ readonly scope: MeshEvidenceWireScopeV1;
16
+ };
17
+ export type MeshEvidenceAttestationWireV1 = Omit<EvidenceAttestationV1, "schemaVersion" | "attestationId" | "attestationRelationDigest" | "sourceId" | "sourceKind" | "causationId" | "scope"> & {
18
+ readonly scope: MeshEvidenceWireScopeV1;
19
+ };
20
+ export type MeshEvidenceChallengeWireV1 = Omit<EvidenceChallengeV1, "schemaVersion" | "challengeId" | "challengeRelationDigest" | "sourceId" | "sourceKind" | "causationId" | "scope"> & {
21
+ readonly scope: MeshEvidenceWireScopeV1;
22
+ };
23
+ export type MeshEvidenceRetractionWireV1 = Omit<EvidenceRetractionV1, "schemaVersion" | "retractionId" | "retractionRelationDigest" | "sourceId" | "sourceKind" | "causationId" | "scope"> & {
24
+ readonly scope: MeshEvidenceWireScopeV1;
25
+ };
26
+ export type MeshTrustObservationWireV1 = Omit<TrustObservationV1, "schemaVersion" | "observationId" | "observerId" | "observerKind" | "causationId" | "subject" | "scope"> & {
27
+ readonly subject: MeshEvidenceWireSubjectV1;
28
+ readonly scope: MeshEvidenceWireScopeV1;
29
+ };
30
+ export declare function normalizeMeshEvidenceClaimV1(envelope: MeshEvidenceEnvelopeMaterialV1, wire: MeshEvidenceClaimWireV1): EvidenceClaimV1;
31
+ export declare function normalizeMeshEvidenceAttestationV1(envelope: MeshEvidenceEnvelopeMaterialV1, wire: MeshEvidenceAttestationWireV1): EvidenceAttestationV1;
32
+ export declare function normalizeMeshEvidenceChallengeV1(envelope: MeshEvidenceEnvelopeMaterialV1, wire: MeshEvidenceChallengeWireV1): EvidenceChallengeV1;
33
+ export declare function normalizeMeshEvidenceRetractionV1(envelope: MeshEvidenceEnvelopeMaterialV1, wire: MeshEvidenceRetractionWireV1): EvidenceRetractionV1;
34
+ /** Normalizes a signed redacted projection; callers must never feed it to Fusion. */
35
+ export declare function normalizeMeshTrustObservationV1(envelope: MeshEvidenceEnvelopeMaterialV1, wire: MeshTrustObservationWireV1): TrustObservationV1;
36
+ //# sourceMappingURL=mesh-records.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mesh-records.d.ts","sourceRoot":"","sources":["../src/mesh-records.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,8BAA8B,EAC9B,uBAAuB,EAEvB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AASpB,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,8BAA8B,EACxC,SAAS,EAAE,uBAAuB,GACjC,eAAe,CAuFjB;AAED,MAAM,MAAM,yBAAyB,GACjC;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAClD;IACE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;CACrC,CAAC;AAEN,MAAM,MAAM,uBAAuB,GAAG,IAAI,CACxC,eAAe,EACb,eAAe,GACf,SAAS,GACT,qBAAqB,GACrB,iBAAiB,GACjB,UAAU,GACV,YAAY,GACZ,aAAa,GACb,SAAS,GACT,OAAO,GACP,iBAAiB,CACpB,GAAG;IACF,QAAQ,CAAC,OAAO,EAAE,yBAAyB,CAAC;IAC5C,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAC;CACzC,CAAC;AACF,MAAM,MAAM,6BAA6B,GAAG,IAAI,CAC9C,qBAAqB,EACnB,eAAe,GACf,eAAe,GACf,2BAA2B,GAC3B,UAAU,GACV,YAAY,GACZ,aAAa,GACb,OAAO,CACV,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAA;CAAE,CAAC;AAChD,MAAM,MAAM,2BAA2B,GAAG,IAAI,CAC5C,mBAAmB,EACjB,eAAe,GACf,aAAa,GACb,yBAAyB,GACzB,UAAU,GACV,YAAY,GACZ,aAAa,GACb,OAAO,CACV,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAA;CAAE,CAAC;AAChD,MAAM,MAAM,4BAA4B,GAAG,IAAI,CAC7C,oBAAoB,EAClB,eAAe,GACf,cAAc,GACd,0BAA0B,GAC1B,UAAU,GACV,YAAY,GACZ,aAAa,GACb,OAAO,CACV,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAA;CAAE,CAAC;AAChD,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAC3C,kBAAkB,EAChB,eAAe,GACf,eAAe,GACf,YAAY,GACZ,cAAc,GACd,aAAa,GACb,SAAS,GACT,OAAO,CACV,GAAG;IACF,QAAQ,CAAC,OAAO,EAAE,yBAAyB,CAAC;IAC5C,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAC;CACzC,CAAC;AAQF,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,8BAA8B,EACxC,IAAI,EAAE,uBAAuB,GAC5B,eAAe,CAUjB;AACD,wBAAgB,kCAAkC,CAChD,QAAQ,EAAE,8BAA8B,EACxC,IAAI,EAAE,6BAA6B,GAClC,qBAAqB,CASvB;AACD,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,8BAA8B,EACxC,IAAI,EAAE,2BAA2B,GAChC,mBAAmB,CASrB;AACD,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,8BAA8B,EACxC,IAAI,EAAE,4BAA4B,GACjC,oBAAoB,CAStB;AAED,qFAAqF;AACrF,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,8BAA8B,EACxC,IAAI,EAAE,0BAA0B,GAC/B,kBAAkB,CAUpB"}
@@ -0,0 +1,133 @@
1
+ import { createEvidenceAttestationV1, createEvidenceChallengeV1, createEvidenceClaimV1, createEvidenceRetractionV1, createTrustObservationV1, } from "./evidence.js";
2
+ import { assertExactKeys, assertIdentifier, assertSafeInteger, TrustValidationError, validateTrustSubjectV1, } from "./validation.js";
3
+ export function normalizeMeshEvidenceScopeV1(envelope, wireScope) {
4
+ assertExactKeys(envelope, [
5
+ "schemaVersion",
6
+ "tenantId",
7
+ "meshId",
8
+ "objectiveId",
9
+ "senderPeerId",
10
+ "causationId",
11
+ ], "mesh envelope material");
12
+ if (envelope.schemaVersion !== 1)
13
+ throw new TrustValidationError("mesh envelope schema is invalid");
14
+ for (const key of ["tenantId", "meshId", "senderPeerId"])
15
+ assertIdentifier(envelope[key], key);
16
+ if (envelope.objectiveId !== null)
17
+ assertIdentifier(envelope.objectiveId, "objectiveId");
18
+ if (envelope.causationId !== null)
19
+ assertIdentifier(envelope.causationId, "causationId");
20
+ if (wireScope.kind === "mesh") {
21
+ assertExactKeys(wireScope, ["kind"], "mesh wire scope");
22
+ if (envelope.objectiveId !== null)
23
+ throw new TrustValidationError("mesh scope forbids objectiveId");
24
+ return {
25
+ schemaVersion: 1,
26
+ kind: "mesh",
27
+ tenantId: envelope.tenantId,
28
+ meshId: envelope.meshId,
29
+ };
30
+ }
31
+ if (wireScope.kind !== "objective" && wireScope.kind !== "work")
32
+ throw new TrustValidationError("mesh wire scope kind is invalid");
33
+ if (envelope.objectiveId === null)
34
+ throw new TrustValidationError("objective scope requires objectiveId");
35
+ assertSafeInteger(wireScope.objectiveRevision, "objectiveRevision", 1);
36
+ if (wireScope.kind === "objective") {
37
+ assertExactKeys(wireScope, ["kind", "objectiveRevision"], "objective wire scope");
38
+ return {
39
+ schemaVersion: 1,
40
+ kind: "objective",
41
+ tenantId: envelope.tenantId,
42
+ meshId: envelope.meshId,
43
+ objectiveId: envelope.objectiveId,
44
+ objectiveRevision: wireScope.objectiveRevision,
45
+ };
46
+ }
47
+ assertExactKeys(wireScope, [
48
+ "kind",
49
+ "objectiveRevision",
50
+ "workItemId",
51
+ "workItemRevision",
52
+ "assignmentEpoch",
53
+ "assignmentAuthorityId",
54
+ "fencingToken",
55
+ ], "work wire scope");
56
+ for (const key of ["workItemId", "assignmentAuthorityId"])
57
+ assertIdentifier(wireScope[key], key);
58
+ for (const key of ["workItemRevision", "assignmentEpoch"])
59
+ assertSafeInteger(wireScope[key], key, 1);
60
+ if (typeof wireScope.fencingToken !== "string" ||
61
+ wireScope.fencingToken.length === 0)
62
+ throw new TrustValidationError("fencingToken is invalid");
63
+ return {
64
+ schemaVersion: 1,
65
+ kind: "work",
66
+ tenantId: envelope.tenantId,
67
+ meshId: envelope.meshId,
68
+ objectiveId: envelope.objectiveId,
69
+ objectiveRevision: wireScope.objectiveRevision,
70
+ workItemId: wireScope.workItemId,
71
+ workItemRevision: wireScope.workItemRevision,
72
+ assignmentEpoch: wireScope.assignmentEpoch,
73
+ assignmentAuthorityId: wireScope.assignmentAuthorityId,
74
+ fencingToken: wireScope.fencingToken,
75
+ };
76
+ }
77
+ function normalizeMeshEvidenceSubjectV1(subject) {
78
+ return validateTrustSubjectV1({ schemaVersion: 1, ...subject });
79
+ }
80
+ export function normalizeMeshEvidenceClaimV1(envelope, wire) {
81
+ return createEvidenceClaimV1({
82
+ ...wire,
83
+ schemaVersion: 1,
84
+ sourceId: envelope.senderPeerId,
85
+ sourceKind: "peer",
86
+ causationId: envelope.causationId,
87
+ subject: normalizeMeshEvidenceSubjectV1(wire.subject),
88
+ scope: normalizeMeshEvidenceScopeV1(envelope, wire.scope),
89
+ });
90
+ }
91
+ export function normalizeMeshEvidenceAttestationV1(envelope, wire) {
92
+ return createEvidenceAttestationV1({
93
+ ...wire,
94
+ schemaVersion: 1,
95
+ sourceId: envelope.senderPeerId,
96
+ sourceKind: "peer",
97
+ causationId: envelope.causationId,
98
+ scope: normalizeMeshEvidenceScopeV1(envelope, wire.scope),
99
+ });
100
+ }
101
+ export function normalizeMeshEvidenceChallengeV1(envelope, wire) {
102
+ return createEvidenceChallengeV1({
103
+ ...wire,
104
+ schemaVersion: 1,
105
+ sourceId: envelope.senderPeerId,
106
+ sourceKind: "peer",
107
+ causationId: envelope.causationId,
108
+ scope: normalizeMeshEvidenceScopeV1(envelope, wire.scope),
109
+ });
110
+ }
111
+ export function normalizeMeshEvidenceRetractionV1(envelope, wire) {
112
+ return createEvidenceRetractionV1({
113
+ ...wire,
114
+ schemaVersion: 1,
115
+ sourceId: envelope.senderPeerId,
116
+ sourceKind: "peer",
117
+ causationId: envelope.causationId,
118
+ scope: normalizeMeshEvidenceScopeV1(envelope, wire.scope),
119
+ });
120
+ }
121
+ /** Normalizes a signed redacted projection; callers must never feed it to Fusion. */
122
+ export function normalizeMeshTrustObservationV1(envelope, wire) {
123
+ return createTrustObservationV1({
124
+ ...wire,
125
+ schemaVersion: 1,
126
+ observerId: envelope.senderPeerId,
127
+ observerKind: "peer",
128
+ causationId: envelope.causationId,
129
+ subject: normalizeMeshEvidenceSubjectV1(wire.subject),
130
+ scope: normalizeMeshEvidenceScopeV1(envelope, wire.scope),
131
+ });
132
+ }
133
+ //# sourceMappingURL=mesh-records.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mesh-records.js","sourceRoot":"","sources":["../src/mesh-records.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { EvidenceFusionPolicyV1, EvidenceTrustDependencyBindingHeadV1, EvidenceTrustDependencyBindingV1, EvidenceTrustLimitsV1 } from "./types.js";
2
+ export declare function validateEvidenceFusionPolicyV1(value: unknown, stateLimits?: EvidenceTrustLimitsV1): EvidenceFusionPolicyV1;
3
+ export declare const createEvidenceFusionPolicyV1: typeof validateEvidenceFusionPolicyV1;
4
+ export declare function digestEvidenceFusionPolicyV1(value: unknown): string;
5
+ export declare function validateEvidenceTrustDependencyBindingV1(value: unknown): EvidenceTrustDependencyBindingV1;
6
+ export declare function createEvidenceTrustDependencyBindingV1(input: Omit<EvidenceTrustDependencyBindingV1, "bindingDigest">): EvidenceTrustDependencyBindingV1;
7
+ export declare function resolveEvidenceTrustDependencyBindingV1(bindings: readonly EvidenceTrustDependencyBindingV1[], bindingDigest: string, logicalTimeMs?: number): EvidenceTrustDependencyBindingV1 | null;
8
+ export declare function dependencyBindingHeadV1(binding: EvidenceTrustDependencyBindingV1): EvidenceTrustDependencyBindingHeadV1;
9
+ //# sourceMappingURL=policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../src/policy.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAMV,sBAAsB,EAEtB,oCAAoC,EAEpC,gCAAgC,EAChC,qBAAqB,EAKtB,MAAM,YAAY,CAAC;AAykBpB,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,OAAO,EACd,WAAW,GAAE,qBAA+B,GAC3C,sBAAsB,CAyHxB;AACD,eAAO,MAAM,4BAA4B,uCAAiC,CAAC;AAC3E,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAKnE;AAsGD,wBAAgB,wCAAwC,CACtD,KAAK,EAAE,OAAO,GACb,gCAAgC,CAElC;AACD,wBAAgB,sCAAsC,CACpD,KAAK,EAAE,IAAI,CAAC,gCAAgC,EAAE,eAAe,CAAC,GAC7D,gCAAgC,CAUlC;AACD,wBAAgB,uCAAuC,CACrD,QAAQ,EAAE,SAAS,gCAAgC,EAAE,EACrD,aAAa,EAAE,MAAM,EACrB,aAAa,CAAC,EAAE,MAAM,GACrB,gCAAgC,GAAG,IAAI,CAgBzC;AACD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,gCAAgC,GACxC,oCAAoC,CAOtC"}