@attestplane/attestplane 0.0.3-alpha → 0.0.5-alpha

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
@@ -2,7 +2,7 @@
2
2
 
3
3
  Apache-2.0 attestation and audit substrate for AI agent evidence chains.
4
4
 
5
- > **Status: alpha (v0.0.3-alpha).** Wire format is byte-locked against the Python
5
+ > **Status: alpha (v0.0.4-alpha).** Wire format is byte-locked against the Python
6
6
  > SDK's [`vectors.json`](../python/tests/conformance/vectors.json) — see
7
7
  > [ADR-0002][adr2]. APIs may still change before v0.1.0.
8
8
  > The current Python CLI `attestplane verify` path is chain/report-oriented
@@ -19,10 +19,10 @@ trademark policy.
19
19
  ## Install
20
20
 
21
21
  ```bash
22
- # Pin the alpha explicitly; v0.0.3-alpha is on the 'alpha' dist-tag.
22
+ # Pin the alpha explicitly; v0.0.4-alpha is the next prepared alpha version.
23
23
  npm install @attestplane/attestplane@alpha
24
24
  # or, equivalent:
25
- npm install @attestplane/attestplane@0.0.3-alpha
25
+ npm install @attestplane/attestplane@0.0.4-alpha
26
26
  ```
27
27
 
28
28
  `npm install @attestplane/attestplane` without a tag also resolves to
package/dist/index.d.ts CHANGED
@@ -17,6 +17,8 @@ export { FORBIDDEN_PAYLOAD_FIELDS, PayloadValidationError, validateLeaseLifecycl
17
17
  export { verifyReplayManifest, type ChainEventForReplay, type ReplayCoverage, type ReplayManifest, type ReplayVerificationResult, } from './replay_verifier.js';
18
18
  export { checkSettlementPrecondition, type ChainEventForSettlement, type SettlementPreconditionClaim, type SettlementVerificationResult, } from './settlement_verifier.js';
19
19
  export { ALL_REASON_CODES_V1, REASON_CODE_DESCRIPTIONS, REASON_CODE_SCHEMA_VERSION, isKnownReasonCode, reasonCodeMatchesFormat, type ReasonCodeV1, } from './reason_codes.js';
20
+ export { ALL_VERIFY_ERROR_CODES_V1, VERIFY_ERROR_DESCRIPTIONS, VERIFY_ERROR_SCHEMA_VERSION, isKnownVerifyErrorCode, type VerifyErrorCode, } from './verify_errors.js';
21
+ export { RETENTION_PROOF_SCHEMA_VERSION, buildDeletionProof, buildRetentionMarker, validateRetentionProof, verifyRetentionProofs, type RetentionAction, type RetentionProof, type RetentionProofVerificationResult, } from './retention.js';
20
22
  export { ALL_EVENT_TYPES_V1, BUDGET_EVENT, EVAL_EVENT, EVIDENCE_TAXONOMY_VERSION, GATEWAY_DECISION_EVENT, HUMAN_APPROVAL_EVENT, LEASE_LIFECYCLE_EVENT, POLICY_CHECK_EVENT, ROUTING_EVENT, RUNTIME_LIFECYCLE_EVENT, SETTLEMENT_EVENT, STATE_TRANSITION_EVENT, TOOL_CALL_EVENT, WORKER_ASSIGNMENT_EVENT, isKnownV1EventType, type EventTypeV1, } from './event_types.js';
21
23
  export { GENESIS_HASH, SCHEMA_VERSION, chainExtend, genesisHead, hashEvent, headOf, verifyChain, type ChainExtendOptions, type VerificationResult, } from './hashchain.js';
22
24
  export { AttestSubstrate, type AppendOptions } from './substrate.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
@@ -19,6 +19,8 @@ export { FORBIDDEN_PAYLOAD_FIELDS, PayloadValidationError, validateLeaseLifecycl
19
19
  export { verifyReplayManifest, } from './replay_verifier.js';
20
20
  export { checkSettlementPrecondition, } from './settlement_verifier.js';
21
21
  export { ALL_REASON_CODES_V1, REASON_CODE_DESCRIPTIONS, REASON_CODE_SCHEMA_VERSION, isKnownReasonCode, reasonCodeMatchesFormat, } from './reason_codes.js';
22
+ export { ALL_VERIFY_ERROR_CODES_V1, VERIFY_ERROR_DESCRIPTIONS, VERIFY_ERROR_SCHEMA_VERSION, isKnownVerifyErrorCode, } from './verify_errors.js';
23
+ export { RETENTION_PROOF_SCHEMA_VERSION, buildDeletionProof, buildRetentionMarker, validateRetentionProof, verifyRetentionProofs, } from './retention.js';
22
24
  export { ALL_EVENT_TYPES_V1, BUDGET_EVENT, EVAL_EVENT, EVIDENCE_TAXONOMY_VERSION, GATEWAY_DECISION_EVENT, HUMAN_APPROVAL_EVENT, LEASE_LIFECYCLE_EVENT, POLICY_CHECK_EVENT, ROUTING_EVENT, RUNTIME_LIFECYCLE_EVENT, SETTLEMENT_EVENT, STATE_TRANSITION_EVENT, TOOL_CALL_EVENT, WORKER_ASSIGNMENT_EVENT, isKnownV1EventType, } from './event_types.js';
23
25
  export { GENESIS_HASH, SCHEMA_VERSION, chainExtend, genesisHead, hashEvent, headOf, verifyChain, } from './hashchain.js';
24
26
  export { AttestSubstrate } from './substrate.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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"}
@@ -5,5 +5,5 @@
5
5
  * importing from `./index.ts`, which would create a circular import
6
6
  * (index.ts re-exports symbols from those same modules).
7
7
  */
8
- export declare const VERSION = "0.0.3-alpha";
8
+ export declare const VERSION = "0.0.5-alpha";
9
9
  //# sourceMappingURL=index_version.d.ts.map
@@ -7,5 +7,5 @@
7
7
  * importing from `./index.ts`, which would create a circular import
8
8
  * (index.ts re-exports symbols from those same modules).
9
9
  */
10
- export const VERSION = '0.0.3-alpha';
10
+ export const VERSION = '0.0.5-alpha';
11
11
  //# sourceMappingURL=index_version.js.map
@@ -8,6 +8,7 @@
8
8
  * chain produced by the TypeScript SDK that go through the same builder
9
9
  * inputs produce the same proof-bundle dict.
10
10
  */
11
+ import { type RetentionProof } from './retention.js';
11
12
  import { type SignatureRecord } from './signing/base.js';
12
13
  import type { ChainedEvent } from './types.js';
13
14
  export declare const DEFAULT_FORBIDDEN_FIELDS: readonly string[];
@@ -60,6 +61,11 @@ export interface ProofBundle {
60
61
  * v0.0.1-alpha bundles).
61
62
  */
62
63
  readonly signatures?: readonly SerializedSignatureRecord[];
64
+ /**
65
+ * Additive ADR-0015 commit-then-redact proof markers. Verifiers check marker
66
+ * shape and references only; they do not claim GDPR compliance.
67
+ */
68
+ readonly retention_proofs?: readonly RetentionProof[];
63
69
  }
64
70
  /**
65
71
  * Wire-format `SignatureRecord` per `_serialize_signature_record` in
@@ -128,6 +134,7 @@ export declare class ProofBundleBuilder {
128
134
  private readonly _events;
129
135
  private readonly _framework_mappings;
130
136
  private readonly _signatures;
137
+ private readonly _retention_proofs;
131
138
  constructor(input: ProofBundleBuilderInput);
132
139
  extend(events: readonly ChainedEvent[]): void;
133
140
  addFrameworkMapping(mapping: FrameworkMapping): void;
@@ -138,6 +145,7 @@ export declare class ProofBundleBuilder {
138
145
  * been added (preserves byte equality with v0.0.1-alpha bundles).
139
146
  */
140
147
  extendSignatures(records: readonly SignatureRecord[]): void;
148
+ extendRetentionProofs(records: readonly RetentionProof[]): void;
141
149
  build(options?: {
142
150
  readonly now?: Date;
143
151
  }): ProofBundle;
@@ -1 +1 @@
1
- {"version":3,"file":"proof_bundle.d.ts","sourceRoot":"","sources":["../src/proof_bundle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proof_bundle.d.ts","sourceRoot":"","sources":["../src/proof_bundle.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@
12
12
  */
13
13
  import { SCHEMA_VERSION, headOf, verifyChain } from './hashchain.js';
14
14
  import { VERSION as _SDK_VERSION } from './index_version.js';
15
+ import { validateRetentionProof } from './retention.js';
15
16
  import { SIGNATURE_SCHEMA_VERSION, validateSignatureRecord, } from './signing/base.js';
16
17
  export const DEFAULT_FORBIDDEN_FIELDS = [
17
18
  'customer_names',
@@ -172,6 +173,7 @@ export class ProofBundleBuilder {
172
173
  _events = [];
173
174
  _framework_mappings = [];
174
175
  _signatures = [];
176
+ _retention_proofs = [];
175
177
  constructor(input) {
176
178
  this._chain_id = input.chain_id;
177
179
  this._producer_runtime = input.producer_runtime;
@@ -206,6 +208,12 @@ export class ProofBundleBuilder {
206
208
  this._signatures.push(r);
207
209
  }
208
210
  }
211
+ extendRetentionProofs(records) {
212
+ for (const r of records) {
213
+ validateRetentionProof(r);
214
+ this._retention_proofs.push(r);
215
+ }
216
+ }
209
217
  build(options) {
210
218
  const actualNow = options?.now ?? new Date();
211
219
  const result = verifyChain(this._events);
@@ -245,6 +253,9 @@ export class ProofBundleBuilder {
245
253
  ...(this._signatures.length > 0
246
254
  ? { signatures: this._signatures.map(serializeSignatureRecord) }
247
255
  : {}),
256
+ ...(this._retention_proofs.length > 0
257
+ ? { retention_proofs: [...this._retention_proofs] }
258
+ : {}),
248
259
  };
249
260
  return bundle;
250
261
  }
@@ -1 +1 @@
1
- {"version":3,"file":"proof_bundle.js","sourceRoot":"","sources":["../src/proof_bundle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proof_bundle.js","sourceRoot":"","sources":["../src/proof_bundle.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Commit-then-redact retention/deletion proof helpers.
3
+ *
4
+ * The profile proves that a bundle carries well-formed proof markers
5
+ * referencing existing events. It does not claim GDPR compliance or legal
6
+ * sufficiency.
7
+ */
8
+ export declare const RETENTION_PROOF_SCHEMA_VERSION = 1;
9
+ export type RetentionAction = 'retention_marker' | 'deletion_marker';
10
+ export interface RetentionProof {
11
+ readonly retention_proof_schema_version: 1;
12
+ readonly proof_id: string;
13
+ readonly action: RetentionAction;
14
+ readonly target_event_hash_hex: string;
15
+ readonly commit_event_hash_hex: string;
16
+ readonly redacted_event_hash_hex?: string;
17
+ readonly reason: string;
18
+ }
19
+ export interface RetentionProofVerificationResult {
20
+ readonly ok: boolean;
21
+ readonly reason: string | null;
22
+ readonly checked_count: number;
23
+ readonly failed_index: number | null;
24
+ }
25
+ export declare function buildDeletionProof(input: {
26
+ readonly proof_id: string;
27
+ readonly target_event_hash_hex: string;
28
+ readonly commit_event_hash_hex: string;
29
+ readonly redacted_event_hash_hex: string;
30
+ readonly reason: string;
31
+ }): RetentionProof;
32
+ export declare function buildRetentionMarker(input: {
33
+ readonly proof_id: string;
34
+ readonly target_event_hash_hex: string;
35
+ readonly commit_event_hash_hex: string;
36
+ readonly reason: string;
37
+ }): RetentionProof;
38
+ export declare function validateRetentionProof(raw: unknown): asserts raw is RetentionProof;
39
+ export declare function verifyRetentionProofs(proofs: unknown, eventHashes: ReadonlySet<string>): RetentionProofVerificationResult;
40
+ //# sourceMappingURL=retention.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retention.d.ts","sourceRoot":"","sources":["../src/retention.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AAEH,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD,MAAM,MAAM,eAAe,GAAG,kBAAkB,GAAG,iBAAiB,CAAC;AAErE,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,8BAA8B,EAAE,CAAC,CAAC;IAC3C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAID,wBAAgB,kBAAkB,CAAC,KAAK,EAAE;IACxC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB,GAAG,cAAc,CAYjB;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAC1C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB,GAAG,cAAc,CAWjB;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,IAAI,cAAc,CAiDlF;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,OAAO,EACf,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,GAC/B,gCAAgC,CA4DlC"}
@@ -0,0 +1,146 @@
1
+ // SPDX-FileCopyrightText: 2026 The Attestplane Authors
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ /**
4
+ * Commit-then-redact retention/deletion proof helpers.
5
+ *
6
+ * The profile proves that a bundle carries well-formed proof markers
7
+ * referencing existing events. It does not claim GDPR compliance or legal
8
+ * sufficiency.
9
+ */
10
+ export const RETENTION_PROOF_SCHEMA_VERSION = 1;
11
+ const HEX64 = /^[0-9a-f]{64}$/;
12
+ export function buildDeletionProof(input) {
13
+ const proof = {
14
+ action: 'deletion_marker',
15
+ commit_event_hash_hex: input.commit_event_hash_hex,
16
+ proof_id: input.proof_id,
17
+ reason: input.reason,
18
+ redacted_event_hash_hex: input.redacted_event_hash_hex,
19
+ retention_proof_schema_version: RETENTION_PROOF_SCHEMA_VERSION,
20
+ target_event_hash_hex: input.target_event_hash_hex,
21
+ };
22
+ validateRetentionProof(proof);
23
+ return proof;
24
+ }
25
+ export function buildRetentionMarker(input) {
26
+ const proof = {
27
+ action: 'retention_marker',
28
+ commit_event_hash_hex: input.commit_event_hash_hex,
29
+ proof_id: input.proof_id,
30
+ reason: input.reason,
31
+ retention_proof_schema_version: RETENTION_PROOF_SCHEMA_VERSION,
32
+ target_event_hash_hex: input.target_event_hash_hex,
33
+ };
34
+ validateRetentionProof(proof);
35
+ return proof;
36
+ }
37
+ export function validateRetentionProof(raw) {
38
+ if (typeof raw !== 'object' || raw === null || Array.isArray(raw)) {
39
+ throw new Error('retention proof must be an object');
40
+ }
41
+ const record = raw;
42
+ const required = [
43
+ 'retention_proof_schema_version',
44
+ 'proof_id',
45
+ 'action',
46
+ 'target_event_hash_hex',
47
+ 'commit_event_hash_hex',
48
+ 'reason',
49
+ ];
50
+ const missing = required.filter((field) => !(field in record));
51
+ if (missing.length > 0) {
52
+ throw new Error(`retention proof missing required fields: ${JSON.stringify(missing)}`);
53
+ }
54
+ if (record.retention_proof_schema_version !== RETENTION_PROOF_SCHEMA_VERSION) {
55
+ throw new Error('retention_proof_schema_version must be 1');
56
+ }
57
+ if (typeof record.proof_id !== 'string' || record.proof_id.length === 0) {
58
+ throw new Error('proof_id must be a non-empty string');
59
+ }
60
+ if (record.action !== 'retention_marker' && record.action !== 'deletion_marker') {
61
+ throw new Error('action must be retention_marker or deletion_marker');
62
+ }
63
+ if (typeof record.reason !== 'string' || record.reason.length === 0) {
64
+ throw new Error('reason must be a non-empty string');
65
+ }
66
+ for (const key of ['target_event_hash_hex', 'commit_event_hash_hex']) {
67
+ if (typeof record[key] !== 'string' || !HEX64.test(record[key])) {
68
+ throw new Error(`${key} must be lowercase 64-hex`);
69
+ }
70
+ }
71
+ if (record.action === 'deletion_marker') {
72
+ if (typeof record.redacted_event_hash_hex !== 'string' ||
73
+ !HEX64.test(record.redacted_event_hash_hex)) {
74
+ throw new Error('redacted_event_hash_hex must be lowercase 64-hex for deletion_marker');
75
+ }
76
+ }
77
+ else if (record.redacted_event_hash_hex !== undefined) {
78
+ if (typeof record.redacted_event_hash_hex !== 'string' ||
79
+ !HEX64.test(record.redacted_event_hash_hex)) {
80
+ throw new Error('redacted_event_hash_hex must be lowercase 64-hex when present');
81
+ }
82
+ }
83
+ }
84
+ export function verifyRetentionProofs(proofs, eventHashes) {
85
+ if (proofs === undefined) {
86
+ return { checked_count: 0, failed_index: null, ok: true, reason: null };
87
+ }
88
+ if (!Array.isArray(proofs)) {
89
+ return {
90
+ checked_count: 0,
91
+ failed_index: 0,
92
+ ok: false,
93
+ reason: 'retention_proofs must be an array',
94
+ };
95
+ }
96
+ const seen = new Set();
97
+ for (let i = 0; i < proofs.length; i++) {
98
+ const proof = proofs[i];
99
+ if (typeof proof !== 'object' || proof === null || Array.isArray(proof)) {
100
+ return {
101
+ checked_count: i,
102
+ failed_index: i,
103
+ ok: false,
104
+ reason: `retention_proofs[${i}] must be an object`,
105
+ };
106
+ }
107
+ try {
108
+ validateRetentionProof(proof);
109
+ }
110
+ catch (exc) {
111
+ const message = exc instanceof Error ? exc.message : String(exc);
112
+ return {
113
+ checked_count: i,
114
+ failed_index: i,
115
+ ok: false,
116
+ reason: `retention_proofs[${i}]: ${message}`,
117
+ };
118
+ }
119
+ const typed = proof;
120
+ if (seen.has(typed.proof_id)) {
121
+ return {
122
+ checked_count: i,
123
+ failed_index: i,
124
+ ok: false,
125
+ reason: `retention_proofs[${i}] duplicate proof_id`,
126
+ };
127
+ }
128
+ seen.add(typed.proof_id);
129
+ const refs = [
130
+ typed.target_event_hash_hex,
131
+ typed.commit_event_hash_hex,
132
+ ...(typed.redacted_event_hash_hex !== undefined ? [typed.redacted_event_hash_hex] : []),
133
+ ];
134
+ const missing = refs.filter((ref) => !eventHashes.has(ref));
135
+ if (missing.length > 0) {
136
+ return {
137
+ checked_count: i,
138
+ failed_index: i,
139
+ ok: false,
140
+ reason: `retention_proofs[${i}] contains dangling event refs: ${JSON.stringify(missing)}`,
141
+ };
142
+ }
143
+ }
144
+ return { checked_count: proofs.length, failed_index: null, ok: true, reason: null };
145
+ }
146
+ //# sourceMappingURL=retention.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retention.js","sourceRoot":"","sources":["../src/retention.ts"],"names":[],"mappings":"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"}
package/dist/rfc3161.d.ts CHANGED
@@ -3,13 +3,13 @@
3
3
  * (TypeScript port of `sdk/python/src/attestplane/anchoring/rfc3161.py`).
4
4
  *
5
5
  * Built on `src/der.ts` (hand-rolled DER reader) + Node's stdlib
6
- * `crypto.verify` for RSA-PKCS1v15-SHA256. No additional npm
6
+ * `crypto.verify` for RSA/ECDSA CMS signatures. No additional npm
7
7
  * dependencies — the TypeScript SDK keeps the same lean dep tree as
8
8
  * v0.0.1-alpha while gaining real signature verification.
9
9
  *
10
10
  * The parser handles the specific structures defined in RFC-3161,
11
11
  * RFC-5652 (CMS SignedData), and the X.509 subset needed to extract
12
- * the RSA public key from a leaf cert's SubjectPublicKeyInfo.
12
+ * the public key from a leaf cert's SubjectPublicKeyInfo.
13
13
  *
14
14
  * Cross-language conformance: TS reproduces Python's
15
15
  * parse_timestamp_response semantics byte-for-byte. The
@@ -1 +1 @@
1
- {"version":3,"file":"rfc3161.d.ts","sourceRoot":"","sources":["../src/rfc3161.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;GAgBG;AAuBH,qEAAqE;AACrE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,cAAc,EAAE,UAAU,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;IACvB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,UAAU,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;CACxC;AAwBD,+EAA+E;AAC/E,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,UAAU,GAAG,iBAAiB,CAgNjF;AAuJD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,cAAc,EAAE,UAAU,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,SAAS,UAAU,EAAE,CAAC;IAC9C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IAClD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,IAAI,CAAC;IACjC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,sBAAsB,GAC9B,IAAI,CA0GN"}
1
+ {"version":3,"file":"rfc3161.d.ts","sourceRoot":"","sources":["../src/rfc3161.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;GAgBG;AAmCH,qEAAqE;AACrE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,cAAc,EAAE,UAAU,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;IACvB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,UAAU,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;CACxC;AAwBD,+EAA+E;AAC/E,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,UAAU,GAAG,iBAAiB,CA8NjF;AAkTD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,cAAc,EAAE,UAAU,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,SAAS,UAAU,EAAE,CAAC;IAC9C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IAClD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,IAAI,CAAC;IACjC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,sBAAsB,GAC9B,IAAI,CA2HN"}
package/dist/rfc3161.js CHANGED
@@ -5,24 +5,36 @@
5
5
  * (TypeScript port of `sdk/python/src/attestplane/anchoring/rfc3161.py`).
6
6
  *
7
7
  * Built on `src/der.ts` (hand-rolled DER reader) + Node's stdlib
8
- * `crypto.verify` for RSA-PKCS1v15-SHA256. No additional npm
8
+ * `crypto.verify` for RSA/ECDSA CMS signatures. No additional npm
9
9
  * dependencies — the TypeScript SDK keeps the same lean dep tree as
10
10
  * v0.0.1-alpha while gaining real signature verification.
11
11
  *
12
12
  * The parser handles the specific structures defined in RFC-3161,
13
13
  * RFC-5652 (CMS SignedData), and the X.509 subset needed to extract
14
- * the RSA public key from a leaf cert's SubjectPublicKeyInfo.
14
+ * the public key from a leaf cert's SubjectPublicKeyInfo.
15
15
  *
16
16
  * Cross-language conformance: TS reproduces Python's
17
17
  * parse_timestamp_response semantics byte-for-byte. The
18
18
  * anchor_vectors.json fixtures verify in both languages.
19
19
  */
20
- import { createPublicKey, createVerify } from 'node:crypto';
20
+ import { createHash, createPublicKey, createVerify } from 'node:crypto';
21
21
  import { AnchorVerificationError } from './anchoring.js';
22
22
  import { DerParseError, getValueBytes, readBitString, readGeneralizedTime, readInteger, readOctetString, readOid, readSequence, readTlv, tlvDer, } from './der.js';
23
23
  // Well-known OIDs used in the structures we parse.
24
24
  const OID_SIGNED_DATA = '1.2.840.113549.1.7.2';
25
25
  const OID_TST_INFO = '1.2.840.113549.1.9.16.1.4';
26
+ const OID_CONTENT_TYPE_ATTR = '1.2.840.113549.1.9.3';
27
+ const OID_MESSAGE_DIGEST_ATTR = '1.2.840.113549.1.9.4';
28
+ const OID_SHA256 = '2.16.840.1.101.3.4.2.1';
29
+ const OID_SHA384 = '2.16.840.1.101.3.4.2.2';
30
+ const OID_SHA512 = '2.16.840.1.101.3.4.2.3';
31
+ const OID_RSA_PKCS1 = '1.2.840.113549.1.1.1';
32
+ const OID_SHA256_RSA = '1.2.840.113549.1.1.11';
33
+ const OID_SHA384_RSA = '1.2.840.113549.1.1.12';
34
+ const OID_SHA512_RSA = '1.2.840.113549.1.1.13';
35
+ const OID_SHA256_ECDSA = '1.2.840.10045.4.3.2';
36
+ const OID_SHA384_ECDSA = '1.2.840.10045.4.3.3';
37
+ const OID_SHA512_ECDSA = '1.2.840.10045.4.3.4';
26
38
  function topSequence(buffer) {
27
39
  const tlv = readTlv(buffer, 0);
28
40
  if (tlv.tag !== 0x30) {
@@ -136,7 +148,7 @@ export function parseTimestampResponse(responseDer) {
136
148
  const messageImprintFields = readSequence(messageImprintSeq);
137
149
  // MessageImprint ::= SEQUENCE { hashAlgorithm AlgorithmIdentifier, hashedMessage OCTET STRING }
138
150
  const hashAlgOid = readOid(readSequence(messageImprintFields[0])[0]);
139
- const hashAlgorithm = hashAlgOid === '2.16.840.1.101.3.4.2.1' ? 'sha256' : hashAlgOid;
151
+ const hashAlgorithm = digestAlgorithmName(hashAlgOid) ?? hashAlgOid;
140
152
  const hashedMessage = readOctetString(messageImprintFields[1]);
141
153
  const serialNumber = readInteger(tstFields[3]);
142
154
  const genTime = readGeneralizedTime(tstFields[4]);
@@ -162,11 +174,11 @@ export function parseTimestampResponse(responseDer) {
162
174
  if (certsField === null) {
163
175
  throw new AnchorVerificationError('SignedData has no certificates');
164
176
  }
165
- const certs = readSequence(certsField);
166
- if (certs.length === 0) {
177
+ const certTlvs = readSequence(certsField);
178
+ if (certTlvs.length === 0) {
167
179
  throw new AnchorVerificationError('certificates set is empty');
168
180
  }
169
- const leafCertDer = tlvDer(certs[0]);
181
+ const certsDer = certTlvs.map((cert) => tlvDer(cert));
170
182
  // Find signerInfos SET (last SET in signedDataItems).
171
183
  let signerInfosField = null;
172
184
  for (let i = signedDataItems.length - 1; i >= 0; i--) {
@@ -192,12 +204,14 @@ export function parseTimestampResponse(responseDer) {
192
204
  let digestAlgo = null;
193
205
  let signatureAlgo = null;
194
206
  let signatureField = null;
207
+ let signerSid = null;
195
208
  let sawSid = false;
196
209
  for (let i = 0; i < siFields.length; i++) {
197
210
  const f = siFields[i];
198
211
  if (i === 0)
199
212
  continue; // version
200
213
  if (!sawSid) {
214
+ signerSid = f;
201
215
  sawSid = true;
202
216
  continue; // sid
203
217
  }
@@ -228,6 +242,16 @@ export function parseTimestampResponse(responseDer) {
228
242
  const signature = readOctetString(signatureField);
229
243
  const digestAlgorithmOid = readOid(readSequence(digestAlgo)[0]);
230
244
  const signatureAlgorithmOid = readOid(readSequence(signatureAlgo)[0]);
245
+ const digestAlgorithm = digestAlgorithmName(digestAlgorithmOid);
246
+ if (digestAlgorithm === null) {
247
+ throw new AnchorVerificationError(`unsupported SignerInfo digest algorithm: ${digestAlgorithmOid}`);
248
+ }
249
+ validateSignedAttrs(signedAttrsDer, tstInfoDer, digestAlgorithm);
250
+ if (signerSid === null) {
251
+ throw new AnchorVerificationError('SignerInfo missing sid');
252
+ }
253
+ const { issuerDer, serialNumber: signerSerialNumber } = parseIssuerAndSerialSignerId(signerSid);
254
+ const leafCertDer = selectSignerCertificate(certsDer, issuerDer, signerSerialNumber);
231
255
  return {
232
256
  policyOid,
233
257
  hashAlgorithm,
@@ -242,6 +266,75 @@ export function parseTimestampResponse(responseDer) {
242
266
  signatureAlgorithmOid,
243
267
  };
244
268
  }
269
+ function digestAlgorithmName(oid) {
270
+ if (oid === OID_SHA256)
271
+ return 'sha256';
272
+ if (oid === OID_SHA384)
273
+ return 'sha384';
274
+ if (oid === OID_SHA512)
275
+ return 'sha512';
276
+ return null;
277
+ }
278
+ function hashBytes(data, algorithm) {
279
+ return new Uint8Array(createHash(algorithm).update(Buffer.from(data)).digest());
280
+ }
281
+ function parseIssuerAndSerialSignerId(sid) {
282
+ if (sid.tag !== 0x30) {
283
+ throw new AnchorVerificationError('SignerInfo.sid subjectKeyIdentifier is not supported');
284
+ }
285
+ const sidFields = readSequence(sid);
286
+ if (sidFields.length < 2) {
287
+ throw new AnchorVerificationError('SignerInfo.sid issuerAndSerialNumber is incomplete');
288
+ }
289
+ return {
290
+ issuerDer: tlvDer(sidFields[0]),
291
+ serialNumber: readInteger(sidFields[1]),
292
+ };
293
+ }
294
+ function validateSignedAttrs(signedAttrsDer, tstInfoDer, digestAlgorithm) {
295
+ const attrsSet = readTlv(signedAttrsDer, 0);
296
+ if (attrsSet.tag !== 0x31) {
297
+ throw new AnchorVerificationError(`SignerInfo signed_attrs signature input is not a SET: 0x${attrsSet.tag.toString(16)}`);
298
+ }
299
+ const attrs = readSequence(attrsSet);
300
+ let contentTypeOk = false;
301
+ let messageDigestOk = false;
302
+ const expectedDigest = hashBytes(tstInfoDer, digestAlgorithm);
303
+ for (const attr of attrs) {
304
+ if (attr.tag !== 0x30)
305
+ continue;
306
+ const attrFields = readSequence(attr);
307
+ if (attrFields.length < 2)
308
+ continue;
309
+ const attrOid = readOid(attrFields[0]);
310
+ const valuesSet = attrFields[1];
311
+ const values = readSequence(valuesSet);
312
+ if (values.length === 0)
313
+ continue;
314
+ if (attrOid === OID_CONTENT_TYPE_ATTR) {
315
+ contentTypeOk = readOid(values[0]) === OID_TST_INFO;
316
+ continue;
317
+ }
318
+ if (attrOid === OID_MESSAGE_DIGEST_ATTR) {
319
+ messageDigestOk = bytesEqual(readOctetString(values[0]), expectedDigest);
320
+ }
321
+ }
322
+ if (!contentTypeOk) {
323
+ throw new AnchorVerificationError('SignerInfo signed_attrs content_type is not tst_info');
324
+ }
325
+ if (!messageDigestOk) {
326
+ throw new AnchorVerificationError('SignerInfo signed_attrs message_digest mismatch');
327
+ }
328
+ }
329
+ function selectSignerCertificate(certsDer, issuerDer, serialNumber) {
330
+ for (const der of certsDer) {
331
+ const cert = parseCertificate(der);
332
+ if (cert.serialNumber === serialNumber && bytesEqual(cert.issuerDer, issuerDer)) {
333
+ return der;
334
+ }
335
+ }
336
+ throw new AnchorVerificationError('SignerInfo signer certificate not found by issuer+serial');
337
+ }
245
338
  function readUtcOrGeneralizedTime(tlv) {
246
339
  // UTCTime (0x17) format: YYMMDDhhmmssZ
247
340
  // GeneralizedTime (0x18) format: YYYYMMDDhhmmss[.fff]Z
@@ -283,6 +376,7 @@ function parseCertificate(der) {
283
376
  if (tbsFields[cursor].tag === 0xa0) {
284
377
  cursor += 1;
285
378
  }
379
+ const serialNumber = readInteger(tbsFields[cursor]);
286
380
  cursor += 1; // serialNumber
287
381
  cursor += 1; // signature AlgorithmIdentifier
288
382
  const issuerDer = tlvDer(tbsFields[cursor]);
@@ -306,6 +400,8 @@ function parseCertificate(der) {
306
400
  }
307
401
  // BasicConstraints CA flag: walk extensions if present.
308
402
  let isCa = false;
403
+ let tsaEkuCritical = false;
404
+ let hasTsaEku = false;
309
405
  while (cursor < tbsFields.length) {
310
406
  const f = tbsFields[cursor];
311
407
  cursor += 1;
@@ -317,17 +413,30 @@ function parseCertificate(der) {
317
413
  // Each ext: SEQUENCE { extnID OID, critical BOOLEAN OPT, extnValue OCTET STRING }
318
414
  const extFields = readSequence(ext);
319
415
  const oid = readOid(extFields[0]);
320
- if (oid !== '2.5.29.19')
321
- continue; // basicConstraints
322
- // extnValue is the last OCTET STRING.
416
+ const critical = extFields.length >= 3 &&
417
+ extFields[1].tag === 0x01 &&
418
+ extFields[1].buffer[extFields[1].valueStart] !== 0;
323
419
  const valueBytes = readOctetString(extFields[extFields.length - 1]);
420
+ if (oid === '2.5.29.19') {
421
+ // basicConstraints
422
+ const bcSeq = readTlv(valueBytes, 0);
423
+ const bcFields = readSequence(bcSeq);
424
+ if (bcFields.length > 0) {
425
+ const cTlv = bcFields[0];
426
+ if (cTlv.tag === 0x01) {
427
+ // BOOLEAN: cA. Non-zero value = true.
428
+ isCa = cTlv.buffer[cTlv.valueStart] !== 0;
429
+ }
430
+ }
431
+ continue;
432
+ }
433
+ if (oid !== '2.5.29.37')
434
+ continue; // extendedKeyUsage
324
435
  const bcSeq = readTlv(valueBytes, 0);
325
- const bcFields = readSequence(bcSeq);
326
- if (bcFields.length > 0) {
327
- const cTlv = bcFields[0];
328
- if (cTlv.tag === 0x01) {
329
- // BOOLEAN: cA. Non-zero value = true.
330
- isCa = cTlv.buffer[cTlv.valueStart] !== 0;
436
+ for (const eku of readSequence(bcSeq)) {
437
+ if (readOid(eku) === '1.3.6.1.5.5.7.3.8') {
438
+ hasTsaEku = true;
439
+ tsaEkuCritical = critical;
331
440
  }
332
441
  }
333
442
  }
@@ -337,6 +446,7 @@ function parseCertificate(der) {
337
446
  const signatureAlgorithmOid = readOid(readSequence(sigAlg)[0]);
338
447
  return {
339
448
  der,
449
+ serialNumber,
340
450
  subjectDer,
341
451
  issuerDer,
342
452
  notBefore,
@@ -346,6 +456,8 @@ function parseCertificate(der) {
346
456
  signatureAlgorithmOid,
347
457
  signature: sigBytes,
348
458
  isCa,
459
+ tsaEkuCritical,
460
+ hasTsaEku,
349
461
  };
350
462
  }
351
463
  function bytesEqual(a, b) {
@@ -357,12 +469,40 @@ function bytesEqual(a, b) {
357
469
  }
358
470
  return true;
359
471
  }
360
- function verifyRsaSha256(publicKey, data, signature) {
361
- const v = createVerify('RSA-SHA256');
472
+ function verifyAllowedSignature(publicKey, data, signature, signatureAlgorithmOid, digestAlgorithm) {
473
+ const nodeAlgorithm = verificationAlgorithm(publicKey, signatureAlgorithmOid, digestAlgorithm);
474
+ const v = createVerify(nodeAlgorithm);
362
475
  v.update(Buffer.from(data));
363
476
  v.end();
364
477
  return v.verify(publicKey, Buffer.from(signature));
365
478
  }
479
+ function verificationAlgorithm(publicKey, signatureAlgorithmOid, digestAlgorithm) {
480
+ const digestUpper = digestAlgorithm.toUpperCase();
481
+ if (publicKey.asymmetricKeyType === 'rsa' &&
482
+ (signatureAlgorithmOid === OID_RSA_PKCS1 ||
483
+ signatureAlgorithmOid === OID_SHA256_RSA ||
484
+ signatureAlgorithmOid === OID_SHA384_RSA ||
485
+ signatureAlgorithmOid === OID_SHA512_RSA)) {
486
+ const expectedDigest = signatureAlgorithmOid === OID_SHA256_RSA
487
+ ? 'sha256'
488
+ : signatureAlgorithmOid === OID_SHA384_RSA
489
+ ? 'sha384'
490
+ : signatureAlgorithmOid === OID_SHA512_RSA
491
+ ? 'sha512'
492
+ : digestAlgorithm;
493
+ if (expectedDigest !== digestAlgorithm) {
494
+ throw new AnchorVerificationError(`signature algorithm digest ${expectedDigest} does not match digest algorithm ${digestAlgorithm}`);
495
+ }
496
+ return `RSA-${digestUpper}`;
497
+ }
498
+ if (publicKey.asymmetricKeyType === 'ec' &&
499
+ ((signatureAlgorithmOid === OID_SHA256_ECDSA && digestAlgorithm === 'sha256') ||
500
+ (signatureAlgorithmOid === OID_SHA384_ECDSA && digestAlgorithm === 'sha384') ||
501
+ (signatureAlgorithmOid === OID_SHA512_ECDSA && digestAlgorithm === 'sha512'))) {
502
+ return digestUpper;
503
+ }
504
+ throw new AnchorVerificationError(`unsupported signature algorithm/key combination: oid=${signatureAlgorithmOid}, digest=${digestAlgorithm}, key=${publicKey.asymmetricKeyType ?? 'unknown'}`);
505
+ }
366
506
  /**
367
507
  * Verify a parsed TimeStampToken against the expected message digest +
368
508
  * trust roots + intermediates.
@@ -391,9 +531,16 @@ export function verifyTimestampToken(parsed, options) {
391
531
  catch (exc) {
392
532
  throw new AnchorVerificationError(`leaf cert is not valid DER: ${exc instanceof Error ? exc.message : String(exc)}`);
393
533
  }
534
+ if (!leaf.hasTsaEku || !leaf.tsaEkuCritical) {
535
+ throw new AnchorVerificationError('leaf cert EKU does not include critical timeStamping');
536
+ }
394
537
  // Verify the TSA signature over signedAttrs using the leaf cert's
395
538
  // public key.
396
- if (!verifyRsaSha256(leaf.publicKey, parsed.signedAttrsDer, parsed.signature)) {
539
+ const signerDigest = digestAlgorithmName(parsed.digestAlgorithmOid);
540
+ if (signerDigest === null) {
541
+ throw new AnchorVerificationError(`unsupported SignerInfo digest algorithm: ${parsed.digestAlgorithmOid}`);
542
+ }
543
+ if (!verifyAllowedSignature(leaf.publicKey, parsed.signedAttrsDer, parsed.signature, parsed.signatureAlgorithmOid, signerDigest)) {
397
544
  throw new AnchorVerificationError('TSA signature does not verify against leaf cert');
398
545
  }
399
546
  // Time validity for the leaf.
@@ -466,10 +613,23 @@ function verifyLink(child, issuer, when) {
466
613
  if (when > issuer.notAfter) {
467
614
  throw new AnchorVerificationError(`verification_time exceeds issuer cert not_after ${issuer.notAfter.toISOString()}`);
468
615
  }
469
- if (!verifyRsaSha256(issuer.publicKey, child.tbsBytes, child.signature)) {
616
+ const certDigest = certSignatureDigest(child.signatureAlgorithmOid);
617
+ if (!verifyAllowedSignature(issuer.publicKey, child.tbsBytes, child.signature, child.signatureAlgorithmOid, certDigest)) {
470
618
  throw new AnchorVerificationError('cert signature does not verify against issuer');
471
619
  }
472
620
  }
621
+ function certSignatureDigest(signatureAlgorithmOid) {
622
+ if (signatureAlgorithmOid === OID_SHA256_RSA || signatureAlgorithmOid === OID_SHA256_ECDSA) {
623
+ return 'sha256';
624
+ }
625
+ if (signatureAlgorithmOid === OID_SHA384_RSA || signatureAlgorithmOid === OID_SHA384_ECDSA) {
626
+ return 'sha384';
627
+ }
628
+ if (signatureAlgorithmOid === OID_SHA512_RSA || signatureAlgorithmOid === OID_SHA512_ECDSA) {
629
+ return 'sha512';
630
+ }
631
+ throw new AnchorVerificationError(`unsupported cert signature algorithm: ${signatureAlgorithmOid}`);
632
+ }
473
633
  function bytesToHexString(b) {
474
634
  let out = '';
475
635
  for (let i = 0; i < b.length; i++) {
@@ -1 +1 @@
1
- {"version":3,"file":"rfc3161.js","sourceRoot":"","sources":["../src/rfc3161.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rfc3161.js","sourceRoot":"","sources":["../src/rfc3161.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@
13
13
  * other than optionally reading a file when using `verifyProofBundleFile`.
14
14
  */
15
15
  import { type VerificationResult } from './hashchain.js';
16
+ import { type VerifyErrorCode } from './verify_errors.js';
16
17
  export declare class BundleVerificationError extends Error {
17
18
  constructor(message: string);
18
19
  }
@@ -32,6 +33,9 @@ export interface BundleVerificationResult {
32
33
  readonly metadata_reason: string | null;
33
34
  readonly policy_trace_refs_ok: boolean;
34
35
  readonly policy_trace_refs_reason: string | null;
36
+ readonly retention_proofs_ok: boolean;
37
+ readonly retention_proofs_reason: string | null;
38
+ readonly error_code: VerifyErrorCode;
35
39
  }
36
40
  export declare function shortSummary(result: BundleVerificationResult): string;
37
41
  export declare function verifyProofBundle(raw: unknown): BundleVerificationResult;
@@ -1 +1 @@
1
- {"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["../src/verifier.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AAKH,OAAO,EAGL,KAAK,kBAAkB,EAGxB,MAAM,gBAAgB,CAAC;AAUxB,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,OAAO,EAAE,MAAM;CAI5B;AAED,qBAAa,iBAAkB,SAAQ,uBAAuB;gBAChD,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;IACvC,QAAQ,CAAC,wBAAwB,EAAE,MAAM,GAAG,IAAI,CAAC;CAClD;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,wBAAwB,GAAG,MAAM,CAcrE;AAiUD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,wBAAwB,CAwBxE;AAED,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAkB3F"}
1
+ {"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["../src/verifier.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AAKH,OAAO,EAGL,KAAK,kBAAkB,EAGxB,MAAM,gBAAgB,CAAC;AAUxB,OAAO,EAML,KAAK,eAAe,EACrB,MAAM,oBAAoB,CAAC;AAE5B,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,OAAO,EAAE,MAAM;CAI5B;AAED,qBAAa,iBAAkB,SAAQ,uBAAuB;gBAChD,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;IACvC,QAAQ,CAAC,wBAAwB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjD,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC;IACtC,QAAQ,CAAC,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChD,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC;CACtC;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,wBAAwB,GAAG,MAAM,CAgBrE;AAqUD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,wBAAwB,CAyCxE;AAED,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAkB3F"}
package/dist/verifier.js CHANGED
@@ -18,6 +18,8 @@ import { promises as fs } from 'node:fs';
18
18
  import { POLICY_CHECK_EVENT } from './event_types.js';
19
19
  import { GENESIS_HASH, SCHEMA_VERSION, headOf, verifyChain, } from './hashchain.js';
20
20
  import { DEFAULT_FORBIDDEN_FIELDS } from './proof_bundle.js';
21
+ import { verifyRetentionProofs } from './retention.js';
22
+ import { VERIFY_CHAIN_RECOMPUTE_FAILED, VERIFY_METADATA_CLOSURE_FAILED, VERIFY_OK, VERIFY_POLICY_TRACE_REFS_FAILED, VERIFY_RETENTION_PROOF_FAILED, } from './verify_errors.js';
21
23
  export class BundleVerificationError extends Error {
22
24
  constructor(message) {
23
25
  super(message);
@@ -39,7 +41,9 @@ export function shortSummary(result) {
39
41
  return (`FAIL chain_id='${result.chain_id}' events=${result.event_count} ` +
40
42
  `first_bad_index=${bad} reason=${JSON.stringify(result.chain_result.reason)} ` +
41
43
  `agreement=${result.agreement} metadata_reason=${JSON.stringify(result.metadata_reason)} ` +
42
- `policy_trace_refs_reason=${JSON.stringify(result.policy_trace_refs_reason)}`);
44
+ `policy_trace_refs_reason=${JSON.stringify(result.policy_trace_refs_reason)} ` +
45
+ `retention_proofs_reason=${JSON.stringify(result.retention_proofs_reason)} ` +
46
+ `error_code=${result.error_code}`);
43
47
  }
44
48
  const REQUIRED_TOP_LEVEL = [
45
49
  'bundle_version',
@@ -70,6 +74,7 @@ const ALLOWED_TOP_LEVEL = new Set([
70
74
  'signature',
71
75
  'policy_trace_refs',
72
76
  'signatures',
77
+ 'retention_proofs',
73
78
  ]);
74
79
  const ALLOWED_VERIFICATION_METHODS = new Set([
75
80
  'canonical-bytes-walk',
@@ -134,6 +139,9 @@ function validateShape(raw) {
134
139
  if ('policy_trace_refs' in raw && !Array.isArray(raw.policy_trace_refs)) {
135
140
  throw new BundleSchemaError('policy_trace_refs must be an array when present');
136
141
  }
142
+ if ('retention_proofs' in raw && !Array.isArray(raw.retention_proofs)) {
143
+ throw new BundleSchemaError('retention_proofs must be an array when present');
144
+ }
137
145
  }
138
146
  function hexToBytes(hex) {
139
147
  if (hex.length % 2 !== 0) {
@@ -335,8 +343,22 @@ export function verifyProofBundle(raw) {
335
343
  const agreement = bundleReportedOk === chainResult.ok;
336
344
  const metadata = verifyMetadataClosure(bundle, events, chainResult);
337
345
  const policyTraceRefs = verifyPolicyTraceRefs(bundle, events);
346
+ const retentionProofs = verifyRetentionProofs(bundle.retention_proofs, new Set(events.map((event) => bytesToHex(event.event_hash))));
347
+ let errorCode = VERIFY_OK;
348
+ if (!chainResult.ok || !agreement) {
349
+ errorCode = VERIFY_CHAIN_RECOMPUTE_FAILED;
350
+ }
351
+ else if (!metadata.ok) {
352
+ errorCode = VERIFY_METADATA_CLOSURE_FAILED;
353
+ }
354
+ else if (!policyTraceRefs.ok) {
355
+ errorCode = VERIFY_POLICY_TRACE_REFS_FAILED;
356
+ }
357
+ else if (!retentionProofs.ok) {
358
+ errorCode = VERIFY_RETENTION_PROOF_FAILED;
359
+ }
338
360
  return {
339
- ok: chainResult.ok && agreement && metadata.ok && policyTraceRefs.ok,
361
+ ok: chainResult.ok && agreement && metadata.ok && policyTraceRefs.ok && retentionProofs.ok,
340
362
  chain_result: chainResult,
341
363
  bundle_reported_ok: bundleReportedOk,
342
364
  agreement,
@@ -348,6 +370,9 @@ export function verifyProofBundle(raw) {
348
370
  metadata_reason: metadata.reason,
349
371
  policy_trace_refs_ok: policyTraceRefs.ok,
350
372
  policy_trace_refs_reason: policyTraceRefs.reason,
373
+ retention_proofs_ok: retentionProofs.ok,
374
+ retention_proofs_reason: retentionProofs.reason,
375
+ error_code: errorCode,
351
376
  };
352
377
  }
353
378
  export async function verifyProofBundleFile(path) {
@@ -1 +1 @@
1
- {"version":3,"file":"verifier.js","sourceRoot":"","sources":["../src/verifier.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,sCAAsC;AACtC;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AAEzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EACL,YAAY,EACZ,cAAc,EAEd,MAAM,EACN,WAAW,GACZ,MAAM,gBAAgB,CAAC;AAOxB,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAG7D,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAChD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACxC,CAAC;CACF;AAED,MAAM,OAAO,iBAAkB,SAAQ,uBAAuB;IAC5D,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AAiBD,MAAM,UAAU,YAAY,CAAC,MAAgC;IAC3D,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;QACd,OAAO,CACL,gBAAgB,MAAM,CAAC,QAAQ,YAAY,MAAM,CAAC,WAAW,GAAG;YAChE,QAAQ,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAC7C,CAAC;IACJ,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC;IAChD,OAAO,CACL,kBAAkB,MAAM,CAAC,QAAQ,YAAY,MAAM,CAAC,WAAW,GAAG;QAClE,mBAAmB,GAAG,WAAW,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG;QAC9E,aAAa,MAAM,CAAC,SAAS,oBAAoB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,eAAe,CAAC,GAAG;QAC1F,4BAA4B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,wBAAwB,CAAC,EAAE,CAC9E,CAAC;AACJ,CAAC;AAED,MAAM,kBAAkB,GAAG;IACzB,gBAAgB;IAChB,gBAAgB;IAChB,QAAQ;IACR,qBAAqB;IACrB,kBAAkB;CACV,CAAC;AAEX,MAAM,uBAAuB,GAAG;IAC9B,UAAU;IACV,gBAAgB;IAChB,kBAAkB;IAClB,eAAe;IACf,UAAU;IACV,kBAAkB;CACV,CAAC;AACX,MAAM,4BAA4B,GAAG;IACnC,IAAI;IACJ,iBAAiB;IACjB,QAAQ;IACR,aAAa;IACb,kBAAkB;IAClB,qBAAqB;CACb,CAAC;AACX,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IAChC,GAAG,kBAAkB;IACrB,oBAAoB;IACpB,WAAW;IACX,mBAAmB;IACnB,YAAY;CACb,CAAC,CAAC;AACH,MAAM,4BAA4B,GAAG,IAAI,GAAG,CAAC;IAC3C,sBAAsB;IACtB,6BAA6B;CAC9B,CAAC,CAAC;AACH,MAAM,KAAK,GAAG,gBAAgB,CAAC;AAE/B,SAAS,aAAa,CAAC,CAAU;IAC/B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,aAAa,CAAC,GAAY;IACjC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,iBAAiB,CACzB,qCAAqC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE,CAC1E,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1E,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,iBAAiB,CACzB,6CAA6C,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,CAC9E,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;IAC9D,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,iBAAiB,CAAC,mCAAmC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC5F,CAAC;IACD,IAAI,GAAG,CAAC,cAAc,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,iBAAiB,CACzB,8BAA8B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,wCAAwC,CACzG,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,GAAG,GAAG,CAAC,cAAc,CAAC;IAC9B,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,iBAAiB,CAAC,sCAAsC,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,SAAS,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACpE,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,iBAAiB,CACzB,2CAA2C,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CACvE,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,iBAAiB,CAAC,yBAAyB,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,iBAAiB,CAAC,2CAA2C,CAAC,CAAC;IAC3E,CAAC;IACD,MAAM,MAAM,GAAG,GAAG,CAAC,mBAAmB,CAAC;IACvC,MAAM,aAAa,GAAG,4BAA4B,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC;IACjF,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,iBAAiB,CACzB,gDAAgD,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAChF,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,mBAAmB,CAAC;IAC1C,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,iBAAiB,CAAC,mCAAmC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC3F,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,iBAAiB,CAAC,mCAAmC,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,eAAe,GAAG,GAAG,CAAC,gBAAgB,CAAC;IAC7C,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;QAClF,MAAM,IAAI,iBAAiB,CAAC,iDAAiD,CAAC,CAAC;IACjF,CAAC;IACD,MAAM,gBAAgB,GAAG,wBAAwB,CAAC,MAAM,CACtD,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAC1C,CAAC;IACF,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,iBAAiB,CACzB,sDAAsD,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,CACzF,CAAC;IACJ,CAAC;IACD,IAAI,oBAAoB,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC1E,MAAM,IAAI,iBAAiB,CAAC,kDAAkD,CAAC,CAAC;IAClF,CAAC;IACD,IAAI,mBAAmB,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,iBAAiB,CAAC,iDAAiD,CAAC,CAAC;IACjF,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,GAAW;IAC7B,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,iBAAiB,CAAC,8BAA8B,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC9D,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,iBAAiB,CACzB,gCAAgC,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CACxE,CAAC;QACJ,CAAC;QACD,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,kBAAkB,CAAC,GAA4C;IACtE,IAAI,GAAG,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAC7B,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;AAClD,CAAC;AAED,SAAS,oBAAoB,CAAC,CAAS;IACrC,2EAA2E;IAC3E,0EAA0E;IAC1E,uDAAuD;IACvD,MAAM,KAAK,GAAG,sDAAsD,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7E,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,iBAAiB,CAAC,yBAAyB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACtC,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,iBAAiB,CAAC,yBAAyB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,qBAAqB,CAAC,GAAyB;IACtD,OAAO;QACL,cAAc,EAAE,GAAG,CAAC,cAAc;QAClC,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,SAAS,EAAE,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC;QAC9C,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,WAAW,EAAE,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC;QAChD,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;QACtC,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;QACxC,cAAc,EAAE,kBAAkB,CAAC,GAAG,CAAC,cAAc,CAAC;KACvD,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,SAA4C;IACnE,MAAM,KAAK,GAAmB,EAAE,CAAC;IACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAA2B,CAAC;QACnD,IAAI,CAAC;YACH,KAAK,CAAC,IAAI,CAAC;gBACT,GAAG,EAAE,GAAG,CAAC,GAAG;gBACZ,SAAS,EAAE,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC;gBACxC,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC;gBAC1C,KAAK,EAAE,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC;aACxC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,iBAAiB,EAAE,CAAC;gBACrC,MAAM,IAAI,iBAAiB,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9D,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,UAAU,CAAC,KAAiB;IACnC,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,GAAG,IAAK,KAAK,CAAC,CAAC,CAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAAmB,EACnB,MAA+B,EAC/B,WAA+B;IAE/B,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC;IACvC,MAAM,MAAM,GAAG,MAAM,CAAC,mBAAmB,CAAC;IAC1C,IAAI,QAAQ,CAAC,cAAc,KAAK,cAAc,EAAE,CAAC;QAC/C,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,iCAAiC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,2BAA2B,cAAc,EAAE;SAC5H,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,gBAAgB,KAAK,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC3D,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,uEAAuE;SAChF,CAAC;IACJ,CAAC;IACD,IACE,QAAQ,CAAC,yBAAyB,KAAK,SAAS;QAChD,QAAQ,CAAC,yBAAyB,KAAK,CAAC,EACxC,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,iEAAiE,EAAE,CAAC;IAClG,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5B,IAAI,QAAQ,CAAC,QAAQ,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;QACnC,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,2BAA2B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,qCAAqC,IAAI,CAAC,GAAG,EAAE;SACpH,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,aAAa,KAAK,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3D,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,iEAAiE;SAC1E,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,WAAW,CAAC,EAAE,EAAE,CAAC;QAC1C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,+DAA+D,EAAE,CAAC;IAChG,CAAC;IACD,IAAI,MAAM,CAAC,eAAe,KAAK,WAAW,CAAC,eAAe,EAAE,CAAC;QAC3D,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,4EAA4E;SACrF,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;QACzC,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,mEAAmE;SAC5E,CAAC;IACJ,CAAC;IACD,IAAI,WAAW,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe,KAAK,IAAI,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,CAAC,EAAE,CAAC;QAClF,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,yEAAyE;SAClF,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AACpC,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAAmB,EACnB,MAA+B;IAE/B,MAAM,QAAQ,GAAG,MAAM;SACpB,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,KAAK,kBAAkB,CAAC;SAChE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,MAAM,CAAC,iBAAiB,KAAK,SAAS,CAAC;IACvD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAChD,MAAM,IAAI,GAAG,MAAM,CAAC,iBAAsC,CAAC;QAC3D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,gFAAgF;aACzF,CAAC;QACJ,CAAC;QACD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,qEAAqE;SAC9E,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,oEAAoE;SAC7E,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,iBAAsC,CAAC;IAC3D,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACrE,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,mEAAmE;SAC5E,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;QACvC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,mDAAmD,EAAE,CAAC;IACpF,CAAC;IACD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACjF,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7D,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,6CAA6C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;SAChF,CAAC;IACJ,CAAC;IACD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACtF,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,kDAAkD,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE;SACtF,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,8EAA8E;SACvF,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,GAAY;IAC5C,aAAa,CAAC,GAAG,CAAC,CAAC;IACnB,MAAM,MAAM,GAAG,GAAG,CAAC;IACnB,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,gBAAgB,KAAK,WAAW,CAAC,EAAE,CAAC;IACtD,MAAM,QAAQ,GAAG,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IACpE,MAAM,eAAe,GAAG,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE9D,OAAO;QACL,EAAE,EAAE,WAAW,CAAC,EAAE,IAAI,SAAS,IAAI,QAAQ,CAAC,EAAE,IAAI,eAAe,CAAC,EAAE;QACpE,YAAY,EAAE,WAAW;QACzB,kBAAkB,EAAE,gBAAgB;QACpC,SAAS;QACT,WAAW,EAAE,MAAM,CAAC,MAAM;QAC1B,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,QAAQ,EAAE,MAAM,CAAC,cAAc,CAAC,QAAQ;QACxC,aAAa,EAAE,MAAM,CAAC,cAAc,CAAC,aAAa;QAClD,WAAW,EAAE,QAAQ,CAAC,EAAE;QACxB,eAAe,EAAE,QAAQ,CAAC,MAAM;QAChC,oBAAoB,EAAE,eAAe,CAAC,EAAE;QACxC,wBAAwB,EAAE,eAAe,CAAC,MAAM;KACjD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,IAAY;IACtD,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,KAAK,IAAI,MAAM,IAAI,GAAG,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9F,MAAM,IAAI,uBAAuB,CAAC,0BAA0B,IAAI,EAAE,CAAC,CAAC;QACtE,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;IACD,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,IAAI,iBAAiB,CAAC,GAAG,IAAI,qBAAqB,GAAG,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"verifier.js","sourceRoot":"","sources":["../src/verifier.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Stable verifier error taxonomy for machine-readable CLI and verifier output.
3
+ *
4
+ * This is intentionally separate from ADR-0010 ReasonCodeV1. Reason codes
5
+ * classify chain/event verification semantics; these VERIFY_* strings classify
6
+ * verifier and CLI outcomes.
7
+ */
8
+ export declare const VERIFY_ERROR_SCHEMA_VERSION = 1;
9
+ export declare const ALL_VERIFY_ERROR_CODES_V1: readonly ["VERIFY_OK", "VERIFY_IO_ERROR", "VERIFY_SCHEMA_ERROR", "VERIFY_CHAIN_RECOMPUTE_FAILED", "VERIFY_METADATA_CLOSURE_FAILED", "VERIFY_POLICY_TRACE_REFS_FAILED", "VERIFY_RETENTION_PROOF_FAILED", "VERIFY_ARTIFACT_HASH_FAILED", "VERIFY_REQUIRED_FIELDS_MISSING", "VERIFY_EXTENSION_INVALID_INPUT", "VERIFY_EXTENSION_UNSUPPORTED", "VERIFY_EXTENSION_FAILED"];
10
+ export type VerifyErrorCode = (typeof ALL_VERIFY_ERROR_CODES_V1)[number];
11
+ export declare const VERIFY_OK: VerifyErrorCode;
12
+ export declare const VERIFY_IO_ERROR: VerifyErrorCode;
13
+ export declare const VERIFY_SCHEMA_ERROR: VerifyErrorCode;
14
+ export declare const VERIFY_CHAIN_RECOMPUTE_FAILED: VerifyErrorCode;
15
+ export declare const VERIFY_METADATA_CLOSURE_FAILED: VerifyErrorCode;
16
+ export declare const VERIFY_POLICY_TRACE_REFS_FAILED: VerifyErrorCode;
17
+ export declare const VERIFY_RETENTION_PROOF_FAILED: VerifyErrorCode;
18
+ export declare const VERIFY_ARTIFACT_HASH_FAILED: VerifyErrorCode;
19
+ export declare const VERIFY_REQUIRED_FIELDS_MISSING: VerifyErrorCode;
20
+ export declare const VERIFY_EXTENSION_INVALID_INPUT: VerifyErrorCode;
21
+ export declare const VERIFY_EXTENSION_UNSUPPORTED: VerifyErrorCode;
22
+ export declare const VERIFY_EXTENSION_FAILED: VerifyErrorCode;
23
+ export declare const VERIFY_ERROR_DESCRIPTIONS: Record<VerifyErrorCode, string>;
24
+ export declare function isKnownVerifyErrorCode(value: string): value is VerifyErrorCode;
25
+ //# sourceMappingURL=verify_errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify_errors.d.ts","sourceRoot":"","sources":["../src/verify_errors.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AAEH,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAE7C,eAAO,MAAM,yBAAyB,uWAa5B,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzE,eAAO,MAAM,SAAS,EAAE,eAA6B,CAAC;AACtD,eAAO,MAAM,eAAe,EAAE,eAAmC,CAAC;AAClE,eAAO,MAAM,mBAAmB,EAAE,eAAuC,CAAC;AAC1E,eAAO,MAAM,6BAA6B,EAAE,eAAiD,CAAC;AAC9F,eAAO,MAAM,8BAA8B,EAAE,eAAkD,CAAC;AAChG,eAAO,MAAM,+BAA+B,EAAE,eAAmD,CAAC;AAClG,eAAO,MAAM,6BAA6B,EAAE,eAAiD,CAAC;AAC9F,eAAO,MAAM,2BAA2B,EAAE,eAA+C,CAAC;AAC1F,eAAO,MAAM,8BAA8B,EAAE,eAAkD,CAAC;AAChG,eAAO,MAAM,8BAA8B,EAAE,eAAkD,CAAC;AAChG,eAAO,MAAM,4BAA4B,EAAE,eAAgD,CAAC;AAC5F,eAAO,MAAM,uBAAuB,EAAE,eAA2C,CAAC;AAElF,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,CAiBrE,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,eAAe,CAE9E"}
@@ -0,0 +1,54 @@
1
+ // SPDX-FileCopyrightText: 2026 The Attestplane Authors
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ /**
4
+ * Stable verifier error taxonomy for machine-readable CLI and verifier output.
5
+ *
6
+ * This is intentionally separate from ADR-0010 ReasonCodeV1. Reason codes
7
+ * classify chain/event verification semantics; these VERIFY_* strings classify
8
+ * verifier and CLI outcomes.
9
+ */
10
+ export const VERIFY_ERROR_SCHEMA_VERSION = 1;
11
+ export const ALL_VERIFY_ERROR_CODES_V1 = [
12
+ 'VERIFY_OK',
13
+ 'VERIFY_IO_ERROR',
14
+ 'VERIFY_SCHEMA_ERROR',
15
+ 'VERIFY_CHAIN_RECOMPUTE_FAILED',
16
+ 'VERIFY_METADATA_CLOSURE_FAILED',
17
+ 'VERIFY_POLICY_TRACE_REFS_FAILED',
18
+ 'VERIFY_RETENTION_PROOF_FAILED',
19
+ 'VERIFY_ARTIFACT_HASH_FAILED',
20
+ 'VERIFY_REQUIRED_FIELDS_MISSING',
21
+ 'VERIFY_EXTENSION_INVALID_INPUT',
22
+ 'VERIFY_EXTENSION_UNSUPPORTED',
23
+ 'VERIFY_EXTENSION_FAILED',
24
+ ];
25
+ export const VERIFY_OK = 'VERIFY_OK';
26
+ export const VERIFY_IO_ERROR = 'VERIFY_IO_ERROR';
27
+ export const VERIFY_SCHEMA_ERROR = 'VERIFY_SCHEMA_ERROR';
28
+ export const VERIFY_CHAIN_RECOMPUTE_FAILED = 'VERIFY_CHAIN_RECOMPUTE_FAILED';
29
+ export const VERIFY_METADATA_CLOSURE_FAILED = 'VERIFY_METADATA_CLOSURE_FAILED';
30
+ export const VERIFY_POLICY_TRACE_REFS_FAILED = 'VERIFY_POLICY_TRACE_REFS_FAILED';
31
+ export const VERIFY_RETENTION_PROOF_FAILED = 'VERIFY_RETENTION_PROOF_FAILED';
32
+ export const VERIFY_ARTIFACT_HASH_FAILED = 'VERIFY_ARTIFACT_HASH_FAILED';
33
+ export const VERIFY_REQUIRED_FIELDS_MISSING = 'VERIFY_REQUIRED_FIELDS_MISSING';
34
+ export const VERIFY_EXTENSION_INVALID_INPUT = 'VERIFY_EXTENSION_INVALID_INPUT';
35
+ export const VERIFY_EXTENSION_UNSUPPORTED = 'VERIFY_EXTENSION_UNSUPPORTED';
36
+ export const VERIFY_EXTENSION_FAILED = 'VERIFY_EXTENSION_FAILED';
37
+ export const VERIFY_ERROR_DESCRIPTIONS = {
38
+ VERIFY_OK: 'Verification completed without a verifier-detected failure.',
39
+ VERIFY_IO_ERROR: 'The verifier could not read the requested input.',
40
+ VERIFY_SCHEMA_ERROR: 'The input shape is unsupported or malformed.',
41
+ VERIFY_CHAIN_RECOMPUTE_FAILED: 'Recomputed hash-chain verification failed.',
42
+ VERIFY_METADATA_CLOSURE_FAILED: 'Bundle metadata disagrees with recomputed chain state.',
43
+ VERIFY_POLICY_TRACE_REFS_FAILED: 'Policy trace references are missing, dangling, duplicated, or out of order.',
44
+ VERIFY_RETENTION_PROOF_FAILED: 'Retention/deletion proof references are malformed or do not point at bundle events.',
45
+ VERIFY_ARTIFACT_HASH_FAILED: 'The envelope artifact hash does not match the embedded proof bundle.',
46
+ VERIFY_REQUIRED_FIELDS_MISSING: 'A required verifier-envelope field is missing.',
47
+ VERIFY_EXTENSION_INVALID_INPUT: 'Requested signature or anchor extension input is malformed.',
48
+ VERIFY_EXTENSION_UNSUPPORTED: 'Requested signature or anchor extension input uses an unsupported mode.',
49
+ VERIFY_EXTENSION_FAILED: 'Requested signature or anchor extension verification failed.',
50
+ };
51
+ export function isKnownVerifyErrorCode(value) {
52
+ return ALL_VERIFY_ERROR_CODES_V1.includes(value);
53
+ }
54
+ //# sourceMappingURL=verify_errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify_errors.js","sourceRoot":"","sources":["../src/verify_errors.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,sCAAsC;AACtC;;;;;;GAMG;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC;AAE7C,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,WAAW;IACX,iBAAiB;IACjB,qBAAqB;IACrB,+BAA+B;IAC/B,gCAAgC;IAChC,iCAAiC;IACjC,+BAA+B;IAC/B,6BAA6B;IAC7B,gCAAgC;IAChC,gCAAgC;IAChC,8BAA8B;IAC9B,yBAAyB;CACjB,CAAC;AAIX,MAAM,CAAC,MAAM,SAAS,GAAoB,WAAW,CAAC;AACtD,MAAM,CAAC,MAAM,eAAe,GAAoB,iBAAiB,CAAC;AAClE,MAAM,CAAC,MAAM,mBAAmB,GAAoB,qBAAqB,CAAC;AAC1E,MAAM,CAAC,MAAM,6BAA6B,GAAoB,+BAA+B,CAAC;AAC9F,MAAM,CAAC,MAAM,8BAA8B,GAAoB,gCAAgC,CAAC;AAChG,MAAM,CAAC,MAAM,+BAA+B,GAAoB,iCAAiC,CAAC;AAClG,MAAM,CAAC,MAAM,6BAA6B,GAAoB,+BAA+B,CAAC;AAC9F,MAAM,CAAC,MAAM,2BAA2B,GAAoB,6BAA6B,CAAC;AAC1F,MAAM,CAAC,MAAM,8BAA8B,GAAoB,gCAAgC,CAAC;AAChG,MAAM,CAAC,MAAM,8BAA8B,GAAoB,gCAAgC,CAAC;AAChG,MAAM,CAAC,MAAM,4BAA4B,GAAoB,8BAA8B,CAAC;AAC5F,MAAM,CAAC,MAAM,uBAAuB,GAAoB,yBAAyB,CAAC;AAElF,MAAM,CAAC,MAAM,yBAAyB,GAAoC;IACxE,SAAS,EAAE,6DAA6D;IACxE,eAAe,EAAE,kDAAkD;IACnE,mBAAmB,EAAE,8CAA8C;IACnE,6BAA6B,EAAE,4CAA4C;IAC3E,8BAA8B,EAAE,wDAAwD;IACxF,+BAA+B,EAC7B,6EAA6E;IAC/E,6BAA6B,EAC3B,qFAAqF;IACvF,2BAA2B,EACzB,sEAAsE;IACxE,8BAA8B,EAAE,gDAAgD;IAChF,8BAA8B,EAAE,6DAA6D;IAC7F,4BAA4B,EAC1B,yEAAyE;IAC3E,uBAAuB,EAAE,8DAA8D;CACxF,CAAC;AAEF,MAAM,UAAU,sBAAsB,CAAC,KAAa;IAClD,OAAQ,yBAA+C,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC1E,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@attestplane/attestplane",
3
- "version": "0.0.3-alpha",
3
+ "version": "0.0.5-alpha",
4
4
  "description": "Apache-2.0 attestation and audit substrate for AI agent evidence chains.",
5
5
  "keywords": [
6
6
  "audit",