@peac/protocol 0.9.31 → 0.10.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -10,7 +10,7 @@ pnpm add @peac/protocol
10
10
 
11
11
  ## Documentation
12
12
 
13
- See [peacprotocol.org](https://peacprotocol.org) for full documentation.
13
+ See [peacprotocol.org](https://www.peacprotocol.org) for full documentation.
14
14
 
15
15
  ## License
16
16
 
@@ -20,4 +20,4 @@ Apache-2.0
20
20
 
21
21
  PEAC Protocol is an open source project stewarded by Originary and community contributors.
22
22
 
23
- [Originary](https://www.originary.xyz) | [Docs](https://peacprotocol.org) | [GitHub](https://github.com/peacprotocol/peac)
23
+ [Docs](https://www.peacprotocol.org) | [GitHub](https://github.com/peacprotocol/peac) | [Originary](https://www.originary.xyz)
@@ -1,19 +1,59 @@
1
1
  /**
2
- * PEAC discovery manifest parsing (/.well-known/peac.txt)
2
+ * PEAC Discovery - Issuer Configuration and Policy Manifest
3
+ *
4
+ * This module provides functions for:
5
+ * - Issuer configuration discovery (/.well-known/peac-issuer.json)
6
+ * - Policy manifest parsing (/.well-known/peac.txt)
7
+ *
8
+ * @see docs/specs/PEAC-ISSUER.md
9
+ * @see docs/specs/PEAC-TXT.md
3
10
  */
4
- import { PEACDiscovery } from '@peac/schema';
11
+ import { PEACIssuerConfig, PEACPolicyManifest, PEACDiscovery } from '@peac/schema';
5
12
  /**
6
- * Parse a PEAC discovery manifest from YAML-like text
13
+ * Parse PEAC issuer configuration from JSON
7
14
  *
8
- * @param text - PEAC discovery text (≤20 lines, ≤2000 bytes)
9
- * @returns Parsed discovery manifest
15
+ * @param json - JSON string or object
16
+ * @returns Parsed issuer configuration
17
+ * @throws Error if validation fails
10
18
  */
11
- export declare function parseDiscovery(text: string): PEACDiscovery;
19
+ export declare function parseIssuerConfig(json: string | object): PEACIssuerConfig;
12
20
  /**
13
- * Fetch and parse PEAC discovery from an issuer URL
21
+ * Fetch PEAC issuer configuration from an issuer URL
14
22
  *
15
23
  * @param issuerUrl - Issuer URL (https://)
16
- * @returns Parsed discovery manifest
24
+ * @returns Parsed issuer configuration
25
+ * @throws Error if fetch or validation fails
26
+ */
27
+ export declare function fetchIssuerConfig(issuerUrl: string): Promise<PEACIssuerConfig>;
28
+ /**
29
+ * Parse PEAC policy manifest from YAML or JSON
30
+ *
31
+ * @param text - Policy manifest text (YAML or JSON)
32
+ * @param contentType - Optional Content-Type header value
33
+ * @returns Parsed policy manifest
34
+ * @throws Error if validation fails
35
+ */
36
+ export declare function parsePolicyManifest(text: string, contentType?: string): PEACPolicyManifest;
37
+ /**
38
+ * Fetch PEAC policy manifest from a domain
39
+ *
40
+ * @param baseUrl - Base URL (https://example.com)
41
+ * @returns Parsed policy manifest
42
+ * @throws Error if fetch or validation fails
43
+ */
44
+ export declare function fetchPolicyManifest(baseUrl: string): Promise<PEACPolicyManifest>;
45
+ /**
46
+ * @deprecated Use parseIssuerConfig instead. Will be removed in v1.0.
47
+ *
48
+ * Parse a PEAC discovery manifest from YAML-like text.
49
+ * This function is maintained for backward compatibility only.
50
+ */
51
+ export declare function parseDiscovery(text: string): PEACDiscovery;
52
+ /**
53
+ * @deprecated Use fetchIssuerConfig instead. Will be removed in v1.0.
54
+ *
55
+ * Fetch and parse PEAC discovery from an issuer URL.
56
+ * This function is maintained for backward compatibility only.
17
57
  */
18
58
  export declare function fetchDiscovery(issuerUrl: string): Promise<PEACDiscovery>;
19
59
  //# sourceMappingURL=discovery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAA4B,MAAM,cAAc,CAAC;AAEvE;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAkF1D;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CA0B9E"}
1
+ {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EAMd,MAAM,cAAc,CAAC;AAMtB;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,gBAAgB,CAiFzE;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAqCpF;AAiBD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAoD1F;AAkFD;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA8CtF;AAMD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAkD1D;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CA0B9E"}
package/dist/discovery.js CHANGED
@@ -1,58 +1,349 @@
1
1
  "use strict";
2
2
  /**
3
- * PEAC discovery manifest parsing (/.well-known/peac.txt)
3
+ * PEAC Discovery - Issuer Configuration and Policy Manifest
4
+ *
5
+ * This module provides functions for:
6
+ * - Issuer configuration discovery (/.well-known/peac-issuer.json)
7
+ * - Policy manifest parsing (/.well-known/peac.txt)
8
+ *
9
+ * @see docs/specs/PEAC-ISSUER.md
10
+ * @see docs/specs/PEAC-TXT.md
4
11
  */
5
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.parseIssuerConfig = parseIssuerConfig;
14
+ exports.fetchIssuerConfig = fetchIssuerConfig;
15
+ exports.parsePolicyManifest = parsePolicyManifest;
16
+ exports.fetchPolicyManifest = fetchPolicyManifest;
6
17
  exports.parseDiscovery = parseDiscovery;
7
18
  exports.fetchDiscovery = fetchDiscovery;
8
19
  const schema_1 = require("@peac/schema");
20
+ // ============================================================================
21
+ // Issuer Configuration (/.well-known/peac-issuer.json)
22
+ // ============================================================================
9
23
  /**
10
- * Parse a PEAC discovery manifest from YAML-like text
24
+ * Parse PEAC issuer configuration from JSON
11
25
  *
12
- * @param text - PEAC discovery text (≤20 lines, ≤2000 bytes)
13
- * @returns Parsed discovery manifest
26
+ * @param json - JSON string or object
27
+ * @returns Parsed issuer configuration
28
+ * @throws Error if validation fails
14
29
  */
15
- function parseDiscovery(text) {
16
- // Validate size
30
+ function parseIssuerConfig(json) {
31
+ let config;
32
+ if (typeof json === 'string') {
33
+ const bytes = new TextEncoder().encode(json).length;
34
+ if (bytes > schema_1.PEAC_ISSUER_CONFIG_MAX_BYTES) {
35
+ throw new Error(`Issuer config exceeds ${schema_1.PEAC_ISSUER_CONFIG_MAX_BYTES} bytes (got ${bytes})`);
36
+ }
37
+ try {
38
+ config = JSON.parse(json);
39
+ }
40
+ catch {
41
+ throw new Error('Issuer config is not valid JSON');
42
+ }
43
+ }
44
+ else {
45
+ config = json;
46
+ }
47
+ if (typeof config !== 'object' || config === null) {
48
+ throw new Error('Issuer config must be an object');
49
+ }
50
+ const obj = config;
51
+ // Validate required fields
52
+ if (typeof obj.version !== 'string' || !obj.version) {
53
+ throw new Error('Missing required field: version');
54
+ }
55
+ if (typeof obj.issuer !== 'string' || !obj.issuer) {
56
+ throw new Error('Missing required field: issuer');
57
+ }
58
+ if (typeof obj.jwks_uri !== 'string' || !obj.jwks_uri) {
59
+ throw new Error('Missing required field: jwks_uri');
60
+ }
61
+ // Validate URL fields
62
+ if (!obj.issuer.startsWith('https://')) {
63
+ throw new Error('issuer must be an HTTPS URL');
64
+ }
65
+ if (!obj.jwks_uri.startsWith('https://')) {
66
+ throw new Error('jwks_uri must be an HTTPS URL');
67
+ }
68
+ // Validate optional fields
69
+ if (obj.verify_endpoint !== undefined) {
70
+ if (typeof obj.verify_endpoint !== 'string') {
71
+ throw new Error('verify_endpoint must be a string');
72
+ }
73
+ if (!obj.verify_endpoint.startsWith('https://')) {
74
+ throw new Error('verify_endpoint must be an HTTPS URL');
75
+ }
76
+ }
77
+ if (obj.receipt_versions !== undefined) {
78
+ if (!Array.isArray(obj.receipt_versions)) {
79
+ throw new Error('receipt_versions must be an array');
80
+ }
81
+ }
82
+ if (obj.algorithms !== undefined) {
83
+ if (!Array.isArray(obj.algorithms)) {
84
+ throw new Error('algorithms must be an array');
85
+ }
86
+ }
87
+ if (obj.payment_rails !== undefined) {
88
+ if (!Array.isArray(obj.payment_rails)) {
89
+ throw new Error('payment_rails must be an array');
90
+ }
91
+ }
92
+ return {
93
+ version: obj.version,
94
+ issuer: obj.issuer,
95
+ jwks_uri: obj.jwks_uri,
96
+ verify_endpoint: obj.verify_endpoint,
97
+ receipt_versions: obj.receipt_versions,
98
+ algorithms: obj.algorithms,
99
+ payment_rails: obj.payment_rails,
100
+ security_contact: obj.security_contact,
101
+ };
102
+ }
103
+ /**
104
+ * Fetch PEAC issuer configuration from an issuer URL
105
+ *
106
+ * @param issuerUrl - Issuer URL (https://)
107
+ * @returns Parsed issuer configuration
108
+ * @throws Error if fetch or validation fails
109
+ */
110
+ async function fetchIssuerConfig(issuerUrl) {
111
+ if (!issuerUrl.startsWith('https://')) {
112
+ throw new Error('Issuer URL must be https://');
113
+ }
114
+ // Remove trailing slash for consistent URL construction
115
+ const baseUrl = issuerUrl.replace(/\/$/, '');
116
+ const configUrl = `${baseUrl}${schema_1.PEAC_ISSUER_CONFIG_PATH}`;
117
+ try {
118
+ const resp = await fetch(configUrl, {
119
+ headers: { Accept: 'application/json' },
120
+ signal: AbortSignal.timeout(10000),
121
+ });
122
+ if (!resp.ok) {
123
+ throw new Error(`Issuer config fetch failed: ${resp.status}`);
124
+ }
125
+ const text = await resp.text();
126
+ const config = parseIssuerConfig(text);
127
+ // Verify issuer matches
128
+ const normalizedExpected = baseUrl.replace(/\/$/, '');
129
+ const normalizedActual = config.issuer.replace(/\/$/, '');
130
+ if (normalizedActual !== normalizedExpected) {
131
+ throw new Error(`Issuer mismatch: expected ${normalizedExpected}, got ${normalizedActual}`);
132
+ }
133
+ return config;
134
+ }
135
+ catch (err) {
136
+ throw new Error(`Failed to fetch issuer config from ${issuerUrl}: ${err instanceof Error ? err.message : String(err)}`);
137
+ }
138
+ }
139
+ // ============================================================================
140
+ // Policy Manifest (/.well-known/peac.txt)
141
+ // ============================================================================
142
+ /**
143
+ * Detect if content is JSON or YAML
144
+ */
145
+ function isJsonContent(text, contentType) {
146
+ if (contentType?.includes('application/json')) {
147
+ return true;
148
+ }
149
+ const firstChar = text.trimStart()[0];
150
+ return firstChar === '{';
151
+ }
152
+ /**
153
+ * Parse PEAC policy manifest from YAML or JSON
154
+ *
155
+ * @param text - Policy manifest text (YAML or JSON)
156
+ * @param contentType - Optional Content-Type header value
157
+ * @returns Parsed policy manifest
158
+ * @throws Error if validation fails
159
+ */
160
+ function parsePolicyManifest(text, contentType) {
17
161
  const bytes = new TextEncoder().encode(text).length;
18
- if (bytes > schema_1.PEAC_DISCOVERY_MAX_BYTES) {
19
- throw new Error(`Discovery manifest exceeds ${schema_1.PEAC_DISCOVERY_MAX_BYTES} bytes (got ${bytes})`);
162
+ if (bytes > schema_1.PEAC_POLICY_MAX_BYTES) {
163
+ throw new Error(`Policy manifest exceeds ${schema_1.PEAC_POLICY_MAX_BYTES} bytes (got ${bytes})`);
20
164
  }
21
- const lines = text.trim().split('\n');
22
- if (lines.length > 20) {
23
- throw new Error(`Discovery manifest exceeds 20 lines (got ${lines.length})`);
165
+ let manifest;
166
+ if (isJsonContent(text, contentType)) {
167
+ // Parse as JSON
168
+ try {
169
+ manifest = JSON.parse(text);
170
+ }
171
+ catch {
172
+ throw new Error('Policy manifest is not valid JSON');
173
+ }
174
+ }
175
+ else {
176
+ // Parse as simple YAML (key: value format)
177
+ manifest = parseSimpleYaml(text);
178
+ }
179
+ // Validate required fields
180
+ if (typeof manifest.version !== 'string' || !manifest.version) {
181
+ throw new Error('Missing required field: version');
182
+ }
183
+ // Validate version format: must be peac-policy/<major>.<minor>
184
+ if (!manifest.version.startsWith('peac-policy/')) {
185
+ throw new Error(`Invalid version format: "${manifest.version}". Must start with "peac-policy/" (e.g., "peac-policy/0.1")`);
24
186
  }
25
- const discovery = {
26
- payments: [],
187
+ if (manifest.usage !== 'open' && manifest.usage !== 'conditional') {
188
+ throw new Error('Missing or invalid field: usage (must be "open" or "conditional")');
189
+ }
190
+ return {
191
+ version: manifest.version,
192
+ usage: manifest.usage,
193
+ purposes: manifest.purposes,
194
+ receipts: manifest.receipts,
195
+ attribution: manifest.attribution,
196
+ rate_limit: manifest.rate_limit,
197
+ daily_limit: manifest.daily_limit,
198
+ negotiate: manifest.negotiate,
199
+ contact: manifest.contact,
200
+ license: manifest.license,
201
+ price: manifest.price,
202
+ currency: manifest.currency,
203
+ payment_methods: manifest.payment_methods,
204
+ payment_endpoint: manifest.payment_endpoint,
27
205
  };
28
- let inPayments = false;
206
+ }
207
+ /**
208
+ * Parse simple YAML (key: value format, no complex features)
209
+ * Rejects YAML features that are security risks (anchors, aliases, tags)
210
+ */
211
+ function parseSimpleYaml(text) {
212
+ const lines = text.split('\n');
213
+ const result = {};
214
+ // Security: reject YAML features that are dangerous
215
+ // Check merge keys first (they contain * which would trigger anchor check)
216
+ if (text.includes('<<:')) {
217
+ throw new Error('YAML merge keys are not allowed');
218
+ }
219
+ if (text.includes('&') || text.includes('*')) {
220
+ throw new Error('YAML anchors and aliases are not allowed');
221
+ }
222
+ if (/!\w+/.test(text)) {
223
+ throw new Error('YAML custom tags are not allowed');
224
+ }
225
+ // Count document separators
226
+ const docSeparators = text.match(/^---$/gm);
227
+ if (docSeparators && docSeparators.length > 1) {
228
+ throw new Error('Multi-document YAML is not allowed');
229
+ }
29
230
  for (const line of lines) {
30
231
  const trimmed = line.trim();
31
- if (!trimmed || trimmed.startsWith('#')) {
32
- continue; // Skip empty lines and comments
232
+ // Skip empty lines, comments, and document markers
233
+ if (!trimmed || trimmed.startsWith('#') || trimmed === '---') {
234
+ continue;
33
235
  }
34
- if (trimmed === 'payments:') {
35
- inPayments = true;
236
+ // Parse key: value
237
+ const colonIndex = trimmed.indexOf(':');
238
+ if (colonIndex === -1)
36
239
  continue;
240
+ const key = trimmed.slice(0, colonIndex).trim();
241
+ let value = trimmed.slice(colonIndex + 1).trim();
242
+ // Parse value types
243
+ if (value === '') {
244
+ value = undefined;
37
245
  }
38
- if (inPayments) {
39
- // Support both "rail:" (new) and "scheme:" (deprecated) for backward compatibility
40
- if (trimmed.startsWith('- rail:') || trimmed.startsWith('- scheme:')) {
41
- const rail = trimmed.replace(/^- (rail|scheme):/, '').trim();
42
- discovery.payments.push({ rail });
246
+ else if (typeof value === 'string') {
247
+ // Remove quotes if present
248
+ if ((value.startsWith('"') && value.endsWith('"')) ||
249
+ (value.startsWith("'") && value.endsWith("'"))) {
250
+ value = value.slice(1, -1);
251
+ }
252
+ // Parse arrays [a, b, c]
253
+ else if (value.startsWith('[') && value.endsWith(']')) {
254
+ const inner = value.slice(1, -1);
255
+ value = inner
256
+ .split(',')
257
+ .map((s) => s.trim())
258
+ .filter((s) => s.length > 0);
43
259
  }
44
- else if (trimmed.startsWith('info:')) {
45
- const info = trimmed.replace('info:', '').trim();
46
- if (discovery.payments.length > 0) {
47
- discovery.payments[discovery.payments.length - 1].info = info;
48
- }
260
+ // Parse numbers
261
+ else if (/^-?\d+(\.\d+)?$/.test(value)) {
262
+ value = parseFloat(value);
49
263
  }
50
- else if (!trimmed.startsWith(' ') && trimmed.includes(':')) {
51
- // New top-level key, exit payments section
52
- inPayments = false;
264
+ // Parse booleans
265
+ else if (value === 'true') {
266
+ value = true;
267
+ }
268
+ else if (value === 'false') {
269
+ value = false;
270
+ }
271
+ }
272
+ if (value !== undefined) {
273
+ result[key] = value;
274
+ }
275
+ }
276
+ return result;
277
+ }
278
+ /**
279
+ * Fetch PEAC policy manifest from a domain
280
+ *
281
+ * @param baseUrl - Base URL (https://example.com)
282
+ * @returns Parsed policy manifest
283
+ * @throws Error if fetch or validation fails
284
+ */
285
+ async function fetchPolicyManifest(baseUrl) {
286
+ if (!baseUrl.startsWith('https://') && !baseUrl.startsWith('http://localhost')) {
287
+ throw new Error('Base URL must be https://');
288
+ }
289
+ const normalizedBase = baseUrl.replace(/\/$/, '');
290
+ const primaryUrl = `${normalizedBase}${schema_1.PEAC_POLICY_PATH}`;
291
+ const fallbackUrl = `${normalizedBase}${schema_1.PEAC_POLICY_FALLBACK_PATH}`;
292
+ // Try primary location first
293
+ try {
294
+ const resp = await fetch(primaryUrl, {
295
+ headers: { Accept: 'text/plain, application/json' },
296
+ signal: AbortSignal.timeout(5000),
297
+ });
298
+ if (resp.ok) {
299
+ const text = await resp.text();
300
+ const contentType = resp.headers.get('content-type') || undefined;
301
+ return parsePolicyManifest(text, contentType);
302
+ }
303
+ // If 404, try fallback
304
+ if (resp.status === 404) {
305
+ const fallbackResp = await fetch(fallbackUrl, {
306
+ headers: { Accept: 'text/plain, application/json' },
307
+ signal: AbortSignal.timeout(5000),
308
+ });
309
+ if (fallbackResp.ok) {
310
+ const text = await fallbackResp.text();
311
+ const contentType = fallbackResp.headers.get('content-type') || undefined;
312
+ return parsePolicyManifest(text, contentType);
53
313
  }
314
+ throw new Error('Policy manifest not found at primary or fallback location');
54
315
  }
55
- if (!inPayments && trimmed.includes(':')) {
316
+ throw new Error(`Policy manifest fetch failed: ${resp.status}`);
317
+ }
318
+ catch (err) {
319
+ throw new Error(`Failed to fetch policy manifest from ${baseUrl}: ${err instanceof Error ? err.message : String(err)}`);
320
+ }
321
+ }
322
+ // ============================================================================
323
+ // Deprecated Legacy API (for backward compatibility)
324
+ // ============================================================================
325
+ /**
326
+ * @deprecated Use parseIssuerConfig instead. Will be removed in v1.0.
327
+ *
328
+ * Parse a PEAC discovery manifest from YAML-like text.
329
+ * This function is maintained for backward compatibility only.
330
+ */
331
+ function parseDiscovery(text) {
332
+ const bytes = new TextEncoder().encode(text).length;
333
+ if (bytes > 2000) {
334
+ throw new Error(`Discovery manifest exceeds 2000 bytes (got ${bytes})`);
335
+ }
336
+ const lines = text.trim().split('\n');
337
+ if (lines.length > 20) {
338
+ throw new Error(`Discovery manifest exceeds 20 lines (got ${lines.length})`);
339
+ }
340
+ const discovery = {};
341
+ for (const line of lines) {
342
+ const trimmed = line.trim();
343
+ if (!trimmed || trimmed.startsWith('#')) {
344
+ continue;
345
+ }
346
+ if (trimmed.includes(':')) {
56
347
  const [key, ...valueParts] = trimmed.split(':');
57
348
  const value = valueParts.join(':').trim();
58
349
  switch (key.trim()) {
@@ -63,19 +354,13 @@ function parseDiscovery(text) {
63
354
  discovery.issuer = value;
64
355
  break;
65
356
  case 'verify':
66
- discovery.verify = value;
357
+ discovery.verify_endpoint = value;
67
358
  break;
68
359
  case 'jwks':
69
- discovery.jwks = value;
70
- break;
71
- case 'aipref':
72
- discovery.aipref = value;
73
- break;
74
- case 'slos':
75
- discovery.slos = value;
360
+ discovery.jwks_uri = value;
76
361
  break;
77
362
  case 'security':
78
- discovery.security = value;
363
+ discovery.security_contact = value;
79
364
  break;
80
365
  }
81
366
  }
@@ -85,17 +370,17 @@ function parseDiscovery(text) {
85
370
  throw new Error('Missing required field: version');
86
371
  if (!discovery.issuer)
87
372
  throw new Error('Missing required field: issuer');
88
- if (!discovery.verify)
373
+ if (!discovery.verify_endpoint)
89
374
  throw new Error('Missing required field: verify');
90
- if (!discovery.jwks)
375
+ if (!discovery.jwks_uri)
91
376
  throw new Error('Missing required field: jwks');
92
377
  return discovery;
93
378
  }
94
379
  /**
95
- * Fetch and parse PEAC discovery from an issuer URL
380
+ * @deprecated Use fetchIssuerConfig instead. Will be removed in v1.0.
96
381
  *
97
- * @param issuerUrl - Issuer URL (https://)
98
- * @returns Parsed discovery manifest
382
+ * Fetch and parse PEAC discovery from an issuer URL.
383
+ * This function is maintained for backward compatibility only.
99
384
  */
100
385
  async function fetchDiscovery(issuerUrl) {
101
386
  if (!issuerUrl.startsWith('https://')) {
@@ -1 +1 @@
1
- {"version":3,"file":"discovery.js","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discovery.js","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"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"}
package/dist/issue.d.ts CHANGED
@@ -3,7 +3,7 @@
3
3
  * Validates input, generates UUIDv7 rid, and signs with Ed25519
4
4
  */
5
5
  import type { JsonValue } from '@peac/kernel';
6
- import { PEACReceiptClaims, SubjectProfileSnapshot, type PEACError, type PurposeToken, type CanonicalPurpose, type PurposeReason } from '@peac/schema';
6
+ import { PEACReceiptClaims, SubjectProfileSnapshot, type PEACError, type PurposeToken, type CanonicalPurpose, type PurposeReason, type WorkflowContext } from '@peac/schema';
7
7
  /**
8
8
  * Options for issuing a receipt
9
9
  */
@@ -62,6 +62,13 @@ export interface IssueOptions {
62
62
  * The audit spine - explains WHY purpose was enforced as it was.
63
63
  */
64
64
  purpose_reason?: PurposeReason;
65
+ /**
66
+ * Workflow correlation context (v0.10.2+, optional)
67
+ *
68
+ * Links this receipt into a multi-step workflow DAG.
69
+ * Added to ext['org.peacprotocol/workflow'].
70
+ */
71
+ workflow_context?: WorkflowContext;
65
72
  /** Ed25519 private key (32 bytes) */
66
73
  privateKey: Uint8Array;
67
74
  /** Key ID (ISO 8601 timestamp) */
@@ -1 +1 @@
1
- {"version":3,"file":"issue.d.ts","sourceRoot":"","sources":["../src/issue.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,EACL,iBAAiB,EAEjB,sBAAsB,EAGtB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAInB,MAAM,cAAc,CAAC;AAItB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,4BAA4B;IAC5B,GAAG,EAAE,MAAM,CAAC;IAEZ,yCAAyC;IACzC,GAAG,EAAE,MAAM,CAAC;IAEZ,uCAAuC;IACvC,GAAG,EAAE,MAAM,CAAC;IAEZ,yCAAyC;IACzC,GAAG,EAAE,MAAM,CAAC;IAEZ,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IAEb,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;IAElB,4FAA4F;IAC5F,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,0DAA0D;IAC1D,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEtB,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,uCAAuC;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,oFAAoF;IACpF,QAAQ,CAAC,EAAE,SAAS,CAAC;IAErB,iCAAiC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC,6BAA6B;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,4BAA4B;IAC5B,GAAG,CAAC,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAE/B,gDAAgD;IAChD,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,iEAAiE;IACjE,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAE1C;;;;;OAKG;IACH,OAAO,CAAC,EAAE,YAAY,GAAG,YAAY,EAAE,CAAC;IAExC;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAEpC;;;;OAIG;IACH,cAAc,CAAC,EAAE,aAAa,CAAC;IAE/B,qCAAqC;IACrC,UAAU,EAAE,UAAU,CAAC;IAEvB,kCAAkC;IAClC,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,gCAAgC;IAChC,GAAG,EAAE,MAAM,CAAC;IAEZ,+CAA+C;IAC/C,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;CAC3C;AAED;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,KAAK;IACnC,+BAA+B;IAC/B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;gBAElB,SAAS,EAAE,SAAS;CAMjC;AAED;;;;;;GAMG;AACH,wBAAsB,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CA0JvE;AAED;;;;;;;;GAQG;AACH,wBAAsB,QAAQ,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAGrE"}
1
+ {"version":3,"file":"issue.d.ts","sourceRoot":"","sources":["../src/issue.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,EACL,iBAAiB,EAEjB,sBAAsB,EAKtB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAKlB,KAAK,eAAe,EAIrB,MAAM,cAAc,CAAC;AAItB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,4BAA4B;IAC5B,GAAG,EAAE,MAAM,CAAC;IAEZ,yCAAyC;IACzC,GAAG,EAAE,MAAM,CAAC;IAEZ,uCAAuC;IACvC,GAAG,EAAE,MAAM,CAAC;IAEZ,yCAAyC;IACzC,GAAG,EAAE,MAAM,CAAC;IAEZ,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IAEb,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;IAElB,4FAA4F;IAC5F,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,0DAA0D;IAC1D,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEtB,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,uCAAuC;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,oFAAoF;IACpF,QAAQ,CAAC,EAAE,SAAS,CAAC;IAErB,iCAAiC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC,6BAA6B;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,4BAA4B;IAC5B,GAAG,CAAC,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAE/B,gDAAgD;IAChD,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,iEAAiE;IACjE,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAE1C;;;;;OAKG;IACH,OAAO,CAAC,EAAE,YAAY,GAAG,YAAY,EAAE,CAAC;IAExC;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAEpC;;;;OAIG;IACH,cAAc,CAAC,EAAE,aAAa,CAAC;IAE/B;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,eAAe,CAAC;IAEnC,qCAAqC;IACrC,UAAU,EAAE,UAAU,CAAC;IAEvB,kCAAkC;IAClC,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,gCAAgC;IAChC,GAAG,EAAE,MAAM,CAAC;IAEZ,+CAA+C;IAC/C,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;CAC3C;AAED;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,KAAK;IACnC,+BAA+B;IAC/B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;gBAElB,SAAS,EAAE,SAAS;CAMjC;AAED;;;;;;GAMG;AACH,wBAAsB,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAmLvE;AAED;;;;;;;;GAQG;AACH,wBAAsB,QAAQ,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAGrE"}
package/dist/issue.js CHANGED
@@ -94,6 +94,20 @@ async function issue(options) {
94
94
  throw new Error(`Invalid purpose_reason: ${options.purpose_reason}`);
95
95
  }
96
96
  }
97
+ // Validate workflow_context (v0.10.2+)
98
+ if (options.workflow_context !== undefined) {
99
+ if (!(0, schema_1.isValidWorkflowContext)(options.workflow_context)) {
100
+ throw new IssueError((0, schema_1.createWorkflowContextInvalidError)('Does not conform to WorkflowContextSchema'));
101
+ }
102
+ if (!(0, schema_1.hasValidDagSemantics)(options.workflow_context)) {
103
+ // Determine specific reason
104
+ const ctx = options.workflow_context;
105
+ const isSelfParent = ctx.parent_step_ids.includes(ctx.step_id);
106
+ const hasDuplicates = new Set(ctx.parent_step_ids).size !== ctx.parent_step_ids.length;
107
+ const reason = isSelfParent ? 'self_parent' : hasDuplicates ? 'duplicate_parent' : 'cycle';
108
+ throw new IssueError((0, schema_1.createWorkflowDagInvalidError)(reason));
109
+ }
110
+ }
97
111
  // Generate UUIDv7 for receipt ID
98
112
  const rid = (0, uuidv7_1.uuidv7)();
99
113
  // Get current timestamp
@@ -121,7 +135,15 @@ async function issue(options) {
121
135
  },
122
136
  ...(options.exp && { exp: options.exp }),
123
137
  ...(options.subject && { subject: { uri: options.subject } }),
124
- ...(options.ext && { ext: options.ext }),
138
+ // Build extensions (merge user-provided ext with workflow_context)
139
+ ...((options.ext || options.workflow_context) && {
140
+ ext: {
141
+ ...options.ext,
142
+ ...(options.workflow_context && {
143
+ [schema_1.WORKFLOW_EXTENSION_KEY]: options.workflow_context,
144
+ }),
145
+ },
146
+ }),
125
147
  // Purpose claims (v0.9.24+)
126
148
  ...(purposeDeclared && { purpose_declared: purposeDeclared }),
127
149
  ...(options.purpose_enforced && { purpose_enforced: options.purpose_enforced }),
package/dist/issue.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"issue.js","sourceRoot":"","sources":["../src/issue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"issue.js","sourceRoot":"","sources":["../src/issue.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peac/protocol",
3
- "version": "0.9.31",
3
+ "version": "0.10.4",
4
4
  "description": "PEAC protocol implementation - receipt issuance and verification",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -25,10 +25,10 @@
25
25
  "dependencies": {
26
26
  "uuidv7": "^0.6.3",
27
27
  "zod": "^3.22.4",
28
- "@peac/kernel": "0.9.31",
29
- "@peac/schema": "0.9.31",
30
- "@peac/telemetry": "0.9.31",
31
- "@peac/crypto": "0.9.31"
28
+ "@peac/kernel": "0.10.4",
29
+ "@peac/schema": "0.10.4",
30
+ "@peac/crypto": "0.10.4",
31
+ "@peac/telemetry": "0.10.4"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@types/node": "^20.10.0",