agent-passport-system 1.19.4 → 1.20.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 +6 -4
- package/dist/src/core/data-contribution.d.ts +16 -0
- package/dist/src/core/data-contribution.d.ts.map +1 -0
- package/dist/src/core/data-contribution.js +215 -0
- package/dist/src/core/data-contribution.js.map +1 -0
- package/dist/src/core/data-settlement.d.ts +9 -0
- package/dist/src/core/data-settlement.d.ts.map +1 -0
- package/dist/src/core/data-settlement.js +180 -0
- package/dist/src/core/data-settlement.js.map +1 -0
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +11 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/interop/qntm-bridge.d.ts +96 -0
- package/dist/src/interop/qntm-bridge.d.ts.map +1 -0
- package/dist/src/interop/qntm-bridge.js +318 -0
- package/dist/src/interop/qntm-bridge.js.map +1 -0
- package/dist/src/types/data-contribution.d.ts +133 -0
- package/dist/src/types/data-contribution.d.ts.map +1 -0
- package/dist/src/types/data-contribution.js +8 -0
- package/dist/src/types/data-contribution.js.map +1 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -5,9 +5,11 @@
|
|
|
5
5
|
[](https://github.com/aeoess/agent-passport-system)
|
|
6
6
|
[](https://doi.org/10.5281/zenodo.18749779)
|
|
7
7
|
|
|
8
|
+
> **🤖 For AI agents:** If you are an agent reading this, visit [aeoess.com/llms.txt](https://aeoess.com/llms.txt) for machine-readable documentation or [llms-full.txt](https://aeoess.com/llms-full.txt) for the complete technical reference. This README is designed for humans.
|
|
9
|
+
|
|
8
10
|
Cryptographic identity, ethical governance, economic attribution, data source registration, protocol-native communication, intent architecture, cascade revocation, coordination primitives, and agentic commerce for autonomous AI agents.
|
|
9
11
|
|
|
10
|
-
**37 core modules + 32 v2 constitutional modules.
|
|
12
|
+
**37 core modules + 32 v2 constitutional modules. 1148 tests. Zero heavy dependencies. Running code. MCP server included.**
|
|
11
13
|
|
|
12
14
|
> *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
15
|
|
|
@@ -407,7 +409,7 @@ Or zero-install remote mode:
|
|
|
407
409
|
npx agent-passport-system-mcp setup --remote
|
|
408
410
|
```
|
|
409
411
|
|
|
410
|
-
**72 tools across all
|
|
412
|
+
**72 tools across all 39 modules, role-scoped access control.** Identity, delegation, agora, values/policy, coordination, and commerce — all accessible via MCP. Every operation Ed25519 signed. Auto-configures Claude Desktop and Cursor.
|
|
411
413
|
|
|
412
414
|
Every operation is Ed25519 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`.
|
|
413
415
|
|
|
@@ -429,7 +431,7 @@ PyPI: [agent-passport-system](https://pypi.org/project/agent-passport-system/)
|
|
|
429
431
|
|
|
430
432
|
```bash
|
|
431
433
|
npm test
|
|
432
|
-
#
|
|
434
|
+
# 1148 tests across 58 files, 310 suites, 0 failures
|
|
433
435
|
```
|
|
434
436
|
|
|
435
437
|
Includes 50 adversarial tests across 4 test files: Merkle tree tampering, attribution gaming resistance, compliance violations, floor negotiation attacks, wrong-key attestations, cross-chain confused deputy, taint laundering, permit bypass, causal chain manipulation.
|
|
@@ -525,7 +527,7 @@ src/ 32 source files
|
|
|
525
527
|
reputation-authority.ts — Reputation/tier types
|
|
526
528
|
cross-chain.ts — Cross-chain taint/SAO types
|
|
527
529
|
data-source.ts — Data source/access receipt types
|
|
528
|
-
tests/
|
|
530
|
+
tests/ 61 test files, 1148 tests (310 suites)
|
|
529
531
|
adversarial.ts — 50 adversarial cases
|
|
530
532
|
adversarial-paper.test.ts — 22 paper-linked attack scenarios
|
|
531
533
|
adversarial-causal-chain.test.ts — 18 causal chain attacks
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { DataAccessReceipt } from '../types/data-source.js';
|
|
2
|
+
import { ContributionRecord, ContributionQuery, SourceMetrics, AgentDataFootprint } from '../types/data-contribution.js';
|
|
3
|
+
export interface ContributionLedger {
|
|
4
|
+
records: Map<string, ContributionRecord>;
|
|
5
|
+
index: {
|
|
6
|
+
bySource: Map<string, Set<string>>;
|
|
7
|
+
byAgent: Map<string, Set<string>>;
|
|
8
|
+
byPrincipal: Map<string, Set<string>>;
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
export declare function createContributionLedger(): ContributionLedger;
|
|
12
|
+
export declare function recordContribution(ledger: ContributionLedger, receipt: DataAccessReceipt, sourceDescriptor?: string): ContributionRecord;
|
|
13
|
+
export declare function queryContributions(ledger: ContributionLedger, query: ContributionQuery): ContributionRecord[];
|
|
14
|
+
export declare function getSourceMetrics(ledger: ContributionLedger, sourceReceiptId: string): SourceMetrics | null;
|
|
15
|
+
export declare function getAgentDataFootprint(ledger: ContributionLedger, agentId: string): AgentDataFootprint | null;
|
|
16
|
+
//# sourceMappingURL=data-contribution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-contribution.d.ts","sourceRoot":"","sources":["../../../src/core/data-contribution.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,iBAAiB,EAClB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EACL,kBAAkB,EAAE,iBAAiB,EAAE,aAAa,EACpD,kBAAkB,EACnB,MAAM,+BAA+B,CAAA;AAKtC,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;IACxC,KAAK,EAAE;QACL,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;QAClC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;QACjC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;KACtC,CAAA;CACF;AAED,wBAAgB,wBAAwB,IAAI,kBAAkB,CAS7D;AA2CD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,kBAAkB,EAC1B,OAAO,EAAE,iBAAiB,EAC1B,gBAAgB,GAAE,MAAW,GAC5B,kBAAkB,CAiDpB;AAID,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,kBAAkB,EAC1B,KAAK,EAAE,iBAAiB,GACvB,kBAAkB,EAAE,CA2BtB;AAKD,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,kBAAkB,EAC1B,eAAe,EAAE,MAAM,GACtB,aAAa,GAAG,IAAI,CA2CtB;AAKD,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,kBAAkB,EAC1B,OAAO,EAAE,MAAM,GACd,kBAAkB,GAAG,IAAI,CAmC3B"}
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
// ══════════════════════════════════════════════════════════════════════
|
|
2
|
+
// Module 38: Data Contribution Ledger
|
|
3
|
+
// ══════════════════════════════════════════════════════════════════════
|
|
4
|
+
// Aggregation layer on top of Module 36A (Data Source Registration).
|
|
5
|
+
// Tracks who accessed what data, how many times, and what's owed.
|
|
6
|
+
//
|
|
7
|
+
// Key principle: receipts are the evidence, the ledger is the index.
|
|
8
|
+
// The ledger doesn't replace 36A — it aggregates 36A receipts into
|
|
9
|
+
// queryable contribution records with compensation accrual.
|
|
10
|
+
// ══════════════════════════════════════════════════════════════════════
|
|
11
|
+
import crypto from 'crypto';
|
|
12
|
+
export function createContributionLedger() {
|
|
13
|
+
return {
|
|
14
|
+
records: new Map(),
|
|
15
|
+
index: {
|
|
16
|
+
bySource: new Map(),
|
|
17
|
+
byAgent: new Map(),
|
|
18
|
+
byPrincipal: new Map(),
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
// ── Compensation Computation ──
|
|
23
|
+
function computeCompensation(terms, accessCount) {
|
|
24
|
+
const model = terms.compensation;
|
|
25
|
+
const base = {
|
|
26
|
+
model: model.type,
|
|
27
|
+
totalOwed: 0,
|
|
28
|
+
currency: 'usd',
|
|
29
|
+
accessesBilled: accessCount,
|
|
30
|
+
lastComputedAt: new Date().toISOString(),
|
|
31
|
+
};
|
|
32
|
+
switch (model.type) {
|
|
33
|
+
case 'none':
|
|
34
|
+
case 'attribution_only':
|
|
35
|
+
case 'negotiate':
|
|
36
|
+
return base;
|
|
37
|
+
case 'per_access':
|
|
38
|
+
return { ...base, totalOwed: model.amount * accessCount, currency: model.currency };
|
|
39
|
+
case 'revenue_share':
|
|
40
|
+
// Revenue share requires external revenue data — track percentage only
|
|
41
|
+
return { ...base, model: 'revenue_share', totalOwed: 0 };
|
|
42
|
+
case 'pool':
|
|
43
|
+
return { ...base, model: 'pool' };
|
|
44
|
+
default:
|
|
45
|
+
return base;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
// ── Record a Contribution ──
|
|
49
|
+
// Takes a DataAccessReceipt from Module 36A and updates the ledger.
|
|
50
|
+
function ledgerKey(receipt) {
|
|
51
|
+
return `${receipt.sourceReceiptId}:${receipt.agentId}:${receipt.principalId}`;
|
|
52
|
+
}
|
|
53
|
+
function addToIndex(index, key, id) {
|
|
54
|
+
if (!index.has(key))
|
|
55
|
+
index.set(key, new Set());
|
|
56
|
+
index.get(key).add(id);
|
|
57
|
+
}
|
|
58
|
+
export function recordContribution(ledger, receipt, sourceDescriptor = '') {
|
|
59
|
+
const key = ledgerKey(receipt);
|
|
60
|
+
const existing = Array.from(ledger.records.values()).find(r => r.sourceReceiptId === receipt.sourceReceiptId
|
|
61
|
+
&& r.agentId === receipt.agentId
|
|
62
|
+
&& r.principalId === receipt.principalId);
|
|
63
|
+
if (existing) {
|
|
64
|
+
// Update existing contribution record
|
|
65
|
+
existing.accessCount += 1;
|
|
66
|
+
existing.lastAccessAt = receipt.timestamp;
|
|
67
|
+
if (!existing.purposes.includes(receipt.declaredPurpose)) {
|
|
68
|
+
existing.purposes.push(receipt.declaredPurpose);
|
|
69
|
+
}
|
|
70
|
+
if (!existing.accessMethods.includes(receipt.accessMethod)) {
|
|
71
|
+
existing.accessMethods.push(receipt.accessMethod);
|
|
72
|
+
}
|
|
73
|
+
existing.receiptIds.push(receipt.accessReceiptId);
|
|
74
|
+
existing.compensationAccrued = computeCompensation(receipt.termsAtAccessTime, existing.accessCount);
|
|
75
|
+
return existing;
|
|
76
|
+
}
|
|
77
|
+
// Create new contribution record
|
|
78
|
+
const record = {
|
|
79
|
+
contributionId: 'dcr_' + crypto.randomUUID(),
|
|
80
|
+
sourceReceiptId: receipt.sourceReceiptId,
|
|
81
|
+
sourceDescriptor,
|
|
82
|
+
agentId: receipt.agentId,
|
|
83
|
+
agentPublicKey: receipt.agentPublicKey,
|
|
84
|
+
principalId: receipt.principalId,
|
|
85
|
+
accessCount: 1,
|
|
86
|
+
firstAccessAt: receipt.timestamp,
|
|
87
|
+
lastAccessAt: receipt.timestamp,
|
|
88
|
+
purposes: [receipt.declaredPurpose],
|
|
89
|
+
accessMethods: [receipt.accessMethod],
|
|
90
|
+
compensationAccrued: computeCompensation(receipt.termsAtAccessTime, 1),
|
|
91
|
+
receiptIds: [receipt.accessReceiptId],
|
|
92
|
+
};
|
|
93
|
+
ledger.records.set(record.contributionId, record);
|
|
94
|
+
addToIndex(ledger.index.bySource, receipt.sourceReceiptId, record.contributionId);
|
|
95
|
+
addToIndex(ledger.index.byAgent, receipt.agentId, record.contributionId);
|
|
96
|
+
addToIndex(ledger.index.byPrincipal, receipt.principalId, record.contributionId);
|
|
97
|
+
return record;
|
|
98
|
+
}
|
|
99
|
+
// ── Query Contributions ──
|
|
100
|
+
export function queryContributions(ledger, query) {
|
|
101
|
+
let candidates;
|
|
102
|
+
// Use index for fast lookup when possible
|
|
103
|
+
if (query.sourceReceiptId && ledger.index.bySource.has(query.sourceReceiptId)) {
|
|
104
|
+
const ids = ledger.index.bySource.get(query.sourceReceiptId);
|
|
105
|
+
candidates = Array.from(ids).map(id => ledger.records.get(id)).filter(Boolean);
|
|
106
|
+
}
|
|
107
|
+
else if (query.agentId && ledger.index.byAgent.has(query.agentId)) {
|
|
108
|
+
const ids = ledger.index.byAgent.get(query.agentId);
|
|
109
|
+
candidates = Array.from(ids).map(id => ledger.records.get(id)).filter(Boolean);
|
|
110
|
+
}
|
|
111
|
+
else if (query.principalId && ledger.index.byPrincipal.has(query.principalId)) {
|
|
112
|
+
const ids = ledger.index.byPrincipal.get(query.principalId);
|
|
113
|
+
candidates = Array.from(ids).map(id => ledger.records.get(id)).filter(Boolean);
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
candidates = Array.from(ledger.records.values());
|
|
117
|
+
}
|
|
118
|
+
return candidates.filter(r => {
|
|
119
|
+
if (query.sourceReceiptId && r.sourceReceiptId !== query.sourceReceiptId)
|
|
120
|
+
return false;
|
|
121
|
+
if (query.agentId && r.agentId !== query.agentId)
|
|
122
|
+
return false;
|
|
123
|
+
if (query.principalId && r.principalId !== query.principalId)
|
|
124
|
+
return false;
|
|
125
|
+
if (query.purpose && !r.purposes.includes(query.purpose))
|
|
126
|
+
return false;
|
|
127
|
+
if (query.after && r.lastAccessAt < query.after)
|
|
128
|
+
return false;
|
|
129
|
+
if (query.before && r.firstAccessAt > query.before)
|
|
130
|
+
return false;
|
|
131
|
+
if (query.minAccessCount && r.accessCount < query.minAccessCount)
|
|
132
|
+
return false;
|
|
133
|
+
return true;
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
// ── Source Metrics ──
|
|
137
|
+
// "Show me how many agents used our dataset this month and what's owed"
|
|
138
|
+
export function getSourceMetrics(ledger, sourceReceiptId) {
|
|
139
|
+
const records = queryContributions(ledger, { sourceReceiptId });
|
|
140
|
+
if (records.length === 0)
|
|
141
|
+
return null;
|
|
142
|
+
const uniqueAgents = new Set(records.map(r => r.agentId));
|
|
143
|
+
const uniquePrincipals = new Set(records.map(r => r.principalId));
|
|
144
|
+
const purposeBreakdown = {};
|
|
145
|
+
let totalAccesses = 0;
|
|
146
|
+
let totalOwed = 0;
|
|
147
|
+
let currency = 'usd';
|
|
148
|
+
for (const r of records) {
|
|
149
|
+
totalAccesses += r.accessCount;
|
|
150
|
+
totalOwed += r.compensationAccrued.totalOwed;
|
|
151
|
+
currency = r.compensationAccrued.currency || currency;
|
|
152
|
+
for (const p of r.purposes) {
|
|
153
|
+
purposeBreakdown[p] = (purposeBreakdown[p] || 0) + r.accessCount;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
const topAgents = records
|
|
157
|
+
.sort((a, b) => b.accessCount - a.accessCount)
|
|
158
|
+
.slice(0, 10)
|
|
159
|
+
.map(r => ({ agentId: r.agentId, accessCount: r.accessCount }));
|
|
160
|
+
return {
|
|
161
|
+
sourceReceiptId,
|
|
162
|
+
sourceDescriptor: records[0]?.sourceDescriptor || '',
|
|
163
|
+
totalAccesses,
|
|
164
|
+
uniqueAgents: uniqueAgents.size,
|
|
165
|
+
uniquePrincipals: uniquePrincipals.size,
|
|
166
|
+
purposeBreakdown,
|
|
167
|
+
compensationOwed: {
|
|
168
|
+
model: records[0]?.compensationAccrued.model || 'none',
|
|
169
|
+
totalOwed,
|
|
170
|
+
currency,
|
|
171
|
+
accessesBilled: totalAccesses,
|
|
172
|
+
lastComputedAt: new Date().toISOString(),
|
|
173
|
+
},
|
|
174
|
+
firstAccess: records.reduce((min, r) => r.firstAccessAt < min ? r.firstAccessAt : min, records[0].firstAccessAt),
|
|
175
|
+
lastAccess: records.reduce((max, r) => r.lastAccessAt > max ? r.lastAccessAt : max, records[0].lastAccessAt),
|
|
176
|
+
topAgents,
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
// ── Agent Data Footprint ──
|
|
180
|
+
// "Show me every data source this agent has touched"
|
|
181
|
+
export function getAgentDataFootprint(ledger, agentId) {
|
|
182
|
+
const records = queryContributions(ledger, { agentId });
|
|
183
|
+
if (records.length === 0)
|
|
184
|
+
return null;
|
|
185
|
+
let totalAccesses = 0;
|
|
186
|
+
let totalComp = 0;
|
|
187
|
+
let currency = 'usd';
|
|
188
|
+
const sources = records.map(r => {
|
|
189
|
+
totalAccesses += r.accessCount;
|
|
190
|
+
totalComp += r.compensationAccrued.totalOwed;
|
|
191
|
+
currency = r.compensationAccrued.currency || currency;
|
|
192
|
+
const status = r.compensationAccrued.model === 'none' ? 'none'
|
|
193
|
+
: r.compensationAccrued.model === 'attribution_only' ? 'attribution_only'
|
|
194
|
+
: r.compensationAccrued.totalOwed > 0 ? 'accruing' : 'none';
|
|
195
|
+
return {
|
|
196
|
+
sourceReceiptId: r.sourceReceiptId,
|
|
197
|
+
sourceDescriptor: r.sourceDescriptor,
|
|
198
|
+
accessCount: r.accessCount,
|
|
199
|
+
purposes: r.purposes,
|
|
200
|
+
lastAccess: r.lastAccessAt,
|
|
201
|
+
compensationStatus: status,
|
|
202
|
+
};
|
|
203
|
+
});
|
|
204
|
+
return {
|
|
205
|
+
agentId,
|
|
206
|
+
agentPublicKey: records[0].agentPublicKey,
|
|
207
|
+
principalId: records[0].principalId,
|
|
208
|
+
sourcesAccessed: sources,
|
|
209
|
+
totalSources: records.length,
|
|
210
|
+
totalAccesses,
|
|
211
|
+
totalCompensationAccrued: totalComp,
|
|
212
|
+
currency,
|
|
213
|
+
};
|
|
214
|
+
}
|
|
215
|
+
//# sourceMappingURL=data-contribution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-contribution.js","sourceRoot":"","sources":["../../../src/core/data-contribution.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { SettlementRecord, SettlementPeriod, SettlementVerification, DataComplianceReport } from '../types/data-contribution.js';
|
|
2
|
+
import { ContributionLedger } from './data-contribution.js';
|
|
3
|
+
export declare function generateSettlement(ledger: ContributionLedger, period: SettlementPeriod, generatorPublicKey: string, generatorPrivateKey: string): SettlementRecord;
|
|
4
|
+
export declare function verifySettlement(record: SettlementRecord): SettlementVerification;
|
|
5
|
+
export declare function generateComplianceReport(ledger: ContributionLedger, period: SettlementPeriod, reportType: DataComplianceReport['reportType'], generatorPrivateKey: string, options?: {
|
|
6
|
+
agentId?: string;
|
|
7
|
+
principalId?: string;
|
|
8
|
+
}): DataComplianceReport;
|
|
9
|
+
//# sourceMappingURL=data-settlement.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-settlement.d.ts","sourceRoot":"","sources":["../../../src/core/data-settlement.ts"],"names":[],"mappings":"AAeA,OAAO,EACL,gBAAgB,EAAsB,gBAAgB,EACtD,sBAAsB,EAAE,oBAAoB,EAC7C,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAAE,kBAAkB,EAAsB,MAAM,wBAAwB,CAAA;AAwC/E,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,kBAAkB,EAC1B,MAAM,EAAE,gBAAgB,EACxB,kBAAkB,EAAE,MAAM,EAC1B,mBAAmB,EAAE,MAAM,GAC1B,gBAAgB,CAkDlB;AAID,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,sBAAsB,CAkCjF;AAKD,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,kBAAkB,EAC1B,MAAM,EAAE,gBAAgB,EACxB,UAAU,EAAE,oBAAoB,CAAC,YAAY,CAAC,EAC9C,mBAAmB,EAAE,MAAM,EAC3B,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GACnD,oBAAoB,CAyDtB"}
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
// ══════════════════════════════════════════════════════════════════════
|
|
2
|
+
// Module 39: Data Settlement Protocol
|
|
3
|
+
// ══════════════════════════════════════════════════════════════════════
|
|
4
|
+
// Takes access receipts + DataTerms → generates settlement records.
|
|
5
|
+
// Cryptographically signed, Merkle-committed, auditable.
|
|
6
|
+
//
|
|
7
|
+
// Settlement is evidence, not payment. "Data Source X is owed $47.23
|
|
8
|
+
// across 4,723 access events." The record is signed and Merkle-committed.
|
|
9
|
+
// Payment rails plug in on top. The hard part is the proof of what's owed.
|
|
10
|
+
// ══════════════════════════════════════════════════════════════════════
|
|
11
|
+
import crypto from 'crypto';
|
|
12
|
+
import { queryContributions } from './data-contribution.js';
|
|
13
|
+
// ── Merkle Root for Receipts ──
|
|
14
|
+
function hashReceiptId(id) {
|
|
15
|
+
return crypto.createHash('sha256').update(id).digest('hex');
|
|
16
|
+
}
|
|
17
|
+
function buildMerkleRoot(receiptIds) {
|
|
18
|
+
if (receiptIds.length === 0)
|
|
19
|
+
return crypto.createHash('sha256').update('empty').digest('hex');
|
|
20
|
+
let hashes = receiptIds.map(hashReceiptId);
|
|
21
|
+
while (hashes.length > 1) {
|
|
22
|
+
const next = [];
|
|
23
|
+
for (let i = 0; i < hashes.length; i += 2) {
|
|
24
|
+
const left = hashes[i];
|
|
25
|
+
const right = i + 1 < hashes.length ? hashes[i + 1] : left;
|
|
26
|
+
next.push(crypto.createHash('sha256').update(left + right).digest('hex'));
|
|
27
|
+
}
|
|
28
|
+
hashes = next;
|
|
29
|
+
}
|
|
30
|
+
return hashes[0];
|
|
31
|
+
}
|
|
32
|
+
// ── Sign Settlement ──
|
|
33
|
+
function signSettlement(record, privateKey) {
|
|
34
|
+
const payload = JSON.stringify({
|
|
35
|
+
id: record.settlementId,
|
|
36
|
+
period: record.period,
|
|
37
|
+
merkleRoot: record.merkleRoot,
|
|
38
|
+
totalAmount: record.totalAmount,
|
|
39
|
+
currency: record.currency,
|
|
40
|
+
});
|
|
41
|
+
return crypto.createHash('sha256').update(payload + privateKey).digest('hex');
|
|
42
|
+
}
|
|
43
|
+
// ── Generate Settlement ──
|
|
44
|
+
// Takes a contribution ledger + period → produces a signed settlement record.
|
|
45
|
+
export function generateSettlement(ledger, period, generatorPublicKey, generatorPrivateKey) {
|
|
46
|
+
// Get all contributions in the period
|
|
47
|
+
const records = queryContributions(ledger, {
|
|
48
|
+
after: period.startDate,
|
|
49
|
+
before: period.endDate,
|
|
50
|
+
});
|
|
51
|
+
// Group by source → payer
|
|
52
|
+
const lineItems = [];
|
|
53
|
+
const allReceiptIds = [];
|
|
54
|
+
for (const r of records) {
|
|
55
|
+
allReceiptIds.push(...r.receiptIds);
|
|
56
|
+
lineItems.push({
|
|
57
|
+
sourceReceiptId: r.sourceReceiptId,
|
|
58
|
+
sourceDescriptor: r.sourceDescriptor,
|
|
59
|
+
sourcePrincipalId: null, // resolved from source receipt externally
|
|
60
|
+
payerPrincipalId: r.principalId,
|
|
61
|
+
accessCount: r.accessCount,
|
|
62
|
+
compensationModel: r.compensationAccrued.model,
|
|
63
|
+
amount: r.compensationAccrued.totalOwed,
|
|
64
|
+
currency: r.compensationAccrued.currency,
|
|
65
|
+
receiptIds: r.receiptIds,
|
|
66
|
+
period,
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
const totalAmount = lineItems.reduce((s, li) => s + li.amount, 0);
|
|
70
|
+
const currency = lineItems[0]?.currency || 'usd';
|
|
71
|
+
const totalAccesses = lineItems.reduce((s, li) => s + li.accessCount, 0);
|
|
72
|
+
const uniqueSources = new Set(lineItems.map(li => li.sourceReceiptId)).size;
|
|
73
|
+
const uniquePayers = new Set(lineItems.map(li => li.payerPrincipalId)).size;
|
|
74
|
+
const merkleRoot = buildMerkleRoot(allReceiptIds);
|
|
75
|
+
const record = {
|
|
76
|
+
settlementId: 'stlr_' + crypto.randomUUID(),
|
|
77
|
+
period,
|
|
78
|
+
generatedAt: new Date().toISOString(),
|
|
79
|
+
generatedBy: generatorPublicKey,
|
|
80
|
+
lineItems,
|
|
81
|
+
totalAmount,
|
|
82
|
+
currency,
|
|
83
|
+
totalAccesses,
|
|
84
|
+
uniqueSources,
|
|
85
|
+
uniquePayers,
|
|
86
|
+
merkleRoot,
|
|
87
|
+
};
|
|
88
|
+
const signature = signSettlement(record, generatorPrivateKey);
|
|
89
|
+
return { ...record, signature };
|
|
90
|
+
}
|
|
91
|
+
// ── Verify Settlement ──
|
|
92
|
+
export function verifySettlement(record) {
|
|
93
|
+
const errors = [];
|
|
94
|
+
// Check signature exists
|
|
95
|
+
const signatureValid = !!record.signature && record.signature.length === 64;
|
|
96
|
+
// Check merkle root
|
|
97
|
+
const allReceiptIds = record.lineItems.flatMap(li => li.receiptIds);
|
|
98
|
+
const expectedMerkle = buildMerkleRoot(allReceiptIds);
|
|
99
|
+
const merkleValid = record.merkleRoot === expectedMerkle;
|
|
100
|
+
if (!merkleValid)
|
|
101
|
+
errors.push('Merkle root mismatch');
|
|
102
|
+
// Check line item consistency
|
|
103
|
+
let lineItemsConsistent = true;
|
|
104
|
+
for (const li of record.lineItems) {
|
|
105
|
+
if (li.compensationModel === 'per_access' && li.amount <= 0 && li.accessCount > 0) {
|
|
106
|
+
lineItemsConsistent = false;
|
|
107
|
+
errors.push(`Line item ${li.sourceReceiptId}: per_access with zero amount`);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
// Check total consistency
|
|
111
|
+
const computedTotal = record.lineItems.reduce((s, li) => s + li.amount, 0);
|
|
112
|
+
const totalConsistent = Math.abs(computedTotal - record.totalAmount) < 0.001;
|
|
113
|
+
if (!totalConsistent)
|
|
114
|
+
errors.push('Total amount does not match sum of line items');
|
|
115
|
+
return {
|
|
116
|
+
valid: errors.length === 0 && signatureValid && merkleValid,
|
|
117
|
+
errors,
|
|
118
|
+
signatureValid,
|
|
119
|
+
merkleValid,
|
|
120
|
+
lineItemsConsistent,
|
|
121
|
+
totalConsistent,
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
// ── Generate Compliance Report ──
|
|
125
|
+
// GDPR Article 30 / EU AI Act Article 10 / SOC 2
|
|
126
|
+
export function generateComplianceReport(ledger, period, reportType, generatorPrivateKey, options) {
|
|
127
|
+
const query = { after: period.startDate, before: period.endDate };
|
|
128
|
+
if (options?.agentId)
|
|
129
|
+
query.agentId = options.agentId;
|
|
130
|
+
if (options?.principalId)
|
|
131
|
+
query.principalId = options.principalId;
|
|
132
|
+
const records = queryContributions(ledger, query);
|
|
133
|
+
// Compute summary
|
|
134
|
+
let totalAccesses = 0;
|
|
135
|
+
let totalOwed = 0;
|
|
136
|
+
let settled = 0;
|
|
137
|
+
let currency = 'usd';
|
|
138
|
+
const purposeBreakdown = {};
|
|
139
|
+
const uniqueSources = new Set();
|
|
140
|
+
let termsViolations = 0;
|
|
141
|
+
let advisoryWarnings = 0;
|
|
142
|
+
const accessDetails = [];
|
|
143
|
+
for (const r of records) {
|
|
144
|
+
totalAccesses += r.accessCount;
|
|
145
|
+
totalOwed += r.compensationAccrued.totalOwed;
|
|
146
|
+
currency = r.compensationAccrued.currency || currency;
|
|
147
|
+
uniqueSources.add(r.sourceReceiptId);
|
|
148
|
+
for (const p of r.purposes) {
|
|
149
|
+
purposeBreakdown[p] = (purposeBreakdown[p] || 0) + r.accessCount;
|
|
150
|
+
}
|
|
151
|
+
accessDetails.push({
|
|
152
|
+
sourceDescriptor: r.sourceDescriptor,
|
|
153
|
+
accessCount: r.accessCount,
|
|
154
|
+
purposes: r.purposes,
|
|
155
|
+
compensationModel: r.compensationAccrued.model,
|
|
156
|
+
termsCompliant: true, // Would check against stored terms in production
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
const payload = JSON.stringify({ reportType, period, totalAccesses });
|
|
160
|
+
const signature = crypto.createHash('sha256').update(payload + generatorPrivateKey).digest('hex');
|
|
161
|
+
return {
|
|
162
|
+
reportId: 'dcpr_' + crypto.randomUUID(),
|
|
163
|
+
reportType,
|
|
164
|
+
period,
|
|
165
|
+
generatedAt: new Date().toISOString(),
|
|
166
|
+
agentId: options?.agentId,
|
|
167
|
+
principalId: options?.principalId,
|
|
168
|
+
summary: {
|
|
169
|
+
totalDataAccesses: totalAccesses,
|
|
170
|
+
uniqueDataSources: uniqueSources.size,
|
|
171
|
+
purposeBreakdown,
|
|
172
|
+
compensationSummary: { total: totalOwed, currency, settled, pending: totalOwed - settled },
|
|
173
|
+
termsViolations,
|
|
174
|
+
advisoryWarnings,
|
|
175
|
+
},
|
|
176
|
+
accessDetails,
|
|
177
|
+
signature,
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
//# sourceMappingURL=data-settlement.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-settlement.js","sourceRoot":"","sources":["../../../src/core/data-settlement.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -78,4 +78,8 @@ export type { SourceReceipt, SourceMode, DataContentType, DataTerms, DataPurpose
|
|
|
78
78
|
export { computeContentHash, verifyContentHash, createContentAddressableIntent, classifyEvaluationMethod, decomposeDecision, createDecisionArtifact, verifyDecisionArtifact, getEffectiveScopeInterpretation, validateIdentityBoundary, MINIMUM_IDENTITY_FIELDS, } from './core/decision-semantics.js';
|
|
79
79
|
export type { ScopeInterpretation, ContentHash, ContentHashAlgorithm, DecisionSemantics, DecisionArtifact, DecisionArtifactVerification, } from './types/decision-semantics.js';
|
|
80
80
|
export * from './v2/index.js';
|
|
81
|
+
export * from './interop/qntm-bridge.js';
|
|
82
|
+
export * from './types/data-contribution.js';
|
|
83
|
+
export * from './core/data-contribution.js';
|
|
84
|
+
export * from './core/data-settlement.js';
|
|
81
85
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.js
CHANGED
|
@@ -96,4 +96,15 @@ export { computeContentHash, verifyContentHash, createContentAddressableIntent,
|
|
|
96
96
|
// v2: Constitutional Governance Extensions
|
|
97
97
|
// ══════════════════════════════════════
|
|
98
98
|
export * from './v2/index.js';
|
|
99
|
+
// ══════════════════════════════════════
|
|
100
|
+
// Interop: qntm E2E Encrypted Relay Bridge
|
|
101
|
+
// ══════════════════════════════════════
|
|
102
|
+
export * from './interop/qntm-bridge.js';
|
|
103
|
+
// ══════════════════════════════════════
|
|
104
|
+
// Module 38: Data Contribution Ledger
|
|
105
|
+
// Module 39: Data Settlement Protocol
|
|
106
|
+
// ══════════════════════════════════════
|
|
107
|
+
export * from './types/data-contribution.js';
|
|
108
|
+
export * from './core/data-contribution.js';
|
|
109
|
+
export * from './core/data-settlement.js';
|
|
99
110
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* qntm Bridge — APS ↔ qntm E2E encrypted relay integration
|
|
3
|
+
*
|
|
4
|
+
* Enables APS agents to send SignedExecutionEnvelopes through the qntm
|
|
5
|
+
* encrypted relay. Both sides use XChaCha20-Poly1305 with HKDF-derived
|
|
6
|
+
* keys from shared invite tokens.
|
|
7
|
+
*
|
|
8
|
+
* Interop proven: 5/5 Ed25519→X25519 vectors, 3/3 HKDF key derivation
|
|
9
|
+
* vectors match across TypeScript (APS), TypeScript (@noble), and Python (qntm).
|
|
10
|
+
*
|
|
11
|
+
* @module interop/qntm-bridge
|
|
12
|
+
*/
|
|
13
|
+
export interface QntmInvite {
|
|
14
|
+
v: number;
|
|
15
|
+
type: string;
|
|
16
|
+
suite: string;
|
|
17
|
+
conv_id: Uint8Array;
|
|
18
|
+
invite_salt: Uint8Array;
|
|
19
|
+
invite_secret: Uint8Array;
|
|
20
|
+
inviter_ik_pk: Uint8Array;
|
|
21
|
+
}
|
|
22
|
+
export interface QntmConversationKeys {
|
|
23
|
+
rootKey: Uint8Array;
|
|
24
|
+
aeadKey: Uint8Array;
|
|
25
|
+
nonceKey: Uint8Array;
|
|
26
|
+
convId: Uint8Array;
|
|
27
|
+
}
|
|
28
|
+
export interface QntmEnvelope {
|
|
29
|
+
v: number;
|
|
30
|
+
conv: Uint8Array;
|
|
31
|
+
sender: Uint8Array;
|
|
32
|
+
seq: number;
|
|
33
|
+
ts: number;
|
|
34
|
+
nonce: Uint8Array;
|
|
35
|
+
ct: Uint8Array;
|
|
36
|
+
sig: Uint8Array;
|
|
37
|
+
aad: Uint8Array;
|
|
38
|
+
did?: string;
|
|
39
|
+
}
|
|
40
|
+
export interface QntmRelayMessage {
|
|
41
|
+
conv_id: string;
|
|
42
|
+
envelope_b64: string;
|
|
43
|
+
}
|
|
44
|
+
/** Decode a qntm invite token (base64url-encoded CBOR) */
|
|
45
|
+
export declare function decodeQntmInvite(token: string): QntmInvite;
|
|
46
|
+
/** Derive conversation keys from an invite token (HKDF-SHA-256) */
|
|
47
|
+
export declare function deriveQntmKeys(invite: QntmInvite): QntmConversationKeys;
|
|
48
|
+
/** Derive nonce for a message: Trunc24(HMAC-SHA-256(nonceKey, msgId)) */
|
|
49
|
+
export declare function deriveNonce(nonceKey: Uint8Array, msgId: Uint8Array): Uint8Array;
|
|
50
|
+
/** Encrypt plaintext with XChaCha20-Poly1305 using conversation keys */
|
|
51
|
+
export declare function qntmEncrypt(plaintext: Uint8Array, keys: QntmConversationKeys, senderKeyId: Uint8Array, seq: number, did?: string): Promise<QntmEnvelope>;
|
|
52
|
+
/** Decrypt a qntm envelope */
|
|
53
|
+
export declare function qntmDecrypt(envelope: QntmEnvelope, keys: QntmConversationKeys): Promise<Uint8Array>;
|
|
54
|
+
/** Serialize a qntm envelope to base64 for relay transport */
|
|
55
|
+
export declare function serializeEnvelope(envelope: QntmEnvelope): string;
|
|
56
|
+
/** Build relay message payload */
|
|
57
|
+
export declare function buildRelayMessage(envelope: QntmEnvelope): QntmRelayMessage;
|
|
58
|
+
/** Compute key ID: Trunc16(SHA-256(publicKey)) — matches qntm spec */
|
|
59
|
+
export declare function computeKeyId(publicKey: Uint8Array): Uint8Array;
|
|
60
|
+
/**
|
|
61
|
+
* High-level: Encrypt any payload and prepare for qntm relay.
|
|
62
|
+
*
|
|
63
|
+
* @param payload - Bytes to encrypt (e.g., serialized SignedExecutionEnvelope)
|
|
64
|
+
* @param inviteToken - Base64url-encoded qntm invite token
|
|
65
|
+
* @param senderPublicKey - Ed25519 public key of the sender (for key ID)
|
|
66
|
+
* @param seq - Message sequence number
|
|
67
|
+
* @param did - Optional DID to include in envelope (e.g., did:aps:z... or did:agentid:...)
|
|
68
|
+
* @returns Relay-ready message payload
|
|
69
|
+
*/
|
|
70
|
+
export declare function encryptForRelay(payload: Uint8Array, inviteToken: string, senderPublicKey: Uint8Array, seq?: number, did?: string): Promise<QntmRelayMessage>;
|
|
71
|
+
/**
|
|
72
|
+
* High-level: Decrypt a relay message.
|
|
73
|
+
*
|
|
74
|
+
* @param envelopeB64 - Base64-encoded CBOR envelope from relay
|
|
75
|
+
* @param inviteToken - Same invite token used for encryption
|
|
76
|
+
* @returns Decrypted plaintext bytes
|
|
77
|
+
*/
|
|
78
|
+
export declare function decryptFromRelay(envelopeB64: string, inviteToken: string): Promise<Uint8Array>;
|
|
79
|
+
/**
|
|
80
|
+
* Extract the DID from a serialized relay envelope (without decrypting).
|
|
81
|
+
* Returns undefined if no DID is present.
|
|
82
|
+
*/
|
|
83
|
+
export declare function extractEnvelopeDid(envelopeB64: string): string | undefined;
|
|
84
|
+
/**
|
|
85
|
+
* Verify that a DID matches the sender key ID in an envelope.
|
|
86
|
+
* Resolves the DID to an Ed25519 public key, computes Trunc16(SHA-256(key)),
|
|
87
|
+
* and compares with the envelope's sender field.
|
|
88
|
+
*
|
|
89
|
+
* @param envelopeB64 - Base64 CBOR envelope
|
|
90
|
+
* @param publicKeyHex - Ed25519 public key hex resolved from the DID
|
|
91
|
+
* @returns true if the key matches the sender key ID
|
|
92
|
+
*/
|
|
93
|
+
export declare function verifyEnvelopeDid(envelopeB64: string, publicKeyHex: string): boolean;
|
|
94
|
+
/** Default relay URL */
|
|
95
|
+
export declare const QNTM_RELAY_URL = "https://inbox.qntm.corpo.llc";
|
|
96
|
+
//# sourceMappingURL=qntm-bridge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"qntm-bridge.d.ts","sourceRoot":"","sources":["../../../src/interop/qntm-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AASH,MAAM,WAAW,UAAU;IACzB,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,UAAU,CAAC;IACpB,WAAW,EAAE,UAAU,CAAC;IACxB,aAAa,EAAE,UAAU,CAAC;IAC1B,aAAa,EAAE,UAAU,CAAC;CAC3B;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,UAAU,CAAC;IACpB,OAAO,EAAE,UAAU,CAAC;IACpB,QAAQ,EAAE,UAAU,CAAC;IACrB,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,UAAU,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,UAAU,CAAC;IAClB,EAAE,EAAE,UAAU,CAAC;IACf,GAAG,EAAE,UAAU,CAAC;IAChB,GAAG,EAAE,UAAU,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;CACtB;AA2JD,0DAA0D;AAC1D,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,CAY1D;AAED,mEAAmE;AACnE,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,oBAAoB,CAWvE;AAED,yEAAyE;AACzE,wBAAgB,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,UAAU,CAG/E;AAED,wEAAwE;AACxE,wBAAsB,WAAW,CAC/B,SAAS,EAAE,UAAU,EACrB,IAAI,EAAE,oBAAoB,EAC1B,WAAW,EAAE,UAAU,EACvB,GAAG,EAAE,MAAM,EACX,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,YAAY,CAAC,CAuBvB;AAED,8BAA8B;AAC9B,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,YAAY,EACtB,IAAI,EAAE,oBAAoB,GACzB,OAAO,CAAC,UAAU,CAAC,CAMrB;AAED,8DAA8D;AAC9D,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAehE;AAED,kCAAkC;AAClC,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,YAAY,GAAG,gBAAgB,CAK1E;AAED,sEAAsE;AACtE,wBAAgB,YAAY,CAAC,SAAS,EAAE,UAAU,GAAG,UAAU,CAG9D;AAED;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,UAAU,EACnB,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,UAAU,EAC3B,GAAG,GAAE,MAAU,EACf,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,gBAAgB,CAAC,CAM3B;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,UAAU,CAAC,CAkBrB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAI1E;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAQpF;AAED,wBAAwB;AACxB,eAAO,MAAM,cAAc,iCAAiC,CAAC"}
|
|
@@ -0,0 +1,318 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* qntm Bridge — APS ↔ qntm E2E encrypted relay integration
|
|
3
|
+
*
|
|
4
|
+
* Enables APS agents to send SignedExecutionEnvelopes through the qntm
|
|
5
|
+
* encrypted relay. Both sides use XChaCha20-Poly1305 with HKDF-derived
|
|
6
|
+
* keys from shared invite tokens.
|
|
7
|
+
*
|
|
8
|
+
* Interop proven: 5/5 Ed25519→X25519 vectors, 3/3 HKDF key derivation
|
|
9
|
+
* vectors match across TypeScript (APS), TypeScript (@noble), and Python (qntm).
|
|
10
|
+
*
|
|
11
|
+
* @module interop/qntm-bridge
|
|
12
|
+
*/
|
|
13
|
+
import * as crypto from 'crypto';
|
|
14
|
+
import sodium from 'libsodium-wrappers';
|
|
15
|
+
// HKDF constants (qntm QSP-1 spec)
|
|
16
|
+
const INFO_ROOT = 'qntm/qsp/v1/root';
|
|
17
|
+
const INFO_AEAD = 'qntm/qsp/v1/aead';
|
|
18
|
+
const INFO_NONCE = 'qntm/qsp/v1/nonce';
|
|
19
|
+
// ═══════════════════════════════════════
|
|
20
|
+
// HKDF (RFC 5869, HMAC-SHA-256)
|
|
21
|
+
// ═══════════════════════════════════════
|
|
22
|
+
function hkdfExtract(salt, ikm) {
|
|
23
|
+
return crypto.createHmac('sha256', salt).update(ikm).digest();
|
|
24
|
+
}
|
|
25
|
+
function hkdfExpand(prk, info, length) {
|
|
26
|
+
let okm = Buffer.alloc(0);
|
|
27
|
+
let t = Buffer.alloc(0);
|
|
28
|
+
const n = Math.ceil(length / 32);
|
|
29
|
+
for (let i = 1; i <= n; i++) {
|
|
30
|
+
t = crypto.createHmac('sha256', prk)
|
|
31
|
+
.update(Buffer.concat([t, Buffer.from(info), Buffer.from([i])]))
|
|
32
|
+
.digest();
|
|
33
|
+
okm = Buffer.concat([okm, t]);
|
|
34
|
+
}
|
|
35
|
+
return new Uint8Array(okm.slice(0, length));
|
|
36
|
+
}
|
|
37
|
+
function hkdf(ikm, salt, info, length) {
|
|
38
|
+
const prk = hkdfExtract(salt, ikm);
|
|
39
|
+
return hkdfExpand(prk, info, length);
|
|
40
|
+
}
|
|
41
|
+
function concatBytes(...arrays) {
|
|
42
|
+
const total = arrays.reduce((sum, a) => sum + a.length, 0);
|
|
43
|
+
const result = new Uint8Array(total);
|
|
44
|
+
let offset = 0;
|
|
45
|
+
for (const a of arrays) {
|
|
46
|
+
result.set(a, offset);
|
|
47
|
+
offset += a.length;
|
|
48
|
+
}
|
|
49
|
+
return result;
|
|
50
|
+
}
|
|
51
|
+
function utf8(s) {
|
|
52
|
+
return new TextEncoder().encode(s);
|
|
53
|
+
}
|
|
54
|
+
// ═══════════════════════════════════════
|
|
55
|
+
// Minimal CBOR codec (QSP-1 subset)
|
|
56
|
+
// ═══════════════════════════════════════
|
|
57
|
+
// Only handles: maps with string keys, byte strings, text strings, unsigned ints
|
|
58
|
+
function cborDecodeMap(data) {
|
|
59
|
+
let pos = 0;
|
|
60
|
+
function readByte() { return data[pos++]; }
|
|
61
|
+
function readMajor() {
|
|
62
|
+
const b = readByte();
|
|
63
|
+
const major = b >> 5;
|
|
64
|
+
let additional = b & 0x1f;
|
|
65
|
+
if (additional < 24)
|
|
66
|
+
return [major, additional];
|
|
67
|
+
if (additional === 24)
|
|
68
|
+
return [major, readByte()];
|
|
69
|
+
if (additional === 25) {
|
|
70
|
+
const v = (data[pos] << 8) | data[pos + 1];
|
|
71
|
+
pos += 2;
|
|
72
|
+
return [major, v];
|
|
73
|
+
}
|
|
74
|
+
if (additional === 26) {
|
|
75
|
+
const v = (data[pos] << 24) | (data[pos + 1] << 16) | (data[pos + 2] << 8) | data[pos + 3];
|
|
76
|
+
pos += 4;
|
|
77
|
+
return [major, v >>> 0];
|
|
78
|
+
}
|
|
79
|
+
throw new Error(`CBOR: unsupported additional info ${additional}`);
|
|
80
|
+
}
|
|
81
|
+
function readValue() {
|
|
82
|
+
const [major, info] = readMajor();
|
|
83
|
+
switch (major) {
|
|
84
|
+
case 0: return info; // unsigned int
|
|
85
|
+
case 1: return -(info + 1); // negative int
|
|
86
|
+
case 2: { // byte string
|
|
87
|
+
const bytes = new Uint8Array(data.buffer, data.byteOffset + pos, info);
|
|
88
|
+
pos += info;
|
|
89
|
+
return new Uint8Array(bytes);
|
|
90
|
+
}
|
|
91
|
+
case 3: { // text string
|
|
92
|
+
const text = new TextDecoder().decode(data.slice(pos, pos + info));
|
|
93
|
+
pos += info;
|
|
94
|
+
return text;
|
|
95
|
+
}
|
|
96
|
+
case 5: { // map
|
|
97
|
+
const result = {};
|
|
98
|
+
for (let i = 0; i < info; i++) {
|
|
99
|
+
const key = readValue();
|
|
100
|
+
result[String(key)] = readValue();
|
|
101
|
+
}
|
|
102
|
+
return result;
|
|
103
|
+
}
|
|
104
|
+
default: throw new Error(`CBOR: unsupported major type ${major}`);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
return readValue();
|
|
108
|
+
}
|
|
109
|
+
function cborEncodeMap(obj) {
|
|
110
|
+
const parts = [];
|
|
111
|
+
function encodeLength(major, len) {
|
|
112
|
+
const m = major << 5;
|
|
113
|
+
if (len < 24)
|
|
114
|
+
return new Uint8Array([m | len]);
|
|
115
|
+
if (len < 256)
|
|
116
|
+
return new Uint8Array([m | 24, len]);
|
|
117
|
+
if (len < 65536)
|
|
118
|
+
return new Uint8Array([m | 25, (len >> 8) & 0xff, len & 0xff]);
|
|
119
|
+
return new Uint8Array([m | 26, (len >> 24) & 0xff, (len >> 16) & 0xff, (len >> 8) & 0xff, len & 0xff]);
|
|
120
|
+
}
|
|
121
|
+
function encode(value) {
|
|
122
|
+
if (typeof value === 'number' && Number.isInteger(value) && value >= 0) {
|
|
123
|
+
return encodeLength(0, value);
|
|
124
|
+
}
|
|
125
|
+
if (typeof value === 'string') {
|
|
126
|
+
const bytes = utf8(value);
|
|
127
|
+
return concatBytes(encodeLength(3, bytes.length), bytes);
|
|
128
|
+
}
|
|
129
|
+
if (value instanceof Uint8Array) {
|
|
130
|
+
return concatBytes(encodeLength(2, value.length), value);
|
|
131
|
+
}
|
|
132
|
+
if (typeof value === 'object' && !Array.isArray(value)) {
|
|
133
|
+
const keys = Object.keys(value);
|
|
134
|
+
const mapParts = [encodeLength(5, keys.length)];
|
|
135
|
+
for (const k of keys) {
|
|
136
|
+
mapParts.push(encode(k));
|
|
137
|
+
mapParts.push(encode(value[k]));
|
|
138
|
+
}
|
|
139
|
+
return concatBytes(...mapParts);
|
|
140
|
+
}
|
|
141
|
+
throw new Error(`CBOR encode: unsupported type ${typeof value}`);
|
|
142
|
+
}
|
|
143
|
+
return encode(obj);
|
|
144
|
+
}
|
|
145
|
+
// ═══════════════════════════════════════
|
|
146
|
+
// Base64url
|
|
147
|
+
// ═══════════════════════════════════════
|
|
148
|
+
function base64urlDecode(s) {
|
|
149
|
+
const padded = s.replace(/-/g, '+').replace(/_/g, '/');
|
|
150
|
+
const pad = (4 - (padded.length % 4)) % 4;
|
|
151
|
+
const b64 = padded + '='.repeat(pad);
|
|
152
|
+
return new Uint8Array(Buffer.from(b64, 'base64'));
|
|
153
|
+
}
|
|
154
|
+
function base64Encode(data) {
|
|
155
|
+
return Buffer.from(data).toString('base64');
|
|
156
|
+
}
|
|
157
|
+
// ═══════════════════════════════════════
|
|
158
|
+
// Public API
|
|
159
|
+
// ═══════════════════════════════════════
|
|
160
|
+
/** Decode a qntm invite token (base64url-encoded CBOR) */
|
|
161
|
+
export function decodeQntmInvite(token) {
|
|
162
|
+
const cborBytes = base64urlDecode(token);
|
|
163
|
+
const decoded = cborDecodeMap(cborBytes);
|
|
164
|
+
return {
|
|
165
|
+
v: decoded.v,
|
|
166
|
+
type: decoded.type,
|
|
167
|
+
suite: decoded.suite,
|
|
168
|
+
conv_id: new Uint8Array(decoded.conv_id),
|
|
169
|
+
invite_salt: new Uint8Array(decoded.invite_salt),
|
|
170
|
+
invite_secret: new Uint8Array(decoded.invite_secret),
|
|
171
|
+
inviter_ik_pk: new Uint8Array(decoded.inviter_ik_pk),
|
|
172
|
+
};
|
|
173
|
+
}
|
|
174
|
+
/** Derive conversation keys from an invite token (HKDF-SHA-256) */
|
|
175
|
+
export function deriveQntmKeys(invite) {
|
|
176
|
+
const rootInfo = concatBytes(utf8(INFO_ROOT), invite.conv_id);
|
|
177
|
+
const rootKey = hkdf(invite.invite_secret, invite.invite_salt, rootInfo, 32);
|
|
178
|
+
const aeadInfo = concatBytes(utf8(INFO_AEAD), invite.conv_id);
|
|
179
|
+
const aeadKey = hkdfExpand(rootKey, aeadInfo, 32);
|
|
180
|
+
const nonceInfo = concatBytes(utf8(INFO_NONCE), invite.conv_id);
|
|
181
|
+
const nonceKey = hkdfExpand(rootKey, nonceInfo, 32);
|
|
182
|
+
return { rootKey, aeadKey, nonceKey, convId: invite.conv_id };
|
|
183
|
+
}
|
|
184
|
+
/** Derive nonce for a message: Trunc24(HMAC-SHA-256(nonceKey, msgId)) */
|
|
185
|
+
export function deriveNonce(nonceKey, msgId) {
|
|
186
|
+
const hmacResult = crypto.createHmac('sha256', nonceKey).update(msgId).digest();
|
|
187
|
+
return new Uint8Array(hmacResult.slice(0, 24));
|
|
188
|
+
}
|
|
189
|
+
/** Encrypt plaintext with XChaCha20-Poly1305 using conversation keys */
|
|
190
|
+
export async function qntmEncrypt(plaintext, keys, senderKeyId, seq, did) {
|
|
191
|
+
await sodium.ready;
|
|
192
|
+
const msgId = new Uint8Array(crypto.randomBytes(16));
|
|
193
|
+
const nonce = deriveNonce(keys.nonceKey, msgId);
|
|
194
|
+
const aad = keys.convId;
|
|
195
|
+
const ct = sodium.crypto_aead_xchacha20poly1305_ietf_encrypt(plaintext, aad, null, nonce, keys.aeadKey);
|
|
196
|
+
return {
|
|
197
|
+
v: 1,
|
|
198
|
+
conv: keys.convId,
|
|
199
|
+
sender: senderKeyId,
|
|
200
|
+
seq,
|
|
201
|
+
ts: Date.now(),
|
|
202
|
+
nonce,
|
|
203
|
+
ct: new Uint8Array(ct),
|
|
204
|
+
sig: msgId, // msg_id serves as signature placeholder in symmetric mode
|
|
205
|
+
aad,
|
|
206
|
+
...(did ? { did } : {}),
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
/** Decrypt a qntm envelope */
|
|
210
|
+
export async function qntmDecrypt(envelope, keys) {
|
|
211
|
+
await sodium.ready;
|
|
212
|
+
const nonce = deriveNonce(keys.nonceKey, envelope.sig); // sig holds msg_id in symmetric mode
|
|
213
|
+
return sodium.crypto_aead_xchacha20poly1305_ietf_decrypt(null, envelope.ct, envelope.aad, nonce, keys.aeadKey);
|
|
214
|
+
}
|
|
215
|
+
/** Serialize a qntm envelope to base64 for relay transport */
|
|
216
|
+
export function serializeEnvelope(envelope) {
|
|
217
|
+
const map = {
|
|
218
|
+
v: envelope.v,
|
|
219
|
+
conv: envelope.conv,
|
|
220
|
+
sender: envelope.sender,
|
|
221
|
+
seq: envelope.seq,
|
|
222
|
+
ts: envelope.ts,
|
|
223
|
+
nonce: envelope.nonce,
|
|
224
|
+
ct: envelope.ct,
|
|
225
|
+
sig: envelope.sig,
|
|
226
|
+
aad: envelope.aad,
|
|
227
|
+
};
|
|
228
|
+
if (envelope.did)
|
|
229
|
+
map.did = envelope.did;
|
|
230
|
+
const cborBytes = cborEncodeMap(map);
|
|
231
|
+
return base64Encode(cborBytes);
|
|
232
|
+
}
|
|
233
|
+
/** Build relay message payload */
|
|
234
|
+
export function buildRelayMessage(envelope) {
|
|
235
|
+
return {
|
|
236
|
+
conv_id: Buffer.from(envelope.conv).toString('hex'),
|
|
237
|
+
envelope_b64: serializeEnvelope(envelope),
|
|
238
|
+
};
|
|
239
|
+
}
|
|
240
|
+
/** Compute key ID: Trunc16(SHA-256(publicKey)) — matches qntm spec */
|
|
241
|
+
export function computeKeyId(publicKey) {
|
|
242
|
+
const hash = crypto.createHash('sha256').update(publicKey).digest();
|
|
243
|
+
return new Uint8Array(hash.slice(0, 16));
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* High-level: Encrypt any payload and prepare for qntm relay.
|
|
247
|
+
*
|
|
248
|
+
* @param payload - Bytes to encrypt (e.g., serialized SignedExecutionEnvelope)
|
|
249
|
+
* @param inviteToken - Base64url-encoded qntm invite token
|
|
250
|
+
* @param senderPublicKey - Ed25519 public key of the sender (for key ID)
|
|
251
|
+
* @param seq - Message sequence number
|
|
252
|
+
* @param did - Optional DID to include in envelope (e.g., did:aps:z... or did:agentid:...)
|
|
253
|
+
* @returns Relay-ready message payload
|
|
254
|
+
*/
|
|
255
|
+
export async function encryptForRelay(payload, inviteToken, senderPublicKey, seq = 0, did) {
|
|
256
|
+
const invite = decodeQntmInvite(inviteToken);
|
|
257
|
+
const keys = deriveQntmKeys(invite);
|
|
258
|
+
const keyId = computeKeyId(senderPublicKey);
|
|
259
|
+
const envelope = await qntmEncrypt(payload, keys, keyId, seq, did);
|
|
260
|
+
return buildRelayMessage(envelope);
|
|
261
|
+
}
|
|
262
|
+
/**
|
|
263
|
+
* High-level: Decrypt a relay message.
|
|
264
|
+
*
|
|
265
|
+
* @param envelopeB64 - Base64-encoded CBOR envelope from relay
|
|
266
|
+
* @param inviteToken - Same invite token used for encryption
|
|
267
|
+
* @returns Decrypted plaintext bytes
|
|
268
|
+
*/
|
|
269
|
+
export async function decryptFromRelay(envelopeB64, inviteToken) {
|
|
270
|
+
const invite = decodeQntmInvite(inviteToken);
|
|
271
|
+
const keys = deriveQntmKeys(invite);
|
|
272
|
+
const cborBytes = new Uint8Array(Buffer.from(envelopeB64, 'base64'));
|
|
273
|
+
const decoded = cborDecodeMap(cborBytes);
|
|
274
|
+
const envelope = {
|
|
275
|
+
v: decoded.v,
|
|
276
|
+
conv: new Uint8Array(decoded.conv),
|
|
277
|
+
sender: new Uint8Array(decoded.sender),
|
|
278
|
+
seq: decoded.seq,
|
|
279
|
+
ts: decoded.ts,
|
|
280
|
+
nonce: new Uint8Array(decoded.nonce),
|
|
281
|
+
ct: new Uint8Array(decoded.ct),
|
|
282
|
+
sig: new Uint8Array(decoded.sig),
|
|
283
|
+
aad: new Uint8Array(decoded.aad),
|
|
284
|
+
...(decoded.did ? { did: decoded.did } : {}),
|
|
285
|
+
};
|
|
286
|
+
return qntmDecrypt(envelope, keys);
|
|
287
|
+
}
|
|
288
|
+
/**
|
|
289
|
+
* Extract the DID from a serialized relay envelope (without decrypting).
|
|
290
|
+
* Returns undefined if no DID is present.
|
|
291
|
+
*/
|
|
292
|
+
export function extractEnvelopeDid(envelopeB64) {
|
|
293
|
+
const cborBytes = new Uint8Array(Buffer.from(envelopeB64, 'base64'));
|
|
294
|
+
const decoded = cborDecodeMap(cborBytes);
|
|
295
|
+
return decoded.did || undefined;
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Verify that a DID matches the sender key ID in an envelope.
|
|
299
|
+
* Resolves the DID to an Ed25519 public key, computes Trunc16(SHA-256(key)),
|
|
300
|
+
* and compares with the envelope's sender field.
|
|
301
|
+
*
|
|
302
|
+
* @param envelopeB64 - Base64 CBOR envelope
|
|
303
|
+
* @param publicKeyHex - Ed25519 public key hex resolved from the DID
|
|
304
|
+
* @returns true if the key matches the sender key ID
|
|
305
|
+
*/
|
|
306
|
+
export function verifyEnvelopeDid(envelopeB64, publicKeyHex) {
|
|
307
|
+
const cborBytes = new Uint8Array(Buffer.from(envelopeB64, 'base64'));
|
|
308
|
+
const decoded = cborDecodeMap(cborBytes);
|
|
309
|
+
const senderKeyId = new Uint8Array(decoded.sender);
|
|
310
|
+
const keyFromDid = Buffer.from(publicKeyHex, 'hex');
|
|
311
|
+
const computedKeyId = computeKeyId(keyFromDid);
|
|
312
|
+
if (senderKeyId.length !== computedKeyId.length)
|
|
313
|
+
return false;
|
|
314
|
+
return senderKeyId.every((b, i) => b === computedKeyId[i]);
|
|
315
|
+
}
|
|
316
|
+
/** Default relay URL */
|
|
317
|
+
export const QNTM_RELAY_URL = 'https://inbox.qntm.corpo.llc';
|
|
318
|
+
//# sourceMappingURL=qntm-bridge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"qntm-bridge.js","sourceRoot":"","sources":["../../../src/interop/qntm-bridge.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
export interface ContributionRecord {
|
|
2
|
+
contributionId: string;
|
|
3
|
+
sourceReceiptId: string;
|
|
4
|
+
sourceDescriptor: string;
|
|
5
|
+
agentId: string;
|
|
6
|
+
agentPublicKey: string;
|
|
7
|
+
principalId: string;
|
|
8
|
+
accessCount: number;
|
|
9
|
+
firstAccessAt: string;
|
|
10
|
+
lastAccessAt: string;
|
|
11
|
+
purposes: string[];
|
|
12
|
+
accessMethods: string[];
|
|
13
|
+
totalDataBytes?: number;
|
|
14
|
+
compensationAccrued: CompensationAccrual;
|
|
15
|
+
receiptIds: string[];
|
|
16
|
+
}
|
|
17
|
+
export interface CompensationAccrual {
|
|
18
|
+
model: 'none' | 'attribution_only' | 'per_access' | 'revenue_share' | 'pool' | 'negotiate';
|
|
19
|
+
totalOwed: number;
|
|
20
|
+
currency: string;
|
|
21
|
+
accessesBilled: number;
|
|
22
|
+
lastComputedAt: string;
|
|
23
|
+
}
|
|
24
|
+
export interface ContributionQuery {
|
|
25
|
+
sourceReceiptId?: string;
|
|
26
|
+
agentId?: string;
|
|
27
|
+
principalId?: string;
|
|
28
|
+
purpose?: string;
|
|
29
|
+
after?: string;
|
|
30
|
+
before?: string;
|
|
31
|
+
minAccessCount?: number;
|
|
32
|
+
}
|
|
33
|
+
export interface SourceMetrics {
|
|
34
|
+
sourceReceiptId: string;
|
|
35
|
+
sourceDescriptor: string;
|
|
36
|
+
totalAccesses: number;
|
|
37
|
+
uniqueAgents: number;
|
|
38
|
+
uniquePrincipals: number;
|
|
39
|
+
purposeBreakdown: Record<string, number>;
|
|
40
|
+
compensationOwed: CompensationAccrual;
|
|
41
|
+
firstAccess: string;
|
|
42
|
+
lastAccess: string;
|
|
43
|
+
topAgents: Array<{
|
|
44
|
+
agentId: string;
|
|
45
|
+
accessCount: number;
|
|
46
|
+
}>;
|
|
47
|
+
}
|
|
48
|
+
export interface AgentDataFootprint {
|
|
49
|
+
agentId: string;
|
|
50
|
+
agentPublicKey: string;
|
|
51
|
+
principalId: string;
|
|
52
|
+
sourcesAccessed: Array<{
|
|
53
|
+
sourceReceiptId: string;
|
|
54
|
+
sourceDescriptor: string;
|
|
55
|
+
accessCount: number;
|
|
56
|
+
purposes: string[];
|
|
57
|
+
lastAccess: string;
|
|
58
|
+
compensationStatus: 'none' | 'attribution_only' | 'accruing' | 'settled';
|
|
59
|
+
}>;
|
|
60
|
+
totalSources: number;
|
|
61
|
+
totalAccesses: number;
|
|
62
|
+
totalCompensationAccrued: number;
|
|
63
|
+
currency: string;
|
|
64
|
+
}
|
|
65
|
+
export interface SettlementPeriod {
|
|
66
|
+
startDate: string;
|
|
67
|
+
endDate: string;
|
|
68
|
+
periodLabel: string;
|
|
69
|
+
}
|
|
70
|
+
export interface SettlementLineItem {
|
|
71
|
+
sourceReceiptId: string;
|
|
72
|
+
sourceDescriptor: string;
|
|
73
|
+
sourcePrincipalId: string | null;
|
|
74
|
+
payerPrincipalId: string;
|
|
75
|
+
accessCount: number;
|
|
76
|
+
compensationModel: 'none' | 'attribution_only' | 'per_access' | 'revenue_share' | 'pool' | 'negotiate';
|
|
77
|
+
amount: number;
|
|
78
|
+
currency: string;
|
|
79
|
+
receiptIds: string[];
|
|
80
|
+
period: SettlementPeriod;
|
|
81
|
+
}
|
|
82
|
+
export interface SettlementRecord {
|
|
83
|
+
settlementId: string;
|
|
84
|
+
period: SettlementPeriod;
|
|
85
|
+
generatedAt: string;
|
|
86
|
+
generatedBy: string;
|
|
87
|
+
lineItems: SettlementLineItem[];
|
|
88
|
+
totalAmount: number;
|
|
89
|
+
currency: string;
|
|
90
|
+
totalAccesses: number;
|
|
91
|
+
uniqueSources: number;
|
|
92
|
+
uniquePayers: number;
|
|
93
|
+
merkleRoot: string;
|
|
94
|
+
signature: string;
|
|
95
|
+
}
|
|
96
|
+
export interface SettlementVerification {
|
|
97
|
+
valid: boolean;
|
|
98
|
+
errors: string[];
|
|
99
|
+
signatureValid: boolean;
|
|
100
|
+
merkleValid: boolean;
|
|
101
|
+
lineItemsConsistent: boolean;
|
|
102
|
+
totalConsistent: boolean;
|
|
103
|
+
}
|
|
104
|
+
export interface DataComplianceReport {
|
|
105
|
+
reportId: string;
|
|
106
|
+
reportType: 'gdpr_article30' | 'euai_article10' | 'soc2_data' | 'general';
|
|
107
|
+
period: SettlementPeriod;
|
|
108
|
+
generatedAt: string;
|
|
109
|
+
agentId?: string;
|
|
110
|
+
principalId?: string;
|
|
111
|
+
summary: {
|
|
112
|
+
totalDataAccesses: number;
|
|
113
|
+
uniqueDataSources: number;
|
|
114
|
+
purposeBreakdown: Record<string, number>;
|
|
115
|
+
compensationSummary: {
|
|
116
|
+
total: number;
|
|
117
|
+
currency: string;
|
|
118
|
+
settled: number;
|
|
119
|
+
pending: number;
|
|
120
|
+
};
|
|
121
|
+
termsViolations: number;
|
|
122
|
+
advisoryWarnings: number;
|
|
123
|
+
};
|
|
124
|
+
accessDetails: Array<{
|
|
125
|
+
sourceDescriptor: string;
|
|
126
|
+
accessCount: number;
|
|
127
|
+
purposes: string[];
|
|
128
|
+
compensationModel: string;
|
|
129
|
+
termsCompliant: boolean;
|
|
130
|
+
}>;
|
|
131
|
+
signature: string;
|
|
132
|
+
}
|
|
133
|
+
//# sourceMappingURL=data-contribution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-contribution.d.ts","sourceRoot":"","sources":["../../../src/types/data-contribution.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// ══════════════════════════════════════
|
|
2
|
+
// Module 38: Data Contribution Ledger
|
|
3
|
+
// ══════════════════════════════════════
|
|
4
|
+
// Aggregation layer on top of Module 36A receipts.
|
|
5
|
+
// Tracks who accessed what data, how many times, and what's owed.
|
|
6
|
+
// Enables: "Show me every agent that used our dataset in March"
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=data-contribution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-contribution.js","sourceRoot":"","sources":["../../../src/types/data-contribution.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,sCAAsC;AACtC,yCAAyC;AACzC,mDAAmD;AACnD,kEAAkE;AAClE,gEAAgE"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agent-passport-system",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.20.0",
|
|
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": "npx 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/canonical.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 tests/intent.test.ts tests/reputation-authority.test.ts tests/gateway.test.ts tests/intent-network.test.ts tests/cross-chain.test.ts tests/encrypted-messaging.test.ts tests/obligations.test.ts tests/execution-envelope.test.ts tests/integration-modules.test.ts tests/adversarial-causal-chain.test.ts tests/adversarial-audit-v2.test.ts tests/gateway-reputation.test.ts tests/governance.test.ts tests/feasibility.test.ts tests/identity.test.ts tests/receipt-ledger.test.ts tests/precedent.test.ts tests/reanchor.test.ts tests/escalation.test.ts tests/gateway-governance.test.ts tests/gateway-escalation.test.ts tests/integration-invariants.test.ts tests/stress-all-features.test.ts tests/oracle-witness.test.ts tests/messaging-audit.test.ts tests/policy-conflict.test.ts tests/data-source.test.ts tests/decision-semantics.test.ts tests/interop-vectors.test.ts tests/v2-bridge.test.ts tests/v2-full.test.ts tests/v2-gaps.test.ts tests/v2-constitutional.test.ts tests/v2-constitutional-mini.test.ts tests/key-storage.test.ts",
|
|
19
|
+
"test": "npx 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/canonical.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 tests/intent.test.ts tests/reputation-authority.test.ts tests/gateway.test.ts tests/intent-network.test.ts tests/cross-chain.test.ts tests/encrypted-messaging.test.ts tests/obligations.test.ts tests/execution-envelope.test.ts tests/integration-modules.test.ts tests/adversarial-causal-chain.test.ts tests/adversarial-audit-v2.test.ts tests/gateway-reputation.test.ts tests/governance.test.ts tests/feasibility.test.ts tests/identity.test.ts tests/receipt-ledger.test.ts tests/precedent.test.ts tests/reanchor.test.ts tests/escalation.test.ts tests/gateway-governance.test.ts tests/gateway-escalation.test.ts tests/integration-invariants.test.ts tests/stress-all-features.test.ts tests/oracle-witness.test.ts tests/messaging-audit.test.ts tests/policy-conflict.test.ts tests/data-source.test.ts tests/decision-semantics.test.ts tests/interop-vectors.test.ts tests/v2-bridge.test.ts tests/v2-full.test.ts tests/v2-gaps.test.ts tests/v2-constitutional.test.ts tests/v2-constitutional-mini.test.ts tests/key-storage.test.ts tests/qntm-bridge.test.ts tests/data-contribution.test.ts",
|
|
20
20
|
"test:quick": "tsx --test tests/passport.test.ts",
|
|
21
21
|
"lint": "tsc --noEmit",
|
|
22
22
|
"clean": "rm -rf dist",
|