@atrib/verify 0.3.7 → 0.5.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/README.md +95 -24
- package/dist/ap2-vi-evidence.d.ts +47 -0
- package/dist/ap2-vi-evidence.d.ts.map +1 -1
- package/dist/ap2-vi-evidence.js +713 -9
- package/dist/ap2-vi-evidence.js.map +1 -1
- package/dist/handoff.d.ts +94 -0
- package/dist/handoff.d.ts.map +1 -0
- package/dist/handoff.js +371 -0
- package/dist/handoff.js.map +1 -0
- package/dist/index.d.ts +6 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -6
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +7 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/verifier.d.ts +14 -1
- package/dist/verifier.d.ts.map +1 -1
- package/dist/verifier.js +29 -1
- package/dist/verifier.js.map +1 -1
- package/dist/verify-record.d.ts +30 -8
- package/dist/verify-record.d.ts.map +1 -1
- package/dist/verify-record.js +75 -16
- package/dist/verify-record.js.map +1 -1
- package/package.json +4 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handoff.js","sourceRoot":"","sources":["../src/handoff.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
export { AtribVerifier } from './verifier.js';
|
|
2
|
-
export type { AtribVerifierOptions, CalculateOptions } from './verifier.js';
|
|
2
|
+
export type { AtribVerifierOptions, CalculateOptions, VerifyRecommendationOptions, } from './verifier.js';
|
|
3
3
|
export { verifyRecord } from './verify-record.js';
|
|
4
|
-
export type { RecordVerificationResult, ProvenanceAnnotation, VerifyRecordOptions, } from './verify-record.js';
|
|
4
|
+
export type { RecordVerificationResult, ProvenanceAnnotation, VerifyRecordOptions, CrossAttestationAnnotation, } from './verify-record.js';
|
|
5
|
+
export { handoffClaimsFromEvidencePacket, verifyHandoffClaims } from './handoff.js';
|
|
6
|
+
export type { HandoffBodyVerification, HandoffClaimsFromEvidenceOptions, HandoffClaimInput, HandoffClaimVerification, HandoffEvidenceEntry, HandoffEvidencePacket, HandoffProofVerification, HandoffRejectionReason, HandoffVerificationResult, VerifyHandoffClaimsOptions, } from './handoff.js';
|
|
5
7
|
export { calculate, DEFAULT_POLICY, isValidPolicy } from './calculate.js';
|
|
6
8
|
export { signRecommendation, verifyRecommendationSignature, recommendationSigningInput, distributionsMatch, } from './recommendation.js';
|
|
7
9
|
export { buildPolicy, policyFrom } from './policy-builder.js';
|
|
8
10
|
export { fetchGraph, fetchSessionPolicyRecord, fetchPolicyDocument } from './graph-fetch.js';
|
|
9
11
|
export { buildRevocationRegistry, applyRevocation } from './revocations.js';
|
|
10
12
|
export type { RevocationEntry, RevocationReason, MinimalRecord } from './revocations.js';
|
|
11
|
-
export { verifyAp2ViEvidence, verifyAp2ViEvidenceAsync } from './ap2-vi-evidence.js';
|
|
12
|
-
export type { Ap2EvidenceCheck, Ap2EvidenceInput, Ap2ReceiptJwtCheck, Ap2ReceiptJwtIssuer, Ap2ReceiptCheck, Ap2ViEvidenceBundle, Ap2ViEvidenceVerification, SignatureCheck, VerifyAp2ViEvidenceOptions, ViCredentialCheck, ViCredentialInput, ViCredentialLayer, ViEvidenceCheck, ViMode, } from './ap2-vi-evidence.js';
|
|
13
|
+
export { evaluateAp2ViConstraints, verifyAp2ViEvidence, verifyAp2ViEvidenceAsync, } from './ap2-vi-evidence.js';
|
|
14
|
+
export type { Ap2ConstraintCheckStatus, Ap2ConstraintDomain, Ap2ConstraintEvaluationStatus, Ap2ConstraintPolicy, Ap2EvidenceCheck, Ap2EvidenceInput, Ap2MandateConstraintCheck, Ap2MandateConstraintEvaluation, Ap2MandateConstraintInput, Ap2ReceiptJwtCheck, Ap2ReceiptJwtIssuer, Ap2ReceiptCheck, Ap2ViEvidenceBundle, Ap2ViEvidenceVerification, SdJwtConformanceCheck, SdJwtConformancePolicy, SdJwtConformanceProfile, SdJwtVcConformanceOptions, SignatureCheck, VerifyAp2ViEvidenceOptions, ViCredentialCheck, ViCredentialInput, ViCredentialLayer, ViEvidenceCheck, ViMode, } from './ap2-vi-evidence.js';
|
|
13
15
|
export { resolveIdentity } from './resolve-identity.js';
|
|
14
16
|
export type { IdentityResolution, IdentityResolutionMethod, KeyRevocationStatus, ResolveIdentityOptions, IdentityClaim, CapabilityEnvelope, } from './resolve-identity.js';
|
|
15
17
|
export type { GraphNode, GraphEdge, GraphResponse, EventType, EdgeType, GapNode, VerificationState, ReferenceStatus, PolicyDocument, PolicyConstraints, EdgeWeights, Modifier, DistributionMethod, CreatorPolicySnapshot, CreatorPolicyEntry, SessionPolicyRecord, Distribution, RecommendationDocument, VerificationResult, } from './types.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,YAAY,EACV,oBAAoB,EACpB,gBAAgB,EAChB,2BAA2B,GAC5B,MAAM,eAAe,CAAA;AAKtB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,YAAY,EACV,wBAAwB,EACxB,oBAAoB,EACpB,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,oBAAoB,CAAA;AAK3B,OAAO,EAAE,+BAA+B,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AACnF,YAAY,EACV,uBAAuB,EACvB,gCAAgC,EAChC,iBAAiB,EACjB,wBAAwB,EACxB,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,cAAc,CAAA;AAGrB,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAGzE,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,qBAAqB,CAAA;AAG5B,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAG7D,OAAO,EAAE,UAAU,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAG5F,OAAO,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAC3E,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAGxF,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,sBAAsB,CAAA;AAC7B,YAAY,EACV,wBAAwB,EACxB,mBAAmB,EACnB,6BAA6B,EAC7B,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,yBAAyB,EACzB,8BAA8B,EAC9B,yBAAyB,EACzB,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,yBAAyB,EACzB,cAAc,EACd,0BAA0B,EAC1B,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,MAAM,GACP,MAAM,sBAAsB,CAAA;AAG7B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,YAAY,EACV,kBAAkB,EAClB,wBAAwB,EACxB,mBAAmB,EACnB,sBAAsB,EACtB,aAAa,EACb,kBAAkB,GACnB,MAAM,uBAAuB,CAAA;AAG9B,YAAY,EACV,SAAS,EACT,SAAS,EACT,aAAa,EACb,SAAS,EACT,QAAQ,EACR,OAAO,EACP,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,WAAW,EACX,QAAQ,EACR,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,EACZ,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -2,12 +2,14 @@
|
|
|
2
2
|
// @atrib/verify. Merchant verification library
|
|
3
3
|
// Verifier (primary export)
|
|
4
4
|
export { AtribVerifier } from './verifier.js';
|
|
5
|
-
// Per-record verification (single AtribRecord
|
|
6
|
-
//
|
|
7
|
-
//
|
|
8
|
-
// README mentions (informed_by_resolution, capability_check, etc.) are
|
|
9
|
-
// pending; see DECISIONS.md for the planned reconciliation.
|
|
5
|
+
// Per-record verification (single AtribRecord). Distinct from
|
|
6
|
+
// AtribVerifier.verify which operates on a settlement RecommendationDocument.
|
|
7
|
+
// Surfaces the implemented D044, D041, D045, D051, D052, and D094 annotations.
|
|
10
8
|
export { verifyRecord } from './verify-record.js';
|
|
9
|
+
// Cross-agent handoff claim verification. Used when one agent receives a
|
|
10
|
+
// record_hash claim plus private body material from another agent and must
|
|
11
|
+
// decide whether to link its next record through informed_by.
|
|
12
|
+
export { handoffClaimsFromEvidencePacket, verifyHandoffClaims } from './handoff.js';
|
|
11
13
|
// Calculation algorithm (§4.6). pure function, exported for direct use
|
|
12
14
|
export { calculate, DEFAULT_POLICY, isValidPolicy } from './calculate.js';
|
|
13
15
|
// Recommendation document signing/verification (§4.7)
|
|
@@ -19,7 +21,7 @@ export { fetchGraph, fetchSessionPolicyRecord, fetchPolicyDocument } from './gra
|
|
|
19
21
|
// Revocation registry (§1.9)
|
|
20
22
|
export { buildRevocationRegistry, applyRevocation } from './revocations.js';
|
|
21
23
|
// AP2 / Verifiable Intent evidence checks. Off the settlement critical path.
|
|
22
|
-
export { verifyAp2ViEvidence, verifyAp2ViEvidenceAsync } from './ap2-vi-evidence.js';
|
|
24
|
+
export { evaluateAp2ViConstraints, verifyAp2ViEvidence, verifyAp2ViEvidenceAsync, } from './ap2-vi-evidence.js';
|
|
23
25
|
// Identity resolution (§6.3 9-step verifier consultation)
|
|
24
26
|
export { resolveIdentity } from './resolve-identity.js';
|
|
25
27
|
export { graphLabelFromEventTypeUri } from './types.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC,+CAA+C;AAE/C,4BAA4B;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC,+CAA+C;AAE/C,4BAA4B;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAO7C,8DAA8D;AAC9D,8EAA8E;AAC9E,+EAA+E;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAQjD,yEAAyE;AACzE,2EAA2E;AAC3E,8DAA8D;AAC9D,OAAO,EAAE,+BAA+B,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAcnF,uEAAuE;AACvE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAEzE,sDAAsD;AACtD,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,qBAAqB,CAAA;AAE5B,mDAAmD;AACnD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAE7D,+BAA+B;AAC/B,OAAO,EAAE,UAAU,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAE5F,6BAA6B;AAC7B,OAAO,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAG3E,6EAA6E;AAC7E,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,sBAAsB,CAAA;AA6B7B,0DAA0D;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAgCvD,OAAO,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAA"}
|
package/dist/types.d.ts
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
*
|
|
5
5
|
* Mirrors §3.5 (graph response schema) and §4.7 (recommendation document).
|
|
6
6
|
*/
|
|
7
|
+
import type { Ap2ViEvidenceVerification } from './ap2-vi-evidence.js';
|
|
7
8
|
/**
|
|
8
9
|
* Graph-layer event_type. Short labels for the three primitives the v1
|
|
9
10
|
* graph + calculation algorithm operate on, plus the catch-all `extension`
|
|
@@ -244,5 +245,11 @@ export interface VerificationResult {
|
|
|
244
245
|
distribution: Distribution;
|
|
245
246
|
warnings: string[];
|
|
246
247
|
graph_node_count: number;
|
|
248
|
+
/**
|
|
249
|
+
* Optional AP2 / Verifiable Intent evidence result supplied by the
|
|
250
|
+
* caller. This is tiered verifier evidence and does not alter the
|
|
251
|
+
* settlement recommendation signature or calculation checks.
|
|
252
|
+
*/
|
|
253
|
+
ap2_vi_evidence?: Ap2ViEvidenceVerification;
|
|
247
254
|
}
|
|
248
255
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,sCAAsC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAuCtC;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CAAC,GAAW;IACpD,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,sCAAsC;YACzC,OAAO,WAAW,CAAA;QACpB,KAAK,wCAAwC;YAC3C,OAAO,aAAa,CAAA;QACtB,KAAK,wCAAwC;YAC3C,OAAO,aAAa,CAAA;QACtB,KAAK,6CAA6C;YAChD,OAAO,kBAAkB,CAAA;QAC3B,KAAK,uCAAuC;YAC1C,OAAO,YAAY,CAAA;QACrB,KAAK,qCAAqC;YACxC,OAAO,UAAU,CAAA;QACnB;YACE,OAAO,WAAW,CAAA;IACtB,CAAC;AACH,CAAC"}
|
package/dist/verifier.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { Ap2ViEvidenceBundle, VerifyAp2ViEvidenceOptions } from './ap2-vi-evidence.js';
|
|
1
2
|
import type { PolicyDocument, RecommendationDocument, VerificationResult } from './types.js';
|
|
2
3
|
/** Init options for AtribVerifier (§5.5.1). */
|
|
3
4
|
export interface AtribVerifierOptions {
|
|
@@ -17,6 +18,18 @@ export interface CalculateOptions {
|
|
|
17
18
|
/** Optional pin to a specific log tree size. */
|
|
18
19
|
treeSize?: number;
|
|
19
20
|
}
|
|
21
|
+
/** Options for settlement recommendation verification (§5.5.2). */
|
|
22
|
+
export interface VerifyRecommendationOptions {
|
|
23
|
+
/**
|
|
24
|
+
* Caller-supplied AP2 / Verifiable Intent evidence for the transaction
|
|
25
|
+
* represented by the recommendation document. Evidence verification is
|
|
26
|
+
* tiered and attaches as `ap2_vi_evidence`; it does not change the base
|
|
27
|
+
* recommendation signature or calculation checks.
|
|
28
|
+
*/
|
|
29
|
+
ap2ViEvidence?: Ap2ViEvidenceBundle;
|
|
30
|
+
/** Options passed through to `verifyAp2ViEvidenceAsync()`. */
|
|
31
|
+
ap2ViEvidenceOptions?: VerifyAp2ViEvidenceOptions;
|
|
32
|
+
}
|
|
20
33
|
export declare class AtribVerifier {
|
|
21
34
|
private readonly logEndpoint;
|
|
22
35
|
private readonly graphEndpoint;
|
|
@@ -33,7 +46,7 @@ export declare class AtribVerifier {
|
|
|
33
46
|
* 3. Fetch the session policy record (or use default if "default").
|
|
34
47
|
* 4. Run calculate() locally and compare distributions within 1e-9.
|
|
35
48
|
*/
|
|
36
|
-
verify(doc: RecommendationDocument): Promise<VerificationResult>;
|
|
49
|
+
verify(doc: RecommendationDocument, options?: VerifyRecommendationOptions): Promise<VerificationResult>;
|
|
37
50
|
/**
|
|
38
51
|
* Post-hoc calculation when no agent SDK was present (§5.5.3).
|
|
39
52
|
*
|
package/dist/verifier.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["../src/verifier.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["../src/verifier.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EACV,mBAAmB,EAEnB,0BAA0B,EAC3B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EACV,cAAc,EACd,sBAAsB,EAEtB,kBAAkB,EACnB,MAAM,YAAY,CAAA;AAMnB,+CAA+C;AAC/C,MAAM,WAAW,oBAAoB;IACnC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,iDAAiD;AACjD,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAA;IAClB,sEAAsE;IACtE,MAAM,EAAE,cAAc,GAAG,SAAS,CAAA;IAClC,mDAAmD;IACnD,QAAQ,CAAC,EAAE,UAAU,CAAA;IACrB,gDAAgD;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,mEAAmE;AACnE,MAAM,WAAW,2BAA2B;IAC1C;;;;;OAKG;IACH,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC,8DAA8D;IAC9D,oBAAoB,CAAC,EAAE,0BAA0B,CAAA;CAClD;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAQ;IACpC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAmB;gBAE1C,OAAO,GAAE,oBAAyB;IAsB9C;;;;;;;;;;OAUG;IACG,MAAM,CACV,GAAG,EAAE,sBAAsB,EAC3B,OAAO,GAAE,2BAAgC,GACxC,OAAO,CAAC,kBAAkB,CAAC;IA8E9B;;;;;;OAMG;IACG,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IA2D3E;;;;;;OAMG;YACW,4BAA4B;CAuB3C"}
|
package/dist/verifier.js
CHANGED
|
@@ -12,6 +12,7 @@ import { base64urlDecode } from '@atrib/mcp';
|
|
|
12
12
|
import { calculate, DEFAULT_POLICY } from './calculate.js';
|
|
13
13
|
import { fetchGraph, fetchSessionPolicyRecord, fetchPolicyDocument } from './graph-fetch.js';
|
|
14
14
|
import { signRecommendation, verifyRecommendationSignature, distributionsMatch, } from './recommendation.js';
|
|
15
|
+
import { verifyAp2ViEvidenceAsync } from './ap2-vi-evidence.js';
|
|
15
16
|
const DEFAULT_LOG_ENDPOINT = 'https://log.atrib.dev/v1';
|
|
16
17
|
const DEFAULT_GRAPH_ENDPOINT = 'https://graph.atrib.dev/v1';
|
|
17
18
|
const DEFAULT_RESOLVE_ENDPOINT = 'https://resolve.atrib.dev/v1';
|
|
@@ -52,12 +53,13 @@ export class AtribVerifier {
|
|
|
52
53
|
* 3. Fetch the session policy record (or use default if "default").
|
|
53
54
|
* 4. Run calculate() locally and compare distributions within 1e-9.
|
|
54
55
|
*/
|
|
55
|
-
async verify(doc) {
|
|
56
|
+
async verify(doc, options = {}) {
|
|
56
57
|
const warnings = [];
|
|
57
58
|
let signatureOk = false;
|
|
58
59
|
let calcMatch = false;
|
|
59
60
|
let localDistribution = doc.distribution;
|
|
60
61
|
let nodeCount = 0;
|
|
62
|
+
let ap2ViEvidence;
|
|
61
63
|
// Step 1: signature
|
|
62
64
|
try {
|
|
63
65
|
const pubKey = await this.resolveCalculatedByPublicKey(doc.calculated_by);
|
|
@@ -104,6 +106,14 @@ export class AtribVerifier {
|
|
|
104
106
|
catch (err) {
|
|
105
107
|
warnings.push(`graph fetch or calculation error: ${err.message}`);
|
|
106
108
|
}
|
|
109
|
+
if (options.ap2ViEvidence !== undefined) {
|
|
110
|
+
try {
|
|
111
|
+
ap2ViEvidence = await verifyAp2ViEvidenceAsync(options.ap2ViEvidence, options.ap2ViEvidenceOptions);
|
|
112
|
+
}
|
|
113
|
+
catch (err) {
|
|
114
|
+
ap2ViEvidence = ap2ViEvidenceErrorResult(err);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
107
117
|
return {
|
|
108
118
|
valid: signatureOk && calcMatch,
|
|
109
119
|
signatureOk,
|
|
@@ -111,6 +121,7 @@ export class AtribVerifier {
|
|
|
111
121
|
distribution: localDistribution,
|
|
112
122
|
warnings,
|
|
113
123
|
graph_node_count: nodeCount,
|
|
124
|
+
...(ap2ViEvidence ? { ap2_vi_evidence: ap2ViEvidence } : {}),
|
|
114
125
|
};
|
|
115
126
|
}
|
|
116
127
|
/**
|
|
@@ -210,4 +221,21 @@ export class AtribVerifier {
|
|
|
210
221
|
}
|
|
211
222
|
}
|
|
212
223
|
}
|
|
224
|
+
function ap2ViEvidenceErrorResult(err) {
|
|
225
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
226
|
+
return {
|
|
227
|
+
valid: false,
|
|
228
|
+
transactionAccepted: false,
|
|
229
|
+
ap2: {},
|
|
230
|
+
vi: {
|
|
231
|
+
mode: 'unknown',
|
|
232
|
+
credentials: [],
|
|
233
|
+
delegationOk: null,
|
|
234
|
+
checkoutPaymentBindingOk: null,
|
|
235
|
+
constraints: { status: 'not_checked', checks: [] },
|
|
236
|
+
},
|
|
237
|
+
errors: [`ap2_vi_evidence verification error: ${message}`],
|
|
238
|
+
warnings: [],
|
|
239
|
+
};
|
|
240
|
+
}
|
|
213
241
|
//# sourceMappingURL=verifier.js.map
|
package/dist/verifier.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verifier.js","sourceRoot":"","sources":["../src/verifier.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC;;;;;;;;GAQG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAC5F,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,kBAAkB,GACnB,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"verifier.js","sourceRoot":"","sources":["../src/verifier.ts"],"names":[],"mappings":"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"}
|
package/dist/verify-record.d.ts
CHANGED
|
@@ -11,9 +11,10 @@
|
|
|
11
11
|
* - informed_by_resolution: { resolved: string[], dangling: string[] } (D041 / §1.2.5, §3.2.4)
|
|
12
12
|
* - posture: { timestamp_granularity, timestamp_consistent, ...} (D045 / §8.2 / §8.3 / §8.4)
|
|
13
13
|
* - capability_check: { envelope, in_envelope, mismatches, unresolvable } (D051 / §6.7)
|
|
14
|
+
* - cross_attestation: { signers_count, signers_valid, missing } (D052 / §1.7.6)
|
|
15
|
+
* - ap2_vi_evidence: AP2 receipt + Verifiable Intent evidence result (D094 / §5.5.4)
|
|
14
16
|
*
|
|
15
17
|
* Pending annotations (tracked in DECISIONS.md P005):
|
|
16
|
-
* - cross_attestation: D052 / §1.7.6 (needs `signers[]` type addition + transaction-record signing variant in @atrib/mcp)
|
|
17
18
|
* - cross_log_*: D050 / §2.11 (needs multi-log proof-bundle infrastructure)
|
|
18
19
|
*
|
|
19
20
|
* Design note on dependencies. The capability_check annotation does NOT
|
|
@@ -24,6 +25,7 @@
|
|
|
24
25
|
* pattern as `upstreamCandidate` and `informedByCandidates`.
|
|
25
26
|
*/
|
|
26
27
|
import { base64urlDecode, type AtribRecord } from '@atrib/mcp';
|
|
28
|
+
import type { Ap2ViEvidenceBundle, Ap2ViEvidenceVerification, VerifyAp2ViEvidenceOptions } from './ap2-vi-evidence.js';
|
|
27
29
|
/**
|
|
28
30
|
* Provenance surfacing for a record carrying `provenance_token` (D044 /
|
|
29
31
|
* spec §1.2.6).
|
|
@@ -118,9 +120,10 @@ export interface CrossAttestationAnnotation {
|
|
|
118
120
|
*/
|
|
119
121
|
signers_count: number;
|
|
120
122
|
/**
|
|
121
|
-
* Number of
|
|
122
|
-
* against the cross-attestation canonical
|
|
123
|
-
* `signers: []` and `signature` omitted, per
|
|
123
|
+
* Number of distinct creator keys with at least one Ed25519 signature
|
|
124
|
+
* that successfully verifies against the cross-attestation canonical
|
|
125
|
+
* bytes (JCS form with `signers: []` and `signature` omitted, per
|
|
126
|
+
* §1.7.6). Duplicate entries from one key do not inflate this count.
|
|
124
127
|
*/
|
|
125
128
|
signers_valid: number;
|
|
126
129
|
/**
|
|
@@ -229,10 +232,18 @@ export interface RecordVerificationResult {
|
|
|
229
232
|
* Cross-attestation annotation per §1.7.6 (D052). Populated ONLY for
|
|
230
233
|
* transaction records (`event_type = https://atrib.dev/v1/types/transaction`).
|
|
231
234
|
* Surfaces signers_count, signers_valid, and missing (true when fewer
|
|
232
|
-
* than 2
|
|
233
|
-
* cross-attestation; consumers decide policy.
|
|
235
|
+
* than 2 distinct signer keys verify). Per §1.7.6 verifiers MUST flag
|
|
236
|
+
* missing cross-attestation; consumers decide policy.
|
|
234
237
|
*/
|
|
235
238
|
cross_attestation?: CrossAttestationAnnotation;
|
|
239
|
+
/**
|
|
240
|
+
* Optional AP2 / Verifiable Intent evidence annotation. Populated only
|
|
241
|
+
* when the caller passes `ap2ViEvidence` and the record is a transaction
|
|
242
|
+
* record. The evidence result is tiered: it does not alter `valid`,
|
|
243
|
+
* `signatureOk`, or `cross_attestation`. Consumers read
|
|
244
|
+
* `ap2_vi_evidence.valid` to decide AP2 / VI authorization posture.
|
|
245
|
+
*/
|
|
246
|
+
ap2_vi_evidence?: Ap2ViEvidenceVerification;
|
|
236
247
|
warnings: string[];
|
|
237
248
|
}
|
|
238
249
|
/**
|
|
@@ -277,6 +288,16 @@ export interface VerifyRecordOptions {
|
|
|
277
288
|
* NOT depend on @atrib/directory.
|
|
278
289
|
*/
|
|
279
290
|
identityClaim?: ResolvedIdentityClaim;
|
|
291
|
+
/**
|
|
292
|
+
* Caller-supplied AP2 / Verifiable Intent evidence for transaction
|
|
293
|
+
* records. The signed atrib record commits to transaction payload hashes,
|
|
294
|
+
* not full AP2 / VI bodies, so the verifier does not fetch or infer this
|
|
295
|
+
* object. When supplied for a transaction record, the async AP2 / VI
|
|
296
|
+
* checker runs and attaches its result as `ap2_vi_evidence`.
|
|
297
|
+
*/
|
|
298
|
+
ap2ViEvidence?: Ap2ViEvidenceBundle;
|
|
299
|
+
/** Options passed through to `verifyAp2ViEvidenceAsync()`. */
|
|
300
|
+
ap2ViEvidenceOptions?: VerifyAp2ViEvidenceOptions;
|
|
280
301
|
}
|
|
281
302
|
/**
|
|
282
303
|
* Verify one signed record.
|
|
@@ -315,7 +336,8 @@ declare function resolveCapabilityCheck(record: AtribRecord, claim: ResolvedIden
|
|
|
315
336
|
* For each entry in `record.signers`, verify the Ed25519 signature
|
|
316
337
|
* against the cross-attestation canonical bytes (JCS form with
|
|
317
338
|
* `signers: []` and the top-level `signature` field omitted). Count
|
|
318
|
-
* valid
|
|
339
|
+
* distinct valid signer keys; flag `missing: true` when fewer than 2
|
|
340
|
+
* independent keys verify.
|
|
319
341
|
*
|
|
320
342
|
* Per §1.7.6 mismatches are SIGNALS, not invalidation: missing
|
|
321
343
|
* cross-attestation does NOT push to `warnings[]` (which would flip
|
|
@@ -328,7 +350,7 @@ declare function detectPosture(record: AtribRecord, warnings: string[]): Posture
|
|
|
328
350
|
export declare const __test_only__: {
|
|
329
351
|
PROVENANCE_TOKEN_PATTERN: RegExp;
|
|
330
352
|
SHA256_REF_PATTERN: RegExp;
|
|
331
|
-
GRANULARITY_MULTIPLIER: Record<"
|
|
353
|
+
GRANULARITY_MULTIPLIER: Record<"min" | "s" | "ms" | "h" | "d", number>;
|
|
332
354
|
resolveProvenance: typeof resolveProvenance;
|
|
333
355
|
resolveInformedBy: typeof resolveInformedBy;
|
|
334
356
|
resolveCapabilityCheck: typeof resolveCapabilityCheck;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify-record.d.ts","sourceRoot":"","sources":["../src/verify-record.ts"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"verify-record.d.ts","sourceRoot":"","sources":["../src/verify-record.ts"],"names":[],"mappings":"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"}
|
package/dist/verify-record.js
CHANGED
|
@@ -12,9 +12,10 @@
|
|
|
12
12
|
* - informed_by_resolution: { resolved: string[], dangling: string[] } (D041 / §1.2.5, §3.2.4)
|
|
13
13
|
* - posture: { timestamp_granularity, timestamp_consistent, ...} (D045 / §8.2 / §8.3 / §8.4)
|
|
14
14
|
* - capability_check: { envelope, in_envelope, mismatches, unresolvable } (D051 / §6.7)
|
|
15
|
+
* - cross_attestation: { signers_count, signers_valid, missing } (D052 / §1.7.6)
|
|
16
|
+
* - ap2_vi_evidence: AP2 receipt + Verifiable Intent evidence result (D094 / §5.5.4)
|
|
15
17
|
*
|
|
16
18
|
* Pending annotations (tracked in DECISIONS.md P005):
|
|
17
|
-
* - cross_attestation: D052 / §1.7.6 (needs `signers[]` type addition + transaction-record signing variant in @atrib/mcp)
|
|
18
19
|
* - cross_log_*: D050 / §2.11 (needs multi-log proof-bundle infrastructure)
|
|
19
20
|
*
|
|
20
21
|
* Design note on dependencies. The capability_check annotation does NOT
|
|
@@ -26,6 +27,7 @@
|
|
|
26
27
|
*/
|
|
27
28
|
import { base64urlDecode, base64urlEncode, canonicalCrossAttestationInput, canonicalRecord, hexEncode, sha256, verifyRecord as verifyRecordSignature, } from '@atrib/mcp';
|
|
28
29
|
import * as ed from '@noble/ed25519';
|
|
30
|
+
import { verifyAp2ViEvidenceAsync } from './ap2-vi-evidence.js';
|
|
29
31
|
const PROVENANCE_TOKEN_PATTERN = /^[A-Za-z0-9_-]{22}$/;
|
|
30
32
|
const SHA256_REF_PATTERN = /^sha256:[0-9a-f]{64}$/;
|
|
31
33
|
// §8.2 hashed tool_name form per D061. The verbatim and opaque-label forms
|
|
@@ -51,20 +53,23 @@ const GRANULARITY_MULTIPLIER = {
|
|
|
51
53
|
export async function verifyRecord(record, options = {}) {
|
|
52
54
|
const warnings = [];
|
|
53
55
|
// §1.2.1 + §1.7.6: the top-level `signature` field is OPTIONAL on
|
|
54
|
-
// transaction records that carry the `signers[]` array.
|
|
55
|
-
//
|
|
56
|
-
//
|
|
57
|
-
//
|
|
56
|
+
// transaction records that carry the `signers[]` array. For that shape,
|
|
57
|
+
// the creator's signer entry is the record's base signature path. Other
|
|
58
|
+
// signers stay cross-attestation evidence and do not make a record valid
|
|
59
|
+
// on behalf of the top-level creator.
|
|
58
60
|
const isTransaction = record.event_type === 'https://atrib.dev/v1/types/transaction';
|
|
59
61
|
const hasSignersArray = Array.isArray(record.signers) && record.signers.length > 0;
|
|
60
|
-
const
|
|
62
|
+
const useCreatorSignerSignature = isTransaction && hasSignersArray;
|
|
61
63
|
let signatureOk = false;
|
|
62
|
-
if (
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
64
|
+
if (useCreatorSignerSignature) {
|
|
65
|
+
try {
|
|
66
|
+
signatureOk = await verifyCreatorSignerSignature(record);
|
|
67
|
+
if (!signatureOk)
|
|
68
|
+
warnings.push('creator signer verification failed');
|
|
69
|
+
}
|
|
70
|
+
catch (err) {
|
|
71
|
+
warnings.push(`creator signer verification error: ${err.message}`);
|
|
72
|
+
}
|
|
68
73
|
}
|
|
69
74
|
else {
|
|
70
75
|
try {
|
|
@@ -107,9 +112,39 @@ export async function verifyRecord(record, options = {}) {
|
|
|
107
112
|
if (record.event_type === 'https://atrib.dev/v1/types/transaction') {
|
|
108
113
|
result.cross_attestation = await resolveCrossAttestation(record);
|
|
109
114
|
}
|
|
115
|
+
if (options.ap2ViEvidence !== undefined) {
|
|
116
|
+
if (record.event_type === 'https://atrib.dev/v1/types/transaction') {
|
|
117
|
+
try {
|
|
118
|
+
result.ap2_vi_evidence = await verifyAp2ViEvidenceAsync(options.ap2ViEvidence, options.ap2ViEvidenceOptions);
|
|
119
|
+
}
|
|
120
|
+
catch (err) {
|
|
121
|
+
result.ap2_vi_evidence = ap2ViEvidenceErrorResult(err);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
warnings.push('ap2_vi_evidence supplied for non-transaction record');
|
|
126
|
+
}
|
|
127
|
+
}
|
|
110
128
|
result.valid = signatureOk && warnings.length === 0;
|
|
111
129
|
return result;
|
|
112
130
|
}
|
|
131
|
+
function ap2ViEvidenceErrorResult(err) {
|
|
132
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
133
|
+
return {
|
|
134
|
+
valid: false,
|
|
135
|
+
transactionAccepted: false,
|
|
136
|
+
ap2: {},
|
|
137
|
+
vi: {
|
|
138
|
+
mode: 'unknown',
|
|
139
|
+
credentials: [],
|
|
140
|
+
delegationOk: null,
|
|
141
|
+
checkoutPaymentBindingOk: null,
|
|
142
|
+
constraints: { status: 'not_checked', checks: [] },
|
|
143
|
+
},
|
|
144
|
+
errors: [`ap2_vi_evidence verification error: ${message}`],
|
|
145
|
+
warnings: [],
|
|
146
|
+
};
|
|
147
|
+
}
|
|
113
148
|
function resolveProvenance(token, upstreamCandidate) {
|
|
114
149
|
if (!upstreamCandidate) {
|
|
115
150
|
return { token, upstream_record_hash: null, upstream_resolved: false };
|
|
@@ -204,7 +239,8 @@ function resolveCapabilityCheck(record, claim, _warnings) {
|
|
|
204
239
|
// Future API extension: accept resolved amount + counterparty as
|
|
205
240
|
// VerifyRecordOptions inputs if a real consumer needs it.
|
|
206
241
|
if (record.event_type === 'https://atrib.dev/v1/types/transaction') {
|
|
207
|
-
if (envelope.max_amount ||
|
|
242
|
+
if (envelope.max_amount ||
|
|
243
|
+
(Array.isArray(envelope.counterparties) && envelope.counterparties.length > 0)) {
|
|
208
244
|
unresolvable = true;
|
|
209
245
|
}
|
|
210
246
|
}
|
|
@@ -221,7 +257,8 @@ function resolveCapabilityCheck(record, claim, _warnings) {
|
|
|
221
257
|
* For each entry in `record.signers`, verify the Ed25519 signature
|
|
222
258
|
* against the cross-attestation canonical bytes (JCS form with
|
|
223
259
|
* `signers: []` and the top-level `signature` field omitted). Count
|
|
224
|
-
* valid
|
|
260
|
+
* distinct valid signer keys; flag `missing: true` when fewer than 2
|
|
261
|
+
* independent keys verify.
|
|
225
262
|
*
|
|
226
263
|
* Per §1.7.6 mismatches are SIGNALS, not invalidation: missing
|
|
227
264
|
* cross-attestation does NOT push to `warnings[]` (which would flip
|
|
@@ -247,7 +284,7 @@ async function resolveCrossAttestation(record) {
|
|
|
247
284
|
// if it does, treat all signers as unverifiable.
|
|
248
285
|
return { signers_count, signers_valid: 0, missing: true };
|
|
249
286
|
}
|
|
250
|
-
|
|
287
|
+
const validSignerKeys = new Set();
|
|
251
288
|
for (const entry of signers) {
|
|
252
289
|
if (typeof entry?.creator_key !== 'string' || typeof entry?.signature !== 'string')
|
|
253
290
|
continue;
|
|
@@ -256,18 +293,40 @@ async function resolveCrossAttestation(record) {
|
|
|
256
293
|
const sig = base64urlDecode(entry.signature);
|
|
257
294
|
const ok = await ed.verifyAsync(sig, canonicalBytes, pubKey);
|
|
258
295
|
if (ok)
|
|
259
|
-
|
|
296
|
+
validSignerKeys.add(entry.creator_key);
|
|
260
297
|
}
|
|
261
298
|
catch {
|
|
262
299
|
// Malformed key/sig bytes: skip without counting.
|
|
263
300
|
}
|
|
264
301
|
}
|
|
302
|
+
const signers_valid = validSignerKeys.size;
|
|
265
303
|
return {
|
|
266
304
|
signers_count,
|
|
267
305
|
signers_valid,
|
|
268
306
|
missing: signers_valid < 2,
|
|
269
307
|
};
|
|
270
308
|
}
|
|
309
|
+
async function verifyCreatorSignerSignature(record) {
|
|
310
|
+
const signers = Array.isArray(record.signers) ? record.signers : [];
|
|
311
|
+
const creatorSigners = signers.filter((entry) => entry.creator_key === record.creator_key);
|
|
312
|
+
if (creatorSigners.length === 0)
|
|
313
|
+
return false;
|
|
314
|
+
const verifyInput = canonicalCrossAttestationInput(record);
|
|
315
|
+
for (const creatorSigner of creatorSigners) {
|
|
316
|
+
try {
|
|
317
|
+
const pubKey = base64urlDecode(creatorSigner.creator_key);
|
|
318
|
+
const sig = base64urlDecode(creatorSigner.signature);
|
|
319
|
+
if (pubKey.length !== 32 || sig.length !== 64)
|
|
320
|
+
continue;
|
|
321
|
+
if (await ed.verifyAsync(sig, verifyInput, pubKey))
|
|
322
|
+
return true;
|
|
323
|
+
}
|
|
324
|
+
catch {
|
|
325
|
+
// Try the next matching signer entry.
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
return false;
|
|
329
|
+
}
|
|
271
330
|
function detectPosture(record, warnings) {
|
|
272
331
|
const declared = record.timestamp_granularity;
|
|
273
332
|
const explicit = typeof declared === 'string';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify-record.js","sourceRoot":"","sources":["../src/verify-record.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC
|
|
1
|
+
{"version":3,"file":"verify-record.js","sourceRoot":"","sources":["../src/verify-record.ts"],"names":[],"mappings":"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"}
|