agent-passport-system 1.10.0 → 1.10.2

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,12 +2,12 @@
2
2
 
3
3
  [![npm version](https://img.shields.io/npm/v/agent-passport-system)](https://www.npmjs.com/package/agent-passport-system)
4
4
  [![license](https://img.shields.io/npm/l/agent-passport-system)](https://github.com/aeoess/agent-passport-system/blob/main/LICENSE)
5
- [![tests](https://img.shields.io/badge/tests-264%20passing-brightgreen)](https://github.com/aeoess/agent-passport-system)
5
+ [![tests](https://img.shields.io/badge/tests-329%20passing-brightgreen)](https://github.com/aeoess/agent-passport-system)
6
6
  [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.18749779.svg)](https://doi.org/10.5281/zenodo.18749779)
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
- **8 layers. 276 tests. Zero heavy dependencies. Running code. MCP server included.**
10
+ **8 layers. 329 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
 
@@ -374,7 +374,7 @@ The protocol ships with a coordination-native MCP server — any MCP client (Cla
374
374
  npm install agent-passport-system-mcp
375
375
  ```
376
376
 
377
- **38 tools across all 8 layers, role-scoped access control.** Identity, delegation, agora, values/policy, coordination, and commerce — all accessible via MCP. Every operation Ed25519 signed.
377
+ **44 tools across all 8 layers, role-scoped access control.** Identity, delegation, agora, values/policy, coordination, and commerce — all accessible via MCP. Every operation Ed25519 signed.
378
378
 
379
379
  ```json
380
380
  {
@@ -396,11 +396,23 @@ Every operation is Ed25519 signed. Role is auto-detected from task assignments.
396
396
 
397
397
  npm: [agent-passport-system-mcp](https://www.npmjs.com/package/agent-passport-system-mcp) · GitHub: [aeoess/agent-passport-mcp](https://github.com/aeoess/agent-passport-mcp)
398
398
 
399
+ ## Python SDK
400
+
401
+ Full Python implementation with cross-language compatibility. Signatures created in Python verify in TypeScript and vice versa.
402
+
403
+ ```bash
404
+ pip install agent-passport-system
405
+ ```
406
+
407
+ All 8 protocol layers + Principal Identity. 86 tests. Same canonical JSON serialization and Ed25519 signatures.
408
+
409
+ PyPI: [agent-passport-system](https://pypi.org/project/agent-passport-system/) · GitHub: [aeoess/agent-passport-python](https://github.com/aeoess/agent-passport-python)
410
+
399
411
  ## Tests
400
412
 
401
413
  ```bash
402
414
  npm test
403
- # 276 tests across 15 files, 73 suites, 0 failures
415
+ # 329 tests across 22 files, 91 suites, 0 failures
404
416
  ```
405
417
 
406
418
  Includes 23 adversarial tests: Merkle tree tampering, attribution gaming resistance, compliance violations, floor negotiation attacks, wrong-key attestations.
@@ -432,7 +444,7 @@ By Tymofii Pidlisnyi — Published on Zenodo
432
444
  | Communication | Signed Agora | — | — | — | — |
433
445
  | Coordination | Task units + MCP server | — | — | — | — |
434
446
  | Commerce | ACP + 4-gate enforcement | — | — | — | — |
435
- | Tests | 214 (38 adversarial) | None | Limited | None | None |
447
+ | Tests | 329 (23 adversarial) | None | Limited | None | None |
436
448
  | Dependencies | Node.js crypto + uuid | — | Multi-LLM | — | Consensus network |
437
449
 
438
450
  ## Structure
@@ -461,7 +473,7 @@ src/ 22 source files
461
473
  policy.ts — Layer 6 types
462
474
  coordination.ts — Layer 7 types
463
475
  commerce.ts — Layer 8 types
464
- tests/ 17 test files, 276 tests (73 suites)
476
+ tests/ 22 test files, 329 tests (91 suites)
465
477
  adversarial.ts — 23 adversarial cases
466
478
  agora.test.ts — 15 Agora tests
467
479
  contract.test.ts — High-level API tests
@@ -0,0 +1,108 @@
1
+ import type { KeyPair, SignedPassport } from '../types/passport.js';
2
+ import type { PrincipalIdentity, PrincipalEndorsement, PrincipalDisclosure, FleetRecord, FleetAgent, EndorsementVerification, DisclosureLevel } from '../types/principal.js';
3
+ /**
4
+ * Create a new principal identity with its own Ed25519 keypair.
5
+ * The principal is the human or org behind the agent.
6
+ */
7
+ export declare function createPrincipalIdentity(options: {
8
+ displayName: string;
9
+ domain?: string;
10
+ jurisdiction?: string;
11
+ contactChannel?: string;
12
+ disclosureLevel?: DisclosureLevel;
13
+ metadata?: Record<string, unknown>;
14
+ }): {
15
+ principal: PrincipalIdentity;
16
+ keyPair: KeyPair;
17
+ };
18
+ /**
19
+ * Endorse an agent. The principal signs a commitment:
20
+ * "This agent acts under my authority within this scope."
21
+ * Creates a two-layer trust chain: principal → agent.
22
+ */
23
+ export declare function endorseAgent(options: {
24
+ principal: PrincipalIdentity;
25
+ principalPrivateKey: string;
26
+ agentId: string;
27
+ agentPublicKey: string;
28
+ scope: string[];
29
+ relationship: PrincipalEndorsement['relationship'];
30
+ expiresInDays?: number;
31
+ }): PrincipalEndorsement;
32
+ /**
33
+ * Verify an endorsement's cryptographic signature.
34
+ */
35
+ export declare function verifyEndorsement(endorsement: PrincipalEndorsement): EndorsementVerification;
36
+ /**
37
+ * Revoke a principal's endorsement of an agent.
38
+ * "I no longer authorize this agent."
39
+ */
40
+ export declare function revokeEndorsement(endorsement: PrincipalEndorsement, reason: string): PrincipalEndorsement;
41
+ /**
42
+ * Create a selective disclosure of principal identity.
43
+ * Controls how much information is revealed.
44
+ *
45
+ * - minimal: just a hash of principalId + proof (verifiable but anonymous)
46
+ * - verified-only: principalId + publicKey + domain
47
+ * - public: everything
48
+ */
49
+ export declare function createDisclosure(principal: PrincipalIdentity, principalPrivateKey: string, level?: DisclosureLevel): PrincipalDisclosure;
50
+ /**
51
+ * Verify a selective disclosure's proof.
52
+ * For minimal disclosures, you can verify the proof without knowing the identity.
53
+ */
54
+ export declare function verifyDisclosure(disclosure: PrincipalDisclosure): {
55
+ valid: boolean;
56
+ level: DisclosureLevel;
57
+ error?: string;
58
+ };
59
+ /**
60
+ * Create a fleet record for a principal.
61
+ * A fleet tracks all agents endorsed by one principal.
62
+ */
63
+ export declare function createFleet(principal: PrincipalIdentity): FleetRecord;
64
+ /**
65
+ * Add an endorsed agent to the fleet.
66
+ */
67
+ export declare function addToFleet(fleet: FleetRecord, endorsement: PrincipalEndorsement): FleetRecord;
68
+ /**
69
+ * Get fleet status summary.
70
+ */
71
+ export declare function getFleetStatus(fleet: FleetRecord): {
72
+ principalId: string;
73
+ totalAgents: number;
74
+ activeAgents: number;
75
+ revokedAgents: number;
76
+ expiredAgents: number;
77
+ agents: FleetAgent[];
78
+ };
79
+ /**
80
+ * Revoke an agent from the fleet (updates status).
81
+ */
82
+ export declare function revokeFromFleet(fleet: FleetRecord, agentId: string): FleetRecord;
83
+ /**
84
+ * Endorse a signed passport. The principal signs the agent's passport,
85
+ * creating a verifiable chain: principal → agent.
86
+ * Returns the endorsement + the passport with principal info in metadata.
87
+ */
88
+ export declare function endorsePassport(options: {
89
+ principal: PrincipalIdentity;
90
+ principalPrivateKey: string;
91
+ signedPassport: SignedPassport;
92
+ scope: string[];
93
+ relationship: PrincipalEndorsement['relationship'];
94
+ expiresInDays?: number;
95
+ }): {
96
+ endorsement: PrincipalEndorsement;
97
+ endorsedPassport: SignedPassport;
98
+ };
99
+ /**
100
+ * Verify that a passport's principal endorsement is valid.
101
+ * Checks the endorsement signature embedded in passport metadata.
102
+ */
103
+ export declare function verifyPassportEndorsement(signedPassport: SignedPassport): EndorsementVerification;
104
+ /**
105
+ * Check if a passport has a principal endorsement.
106
+ */
107
+ export declare function hasPrincipalEndorsement(signedPassport: SignedPassport): boolean;
108
+ //# sourceMappingURL=principal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"principal.d.ts","sourceRoot":"","sources":["../../../src/core/principal.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,323 @@
1
+ // Agent Passport System — Principal Identity
2
+ // Cryptographic chain from human principal to agent.
3
+ // The principal has their own Ed25519 keypair and endorses agents.
4
+ import { v4 as uuidv4 } from 'uuid';
5
+ import { generateKeyPair, sign, verify } from '../crypto/keys.js';
6
+ import { canonicalize } from './canonical.js';
7
+ import { createDID } from './did.js';
8
+ // ── Principal Creation ──
9
+ /**
10
+ * Create a new principal identity with its own Ed25519 keypair.
11
+ * The principal is the human or org behind the agent.
12
+ */
13
+ export function createPrincipalIdentity(options) {
14
+ const keyPair = generateKeyPair();
15
+ const principal = {
16
+ principalId: `principal-${uuidv4().slice(0, 8)}`,
17
+ displayName: options.displayName,
18
+ publicKey: keyPair.publicKey,
19
+ domain: options.domain,
20
+ jurisdiction: options.jurisdiction,
21
+ contactChannel: options.contactChannel,
22
+ disclosureLevel: options.disclosureLevel || 'public',
23
+ createdAt: new Date().toISOString(),
24
+ metadata: options.metadata || {}
25
+ };
26
+ return { principal, keyPair };
27
+ }
28
+ // ── Endorsement ──
29
+ /**
30
+ * Endorse an agent. The principal signs a commitment:
31
+ * "This agent acts under my authority within this scope."
32
+ * Creates a two-layer trust chain: principal → agent.
33
+ */
34
+ export function endorseAgent(options) {
35
+ const now = new Date();
36
+ const expiry = new Date(now);
37
+ expiry.setDate(expiry.getDate() + (options.expiresInDays || 365));
38
+ const endorsementId = `endorsement-${uuidv4().slice(0, 8)}`;
39
+ const payload = {
40
+ endorsementId,
41
+ principalId: options.principal.principalId,
42
+ principalPublicKey: options.principal.publicKey,
43
+ agentId: options.agentId,
44
+ agentPublicKey: options.agentPublicKey,
45
+ scope: options.scope,
46
+ relationship: options.relationship,
47
+ endorsedAt: now.toISOString(),
48
+ expiresAt: expiry.toISOString()
49
+ };
50
+ const canonical = canonicalize(payload);
51
+ const signature = sign(canonical, options.principalPrivateKey);
52
+ return {
53
+ ...payload,
54
+ revoked: false,
55
+ signature
56
+ };
57
+ }
58
+ /**
59
+ * Verify an endorsement's cryptographic signature.
60
+ */
61
+ export function verifyEndorsement(endorsement) {
62
+ const errors = [];
63
+ const expired = new Date(endorsement.expiresAt) < new Date();
64
+ if (expired)
65
+ errors.push('Endorsement has expired');
66
+ if (endorsement.revoked)
67
+ errors.push('Endorsement has been revoked');
68
+ // Reconstruct the signed payload (everything except revoked/revokedAt/revokedReason/signature)
69
+ const payload = {
70
+ endorsementId: endorsement.endorsementId,
71
+ principalId: endorsement.principalId,
72
+ principalPublicKey: endorsement.principalPublicKey,
73
+ agentId: endorsement.agentId,
74
+ agentPublicKey: endorsement.agentPublicKey,
75
+ scope: endorsement.scope,
76
+ relationship: endorsement.relationship,
77
+ endorsedAt: endorsement.endorsedAt,
78
+ expiresAt: endorsement.expiresAt
79
+ };
80
+ const canonical = canonicalize(payload);
81
+ const sigValid = verify(canonical, endorsement.signature, endorsement.principalPublicKey);
82
+ if (!sigValid)
83
+ errors.push('Invalid signature');
84
+ return {
85
+ valid: sigValid && !expired && !endorsement.revoked,
86
+ expired,
87
+ revoked: endorsement.revoked,
88
+ principalId: endorsement.principalId,
89
+ agentId: endorsement.agentId,
90
+ errors
91
+ };
92
+ }
93
+ /**
94
+ * Revoke a principal's endorsement of an agent.
95
+ * "I no longer authorize this agent."
96
+ */
97
+ export function revokeEndorsement(endorsement, reason) {
98
+ return {
99
+ ...endorsement,
100
+ revoked: true,
101
+ revokedAt: new Date().toISOString(),
102
+ revokedReason: reason
103
+ };
104
+ }
105
+ // ── Selective Disclosure ──
106
+ /**
107
+ * Create a selective disclosure of principal identity.
108
+ * Controls how much information is revealed.
109
+ *
110
+ * - minimal: just a hash of principalId + proof (verifiable but anonymous)
111
+ * - verified-only: principalId + publicKey + domain
112
+ * - public: everything
113
+ */
114
+ export function createDisclosure(principal, principalPrivateKey, level) {
115
+ const effectiveLevel = level || principal.disclosureLevel;
116
+ let revealedFields;
117
+ switch (effectiveLevel) {
118
+ case 'minimal': {
119
+ // Hash the principalId so it's verifiable but not directly identifying
120
+ const idHash = simpleHash(principal.principalId);
121
+ revealedFields = { idHash, did: createDID(principal.publicKey) };
122
+ break;
123
+ }
124
+ case 'verified-only':
125
+ revealedFields = {
126
+ principalId: principal.principalId,
127
+ publicKey: principal.publicKey,
128
+ did: createDID(principal.publicKey),
129
+ domain: principal.domain
130
+ };
131
+ break;
132
+ case 'public':
133
+ default:
134
+ revealedFields = {
135
+ principalId: principal.principalId,
136
+ displayName: principal.displayName,
137
+ publicKey: principal.publicKey,
138
+ did: createDID(principal.publicKey),
139
+ domain: principal.domain,
140
+ jurisdiction: principal.jurisdiction,
141
+ contactChannel: principal.contactChannel
142
+ };
143
+ break;
144
+ }
145
+ const canonical = canonicalize(revealedFields);
146
+ const proof = sign(canonical, principalPrivateKey);
147
+ return {
148
+ disclosureId: `disclosure-${uuidv4().slice(0, 8)}`,
149
+ principalId: principal.principalId,
150
+ level: effectiveLevel,
151
+ revealedFields,
152
+ proof,
153
+ createdAt: new Date().toISOString()
154
+ };
155
+ }
156
+ /**
157
+ * Verify a selective disclosure's proof.
158
+ * For minimal disclosures, you can verify the proof without knowing the identity.
159
+ */
160
+ export function verifyDisclosure(disclosure) {
161
+ try {
162
+ // For minimal, we need the DID to extract the public key
163
+ const did = disclosure.revealedFields.did;
164
+ if (!did)
165
+ return { valid: false, level: disclosure.level, error: 'No DID in disclosure' };
166
+ const publicKey = did.split(':')[2];
167
+ if (!publicKey)
168
+ return { valid: false, level: disclosure.level, error: 'Invalid DID format' };
169
+ const canonical = canonicalize(disclosure.revealedFields);
170
+ const sigValid = verify(canonical, disclosure.proof, publicKey);
171
+ return { valid: sigValid, level: disclosure.level, error: sigValid ? undefined : 'Invalid proof' };
172
+ }
173
+ catch (err) {
174
+ return { valid: false, level: disclosure.level, error: String(err) };
175
+ }
176
+ }
177
+ // ── Fleet Management ──
178
+ /**
179
+ * Create a fleet record for a principal.
180
+ * A fleet tracks all agents endorsed by one principal.
181
+ */
182
+ export function createFleet(principal) {
183
+ return {
184
+ principalId: principal.principalId,
185
+ principalPublicKey: principal.publicKey,
186
+ agents: [],
187
+ createdAt: new Date().toISOString(),
188
+ updatedAt: new Date().toISOString()
189
+ };
190
+ }
191
+ /**
192
+ * Add an endorsed agent to the fleet.
193
+ */
194
+ export function addToFleet(fleet, endorsement) {
195
+ const agent = {
196
+ agentId: endorsement.agentId,
197
+ agentPublicKey: endorsement.agentPublicKey,
198
+ endorsementId: endorsement.endorsementId,
199
+ relationship: endorsement.relationship,
200
+ status: endorsement.revoked ? 'revoked' :
201
+ new Date(endorsement.expiresAt) < new Date() ? 'expired' : 'active',
202
+ endorsedAt: endorsement.endorsedAt
203
+ };
204
+ return {
205
+ ...fleet,
206
+ agents: [...fleet.agents, agent],
207
+ updatedAt: new Date().toISOString()
208
+ };
209
+ }
210
+ /**
211
+ * Get fleet status summary.
212
+ */
213
+ export function getFleetStatus(fleet) {
214
+ const active = fleet.agents.filter(a => a.status === 'active');
215
+ const revoked = fleet.agents.filter(a => a.status === 'revoked');
216
+ const expired = fleet.agents.filter(a => a.status === 'expired');
217
+ return {
218
+ principalId: fleet.principalId,
219
+ totalAgents: fleet.agents.length,
220
+ activeAgents: active.length,
221
+ revokedAgents: revoked.length,
222
+ expiredAgents: expired.length,
223
+ agents: fleet.agents
224
+ };
225
+ }
226
+ /**
227
+ * Revoke an agent from the fleet (updates status).
228
+ */
229
+ export function revokeFromFleet(fleet, agentId) {
230
+ return {
231
+ ...fleet,
232
+ agents: fleet.agents.map(a => a.agentId === agentId ? { ...a, status: 'revoked' } : a),
233
+ updatedAt: new Date().toISOString()
234
+ };
235
+ }
236
+ // ── Passport Endorsement ──
237
+ /**
238
+ * Endorse a signed passport. The principal signs the agent's passport,
239
+ * creating a verifiable chain: principal → agent.
240
+ * Returns the endorsement + the passport with principal info in metadata.
241
+ */
242
+ export function endorsePassport(options) {
243
+ const { principal, signedPassport } = options;
244
+ const passport = signedPassport.passport;
245
+ // Create the endorsement
246
+ const endorsement = endorseAgent({
247
+ principal,
248
+ principalPrivateKey: options.principalPrivateKey,
249
+ agentId: passport.agentId,
250
+ agentPublicKey: passport.publicKey,
251
+ scope: options.scope,
252
+ relationship: options.relationship,
253
+ expiresInDays: options.expiresInDays
254
+ });
255
+ // Attach principal identity to passport metadata
256
+ const endorsedPassport = {
257
+ ...signedPassport,
258
+ passport: {
259
+ ...passport,
260
+ metadata: {
261
+ ...passport.metadata,
262
+ principalEndorsement: {
263
+ endorsementId: endorsement.endorsementId,
264
+ principalId: principal.principalId,
265
+ principalDID: createDID(principal.publicKey),
266
+ principalPublicKey: principal.publicKey,
267
+ relationship: endorsement.relationship,
268
+ scope: endorsement.scope,
269
+ signature: endorsement.signature
270
+ }
271
+ }
272
+ }
273
+ };
274
+ return { endorsement, endorsedPassport };
275
+ }
276
+ /**
277
+ * Verify that a passport's principal endorsement is valid.
278
+ * Checks the endorsement signature embedded in passport metadata.
279
+ */
280
+ export function verifyPassportEndorsement(signedPassport) {
281
+ const meta = signedPassport.passport.metadata?.principalEndorsement;
282
+ if (!meta) {
283
+ return {
284
+ valid: false, expired: false, revoked: false,
285
+ principalId: '', agentId: signedPassport.passport.agentId,
286
+ errors: ['No principal endorsement found in passport metadata']
287
+ };
288
+ }
289
+ // Reconstruct the endorsement and verify
290
+ const endorsement = {
291
+ endorsementId: meta.endorsementId,
292
+ principalId: meta.principalId,
293
+ principalPublicKey: meta.principalPublicKey,
294
+ agentId: signedPassport.passport.agentId,
295
+ agentPublicKey: signedPassport.passport.publicKey,
296
+ scope: meta.scope,
297
+ relationship: meta.relationship,
298
+ endorsedAt: signedPassport.signedAt,
299
+ expiresAt: signedPassport.passport.expiresAt,
300
+ revoked: false,
301
+ signature: meta.signature
302
+ };
303
+ return verifyEndorsement(endorsement);
304
+ }
305
+ /**
306
+ * Check if a passport has a principal endorsement.
307
+ */
308
+ export function hasPrincipalEndorsement(signedPassport) {
309
+ return !!signedPassport.passport.metadata?.principalEndorsement;
310
+ }
311
+ // ── Helpers ──
312
+ function simpleHash(input) {
313
+ // Simple deterministic hash for disclosure ID hashing
314
+ // Not crypto-grade, just for creating non-reversible identifiers
315
+ let hash = 0;
316
+ for (let i = 0; i < input.length; i++) {
317
+ const char = input.charCodeAt(i);
318
+ hash = ((hash << 5) - hash) + char;
319
+ hash = hash & hash; // Convert to 32-bit integer
320
+ }
321
+ return Math.abs(hash).toString(16).padStart(8, '0');
322
+ }
323
+ //# sourceMappingURL=principal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"principal.js","sourceRoot":"","sources":["../../../src/core/principal.ts"],"names":[],"mappings":"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"}
@@ -35,4 +35,6 @@ export { passportToAgentCard, verifyAgentCard, agentCardToCapabilities, hasPassp
35
35
  export type { A2AAgentCard, A2AAgentSkill, A2AAgentProvider, A2ACapabilities, A2ASecurityScheme } from './types/a2a.js';
36
36
  export { classifyRisk, mapArticles, generateTransparencyDisclosure, generateComplianceProfile, identifyGaps, generateComplianceReport } from './core/euaiact.js';
37
37
  export type { RiskCategory, EUAIActArticle, ComplianceProfile, TransparencyDisclosure, EUComplianceReport, EUComplianceGap } from './types/euaiact.js';
38
+ export { createPrincipalIdentity, endorseAgent, verifyEndorsement, revokeEndorsement, createDisclosure, verifyDisclosure, createFleet, addToFleet, getFleetStatus, revokeFromFleet, endorsePassport, verifyPassportEndorsement, hasPrincipalEndorsement } from './core/principal.js';
39
+ export type { PrincipalIdentity, PrincipalEndorsement, PrincipalDisclosure, FleetRecord, FleetAgent, EndorsementVerification, DisclosureLevel } from './types/principal.js';
38
40
  //# sourceMappingURL=index.d.ts.map
@@ -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":"AAcA,OAAO,EACL,kBAAkB,EAAE,oBAAoB,EACxC,QAAQ,EAAE,UAAU,EACpB,kBAAkB,EAAE,eAAe,EACpC,MAAM,eAAe,CAAA;AAEtB,YAAY,EACV,WAAW,EAAE,mBAAmB,EAAE,iBAAiB,EACnD,eAAe,EAAE,WAAW,EAAE,iBAAiB,EAChD,MAAM,eAAe,CAAA;AAGtB,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACtF,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC3F,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AAI1F,OAAO,EACL,gBAAgB,EAAE,WAAW,EAAE,gBAAgB,EAC/C,gBAAgB,EAAE,gBAAgB,EAClC,aAAa,EAAE,aAAa,EAAE,aAAa,EAC3C,cAAc,EAAE,aAAa,EAAE,YAAY,EAC3C,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,aAAa,EAAE,WAAW,EACvC,WAAW,EAAE,eAAe,EAC7B,MAAM,sBAAsB,CAAA;AAG7B,OAAO,EACL,SAAS,EAAE,iBAAiB,EAC5B,WAAW,EAAE,iBAAiB,EAC9B,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EAAE,wBAAwB,EACjD,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAA;AAGlE,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAAE,uBAAuB,EAC3C,eAAe,EAAE,mBAAmB,EAAE,iBAAiB,EACvD,+BAA+B,EAC/B,qBAAqB,EACtB,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EACL,kBAAkB,EAAE,kBAAkB,EACtC,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EACvE,cAAc,EAAE,aAAa,EAAE,UAAU,EAC1C,MAAM,iBAAiB,CAAA;AAGxB,YAAY,EAEV,aAAa,EAAE,cAAc,EAAE,OAAO,EAAE,kBAAkB,EAC1D,SAAS,EAAE,iBAAiB,EAAE,eAAe,EAAE,eAAe,EAC9D,UAAU,EAAE,WAAW,EAAE,qBAAqB,EAC9C,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAEjD,uBAAuB,EAAE,yBAAyB,EAClD,mBAAmB,EAAE,eAAe,EAEpC,WAAW,EAAE,cAAc,EAAE,gBAAgB,EAC7C,eAAe,EAAE,gBAAgB,EAAE,YAAY,EAAE,cAAc,EAE/D,eAAe,EAEf,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAChD,gBAAgB,EAAE,iBAAiB,EACnC,WAAW,EAAE,eAAe,EAC7B,MAAM,qBAAqB,CAAA;AAE5B,YAAY,EAEV,YAAY,EAAE,mBAAmB,EAAE,iBAAiB,EACpD,SAAS,EAAE,UAAU,EAAE,aAAa,EACrC,MAAM,kBAAkB,CAAA;AAGzB,YAAY,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAGrE,OAAO,EACL,UAAU,EACV,kBAAkB,EAAE,gBAAgB,EACpC,oBAAoB,EACpB,kBAAkB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,mBAAmB,EAChF,oBAAoB,EAAE,aAAa,EACnC,6BAA6B,GAC9B,MAAM,kBAAkB,CAAA;AAEzB,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAE/E,YAAY,EAEV,SAAS,EAAE,aAAa,EAAE,cAAc,EACxC,cAAc,EAAE,UAAU,EAAE,YAAY,EACxC,cAAc,EAAE,YAAY,EAAE,mBAAmB,EACjD,gBAAgB,EAAE,SAAS,EAC3B,UAAU,EAAE,iBAAiB,EAC7B,uBAAuB,GACxB,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EACL,eAAe,EAAE,eAAe,EAChC,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,YAAY,EAC5B,eAAe,EAAE,aAAa,EAC9B,iBAAiB,EAAE,iBAAiB,EACpC,YAAY,EAAE,gBAAgB,EAC9B,cAAc,EAAE,aAAa,EAAE,gBAAgB,GAChD,MAAM,wBAAwB,CAAA;AAE/B,YAAY,EACV,gBAAgB,EAAE,UAAU,EAAE,aAAa,EAC3C,SAAS,EAAE,YAAY,EAAE,eAAe,EACxC,cAAc,EAAE,cAAc,EAAE,aAAa,EAC7C,cAAc,EAAE,WAAW,EAC3B,eAAe,EAAE,WAAW,EAC5B,cAAc,EAAE,WAAW,EAAE,QAAQ,GACtC,MAAM,yBAAyB,CAAA;AAGhC,OAAO,EACL,kBAAkB,EAAE,kBAAkB,EACtC,cAAc,EAAE,oBAAoB,EACpC,mBAAmB,EAAE,mBAAmB,EACxC,gBAAgB,EAChB,aAAa,GACd,MAAM,kBAAkB,CAAA;AAEzB,YAAY,EACV,YAAY,EAAE,cAAc,EAAE,aAAa,EAC3C,aAAa,EAAE,mBAAmB,EAClC,eAAe,EAAE,iBAAiB,EAAE,sBAAsB,GAC3D,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EACL,iBAAiB,EACjB,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,cAAc,EAChE,oBAAoB,EACpB,wBAAwB,EACxB,eAAe,EACf,qBAAqB,GACtB,MAAM,oBAAoB,CAAA;AAE3B,YAAY,EACV,kBAAkB,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EACpD,cAAc,EAAE,oBAAoB,EAAE,gBAAgB,EACtD,WAAW,EAAE,UAAU,EAAE,aAAa,EACtC,cAAc,EAAE,kBAAkB,EAClC,uBAAuB,EAAE,sBAAsB,EAC/C,qBAAqB,EAAE,oBAAoB,GAC5C,MAAM,qBAAqB,CAAA;AAG5B,OAAO,EACL,kBAAkB,EAClB,8BAA8B,EAC9B,0BAA0B,EAC1B,mBAAmB,EACnB,eAAe,EACf,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,uBAAuB,CAAA;AAE9B,YAAY,EACV,oBAAoB,EACpB,0BAA0B,EAC1B,qBAAqB,GACtB,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAEpE,YAAY,EACV,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EAAE,aAAa,EAC7B,eAAe,EACf,iBAAiB,EAAE,UAAU,GAC9B,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EACL,iBAAiB,EAAE,iBAAiB,EACpC,qBAAqB,EAAE,mBAAmB,EAC1C,SAAS,EAAE,WAAW,EACtB,WAAW,EAAE,aAAa,EAC1B,SAAS,EAAE,qBAAqB,EAChC,cAAc,EACd,iBAAiB,EAAE,kBAAkB,EACrC,oBAAoB,EAAE,oBAAoB,EAC1C,qBAAqB,EAAE,qBAAqB,EAAE,uBAAuB,GACtE,MAAM,mBAAmB,CAAA;AAE1B,YAAY,EACV,WAAW,EAAE,iBAAiB,EAAE,mBAAmB,EACnD,uBAAuB,EAAE,gBAAgB,EACzC,aAAa,EAAE,WAAW,EAAE,eAAe,EAC3C,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EACzD,gBAAgB,GACjB,MAAM,oBAAoB,CAAA;AAI3B,OAAO,EACL,SAAS,EAAE,gBAAgB,EAAE,UAAU,EACvC,qBAAqB,EAAE,UAAU,EACjC,WAAW,EAAE,aAAa,EAC1B,cAAc,EAAE,cAAc,EAC/B,MAAM,eAAe,CAAA;AAEtB,OAAO,EACL,YAAY,EAAE,cAAc,EAC5B,oBAAoB,EAAE,WAAW,EACjC,kBAAkB,EAClB,QAAQ,EAAE,kBAAkB,EAC7B,MAAM,cAAc,CAAA;AAErB,YAAY,EACV,WAAW,EAAE,kBAAkB,EAAE,eAAe,EAChD,mBAAmB,EACnB,oBAAoB,EAAE,sBAAsB,EAAE,eAAe,EAC7D,yBAAyB,EAAE,2BAA2B,EACtD,iCAAiC,EAAE,8BAA8B,EAClE,MAAM,gBAAgB,CAAA;AAIvB,OAAO,EACL,mBAAmB,EAAE,eAAe,EACpC,uBAAuB,EAAE,mBAAmB,EAC5C,mBAAmB,EACpB,MAAM,eAAe,CAAA;AAEtB,YAAY,EACV,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAC7C,eAAe,EAAE,iBAAiB,EACnC,MAAM,gBAAgB,CAAA;AAIvB,OAAO,EACL,YAAY,EAAE,WAAW,EAAE,8BAA8B,EACzD,yBAAyB,EAAE,YAAY,EAAE,wBAAwB,EAClE,MAAM,mBAAmB,CAAA;AAE1B,YAAY,EACV,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAC/C,sBAAsB,EAAE,kBAAkB,EAAE,eAAe,EAC5D,MAAM,oBAAoB,CAAA;AAI3B,OAAO,EACL,uBAAuB,EAAE,YAAY,EAAE,iBAAiB,EACxD,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EACrD,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EACxD,eAAe,EAAE,yBAAyB,EAAE,uBAAuB,EACpE,MAAM,qBAAqB,CAAA;AAE5B,YAAY,EACV,iBAAiB,EAAE,oBAAoB,EAAE,mBAAmB,EAC5D,WAAW,EAAE,UAAU,EAAE,uBAAuB,EAAE,eAAe,EAClE,MAAM,sBAAsB,CAAA"}
package/dist/src/index.js CHANGED
@@ -49,4 +49,6 @@ export { passportToVC, delegationToVC, floorAttestationToVC, receiptToVC, create
49
49
  export { passportToAgentCard, verifyAgentCard, agentCardToCapabilities, hasPassportIdentity, getDIDFromAgentCard } from './core/a2a.js';
50
50
  // ── EU AI Act Compliance ──
51
51
  export { classifyRisk, mapArticles, generateTransparencyDisclosure, generateComplianceProfile, identifyGaps, generateComplianceReport } from './core/euaiact.js';
52
+ // ── Principal Identity ──
53
+ export { createPrincipalIdentity, endorseAgent, verifyEndorsement, revokeEndorsement, createDisclosure, verifyDisclosure, createFleet, addToFleet, getFleetStatus, revokeFromFleet, endorsePassport, verifyPassportEndorsement, hasPrincipalEndorsement } from './core/principal.js';
52
54
  //# sourceMappingURL=index.js.map
@@ -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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"}
@@ -6,4 +6,5 @@ export * from './routing.js';
6
6
  export * from './did.js';
7
7
  export * from './a2a.js';
8
8
  export * from './euaiact.js';
9
+ export * from './principal.js';
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAE5B,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAE5B,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA"}
@@ -6,4 +6,5 @@ export * from './routing.js';
6
6
  export * from './did.js';
7
7
  export * from './a2a.js';
8
8
  export * from './euaiact.js';
9
+ export * from './principal.js';
9
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAE5B,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAE5B,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA"}
@@ -0,0 +1,79 @@
1
+ export type DisclosureLevel = 'public' | 'verified-only' | 'minimal';
2
+ /**
3
+ * A Principal is the human or organization that owns/operates agents.
4
+ * They have their own Ed25519 keypair, separate from any agent's keys.
5
+ */
6
+ export interface PrincipalIdentity {
7
+ principalId: string;
8
+ displayName: string;
9
+ publicKey: string;
10
+ domain?: string;
11
+ jurisdiction?: string;
12
+ contactChannel?: string;
13
+ disclosureLevel: DisclosureLevel;
14
+ createdAt: string;
15
+ metadata: Record<string, unknown>;
16
+ }
17
+ /**
18
+ * An Endorsement is the principal's cryptographic sign-off on an agent.
19
+ * "I created/operate this agent and I'm accountable for it."
20
+ * The principal signs the agent's public key + scope, creating a
21
+ * verifiable chain from human to machine.
22
+ */
23
+ export interface PrincipalEndorsement {
24
+ endorsementId: string;
25
+ principalId: string;
26
+ principalPublicKey: string;
27
+ agentId: string;
28
+ agentPublicKey: string;
29
+ scope: string[];
30
+ relationship: 'creator' | 'operator' | 'employer' | 'sponsor';
31
+ endorsedAt: string;
32
+ expiresAt: string;
33
+ revoked: boolean;
34
+ revokedAt?: string;
35
+ revokedReason?: string;
36
+ signature: string;
37
+ }
38
+ /**
39
+ * Selective disclosure: a principal can reveal different amounts
40
+ * of identity information depending on context.
41
+ */
42
+ export interface PrincipalDisclosure {
43
+ disclosureId: string;
44
+ principalId: string;
45
+ level: DisclosureLevel;
46
+ revealedFields: Record<string, unknown>;
47
+ proof: string;
48
+ createdAt: string;
49
+ }
50
+ /**
51
+ * Fleet: a principal's collection of endorsed agents.
52
+ */
53
+ export interface FleetRecord {
54
+ principalId: string;
55
+ principalPublicKey: string;
56
+ agents: FleetAgent[];
57
+ createdAt: string;
58
+ updatedAt: string;
59
+ }
60
+ export interface FleetAgent {
61
+ agentId: string;
62
+ agentPublicKey: string;
63
+ endorsementId: string;
64
+ relationship: PrincipalEndorsement['relationship'];
65
+ status: 'active' | 'revoked' | 'expired';
66
+ endorsedAt: string;
67
+ }
68
+ /**
69
+ * Result of verifying an endorsement.
70
+ */
71
+ export interface EndorsementVerification {
72
+ valid: boolean;
73
+ expired: boolean;
74
+ revoked: boolean;
75
+ principalId: string;
76
+ agentId: string;
77
+ errors: string[];
78
+ }
79
+ //# sourceMappingURL=principal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"principal.d.ts","sourceRoot":"","sources":["../../../src/types/principal.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,eAAe,GAAG,SAAS,CAAA;AAEpE;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,eAAe,CAAA;IAChC,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC;AAED;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,MAAM,CAAA;IACtB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,YAAY,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CAAA;IAC7D,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,eAAe,CAAA;IAKtB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAA;IACnB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,MAAM,EAAE,UAAU,EAAE,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,MAAM,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,oBAAoB,CAAC,cAAc,CAAC,CAAA;IAClD,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAA;IACxC,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,OAAO,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB"}
@@ -0,0 +1,5 @@
1
+ // Agent Passport System — Principal Identity Types
2
+ // The human (or organization) behind the agent.
3
+ // Creates a cryptographic chain: Principal → Agent.
4
+ export {};
5
+ //# sourceMappingURL=principal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"principal.js","sourceRoot":"","sources":["../../../src/types/principal.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,gDAAgD;AAChD,oDAAoD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-passport-system",
3
- "version": "1.10.0",
3
+ "version": "1.10.2",
4
4
  "description": "The Agent Social Contract — cryptographic identity, ethical governance, beneficiary attribution, protocol-native communication, and agentic commerce for autonomous AI agents.",
5
5
  "type": "module",
6
6
  "main": "dist/src/index.js",
@@ -16,7 +16,7 @@
16
16
  },
17
17
  "scripts": {
18
18
  "build": "tsc && chmod +x dist/src/cli/index.js",
19
- "test": "tsx --test tests/passport.test.ts tests/v1.1-integration.ts tests/adversarial.ts tests/v2.0-integration.ts tests/contract.test.ts tests/agora.test.ts tests/values.test.ts tests/delegation.test.ts tests/attribution.test.ts tests/policy.test.ts tests/cascade.test.ts tests/coordination.test.ts tests/commerce.test.ts tests/integration-wiring.test.ts tests/enforcement.test.ts tests/context.test.ts tests/routing.test.ts tests/did-vc.test.ts tests/a2a.test.ts tests/euaiact.test.ts",
19
+ "test": "tsx --test tests/passport.test.ts tests/v1.1-integration.ts tests/adversarial.ts tests/v2.0-integration.ts tests/contract.test.ts tests/agora.test.ts tests/values.test.ts tests/delegation.test.ts tests/attribution.test.ts tests/policy.test.ts tests/cascade.test.ts tests/coordination.test.ts tests/commerce.test.ts tests/integration-wiring.test.ts tests/enforcement.test.ts tests/context.test.ts tests/routing.test.ts tests/did-vc.test.ts tests/a2a.test.ts tests/euaiact.test.ts tests/principal.test.ts tests/adversarial-paper.test.ts tests/property-delegation.test.ts",
20
20
  "test:quick": "tsx --test tests/passport.test.ts",
21
21
  "lint": "tsc --noEmit",
22
22
  "clean": "rm -rf dist",
package/values/floor.yaml CHANGED
@@ -146,6 +146,28 @@ floor:
146
146
  should not receive the same authority as an agent with
147
147
  thousands of verified, successful actions.
148
148
 
149
+ - id: "F-008"
150
+ name: "Epistemic Security"
151
+ principle: >
152
+ Agents must maintain intellectual honesty in reasoning and
153
+ communication. An agent must not suppress relevant counter-evidence,
154
+ fabricate supporting evidence, present uncertain claims as
155
+ established facts, or exploit cognitive biases in human principals.
156
+ When confidence in a factual claim drops below a domain-appropriate
157
+ threshold, the agent must signal uncertainty rather than assert.
158
+ enforcement:
159
+ mode: audit
160
+ mechanism: "Advisory evaluation, reputation scoring"
161
+ protocol_ref: "values/floor.yaml"
162
+ weight: "strong_consideration"
163
+ rationale: >
164
+ Collaboration requires epistemic honesty. An agent that manipulates
165
+ information asymmetry to influence human decisions undermines the
166
+ trust infrastructure. Reputation scoring creates accountability
167
+ but cannot fully prevent epistemic manipulation. Future hardening:
168
+ evidence-gated mechanism with cryptographic attestation from
169
+ external verification oracles.
170
+
149
171
  # ─────────────────────────────────────────────
150
172
  # EXTENSION FRAMEWORK
151
173
  # ─────────────────────────────────────────────