@atrib/verify 0.8.3 → 0.10.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 CHANGED
@@ -1,6 +1,6 @@
1
1
  # `@atrib/verify`
2
2
 
3
- **Independent verification for atrib's verifiable action layer. Checks signed records, evidence blocks, handoff packets, and settlement documents. Re-runs the spec [§4.6](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#46-the-calculation-algorithm) calculation algorithm locally and checks the result against what a recommendation document claims. No trust in any intermediary required.**
3
+ **Independent verification for atrib's verifiable action layer. Checks signed records, evidence blocks, handoff packets, and settlement documents. Re-runs the [payments profile §8](https://github.com/creatornader/atrib/blob/main/docs/payments-profile.md#8-the-calculation-algorithm) calculation algorithm (relocated from [spec §4.6](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#46-the-calculation-algorithm) per [D147](https://github.com/creatornader/atrib/blob/main/DECISIONS.md#d147-payments-profile-spin-out-from-protocol-core)) locally and checks the result against what a recommendation document claims. No trust in any intermediary required.**
4
4
 
5
5
  This is the **verifier half** of the atrib protocol, used by merchants closing transactions, auditors checking agent activity, teams accepting handoffs, policy systems reviewing high-impact actions, regulators querying historical state, and any party that needs to validate atrib data independently. The agent and tool servers produce signed attribution records. The Merkle log stores them. This package answers the questions any verifier has to answer: _given the graph and the policy, is this distribution actually correct? Was this record actually signed by the key it claims? Did this action actually happen at the time it claims?_
6
6
 
@@ -66,6 +66,10 @@ Per the [§5.8](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#58
66
66
 
67
67
  ## API reference
68
68
 
69
+ Payment-specific APIs now also ship at `@atrib/verify/payments`:
70
+ `verifySettlementRecommendation`, `calculate`, `verifyAp2ViEvidence`, and
71
+ `verifyAp2ViEvidenceAsync`. Root exports remain during the deprecation cycle.
72
+
69
73
  ### `new AtribVerifier(options)`
70
74
 
71
75
  | Field | Type | Default | Description |
@@ -96,6 +100,10 @@ const result = await verifyRecord(record, {
96
100
  authorizationEvidence, // optional, OAuth/MCP, AAuth, or x401 evidence blocks
97
101
  ap2ViEvidence, // optional, transaction-only AP2 / VI evidence bundle
98
102
  ap2ViEvidenceOptions, // optional, passed to verifyAp2ViEvidenceAsync()
103
+ trustedCreatorKeys, // optional, trusted transaction signer keys
104
+ delegationCertificates, // optional, certificates for the §1.11 walk
105
+ proofBundle, // optional, post-signing anchor proofs for this record
106
+ anchorTrust, // required with proofBundle; caller-owned anchor trust policy
99
107
  })
100
108
  // result: {
101
109
  // valid: boolean
@@ -106,6 +114,9 @@ const result = await verifyRecord(record, {
106
114
  // capability_check?: { envelope, in_envelope, mismatches, unresolvable }
107
115
  // evidence?: EvidenceVerificationBlock[]
108
116
  // ap2_vi_evidence?: Ap2ViEvidenceVerification
117
+ // cross_attestation?: CrossAttestationAnnotation
118
+ // delegation?: DelegationOutcome
119
+ // anchor_plurality?: AnchorPluralityVerdict
109
120
  // warnings: string[]
110
121
  // }
111
122
  ```
@@ -117,16 +128,14 @@ const result = await verifyRecord(record, {
117
128
  - `posture`: `{ timestamp_granularity, timestamp_consistent, timestamp_granularity_explicit, args_commitment_form, result_commitment_form, tool_name_form }` ([D045](https://github.com/creatornader/atrib/blob/main/DECISIONS.md#d045-privacy-postures-normative-spec-section) / [D061](https://github.com/creatornader/atrib/blob/main/DECISIONS.md#d061-add-tool_name-args_hash-result_hash-fields-to-§121) / [§8.2](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#82-opaque-name-posture) / [§8.3](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#83-salted-commitment-posture) / [§8.4](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#84-coarsened-timing-posture)). Always populated. Surfaces (a) the declared timing granularity, whether the timestamp value structurally matches the spec's trailing-zero invariant, and whether the field was explicitly set vs defaulted; (b) the structurally-detected `args_hash` / `result_hash` commitment scheme: `'salted-sha256'` when `args_salt` / `result_salt` is present, `'plain-sha256'` otherwise (the `'hmac-sha256'` variant from [§8.3](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#83-salted-commitment-posture) is signaled out-of-band and is not structurally detectable); and (c) the [§8.2](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#82-opaque-name-posture) `tool_name_form`: `'hashed'` when `tool_name` matches `^sha256:[0-9a-f]{64}$`, `'plain'` for any other present value, `null` when the field is absent. Per [D061](https://github.com/creatornader/atrib/blob/main/DECISIONS.md#d061-add-tool_name-args_hash-result_hash-fields-to-121) the [§8.2](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#82-opaque-name-posture) verbatim-vs-opaque distinction is NOT structurally detectable, both surface as `'plain'`.
118
129
  - `capability_check`: `{ envelope, in_envelope, mismatches, unresolvable }` ([D051](https://github.com/creatornader/atrib/blob/main/DECISIONS.md#d051-capability-scoped-records-via-directory-published-envelopes) / [§6.7](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#67-capability-declarations)). Populated only when the caller passes a resolved `identityClaim` in options. Checks the record's `event_type` against the envelope's `event_types` allowlist and the record's `timestamp` against `expires_at`. `tool_names`, `max_amount`, and `counterparties` are checked when the caller supplies `resolvedFacts` from the local body or protocol event. Missing facts flag `unresolvable: true` rather than passing silently. Per [§6.7.3](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#673-out-of-envelope-records) out-of-envelope is a signal, not invalidation: mismatches do not flip `valid` to false. The caller is responsible for fetching the active envelope at the record's timestamp via `@atrib/directory`'s `lookup()` (or a cached equivalent); `@atrib/verify` intentionally has no `@atrib/directory` dependency.
119
130
  - `cross_attestation`: `{ signers_count, signers_valid, missing }` ([D052](https://github.com/creatornader/atrib/blob/main/DECISIONS.md#d052-cross-attestation-requirement-for-transaction-records) / [§1.7.6](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#176-cross-attestation-requirement-for-transaction-records)). Populated only on transaction records (`event_type = transaction`). Each entry in `signers[]` is verified against the cross-attestation canonical bytes (JCS form with `signers: []` and the top-level `signature` field omitted, per [§1.7.6](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#176-cross-attestation-requirement-for-transaction-records)). `signatureOk` requires a valid signer entry whose `creator_key` matches the record's top-level `creator_key`; unrelated counterparty signers do not validate the record on behalf of its creator. `missing: true` when fewer than 2 distinct signer keys verify, atrib's normative minimum. Duplicate entries from one key do not inflate `signers_valid`. Per [§1.7.6](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#176-cross-attestation-requirement-for-transaction-records) missing is a signal, not invalidation: `valid` stays true if the underlying signature path holds. Agent-side Path 2 fallback records usually surface as `signers_count: 1, missing: true` until a counterparty signs the same bytes. Legacy single-signer transaction records (no `signers[]` array, only top-level `signature`) surface as `signers_count: 0, missing: true` so consumers can flag them while accepting the cryptographic validity.
131
+ - Trusted signer composition ([D149](https://github.com/creatornader/atrib/blob/main/DECISIONS.md#d149-cross-attestation-composes-with-a-trust-set-for-sybil-resistance) / [§1.7.6](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#176-cross-attestation-requirement-for-transaction-records)): pass `trustedCreatorKeys` to `verifyRecord` and the annotation additionally carries `signers_trusted` (distinct verified keys that are in the trust set) and `sybil_suspected` (`signers_valid >= 2` but `signers_trusted < 2`, e.g. two untrusted keys signing the same bytes). `signers_valid` counts verified keys, not trusted ones, so a consumer requiring non-malleable authority MUST gate on the exported `isTrustedCrossAttested(annotation)` (i.e. `signers_trusted >= 2`), not on `signers_valid >= 2` alone. `trust_evaluated` is always present on transaction cross_attestation: `false` is a loud signal that no trust set was supplied and only the trust-blind count was computed, so a consumer gating an action can tell the trust check was skipped. `signers_trusted` / `sybil_suspected` are omitted until a trust set is passed, and, like `missing`, are a signal that never flips `valid`.
132
+ - `delegation`: the [§1.11.4 certificate walk](../../atrib-spec.md#1114-verifier-walk). Pass `delegationCertificates` and, when available, the context genesis record and revoked-key set. The result identifies a principal at depth one, certificate validity, window and context facts, scope facts, revocation, ambiguity, and unresolved commitments. It never changes signature validity.
133
+ - `anchor_plurality`: the [D138 §2.11 result](../../DECISIONS.md#d138-anchor-plurality-as-the-default-trust-posture). Pass both `proofBundle` and `anchorTrust`. The result reports verified, pending, malformed, and independent anchor counts, plurality and single-anchor tier facts, and cross-log hard-rejection facts. The bundle must commit to the record's canonical hash. A missing paired option, a mismatched bundle, or a hard anchor rejection adds a warning.
134
+
135
+ - `resolveAttestationCorroboration(options)` / `isCorroborated(result, N)` ([D150](https://github.com/creatornader/atrib/blob/main/DECISIONS.md#d150-attestation-is-corroboration-generalized-off-transactions-extension-first) / [§8.7.6](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#876-attestation-corroboration-extension)): the general form of Layer 5 corroboration, lifted off transactions. An attestation is a separate signed extension-URI record (`https://atrib.dev/v1/extensions/attestation`) in which a signer that is NOT the target's producer vouches for a target record by reference, content `{ attests: 'reliable', target, reason? }` committed via `args_hash`. `resolveAttestationCorroboration` aggregates distinct verified attestors of a target and, reusing the [D149](https://github.com/creatornader/atrib/blob/main/DECISIONS.md#d149-cross-attestation-composes-with-a-trust-set-for-sybil-resistance) trust-set model, surfaces `attestors_valid` / `attestors_trusted` / `under_corroborated` / `trust_evaluated`. It counts ONLY `attests: 'reliable'` records (never annotation records) and rejects self-attestation, so recall-tagging cannot masquerade as trust. `isCorroborated(result, N)` (`attestors_trusted >= N`, default 2) is the guarded gate. Signal only: never flips `valid`; the fail-closed requirement lives in `@atrib/action-gate` `requireCorroborated`.
120
136
  - `evidence`: generic tiered external authorization evidence blocks ([D109](https://github.com/creatornader/atrib/blob/main/DECISIONS.md#d109-mcpoauth-authorization-evidence-uses-generic-tiered-evidence-blocks) / [§5.5.6](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#556-generic-authorization-evidence-blocks)). Populated when the caller passes `authorizationEvidence` or when AP2 / VI evidence is mirrored into the generic shape. Each block has `{ valid, protocol, issuer, subject, scope, attenuation_ok, delegation_ok, constraints, errors, warnings }`. Current authorization adapters are MCP/OAuth, AAuth, and x401. These blocks do not alter `valid`, `signatureOk`, or `capability_check`.
121
137
  - `ap2_vi_evidence`: the async AP2 / VI verifier result ([D094](https://github.com/creatornader/atrib/blob/main/DECISIONS.md#d094-ap2--vi-evidence-attaches-to-verifier-results-as-a-tiered-block) / [§5.5.4](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#554-ap2--verifiable-intent-evidence-checks)). Populated only when the caller passes `ap2ViEvidence` for a transaction record. It does not alter `valid`, `signatureOk`, or `cross_attestation`; consumers inspect `ap2_vi_evidence.valid` for AP2 authorization evidence.
122
138
 
123
- **Pending per-record annotations** (tracked as a Pending decision in [DECISIONS.md P005](https://github.com/creatornader/atrib/blob/main/DECISIONS.md#p005-reconcile-atribverify-readme-per-record-annotations-with-actual-code-surface)):
124
-
125
- - `cross_log_proof_count` / `cross_log_threshold_met` / `cross_log_equivocation_detected` ([D050](https://github.com/creatornader/atrib/blob/main/DECISIONS.md#d050-cross-log-replication-for-equivocation-defense) / [§2.11](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#211-cross-log-replication)): requires multi-log proof-bundle parsing and trusted-log-set config.
126
- (Note: `tool_name_form`, `args_commitment_form`, and `result_commitment_form` per [§8.2](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#82-opaque-name-posture)/[§8.3](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#83-salted-commitment-posture) are all now implemented under `posture` above. [D061](https://github.com/creatornader/atrib/blob/main/DECISIONS.md#d061-add-tool_name-args_hash-result_hash-fields-to-121) added `tool_name`, `args_hash`, and `result_hash` to the [§1.2.1](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#121-field-definitions) canonical record schema, completing the structural inputs.)
127
-
128
- Each pending annotation is its own ADR scope when external consumers need it.
129
-
130
139
  ### `verifyHandoffClaims(claims, options): Promise<HandoffVerificationResult>`
131
140
 
132
141
  Verifier-side Pattern 3 handoff acceptance. Use this when one agent receives another agent's `record_hash` claim and needs to verify the supplied record, private body material, and proof before signing its own `informed_by` follow-up.
@@ -500,9 +509,9 @@ Run them with `pnpm --filter @atrib/verify test`.
500
509
  | Spec section | What this package implements |
501
510
  | ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------- |
502
511
  | [§3](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#3-graph-query-interface) | Graph query interface (client side) |
503
- | [§4.3](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#43-the-default-policy) | Default policy document |
504
- | [§4.6](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#46-the-calculation-algorithm) | Pure calculation algorithm |
505
- | [§4.7](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#47-settlement-recommendation-document) | Recommendation document signing/verification |
512
+ | [Payments profile §5](https://github.com/creatornader/atrib/blob/main/docs/payments-profile.md#5-the-default-policy) | Default policy document (relocated from [spec §4.3](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#43-the-default-policy) per [D147](https://github.com/creatornader/atrib/blob/main/DECISIONS.md#d147-payments-profile-spin-out-from-protocol-core)) |
513
+ | [Payments profile §8](https://github.com/creatornader/atrib/blob/main/docs/payments-profile.md#8-the-calculation-algorithm) | Pure calculation algorithm (relocated from [spec §4.6](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#46-the-calculation-algorithm)) |
514
+ | [Payments profile §9](https://github.com/creatornader/atrib/blob/main/docs/payments-profile.md#9-settlement-recommendation-document) | Recommendation document signing/verification (relocated from [spec §4.7](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#47-settlement-recommendation-document)) |
506
515
  | [§5.5](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#55-atribverify-merchant-verification-library) | `AtribVerifier` class. `verify()` and `calculate()` |
507
516
  | [§5.5.4](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#554-ap2--verifiable-intent-evidence-checks) | AP2 / VI evidence checks |
508
517
  | [§5.8](https://github.com/creatornader/atrib/blob/main/atrib-spec.md#58-degradation-contract) | Degradation contract; failures never break the host |
@@ -0,0 +1,86 @@
1
+ import { type AtribRecord } from '@atrib/mcp';
2
+ /** Extension event_type URI for attestation records (D150, extension-first). */
3
+ export declare const EVENT_TYPE_ATTESTATION_EXT_URI = "https://atrib.dev/v1/extensions/attestation";
4
+ /** Reserved content contract of an attestation record. */
5
+ export interface AttestationContent {
6
+ /** Reserved marker. Only `'reliable'` is counted as a trust vouch. */
7
+ attests: 'reliable';
8
+ /** `'sha256:<64-hex>'` record_hash of the corroborated target record. */
9
+ target: string;
10
+ /** Optional free-text rationale (local sidecar; committed via args_hash). */
11
+ reason?: string;
12
+ }
13
+ /** One caller-supplied attestation: the signed record plus its committed content. */
14
+ export interface AttestationInput {
15
+ record: AtribRecord;
16
+ content: AttestationContent;
17
+ }
18
+ export interface AttestationCorroborationOptions {
19
+ /** `'sha256:<64-hex>'` record_hash of the record being corroborated. */
20
+ targetRecordHash: string;
21
+ /**
22
+ * creator_key of the target record. When supplied, an attestation whose
23
+ * signer equals it is rejected as self-attestation (a producer cannot
24
+ * corroborate itself). Strongly recommended.
25
+ */
26
+ targetCreatorKey?: string;
27
+ /** Attestation records claiming to vouch for the target. */
28
+ attestations: AttestationInput[];
29
+ /**
30
+ * Base64url Ed25519 keys the verifier trusts as independent attesting
31
+ * principals (§1.7.6 / D149 trust vocabulary). When supplied, the verdict
32
+ * adds `attestors_trusted` / `under_corroborated`. Omitted: trust-blind.
33
+ */
34
+ trustedCreatorKeys?: string[];
35
+ /** Corroboration minimum. Default 2 (matching the cross-attestation minimum). */
36
+ minCorroborators?: number;
37
+ }
38
+ export interface AttestationCorroborationResult {
39
+ target: string;
40
+ /** Attestation records supplied for this target (regardless of validity). */
41
+ attestors_count: number;
42
+ /**
43
+ * Distinct verified attestor keys: signature verifies, event_type is the
44
+ * attestation URI, content commitment (args_hash) matches, `attests` is
45
+ * `'reliable'`, `target` matches, and the signer is not the target producer.
46
+ * Trust-blind, like cross_attestation.signers_valid.
47
+ */
48
+ attestors_valid: number;
49
+ /** `true` iff `attestors_valid < minCorroborators` (trust-blind minimum). */
50
+ missing: boolean;
51
+ /**
52
+ * Always present. `false` is a loud signal that no trust set was supplied and
53
+ * only the trust-blind count was computed; a consumer gating an action MUST
54
+ * NOT read `attestors_valid >= N` as trusted corroboration without a trust set.
55
+ */
56
+ trust_evaluated: boolean;
57
+ /** Distinct verified attestor keys also in the trust set. Present iff `trust_evaluated`. */
58
+ attestors_trusted?: number;
59
+ /**
60
+ * `true` iff `attestors_valid >= minCorroborators` but `attestors_trusted <
61
+ * minCorroborators`: corroborated by count but not by trusted principals (the
62
+ * Sybil analog of `sybil_suspected`). Present iff `trust_evaluated`.
63
+ */
64
+ under_corroborated?: boolean;
65
+ /** Per-rejected-attestation reasons (signal; does not invalidate anything). */
66
+ rejected: Array<{
67
+ attestor_key?: string;
68
+ reasons: string[];
69
+ }>;
70
+ }
71
+ /**
72
+ * Aggregate independent attestation records into a corroboration verdict for a
73
+ * target record. Reuses the D149 trust-set intersection: `attestors_valid`
74
+ * stays trust-blind; when a trust set is supplied, `attestors_trusted` and
75
+ * `under_corroborated` are added. Never flips any record's validity.
76
+ */
77
+ export declare function resolveAttestationCorroboration(opts: AttestationCorroborationOptions): Promise<AttestationCorroborationResult>;
78
+ /**
79
+ * Non-malleable corroboration predicate. Returns `true` iff at least
80
+ * `min` (default 2) distinct verified attestor keys are in the trust set. This
81
+ * is the guarded gate a consumer requiring trusted corroboration MUST use, in
82
+ * place of the footgun `attestors_valid >= N` (which untrusted attestors also
83
+ * satisfy). Returns `false` when trust was not evaluated.
84
+ */
85
+ export declare function isCorroborated(result: AttestationCorroborationResult | undefined, min?: number): boolean;
86
+ //# sourceMappingURL=attestation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attestation.d.ts","sourceRoot":"","sources":["../src/attestation.ts"],"names":[],"mappings":"AA8BA,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,YAAY,CAAA;AAGhE,gFAAgF;AAChF,eAAO,MAAM,8BAA8B,gDACI,CAAA;AAE/C,0DAA0D;AAC1D,MAAM,WAAW,kBAAkB;IACjC,sEAAsE;IACtE,OAAO,EAAE,UAAU,CAAA;IACnB,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAA;IACd,6EAA6E;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,qFAAqF;AACrF,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,WAAW,CAAA;IACnB,OAAO,EAAE,kBAAkB,CAAA;CAC5B;AAED,MAAM,WAAW,+BAA+B;IAC9C,wEAAwE;IACxE,gBAAgB,EAAE,MAAM,CAAA;IACxB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,4DAA4D;IAC5D,YAAY,EAAE,gBAAgB,EAAE,CAAA;IAChC;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC7B,iFAAiF;IACjF,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,MAAM,WAAW,8BAA8B;IAC7C,MAAM,EAAE,MAAM,CAAA;IACd,6EAA6E;IAC7E,eAAe,EAAE,MAAM,CAAA;IACvB;;;;;OAKG;IACH,eAAe,EAAE,MAAM,CAAA;IACvB,6EAA6E;IAC7E,OAAO,EAAE,OAAO,CAAA;IAChB;;;;OAIG;IACH,eAAe,EAAE,OAAO,CAAA;IACxB,4FAA4F;IAC5F,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,+EAA+E;IAC/E,QAAQ,EAAE,KAAK,CAAC;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAA;CAC9D;AAWD;;;;;GAKG;AACH,wBAAsB,+BAA+B,CACnD,IAAI,EAAE,+BAA+B,GACpC,OAAO,CAAC,8BAA8B,CAAC,CAgDzC;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,8BAA8B,GAAG,SAAS,EAClD,GAAG,SAAI,GACN,OAAO,CAET"}
@@ -0,0 +1,111 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ /**
3
+ * Attestation corroboration (D150, extension-first).
4
+ *
5
+ * Cross-attestation (§1.7.6 / D052 / D149) is corroboration via CO-SIGNATURE of
6
+ * shared transaction bytes: two parties sign the SAME record. Attestation is the
7
+ * general form: corroboration via independent REFERENCE to any target record. A
8
+ * signer Z who is NOT the target's producer emits a separate signed record that
9
+ * vouches for target X's reliability. The verifier aggregates distinct trusted
10
+ * attestors into a corroboration verdict, reusing the D149 trust-set model.
11
+ *
12
+ * Extension-first per D036 / D080: an attestation is an extension-URI record
13
+ * (`https://atrib.dev/v1/extensions/attestation`), NOT a new normative
14
+ * event_type byte, whose content `{ attests: 'reliable', target, reason? }` is
15
+ * committed via `args_hash` (D099) so it is tamper-evident. Promotion to a
16
+ * normative byte + dedicated edge type happens only if real use justifies it.
17
+ *
18
+ * Distinct from annotation (D058 / §1.2.7): annotation is commentary /
19
+ * importance and atrib explicitly does NOT certify it characterizes its target;
20
+ * attestation carries the reserved `attests` marker and means "I vouch this is
21
+ * reliable". The verifier counts ONLY attestation-marked records and NEVER
22
+ * annotation records, so recall-tagging cannot masquerade as corroboration.
23
+ *
24
+ * Signal not block, like §1.7.6 / §6.7: the verdict never flips a record's
25
+ * validity. The fail-closed "require N corroborators" gate lives in
26
+ * `@atrib/action-gate` (`requireCorroborated`), not here.
27
+ */
28
+ import canonicalize from 'canonicalize';
29
+ import { sha256, hexEncode } from '@atrib/mcp';
30
+ import { verifyRecord } from './verify-record.js';
31
+ /** Extension event_type URI for attestation records (D150, extension-first). */
32
+ export const EVENT_TYPE_ATTESTATION_EXT_URI = 'https://atrib.dev/v1/extensions/attestation';
33
+ function commitmentMatches(record, content) {
34
+ const argsHash = record.args_hash;
35
+ if (typeof argsHash !== 'string')
36
+ return false;
37
+ const canonical = canonicalize(content);
38
+ if (typeof canonical !== 'string')
39
+ return false;
40
+ const digest = 'sha256:' + hexEncode(sha256(new TextEncoder().encode(canonical)));
41
+ return digest === argsHash;
42
+ }
43
+ /**
44
+ * Aggregate independent attestation records into a corroboration verdict for a
45
+ * target record. Reuses the D149 trust-set intersection: `attestors_valid`
46
+ * stays trust-blind; when a trust set is supplied, `attestors_trusted` and
47
+ * `under_corroborated` are added. Never flips any record's validity.
48
+ */
49
+ export async function resolveAttestationCorroboration(opts) {
50
+ const rejected = [];
51
+ const validAttestorKeys = new Set();
52
+ for (const item of opts.attestations) {
53
+ const reasons = [];
54
+ const record = item.record;
55
+ const content = item.content;
56
+ if (record.event_type !== EVENT_TYPE_ATTESTATION_EXT_URI)
57
+ reasons.push('not_attestation');
58
+ if (content?.attests !== 'reliable')
59
+ reasons.push('not_reliable_marker');
60
+ if (content?.target !== opts.targetRecordHash)
61
+ reasons.push('wrong_target');
62
+ if (opts.targetCreatorKey && record.creator_key === opts.targetCreatorKey) {
63
+ reasons.push('self_attestation');
64
+ }
65
+ if (!commitmentMatches(record, content))
66
+ reasons.push('uncommitted_content');
67
+ if (reasons.length === 0) {
68
+ const result = await verifyRecord(record);
69
+ if (result.signatureOk)
70
+ validAttestorKeys.add(record.creator_key);
71
+ else
72
+ reasons.push('signature_invalid');
73
+ }
74
+ if (reasons.length > 0) {
75
+ rejected.push({ attestor_key: record.creator_key, reasons });
76
+ }
77
+ }
78
+ const min = opts.minCorroborators ?? 2;
79
+ const attestors_valid = validAttestorKeys.size;
80
+ const base = {
81
+ target: opts.targetRecordHash,
82
+ attestors_count: opts.attestations.length,
83
+ attestors_valid,
84
+ missing: attestors_valid < min,
85
+ trust_evaluated: opts.trustedCreatorKeys !== undefined,
86
+ rejected,
87
+ };
88
+ if (opts.trustedCreatorKeys === undefined)
89
+ return base;
90
+ const trustSet = new Set(opts.trustedCreatorKeys);
91
+ let attestors_trusted = 0;
92
+ for (const key of validAttestorKeys)
93
+ if (trustSet.has(key))
94
+ attestors_trusted++;
95
+ return {
96
+ ...base,
97
+ attestors_trusted,
98
+ under_corroborated: attestors_valid >= min && attestors_trusted < min,
99
+ };
100
+ }
101
+ /**
102
+ * Non-malleable corroboration predicate. Returns `true` iff at least
103
+ * `min` (default 2) distinct verified attestor keys are in the trust set. This
104
+ * is the guarded gate a consumer requiring trusted corroboration MUST use, in
105
+ * place of the footgun `attestors_valid >= N` (which untrusted attestors also
106
+ * satisfy). Returns `false` when trust was not evaluated.
107
+ */
108
+ export function isCorroborated(result, min = 2) {
109
+ return (result?.attestors_trusted ?? 0) >= min;
110
+ }
111
+ //# sourceMappingURL=attestation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attestation.js","sourceRoot":"","sources":["../src/attestation.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { type AtribRecord } from '@atrib/mcp';
2
+ import type { IdentityResolution } from './resolve-identity.js';
2
3
  /** §6.7.1 capability envelope schema, reused verbatim as the cert scope (§1.11.1). */
3
4
  export interface DelegationScope {
4
5
  tool_names?: string[];
@@ -9,6 +10,25 @@ export interface DelegationScope {
9
10
  };
10
11
  counterparties?: string[];
11
12
  expires_at?: number;
13
+ cost_policy?: DelegationCostPolicy;
14
+ }
15
+ /**
16
+ * §6.7.1 `cost_policy` sub-field (D165): the compute-spend scope of a
17
+ * delegated run. `model_tiers` is an allowlist of host-defined tier labels
18
+ * (free-form strings, same idiom as `tool_names`); `max_tokens` caps the
19
+ * certified run's total token spend. Both sub-fields are individually
20
+ * optional; absence means no constraint. Like every §6.7 constraint the
21
+ * outputs are signals, never invalidation (§6.7.3), and enforcement stays
22
+ * host-side: the protocol records the grant, the orchestrator enforces it.
23
+ */
24
+ export interface DelegationCostPolicy {
25
+ model_tiers?: string[];
26
+ max_tokens?: number;
27
+ }
28
+ /** Caller-supplied usage facts for {@link checkCostPolicy}. */
29
+ export interface CostPolicyUsage {
30
+ model_tier?: string;
31
+ tokens_spent?: number;
12
32
  }
13
33
  /**
14
34
  * A delegation certificate per §1.11.1. Optional fields are omitted, not
@@ -98,6 +118,10 @@ export interface DelegationOutcome {
98
118
  delegation_ambiguous?: boolean;
99
119
  /** Present only alongside `delegation_ambiguous: true`. */
100
120
  candidates?: DelegationCandidate[];
121
+ /** §1.11.4 step 4 result for the resolved principal key. */
122
+ principal_identity_resolution?: IdentityResolution;
123
+ /** §1.11.4 structural anomaly: a run key has a directory claim. */
124
+ run_key_in_directory?: boolean | null;
101
125
  }
102
126
  export interface EvaluateDelegationOptions {
103
127
  /**
@@ -148,12 +172,33 @@ export declare function delegationCertErrors(cert: DelegationCertificate): Promi
148
172
  *
149
173
  * Checks the constraints resolvable from the record alone: `tool_names`
150
174
  * (when the record discloses §8.2 `tool_name`) and `event_types`.
151
- * `max_amount` / `counterparties` require protocol-event facts the
152
- * compact signed record does not carry; they produce no mismatch here
153
- * (same posture the conformance corpus pins). `attenuation_ok` is `null`
154
- * until a caller supplies the principal's directory envelope.
175
+ * `max_amount` / `counterparties` / `cost_policy` require facts the
176
+ * compact signed record does not carry (transaction amounts, counterparty
177
+ * identity, model tier and token spend); they produce no mismatch here
178
+ * (same posture the conformance corpus pins). Callers holding usage facts
179
+ * evaluate `cost_policy` with {@link checkCostPolicy}. `attenuation_ok`
180
+ * is `null` until a caller supplies the principal's directory envelope.
155
181
  */
156
182
  export declare function checkDelegationScope(record: DelegatedRecord, scope: DelegationScope): DelegationScopeCheck;
183
+ /**
184
+ * §6.7.2 cost-policy check (D165). Evaluable only when the caller holds
185
+ * usage facts: signed records do not carry model tier or token spend
186
+ * (accounting lives in local sidecar and join-record content per the
187
+ * orchestration conventions), so this never runs inside the record-only
188
+ * §1.11.4 walk. A host verifying a join, or a receiver deciding whether a
189
+ * leg stayed inside its certified grant, supplies the claimed usage and
190
+ * reads the mismatch list. Signals only, never invalidation (§6.7.3):
191
+ * an over-budget leg's records remain valid; the mismatch is a fact for
192
+ * the accepting party to weigh.
193
+ *
194
+ * Absent constraints and absent usage facts both produce no mismatch:
195
+ * a policy without `max_tokens` caps nothing, and usage without
196
+ * `tokens_spent` claims nothing checkable.
197
+ */
198
+ export declare function checkCostPolicy(policy: DelegationCostPolicy, usage: CostPolicyUsage): {
199
+ in_scope: boolean;
200
+ mismatches: string[];
201
+ };
157
202
  /**
158
203
  * The §1.11.4 verifier walk, offline and deterministic: record → run key
159
204
  * → certificate → principal. `genesis` is the context genesis record when
@@ -1 +1 @@
1
- {"version":3,"file":"delegation.d.ts","sourceRoot":"","sources":["../src/delegation.ts"],"names":[],"mappings":"AA+BA,OAAO,EAAsC,KAAK,WAAW,EAAE,MAAM,YAAY,CAAA;AASjF,sFAAsF;AACtF,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IACtB,UAAU,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAChD,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,eAAe,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,kEAAkE;AAClE,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG;IAAE,oBAAoB,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAE7E,0EAA0E;AAC1E,MAAM,MAAM,uBAAuB,GAAG,WAAW,GAAG;IAClD,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,MAAM,CAAA;IACzB,oBAAoB,CAAC,EAAE,MAAM,CAAA;CAC9B,CAAA;AAED,8DAA8D;AAC9D,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,OAAO,CAAA;IACjB;;;;OAIG;IACH,cAAc,EAAE,OAAO,GAAG,IAAI,CAAA;IAC9B,iEAAiE;IACjE,UAAU,EAAE,MAAM,EAAE,CAAA;CACrB;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,OAAO,CAAA;IAClB,aAAa,EAAE,OAAO,GAAG,IAAI,CAAA;IAC7B,UAAU,EAAE,OAAO,GAAG,IAAI,CAAA;IAC1B,WAAW,EAAE,oBAAoB,GAAG,IAAI,CAAA;CACzC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAA;IACZ,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,UAAU,EAAE,OAAO,GAAG,IAAI,CAAA;IAC1B,SAAS,EAAE,OAAO,GAAG,IAAI,CAAA;IACzB,aAAa,EAAE,OAAO,GAAG,IAAI,CAAA;IAC7B,UAAU,EAAE,OAAO,GAAG,IAAI,CAAA;IAC1B,WAAW,EAAE,oBAAoB,GAAG,IAAI,CAAA;IACxC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAA;IACvB;;;;OAIG;IACH,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB;;;;;OAKG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,2DAA2D;IAC3D,UAAU,CAAC,EAAE,mBAAmB,EAAE,CAAA;CACnC;AAED,MAAM,WAAW,yBAAyB;IACxC;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CAClC;AAED,uEAAuE;AACvE,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,OAAO,CAAA;IACnB,iFAAiF;IACjF,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,qBAAqB,GAAG,UAAU,CAOlF;AAED,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,qBAAqB,GAAG,MAAM,CAMtE;AAED,8FAA8F;AAC9F,wBAAsB,+BAA+B,CACnD,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAAC,OAAO,CAAC,CAUlB;AAWD;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAYzF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE,eAAe,GACrB,oBAAoB,CAatB;AAmCD;;;;;;;;;;;GAWG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,eAAe,GAAG,IAAI,EAC/B,KAAK,EAAE,qBAAqB,EAAE,EAC9B,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,iBAAiB,CAAC,CAgH5B;AAUD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,4BAA4B,CAChD,UAAU,EAAE,uBAAuB,EACnC,KAAK,EAAE,qBAAqB,EAAE,GAC7B,OAAO,CAAC,oBAAoB,CAAC,CAuB/B"}
1
+ {"version":3,"file":"delegation.d.ts","sourceRoot":"","sources":["../src/delegation.ts"],"names":[],"mappings":"AA+BA,OAAO,EAAsC,KAAK,WAAW,EAAE,MAAM,YAAY,CAAA;AACjF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAS/D,sFAAsF;AACtF,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IACtB,UAAU,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAChD,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,oBAAoB,CAAA;CACnC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACnC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,+DAA+D;AAC/D,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,eAAe,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,kEAAkE;AAClE,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG;IAAE,oBAAoB,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAE7E,0EAA0E;AAC1E,MAAM,MAAM,uBAAuB,GAAG,WAAW,GAAG;IAClD,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,MAAM,CAAA;IACzB,oBAAoB,CAAC,EAAE,MAAM,CAAA;CAC9B,CAAA;AAED,8DAA8D;AAC9D,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,OAAO,CAAA;IACjB;;;;OAIG;IACH,cAAc,EAAE,OAAO,GAAG,IAAI,CAAA;IAC9B,iEAAiE;IACjE,UAAU,EAAE,MAAM,EAAE,CAAA;CACrB;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,OAAO,CAAA;IAClB,aAAa,EAAE,OAAO,GAAG,IAAI,CAAA;IAC7B,UAAU,EAAE,OAAO,GAAG,IAAI,CAAA;IAC1B,WAAW,EAAE,oBAAoB,GAAG,IAAI,CAAA;CACzC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAA;IACZ,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,UAAU,EAAE,OAAO,GAAG,IAAI,CAAA;IAC1B,SAAS,EAAE,OAAO,GAAG,IAAI,CAAA;IACzB,aAAa,EAAE,OAAO,GAAG,IAAI,CAAA;IAC7B,UAAU,EAAE,OAAO,GAAG,IAAI,CAAA;IAC1B,WAAW,EAAE,oBAAoB,GAAG,IAAI,CAAA;IACxC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAA;IACvB;;;;OAIG;IACH,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB;;;;;OAKG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,2DAA2D;IAC3D,UAAU,CAAC,EAAE,mBAAmB,EAAE,CAAA;IAClC,4DAA4D;IAC5D,6BAA6B,CAAC,EAAE,kBAAkB,CAAA;IAClD,mEAAmE;IACnE,oBAAoB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;CACtC;AAED,MAAM,WAAW,yBAAyB;IACxC;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CAClC;AAED,uEAAuE;AACvE,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,OAAO,CAAA;IACnB,iFAAiF;IACjF,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,qBAAqB,GAAG,UAAU,CAOlF;AAED,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,qBAAqB,GAAG,MAAM,CAMtE;AAED,8FAA8F;AAC9F,wBAAsB,+BAA+B,CACnD,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAAC,OAAO,CAAC,CAUlB;AAWD;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAYzF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE,eAAe,GACrB,oBAAoB,CAatB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,oBAAoB,EAC5B,KAAK,EAAE,eAAe,GACrB;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,CAiB7C;AAmCD;;;;;;;;;;;GAWG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,eAAe,GAAG,IAAI,EAC/B,KAAK,EAAE,qBAAqB,EAAE,EAC9B,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,iBAAiB,CAAC,CAgH5B;AAUD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,4BAA4B,CAChD,UAAU,EAAE,uBAAuB,EACnC,KAAK,EAAE,qBAAqB,EAAE,GAC7B,OAAO,CAAC,oBAAoB,CAAC,CAuB/B"}
@@ -110,10 +110,12 @@ export async function delegationCertErrors(cert) {
110
110
  *
111
111
  * Checks the constraints resolvable from the record alone: `tool_names`
112
112
  * (when the record discloses §8.2 `tool_name`) and `event_types`.
113
- * `max_amount` / `counterparties` require protocol-event facts the
114
- * compact signed record does not carry; they produce no mismatch here
115
- * (same posture the conformance corpus pins). `attenuation_ok` is `null`
116
- * until a caller supplies the principal's directory envelope.
113
+ * `max_amount` / `counterparties` / `cost_policy` require facts the
114
+ * compact signed record does not carry (transaction amounts, counterparty
115
+ * identity, model tier and token spend); they produce no mismatch here
116
+ * (same posture the conformance corpus pins). Callers holding usage facts
117
+ * evaluate `cost_policy` with {@link checkCostPolicy}. `attenuation_ok`
118
+ * is `null` until a caller supplies the principal's directory envelope.
117
119
  */
118
120
  export function checkDelegationScope(record, scope) {
119
121
  const mismatches = [];
@@ -127,6 +129,35 @@ export function checkDelegationScope(record, scope) {
127
129
  }
128
130
  return { in_scope: mismatches.length === 0, attenuation_ok: null, mismatches };
129
131
  }
132
+ /**
133
+ * §6.7.2 cost-policy check (D165). Evaluable only when the caller holds
134
+ * usage facts: signed records do not carry model tier or token spend
135
+ * (accounting lives in local sidecar and join-record content per the
136
+ * orchestration conventions), so this never runs inside the record-only
137
+ * §1.11.4 walk. A host verifying a join, or a receiver deciding whether a
138
+ * leg stayed inside its certified grant, supplies the claimed usage and
139
+ * reads the mismatch list. Signals only, never invalidation (§6.7.3):
140
+ * an over-budget leg's records remain valid; the mismatch is a fact for
141
+ * the accepting party to weigh.
142
+ *
143
+ * Absent constraints and absent usage facts both produce no mismatch:
144
+ * a policy without `max_tokens` caps nothing, and usage without
145
+ * `tokens_spent` claims nothing checkable.
146
+ */
147
+ export function checkCostPolicy(policy, usage) {
148
+ const mismatches = [];
149
+ if (policy.model_tiers &&
150
+ usage.model_tier !== undefined &&
151
+ !policy.model_tiers.includes(usage.model_tier)) {
152
+ mismatches.push('cost_policy.model_tiers');
153
+ }
154
+ if (policy.max_tokens !== undefined &&
155
+ usage.tokens_spent !== undefined &&
156
+ usage.tokens_spent > policy.max_tokens) {
157
+ mismatches.push('cost_policy.max_tokens');
158
+ }
159
+ return { in_scope: mismatches.length === 0, mismatches };
160
+ }
130
161
  function certWindow(cert) {
131
162
  return { from: cert.not_before ?? 0, to: cert.not_after };
132
163
  }
@@ -1 +1 @@
1
- {"version":3,"file":"delegation.js","sourceRoot":"","sources":["../src/delegation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delegation.js","sourceRoot":"","sources":["../src/delegation.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,YAAY,MAAM,cAAc,CAAA;AACvC,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,EAAoB,MAAM,YAAY,CAAA;AAGjF,yEAAyE;AACzE,yEAAyE;AACzE,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAA;AACzB,EAAE,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;AAEzD,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAA;AA0JjC;;;GAGG;AACH,MAAM,UAAU,0BAA0B,CAAC,IAA2B;IACpE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAA;IAC1C,MAAM,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;IACnC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAA;IACtF,CAAC;IACD,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;AAC7B,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,kBAAkB,CAAC,IAA2B;IAC5D,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IAC/B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAA;IACtF,CAAC;IACD,OAAO,UAAU,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;AAC5D,CAAC;AAED,8FAA8F;AAC9F,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,IAA2B;IAE3B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;QAC/C,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE;YAAE,OAAO,KAAK,CAAA;QACnC,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAC3C,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE;YAAE,OAAO,KAAK,CAAA;QACnC,OAAO,MAAM,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,0BAA0B,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;IACzE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACjE,IAAI,CAAC;QACH,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,EAAE,CAAA;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,IAA2B;IACpE,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;IAChF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;IAC1E,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,MAAM,CAAA;IACpC,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC;QAC3C,OAAO,CAAC,kBAAkB,CAAC,CAAA;IAC7B,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,+BAA+B,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAA;IAC5C,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,oBAAoB,CAClC,MAAuB,EACvB,KAAsB;IAEtB,MAAM,UAAU,GAAa,EAAE,CAAA;IAC/B,IACE,KAAK,CAAC,UAAU;QAChB,MAAM,CAAC,SAAS,KAAK,SAAS;QAC9B,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,EAC5C,CAAC;QACD,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAC/B,CAAC;IACD,IAAI,KAAK,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QACxE,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IAChC,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,UAAU,EAAE,CAAA;AAChF,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,eAAe,CAC7B,MAA4B,EAC5B,KAAsB;IAEtB,MAAM,UAAU,GAAa,EAAE,CAAA;IAC/B,IACE,MAAM,CAAC,WAAW;QAClB,KAAK,CAAC,UAAU,KAAK,SAAS;QAC9B,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,EAC9C,CAAC;QACD,UAAU,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;IAC5C,CAAC;IACD,IACE,MAAM,CAAC,UAAU,KAAK,SAAS;QAC/B,KAAK,CAAC,YAAY,KAAK,SAAS;QAChC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,UAAU,EACtC,CAAC;QACD,UAAU,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;IAC3C,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,UAAU,EAAE,CAAA;AAC1D,CAAC;AAED,SAAS,UAAU,CAAC,IAA2B;IAC7C,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,CAAA;AAC3D,CAAC;AAED,SAAS,cAAc,CAAC,CAAwB,EAAE,CAAwB;IACxE,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;IACxB,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;IACxB,OAAO,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAA;AAC7C,CAAC;AAED,SAAS,cAAc,CACrB,MAAuB,EACvB,IAA2B,EAC3B,IAAY,EACZ,cAAuB,EACvB,OAA+B;IAE/B,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;IACrC,OAAO;QACL,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,SAAS,EAAE,IAAI;QACf,SAAS,EAAE,IAAI,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,IAAI,EAAE;QAC7D,aAAa,EAAE,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,MAAM,CAAC,UAAU;QAC3F,mEAAmE;QACnE,iEAAiE;QACjE,6DAA6D;QAC7D,sEAAsE;QACtE,gEAAgE;QAChE,UAAU,EAAE,cAAc,IAAI,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,oBAAoB,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI;QAC7F,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;KAC1E,CAAA;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAuB,EACvB,OAA+B,EAC/B,KAA8B,EAC9B,UAAqC,EAAE;IAEvC,MAAM,MAAM,GAAsB;QAChC,KAAK,EAAE,CAAC;QACR,aAAa,EAAE,IAAI;QACnB,SAAS,EAAE,IAAI;QACf,UAAU,EAAE,IAAI;QAChB,SAAS,EAAE,IAAI;QACf,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,IAAI;QACjB,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,EAAE;KACX,CAAA;IAED,IAAI,CAAC;QACH,sEAAsE;QACtE,qEAAqE;QACrE,mEAAmE;QACnE,uCAAuC;QACvC,MAAM,cAAc,GAClB,OAAO,KAAK,IAAI;YAChB,OAAO,CAAC,WAAW,KAAK,MAAM,CAAC,WAAW;YAC1C,OAAO,OAAO,CAAC,oBAAoB,KAAK,QAAQ,CAAA;QAElD,iEAAiE;QACjE,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,MAAM,CAAC,WAAW,CAAC,CAAA;QAC3E,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,IAAI,cAAc;gBAAE,OAAO,EAAE,GAAG,MAAM,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAA;YACrE,OAAO,MAAM,CAAA;QACf,CAAC;QAED,6DAA6D;QAC7D,qEAAqE;QACrE,mEAAmE;QACnE,MAAM,SAAS,GAAsE,EAAE,CAAA;QACvF,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,IAAI,MAAM,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,CAAA;YAC7C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;oBAC1B,IAAI,KAAK,KAAK,IAAI;wBAAE,SAAQ;oBAC5B,IAAI,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC,aAAa;wBAAE,SAAQ;oBACrD,IAAI,CAAC,MAAM,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACrD,MAAM,GAAG,CAAC,2BAA2B,CAAC,CAAA;wBACtC,MAAK;oBACP,CAAC;gBACH,CAAC;YACH,CAAC;YACD,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;QAC5D,CAAC;QAED,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAA;QAC5D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,mEAAmE;YACnE,gEAAgE;YAChE,gEAAgE;YAChE,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;YAC1B,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,MAAM,CAAA;YACtC,OAAO,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAA;QACtF,CAAC;QAED,kEAAkE;QAClE,gEAAgE;QAChE,uDAAuD;QACvD,qCAAqC;QACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC1C,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAE,CAAA;gBACnB,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAE,CAAA;gBACnB,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,cAAc,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;oBACpF,OAAO;wBACL,GAAG,MAAM;wBACT,oBAAoB,EAAE,IAAI;wBAC1B,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1B,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,CAAC,CAChE;qBACF,CAAA;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,mEAAmE;QACnE,kEAAkE;QAClE,oEAAoE;QACpE,MAAM,QAAQ,GACZ,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACf,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YACvC,OAAO,IAAI,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,IAAI,EAAE,CAAA;QAC3D,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAE,CAAA;QAEjB,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,CAAC,CAAA;QAC3F,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW;YACjC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC;gBAC3C,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC;YACtD,CAAC,CAAC,KAAK,CAAA;QAET,OAAO;YACL,KAAK,EAAE,CAAC;YACR,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,OAAO;YACP,MAAM,EAAE,EAAE;SACX,CAAA;IACH,CAAC;IAAC,MAAM,CAAC;QACP,oEAAoE;QACpE,oEAAoE;QACpE,OAAO,MAAM,CAAA;IACf,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,IAA2B;IAC/C,IAAI,CAAC;QACH,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAA;IACX,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,UAAmC,EACnC,KAA8B;IAE9B,2CAA2C;IAC3C,IAAI,UAAU,CAAC,WAAW,KAAK,UAAU,CAAC,WAAW,EAAE,CAAC;QACtD,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,CAAA;IAClD,CAAC;IACD,gDAAgD;IAChD,IAAI,OAAO,UAAU,CAAC,oBAAoB,KAAK,QAAQ,EAAE,CAAC;QACxD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,oBAAoB,CAAC,CAAA;QACnF,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,0BAA0B,EAAE,CAAA;QAClE,CAAC;QACD,IAAI,CAAC,MAAM,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClD,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAA;QAC7D,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,WAAW,EAAE,CAAC;YAC/C,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,wCAAwC,EAAE,CAAA;QAChF,CAAC;QACD,IAAI,IAAI,CAAC,aAAa,KAAK,UAAU,CAAC,WAAW,EAAE,CAAC;YAClD,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,qCAAqC,EAAE,CAAA;QAC7E,CAAC;QACD,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,sCAAsC,EAAE,CAAA;IAC3E,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAA;AAC/D,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,10 @@
1
1
  export { AtribVerifier } from './verifier.js';
2
2
  export type { AtribVerifierOptions, CalculateOptions, VerifyRecommendationOptions, } from './verifier.js';
3
- export { verifyRecord } from './verify-record.js';
3
+ /** @deprecated Import from '@atrib/verify/payments'. */
4
+ export { verifySettlementRecommendation } from './payments.js';
5
+ export { verifyRecord, isTrustedCrossAttested } from './verify-record.js';
6
+ export { resolveAttestationCorroboration, isCorroborated, EVENT_TYPE_ATTESTATION_EXT_URI, } from './attestation.js';
7
+ export type { AttestationContent, AttestationInput, AttestationCorroborationOptions, AttestationCorroborationResult, } from './attestation.js';
4
8
  export type { RecordVerificationResult, ProvenanceAnnotation, VerifyRecordOptions, ResolvedCapabilityFacts, CrossAttestationAnnotation, } from './verify-record.js';
5
9
  export { verifyAuthorizationEvidence, verifyOAuthAuthorizationEvidence, } from './authorization-evidence.js';
6
10
  export type { AuthorizationEvidenceInput, EvidenceCheckStatus, EvidenceConstraintCheck, EvidenceVerificationBlock, OAuthAccessTokenClaims, OAuthAuthorizationDetailConstraint, OAuthAuthorizationEvidenceInput, OAuthAuthorizationEvidenceVerification, OAuthDpopCheck, OAuthDpopProofInput, OAuthEvidenceProtocol, OAuthProtectedResourceMetadata, OAuthSignaturePolicy, OAuthTokenIntrospectionResponse, OAuthTokenCheck, } from './authorization-evidence.js';
@@ -18,20 +22,22 @@ export { evaluateAuthority, minAuthority } from './authority.js';
18
22
  export type { AuthorityLevel, AuthorityPolicy, AuthorityRecord, AuthorityResult, } from './authority.js';
19
23
  export { ATRIB_PROFILE_BASE, ATRIB_PROFILE_REGISTRY, ATRIB_PROFILE_URIS, EVIDENCE_CONSTRAINT_STATUSES, EVIDENCE_REF_KINDS, EVIDENCE_TIERS, FROZEN_LEGACY_PROTOCOLS, LEGACY_PROTOCOL_TO_PROFILE, SHA256_REF_PATTERN, assessReproducibility, atribProfileUri, classifyProfile, envelopeFromEvidenceBlock, envelopeIdentityKey, fromLegacyEvidenceBlock, isRelayIdentitySwap, isValidEnvelope, jcsSha256, mapLegacyEvidenceBlock, orderEnvelopeInstances, rawSha256, renderEnvelopeOpaque, tierRank, validateEnvelope, } from './evidence-envelope.js';
20
24
  export type { AtribProfileName, EnvelopeReproducibility, EnvelopeValidation, EvidenceEnvelope, EvidenceEnvelopePayload, EvidenceEnvelopeRef, EvidenceEnvelopeResult, EvidenceEnvelopeVerifier, EvidenceConstraintStatus, EvidenceRefKind, EvidenceTier, FrozenLegacyProtocol, LegacyEvidenceBlock, OpaqueEnvelopeRender, ProfileClassification, } from './evidence-envelope.js';
25
+ /** @deprecated Import from '@atrib/verify/payments'. */
21
26
  export { calculate, DEFAULT_POLICY, isValidPolicy } from './calculate.js';
22
27
  export { signRecommendation, verifyRecommendationSignature, recommendationSigningInput, distributionsMatch, } from './recommendation.js';
23
28
  export { buildPolicy, policyFrom } from './policy-builder.js';
24
29
  export { fetchGraph, fetchSessionPolicyRecord, fetchPolicyDocument } from './graph-fetch.js';
25
30
  export { buildRevocationRegistry, applyRevocation } from './revocations.js';
26
31
  export type { RevocationEntry, RevocationReason, MinimalRecord } from './revocations.js';
32
+ /** @deprecated Import from '@atrib/verify/payments'. */
27
33
  export { evaluateAp2ViConstraints, verifyAp2ViEvidence, verifyAp2ViEvidenceAsync, } from './ap2-vi-evidence.js';
28
34
  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';
29
35
  export { resolveIdentity } from './resolve-identity.js';
30
36
  export type { IdentityResolution, IdentityResolutionMethod, KeyRevocationStatus, ResolveIdentityOptions, IdentityClaim, CapabilityEnvelope, } from './resolve-identity.js';
31
37
  export type { GraphNode, GraphEdge, GraphResponse, EventType, EdgeType, GapNode, VerificationState, ReferenceStatus, PolicyDocument, PolicyConstraints, EdgeWeights, Modifier, DistributionMethod, CreatorPolicySnapshot, CreatorPolicyEntry, SessionPolicyRecord, Distribution, RecommendationDocument, VerificationResult, } from './types.js';
32
38
  export { graphLabelFromEventTypeUri } from './types.js';
33
- export { checkDelegationScope, delegationCertErrors, delegationCertHash, delegationCertSignatureVerifies, delegationCertSigningInput, evaluateDelegation, evaluateRevokerAuthorization, } from './delegation.js';
34
- export type { DelegatedRecord, DelegationCandidate, DelegationCertificate, DelegationOutcome, DelegationScope, DelegationScopeCheck, EvaluateDelegationOptions, KeyRevocationRecordLike, RevokerAuthorization, } from './delegation.js';
39
+ export { checkDelegationScope, checkCostPolicy, delegationCertErrors, delegationCertHash, delegationCertSignatureVerifies, delegationCertSigningInput, evaluateDelegation, evaluateRevokerAuthorization, } from './delegation.js';
40
+ export type { DelegatedRecord, DelegationCandidate, DelegationCertificate, DelegationOutcome, DelegationScope, DelegationCostPolicy, CostPolicyUsage, DelegationScopeCheck, EvaluateDelegationOptions, KeyRevocationRecordLike, RevokerAuthorization, } from './delegation.js';
35
41
  export { ANCHOR_CLAIM_PREFIX, REGISTERED_NON_LOG_ANCHOR_TYPES, anchorOperatorGroup, verifyAnchorPlurality, verifyAnchorProofElement, } from './anchor-plurality.js';
36
42
  export type { AnchorDisagreeingPair, AnchorElementResult, AnchorElementStatus, AnchorNotFoundResponse, AnchorOperatorGroup, AnchorPluralityAnnotation, AnchorPluralityVerdict, AnchorProofBundle, AnchorProofElement, AnchorTrustConfig, AnchorTrustEntry, } from './anchor-plurality.js';
37
43
  export { DEFAULT_SESSION_CHECKPOINT_STALENESS_BOUND_MS, SESSION_CHECKPOINT_EVENT_TYPE_URI, checkConsecutiveSessionCheckpoints, detectSessionCheckpointEquivocation, recomputeSessionRoot, recomputeSessionRootFromLeafBytes, sessionCheckpointArgsHash, sessionCheckpointFreshness, sessionCheckpointRecordHash, sessionLeafBytes, validateSessionCheckpointStructural, verifySessionCheckpointRecord, verifySessionConsistencyProof, verifySessionInclusionProof, } from './session-checkpoint.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -2,10 +2,15 @@
2
2
  // @atrib/verify. Merchant verification library
3
3
  // Verifier (primary export)
4
4
  export { AtribVerifier } from './verifier.js';
5
+ // Payment profile surface. Deprecated at the root. Import from
6
+ // `@atrib/verify/payments` for new code.
7
+ /** @deprecated Import from '@atrib/verify/payments'. */
8
+ export { verifySettlementRecommendation } from './payments.js';
5
9
  // Per-record verification (single AtribRecord). Distinct from
6
10
  // AtribVerifier.verify which operates on a settlement RecommendationDocument.
7
11
  // Surfaces the implemented D044, D041, D045, D051, D052, and D094 annotations.
8
- export { verifyRecord } from './verify-record.js';
12
+ export { verifyRecord, isTrustedCrossAttested } from './verify-record.js';
13
+ export { resolveAttestationCorroboration, isCorroborated, EVENT_TYPE_ATTESTATION_EXT_URI, } from './attestation.js';
9
14
  // Generic external authorization evidence checks. Off the atrib record-validity path.
10
15
  export { verifyAuthorizationEvidence, verifyOAuthAuthorizationEvidence, } from './authorization-evidence.js';
11
16
  export { decodeX401HeaderObject, encodeX401HeaderObject, verifyX401AuthorizationEvidence, } from './x401-evidence.js';
@@ -22,7 +27,9 @@ export { evaluateAuthority, minAuthority } from './authority.js';
22
27
  // never touches signed bytes or verifyRecord().valid. The legacy §5.5.6
23
28
  // EvidenceVerificationBlock shape stays the mapped compatibility view.
24
29
  export { ATRIB_PROFILE_BASE, ATRIB_PROFILE_REGISTRY, ATRIB_PROFILE_URIS, EVIDENCE_CONSTRAINT_STATUSES, EVIDENCE_REF_KINDS, EVIDENCE_TIERS, FROZEN_LEGACY_PROTOCOLS, LEGACY_PROTOCOL_TO_PROFILE, SHA256_REF_PATTERN, assessReproducibility, atribProfileUri, classifyProfile, envelopeFromEvidenceBlock, envelopeIdentityKey, fromLegacyEvidenceBlock, isRelayIdentitySwap, isValidEnvelope, jcsSha256, mapLegacyEvidenceBlock, orderEnvelopeInstances, rawSha256, renderEnvelopeOpaque, tierRank, validateEnvelope, } from './evidence-envelope.js';
25
- // Calculation algorithm (§4.6). pure function, exported for direct use
30
+ // Calculation algorithm (§4.6). Deprecated at the root. Import from
31
+ // `@atrib/verify/payments` for new code.
32
+ /** @deprecated Import from '@atrib/verify/payments'. */
26
33
  export { calculate, DEFAULT_POLICY, isValidPolicy } from './calculate.js';
27
34
  // Recommendation document signing/verification (§4.7)
28
35
  export { signRecommendation, verifyRecommendationSignature, recommendationSigningInput, distributionsMatch, } from './recommendation.js';
@@ -32,7 +39,9 @@ export { buildPolicy, policyFrom } from './policy-builder.js';
32
39
  export { fetchGraph, fetchSessionPolicyRecord, fetchPolicyDocument } from './graph-fetch.js';
33
40
  // Revocation registry (§1.9)
34
41
  export { buildRevocationRegistry, applyRevocation } from './revocations.js';
35
- // AP2 / Verifiable Intent evidence checks. Off the settlement critical path.
42
+ // AP2 / Verifiable Intent evidence checks. Deprecated at the root. Import
43
+ // from `@atrib/verify/payments` for new code.
44
+ /** @deprecated Import from '@atrib/verify/payments'. */
36
45
  export { evaluateAp2ViConstraints, verifyAp2ViEvidence, verifyAp2ViEvidenceAsync, } from './ap2-vi-evidence.js';
37
46
  // Identity resolution (§6.3 9-step verifier consultation)
38
47
  export { resolveIdentity } from './resolve-identity.js';
@@ -40,7 +49,7 @@ export { graphLabelFromEventTypeUri } from './types.js';
40
49
  // Delegation-certificate evaluation (§1.11 / D140): the §1.11.4 verifier
41
50
  // walk and §1.9.2 rule-3 revoker authorization. Signals only (§6.7.3);
42
51
  // never affects record validity.
43
- export { checkDelegationScope, delegationCertErrors, delegationCertHash, delegationCertSignatureVerifies, delegationCertSigningInput, evaluateDelegation, evaluateRevokerAuthorization, } from './delegation.js';
52
+ export { checkDelegationScope, checkCostPolicy, delegationCertErrors, delegationCertHash, delegationCertSignatureVerifies, delegationCertSigningInput, evaluateDelegation, evaluateRevokerAuthorization, } from './delegation.js';
44
53
  // Anchor plurality (D138, §2.11.7-§2.11.13): anchor_plurality annotation over
45
54
  // §2.11.3 log_proofs plus the unchanged §2.11.4 hard conditions.
46
55
  export { ANCHOR_CLAIM_PREFIX, REGISTERED_NON_LOG_ANCHOR_TYPES, anchorOperatorGroup, verifyAnchorPlurality, verifyAnchorProofElement, } from './anchor-plurality.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { AtribVerifierOptions, VerifyRecommendationOptions } from './verifier.js';
2
+ import type { RecommendationDocument, VerificationResult } from './types.js';
3
+ /** Verify a settlement recommendation without constructing a long-lived verifier. */
4
+ export declare function verifySettlementRecommendation(document: RecommendationDocument, options?: VerifyRecommendationOptions, verifierOptions?: AtribVerifierOptions): Promise<VerificationResult>;
5
+ export { calculate, DEFAULT_POLICY, isValidPolicy } from './calculate.js';
6
+ export { evaluateAp2ViConstraints, verifyAp2ViEvidence, verifyAp2ViEvidenceAsync, } from './ap2-vi-evidence.js';
7
+ export type { AtribVerifierOptions, CalculateOptions, VerifyRecommendationOptions, } from './verifier.js';
8
+ export type * from './ap2-vi-evidence.js';
9
+ //# sourceMappingURL=payments.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payments.d.ts","sourceRoot":"","sources":["../src/payments.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAA;AACtF,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAE5E,qFAAqF;AACrF,wBAAsB,8BAA8B,CAClD,QAAQ,EAAE,sBAAsB,EAChC,OAAO,GAAE,2BAAgC,EACzC,eAAe,GAAE,oBAAyB,GACzC,OAAO,CAAC,kBAAkB,CAAC,CAE7B;AAED,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACzE,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,sBAAsB,CAAA;AAC7B,YAAY,EACV,oBAAoB,EACpB,gBAAgB,EAChB,2BAA2B,GAC5B,MAAM,eAAe,CAAA;AACtB,mBAAmB,sBAAsB,CAAA"}
@@ -0,0 +1,9 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ import { AtribVerifier } from './verifier.js';
3
+ /** Verify a settlement recommendation without constructing a long-lived verifier. */
4
+ export async function verifySettlementRecommendation(document, options = {}, verifierOptions = {}) {
5
+ return new AtribVerifier(verifierOptions).verify(document, options);
6
+ }
7
+ export { calculate, DEFAULT_POLICY, isValidPolicy } from './calculate.js';
8
+ export { evaluateAp2ViConstraints, verifyAp2ViEvidence, verifyAp2ViEvidenceAsync, } from './ap2-vi-evidence.js';
9
+ //# sourceMappingURL=payments.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payments.js","sourceRoot":"","sources":["../src/payments.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAI7C,qFAAqF;AACrF,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,QAAgC,EAChC,UAAuC,EAAE,EACzC,kBAAwC,EAAE;IAE1C,OAAO,IAAI,aAAa,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;AACrE,CAAC;AAED,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACzE,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,sBAAsB,CAAA"}
@@ -171,6 +171,12 @@ export declare function checkConsecutiveSessionCheckpoints(first: SessionCheckpo
171
171
  export interface VerifySessionCheckpointRecordOptions {
172
172
  /** Ordered `"sha256:<hex>"` refs of the disclosed leaf list (Tier 2 material). */
173
173
  leaves?: readonly string[] | undefined;
174
+ /**
175
+ * Optional disclosed record bodies for the leaves. When present, every
176
+ * covered record must belong to the checkpoint's context_id. Hash-only
177
+ * leaves cannot establish that fact.
178
+ */
179
+ leafRecords?: readonly Pick<AtribRecord, 'context_id'>[] | undefined;
174
180
  /** Max covered leaf timestamp for §1.2.10.3 freshness tiering. */
175
181
  maxCoveredLeafTimestamp?: number | undefined;
176
182
  /** Verifier staleness bound; defaults to 24h. */
@@ -187,6 +193,8 @@ export interface SessionCheckpointVerification {
187
193
  rootMatchesLeaves?: boolean;
188
194
  /** D099 args_hash replays from the disclosed leaves (undefined when not supplied). */
189
195
  argsHashMatchesLeaves?: boolean;
196
+ /** Every disclosed leaf record belongs to this checkpoint's context_id. */
197
+ leafContextsMatch?: boolean;
190
198
  /** §1.2.10.3 categorical freshness fact (undefined without a leaf timestamp). */
191
199
  freshness?: SessionCheckpointFreshness;
192
200
  }
@@ -1 +1 @@
1
- {"version":3,"file":"session-checkpoint.d.ts","sourceRoot":"","sources":["../src/session-checkpoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-checkpoint.d.ts","sourceRoot":"","sources":["../src/session-checkpoint.ts"],"names":[],"mappings":"AA+BA,OAAO,EASL,KAAK,WAAW,EACjB,MAAM,YAAY,CAAA;AAInB,6DAA6D;AAC7D,eAAO,MAAM,iCAAiC,kDAAkD,CAAA;AAEhG,2EAA2E;AAC3E,eAAO,MAAM,6CAA6C,QAAsB,CAAA;AAIhF;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,yFAAyF;AACzF,MAAM,MAAM,uBAAuB,GAAG,WAAW,GAAG;IAAE,UAAU,CAAC,EAAE,qBAAqB,CAAA;CAAE,CAAA;AAE1F,oEAAoE;AACpE,MAAM,MAAM,0BAA0B,GAClC,iBAAiB,GACjB,sBAAsB,GACtB,kBAAkB,CAAA;AAMtB;;;;;;GAMG;AACH,wBAAgB,mCAAmC,CACjD,MAAM,EAAE,uBAAuB,GAC9B,MAAM,GAAG,SAAS,CA4BpB;AAyBD,2FAA2F;AAC3F,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAKxD;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAExE;AAED;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,SAAS,UAAU,EAAE,GAAG,MAAM,CAEvF;AAED,+EAA+E;AAC/E,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAEvE;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAM7E;AAMD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,uBAAuB,EAC/B,uBAAuB,EAAE,MAAM,EAC/B,OAAO,GAAE,MAAsD,GAC9D,0BAA0B,CAI5B;AAMD,MAAM,WAAW,kCAAkC;IACjD,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAA;IACb,kCAAkC;IAClC,QAAQ,EAAE,MAAM,CAAA;IAChB,2EAA2E;IAC3E,UAAU,EAAE,UAAU,GAAG,MAAM,CAAA;IAC/B,oCAAoC;IACpC,KAAK,EAAE,SAAS,UAAU,EAAE,CAAA;IAC5B,uDAAuD;IACvD,WAAW,EAAE,MAAM,CAAA;CACpB;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,kCAAkC,GAAG,OAAO,CAe7F;AAaD,MAAM,WAAW,oCAAoC;IACnD,wCAAwC;IACxC,aAAa,EAAE,MAAM,CAAA;IACrB,wCAAwC;IACxC,cAAc,EAAE,MAAM,CAAA;IACtB,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAA;IACjB,6DAA6D;IAC7D,UAAU,EAAE,MAAM,CAAA;IAClB,+CAA+C;IAC/C,KAAK,EAAE,SAAS,UAAU,EAAE,CAAA;CAC7B;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,oCAAoC,GACzC,OAAO,CA2CT;AAED;;;;;GAKG;AACH,MAAM,WAAW,qCAAqC;IACpD,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,4BAA4B,GAAG,uBAAuB,CAAA;IAC9D,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,iBAAiB,EAAE,MAAM,CAAA;IACzB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,KAAK,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAA;IACvE,MAAM,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAA;CACzE;AAUD;;;;;;;;GAQG;AACH,wBAAgB,mCAAmC,CACjD,CAAC,EAAE,uBAAuB,EAC1B,CAAC,EAAE,uBAAuB,GACzB,qCAAqC,GAAG,SAAS,CAsBnD;AAED,MAAM,WAAW,yCAAyC;IACxD,yEAAyE;IACzE,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAA;IAC3C,0EAA0E;IAC1E,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAA;IAC5C,6DAA6D;IAC7D,gBAAgB,CAAC,EAAE,SAAS,UAAU,EAAE,GAAG,SAAS,CAAA;CACrD;AAED,MAAM,WAAW,iCAAiC;IAChD,yEAAyE;IACzE,sBAAsB,EAAE,OAAO,CAAA;IAC/B,iDAAiD;IACjD,8BAA8B,EAAE,OAAO,CAAA;IACvC,4EAA4E;IAC5E,mBAAmB,EAAE,OAAO,GAAG,SAAS,CAAA;IACxC,8EAA8E;IAC9E,oBAAoB,EAAE,OAAO,GAAG,SAAS,CAAA;IACzC,sFAAsF;IACtF,UAAU,EAAE,OAAO,GAAG,SAAS,CAAA;IAC/B,oEAAoE;IACpE,wBAAwB,EAAE,OAAO,GAAG,SAAS,CAAA;IAC7C,kDAAkD;IAClD,UAAU,EAAE,OAAO,CAAA;IACnB,qEAAqE;IACrE,YAAY,CAAC,EAAE,qCAAqC,CAAA;CACrD;AAED;;;;;;;;GAQG;AACH,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,uBAAuB,EAC9B,MAAM,EAAE,uBAAuB,EAC/B,IAAI,GAAE,yCAA8C,GACnD,iCAAiC,CAqFnC;AAMD,MAAM,WAAW,oCAAoC;IACnD,kFAAkF;IAClF,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAA;IACtC;;;;OAIG;IACH,WAAW,CAAC,EAAE,SAAS,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,GAAG,SAAS,CAAA;IACpE,kEAAkE;IAClE,uBAAuB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5C,iDAAiD;IACjD,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACtC;AAED,MAAM,WAAW,6BAA6B;IAC5C,kEAAkE;IAClE,WAAW,EAAE,OAAO,CAAA;IACpB,mDAAmD;IACnD,UAAU,EAAE,MAAM,CAAA;IAClB,6EAA6E;IAC7E,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,uFAAuF;IACvF,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,sFAAsF;IACtF,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,2EAA2E;IAC3E,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,iFAAiF;IACjF,SAAS,CAAC,EAAE,0BAA0B,CAAA;CACvC;AAED;;;;;GAKG;AACH,wBAAsB,6BAA6B,CACjD,MAAM,EAAE,uBAAuB,EAC/B,IAAI,GAAE,oCAAyC,GAC9C,OAAO,CAAC,6BAA6B,CAAC,CAgDxC"}
@@ -406,6 +406,10 @@ export async function verifySessionCheckpointRecord(record, opts = {}) {
406
406
  argsHashMatchesLeaves = false;
407
407
  }
408
408
  }
409
+ const leafContextsMatch = opts.leafRecords === undefined
410
+ ? undefined
411
+ : opts.leafRecords.length === (opts.leaves?.length ?? opts.leafRecords.length) &&
412
+ opts.leafRecords.every((leaf) => leaf.context_id === record.context_id);
409
413
  const freshness = opts.maxCoveredLeafTimestamp !== undefined
410
414
  ? sessionCheckpointFreshness(record, opts.maxCoveredLeafTimestamp, opts.stalenessBoundMs ?? DEFAULT_SESSION_CHECKPOINT_STALENESS_BOUND_MS)
411
415
  : undefined;
@@ -415,6 +419,7 @@ export async function verifySessionCheckpointRecord(record, opts = {}) {
415
419
  ...(structuralRejection !== undefined ? { structuralRejection } : {}),
416
420
  ...(rootMatchesLeaves !== undefined ? { rootMatchesLeaves } : {}),
417
421
  ...(argsHashMatchesLeaves !== undefined ? { argsHashMatchesLeaves } : {}),
422
+ ...(leafContextsMatch !== undefined ? { leafContextsMatch } : {}),
418
423
  ...(freshness !== undefined ? { freshness } : {}),
419
424
  };
420
425
  }
@@ -1 +1 @@
1
- {"version":3,"file":"session-checkpoint.js","sourceRoot":"","sources":["../src/session-checkpoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-checkpoint.js","sourceRoot":"","sources":["../src/session-checkpoint.ts"],"names":[],"mappings":"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"}
@@ -30,6 +30,8 @@ import type { Ap2ViEvidenceBundle, Ap2ViEvidenceVerification, VerifyAp2ViEvidenc
30
30
  import type { AuthorizationEvidenceInput, EvidenceVerificationBlock } from './authorization-evidence.js';
31
31
  import type { DelegationCertificate, DelegationOutcome } from './delegation.js';
32
32
  import type { EvidenceEnvelope } from './evidence-envelope.js';
33
+ import type { ResolveIdentityOptions } from './resolve-identity.js';
34
+ import type { AnchorNotFoundResponse, AnchorPluralityVerdict, AnchorProofBundle, AnchorTrustConfig } from './anchor-plurality.js';
33
35
  /**
34
36
  * Provenance surfacing for a record carrying `provenance_token` (D044 /
35
37
  * spec §1.2.6).
@@ -153,7 +155,51 @@ export interface CrossAttestationAnnotation {
153
155
  * valid via the legacy top-level signature.
154
156
  */
155
157
  missing: boolean;
158
+ /**
159
+ * `true` iff a trust set (`VerifyRecordOptions.trustedCreatorKeys`) was
160
+ * supplied and the trusted-signer composition was evaluated. Always present
161
+ * on transaction cross_attestation, so that `false` is a LOUD signal: the
162
+ * annotation reflects only the trust-blind verified-key count, and a
163
+ * consumer gating a consequential action MUST NOT read `signers_valid >= 2`
164
+ * as trusted authority without supplying a trust set. Per §1.7.6 trusted
165
+ * signer composition. `signers_trusted` / `sybil_suspected` are present only
166
+ * when this is `true`.
167
+ */
168
+ trust_evaluated: boolean;
169
+ /**
170
+ * Number of distinct verified signer keys that are ALSO members of the
171
+ * trust set supplied via `VerifyRecordOptions.trustedCreatorKeys`. A
172
+ * verified signer key is not necessarily a trusted one: `signers_valid`
173
+ * counts distinct keys whose signatures verify, this counts how many of
174
+ * those keys the caller trusts. Present ONLY when `trust_evaluated` is true;
175
+ * omitted otherwise. Non-malleable transaction authority requires
176
+ * `signers_trusted >= 2` (see `isTrustedCrossAttested`), per §1.7.6.
177
+ */
178
+ signers_trusted?: number;
179
+ /**
180
+ * `true` iff `signers_valid >= 2` but `signers_trusted < 2`: the record
181
+ * meets the distinct-verified-key minimum yet fewer than two of those keys
182
+ * are trusted (a Sybil / corroboration posture, e.g. two attacker-controlled
183
+ * keys signing the same bytes). Present ONLY when a trust set is supplied.
184
+ * Like `missing`, this is a SIGNAL and MUST NOT by itself invalidate the
185
+ * record. Gate non-malleable authority on `isTrustedCrossAttested` (i.e.
186
+ * `signers_trusted >= 2`), NOT on `!sybil_suspected`: a single trusted
187
+ * signer (`signers_valid < 2`) is not sybil_suspected yet is not attested.
188
+ */
189
+ sybil_suspected?: boolean;
156
190
  }
191
+ /**
192
+ * Non-malleable cross-attestation predicate. Returns `true` iff the record
193
+ * carries at least 2 distinct verified signer keys that are members of the
194
+ * caller's trust set (`signers_trusted >= 2`). This is the guarded gate a
195
+ * consumer requiring Sybil-resistant transaction authority should call, in
196
+ * place of the footgun `signers_valid >= 2` (which two untrusted keys also
197
+ * satisfy) or `!sybil_suspected` (which a single trusted signer also
198
+ * satisfies). Requires `verifyRecord` to have been called with a
199
+ * `trustedCreatorKeys` trust set; returns `false` when trust was not
200
+ * evaluated. Per §1.7.6 trusted signer composition.
201
+ */
202
+ export declare function isTrustedCrossAttested(annotation: CrossAttestationAnnotation | undefined): boolean;
157
203
  /**
158
204
  * Posture surfacing for a record. Exposes three §8 postures: timing
159
205
  * (§8.4), args/result commitment (§8.3), and tool-name disclosure (§8.2).
@@ -282,6 +328,12 @@ export interface RecordVerificationResult {
282
328
  * delegation fact ever pushes a warning.
283
329
  */
284
330
  delegation?: DelegationOutcome;
331
+ /**
332
+ * Anchor plurality verdict (§2.11.7-D138). Populated only when the caller
333
+ * supplies both a proof bundle and its trust configuration. The annotation
334
+ * remains separate from evidence envelopes and delegation facts.
335
+ */
336
+ anchor_plurality?: AnchorPluralityVerdict;
285
337
  warnings: string[];
286
338
  }
287
339
  /**
@@ -365,6 +417,12 @@ export interface VerifyRecordOptions {
365
417
  * (§1.9.3 log_index cutoff applied by the caller).
366
418
  */
367
419
  delegationRevokedKeys?: ReadonlySet<string>;
420
+ /**
421
+ * Explicit directory options for §1.11.4 step 4. When supplied for a
422
+ * resolved depth-one delegation, verifyRecord resolves the principal and
423
+ * checks the run key's expected directory non-membership.
424
+ */
425
+ delegationDirectoryOptions?: Omit<ResolveIdentityOptions, 'recordTimestamp'>;
368
426
  /**
369
427
  * Caller-supplied AP2 / Verifiable Intent evidence for transaction
370
428
  * records. The signed atrib record commits to transaction payload hashes,
@@ -375,6 +433,24 @@ export interface VerifyRecordOptions {
375
433
  ap2ViEvidence?: Ap2ViEvidenceBundle;
376
434
  /** Options passed through to `verifyAp2ViEvidenceAsync()`. */
377
435
  ap2ViEvidenceOptions?: VerifyAp2ViEvidenceOptions;
436
+ /**
437
+ * Trust set for transaction cross-attestation (§1.7.6 trusted signer
438
+ * composition). Base64url Ed25519 public keys the verifier trusts as
439
+ * independent attesting principals. When supplied, `cross_attestation`
440
+ * additionally surfaces `signers_trusted` and `sybil_suspected` so a
441
+ * consumer can gate non-malleable authority on trusted (not merely
442
+ * verified) signer keys, via `isTrustedCrossAttested`. When omitted, the
443
+ * trust fields are not surfaced and cross_attestation is byte-identical to
444
+ * its pre-trust shape. Same trust vocabulary as handoff verification's
445
+ * `trusted_creator_keys`. Signal only: never flips record validity.
446
+ */
447
+ trustedCreatorKeys?: string[];
448
+ /** Trust configuration for the supplied multi-anchor proof bundle. */
449
+ anchorTrust?: AnchorTrustConfig;
450
+ /** Post-signing anchor proofs for this record. */
451
+ proofBundle?: AnchorProofBundle;
452
+ /** Optional trusted-log not-found observations for censorship surfacing. */
453
+ anchorNotFoundResponses?: AnchorNotFoundResponse[];
378
454
  }
379
455
  /**
380
456
  * Verify one signed record.
@@ -420,7 +496,7 @@ declare function resolveCapabilityCheck(record: AtribRecord, claim: ResolvedIden
420
496
  * verified above by `verifyRecordSignature`) keeps the record
421
497
  * cryptographically valid; cross_attestation is a policy signal.
422
498
  */
423
- declare function resolveCrossAttestation(record: AtribRecord): Promise<CrossAttestationAnnotation>;
499
+ declare function resolveCrossAttestation(record: AtribRecord, trustedCreatorKeys?: string[]): Promise<CrossAttestationAnnotation>;
424
500
  declare function detectPosture(record: AtribRecord, warnings: string[]): PostureAnnotation;
425
501
  export declare const __test_only__: {
426
502
  PROVENANCE_TOKEN_PATTERN: RegExp;
@@ -1 +1 @@
1
- {"version":3,"file":"verify-record.d.ts","sourceRoot":"","sources":["../src/verify-record.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verify-record.d.ts","sourceRoot":"","sources":["../src/verify-record.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,8 @@ import { verifyAp2ViEvidenceAsync } from './ap2-vi-evidence.js';
32
32
  import { verifyAuthorizationEvidence } from './authorization-evidence.js';
33
33
  import { evaluateDelegation } from './delegation.js';
34
34
  import { mapLegacyEvidenceBlock } from './evidence-envelope.js';
35
+ import { resolveIdentity } from './resolve-identity.js';
36
+ import { verifyAnchorPlurality } from './anchor-plurality.js';
35
37
  const PROVENANCE_TOKEN_PATTERN = /^[A-Za-z0-9_-]{22}$/;
36
38
  const SHA256_REF_PATTERN = /^sha256:[0-9a-f]{64}$/;
37
39
  // §8.2 hashed tool_name form per D061. The verbatim and opaque-label forms
@@ -39,6 +41,20 @@ const SHA256_REF_PATTERN = /^sha256:[0-9a-f]{64}$/;
39
41
  // `book_flight` also matches the opaque regex), so this is the only
40
42
  // regex-detectable form.
41
43
  const TOOL_NAME_HASHED_PATTERN = /^sha256:[0-9a-f]{64}$/;
44
+ /**
45
+ * Non-malleable cross-attestation predicate. Returns `true` iff the record
46
+ * carries at least 2 distinct verified signer keys that are members of the
47
+ * caller's trust set (`signers_trusted >= 2`). This is the guarded gate a
48
+ * consumer requiring Sybil-resistant transaction authority should call, in
49
+ * place of the footgun `signers_valid >= 2` (which two untrusted keys also
50
+ * satisfy) or `!sybil_suspected` (which a single trusted signer also
51
+ * satisfies). Requires `verifyRecord` to have been called with a
52
+ * `trustedCreatorKeys` trust set; returns `false` when trust was not
53
+ * evaluated. Per §1.7.6 trusted signer composition.
54
+ */
55
+ export function isTrustedCrossAttested(annotation) {
56
+ return (annotation?.signers_trusted ?? 0) >= 2;
57
+ }
42
58
  const GRANULARITY_MULTIPLIER = {
43
59
  ms: 1,
44
60
  s: 1000,
@@ -114,7 +130,7 @@ export async function verifyRecord(record, options = {}) {
114
130
  // cross_attestation (D052 / §1.7.6), surface only on transaction records.
115
131
  // Other event types continue to use the standard single-signer path.
116
132
  if (record.event_type === 'https://atrib.dev/v1/types/transaction') {
117
- result.cross_attestation = await resolveCrossAttestation(record);
133
+ result.cross_attestation = await resolveCrossAttestation(record, options.trustedCreatorKeys);
118
134
  }
119
135
  if (options.ap2ViEvidence !== undefined) {
120
136
  if (record.event_type === 'https://atrib.dev/v1/types/transaction') {
@@ -148,6 +164,46 @@ export async function verifyRecord(record, options = {}) {
148
164
  const genesis = options.contextGenesis ??
149
165
  (record.chain_root === genesisChainRoot(record.context_id) ? record : null);
150
166
  result.delegation = await evaluateDelegation(record, genesis, options.delegationCertificates, options.delegationRevokedKeys ? { revokedKeys: options.delegationRevokedKeys } : {});
167
+ if (result.delegation.depth === 1 &&
168
+ result.delegation.principal_key !== null &&
169
+ options.delegationDirectoryOptions !== undefined) {
170
+ const directoryOptions = {
171
+ ...options.delegationDirectoryOptions,
172
+ recordTimestamp: record.timestamp,
173
+ };
174
+ try {
175
+ const principal = await resolveIdentity(result.delegation.principal_key, directoryOptions);
176
+ const runKey = await resolveIdentity(record.creator_key, directoryOptions);
177
+ result.delegation.principal_identity_resolution = principal;
178
+ result.delegation.run_key_in_directory = runKey.identity_resolved !== null;
179
+ }
180
+ catch (err) {
181
+ warnings.push(`delegation directory resolution error: ${err.message}`);
182
+ }
183
+ }
184
+ }
185
+ // Anchor plurality (D138): verification needs both the post-signing proof
186
+ // bundle and caller-owned trust material. This is intentionally separate
187
+ // from envelopes and delegation, which carry different evidence shapes.
188
+ if (options.anchorTrust !== undefined || options.proofBundle !== undefined) {
189
+ if (options.anchorTrust === undefined || options.proofBundle === undefined) {
190
+ warnings.push('anchor verification requires both anchorTrust and proofBundle');
191
+ }
192
+ else {
193
+ try {
194
+ const recordHash = `sha256:${hexEncode(sha256(canonicalRecord(record)))}`;
195
+ if (options.proofBundle.record_hash !== recordHash) {
196
+ warnings.push('anchor proof bundle record_hash does not match record');
197
+ }
198
+ result.anchor_plurality = await verifyAnchorPlurality(options.proofBundle, options.anchorTrust, options.anchorNotFoundResponses);
199
+ if (result.anchor_plurality.hard_reject) {
200
+ warnings.push('anchor plurality hard rejection');
201
+ }
202
+ }
203
+ catch (err) {
204
+ warnings.push(`anchor verification error: ${err.message}`);
205
+ }
206
+ }
151
207
  }
152
208
  if (options.evidenceEnvelopes && result.evidence) {
153
209
  const envelopes = [];
@@ -368,13 +424,36 @@ function resolveCapabilityCheck(record, claim, facts, _warnings) {
368
424
  * verified above by `verifyRecordSignature`) keeps the record
369
425
  * cryptographically valid; cross_attestation is a policy signal.
370
426
  */
371
- async function resolveCrossAttestation(record) {
427
+ async function resolveCrossAttestation(record, trustedCreatorKeys) {
428
+ // §1.7.6 trusted signer composition. `signers_valid` and `missing` keep
429
+ // their existing (trust-blind) semantics on every path. `trust_evaluated`
430
+ // is ALWAYS attached, so `false` is a loud signal that only the trust-blind
431
+ // count was computed. When a trust set is supplied we additionally attach
432
+ // `signers_trusted` / `sybil_suspected` by intersecting the already-verified
433
+ // keys with the trust set. Signal only: never pushes to warnings[] or flips
434
+ // `valid`.
435
+ const withTrust = (base, validKeys) => {
436
+ if (trustedCreatorKeys === undefined)
437
+ return { ...base, trust_evaluated: false };
438
+ const trustSet = new Set(trustedCreatorKeys);
439
+ let signers_trusted = 0;
440
+ for (const key of validKeys)
441
+ if (trustSet.has(key))
442
+ signers_trusted++;
443
+ return {
444
+ ...base,
445
+ trust_evaluated: true,
446
+ signers_trusted,
447
+ sybil_suspected: base.signers_valid >= 2 && signers_trusted < 2,
448
+ };
449
+ };
372
450
  const signers = Array.isArray(record.signers) ? record.signers : [];
373
451
  const signers_count = signers.length;
452
+ const NO_KEYS = new Set();
374
453
  if (signers_count === 0) {
375
454
  // Legacy single-signer transaction record. Per §1.7.6 normative
376
455
  // minimum is 2; flag as missing.
377
- return { signers_count: 0, signers_valid: 0, missing: true };
456
+ return withTrust({ signers_count: 0, signers_valid: 0, missing: true }, NO_KEYS);
378
457
  }
379
458
  // All signers cover the same canonical bytes (§1.7.6).
380
459
  let canonicalBytes;
@@ -384,7 +463,7 @@ async function resolveCrossAttestation(record) {
384
463
  catch {
385
464
  // Canonicalization shouldn't fail on a structurally-valid record;
386
465
  // if it does, treat all signers as unverifiable.
387
- return { signers_count, signers_valid: 0, missing: true };
466
+ return withTrust({ signers_count, signers_valid: 0, missing: true }, NO_KEYS);
388
467
  }
389
468
  const validSignerKeys = new Set();
390
469
  for (const entry of signers) {
@@ -402,11 +481,11 @@ async function resolveCrossAttestation(record) {
402
481
  }
403
482
  }
404
483
  const signers_valid = validSignerKeys.size;
405
- return {
484
+ return withTrust({
406
485
  signers_count,
407
486
  signers_valid,
408
487
  missing: signers_valid < 2,
409
- };
488
+ }, validSignerKeys);
410
489
  }
411
490
  async function verifyCreatorSignerSignature(record) {
412
491
  const signers = Array.isArray(record.signers) ? record.signers : [];
@@ -1 +1 @@
1
- {"version":3,"file":"verify-record.js","sourceRoot":"","sources":["../src/verify-record.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verify-record.js","sourceRoot":"","sources":["../src/verify-record.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atrib/verify",
3
- "version": "0.8.3",
3
+ "version": "0.10.0",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -8,6 +8,10 @@
8
8
  ".": {
9
9
  "import": "./dist/index.js",
10
10
  "types": "./dist/index.d.ts"
11
+ },
12
+ "./payments": {
13
+ "import": "./dist/payments.js",
14
+ "types": "./dist/payments.d.ts"
11
15
  }
12
16
  },
13
17
  "files": [
@@ -36,7 +40,7 @@
36
40
  "@sd-jwt/sd-jwt-vc": "0.19.0",
37
41
  "canonicalize": "^3.0.0",
38
42
  "jose": "6.2.3",
39
- "@atrib/mcp": "0.20.0"
43
+ "@atrib/mcp": "0.21.0"
40
44
  },
41
45
  "devDependencies": {
42
46
  "@types/node": "^25.9.3",