@kya-os/mcp-i-cloudflare 1.12.3 → 1.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -1
- package/dist/agent.d.ts +1 -1
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +23 -24
- package/dist/agent.js.map +1 -1
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +23 -9
- package/dist/app.js.map +1 -1
- package/dist/audit/assurance.d.ts +12 -0
- package/dist/audit/assurance.d.ts.map +1 -0
- package/dist/audit/assurance.js +21 -0
- package/dist/audit/assurance.js.map +1 -0
- package/dist/audit/deployment-binding.d.ts +513 -0
- package/dist/audit/deployment-binding.d.ts.map +1 -0
- package/dist/audit/deployment-binding.js +364 -0
- package/dist/audit/deployment-binding.js.map +1 -0
- package/dist/audit/durable-producer.d.ts +151 -0
- package/dist/audit/durable-producer.d.ts.map +1 -0
- package/dist/audit/durable-producer.js +953 -0
- package/dist/audit/durable-producer.js.map +1 -0
- package/dist/audit/verified-recorder-client.d.ts +34 -0
- package/dist/audit/verified-recorder-client.d.ts.map +1 -0
- package/dist/audit/verified-recorder-client.js +192 -0
- package/dist/audit/verified-recorder-client.js.map +1 -0
- package/dist/config.d.ts +8 -3
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +9 -3
- package/dist/config.js.map +1 -1
- package/dist/delegation-http/consent-anchor-bridge.d.ts +18 -1
- package/dist/delegation-http/consent-anchor-bridge.d.ts.map +1 -1
- package/dist/delegation-http/consent-anchor-bridge.js +18 -5
- package/dist/delegation-http/consent-anchor-bridge.js.map +1 -1
- package/dist/delegation-http/pickup-routes.d.ts.map +1 -1
- package/dist/delegation-http/pickup-routes.js +36 -3
- package/dist/delegation-http/pickup-routes.js.map +1 -1
- package/dist/delegation-http/well-known-capability.d.ts +2 -1
- package/dist/delegation-http/well-known-capability.d.ts.map +1 -1
- package/dist/delegation-http/well-known-capability.js +2 -1
- package/dist/delegation-http/well-known-capability.js.map +1 -1
- package/dist/helpers/env-mapper.d.ts.map +1 -1
- package/dist/helpers/env-mapper.js +27 -0
- package/dist/helpers/env-mapper.js.map +1 -1
- package/dist/index.d.ts +8 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14 -2
- package/dist/index.js.map +1 -1
- package/dist/runtime/invoke-tool-handler.d.ts +10 -0
- package/dist/runtime/invoke-tool-handler.d.ts.map +1 -0
- package/dist/runtime/invoke-tool-handler.js +11 -0
- package/dist/runtime/invoke-tool-handler.js.map +1 -0
- package/dist/runtime.d.ts +1 -6
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +72 -72
- package/dist/runtime.js.map +1 -1
- package/dist/services/consent-audit.service.d.ts +3 -10
- package/dist/services/consent-audit.service.d.ts.map +1 -1
- package/dist/services/consent-audit.service.js +44 -77
- package/dist/services/consent-audit.service.js.map +1 -1
- package/dist/services/consent-templates/template-renderer.d.ts.map +1 -1
- package/dist/services/consent-templates/template-renderer.js +6 -4
- package/dist/services/consent-templates/template-renderer.js.map +1 -1
- package/dist/services/consent.service.d.ts +17 -2
- package/dist/services/consent.service.d.ts.map +1 -1
- package/dist/services/consent.service.js +53 -30
- package/dist/services/consent.service.js.map +1 -1
- package/dist/services/proof.service.d.ts.map +1 -1
- package/dist/services/proof.service.js +20 -4
- package/dist/services/proof.service.js.map +1 -1
- package/dist/services/vault-resolver.d.ts +0 -8
- package/dist/services/vault-resolver.d.ts.map +1 -1
- package/dist/services/vault-resolver.js +0 -22
- package/dist/services/vault-resolver.js.map +1 -1
- package/dist/types.d.ts +19 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +7 -5
- package/dist/runtime/audit-logger.d.ts +0 -96
- package/dist/runtime/audit-logger.d.ts.map +0 -1
- package/dist/runtime/audit-logger.js +0 -276
- package/dist/runtime/audit-logger.js.map +0 -1
package/dist/runtime.js
CHANGED
|
@@ -12,15 +12,14 @@ import { MCPIRuntimeBase, ToolProtectionService, } from "@kya-os/mcp-i-runtime";
|
|
|
12
12
|
import { CloudflareProofGenerator } from "./proof-generator";
|
|
13
13
|
import { KVToolProtectionCache, } from "./cache/kv-tool-protection-cache";
|
|
14
14
|
import { ProofService } from "./services/proof.service";
|
|
15
|
-
import { CloudflareAuditLogger } from "./runtime/audit-logger";
|
|
16
15
|
export class CloudflareRuntime extends MCPIRuntimeBase {
|
|
17
16
|
proofGenerator;
|
|
18
17
|
lastDetachedProof;
|
|
19
18
|
lastToolCallContext;
|
|
19
|
+
proofByInvocation = new Map();
|
|
20
20
|
serverUrl; // Store server URL for consent URL building
|
|
21
21
|
proofService; // Proof submission service
|
|
22
22
|
// accessControlService is inherited from MCPIRuntimeBase (protected), no need to redeclare
|
|
23
|
-
auditLogger; // Audit logger instance
|
|
24
23
|
// proofVerifier is inherited from MCPIRuntimeBase (protected), no need to redeclare
|
|
25
24
|
/**
|
|
26
25
|
* Store pending proof submission promises for Cloudflare waitUntil()
|
|
@@ -54,12 +53,6 @@ export class CloudflareRuntime extends MCPIRuntimeBase {
|
|
|
54
53
|
// Protected members are accessible from subclasses in TypeScript
|
|
55
54
|
this.proofVerifier = verifier;
|
|
56
55
|
}
|
|
57
|
-
/**
|
|
58
|
-
* Get audit logger instance
|
|
59
|
-
*/
|
|
60
|
-
getAuditLogger() {
|
|
61
|
-
return this.auditLogger;
|
|
62
|
-
}
|
|
63
56
|
/**
|
|
64
57
|
* Get identity - uses cached identity from base class for performance
|
|
65
58
|
* The base class caches identity during initialize() to avoid repeated provider calls
|
|
@@ -72,21 +65,10 @@ export class CloudflareRuntime extends MCPIRuntimeBase {
|
|
|
72
65
|
*/
|
|
73
66
|
async initialize() {
|
|
74
67
|
await super.initialize();
|
|
75
|
-
// Initialize CloudflareAuditLogger if audit is enabled
|
|
76
|
-
// Uses Web Crypto API instead of Node.js crypto for Cloudflare Workers compatibility
|
|
77
|
-
if (this.config.audit?.enabled) {
|
|
78
|
-
this.auditLogger = new CloudflareAuditLogger({
|
|
79
|
-
enabled: true,
|
|
80
|
-
logFunction: this.config.audit.logFunction || console.log,
|
|
81
|
-
includePayloads: false,
|
|
82
|
-
// rotation is optional and may not be in the config type
|
|
83
|
-
rotation: this.config.audit.rotation,
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
68
|
// Initialize CloudflareProofGenerator with identity
|
|
87
69
|
const identity = await this.getIdentity();
|
|
88
70
|
this.proofGenerator = new CloudflareProofGenerator(identity);
|
|
89
|
-
if (this.config.
|
|
71
|
+
if (this.config.environment === "development") {
|
|
90
72
|
console.error("[MCP-I] CloudflareRuntime initialized with CloudflareProofGenerator");
|
|
91
73
|
console.error("[MCP-I] DID:", identity.did);
|
|
92
74
|
}
|
|
@@ -140,7 +122,7 @@ export class CloudflareRuntime extends MCPIRuntimeBase {
|
|
|
140
122
|
else if (session?.toolName) {
|
|
141
123
|
scopeId = `${session.toolName}:execute`;
|
|
142
124
|
}
|
|
143
|
-
if (this.config.
|
|
125
|
+
if (this.config.environment === "development" && scopeId) {
|
|
144
126
|
console.error(`[MCP-I] Proof scopeId for tool "${session.toolName}": ${scopeId}`);
|
|
145
127
|
}
|
|
146
128
|
// ✅ Generate full JWS proof WITH scopeId using CloudflareProofGenerator
|
|
@@ -148,8 +130,16 @@ export class CloudflareRuntime extends MCPIRuntimeBase {
|
|
|
148
130
|
scopeId, // ← ADDED: Pass scopeId for tool auto-discovery
|
|
149
131
|
clientDid: session.clientDid, // ← ADDED: Pass clientDid from session
|
|
150
132
|
});
|
|
151
|
-
//
|
|
133
|
+
// Keep the legacy latest-value accessor for compatibility, but route the
|
|
134
|
+
// active request through an invocation-keyed map so concurrent calls never
|
|
135
|
+
// submit or attach another request's proof.
|
|
152
136
|
this.lastDetachedProof = detachedProof;
|
|
137
|
+
const auditInvocationId = typeof session.auditInvocationId === "string"
|
|
138
|
+
? session.auditInvocationId
|
|
139
|
+
: undefined;
|
|
140
|
+
if (auditInvocationId) {
|
|
141
|
+
this.proofByInvocation.set(auditInvocationId, detachedProof);
|
|
142
|
+
}
|
|
153
143
|
// ✅ Store tool call context for AgentShield dashboard
|
|
154
144
|
this.lastToolCallContext = {
|
|
155
145
|
tool: session.toolName || "unknown",
|
|
@@ -158,7 +148,7 @@ export class CloudflareRuntime extends MCPIRuntimeBase {
|
|
|
158
148
|
scopeId: scopeId || "unknown",
|
|
159
149
|
userId: session.userId, // Optional user identifier
|
|
160
150
|
};
|
|
161
|
-
if (this.config.
|
|
151
|
+
if (this.config.environment === "development") {
|
|
162
152
|
console.error("[MCP-I] Proof generated:", {
|
|
163
153
|
did: detachedProof.meta.did,
|
|
164
154
|
sessionId: detachedProof.meta.sessionId,
|
|
@@ -184,6 +174,9 @@ export class CloudflareRuntime extends MCPIRuntimeBase {
|
|
|
184
174
|
* Note: Creates a new session object to avoid mutating the input session.
|
|
185
175
|
*/
|
|
186
176
|
async processToolCall(toolName, args, handler, session) {
|
|
177
|
+
const invocationId = typeof session?.auditInvocationId === "string"
|
|
178
|
+
? session.auditInvocationId
|
|
179
|
+
: crypto.randomUUID();
|
|
187
180
|
// Enhance session with tool metadata for proof generation
|
|
188
181
|
// Create a new session object to avoid mutating the input (immutability contract)
|
|
189
182
|
const enhancedSession = session
|
|
@@ -191,62 +184,69 @@ export class CloudflareRuntime extends MCPIRuntimeBase {
|
|
|
191
184
|
...session,
|
|
192
185
|
toolName,
|
|
193
186
|
toolParams: args,
|
|
187
|
+
auditInvocationId: invocationId,
|
|
194
188
|
}
|
|
195
189
|
: undefined;
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
190
|
+
try {
|
|
191
|
+
// Call parent implementation with enhanced session (generates proof)
|
|
192
|
+
const result = await super.processToolCall(toolName, args, handler, enhancedSession);
|
|
193
|
+
// Resolve only the proof created for this invocation. `lastDetachedProof`
|
|
194
|
+
// is retained solely as a legacy observational accessor.
|
|
195
|
+
const proof = this.proofByInvocation.get(invocationId);
|
|
196
|
+
// Automatically submit proof to AgentShield if available
|
|
197
|
+
// CRITICAL FIX: Await the proof submission directly instead of using ctx.waitUntil()
|
|
198
|
+
// In Durable Objects (McpAgent), ctx.waitUntil() doesn't reliably extend lifetime,
|
|
199
|
+
// causing proof submissions to be cancelled before completion.
|
|
200
|
+
if (proof && this.proofService && enhancedSession) {
|
|
201
|
+
try {
|
|
202
|
+
// Determine MCP server URL from session or stored serverUrl
|
|
203
|
+
// Ensure URL has protocol (https://) for AgentShield tool discovery
|
|
204
|
+
let mcpServerUrl = enhancedSession.serverOrigin || this.serverUrl;
|
|
205
|
+
if (mcpServerUrl &&
|
|
206
|
+
!mcpServerUrl.startsWith("http://") &&
|
|
207
|
+
!mcpServerUrl.startsWith("https://")) {
|
|
208
|
+
// Auto-add https:// if protocol missing
|
|
209
|
+
mcpServerUrl = `https://${mcpServerUrl}`;
|
|
210
|
+
}
|
|
211
|
+
// Submit proof synchronously (await to ensure completion)
|
|
212
|
+
// This adds ~200-400ms latency but guarantees proof submission
|
|
213
|
+
console.error("[CloudflareRuntime] Submitting proof synchronously...");
|
|
214
|
+
await this.proofService.submitProof(proof, {
|
|
215
|
+
session: {
|
|
216
|
+
id: enhancedSession.id || "unknown",
|
|
217
|
+
delegationId: enhancedSession.delegationId,
|
|
218
|
+
},
|
|
219
|
+
toolName,
|
|
220
|
+
args,
|
|
221
|
+
result,
|
|
222
|
+
mcpServerUrl,
|
|
223
|
+
});
|
|
224
|
+
console.error("[CloudflareRuntime] ✅ Proof submission completed");
|
|
225
|
+
}
|
|
226
|
+
catch (error) {
|
|
227
|
+
// Log error but don't fail the tool execution
|
|
228
|
+
console.error("[CloudflareRuntime] Failed to submit proof:", error);
|
|
214
229
|
}
|
|
215
|
-
// Submit proof synchronously (await to ensure completion)
|
|
216
|
-
// This adds ~200-400ms latency but guarantees proof submission
|
|
217
|
-
console.error("[CloudflareRuntime] Submitting proof synchronously...");
|
|
218
|
-
await this.proofService.submitProof(proof, {
|
|
219
|
-
session: {
|
|
220
|
-
id: enhancedSession.id || "unknown",
|
|
221
|
-
delegationId: enhancedSession.delegationId,
|
|
222
|
-
},
|
|
223
|
-
toolName,
|
|
224
|
-
args,
|
|
225
|
-
result,
|
|
226
|
-
mcpServerUrl,
|
|
227
|
-
});
|
|
228
|
-
console.error("[CloudflareRuntime] ✅ Proof submission completed");
|
|
229
230
|
}
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
231
|
+
// Attach proof to result for MCP Inspector (if result is an object)
|
|
232
|
+
if (proof &&
|
|
233
|
+
result &&
|
|
234
|
+
typeof result === "object" &&
|
|
235
|
+
!Array.isArray(result)) {
|
|
236
|
+
// Attach proof to _meta field for MCP Inspector compatibility
|
|
237
|
+
if (!result._meta) {
|
|
238
|
+
result._meta = {};
|
|
239
|
+
}
|
|
240
|
+
result._meta.proof = {
|
|
241
|
+
jws: proof.jws,
|
|
242
|
+
meta: proof.meta,
|
|
243
|
+
};
|
|
233
244
|
}
|
|
245
|
+
return result;
|
|
234
246
|
}
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
result &&
|
|
238
|
-
typeof result === "object" &&
|
|
239
|
-
!Array.isArray(result)) {
|
|
240
|
-
// Attach proof to _meta field for MCP Inspector compatibility
|
|
241
|
-
if (!result._meta) {
|
|
242
|
-
result._meta = {};
|
|
243
|
-
}
|
|
244
|
-
result._meta.proof = {
|
|
245
|
-
jws: proof.jws,
|
|
246
|
-
meta: proof.meta,
|
|
247
|
-
};
|
|
247
|
+
finally {
|
|
248
|
+
this.proofByInvocation.delete(invocationId);
|
|
248
249
|
}
|
|
249
|
-
return result;
|
|
250
250
|
}
|
|
251
251
|
/**
|
|
252
252
|
* Get the CloudflareProofGenerator instance (for advanced usage)
|
package/dist/runtime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,eAAe,EAEf,qBAAqB,GAItB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EACL,qBAAqB,GAEtB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Consent Audit Service
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Coordinates two independent consent lifecycle outputs:
|
|
5
|
+
* canonical audit trail events and proof submission.
|
|
6
6
|
*/
|
|
7
7
|
import type { ProofService } from "./proof.service";
|
|
8
|
-
import type { IAuditLogger } from "@kya-os/mcp-i-runtime/runtime/audit-logger";
|
|
9
8
|
import { CloudflareProofGenerator } from "../proof-generator";
|
|
10
9
|
import type { CloudflareRuntimeConfig } from "../config";
|
|
11
10
|
import type { CloudflareRuntime } from "../runtime";
|
|
12
11
|
export declare class ConsentAuditService {
|
|
13
12
|
private proofService;
|
|
14
|
-
private auditLogger;
|
|
15
13
|
private proofGenerator;
|
|
16
14
|
private config;
|
|
17
15
|
private runtime;
|
|
18
16
|
private logger;
|
|
19
|
-
constructor(proofService: ProofService,
|
|
20
|
-
/**
|
|
21
|
-
* Create a minimal SessionContext for audit logging
|
|
22
|
-
* Only sessionId and audience are used by logEvent, but TypeScript requires full SessionContext
|
|
23
|
-
*/
|
|
24
|
-
private createSessionContext;
|
|
17
|
+
constructor(proofService: ProofService, proofGenerator: CloudflareProofGenerator, config: CloudflareRuntimeConfig, runtime: CloudflareRuntime);
|
|
25
18
|
/**
|
|
26
19
|
* Log consent page view event
|
|
27
20
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consent-audit.service.d.ts","sourceRoot":"","sources":["../../src/services/consent-audit.service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,
|
|
1
|
+
{"version":3,"file":"consent-audit.service.d.ts","sourceRoot":"","sources":["../../src/services/consent-audit.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Consent Audit Service
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Coordinates two independent consent lifecycle outputs:
|
|
5
|
+
* canonical audit trail events and proof submission.
|
|
6
6
|
*/
|
|
7
7
|
export class ConsentAuditService {
|
|
8
8
|
proofService;
|
|
9
|
-
auditLogger;
|
|
10
9
|
proofGenerator;
|
|
11
10
|
config;
|
|
12
11
|
runtime;
|
|
@@ -16,45 +15,22 @@ export class ConsentAuditService {
|
|
|
16
15
|
// TODO: Send to error tracking service
|
|
17
16
|
},
|
|
18
17
|
};
|
|
19
|
-
constructor(proofService,
|
|
18
|
+
constructor(proofService, proofGenerator, config, runtime // REQUIRED for identity
|
|
20
19
|
) {
|
|
21
20
|
this.proofService = proofService;
|
|
22
|
-
this.auditLogger = auditLogger;
|
|
23
21
|
this.proofGenerator = proofGenerator;
|
|
24
22
|
this.config = config;
|
|
25
23
|
this.runtime = runtime;
|
|
26
24
|
}
|
|
27
|
-
/**
|
|
28
|
-
* Create a minimal SessionContext for audit logging
|
|
29
|
-
* Only sessionId and audience are used by logEvent, but TypeScript requires full SessionContext
|
|
30
|
-
*/
|
|
31
|
-
createSessionContext(sessionId) {
|
|
32
|
-
const now = Math.floor(Date.now() / 1000);
|
|
33
|
-
// Audience is typically from the handshake, but for consent events we use a default
|
|
34
|
-
const audience = "https://kya.vouched.id";
|
|
35
|
-
return {
|
|
36
|
-
sessionId,
|
|
37
|
-
audience,
|
|
38
|
-
nonce: "", // Not used by logEvent, but required by type
|
|
39
|
-
timestamp: now,
|
|
40
|
-
createdAt: now,
|
|
41
|
-
lastActivity: now,
|
|
42
|
-
ttlMinutes: 30,
|
|
43
|
-
identityState: "anonymous", // Phase 5: Default to anonymous
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
25
|
/**
|
|
47
26
|
* Log consent page view event
|
|
48
27
|
*/
|
|
49
28
|
async logConsentPageView(event) {
|
|
50
29
|
const timestamp = Math.floor(Date.now() / 1000); // Unix timestamp in seconds
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
identity,
|
|
56
|
-
session: this.createSessionContext(event.sessionId),
|
|
57
|
-
eventData: event,
|
|
30
|
+
await this.runtime.recordConsentAudit({
|
|
31
|
+
phase: "requested",
|
|
32
|
+
outcome: "succeeded",
|
|
33
|
+
sessionId: event.sessionId,
|
|
58
34
|
});
|
|
59
35
|
// Generate proof for dashboard
|
|
60
36
|
const proof = await this.generateConsentProof("consent:page_viewed", event, timestamp);
|
|
@@ -76,13 +52,12 @@ export class ConsentAuditService {
|
|
|
76
52
|
*/
|
|
77
53
|
async logConsentApproval(event) {
|
|
78
54
|
const timestamp = Math.floor(Date.now() / 1000); // Unix timestamp in seconds
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
eventData: event,
|
|
55
|
+
await this.runtime.recordConsentAudit({
|
|
56
|
+
phase: "approved",
|
|
57
|
+
outcome: "succeeded",
|
|
58
|
+
sessionId: event.sessionId,
|
|
59
|
+
userDid: event.userDid,
|
|
60
|
+
consentRef: event.delegationId,
|
|
86
61
|
});
|
|
87
62
|
// Generate proof
|
|
88
63
|
const proof = await this.generateConsentProof("consent:approved", event, timestamp);
|
|
@@ -108,13 +83,10 @@ export class ConsentAuditService {
|
|
|
108
83
|
*/
|
|
109
84
|
async logCredentialRequired(event) {
|
|
110
85
|
const timestamp = Math.floor(Date.now() / 1000); // Unix timestamp in seconds
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
identity,
|
|
116
|
-
session: this.createSessionContext(event.sessionId),
|
|
117
|
-
eventData: event,
|
|
86
|
+
await this.runtime.recordConsentAudit({
|
|
87
|
+
phase: "credential_required",
|
|
88
|
+
outcome: "challenged",
|
|
89
|
+
sessionId: event.sessionId,
|
|
118
90
|
});
|
|
119
91
|
// Generate proof
|
|
120
92
|
const proof = await this.generateConsentProof("consent:credential_required", event, timestamp);
|
|
@@ -143,13 +115,12 @@ export class ConsentAuditService {
|
|
|
143
115
|
*/
|
|
144
116
|
async logDelegationCreated(event) {
|
|
145
117
|
const timestamp = Math.floor(Date.now() / 1000); // Unix timestamp in seconds
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
eventData: event,
|
|
118
|
+
await this.runtime.recordDelegationAudit({
|
|
119
|
+
phase: "issued",
|
|
120
|
+
outcome: "succeeded",
|
|
121
|
+
sessionId: event.sessionId,
|
|
122
|
+
userDid: event.userDid,
|
|
123
|
+
delegationRef: event.delegationId,
|
|
153
124
|
});
|
|
154
125
|
// Generate proof
|
|
155
126
|
const proof = await this.generateConsentProof("consent:delegation_created", event, timestamp);
|
|
@@ -174,12 +145,11 @@ export class ConsentAuditService {
|
|
|
174
145
|
*/
|
|
175
146
|
async logCredentialAuthSuccess(event) {
|
|
176
147
|
const timestamp = Math.floor(Date.now() / 1000);
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
eventData: event,
|
|
148
|
+
await this.runtime.recordConsentAudit({
|
|
149
|
+
phase: "credential_verified",
|
|
150
|
+
outcome: "succeeded",
|
|
151
|
+
sessionId: event.sessionId,
|
|
152
|
+
userDid: event.userDid,
|
|
183
153
|
});
|
|
184
154
|
const proof = await this.generateConsentProof("auth:credential_success", event, timestamp);
|
|
185
155
|
await this.proofService.submitProof(proof, {
|
|
@@ -203,12 +173,11 @@ export class ConsentAuditService {
|
|
|
203
173
|
*/
|
|
204
174
|
async logCredentialAuthFailed(event) {
|
|
205
175
|
const timestamp = Math.floor(Date.now() / 1000);
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
eventData: event,
|
|
176
|
+
await this.runtime.recordConsentAudit({
|
|
177
|
+
phase: "credential_failed",
|
|
178
|
+
outcome: "failed",
|
|
179
|
+
sessionId: event.sessionId,
|
|
180
|
+
reasonCode: "CREDENTIAL_AUTH_FAILED",
|
|
212
181
|
});
|
|
213
182
|
const proof = await this.generateConsentProof("auth:credential_failed", event, timestamp);
|
|
214
183
|
await this.proofService.submitProof(proof, {
|
|
@@ -230,12 +199,11 @@ export class ConsentAuditService {
|
|
|
230
199
|
*/
|
|
231
200
|
async logOAuthSuccess(event) {
|
|
232
201
|
const timestamp = Math.floor(Date.now() / 1000);
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
eventData: event,
|
|
202
|
+
await this.runtime.recordConsentAudit({
|
|
203
|
+
phase: "credential_verified",
|
|
204
|
+
outcome: "succeeded",
|
|
205
|
+
sessionId: event.sessionId,
|
|
206
|
+
userDid: event.userDid,
|
|
239
207
|
});
|
|
240
208
|
const proof = await this.generateConsentProof("auth:oauth_success", event, timestamp);
|
|
241
209
|
await this.proofService.submitProof(proof, {
|
|
@@ -259,12 +227,11 @@ export class ConsentAuditService {
|
|
|
259
227
|
*/
|
|
260
228
|
async logOAuthFailed(event) {
|
|
261
229
|
const timestamp = Math.floor(Date.now() / 1000);
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
eventData: event,
|
|
230
|
+
await this.runtime.recordConsentAudit({
|
|
231
|
+
phase: "credential_failed",
|
|
232
|
+
outcome: "failed",
|
|
233
|
+
sessionId: event.sessionId,
|
|
234
|
+
reasonCode: "OAUTH_FAILED",
|
|
268
235
|
});
|
|
269
236
|
const proof = await this.generateConsentProof("auth:oauth_failed", event, timestamp);
|
|
270
237
|
await this.proofService.submitProof(proof, {
|
|
@@ -354,7 +321,7 @@ export class ConsentAuditService {
|
|
|
354
321
|
this.logger.error("Failed to get server identity", {
|
|
355
322
|
error: error instanceof Error ? error.message : String(error),
|
|
356
323
|
});
|
|
357
|
-
throw new Error("Server identity required for consent
|
|
324
|
+
throw new Error("Server identity required for consent proof generation");
|
|
358
325
|
}
|
|
359
326
|
}
|
|
360
327
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consent-audit.service.js","sourceRoot":"","sources":["../../src/services/consent-audit.service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"consent-audit.service.js","sourceRoot":"","sources":["../../src/services/consent-audit.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template-renderer.d.ts","sourceRoot":"","sources":["../../../src/services/consent-templates/template-renderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAYH,OAAO,KAAK,EACV,iBAAiB,EACjB,aAAa,EACd,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,
|
|
1
|
+
{"version":3,"file":"template-renderer.d.ts","sourceRoot":"","sources":["../../../src/services/consent-templates/template-renderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAYH,OAAO,KAAK,EACV,iBAAiB,EACjB,aAAa,EACd,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAKL,KAAK,SAAS,EACd,KAAK,iBAAiB,EACvB,MAAM,iBAAiB,CAAC;AAUzB;;;GAGG;AACH,KAAK,kBAAkB,GAAG,iBAAiB,GAAG;IAC5C,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,EAAE,CAAC,EAAE,SAAS,CAAC;IACf,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,YAAY,CAAC,EAAE,OAAO,2BAA2B,EAAE,eAAe,EAAE,CAAC;IACrE,aAAa,CAAC,EAAE,OAAO,2BAA2B,EAAE,aAAa,CAAC;IAClE,YAAY,CAAC,EAAE,OAAO,2BAA2B,EAAE,YAAY,CAAC;IAChE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,2BAA2B,EAAE,oBAAoB,CAAC;CACzE,CAAC;AAEF;;;;;;;;;GASG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,UAAU,CAAS;gBAEf,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;IAK/D;;;;;;;;;OASG;IACH,MAAM,CACJ,MAAM,EAAE,kBAAkB,EAC1B,aAAa,CAAC,EAAE,aAAa,GAC5B,MAAM;IAoCT;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,SAAS;IAiGjB;;;;;;;;;OASG;IACH,oBAAoB,CAClB,MAAM,EAAE,kBAAkB,EAC1B,gBAAgB,EAAE,wBAAwB,EAC1C,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,iBAAiB,GAAE,MAAmB,GACrC,MAAM;IA+BT;;;;;;;;;OASG;IACH,OAAO,CAAC,uBAAuB;IAuD/B;;;;;;OAMG;IACH,aAAa,CAAC,OAAO,EAAE;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,GAAG,MAAM;IAIV;;;;;;;OAOG;IACH,iBAAiB,CACf,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,OAAO,GAClB,MAAM;IAsDT;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA2B3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAqC1B;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,CAAC,EAAE;IAC/C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,gBAAgB,CAEnB"}
|
|
@@ -10,12 +10,14 @@
|
|
|
10
10
|
* @module consent-templates/template-renderer
|
|
11
11
|
*/
|
|
12
12
|
import { renderConsentPage, renderOAuthConsentPage, detectAuthMode, } from "./registry";
|
|
13
|
-
import { generateConsentShell, } from "@kya-os/consent";
|
|
13
|
+
import { generateConsentShell, CONSENT_BUNDLE_PATH, } from "@kya-os/consent";
|
|
14
14
|
/**
|
|
15
|
-
* Default bundle path
|
|
16
|
-
*
|
|
15
|
+
* Default bundle path — the content-addressed path @kya-os/consent is served from.
|
|
16
|
+
* Sourced from the package so the emitted <script src> and the route that serves it
|
|
17
|
+
* cannot drift; a hardcoded literal here would 404 the page's own component on the
|
|
18
|
+
* next bundle build.
|
|
17
19
|
*/
|
|
18
|
-
const DEFAULT_BUNDLE_PATH =
|
|
20
|
+
const DEFAULT_BUNDLE_PATH = CONSENT_BUNDLE_PATH;
|
|
19
21
|
/**
|
|
20
22
|
* Template-based consent page renderer.
|
|
21
23
|
*
|