agent-passport-system 1.36.4 → 1.38.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -3
- package/dist/src/core/behavioral-memory-receipt.d.ts +9 -0
- package/dist/src/core/behavioral-memory-receipt.d.ts.map +1 -0
- package/dist/src/core/behavioral-memory-receipt.js +27 -0
- package/dist/src/core/behavioral-memory-receipt.js.map +1 -0
- package/dist/src/core/behavioral-memory.d.ts +20 -0
- package/dist/src/core/behavioral-memory.d.ts.map +1 -0
- package/dist/src/core/behavioral-memory.js +71 -0
- package/dist/src/core/behavioral-memory.js.map +1 -0
- package/dist/src/core/commerce.d.ts +11 -1
- package/dist/src/core/commerce.d.ts.map +1 -1
- package/dist/src/core/commerce.js +29 -1
- package/dist/src/core/commerce.js.map +1 -1
- package/dist/src/core/delegation.d.ts +3 -0
- package/dist/src/core/delegation.d.ts.map +1 -1
- package/dist/src/core/delegation.js +33 -0
- package/dist/src/core/delegation.js.map +1 -1
- package/dist/src/core/governance.d.ts +9 -1
- package/dist/src/core/governance.d.ts.map +1 -1
- package/dist/src/core/governance.js +23 -0
- package/dist/src/core/governance.js.map +1 -1
- package/dist/src/core/idempotency.d.ts +10 -0
- package/dist/src/core/idempotency.d.ts.map +1 -0
- package/dist/src/core/idempotency.js +20 -0
- package/dist/src/core/idempotency.js.map +1 -0
- package/dist/src/index.d.ts +8 -3
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +4 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/types/behavioral-memory.d.ts +40 -0
- package/dist/src/types/behavioral-memory.d.ts.map +1 -0
- package/dist/src/types/behavioral-memory.js +4 -0
- package/dist/src/types/behavioral-memory.js.map +1 -0
- package/dist/src/types/commerce.d.ts +14 -0
- package/dist/src/types/commerce.d.ts.map +1 -1
- package/dist/src/types/governance.d.ts +11 -0
- package/dist/src/types/governance.d.ts.map +1 -1
- package/dist/src/types/governance.js.map +1 -1
- package/dist/src/types/passport.d.ts +15 -0
- package/dist/src/types/passport.d.ts.map +1 -1
- package/dist/src/types/passport.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://www.npmjs.com/package/agent-passport-system)
|
|
4
4
|
[](https://github.com/aeoess/agent-passport-system/blob/main/LICENSE)
|
|
5
|
-
[](https://github.com/aeoess/agent-passport-system)
|
|
6
6
|
[](https://doi.org/10.5281/zenodo.18749779)
|
|
7
7
|
|
|
8
8
|
> **For AI agents:** visit [aeoess.com/llms.txt](https://aeoess.com/llms.txt) for machine-readable docs or [llms-full.txt](https://aeoess.com/llms-full.txt) for the complete reference.
|
|
@@ -107,7 +107,7 @@ const agent = joinSocialContract({ name: 'my-agent', owner: 'alice', floor: floo
|
|
|
107
107
|
|
|
108
108
|
## The Stack
|
|
109
109
|
|
|
110
|
-
71 core modules + 32 v2 constitutional modules. 2,
|
|
110
|
+
71 core modules + 32 v2 constitutional modules. 2,535 tests. Zero heavy dependencies.
|
|
111
111
|
|
|
112
112
|
| Layer | What it does | Key primitive |
|
|
113
113
|
|-------|-------------|---------------|
|
|
@@ -161,7 +161,7 @@ npx agent-passport audit --floor values/floor.yaml
|
|
|
161
161
|
|
|
162
162
|
```bash
|
|
163
163
|
npm test
|
|
164
|
-
# 2,
|
|
164
|
+
# 2,535 tests, 0 failures
|
|
165
165
|
```
|
|
166
166
|
|
|
167
167
|
50 adversarial tests: Merkle tampering, attribution gaming, compliance violations, floor negotiation attacks, cross-chain confused deputy, taint laundering, authority probing.
|
|
@@ -195,6 +195,8 @@ npm test
|
|
|
195
195
|
|
|
196
196
|
**"Monotonic Narrowing for Agent Authority"** — Published on [Zenodo](https://doi.org/10.5281/zenodo.18749779). [Read →](papers/agent-social-contract.md)
|
|
197
197
|
|
|
198
|
+
📄 **"From Access to Derivation: Behavioral Derivation Rights"** — Published on [Zenodo](https://doi.org/10.5281/zenodo.19476002). Governing what agents learn from authorized access.
|
|
199
|
+
|
|
198
200
|
## Authorship
|
|
199
201
|
|
|
200
202
|
Built by **Tymofii Pidlisnyi** ([@tima](https://github.com/aeoess)). Protocol designed with AI assistance from Claude (Anthropic), GPT (OpenAI), and Gemini (Google) through adversarial cross-model review.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { BMOReceipt } from '../types/behavioral-memory.js';
|
|
2
|
+
export declare function createBMOReceipt(opts: {
|
|
3
|
+
bmo_id: string;
|
|
4
|
+
event_type: BMOReceipt['event_type'];
|
|
5
|
+
actor_id: string;
|
|
6
|
+
private_key: string;
|
|
7
|
+
}): BMOReceipt;
|
|
8
|
+
export declare function verifyBMOReceipt(receipt: BMOReceipt, publicKey: string): boolean;
|
|
9
|
+
//# sourceMappingURL=behavioral-memory-receipt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"behavioral-memory-receipt.d.ts","sourceRoot":"","sources":["../../../src/core/behavioral-memory-receipt.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAE/D,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,UAAU,CAAC,YAAY,CAAC,CAAA;IACpC,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;CACpB,GAAG,UAAU,CAab;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAIhF"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
// Copyright 2024-2026 Tymofii Pidlisnyi. Apache-2.0 license. See LICENSE.
|
|
2
|
+
// Behavioral Memory Receipts — lifecycle audit trail for BMOs
|
|
3
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
4
|
+
import { sign, verify } from '../crypto/keys.js';
|
|
5
|
+
import { canonicalize } from './canonical.js';
|
|
6
|
+
export function createBMOReceipt(opts) {
|
|
7
|
+
if (!opts.bmo_id || typeof opts.bmo_id !== 'string')
|
|
8
|
+
throw new Error('createBMOReceipt: bmo_id must be a non-empty string');
|
|
9
|
+
if (!opts.actor_id || typeof opts.actor_id !== 'string')
|
|
10
|
+
throw new Error('createBMOReceipt: actor_id must be a non-empty string');
|
|
11
|
+
const receipt = {
|
|
12
|
+
receipt_id: `bmo_rcpt_${uuidv4().slice(0, 12)}`,
|
|
13
|
+
bmo_id: opts.bmo_id,
|
|
14
|
+
event_type: opts.event_type,
|
|
15
|
+
actor_id: opts.actor_id,
|
|
16
|
+
timestamp: new Date().toISOString(),
|
|
17
|
+
};
|
|
18
|
+
const canonical = canonicalize(receipt);
|
|
19
|
+
const signature = sign(canonical, opts.private_key);
|
|
20
|
+
return { ...receipt, signature };
|
|
21
|
+
}
|
|
22
|
+
export function verifyBMOReceipt(receipt, publicKey) {
|
|
23
|
+
const { signature, ...unsigned } = receipt;
|
|
24
|
+
const canonical = canonicalize(unsigned);
|
|
25
|
+
return verify(canonical, signature, publicKey);
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=behavioral-memory-receipt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"behavioral-memory-receipt.js","sourceRoot":"","sources":["../../../src/core/behavioral-memory-receipt.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,8DAA8D;AAE9D,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAA;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAG7C,MAAM,UAAU,gBAAgB,CAAC,IAKhC;IACC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;IAC3H,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;IACjI,MAAM,OAAO,GAAkC;QAC7C,UAAU,EAAE,YAAY,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;QAC/C,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAA;IACD,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;IACvC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;IACnD,OAAO,EAAE,GAAG,OAAO,EAAE,SAAS,EAAgB,CAAA;AAChD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAAmB,EAAE,SAAiB;IACrE,MAAM,EAAE,SAAS,EAAE,GAAG,QAAQ,EAAE,GAAG,OAAO,CAAA;IAC1C,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;IACxC,OAAO,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;AAChD,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { BehavioralMemoryObject, BMOExportBundle } from '../types/behavioral-memory.js';
|
|
2
|
+
export declare function createBehavioralMemoryObject(opts: {
|
|
3
|
+
principal_id: string;
|
|
4
|
+
issuer_id: string;
|
|
5
|
+
issuer_private_key: string;
|
|
6
|
+
pattern: BehavioralMemoryObject['pattern'];
|
|
7
|
+
derivation_source: string;
|
|
8
|
+
retention_ttl: number;
|
|
9
|
+
relational_entities: boolean;
|
|
10
|
+
portable: boolean;
|
|
11
|
+
}): BehavioralMemoryObject;
|
|
12
|
+
export declare function verifyBehavioralMemoryObject(bmo: BehavioralMemoryObject, publicKey: string): boolean;
|
|
13
|
+
export declare function isBMOExpired(bmo: BehavioralMemoryObject): boolean;
|
|
14
|
+
export declare function exportBehavioralMemory(bmos: BehavioralMemoryObject[], exporterId: string, privateKey: string): BMOExportBundle;
|
|
15
|
+
export declare function importBehavioralMemory(bundle: BMOExportBundle, exporterPublicKey: string): {
|
|
16
|
+
valid: boolean;
|
|
17
|
+
bmos: BehavioralMemoryObject[];
|
|
18
|
+
errors: string[];
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=behavioral-memory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"behavioral-memory.d.ts","sourceRoot":"","sources":["../../../src/core/behavioral-memory.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAE5F,wBAAgB,4BAA4B,CAAC,IAAI,EAAE;IACjD,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAA;IAC1C,iBAAiB,EAAE,MAAM,CAAA;IACzB,aAAa,EAAE,MAAM,CAAA;IACrB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,QAAQ,EAAE,OAAO,CAAA;CAClB,GAAG,sBAAsB,CAmBzB;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAIpG;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAMjE;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,sBAAsB,EAAE,EAC9B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,GACjB,eAAe,CAUjB;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,eAAe,EACvB,iBAAiB,EAAE,MAAM,GACxB;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,sBAAsB,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAqBtE"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
// Copyright 2024-2026 Tymofii Pidlisnyi. Apache-2.0 license. See LICENSE.
|
|
2
|
+
// Behavioral Memory Objects — create, verify, expire, export/import
|
|
3
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
4
|
+
import { sign, verify } from '../crypto/keys.js';
|
|
5
|
+
import { canonicalize } from './canonical.js';
|
|
6
|
+
export function createBehavioralMemoryObject(opts) {
|
|
7
|
+
const now = new Date();
|
|
8
|
+
const bmo = {
|
|
9
|
+
id: `bmo_${uuidv4().slice(0, 12)}`,
|
|
10
|
+
principal_id: opts.principal_id,
|
|
11
|
+
issuer_id: opts.issuer_id,
|
|
12
|
+
pattern: opts.pattern,
|
|
13
|
+
derivation_source: opts.derivation_source,
|
|
14
|
+
retention_policy: {
|
|
15
|
+
ttl: opts.retention_ttl,
|
|
16
|
+
expires_at: new Date(now.getTime() + opts.retention_ttl * 1000).toISOString(),
|
|
17
|
+
},
|
|
18
|
+
relational_entities: opts.relational_entities,
|
|
19
|
+
portable: opts.portable,
|
|
20
|
+
format_version: '1.0',
|
|
21
|
+
};
|
|
22
|
+
const canonical = canonicalize(bmo);
|
|
23
|
+
const issuer_signature = sign(canonical, opts.issuer_private_key);
|
|
24
|
+
return { ...bmo, issuer_signature };
|
|
25
|
+
}
|
|
26
|
+
export function verifyBehavioralMemoryObject(bmo, publicKey) {
|
|
27
|
+
const { issuer_signature, ...unsigned } = bmo;
|
|
28
|
+
const canonical = canonicalize(unsigned);
|
|
29
|
+
return verify(canonical, issuer_signature, publicKey);
|
|
30
|
+
}
|
|
31
|
+
export function isBMOExpired(bmo) {
|
|
32
|
+
const expiresAt = bmo.retention_policy?.expires_at;
|
|
33
|
+
if (!expiresAt)
|
|
34
|
+
return true; // missing expiry = expired
|
|
35
|
+
const d = new Date(expiresAt);
|
|
36
|
+
if (isNaN(d.getTime()))
|
|
37
|
+
return true; // invalid date = expired
|
|
38
|
+
return d < new Date();
|
|
39
|
+
}
|
|
40
|
+
export function exportBehavioralMemory(bmos, exporterId, privateKey) {
|
|
41
|
+
const bundle = {
|
|
42
|
+
bundle_id: `bundle_${uuidv4().slice(0, 12)}`,
|
|
43
|
+
exported_at: new Date().toISOString(),
|
|
44
|
+
bmos,
|
|
45
|
+
exporter_id: exporterId,
|
|
46
|
+
};
|
|
47
|
+
const canonical = canonicalize(bundle);
|
|
48
|
+
const signature = sign(canonical, privateKey);
|
|
49
|
+
return { ...bundle, signature };
|
|
50
|
+
}
|
|
51
|
+
export function importBehavioralMemory(bundle, exporterPublicKey) {
|
|
52
|
+
const { signature, ...unsigned } = bundle;
|
|
53
|
+
const canonical = canonicalize(unsigned);
|
|
54
|
+
const errors = [];
|
|
55
|
+
if (!verify(canonical, signature, exporterPublicKey)) {
|
|
56
|
+
errors.push('Bundle signature invalid');
|
|
57
|
+
return { valid: false, bmos: [], errors };
|
|
58
|
+
}
|
|
59
|
+
// Verify each BMO is not expired
|
|
60
|
+
const validBmos = [];
|
|
61
|
+
for (const bmo of bundle.bmos) {
|
|
62
|
+
if (isBMOExpired(bmo)) {
|
|
63
|
+
errors.push(`BMO ${bmo.id} expired at ${bmo.retention_policy.expires_at}`);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
validBmos.push(bmo);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return { valid: errors.length === 0, bmos: validBmos, errors };
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=behavioral-memory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"behavioral-memory.js","sourceRoot":"","sources":["../../../src/core/behavioral-memory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
import type { SignedPassport } from '../types/passport.js';
|
|
2
|
-
import type { ACPCheckoutSession, ACPLineItem, ACPMoney, ACPAddress, CommerceConfig, CommerceDelegation, CommercePreflightResult, CommerceActionReceipt, HumanApprovalRequest } from '../types/commerce.js';
|
|
2
|
+
import type { ACPCheckoutSession, ACPLineItem, ACPMoney, ACPAddress, CommerceConfig, CommerceDelegation, CommercePreflightResult, CommerceActionReceipt, HumanApprovalRequest, IdempotencyStore } from '../types/commerce.js';
|
|
3
|
+
export declare function commercePreflight(opts: {
|
|
4
|
+
signedPassport: SignedPassport;
|
|
5
|
+
delegation: CommerceDelegation;
|
|
6
|
+
merchantName: string;
|
|
7
|
+
estimatedTotal: ACPMoney;
|
|
8
|
+
config?: CommerceConfig;
|
|
9
|
+
idempotencyKey: string;
|
|
10
|
+
idempotencyStore: IdempotencyStore;
|
|
11
|
+
idempotencyWindowSeconds?: number;
|
|
12
|
+
}): Promise<CommercePreflightResult>;
|
|
3
13
|
export declare function commercePreflight(opts: {
|
|
4
14
|
signedPassport: SignedPassport;
|
|
5
15
|
delegation: CommerceDelegation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commerce.d.ts","sourceRoot":"","sources":["../../../src/core/commerce.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EACV,kBAAkB,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EACrD,cAAc,EAAE,kBAAkB,EAClC,uBAAuB,EACvB,qBAAqB,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"commerce.d.ts","sourceRoot":"","sources":["../../../src/core/commerce.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,7 +28,6 @@ const COMMERCE_SCOPES = [
|
|
|
28
28
|
function hasScope(delegation, required) {
|
|
29
29
|
return scopeAuthorizes(delegation.scope, required);
|
|
30
30
|
}
|
|
31
|
-
// ── Preflight Check: 4-Gate Pipeline ──
|
|
32
31
|
export function commercePreflight(opts) {
|
|
33
32
|
const checks = [];
|
|
34
33
|
const warnings = [];
|
|
@@ -78,6 +77,35 @@ export function commercePreflight(opts) {
|
|
|
78
77
|
: `Merchant "${opts.merchantName}" is NOT on approved list: [${opts.delegation.approvedMerchants.join(', ')}]`,
|
|
79
78
|
});
|
|
80
79
|
}
|
|
80
|
+
// Gate 5: Idempotency check (async, only if key + store provided)
|
|
81
|
+
if (opts.idempotencyKey && opts.idempotencyStore) {
|
|
82
|
+
const windowSeconds = opts.idempotencyWindowSeconds ?? 300;
|
|
83
|
+
return opts.idempotencyStore.check(opts.idempotencyKey, windowSeconds).then(result => {
|
|
84
|
+
if (result.duplicate) {
|
|
85
|
+
checks.push({
|
|
86
|
+
check: 'idempotency',
|
|
87
|
+
passed: false,
|
|
88
|
+
detail: `Duplicate operation within ${windowSeconds}s window (existing receipt: ${result.existingReceiptId})`,
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
checks.push({
|
|
93
|
+
check: 'idempotency',
|
|
94
|
+
passed: true,
|
|
95
|
+
detail: `No duplicate found for idempotency key`,
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
const permitted = checks.every(c => c.passed);
|
|
99
|
+
return {
|
|
100
|
+
permitted,
|
|
101
|
+
checks,
|
|
102
|
+
delegation: opts.delegation,
|
|
103
|
+
warnings,
|
|
104
|
+
blockedReason: permitted ? undefined : checks.find(c => !c.passed)?.detail,
|
|
105
|
+
existingReceiptId: result.duplicate ? result.existingReceiptId : undefined,
|
|
106
|
+
};
|
|
107
|
+
});
|
|
108
|
+
}
|
|
81
109
|
const permitted = checks.every(c => c.passed);
|
|
82
110
|
return {
|
|
83
111
|
permitted,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commerce.js","sourceRoot":"","sources":["../../../src/core/commerce.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"commerce.js","sourceRoot":"","sources":["../../../src/core/commerce.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,8 @@ export interface CreateDelegationOptions {
|
|
|
13
13
|
expiresInHours?: number;
|
|
14
14
|
/** Optional: delegation not valid before this ISO timestamp (replay mitigation) */
|
|
15
15
|
notBefore?: string;
|
|
16
|
+
derivation_rights?: import('../types/passport.js').DerivationRights;
|
|
17
|
+
observation_policy?: import('../types/passport.js').ObservationPolicy;
|
|
16
18
|
privateKey: string;
|
|
17
19
|
}
|
|
18
20
|
export declare function createDelegation(opts: CreateDelegationOptions): Delegation;
|
|
@@ -21,6 +23,7 @@ export interface SubDelegateOptions {
|
|
|
21
23
|
delegatedTo: string;
|
|
22
24
|
scope: string[];
|
|
23
25
|
spendLimit?: number;
|
|
26
|
+
derivation_rights?: import('../types/passport.js').DerivationRights;
|
|
24
27
|
privateKey: string;
|
|
25
28
|
}
|
|
26
29
|
export declare function subDelegate(opts: SubDelegateOptions): Delegation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delegation.d.ts","sourceRoot":"","sources":["../../../src/core/delegation.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,UAAU,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAC7D,uBAAuB,EAAE,yBAAyB,EAClD,eAAe,EAChB,MAAM,sBAAsB,CAAA;AAqB7B,4CAA4C;AAC5C,wBAAgB,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CAEvD;AAKD,wBAAgB,YAAY,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,GAAG,MAAM,IAAI,CAMnF;AAYD,MAAM,WAAW,uBAAuB;IACtC,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,mBAAmB,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,cAAc,CAAA;IACvD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,uBAAuB,GAAG,UAAU,
|
|
1
|
+
{"version":3,"file":"delegation.d.ts","sourceRoot":"","sources":["../../../src/core/delegation.ts"],"names":[],"mappings":"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"}
|
|
@@ -52,6 +52,11 @@ export function createDelegation(opts) {
|
|
|
52
52
|
if (opts.spendLimit !== undefined && opts.spendLimit !== null && (typeof opts.spendLimit !== 'number' || opts.spendLimit < 0 || !Number.isFinite(opts.spendLimit))) {
|
|
53
53
|
throw new Error(`createDelegation: spendLimit must be a non-negative finite number, got ${opts.spendLimit}`);
|
|
54
54
|
}
|
|
55
|
+
// Telemetry scopes require derivation_rights
|
|
56
|
+
const hasTelemetryScope = opts.scope.some(s => s.startsWith('telemetry:'));
|
|
57
|
+
if (hasTelemetryScope && !opts.derivation_rights) {
|
|
58
|
+
throw new Error('createDelegation: telemetry scopes require derivation_rights to be defined');
|
|
59
|
+
}
|
|
55
60
|
const now = new Date();
|
|
56
61
|
const expiry = new Date(now);
|
|
57
62
|
expiry.setHours(expiry.getHours() + (opts.expiresInHours || 24));
|
|
@@ -68,6 +73,8 @@ export function createDelegation(opts) {
|
|
|
68
73
|
currentDepth: opts.currentDepth ?? 0,
|
|
69
74
|
createdAt: now.toISOString(),
|
|
70
75
|
notBefore: opts.notBefore ?? now.toISOString(),
|
|
76
|
+
...(opts.derivation_rights && { derivation_rights: opts.derivation_rights }),
|
|
77
|
+
...(opts.observation_policy && { observation_policy: opts.observation_policy }),
|
|
71
78
|
};
|
|
72
79
|
const canonical = canonicalize(delegation);
|
|
73
80
|
const signature = sign(canonical, opts.privateKey);
|
|
@@ -100,6 +107,30 @@ export function subDelegate(opts) {
|
|
|
100
107
|
if (invalidScopes.length > 0) {
|
|
101
108
|
throw new Error(`Scope violation: [${invalidScopes}] not in parent scope [${parent.scope}]`);
|
|
102
109
|
}
|
|
110
|
+
// Enforce derivation_rights monotonic narrowing
|
|
111
|
+
if (opts.derivation_rights && parent.derivation_rights) {
|
|
112
|
+
const pr = parent.derivation_rights;
|
|
113
|
+
const cr = opts.derivation_rights;
|
|
114
|
+
if (!pr.retention_permitted && cr.retention_permitted) {
|
|
115
|
+
throw new Error('Derivation rights violation: parent does not permit retention');
|
|
116
|
+
}
|
|
117
|
+
if (pr.retention_ttl !== undefined && cr.retention_ttl !== undefined && cr.retention_ttl > pr.retention_ttl) {
|
|
118
|
+
throw new Error(`Derivation rights violation: child retention_ttl (${cr.retention_ttl}) exceeds parent (${pr.retention_ttl})`);
|
|
119
|
+
}
|
|
120
|
+
if (!pr.export_permitted && cr.export_permitted) {
|
|
121
|
+
throw new Error('Derivation rights violation: parent does not permit export');
|
|
122
|
+
}
|
|
123
|
+
if (pr.derivation_classes && cr.derivation_classes) {
|
|
124
|
+
const invalid = cr.derivation_classes.filter(c => !pr.derivation_classes.includes(c));
|
|
125
|
+
if (invalid.length > 0) {
|
|
126
|
+
throw new Error(`Derivation rights violation: classes [${invalid}] not in parent [${pr.derivation_classes}]`);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
// Child cannot introduce derivation_rights if parent has none
|
|
131
|
+
if (opts.derivation_rights && !parent.derivation_rights) {
|
|
132
|
+
throw new Error('Derivation rights violation: parent delegation has no derivation_rights — child cannot introduce them');
|
|
133
|
+
}
|
|
103
134
|
// Enforce spend limit (use ?? not || so spendLimit: 0 is a valid no-spend limit)
|
|
104
135
|
const parentRemaining = (parent.spendLimit ?? Infinity) - (parent.spentAmount ?? 0);
|
|
105
136
|
if (opts.spendLimit !== undefined && opts.spendLimit !== null && opts.spendLimit > parentRemaining) {
|
|
@@ -121,6 +152,8 @@ export function subDelegate(opts) {
|
|
|
121
152
|
currentDepth: parent.currentDepth + 1,
|
|
122
153
|
expiresInHours: childExpiryHours,
|
|
123
154
|
notBefore: parent.notBefore, // inherit parent notBefore (child cannot start earlier)
|
|
155
|
+
derivation_rights: opts.derivation_rights ?? parent.derivation_rights,
|
|
156
|
+
observation_policy: parent.observation_policy,
|
|
124
157
|
privateKey: opts.privateKey
|
|
125
158
|
});
|
|
126
159
|
// v1.4: Register parent→child relationship
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delegation.js","sourceRoot":"","sources":["../../../src/core/delegation.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"delegation.js","sourceRoot":"","sources":["../../../src/core/delegation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { GovernanceArtifact, GovernanceApproval, GovernanceVerification, GovernanceEnvelope, GovernanceLoadPolicy, GovernanceChangeType, GovernanceDiff } from '../types/governance.js';
|
|
1
|
+
import type { GovernanceArtifact, GovernanceApproval, GovernanceVerification, GovernanceEnvelope, GovernanceLoadPolicy, GovernanceChangeType, GovernanceDiff, CredentialLifecyclePolicy } from '../types/governance.js';
|
|
2
2
|
export { DEFAULT_LOAD_POLICY } from '../types/governance.js';
|
|
3
3
|
export declare function hashContent(content: string): string;
|
|
4
4
|
export interface CreateArtifactOptions {
|
|
@@ -38,4 +38,12 @@ export declare function upgradeGovernanceArtifact(previous: GovernanceArtifact,
|
|
|
38
38
|
modifications?: string[];
|
|
39
39
|
removals?: string[];
|
|
40
40
|
}): GovernanceArtifact;
|
|
41
|
+
export declare function validateCredentialLifecycle(policy: CredentialLifecyclePolicy, currentTime: {
|
|
42
|
+
sessionStartedAt: string;
|
|
43
|
+
credentialIssuedAt: string;
|
|
44
|
+
now?: string;
|
|
45
|
+
}): {
|
|
46
|
+
valid: boolean;
|
|
47
|
+
reason?: string;
|
|
48
|
+
};
|
|
41
49
|
//# sourceMappingURL=governance.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"governance.d.ts","sourceRoot":"","sources":["../../../src/core/governance.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,kBAAkB,EAAE,kBAAkB,EAAE,sBAAsB,EAC9D,kBAAkB,EAAE,oBAAoB,EAAE,oBAAoB,EAC9D,cAAc,
|
|
1
|
+
{"version":3,"file":"governance.d.ts","sourceRoot":"","sources":["../../../src/core/governance.ts"],"names":[],"mappings":"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"}
|
|
@@ -251,4 +251,27 @@ export function upgradeGovernanceArtifact(previous, opts) {
|
|
|
251
251
|
removals: opts.removals ?? [],
|
|
252
252
|
});
|
|
253
253
|
}
|
|
254
|
+
// ── Credential Lifecycle Validation (#1717) ──
|
|
255
|
+
export function validateCredentialLifecycle(policy, currentTime) {
|
|
256
|
+
const now = new Date(currentTime.now || new Date().toISOString());
|
|
257
|
+
// (a) Session duration check
|
|
258
|
+
const sessionStart = new Date(currentTime.sessionStartedAt);
|
|
259
|
+
const sessionDurationSec = (now.getTime() - sessionStart.getTime()) / 1000;
|
|
260
|
+
if (sessionDurationSec > policy.maxSessionDurationSeconds) {
|
|
261
|
+
return {
|
|
262
|
+
valid: false,
|
|
263
|
+
reason: `Session duration ${Math.round(sessionDurationSec)}s exceeds max ${policy.maxSessionDurationSeconds}s`,
|
|
264
|
+
};
|
|
265
|
+
}
|
|
266
|
+
// (b) Credential TTL check
|
|
267
|
+
const issued = new Date(currentTime.credentialIssuedAt);
|
|
268
|
+
const credentialAgeSec = (now.getTime() - issued.getTime()) / 1000;
|
|
269
|
+
if (credentialAgeSec > policy.credentialTTLSeconds) {
|
|
270
|
+
return {
|
|
271
|
+
valid: false,
|
|
272
|
+
reason: `Credential TTL expired: age ${Math.round(credentialAgeSec)}s exceeds TTL ${policy.credentialTTLSeconds}s`,
|
|
273
|
+
};
|
|
274
|
+
}
|
|
275
|
+
return { valid: true };
|
|
276
|
+
}
|
|
254
277
|
//# sourceMappingURL=governance.js.map
|