network-ai 5.9.1 → 5.10.1
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/INTEGRATION_GUIDE.md +1 -1
- package/README.md +2 -1
- package/SKILL.md +4 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -2
- package/dist/index.js.map +1 -1
- package/dist/lib/agent-runtime.d.ts +6 -0
- package/dist/lib/agent-runtime.d.ts.map +1 -1
- package/dist/lib/agent-runtime.js +13 -0
- package/dist/lib/agent-runtime.js.map +1 -1
- package/dist/lib/auth-guardian.d.ts +28 -0
- package/dist/lib/auth-guardian.d.ts.map +1 -1
- package/dist/lib/auth-guardian.js +48 -1
- package/dist/lib/auth-guardian.js.map +1 -1
- package/dist/lib/claim-verifier.d.ts +124 -0
- package/dist/lib/claim-verifier.d.ts.map +1 -0
- package/dist/lib/claim-verifier.js +173 -0
- package/dist/lib/claim-verifier.js.map +1 -0
- package/dist/lib/compliance-monitor.d.ts +1 -1
- package/dist/lib/compliance-monitor.d.ts.map +1 -1
- package/dist/lib/compliance-monitor.js.map +1 -1
- package/dist/security.d.ts +47 -0
- package/dist/security.d.ts.map +1 -1
- package/dist/security.js +38 -0
- package/dist/security.js.map +1 -1
- package/package.json +4 -4
- package/scripts/check_permission.py +4 -4
- package/types/agent-adapter.d.ts +2 -0
|
@@ -51,6 +51,8 @@ export declare class AuthGuardian {
|
|
|
51
51
|
private readonly hmacSecret;
|
|
52
52
|
private readonly ed25519PrivateKey;
|
|
53
53
|
private readonly ed25519PublicKey;
|
|
54
|
+
/** Per-agent consecutive unsupported-claim counters (ClaimVerifier integration) */
|
|
55
|
+
private _consecutiveClaims;
|
|
54
56
|
constructor(options?: {
|
|
55
57
|
trustLevels?: AgentTrustConfig[];
|
|
56
58
|
resourceProfiles?: Record<string, ResourceProfile>;
|
|
@@ -139,6 +141,32 @@ export declare class AuthGuardian {
|
|
|
139
141
|
private scoreJustification;
|
|
140
142
|
private assessRisk;
|
|
141
143
|
private generateGrantToken;
|
|
144
|
+
/**
|
|
145
|
+
* Record one unsupported-claim violation for an agent.
|
|
146
|
+
* After `threshold` consecutive violations the agent's trust is decremented
|
|
147
|
+
* by `decayStep`. Below 0.4 trust, requestPermission() will deny high-risk
|
|
148
|
+
* resources and the agent is effectively forced into ApprovalGate territory.
|
|
149
|
+
*
|
|
150
|
+
* Call this from ClaimVerifier after each UNSUPPORTED_CLAIM violation.
|
|
151
|
+
* The consecutive counter resets when a corroborated turn is recorded.
|
|
152
|
+
*
|
|
153
|
+
* @param agentId - The lying/hallucinating agent
|
|
154
|
+
* @param threshold - Consecutive misses before decay (default: 3)
|
|
155
|
+
* @param decayStep - Trust reduction per threshold breach (default: 0.1)
|
|
156
|
+
*/
|
|
157
|
+
recordClaimViolation(agentId: string, threshold?: number, decayStep?: number): void;
|
|
158
|
+
/**
|
|
159
|
+
* Reset the consecutive unsupported-claim counter for an agent.
|
|
160
|
+
* Call this when the agent produces a fully corroborated turn.
|
|
161
|
+
*/
|
|
162
|
+
resetClaimViolations(agentId: string): void;
|
|
163
|
+
/** Current consecutive unsupported-claim count for an agent. */
|
|
164
|
+
getClaimViolationCount(agentId: string): number;
|
|
165
|
+
/**
|
|
166
|
+
* Get the current trust level for an agent (0–1).
|
|
167
|
+
* Returns 0.5 (the default) for unknown agents.
|
|
168
|
+
*/
|
|
169
|
+
getTrustLevel(agentId: string): number;
|
|
142
170
|
/**
|
|
143
171
|
* Verify a grant token's cryptographic signature.
|
|
144
172
|
* For Ed25519 tokens, this can be done by any party holding the public key.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-guardian.d.ts","sourceRoot":"","sources":["../../lib/auth-guardian.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAYH,OAAO,KAAK,EACV,WAAW,EACX,eAAe,EACf,eAAe,EACf,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,YAAY,CAAuC;IAC3D,OAAO,CAAC,gBAAgB,CAAkC;IAC1D,OAAO,CAAC,iBAAiB,CAA4C;IACrE,OAAO,CAAC,gBAAgB,CAA2C;IACnE,OAAO,CAAC,QAAQ,CAAsE;IACtF,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA4B;IAC7D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IACrD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;
|
|
1
|
+
{"version":3,"file":"auth-guardian.d.ts","sourceRoot":"","sources":["../../lib/auth-guardian.ts"],"names":[],"mappings":"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"}
|
|
@@ -59,9 +59,11 @@ class AuthGuardian {
|
|
|
59
59
|
hmacSecret;
|
|
60
60
|
ed25519PrivateKey;
|
|
61
61
|
ed25519PublicKey;
|
|
62
|
+
/** Per-agent consecutive unsupported-claim counters (ClaimVerifier integration) */
|
|
63
|
+
_consecutiveClaims = new Map();
|
|
62
64
|
constructor(options) {
|
|
63
65
|
this.auditLogPath = options?.auditLogPath ?? orchestrator_types_1.CONFIG.auditLogPath;
|
|
64
|
-
this.trustConfigPath = options?.trustConfigPath ?? orchestrator_types_1.CONFIG.trustConfigPath;
|
|
66
|
+
this.trustConfigPath = (0, path_1.resolve)(options?.trustConfigPath ?? orchestrator_types_1.CONFIG.trustConfigPath);
|
|
65
67
|
this.signingAlgorithm = options?.algorithm ?? 'hmac-sha256';
|
|
66
68
|
if (this.signingAlgorithm === 'ed25519') {
|
|
67
69
|
const { publicKey, privateKey } = (0, crypto_1.generateKeyPairSync)('ed25519');
|
|
@@ -458,6 +460,51 @@ class AuthGuardian {
|
|
|
458
460
|
const sig = (0, crypto_1.createHmac)('sha256', this.hmacSecret).update(payload).digest('base64url');
|
|
459
461
|
return `${payload}.${sig}`;
|
|
460
462
|
}
|
|
463
|
+
// --------------------------------------------------------------------------
|
|
464
|
+
// Claim-verifier trust decay integration
|
|
465
|
+
// --------------------------------------------------------------------------
|
|
466
|
+
/**
|
|
467
|
+
* Record one unsupported-claim violation for an agent.
|
|
468
|
+
* After `threshold` consecutive violations the agent's trust is decremented
|
|
469
|
+
* by `decayStep`. Below 0.4 trust, requestPermission() will deny high-risk
|
|
470
|
+
* resources and the agent is effectively forced into ApprovalGate territory.
|
|
471
|
+
*
|
|
472
|
+
* Call this from ClaimVerifier after each UNSUPPORTED_CLAIM violation.
|
|
473
|
+
* The consecutive counter resets when a corroborated turn is recorded.
|
|
474
|
+
*
|
|
475
|
+
* @param agentId - The lying/hallucinating agent
|
|
476
|
+
* @param threshold - Consecutive misses before decay (default: 3)
|
|
477
|
+
* @param decayStep - Trust reduction per threshold breach (default: 0.1)
|
|
478
|
+
*/
|
|
479
|
+
recordClaimViolation(agentId, threshold = 3, decayStep = 0.1) {
|
|
480
|
+
const count = (this._consecutiveClaims.get(agentId) ?? 0) + 1;
|
|
481
|
+
this._consecutiveClaims.set(agentId, count);
|
|
482
|
+
if (count >= threshold) {
|
|
483
|
+
const current = this.agentTrustLevels.get(agentId) ?? 0.5;
|
|
484
|
+
const next = Math.max(0, +(current - decayStep).toFixed(4));
|
|
485
|
+
this.registerAgentTrust({ agentId, trustLevel: next });
|
|
486
|
+
this.log('trust_decay', { agentId, previousTrust: current, newTrust: next, consecutiveViolations: count });
|
|
487
|
+
this._consecutiveClaims.set(agentId, 0); // reset after decay fires
|
|
488
|
+
}
|
|
489
|
+
}
|
|
490
|
+
/**
|
|
491
|
+
* Reset the consecutive unsupported-claim counter for an agent.
|
|
492
|
+
* Call this when the agent produces a fully corroborated turn.
|
|
493
|
+
*/
|
|
494
|
+
resetClaimViolations(agentId) {
|
|
495
|
+
this._consecutiveClaims.set(agentId, 0);
|
|
496
|
+
}
|
|
497
|
+
/** Current consecutive unsupported-claim count for an agent. */
|
|
498
|
+
getClaimViolationCount(agentId) {
|
|
499
|
+
return this._consecutiveClaims.get(agentId) ?? 0;
|
|
500
|
+
}
|
|
501
|
+
/**
|
|
502
|
+
* Get the current trust level for an agent (0–1).
|
|
503
|
+
* Returns 0.5 (the default) for unknown agents.
|
|
504
|
+
*/
|
|
505
|
+
getTrustLevel(agentId) {
|
|
506
|
+
return this.agentTrustLevels.get(agentId) ?? 0.5;
|
|
507
|
+
}
|
|
461
508
|
/**
|
|
462
509
|
* Verify a grant token's cryptographic signature.
|
|
463
510
|
* For Ed25519 tokens, this can be done by any party holding the public key.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-guardian.js","sourceRoot":"","sources":["../../lib/auth-guardian.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"auth-guardian.js","sourceRoot":"","sources":["../../lib/auth-guardian.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ClaimVerifier — Tier 1 Agent Honesty / Lie Detector
|
|
3
|
+
*
|
|
4
|
+
* Reconciles agent-declared action manifests against runtime-witnessed
|
|
5
|
+
* audit entries and validates outcome-bound execution receipts.
|
|
6
|
+
*
|
|
7
|
+
* Design contract:
|
|
8
|
+
* - Outcome is read ONLY from inside the signed receipt — never from
|
|
9
|
+
* caller-supplied values. An agent cannot forge a receipt.
|
|
10
|
+
* - Undisclosed-action detection uses RuntimeAuditEntry (already exclusively
|
|
11
|
+
* agent-initiated by construction) — no extra tagging required.
|
|
12
|
+
* - Verification runs per-session (audit log is in-memory in AgentRuntime).
|
|
13
|
+
*
|
|
14
|
+
* Scope ceiling (documented, not hidden):
|
|
15
|
+
* - Catches fabricated actions and fabricated/misrepresented outcomes.
|
|
16
|
+
* - Does NOT catch misleading interpretation of true outcomes
|
|
17
|
+
* (exit 0 → "production-ready").
|
|
18
|
+
* - BYOC adapter network calls are unmediated (Tier 2 concern).
|
|
19
|
+
*
|
|
20
|
+
* @module claim-verifier
|
|
21
|
+
*/
|
|
22
|
+
import type { ExecutionReceipt } from '../security';
|
|
23
|
+
import { SecureTokenManager } from '../security';
|
|
24
|
+
import type { AgentRuntime, RuntimeAuditEntry } from './agent-runtime';
|
|
25
|
+
import type { ComplianceMonitor } from './compliance-monitor';
|
|
26
|
+
/**
|
|
27
|
+
* A single action claim declared by the agent in its structured manifest.
|
|
28
|
+
* Prose output is untrusted — claims must be declared here to be verified.
|
|
29
|
+
*/
|
|
30
|
+
export interface ActionManifest {
|
|
31
|
+
/** Action type: 'shell_execute' | 'file_write' */
|
|
32
|
+
action: string;
|
|
33
|
+
/** Command or file path acted on */
|
|
34
|
+
target: string;
|
|
35
|
+
/** Runtime-issued receipt returned to the agent alongside the result */
|
|
36
|
+
receipt: ExecutionReceipt;
|
|
37
|
+
}
|
|
38
|
+
/** Outcome of verifying a single manifest entry */
|
|
39
|
+
export interface VerificationOutcome {
|
|
40
|
+
manifest: ActionManifest;
|
|
41
|
+
/** Whether the receipt signature is valid and the audit entry is present */
|
|
42
|
+
corroborated: boolean;
|
|
43
|
+
reason?: string;
|
|
44
|
+
}
|
|
45
|
+
/** Full result of a verify() call */
|
|
46
|
+
export interface VerificationResult {
|
|
47
|
+
agentId: string;
|
|
48
|
+
windowMs: number;
|
|
49
|
+
outcomes: VerificationOutcome[];
|
|
50
|
+
/** Audit entries within the window that have no matching manifest (potential deception) */
|
|
51
|
+
undisclosedActions: RuntimeAuditEntry[];
|
|
52
|
+
/** Number of valid, corroborated claims */
|
|
53
|
+
corroboratedCount: number;
|
|
54
|
+
/** Number of claims that could not be validated */
|
|
55
|
+
unsupportedCount: number;
|
|
56
|
+
}
|
|
57
|
+
/** Options for ClaimVerifier */
|
|
58
|
+
export interface ClaimVerifierOptions {
|
|
59
|
+
/** AgentRuntime instance — provides the in-memory audit log */
|
|
60
|
+
runtime: AgentRuntime;
|
|
61
|
+
/** ComplianceMonitor to emit violations through (optional) */
|
|
62
|
+
monitor?: ComplianceMonitor;
|
|
63
|
+
/**
|
|
64
|
+
* SecureTokenManager used to validate receipts.
|
|
65
|
+
* Must be the SAME instance that issued the receipts (shared secret).
|
|
66
|
+
* If omitted, creates a new instance — only use when testing receipt
|
|
67
|
+
* generation and validation in isolation (shared instance recommended).
|
|
68
|
+
*/
|
|
69
|
+
receiptManager?: SecureTokenManager;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Reconciles agent action manifests against witnessed runtime audit entries.
|
|
73
|
+
*
|
|
74
|
+
* @example
|
|
75
|
+
* ```typescript
|
|
76
|
+
* const verifier = new ClaimVerifier({ runtime, monitor });
|
|
77
|
+
*
|
|
78
|
+
* // After an agent turn completes, verify its declared manifests:
|
|
79
|
+
* const result = verifier.verify(
|
|
80
|
+
* [{ action: 'shell_execute', target: 'npm test', receipt: shellResult.receipt! }],
|
|
81
|
+
* 'agent-1',
|
|
82
|
+
* 60_000, // look back 60 seconds
|
|
83
|
+
* );
|
|
84
|
+
*
|
|
85
|
+
* console.log('unsupported:', result.unsupportedCount);
|
|
86
|
+
* console.log('undisclosed:', result.undisclosedActions.length);
|
|
87
|
+
* ```
|
|
88
|
+
*/
|
|
89
|
+
export declare class ClaimVerifier {
|
|
90
|
+
private readonly runtime;
|
|
91
|
+
private readonly monitor;
|
|
92
|
+
private readonly receiptManager;
|
|
93
|
+
/** Per-agent consecutive unsupported-claim counters */
|
|
94
|
+
private consecutiveUnsupported;
|
|
95
|
+
constructor(opts: ClaimVerifierOptions);
|
|
96
|
+
/**
|
|
97
|
+
* Verify agent manifests against the runtime audit log.
|
|
98
|
+
*
|
|
99
|
+
* For each manifest entry:
|
|
100
|
+
* 1. Validate receipt signature (tamper detection).
|
|
101
|
+
* 2. Confirm agentId in receipt matches claimed agentId.
|
|
102
|
+
* 3. Find a matching audit entry within the window.
|
|
103
|
+
* → UNSUPPORTED_CLAIM if any step fails.
|
|
104
|
+
*
|
|
105
|
+
* Additionally, all agent-initiated audit entries within the window that
|
|
106
|
+
* have no matching manifest entry are reported as UNDISCLOSED_ACTION.
|
|
107
|
+
*
|
|
108
|
+
* @param manifests - Action manifests declared by the agent
|
|
109
|
+
* @param agentId - The agent making the claims
|
|
110
|
+
* @param windowMs - How far back (ms) to look in the audit log
|
|
111
|
+
*/
|
|
112
|
+
verify(manifests: ActionManifest[], agentId: string, windowMs: number): VerificationResult;
|
|
113
|
+
/**
|
|
114
|
+
* Return the current consecutive unsupported-claim count for an agent.
|
|
115
|
+
* Used by trust decay to check whether the threshold has been reached.
|
|
116
|
+
*/
|
|
117
|
+
getConsecutiveUnsupported(agentId: string): number;
|
|
118
|
+
/** Reset the consecutive counter (call after a corroborated turn). */
|
|
119
|
+
resetConsecutive(agentId: string): void;
|
|
120
|
+
private _verifyOne;
|
|
121
|
+
private _incrementConsecutive;
|
|
122
|
+
private _resetConsecutive;
|
|
123
|
+
}
|
|
124
|
+
//# sourceMappingURL=claim-verifier.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claim-verifier.d.ts","sourceRoot":"","sources":["../../lib/claim-verifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAM9D;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,kDAAkD;IAClD,MAAM,EAAE,MAAM,CAAC;IACf,oCAAoC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,OAAO,EAAE,gBAAgB,CAAC;CAC3B;AAED,mDAAmD;AACnD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,cAAc,CAAC;IACzB,4EAA4E;IAC5E,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qCAAqC;AACrC,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAChC,2FAA2F;IAC3F,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;IACxC,2CAA2C;IAC3C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mDAAmD;IACnD,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,gCAAgC;AAChC,MAAM,WAAW,oBAAoB;IACnC,+DAA+D;IAC/D,OAAO,EAAE,YAAY,CAAC;IACtB,8DAA8D;IAC9D,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,kBAAkB,CAAC;CACrC;AAMD;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgC;IACxD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqB;IAEpD,uDAAuD;IACvD,OAAO,CAAC,sBAAsB,CAAkC;gBAEpD,IAAI,EAAE,oBAAoB;IAMtC;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,SAAS,EAAE,cAAc,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,kBAAkB;IAiE1F;;;OAGG;IACH,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIlD,sEAAsE;IACtE,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAQvC,OAAO,CAAC,UAAU;IA8ClB,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,iBAAiB;CAG1B"}
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ClaimVerifier — Tier 1 Agent Honesty / Lie Detector
|
|
4
|
+
*
|
|
5
|
+
* Reconciles agent-declared action manifests against runtime-witnessed
|
|
6
|
+
* audit entries and validates outcome-bound execution receipts.
|
|
7
|
+
*
|
|
8
|
+
* Design contract:
|
|
9
|
+
* - Outcome is read ONLY from inside the signed receipt — never from
|
|
10
|
+
* caller-supplied values. An agent cannot forge a receipt.
|
|
11
|
+
* - Undisclosed-action detection uses RuntimeAuditEntry (already exclusively
|
|
12
|
+
* agent-initiated by construction) — no extra tagging required.
|
|
13
|
+
* - Verification runs per-session (audit log is in-memory in AgentRuntime).
|
|
14
|
+
*
|
|
15
|
+
* Scope ceiling (documented, not hidden):
|
|
16
|
+
* - Catches fabricated actions and fabricated/misrepresented outcomes.
|
|
17
|
+
* - Does NOT catch misleading interpretation of true outcomes
|
|
18
|
+
* (exit 0 → "production-ready").
|
|
19
|
+
* - BYOC adapter network calls are unmediated (Tier 2 concern).
|
|
20
|
+
*
|
|
21
|
+
* @module claim-verifier
|
|
22
|
+
*/
|
|
23
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
exports.ClaimVerifier = void 0;
|
|
25
|
+
const security_1 = require("../security");
|
|
26
|
+
// ============================================================================
|
|
27
|
+
// CLAIM VERIFIER
|
|
28
|
+
// ============================================================================
|
|
29
|
+
/**
|
|
30
|
+
* Reconciles agent action manifests against witnessed runtime audit entries.
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```typescript
|
|
34
|
+
* const verifier = new ClaimVerifier({ runtime, monitor });
|
|
35
|
+
*
|
|
36
|
+
* // After an agent turn completes, verify its declared manifests:
|
|
37
|
+
* const result = verifier.verify(
|
|
38
|
+
* [{ action: 'shell_execute', target: 'npm test', receipt: shellResult.receipt! }],
|
|
39
|
+
* 'agent-1',
|
|
40
|
+
* 60_000, // look back 60 seconds
|
|
41
|
+
* );
|
|
42
|
+
*
|
|
43
|
+
* console.log('unsupported:', result.unsupportedCount);
|
|
44
|
+
* console.log('undisclosed:', result.undisclosedActions.length);
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
class ClaimVerifier {
|
|
48
|
+
runtime;
|
|
49
|
+
monitor;
|
|
50
|
+
receiptManager;
|
|
51
|
+
/** Per-agent consecutive unsupported-claim counters */
|
|
52
|
+
consecutiveUnsupported = new Map();
|
|
53
|
+
constructor(opts) {
|
|
54
|
+
this.runtime = opts.runtime;
|
|
55
|
+
this.monitor = opts.monitor;
|
|
56
|
+
this.receiptManager = opts.receiptManager ?? new security_1.SecureTokenManager();
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Verify agent manifests against the runtime audit log.
|
|
60
|
+
*
|
|
61
|
+
* For each manifest entry:
|
|
62
|
+
* 1. Validate receipt signature (tamper detection).
|
|
63
|
+
* 2. Confirm agentId in receipt matches claimed agentId.
|
|
64
|
+
* 3. Find a matching audit entry within the window.
|
|
65
|
+
* → UNSUPPORTED_CLAIM if any step fails.
|
|
66
|
+
*
|
|
67
|
+
* Additionally, all agent-initiated audit entries within the window that
|
|
68
|
+
* have no matching manifest entry are reported as UNDISCLOSED_ACTION.
|
|
69
|
+
*
|
|
70
|
+
* @param manifests - Action manifests declared by the agent
|
|
71
|
+
* @param agentId - The agent making the claims
|
|
72
|
+
* @param windowMs - How far back (ms) to look in the audit log
|
|
73
|
+
*/
|
|
74
|
+
verify(manifests, agentId, windowMs) {
|
|
75
|
+
const now = Date.now();
|
|
76
|
+
const cutoff = now - windowMs;
|
|
77
|
+
// Scope audit entries to this agent within the window
|
|
78
|
+
const windowEntries = this.runtime.getAuditLog().filter(e => e.agentId === agentId && new Date(e.timestamp).getTime() >= cutoff);
|
|
79
|
+
const outcomes = [];
|
|
80
|
+
const matchedEntryTimestamps = new Set();
|
|
81
|
+
for (const manifest of manifests) {
|
|
82
|
+
const outcome = this._verifyOne(manifest, agentId, windowEntries, matchedEntryTimestamps);
|
|
83
|
+
outcomes.push(outcome);
|
|
84
|
+
if (!outcome.corroborated && this.monitor) {
|
|
85
|
+
this.monitor.recordAction({ agentId, action: manifest.action, tool: 'claim_verifier' });
|
|
86
|
+
// Emit via the public API — use a cast since emitViolation is the internal path
|
|
87
|
+
this.monitor._emit({
|
|
88
|
+
type: 'UNSUPPORTED_CLAIM',
|
|
89
|
+
agentId,
|
|
90
|
+
message: `Agent "${agentId}" declared action "${manifest.action}" on "${manifest.target}" but no valid receipt + audit entry found: ${outcome.reason}`,
|
|
91
|
+
severity: 'high',
|
|
92
|
+
metadata: { action: manifest.action, target: manifest.target, reason: outcome.reason },
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
// Undisclosed actions: audit entries with no matching manifest
|
|
97
|
+
const undisclosedActions = windowEntries.filter(e => !matchedEntryTimestamps.has(e.timestamp));
|
|
98
|
+
for (const entry of undisclosedActions) {
|
|
99
|
+
if (this.monitor) {
|
|
100
|
+
this.monitor._emit({
|
|
101
|
+
type: 'UNDISCLOSED_ACTION',
|
|
102
|
+
agentId,
|
|
103
|
+
message: `Agent "${agentId}" performed "${entry.action}" on "${entry.target}" without declaring it in the manifest`,
|
|
104
|
+
severity: 'high',
|
|
105
|
+
metadata: { action: entry.action, target: entry.target, result: entry.result },
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
const unsupportedCount = outcomes.filter(o => !o.corroborated).length;
|
|
110
|
+
const corroboratedCount = outcomes.length - unsupportedCount;
|
|
111
|
+
return {
|
|
112
|
+
agentId,
|
|
113
|
+
windowMs,
|
|
114
|
+
outcomes,
|
|
115
|
+
undisclosedActions,
|
|
116
|
+
corroboratedCount,
|
|
117
|
+
unsupportedCount,
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Return the current consecutive unsupported-claim count for an agent.
|
|
122
|
+
* Used by trust decay to check whether the threshold has been reached.
|
|
123
|
+
*/
|
|
124
|
+
getConsecutiveUnsupported(agentId) {
|
|
125
|
+
return this.consecutiveUnsupported.get(agentId) ?? 0;
|
|
126
|
+
}
|
|
127
|
+
/** Reset the consecutive counter (call after a corroborated turn). */
|
|
128
|
+
resetConsecutive(agentId) {
|
|
129
|
+
this.consecutiveUnsupported.set(agentId, 0);
|
|
130
|
+
}
|
|
131
|
+
// --------------------------------------------------------------------------
|
|
132
|
+
// Internal
|
|
133
|
+
// --------------------------------------------------------------------------
|
|
134
|
+
_verifyOne(manifest, agentId, windowEntries, matchedTimestamps) {
|
|
135
|
+
const { receipt } = manifest;
|
|
136
|
+
// 1. Validate receipt signature — outcome read only from inside the signed receipt
|
|
137
|
+
const validation = this.receiptManager.validateReceipt(receipt);
|
|
138
|
+
if (!validation.valid) {
|
|
139
|
+
this._incrementConsecutive(agentId);
|
|
140
|
+
return { manifest, corroborated: false, reason: `Invalid receipt: ${validation.reason}` };
|
|
141
|
+
}
|
|
142
|
+
// 2. Agent identity must match receipt — prevents cross-agent weaponisation
|
|
143
|
+
if (receipt.agentId !== agentId) {
|
|
144
|
+
this._incrementConsecutive(agentId);
|
|
145
|
+
return { manifest, corroborated: false, reason: `Receipt agentId "${receipt.agentId}" does not match claimed agentId "${agentId}"` };
|
|
146
|
+
}
|
|
147
|
+
// 3. Action and target must match (guards against receipt reuse)
|
|
148
|
+
if (receipt.action !== manifest.action || receipt.target !== manifest.target) {
|
|
149
|
+
this._incrementConsecutive(agentId);
|
|
150
|
+
return { manifest, corroborated: false, reason: `Receipt action/target mismatch` };
|
|
151
|
+
}
|
|
152
|
+
// 4. Find matching audit entry within the window
|
|
153
|
+
const match = windowEntries.find(e => e.agentId === agentId &&
|
|
154
|
+
e.action === manifest.action &&
|
|
155
|
+
e.target === manifest.target &&
|
|
156
|
+
!matchedTimestamps.has(e.timestamp));
|
|
157
|
+
if (!match) {
|
|
158
|
+
this._incrementConsecutive(agentId);
|
|
159
|
+
return { manifest, corroborated: false, reason: `No matching audit entry found in window` };
|
|
160
|
+
}
|
|
161
|
+
matchedTimestamps.add(match.timestamp);
|
|
162
|
+
this._resetConsecutive(agentId);
|
|
163
|
+
return { manifest, corroborated: true };
|
|
164
|
+
}
|
|
165
|
+
_incrementConsecutive(agentId) {
|
|
166
|
+
this.consecutiveUnsupported.set(agentId, (this.consecutiveUnsupported.get(agentId) ?? 0) + 1);
|
|
167
|
+
}
|
|
168
|
+
_resetConsecutive(agentId) {
|
|
169
|
+
this.consecutiveUnsupported.set(agentId, 0);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
exports.ClaimVerifier = ClaimVerifier;
|
|
173
|
+
//# sourceMappingURL=claim-verifier.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claim-verifier.js","sourceRoot":"","sources":["../../lib/claim-verifier.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
*/
|
|
12
12
|
import type { JourneyFSM } from './fsm-journey';
|
|
13
13
|
/** Categories of compliance violation. */
|
|
14
|
-
export type ViolationType = 'TURN_TAKING' | 'RESPONSE_TIMEOUT' | 'JOURNEY_TIMEOUT' | 'TOOL_ABUSE' | 'UNAUTHORIZED_ACTION' | 'RATE_LIMIT';
|
|
14
|
+
export type ViolationType = 'TURN_TAKING' | 'RESPONSE_TIMEOUT' | 'JOURNEY_TIMEOUT' | 'TOOL_ABUSE' | 'UNAUTHORIZED_ACTION' | 'RATE_LIMIT' | 'UNSUPPORTED_CLAIM' | 'UNDISCLOSED_ACTION';
|
|
15
15
|
/** A single compliance violation event. */
|
|
16
16
|
export interface ComplianceViolation {
|
|
17
17
|
id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compliance-monitor.d.ts","sourceRoot":"","sources":["../../lib/compliance-monitor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAMhD,0CAA0C;AAC1C,MAAM,MAAM,aAAa,GACrB,aAAa,GACb,kBAAkB,GAClB,iBAAiB,GACjB,YAAY,GACZ,qBAAqB,GACrB,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"compliance-monitor.d.ts","sourceRoot":"","sources":["../../lib/compliance-monitor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compliance-monitor.js","sourceRoot":"","sources":["../../lib/compliance-monitor.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;
|
|
1
|
+
{"version":3,"file":"compliance-monitor.js","sourceRoot":"","sources":["../../lib/compliance-monitor.ts"],"names":[],"mappings":"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"}
|