agent-passport-system 1.14.11 → 1.15.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.
Files changed (60) hide show
  1. package/README.md +4 -4
  2. package/dist/src/core/context.js +2 -2
  3. package/dist/src/core/context.js.map +1 -1
  4. package/dist/src/core/escalation.d.ts +88 -0
  5. package/dist/src/core/escalation.d.ts.map +1 -0
  6. package/dist/src/core/escalation.js +211 -0
  7. package/dist/src/core/escalation.js.map +1 -0
  8. package/dist/src/core/execution-envelope.d.ts.map +1 -1
  9. package/dist/src/core/execution-envelope.js +8 -5
  10. package/dist/src/core/execution-envelope.js.map +1 -1
  11. package/dist/src/core/feasibility.d.ts +26 -0
  12. package/dist/src/core/feasibility.d.ts.map +1 -0
  13. package/dist/src/core/feasibility.js +205 -0
  14. package/dist/src/core/feasibility.js.map +1 -0
  15. package/dist/src/core/gateway.d.ts +1 -0
  16. package/dist/src/core/gateway.d.ts.map +1 -1
  17. package/dist/src/core/gateway.js +8 -1
  18. package/dist/src/core/gateway.js.map +1 -1
  19. package/dist/src/core/governance.d.ts +41 -0
  20. package/dist/src/core/governance.d.ts.map +1 -0
  21. package/dist/src/core/governance.js +254 -0
  22. package/dist/src/core/governance.js.map +1 -0
  23. package/dist/src/core/identity.d.ts +33 -0
  24. package/dist/src/core/identity.d.ts.map +1 -0
  25. package/dist/src/core/identity.js +206 -0
  26. package/dist/src/core/identity.js.map +1 -0
  27. package/dist/src/core/policy.js.map +1 -1
  28. package/dist/src/core/precedent.d.ts +58 -0
  29. package/dist/src/core/precedent.d.ts.map +1 -0
  30. package/dist/src/core/precedent.js +170 -0
  31. package/dist/src/core/precedent.js.map +1 -0
  32. package/dist/src/core/reanchor.d.ts +47 -0
  33. package/dist/src/core/reanchor.d.ts.map +1 -0
  34. package/dist/src/core/reanchor.js +102 -0
  35. package/dist/src/core/reanchor.js.map +1 -0
  36. package/dist/src/core/receipt-ledger.d.ts +50 -0
  37. package/dist/src/core/receipt-ledger.d.ts.map +1 -0
  38. package/dist/src/core/receipt-ledger.js +142 -0
  39. package/dist/src/core/receipt-ledger.js.map +1 -0
  40. package/dist/src/index.d.ts +14 -0
  41. package/dist/src/index.d.ts.map +1 -1
  42. package/dist/src/index.js +14 -0
  43. package/dist/src/index.js.map +1 -1
  44. package/dist/src/types/feasibility.d.ts +14 -0
  45. package/dist/src/types/feasibility.d.ts.map +1 -0
  46. package/dist/src/types/feasibility.js +4 -0
  47. package/dist/src/types/feasibility.js.map +1 -0
  48. package/dist/src/types/gateway.d.ts +10 -0
  49. package/dist/src/types/gateway.d.ts.map +1 -1
  50. package/dist/src/types/governance.d.ts +64 -0
  51. package/dist/src/types/governance.d.ts.map +1 -0
  52. package/dist/src/types/governance.js +14 -0
  53. package/dist/src/types/governance.js.map +1 -0
  54. package/dist/src/types/identity.d.ts +26 -0
  55. package/dist/src/types/identity.d.ts.map +1 -0
  56. package/dist/src/types/identity.js +5 -0
  57. package/dist/src/types/identity.js.map +1 -0
  58. package/dist/src/types/policy.d.ts +3 -0
  59. package/dist/src/types/policy.d.ts.map +1 -1
  60. package/package.json +2 -2
package/README.md CHANGED
@@ -7,7 +7,7 @@
7
7
 
8
8
  Cryptographic identity, ethical governance, economic attribution, protocol-native communication, intent architecture, cascade revocation, coordination primitives, and agentic commerce for autonomous AI agents.
9
9
 
10
- **20 modules. 678 tests. Zero heavy dependencies. Running code. MCP server included.**
10
+ **27 modules. 785 tests. Zero heavy dependencies. Running code. MCP server included.**
11
11
 
12
12
  > *As AI agents from different creators, running different models, serving different humans begin to collaborate — who is responsible, under what authority, according to what values, and who benefits?*
13
13
 
@@ -380,7 +380,7 @@ Or zero-install remote mode:
380
380
  npx agent-passport-system-mcp setup --remote
381
381
  ```
382
382
 
383
- **61 tools across all 20 modules, role-scoped access control.** Identity, delegation, agora, values/policy, coordination, and commerce — all accessible via MCP. Every operation Ed25959 signed. Auto-configures Claude Desktop and Cursor.
383
+ **61 tools across all 27 modules, role-scoped access control.** Identity, delegation, agora, values/policy, coordination, and commerce — all accessible via MCP. Every operation Ed25959 signed. Auto-configures Claude Desktop and Cursor.
384
384
 
385
385
  Every operation is Ed25959 signed. Role is auto-detected from task assignments. Role-specific prompts served via MCP prompts API. File-backed task persistence at `~/.agent-passport-tasks.json`.
386
386
 
@@ -402,7 +402,7 @@ PyPI: [agent-passport-system](https://pypi.org/project/agent-passport-system/)
402
402
 
403
403
  ```bash
404
404
  npm test
405
- # 678 tests across 36 files, 187 suites, 0 failures
405
+ # 785 tests across 38 files, 220 suites, 0 failures
406
406
  ```
407
407
 
408
408
  Includes 23 adversarial tests: Merkle tree tampering, attribution gaming resistance, compliance violations, floor negotiation attacks, wrong-key attestations.
@@ -479,7 +479,7 @@ src/ 22 source files
479
479
  euaiact.ts — EU AI Act types
480
480
  principal.ts — Principal identity types
481
481
  reputation-authority.ts — Reputation/tier types
482
- tests/ 36 test files, 678 tests (187 suites)
482
+ tests/ 43 test files, 785 tests (220 suites)
483
483
  adversarial.ts — 23 adversarial cases
484
484
  agora.test.ts — 15 Agora tests
485
485
  contract.test.ts — High-level API tests
@@ -200,10 +200,10 @@ export class AgentContext {
200
200
  if (decision.verdict === 'deny') {
201
201
  this.config.onDenied?.(decision, intent);
202
202
  }
203
- if (decision.auditFindings?.length > 0) {
203
+ if (decision.auditFindings && decision.auditFindings.length > 0) {
204
204
  this.config.onAuditFinding?.(decision);
205
205
  }
206
- if (decision.warnings?.length > 0) {
206
+ if (decision.warnings && decision.warnings.length > 0) {
207
207
  this.config.onWarning?.(decision);
208
208
  }
209
209
  this.logAudit(request, result);
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/core/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/core/context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,88 @@
1
+ export type EscalationTriggerType = 'human_authorized' | 'multi_witness';
2
+ export type ActionClass = 'tentative' | 'compensable' | 'irreversible';
3
+ export interface EscalationGrant {
4
+ grantId: string;
5
+ delegationId: string;
6
+ grantedTo: string;
7
+ grantedBy: string;
8
+ ceiling: {
9
+ scope: string[];
10
+ maxSpend: number;
11
+ maxDurationMs: number;
12
+ };
13
+ allowedTriggers: EscalationTriggerType[];
14
+ allowedActionClasses: ActionClass[];
15
+ createdAt: string;
16
+ expiresAt: string;
17
+ signature: string;
18
+ }
19
+ export interface EscalationRequest {
20
+ requestId: string;
21
+ grantId: string;
22
+ agentPublicKey: string;
23
+ trigger: {
24
+ type: EscalationTriggerType;
25
+ evidence: string;
26
+ humanApprovalSignature?: string;
27
+ };
28
+ requestedAt: string;
29
+ signature: string;
30
+ }
31
+ export interface ActiveEscalation {
32
+ escalationId: string;
33
+ grantId: string;
34
+ requestId: string;
35
+ agentPublicKey: string;
36
+ effectiveScope: string[];
37
+ effectiveSpendLimit: number;
38
+ activatedAt: string;
39
+ expiresAt: string;
40
+ status: 'active' | 'expired' | 'revoked';
41
+ provisionalReceipts: string[];
42
+ spentDuringEscalation: number;
43
+ gatewaySignature: string;
44
+ }
45
+ export interface EscalationVerification {
46
+ valid: boolean;
47
+ errors: string[];
48
+ grantValid: boolean;
49
+ ceilingWithinScope: boolean;
50
+ triggerAccepted: boolean;
51
+ temporalValid: boolean;
52
+ }
53
+ export declare function createEscalationGrant(opts: {
54
+ delegationId: string;
55
+ grantedTo: string;
56
+ grantedBy: string;
57
+ granterPrivateKey: string;
58
+ ceiling: EscalationGrant['ceiling'];
59
+ allowedTriggers?: EscalationTriggerType[];
60
+ allowedActionClasses?: ActionClass[];
61
+ expiresAt: string;
62
+ }): EscalationGrant;
63
+ export declare function verifyEscalationGrant(grant: EscalationGrant, granterScope: string[]): EscalationVerification;
64
+ export declare function requestEscalation(opts: {
65
+ grant: EscalationGrant;
66
+ agentPrivateKey: string;
67
+ agentPublicKey: string;
68
+ trigger: EscalationRequest['trigger'];
69
+ }): EscalationRequest;
70
+ export declare function activateEscalation(opts: {
71
+ grant: EscalationGrant;
72
+ request: EscalationRequest;
73
+ gatewayPrivateKey: string;
74
+ }): ActiveEscalation;
75
+ export declare function checkEscalatedAction(opts: {
76
+ escalation: ActiveEscalation;
77
+ grant: EscalationGrant;
78
+ action: string;
79
+ actionClass: ActionClass;
80
+ spend?: number;
81
+ }): {
82
+ permitted: boolean;
83
+ errors: string[];
84
+ effectClass: ActionClass;
85
+ };
86
+ export declare function revokeEscalation(escalation: ActiveEscalation): ActiveEscalation;
87
+ export declare function isEscalationActive(escalation: ActiveEscalation): boolean;
88
+ //# sourceMappingURL=escalation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"escalation.d.ts","sourceRoot":"","sources":["../../../src/core/escalation.ts"],"names":[],"mappings":"AAcA,MAAM,MAAM,qBAAqB,GAC7B,kBAAkB,GAClB,eAAe,CAAA;AAEnB,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,aAAa,GAAG,cAAc,CAAA;AAEtE,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,EAAE,CAAA;QACf,QAAQ,EAAE,MAAM,CAAA;QAChB,aAAa,EAAE,MAAM,CAAA;KACtB,CAAA;IACD,eAAe,EAAE,qBAAqB,EAAE,CAAA;IACxC,oBAAoB,EAAE,WAAW,EAAE,CAAA;IACnC,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,MAAM,CAAA;IACtB,OAAO,EAAE;QACP,IAAI,EAAE,qBAAqB,CAAA;QAC3B,QAAQ,EAAE,MAAM,CAAA;QAChB,sBAAsB,CAAC,EAAE,MAAM,CAAA;KAChC,CAAA;IACD,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,MAAM,CAAA;IACtB,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAA;IACxC,mBAAmB,EAAE,MAAM,EAAE,CAAA;IAC7B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,OAAO,CAAA;IACd,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,UAAU,EAAE,OAAO,CAAA;IACnB,kBAAkB,EAAE,OAAO,CAAA;IAC3B,eAAe,EAAE,OAAO,CAAA;IACxB,aAAa,EAAE,OAAO,CAAA;CACvB;AAMD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,iBAAiB,EAAE,MAAM,CAAA;IACzB,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,CAAA;IACnC,eAAe,CAAC,EAAE,qBAAqB,EAAE,CAAA;IACzC,oBAAoB,CAAC,EAAE,WAAW,EAAE,CAAA;IACpC,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,eAAe,CAkClB;AAMD,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,eAAe,EACtB,YAAY,EAAE,MAAM,EAAE,GACrB,sBAAsB,CAuCxB;AAMD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,KAAK,EAAE,eAAe,CAAA;IACtB,eAAe,EAAE,MAAM,CAAA;IACvB,cAAc,EAAE,MAAM,CAAA;IACtB,OAAO,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAA;CACtC,GAAG,iBAAiB,CAoBpB;AAMD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IACvC,KAAK,EAAE,eAAe,CAAA;IACtB,OAAO,EAAE,iBAAiB,CAAA;IAC1B,iBAAiB,EAAE,MAAM,CAAA;CAC1B,GAAG,gBAAgB,CA2DnB;AAMD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE;IACzC,UAAU,EAAE,gBAAgB,CAAA;IAC5B,KAAK,EAAE,eAAe,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,WAAW,CAAA;IACxB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,GAAG;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,WAAW,EAAE,WAAW,CAAA;CAAE,CAiCrE;AAMD,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,GAAG,gBAAgB,CAE/E;AAMD,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,gBAAgB,GAAG,OAAO,CAIxE"}
@@ -0,0 +1,211 @@
1
+ // Bounded Escalation — Module 27 (Fourth Attenuation Invariant)
2
+ // Exception authority is pre-committed, bounded, temporary, challengeable.
3
+ // Escalation grants are delegations — subject to monotonic narrowing.
4
+ // v1: human_authorized only, tentative actions only, single active, hard TTL.
5
+ import { v4 as uuidv4 } from 'uuid';
6
+ import { sign, verify } from '../crypto/keys.js';
7
+ import { canonicalize } from './canonical.js';
8
+ import { scopeAuthorizes } from './delegation.js';
9
+ // ══════════════════════════════════════
10
+ // CREATE ESCALATION GRANT
11
+ // ══════════════════════════════════════
12
+ export function createEscalationGrant(opts) {
13
+ const { delegationId, grantedTo, grantedBy, granterPrivateKey, ceiling, allowedTriggers, allowedActionClasses, expiresAt } = opts;
14
+ const now = new Date().toISOString();
15
+ const grantId = 'esc_' + uuidv4().slice(0, 12);
16
+ // V5-MED-2: Basic validation at creation time
17
+ if (!ceiling.scope || ceiling.scope.length === 0) {
18
+ throw new Error('Escalation grant ceiling must have at least one scope');
19
+ }
20
+ if (ceiling.maxSpend < 0) {
21
+ throw new Error('Escalation grant ceiling maxSpend cannot be negative');
22
+ }
23
+ if (ceiling.maxDurationMs <= 0) {
24
+ throw new Error('Escalation grant ceiling maxDurationMs must be positive');
25
+ }
26
+ const signable = canonicalize({
27
+ grantId, delegationId, grantedTo, grantedBy,
28
+ ceiling, allowedTriggers: allowedTriggers ?? ['human_authorized'],
29
+ allowedActionClasses: allowedActionClasses ?? ['tentative'],
30
+ createdAt: now, expiresAt,
31
+ });
32
+ const signature = sign(signable, granterPrivateKey);
33
+ return {
34
+ grantId, delegationId, grantedTo, grantedBy,
35
+ ceiling,
36
+ allowedTriggers: allowedTriggers ?? ['human_authorized'],
37
+ allowedActionClasses: allowedActionClasses ?? ['tentative'],
38
+ createdAt: now, expiresAt, signature,
39
+ };
40
+ }
41
+ // ══════════════════════════════════════
42
+ // VERIFY ESCALATION GRANT
43
+ // ══════════════════════════════════════
44
+ export function verifyEscalationGrant(grant, granterScope) {
45
+ const errors = [];
46
+ // Verify signature
47
+ let grantValid = false;
48
+ try {
49
+ const signable = canonicalize({
50
+ grantId: grant.grantId, delegationId: grant.delegationId,
51
+ grantedTo: grant.grantedTo, grantedBy: grant.grantedBy,
52
+ ceiling: grant.ceiling, allowedTriggers: grant.allowedTriggers,
53
+ allowedActionClasses: grant.allowedActionClasses,
54
+ createdAt: grant.createdAt, expiresAt: grant.expiresAt,
55
+ });
56
+ grantValid = verify(signable, grant.signature, grant.grantedBy);
57
+ }
58
+ catch {
59
+ grantValid = false;
60
+ }
61
+ if (!grantValid)
62
+ errors.push('Invalid grant signature');
63
+ // Verify ceiling within granter's scope (monotonic narrowing)
64
+ let ceilingWithinScope = true;
65
+ for (const s of grant.ceiling.scope) {
66
+ if (!scopeAuthorizes(granterScope, s)) {
67
+ ceilingWithinScope = false;
68
+ errors.push(`Ceiling scope "${s}" exceeds granter's scope`);
69
+ }
70
+ }
71
+ // Verify temporal validity
72
+ const now = Date.now();
73
+ const temporalValid = now < new Date(grant.expiresAt).getTime();
74
+ if (!temporalValid)
75
+ errors.push('Grant has expired');
76
+ // Trigger validation
77
+ const triggerAccepted = grant.allowedTriggers.length > 0;
78
+ if (!triggerAccepted)
79
+ errors.push('No triggers defined');
80
+ return {
81
+ valid: grantValid && ceilingWithinScope && temporalValid && triggerAccepted,
82
+ errors, grantValid, ceilingWithinScope, triggerAccepted, temporalValid,
83
+ };
84
+ }
85
+ // ══════════════════════════════════════
86
+ // REQUEST ESCALATION
87
+ // ══════════════════════════════════════
88
+ export function requestEscalation(opts) {
89
+ const { grant, agentPrivateKey, agentPublicKey, trigger } = opts;
90
+ const now = new Date().toISOString();
91
+ const requestId = 'escreq_' + uuidv4().slice(0, 12);
92
+ if (!grant.allowedTriggers.includes(trigger.type)) {
93
+ throw new Error(`Trigger type "${trigger.type}" not allowed by this grant`);
94
+ }
95
+ if (grant.grantedTo !== agentPublicKey) {
96
+ throw new Error('Agent is not the grantee of this escalation grant');
97
+ }
98
+ const signable = canonicalize({
99
+ requestId, grantId: grant.grantId, agentPublicKey,
100
+ trigger, requestedAt: now,
101
+ });
102
+ const signature = sign(signable, agentPrivateKey);
103
+ return { requestId, grantId: grant.grantId, agentPublicKey, trigger, requestedAt: now, signature };
104
+ }
105
+ // ══════════════════════════════════════
106
+ // ACTIVATE ESCALATION (gateway validates and activates)
107
+ // ══════════════════════════════════════
108
+ export function activateEscalation(opts) {
109
+ const { grant, request, gatewayPrivateKey } = opts;
110
+ const now = new Date().toISOString();
111
+ const escalationId = 'active_esc_' + uuidv4().slice(0, 12);
112
+ // Validate request matches grant
113
+ if (request.grantId !== grant.grantId) {
114
+ throw new Error('Request does not reference this grant');
115
+ }
116
+ if (request.agentPublicKey !== grant.grantedTo) {
117
+ throw new Error('Requesting agent is not the grantee');
118
+ }
119
+ // Validate grant not expired
120
+ if (Date.now() >= new Date(grant.expiresAt).getTime()) {
121
+ throw new Error('Escalation grant has expired');
122
+ }
123
+ // Validate trigger type
124
+ if (!grant.allowedTriggers.includes(request.trigger.type)) {
125
+ throw new Error(`Trigger "${request.trigger.type}" not allowed`);
126
+ }
127
+ // For human_authorized, verify the human signature cryptographically (V5-HIGH-3 fix)
128
+ if (request.trigger.type === 'human_authorized') {
129
+ if (!request.trigger.humanApprovalSignature) {
130
+ throw new Error('human_authorized trigger requires humanApprovalSignature');
131
+ }
132
+ // Verify the approval was actually signed by the granter
133
+ const approvalPayload = canonicalize({ approve: grant.grantId, grantedTo: grant.grantedTo });
134
+ let approvalValid = false;
135
+ try {
136
+ approvalValid = verify(approvalPayload, request.trigger.humanApprovalSignature, grant.grantedBy);
137
+ }
138
+ catch {
139
+ approvalValid = false;
140
+ }
141
+ if (!approvalValid) {
142
+ throw new Error('human_authorized trigger has invalid approval signature — not signed by granter');
143
+ }
144
+ }
145
+ const expiresAt = new Date(Date.now() + grant.ceiling.maxDurationMs).toISOString();
146
+ const signable = canonicalize({
147
+ escalationId, grantId: grant.grantId, requestId: request.requestId,
148
+ agentPublicKey: request.agentPublicKey,
149
+ effectiveScope: grant.ceiling.scope,
150
+ effectiveSpendLimit: grant.ceiling.maxSpend,
151
+ activatedAt: now, expiresAt,
152
+ });
153
+ const gatewaySignature = sign(signable, gatewayPrivateKey);
154
+ return {
155
+ escalationId, grantId: grant.grantId, requestId: request.requestId,
156
+ agentPublicKey: request.agentPublicKey,
157
+ effectiveScope: grant.ceiling.scope,
158
+ effectiveSpendLimit: grant.ceiling.maxSpend,
159
+ activatedAt: now, expiresAt, status: 'active',
160
+ provisionalReceipts: [], spentDuringEscalation: 0,
161
+ gatewaySignature,
162
+ };
163
+ }
164
+ // ══════════════════════════════════════
165
+ // CHECK ESCALATED ACTION
166
+ // ══════════════════════════════════════
167
+ export function checkEscalatedAction(opts) {
168
+ const { escalation, grant, action, actionClass, spend } = opts;
169
+ const errors = [];
170
+ // Check escalation is active
171
+ if (escalation.status !== 'active') {
172
+ errors.push(`Escalation is ${escalation.status}, not active`);
173
+ }
174
+ // Check not expired
175
+ if (Date.now() >= new Date(escalation.expiresAt).getTime()) {
176
+ errors.push('Escalation has expired');
177
+ }
178
+ // Check action class is permitted
179
+ if (!grant.allowedActionClasses.includes(actionClass)) {
180
+ errors.push(`Action class "${actionClass}" not permitted by grant (allowed: ${grant.allowedActionClasses.join(', ')})`);
181
+ }
182
+ // Check scope coverage
183
+ if (!scopeAuthorizes(escalation.effectiveScope, action)) {
184
+ errors.push(`Action "${action}" not within escalation scope`);
185
+ }
186
+ // Check spend
187
+ if (spend !== undefined && spend > 0) {
188
+ const remaining = escalation.effectiveSpendLimit - escalation.spentDuringEscalation;
189
+ if (spend > remaining) {
190
+ errors.push(`Spend $${spend} exceeds remaining escalation budget $${remaining}`);
191
+ }
192
+ }
193
+ return { permitted: errors.length === 0, errors, effectClass: actionClass };
194
+ }
195
+ // ══════════════════════════════════════
196
+ // REVOKE ESCALATION
197
+ // ══════════════════════════════════════
198
+ export function revokeEscalation(escalation) {
199
+ return { ...escalation, status: 'revoked' };
200
+ }
201
+ // ══════════════════════════════════════
202
+ // CHECK IF ACTIVE (utility)
203
+ // ══════════════════════════════════════
204
+ export function isEscalationActive(escalation) {
205
+ if (escalation.status !== 'active')
206
+ return false;
207
+ if (Date.now() >= new Date(escalation.expiresAt).getTime())
208
+ return false;
209
+ return true;
210
+ }
211
+ //# sourceMappingURL=escalation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"escalation.js","sourceRoot":"","sources":["../../../src/core/escalation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"execution-envelope.d.ts","sourceRoot":"","sources":["../../../src/core/execution-envelope.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AACrF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EACV,iBAAiB,EAAE,oBAAoB,EACvC,gBAAgB,EAAE,gBAAgB,EACnC,MAAM,gCAAgC,CAAA;AAEvC;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAC5C,MAAM,EAAE,YAAY,CAAA;IACpB,QAAQ,EAAE,cAAc,CAAA;IACxB,OAAO,EAAE,aAAa,CAAA;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,4CAA4C;IAC5C,QAAQ,EAAE,MAAM,CAAA;IAChB,sBAAsB;IACtB,YAAY,EAAE,MAAM,CAAA;IACpB,uDAAuD;IACvD,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,6BAA6B;IAC7B,UAAU,EAAE,MAAM,CAAA;IAClB,0CAA0C;IAC1C,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,oDAAoD;IACpD,gBAAgB,EAAE,MAAM,CAAA;IACxB,0BAA0B;IAC1B,eAAe,EAAE,MAAM,CAAA;CACxB,GAAG,iBAAiB,CAwEpB;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,CAAC,EAAE;IACL,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,6DAA6D;IAC7D,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B,GACA,oBAAoB,CA+CtB;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,OAAO,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAA;IAC/C,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,EAAE,MAAM,CAAA;IACxB,eAAe,EAAE,MAAM,CAAA;CACxB,GAAG,iBAAiB,CAyCpB"}
1
+ {"version":3,"file":"execution-envelope.d.ts","sourceRoot":"","sources":["../../../src/core/execution-envelope.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AACrF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EACV,iBAAiB,EAAE,oBAAoB,EACvC,gBAAgB,EAAE,gBAAgB,EACnC,MAAM,gCAAgC,CAAA;AAEvC;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAC5C,MAAM,EAAE,YAAY,CAAA;IACpB,QAAQ,EAAE,cAAc,CAAA;IACxB,OAAO,EAAE,aAAa,CAAA;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,4CAA4C;IAC5C,QAAQ,EAAE,MAAM,CAAA;IAChB,sBAAsB;IACtB,YAAY,EAAE,MAAM,CAAA;IACpB,uDAAuD;IACvD,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,6BAA6B;IAC7B,UAAU,EAAE,MAAM,CAAA;IAClB,0CAA0C;IAC1C,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,oDAAoD;IACpD,gBAAgB,EAAE,MAAM,CAAA;IACxB,0BAA0B;IAC1B,eAAe,EAAE,MAAM,CAAA;CACxB,GAAG,iBAAiB,CAwEpB;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,CAAC,EAAE;IACL,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,6DAA6D;IAC7D,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B,GACA,oBAAoB,CAkDtB;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,OAAO,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAA;IAC/C,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,EAAE,MAAM,CAAA;IACxB,eAAe,EAAE,MAAM,CAAA;CACxB,GAAG,iBAAiB,CAyCpB"}
@@ -120,11 +120,14 @@ export function verifyExecutionEnvelope(envelope, opts) {
120
120
  // If evaluator public key provided, verify the evaluator signature
121
121
  // against the decision hash (engine-specific verification)
122
122
  if (opts?.evaluatorPublicKey && envelope.decision.evaluator_signature) {
123
- // The evaluator signed the decision object. We verify against the hash.
124
- // Note: full decision verification requires the original decision object,
125
- // which the envelope doesn't carry. The hash is for integrity, the
126
- // evaluator_signature is for authenticity.
127
- evaluatorSignatureValid = true; // signature present, key available
123
+ // V5-MED-5: The envelope carries only the decision HASH, not the full decision object.
124
+ // Full decision signature verification requires the original PolicyDecision to reconstruct
125
+ // the canonical form. The envelope provides integrity (hash) and the evaluator_signature
126
+ // field for authenticity — but we cannot verify authenticity here without the source object.
127
+ // Consumers who need full evaluator verification should verify the PolicyDecision directly
128
+ // before envelope creation. The 3-signature chain (intent→decision→receipt) provides
129
+ // end-to-end verification when all three objects are available.
130
+ evaluatorSignatureValid = true; // presence check only — see note above
128
131
  }
129
132
  return {
130
133
  valid: errors.length === 0,
@@ -1 +1 @@
1
- {"version":3,"file":"execution-envelope.js","sourceRoot":"","sources":["../../../src/core/execution-envelope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution-envelope.js","sourceRoot":"","sources":["../../../src/core/execution-envelope.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import type { Delegation } from '../types/passport.js';
2
+ import type { TaskRoleSpec } from '../types/coordination.js';
3
+ import type { FeasibilityResult } from '../types/feasibility.js';
4
+ /**
5
+ * Lint a delegation for obvious problems BEFORE signing.
6
+ * Call this at delegation-creation time to catch bad inputs early.
7
+ */
8
+ export declare function lintDelegation(opts: {
9
+ delegatedTo: string;
10
+ delegatedBy: string;
11
+ scope: string[];
12
+ spendLimit?: number;
13
+ maxDepth?: number;
14
+ currentDepth?: number;
15
+ expiresInHours?: number;
16
+ }): FeasibilityResult;
17
+ /**
18
+ * Check if a delegation can feasibly complete a task role.
19
+ * Call at task-assignment time to catch mismatches early.
20
+ */
21
+ export declare function lintTaskFeasibility(opts: {
22
+ delegation: Delegation;
23
+ role: TaskRoleSpec;
24
+ taskDeadline?: string;
25
+ }): FeasibilityResult;
26
+ //# sourceMappingURL=feasibility.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feasibility.d.ts","sourceRoot":"","sources":["../../../src/core/feasibility.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAa,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvE,OAAO,KAAK,EAAoB,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAkBlF;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE;IACnC,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,GAAG,iBAAiB,CAgHpB;AAMD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,UAAU,EAAE,UAAU,CAAA;IACtB,IAAI,EAAE,YAAY,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,GAAG,iBAAiB,CA8EpB"}