@agentguard-run/spend 0.15.0 → 0.15.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/dist/frameworks/hermes-kanban.d.ts +10 -2
- package/dist/frameworks/hermes-kanban.d.ts.map +1 -1
- package/dist/frameworks/hermes-kanban.js +55 -9
- package/dist/frameworks/hermes-kanban.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -9
- package/dist/index.js.map +1 -1
- package/dist/telemetry.js +1 -1
- package/package.json +1 -1
- package/src/frameworks/hermes-kanban.ts +67 -8
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,14 @@
|
|
|
1
|
+
## 0.15.2
|
|
2
|
+
|
|
3
|
+
- Enhanced the Hermes Kanban adapter with Tony-style state vocabulary, signed workspace provenance, hashed board scope metadata, and signed revoke receipts that assert zero spend after reclaim.
|
|
4
|
+
- Added a lightweight task path for low-cost read-only work so trivial tasks get caps and receipts without Reviewer Cascade overhead.
|
|
5
|
+
- Added TypeScript and Python parity tests for revoke receipts, workspace provenance tamper detection, and the lightweight path.
|
|
6
|
+
|
|
7
|
+
## 0.15.1
|
|
8
|
+
|
|
9
|
+
- Removed import-time `sdk_init` telemetry from package entry points. Telemetry remains opt-in and now fires lazily when `SpendGuard` is constructed.
|
|
10
|
+
- Added lazy-import regression tests so root SDK and Operating Pack imports make zero HTTP calls and open zero network sockets even when telemetry is enabled.
|
|
11
|
+
|
|
1
12
|
## 0.15.0
|
|
2
13
|
|
|
3
14
|
- Added the Agent Operating Pack for law: bundled AGENTS.md guardrails, five local skills, source-of-truth layout, DIY checklist, and counsel-review-pending marker.
|
|
@@ -2,7 +2,8 @@ import { verifyReceiptDag, type ReceiptCapabilityLevel, type ReceiptDagEnvelope,
|
|
|
2
2
|
import { type SpendGuardConfig } from '../spend-guard';
|
|
3
3
|
import type { Provider, SignedDecisionLogEntry, SpendDecision, SpendPolicy, SpendScope } from '../types';
|
|
4
4
|
export type HermesKanbanProfile = 'researcher' | 'writer' | 'reviewer' | 'director' | 'orchestrator' | string;
|
|
5
|
-
export type HermesKanbanTaskState = '
|
|
5
|
+
export type HermesKanbanTaskState = 'triage' | 'blocked' | 'scheduled' | 'running' | 'complete' | 'revoked';
|
|
6
|
+
export type HermesKanbanGovernanceMode = 'lightweight' | 'full';
|
|
6
7
|
export interface HermesKanbanProfilePolicy {
|
|
7
8
|
capability: ReceiptCapabilityLevel;
|
|
8
9
|
toolAllowlist?: string[];
|
|
@@ -16,6 +17,8 @@ export interface HermesKanbanAdapterOptions {
|
|
|
16
17
|
defaultModel?: string;
|
|
17
18
|
defaultCapCents?: number;
|
|
18
19
|
runtimeBudgetCentsPerMinute?: number;
|
|
20
|
+
lightweightThresholdCents?: number;
|
|
21
|
+
lightweightCapabilityCeiling?: ReceiptCapabilityLevel;
|
|
19
22
|
profileMap?: Record<string, HermesKanbanProfilePolicy>;
|
|
20
23
|
reviewerCascade?: {
|
|
21
24
|
enabled?: boolean;
|
|
@@ -31,6 +34,7 @@ export interface HermesKanbanTaskInput {
|
|
|
31
34
|
boardSlug: string;
|
|
32
35
|
profile: HermesKanbanProfile;
|
|
33
36
|
parentTaskIds?: string[];
|
|
37
|
+
workspacePath?: string;
|
|
34
38
|
maxRuntimeMinutes?: number;
|
|
35
39
|
maxRuntimeMs?: number;
|
|
36
40
|
metadata?: Record<string, unknown>;
|
|
@@ -47,6 +51,8 @@ export interface HermesKanbanEnvelope {
|
|
|
47
51
|
capCents: number;
|
|
48
52
|
parentTaskIds: string[];
|
|
49
53
|
parentEntryHashes: string[];
|
|
54
|
+
workspacePath?: string;
|
|
55
|
+
governanceMode: HermesKanbanGovernanceMode;
|
|
50
56
|
scope: SpendScope;
|
|
51
57
|
builderCode?: string;
|
|
52
58
|
createdAt: string;
|
|
@@ -90,6 +96,7 @@ export interface HermesKanbanReceiptInput {
|
|
|
90
96
|
};
|
|
91
97
|
totalCostCents?: number;
|
|
92
98
|
metadata?: Record<string, unknown>;
|
|
99
|
+
workspacePath?: string;
|
|
93
100
|
highRiskClassifierScore?: number;
|
|
94
101
|
keywordRisk?: boolean;
|
|
95
102
|
reviewerVerdict?: 'drafter_only' | 'review_required' | 'approved' | 'rejected';
|
|
@@ -113,7 +120,7 @@ export declare class HermesKanbanAdapter {
|
|
|
113
120
|
governTask(input: HermesKanbanTaskInput): HermesKanbanEnvelope;
|
|
114
121
|
enforceProviderCall(input: HermesKanbanDispatchInput): Promise<HermesKanbanDispatchResult>;
|
|
115
122
|
guardCapability(input: HermesKanbanCapabilityInput): Promise<HermesKanbanCapabilityResult>;
|
|
116
|
-
revokeTask(taskId: string): Promise<HermesKanbanReceiptResult>;
|
|
123
|
+
revokeTask(taskId: string, reason?: string): Promise<HermesKanbanReceiptResult>;
|
|
117
124
|
emitTaskReceipt(input: HermesKanbanReceiptInput): Promise<HermesKanbanReceiptResult>;
|
|
118
125
|
getEnvelope(taskId: string): HermesKanbanEnvelope | null;
|
|
119
126
|
getReceiptDag(rootTaskId?: string): ReceiptDagEnvelope;
|
|
@@ -121,6 +128,7 @@ export declare class HermesKanbanAdapter {
|
|
|
121
128
|
verifyDag(publicKeyHex?: string): Promise<Awaited<ReturnType<typeof verifyReceiptDag>>>;
|
|
122
129
|
private signTaskNode;
|
|
123
130
|
private receiptResult;
|
|
131
|
+
private spendCentsSoFar;
|
|
124
132
|
private requireEnvelope;
|
|
125
133
|
private requireGuard;
|
|
126
134
|
private requireNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hermes-kanban.d.ts","sourceRoot":"","sources":["../../src/frameworks/hermes-kanban.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hermes-kanban.d.ts","sourceRoot":"","sources":["../../src/frameworks/hermes-kanban.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ exports.HermesKanbanAdapter = void 0;
|
|
|
4
4
|
exports.createHermesKanbanAdapter = createHermesKanbanAdapter;
|
|
5
5
|
exports.hermesKanbanSignerFingerprint = hermesKanbanSignerFingerprint;
|
|
6
6
|
const crypto_1 = require("crypto");
|
|
7
|
+
const path_1 = require("path");
|
|
7
8
|
const cost_table_1 = require("../cost-table");
|
|
8
9
|
const decision_log_1 = require("../decision-log");
|
|
9
10
|
const dag_1 = require("../receipts/dag");
|
|
@@ -40,6 +41,8 @@ const SAFE_METADATA_KEYS = new Set([
|
|
|
40
41
|
'ticket_id',
|
|
41
42
|
'token_count',
|
|
42
43
|
'workflow_id',
|
|
44
|
+
'workspace_hash',
|
|
45
|
+
'workspace_path',
|
|
43
46
|
]);
|
|
44
47
|
function createHermesKanbanAdapter(opts) {
|
|
45
48
|
return new HermesKanbanAdapter(opts);
|
|
@@ -69,12 +72,14 @@ class HermesKanbanAdapter {
|
|
|
69
72
|
taskHash,
|
|
70
73
|
boardHash,
|
|
71
74
|
profile: normalizeProfile(input.profile),
|
|
72
|
-
state: '
|
|
75
|
+
state: 'running',
|
|
73
76
|
capabilityCeiling: profilePolicy.capability,
|
|
74
77
|
toolAllowlist: [...(profilePolicy.toolAllowlist ?? [])],
|
|
75
78
|
capCents,
|
|
76
79
|
parentTaskIds: [...new Set(input.parentTaskIds ?? [])],
|
|
77
80
|
parentEntryHashes: [],
|
|
81
|
+
workspacePath: resolveWorkspacePath(input.workspacePath),
|
|
82
|
+
governanceMode: governanceModeFor(profilePolicy.capability, capCents, this.opts),
|
|
78
83
|
scope,
|
|
79
84
|
builderCode: safeBuilderCode(input.builderCode),
|
|
80
85
|
createdAt: new Date().toISOString(),
|
|
@@ -152,18 +157,22 @@ class HermesKanbanAdapter {
|
|
|
152
157
|
editedArgs: gate.editedArgs,
|
|
153
158
|
};
|
|
154
159
|
}
|
|
155
|
-
async revokeTask(taskId) {
|
|
160
|
+
async revokeTask(taskId, reason = 'stale_lock_reclaimed') {
|
|
156
161
|
const envelope = this.requireEnvelope(taskId);
|
|
157
162
|
if (envelope.state === 'revoked')
|
|
158
163
|
return this.receiptResult(envelope, this.requireNode(taskId));
|
|
159
164
|
envelope.state = 'revoked';
|
|
160
165
|
envelope.revokedAt = new Date().toISOString();
|
|
166
|
+
const finalSpendCents = this.spendCentsSoFar(taskId);
|
|
161
167
|
const node = await this.signTaskNode(envelope, {
|
|
162
168
|
event: 'revoked',
|
|
163
169
|
action: 'block',
|
|
164
170
|
blocked: true,
|
|
165
171
|
capability: envelope.capabilityCeiling,
|
|
166
172
|
trustScore: 0.7,
|
|
173
|
+
revocationReason: safeLabel(reason) ?? 'stale_lock_reclaimed',
|
|
174
|
+
finalSpendCents,
|
|
175
|
+
postRevocationSpendCents: 0,
|
|
167
176
|
});
|
|
168
177
|
this.nodesByTaskId.set(taskId, node);
|
|
169
178
|
this.nodes.push(node);
|
|
@@ -173,7 +182,9 @@ class HermesKanbanAdapter {
|
|
|
173
182
|
const envelope = this.requireEnvelope(input.taskId);
|
|
174
183
|
assertActive(envelope);
|
|
175
184
|
assertMetadataOnly(input.metadata ?? {});
|
|
176
|
-
|
|
185
|
+
if (input.workspacePath)
|
|
186
|
+
envelope.workspacePath = resolveWorkspacePath(input.workspacePath);
|
|
187
|
+
envelope.state = 'complete';
|
|
177
188
|
envelope.completedAt = new Date().toISOString();
|
|
178
189
|
const parentTaskIds = [...new Set(input.parentTaskIds ?? envelope.parentTaskIds)];
|
|
179
190
|
const parentNodes = parentTaskIds.map((id) => this.nodesByTaskId.get(id)).filter(Boolean);
|
|
@@ -241,6 +252,15 @@ class HermesKanbanAdapter {
|
|
|
241
252
|
dag: this.getReceiptDag(envelope.taskId),
|
|
242
253
|
};
|
|
243
254
|
}
|
|
255
|
+
spendCentsSoFar(taskId) {
|
|
256
|
+
let total = 0;
|
|
257
|
+
for (const node of this.nodes) {
|
|
258
|
+
const receipt = node.decision?.outcomeReceipt;
|
|
259
|
+
if (receipt?.taskId === taskId)
|
|
260
|
+
total += safeNonNegativeInteger(receipt.totalCostCents);
|
|
261
|
+
}
|
|
262
|
+
return total;
|
|
263
|
+
}
|
|
244
264
|
requireEnvelope(taskId) {
|
|
245
265
|
const envelope = this.envelopes.get(taskId);
|
|
246
266
|
if (!envelope)
|
|
@@ -287,6 +307,10 @@ function taskDecision(envelope, args, policy) {
|
|
|
287
307
|
parentTaskIds: [...envelope.parentTaskIds],
|
|
288
308
|
parentEntryHashes: parentNodes.map((node) => node.entryHash),
|
|
289
309
|
parentMsgHashes: parentNodes.map((node) => node.msgHash),
|
|
310
|
+
boardScopeHash: envelope.boardHash,
|
|
311
|
+
workspaceProvenance: envelope.workspacePath ? { type: 'directory', location: `dir:${envelope.workspacePath}` } : null,
|
|
312
|
+
governanceMode: envelope.governanceMode,
|
|
313
|
+
lightweight: envelope.governanceMode === 'lightweight',
|
|
290
314
|
modelIds: safeModelIds(args.modelIds ?? []),
|
|
291
315
|
inputTokens,
|
|
292
316
|
outputTokens,
|
|
@@ -295,6 +319,15 @@ function taskDecision(envelope, args, policy) {
|
|
|
295
319
|
};
|
|
296
320
|
if (args.reviewerCascade)
|
|
297
321
|
receipt.reviewerCascade = args.reviewerCascade;
|
|
322
|
+
if (args.event === 'revoked') {
|
|
323
|
+
receipt.revocation = {
|
|
324
|
+
reason: args.revocationReason ?? 'stale_lock_reclaimed',
|
|
325
|
+
finalSpendCents: safeNonNegativeInteger(args.finalSpendCents),
|
|
326
|
+
postRevocationSpendCents: safeNonNegativeInteger(args.postRevocationSpendCents),
|
|
327
|
+
closedAt: envelope.revokedAt ?? new Date().toISOString(),
|
|
328
|
+
assertion: 'no_spend_after_revoke',
|
|
329
|
+
};
|
|
330
|
+
}
|
|
298
331
|
const decision = {
|
|
299
332
|
decisionId: (0, crypto_1.randomUUID)(),
|
|
300
333
|
timestamp: new Date().toISOString(),
|
|
@@ -335,18 +368,31 @@ function buildReviewerCascadeReceipt(input, opts, triggers) {
|
|
|
335
368
|
};
|
|
336
369
|
}
|
|
337
370
|
function reviewerCascadeTriggers(envelope, input, opts) {
|
|
338
|
-
if (opts.reviewerCascade?.enabled === false)
|
|
371
|
+
if (opts.reviewerCascade?.enabled === false || envelope.governanceMode === 'lightweight')
|
|
339
372
|
return [];
|
|
340
373
|
const threshold = opts.reviewerCascade?.highRiskThreshold ?? 0.55;
|
|
341
374
|
const triggers = [];
|
|
342
|
-
if (envelope.profile === 'reviewer')
|
|
343
|
-
triggers.push('reviewer_profile');
|
|
344
375
|
if (typeof input.highRiskClassifierScore === 'number' && input.highRiskClassifierScore >= threshold)
|
|
345
376
|
triggers.push(`risk_score_above:${threshold}`);
|
|
346
377
|
if (input.keywordRisk === true)
|
|
347
378
|
triggers.push('keyword_prefilter');
|
|
348
379
|
return [...new Set(triggers)];
|
|
349
380
|
}
|
|
381
|
+
function governanceModeFor(capability, capCents, opts) {
|
|
382
|
+
const threshold = opts.lightweightThresholdCents ?? 5;
|
|
383
|
+
const ceiling = opts.lightweightCapabilityCeiling ?? 'READ_ONLY';
|
|
384
|
+
return CAPABILITY_RANK[capability] <= CAPABILITY_RANK[ceiling] && capCents <= threshold ? 'lightweight' : 'full';
|
|
385
|
+
}
|
|
386
|
+
function resolveWorkspacePath(value) {
|
|
387
|
+
if (typeof value !== 'string')
|
|
388
|
+
return undefined;
|
|
389
|
+
const trimmed = value.trim();
|
|
390
|
+
if (!trimmed)
|
|
391
|
+
return undefined;
|
|
392
|
+
if (trimmed.length > 1024 || /[\u0000-\u001f\u007f]/.test(trimmed))
|
|
393
|
+
throw new Error('Hermes Kanban workspacePath must be a metadata path');
|
|
394
|
+
return (0, path_1.resolve)(trimmed);
|
|
395
|
+
}
|
|
350
396
|
function capForTask(input, profilePolicy, opts) {
|
|
351
397
|
if (Number.isSafeInteger(profilePolicy.capCents) && profilePolicy.capCents >= 0)
|
|
352
398
|
return profilePolicy.capCents;
|
|
@@ -373,7 +419,7 @@ function spendCapabilityForReceiptCapability(capability) {
|
|
|
373
419
|
}
|
|
374
420
|
function assertTaskInput(input) {
|
|
375
421
|
assertPlainRecord(input, 'task');
|
|
376
|
-
const allowed = new Set(['taskId', 'boardSlug', 'profile', 'parentTaskIds', 'maxRuntimeMinutes', 'maxRuntimeMs', 'metadata', 'builderCode']);
|
|
422
|
+
const allowed = new Set(['taskId', 'boardSlug', 'profile', 'parentTaskIds', 'workspacePath', 'maxRuntimeMinutes', 'maxRuntimeMs', 'metadata', 'builderCode']);
|
|
377
423
|
for (const key of Object.keys(input)) {
|
|
378
424
|
if (!allowed.has(key))
|
|
379
425
|
throw new Error(`Hermes Kanban task input cannot include data-plane or unknown field: ${key}`);
|
|
@@ -413,8 +459,8 @@ function assertPlainRecord(value, name) {
|
|
|
413
459
|
function assertActive(envelope) {
|
|
414
460
|
if (envelope.state === 'revoked')
|
|
415
461
|
throw new spend_guard_1.AgentGuardBlockedError(blockedDecision(envelope, 'revoked'), envelope.scope);
|
|
416
|
-
if (envelope.state === '
|
|
417
|
-
throw new spend_guard_1.AgentGuardBlockedError(blockedDecision(envelope, '
|
|
462
|
+
if (envelope.state === 'complete')
|
|
463
|
+
throw new spend_guard_1.AgentGuardBlockedError(blockedDecision(envelope, 'complete'), envelope.scope);
|
|
418
464
|
}
|
|
419
465
|
function blockedDecision(envelope, state) {
|
|
420
466
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hermes-kanban.js","sourceRoot":"","sources":["../../src/frameworks/hermes-kanban.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hermes-kanban.js","sourceRoot":"","sources":["../../src/frameworks/hermes-kanban.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -33,7 +33,7 @@ export { withSpendGuardAnthropic, type AnthropicBindingOptions } from './binding
|
|
|
33
33
|
export { withSpendGuardBedrock, type BedrockBindingOptions } from './bindings/bedrock';
|
|
34
34
|
export { recommend, defaultKey, type ModelRouteRecommendation, type RecommendOptions } from './router';
|
|
35
35
|
export { DEFAULT_LOCALE, SUPPORTED_LOCALES, TRANSLATIONS, type SupportedLocale, resolveLocale, t, formatBlockedTrace, type BlockedTraceArgs, } from './i18n';
|
|
36
|
-
export declare const AGENTGUARD_SPEND_VERSION = "0.15.
|
|
36
|
+
export declare const AGENTGUARD_SPEND_VERSION = "0.15.2";
|
|
37
37
|
export declare const agentguard: {
|
|
38
38
|
workflow: typeof runWorkflow;
|
|
39
39
|
};
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -24,7 +24,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
24
24
|
exports.computeDagEntryHash = exports.compressReceiptDag = exports.receiptSchemaVersion = exports.isReceiptV3 = exports.assertReceiptV3 = exports.isOpenRouterHost = exports.clearManagedOpenRouterKeyCache = exports.fetchManagedOpenRouterKey = exports.modelCostFromOpenRouter = exports.persistOverrides = exports.syncPricingIntoCostTable = exports.getCachedCatalog = exports.fetchCatalog = exports.recordTelemetryEvent = exports.resetTelemetryInstallId = exports.disableTelemetry = exports.enableTelemetry = exports.telemetryStatus = exports.licenseKeyFingerprint = exports.clearConfiguredLicenseKey = exports.writeConfiguredLicenseKey = exports.readConfiguredLicenseKey = exports.validateAndRegisterLicense = exports.validateLicenseKey = exports.AgentGuardLicenseRequiredError = exports.InMemorySpendStore = exports.InMemoryDecisionLogStore = exports.GENESIS_PREVIOUS_HASH = exports.verifyChain = exports.verifyEntry = exports.signDecision = exports.computeSignerFingerprint = exports.computeEntryHash = exports.sha256Hex = exports.canonicalJson = exports.BUILT_IN_KEYWORD_WATCHLISTS = exports.findCustomKeywordWatchlists = exports.enforcePolicyLicenseGates = exports.adjustPolicyWindowSpend = exports.buildScopeKey = exports.evaluatePolicy = exports.knownModelCosts = exports.persistCostOverrides = exports.loadPersistedCostOverrides = exports.listCostOverrides = exports.inferProvider = exports.computeCallCents = exports.clearCostOverrides = exports.setCostOverride = exports.getModelCost = void 0;
|
|
25
25
|
exports.formatBlockedTrace = exports.t = exports.resolveLocale = exports.TRANSLATIONS = exports.SUPPORTED_LOCALES = exports.DEFAULT_LOCALE = exports.defaultKey = exports.recommend = exports.withSpendGuardBedrock = exports.withSpendGuardAnthropic = exports.AgentGuardBlockedError = exports.withSpendGuard = exports.SpendGuard = exports.writeAdvisorOutputs = exports.createAdvisorSessionLogger = exports.resolveAdvisorApiKey = exports.createAdvisorClient = exports.projectedSavings = exports.buildPolicyFromProfile = exports.buildBusinessProfile = exports.AdvisorConversation = exports.AgentGuardWorkflowStateError = exports.AgentGuardDurationCapError = exports.AgentGuardChainCorruptError = exports.AgentGuardBudgetCapError = exports.validateReceiptChain = exports.computeChainHash = exports.WorkflowContext = exports.workflow = exports.verifyConsentReceipt = exports.enforceCompliance = exports.AgentGuardConsentRequiredError = exports.AgentGuardComplianceError = exports.isForeignOriginModel = exports.inferCompliance = exports.inferHosting = exports.inferModelIdentity = exports.inferProviderRoute = exports.PROVIDER_REGISTRY = exports.captureProvenance = exports.verifyReceiptDag = exports.verifyInclusion = exports.signDagNode = exports.msgHashForDecision = exports.merkleRoot = exports.merkleInclusionProof = exports.gateCapability = exports.deriveTrustScore = exports.deriveCapability = exports.dagEnvelopeFromEntries = void 0;
|
|
26
26
|
exports.PATENT_NOTICE = exports.agentguard = exports.AGENTGUARD_SPEND_VERSION = void 0;
|
|
27
|
-
const telemetry_1 = require("./telemetry");
|
|
28
27
|
const context_1 = require("./workflow/context");
|
|
29
28
|
// Cost table
|
|
30
29
|
var cost_table_1 = require("./cost-table");
|
|
@@ -69,12 +68,12 @@ Object.defineProperty(exports, "writeConfiguredLicenseKey", { enumerable: true,
|
|
|
69
68
|
Object.defineProperty(exports, "clearConfiguredLicenseKey", { enumerable: true, get: function () { return license_1.clearConfiguredLicenseKey; } });
|
|
70
69
|
Object.defineProperty(exports, "licenseKeyFingerprint", { enumerable: true, get: function () { return license_1.licenseKeyFingerprint; } });
|
|
71
70
|
// Telemetry controls
|
|
72
|
-
var
|
|
73
|
-
Object.defineProperty(exports, "telemetryStatus", { enumerable: true, get: function () { return
|
|
74
|
-
Object.defineProperty(exports, "enableTelemetry", { enumerable: true, get: function () { return
|
|
75
|
-
Object.defineProperty(exports, "disableTelemetry", { enumerable: true, get: function () { return
|
|
76
|
-
Object.defineProperty(exports, "resetTelemetryInstallId", { enumerable: true, get: function () { return
|
|
77
|
-
Object.defineProperty(exports, "recordTelemetryEvent", { enumerable: true, get: function () { return
|
|
71
|
+
var telemetry_1 = require("./telemetry");
|
|
72
|
+
Object.defineProperty(exports, "telemetryStatus", { enumerable: true, get: function () { return telemetry_1.telemetryStatus; } });
|
|
73
|
+
Object.defineProperty(exports, "enableTelemetry", { enumerable: true, get: function () { return telemetry_1.enableTelemetry; } });
|
|
74
|
+
Object.defineProperty(exports, "disableTelemetry", { enumerable: true, get: function () { return telemetry_1.disableTelemetry; } });
|
|
75
|
+
Object.defineProperty(exports, "resetTelemetryInstallId", { enumerable: true, get: function () { return telemetry_1.resetTelemetryInstallId; } });
|
|
76
|
+
Object.defineProperty(exports, "recordTelemetryEvent", { enumerable: true, get: function () { return telemetry_1.recordTelemetryEvent; } });
|
|
78
77
|
// OpenRouter catalog
|
|
79
78
|
var openrouter_catalog_1 = require("./openrouter-catalog");
|
|
80
79
|
Object.defineProperty(exports, "fetchCatalog", { enumerable: true, get: function () { return openrouter_catalog_1.fetchCatalog; } });
|
|
@@ -161,7 +160,7 @@ Object.defineProperty(exports, "TRANSLATIONS", { enumerable: true, get: function
|
|
|
161
160
|
Object.defineProperty(exports, "resolveLocale", { enumerable: true, get: function () { return i18n_1.resolveLocale; } });
|
|
162
161
|
Object.defineProperty(exports, "t", { enumerable: true, get: function () { return i18n_1.t; } });
|
|
163
162
|
Object.defineProperty(exports, "formatBlockedTrace", { enumerable: true, get: function () { return i18n_1.formatBlockedTrace; } });
|
|
164
|
-
exports.AGENTGUARD_SPEND_VERSION = '0.15.
|
|
163
|
+
exports.AGENTGUARD_SPEND_VERSION = '0.15.2';
|
|
165
164
|
exports.agentguard = {
|
|
166
165
|
workflow: context_1.workflow,
|
|
167
166
|
};
|
|
@@ -169,7 +168,6 @@ exports.agentguard = {
|
|
|
169
168
|
exports.PATENT_NOTICE = 'Protected by U.S. patent-pending technology ' +
|
|
170
169
|
'(App. Nos. 63/983,615; 63/983,621; 63/983,843; 63/984,626; ' +
|
|
171
170
|
'64/071,781; 64/071,789). Additional patents pending.';
|
|
172
|
-
(0, telemetry_1.recordTelemetryEvent)('sdk_init');
|
|
173
171
|
__exportStar(require("./outcomes"), exports);
|
|
174
172
|
__exportStar(require("./verticals"), exports);
|
|
175
173
|
__exportStar(require("./governance"), exports);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;AAEH,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/telemetry.js
CHANGED
|
@@ -43,7 +43,7 @@ const https = __importStar(require("https"));
|
|
|
43
43
|
const os = __importStar(require("os"));
|
|
44
44
|
const path = __importStar(require("path"));
|
|
45
45
|
const crypto_1 = require("crypto");
|
|
46
|
-
const AGENTGUARD_SPEND_VERSION = '0.15.
|
|
46
|
+
const AGENTGUARD_SPEND_VERSION = '0.15.2';
|
|
47
47
|
const STATE_DIR = path.join(os.homedir(), '.agentguard');
|
|
48
48
|
const INSTALL_PATH = path.join(STATE_DIR, 'install.json');
|
|
49
49
|
const BEACON_URL = 'https://agentguard.run/api/beacon';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agentguard-run/spend",
|
|
3
|
-
"version": "0.15.
|
|
3
|
+
"version": "0.15.2",
|
|
4
4
|
"description": "All terminology and labels used in AgentGuard materials are descriptive of software functionality only, not legal definitions or guarantees of compliance. Terms like receipt, audit log, evidence, audit trail, and attestation refer solely to cryptographically-signed records produced by the software. Full functional-use disclaimer in README.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { randomUUID } from 'crypto';
|
|
2
|
+
import { resolve as resolvePath } from 'path';
|
|
2
3
|
import { inferProvider } from '../cost-table';
|
|
3
4
|
import { canonicalJson, computeSignerFingerprint, sha256Hex } from '../decision-log';
|
|
4
5
|
import { signDagNode, verifyReceiptDag, type ReceiptCapabilityLevel, type ReceiptDagEnvelope, type ReceiptDagNode } from '../receipts/dag';
|
|
@@ -7,7 +8,8 @@ import type { CallContext, CapabilityTier, Provider, SignedDecisionLogEntry, Spe
|
|
|
7
8
|
import { safeRequestShape } from './common';
|
|
8
9
|
|
|
9
10
|
export type HermesKanbanProfile = 'researcher' | 'writer' | 'reviewer' | 'director' | 'orchestrator' | string;
|
|
10
|
-
export type HermesKanbanTaskState = '
|
|
11
|
+
export type HermesKanbanTaskState = 'triage' | 'blocked' | 'scheduled' | 'running' | 'complete' | 'revoked';
|
|
12
|
+
export type HermesKanbanGovernanceMode = 'lightweight' | 'full';
|
|
11
13
|
|
|
12
14
|
export interface HermesKanbanProfilePolicy {
|
|
13
15
|
capability: ReceiptCapabilityLevel;
|
|
@@ -23,6 +25,8 @@ export interface HermesKanbanAdapterOptions {
|
|
|
23
25
|
defaultModel?: string;
|
|
24
26
|
defaultCapCents?: number;
|
|
25
27
|
runtimeBudgetCentsPerMinute?: number;
|
|
28
|
+
lightweightThresholdCents?: number;
|
|
29
|
+
lightweightCapabilityCeiling?: ReceiptCapabilityLevel;
|
|
26
30
|
profileMap?: Record<string, HermesKanbanProfilePolicy>;
|
|
27
31
|
reviewerCascade?: {
|
|
28
32
|
enabled?: boolean;
|
|
@@ -39,6 +43,7 @@ export interface HermesKanbanTaskInput {
|
|
|
39
43
|
boardSlug: string;
|
|
40
44
|
profile: HermesKanbanProfile;
|
|
41
45
|
parentTaskIds?: string[];
|
|
46
|
+
workspacePath?: string;
|
|
42
47
|
maxRuntimeMinutes?: number;
|
|
43
48
|
maxRuntimeMs?: number;
|
|
44
49
|
metadata?: Record<string, unknown>;
|
|
@@ -56,6 +61,8 @@ export interface HermesKanbanEnvelope {
|
|
|
56
61
|
capCents: number;
|
|
57
62
|
parentTaskIds: string[];
|
|
58
63
|
parentEntryHashes: string[];
|
|
64
|
+
workspacePath?: string;
|
|
65
|
+
governanceMode: HermesKanbanGovernanceMode;
|
|
59
66
|
scope: SpendScope;
|
|
60
67
|
builderCode?: string;
|
|
61
68
|
createdAt: string;
|
|
@@ -101,6 +108,7 @@ export interface HermesKanbanReceiptInput {
|
|
|
101
108
|
tokenCounts?: { inputTokens?: number; outputTokens?: number };
|
|
102
109
|
totalCostCents?: number;
|
|
103
110
|
metadata?: Record<string, unknown>;
|
|
111
|
+
workspacePath?: string;
|
|
104
112
|
highRiskClassifierScore?: number;
|
|
105
113
|
keywordRisk?: boolean;
|
|
106
114
|
reviewerVerdict?: 'drafter_only' | 'review_required' | 'approved' | 'rejected';
|
|
@@ -146,6 +154,8 @@ const SAFE_METADATA_KEYS = new Set([
|
|
|
146
154
|
'ticket_id',
|
|
147
155
|
'token_count',
|
|
148
156
|
'workflow_id',
|
|
157
|
+
'workspace_hash',
|
|
158
|
+
'workspace_path',
|
|
149
159
|
]);
|
|
150
160
|
|
|
151
161
|
export function createHermesKanbanAdapter(opts: HermesKanbanAdapterOptions): HermesKanbanAdapter {
|
|
@@ -177,12 +187,14 @@ export class HermesKanbanAdapter {
|
|
|
177
187
|
taskHash,
|
|
178
188
|
boardHash,
|
|
179
189
|
profile: normalizeProfile(input.profile),
|
|
180
|
-
state: '
|
|
190
|
+
state: 'running',
|
|
181
191
|
capabilityCeiling: profilePolicy.capability,
|
|
182
192
|
toolAllowlist: [...(profilePolicy.toolAllowlist ?? [])],
|
|
183
193
|
capCents,
|
|
184
194
|
parentTaskIds: [...new Set(input.parentTaskIds ?? [])],
|
|
185
195
|
parentEntryHashes: [],
|
|
196
|
+
workspacePath: resolveWorkspacePath(input.workspacePath),
|
|
197
|
+
governanceMode: governanceModeFor(profilePolicy.capability, capCents, this.opts),
|
|
186
198
|
scope,
|
|
187
199
|
builderCode: safeBuilderCode(input.builderCode),
|
|
188
200
|
createdAt: new Date().toISOString(),
|
|
@@ -263,17 +275,21 @@ export class HermesKanbanAdapter {
|
|
|
263
275
|
};
|
|
264
276
|
}
|
|
265
277
|
|
|
266
|
-
async revokeTask(taskId: string): Promise<HermesKanbanReceiptResult> {
|
|
278
|
+
async revokeTask(taskId: string, reason = 'stale_lock_reclaimed'): Promise<HermesKanbanReceiptResult> {
|
|
267
279
|
const envelope = this.requireEnvelope(taskId);
|
|
268
280
|
if (envelope.state === 'revoked') return this.receiptResult(envelope, this.requireNode(taskId));
|
|
269
281
|
envelope.state = 'revoked';
|
|
270
282
|
envelope.revokedAt = new Date().toISOString();
|
|
283
|
+
const finalSpendCents = this.spendCentsSoFar(taskId);
|
|
271
284
|
const node = await this.signTaskNode(envelope, {
|
|
272
285
|
event: 'revoked',
|
|
273
286
|
action: 'block',
|
|
274
287
|
blocked: true,
|
|
275
288
|
capability: envelope.capabilityCeiling,
|
|
276
289
|
trustScore: 0.7,
|
|
290
|
+
revocationReason: safeLabel(reason) ?? 'stale_lock_reclaimed',
|
|
291
|
+
finalSpendCents,
|
|
292
|
+
postRevocationSpendCents: 0,
|
|
277
293
|
});
|
|
278
294
|
this.nodesByTaskId.set(taskId, node);
|
|
279
295
|
this.nodes.push(node);
|
|
@@ -284,7 +300,8 @@ export class HermesKanbanAdapter {
|
|
|
284
300
|
const envelope = this.requireEnvelope(input.taskId);
|
|
285
301
|
assertActive(envelope);
|
|
286
302
|
assertMetadataOnly(input.metadata ?? {});
|
|
287
|
-
envelope.
|
|
303
|
+
if (input.workspacePath) envelope.workspacePath = resolveWorkspacePath(input.workspacePath);
|
|
304
|
+
envelope.state = 'complete';
|
|
288
305
|
envelope.completedAt = new Date().toISOString();
|
|
289
306
|
const parentTaskIds = [...new Set(input.parentTaskIds ?? envelope.parentTaskIds)];
|
|
290
307
|
const parentNodes = parentTaskIds.map((id) => this.nodesByTaskId.get(id)).filter(Boolean) as ReceiptDagNode[];
|
|
@@ -346,6 +363,9 @@ export class HermesKanbanAdapter {
|
|
|
346
363
|
tokenCounts?: { inputTokens?: number; outputTokens?: number };
|
|
347
364
|
totalCostCents?: number;
|
|
348
365
|
reviewerCascade?: Record<string, unknown>;
|
|
366
|
+
revocationReason?: string;
|
|
367
|
+
finalSpendCents?: number;
|
|
368
|
+
postRevocationSpendCents?: number;
|
|
349
369
|
},
|
|
350
370
|
): Promise<ReceiptDagNode> {
|
|
351
371
|
if (!this.config.signingKeys) throw new Error('Hermes Kanban receipts require signingKeys');
|
|
@@ -373,6 +393,15 @@ export class HermesKanbanAdapter {
|
|
|
373
393
|
};
|
|
374
394
|
}
|
|
375
395
|
|
|
396
|
+
private spendCentsSoFar(taskId: string): number {
|
|
397
|
+
let total = 0;
|
|
398
|
+
for (const node of this.nodes) {
|
|
399
|
+
const receipt = node.decision?.outcomeReceipt as Record<string, unknown> | undefined;
|
|
400
|
+
if (receipt?.taskId === taskId) total += safeNonNegativeInteger(receipt.totalCostCents);
|
|
401
|
+
}
|
|
402
|
+
return total;
|
|
403
|
+
}
|
|
404
|
+
|
|
376
405
|
private requireEnvelope(taskId: string): HermesKanbanEnvelope {
|
|
377
406
|
const envelope = this.envelopes.get(taskId);
|
|
378
407
|
if (!envelope) throw new Error(`Unknown Hermes Kanban task ${taskId}`);
|
|
@@ -413,6 +442,9 @@ function taskDecision(
|
|
|
413
442
|
tokenCounts?: { inputTokens?: number; outputTokens?: number };
|
|
414
443
|
totalCostCents?: number;
|
|
415
444
|
reviewerCascade?: Record<string, unknown>;
|
|
445
|
+
revocationReason?: string;
|
|
446
|
+
finalSpendCents?: number;
|
|
447
|
+
postRevocationSpendCents?: number;
|
|
416
448
|
},
|
|
417
449
|
policy: SpendPolicy,
|
|
418
450
|
): SpendDecision {
|
|
@@ -433,6 +465,10 @@ function taskDecision(
|
|
|
433
465
|
parentTaskIds: [...envelope.parentTaskIds],
|
|
434
466
|
parentEntryHashes: parentNodes.map((node) => node.entryHash),
|
|
435
467
|
parentMsgHashes: parentNodes.map((node) => node.msgHash),
|
|
468
|
+
boardScopeHash: envelope.boardHash,
|
|
469
|
+
workspaceProvenance: envelope.workspacePath ? { type: 'directory', location: `dir:${envelope.workspacePath}` } : null,
|
|
470
|
+
governanceMode: envelope.governanceMode,
|
|
471
|
+
lightweight: envelope.governanceMode === 'lightweight',
|
|
436
472
|
modelIds: safeModelIds(args.modelIds ?? []),
|
|
437
473
|
inputTokens,
|
|
438
474
|
outputTokens,
|
|
@@ -440,6 +476,15 @@ function taskDecision(
|
|
|
440
476
|
metadata: filterReceiptMetadata(args.metadata ?? {}),
|
|
441
477
|
};
|
|
442
478
|
if (args.reviewerCascade) receipt.reviewerCascade = args.reviewerCascade;
|
|
479
|
+
if (args.event === 'revoked') {
|
|
480
|
+
receipt.revocation = {
|
|
481
|
+
reason: args.revocationReason ?? 'stale_lock_reclaimed',
|
|
482
|
+
finalSpendCents: safeNonNegativeInteger(args.finalSpendCents),
|
|
483
|
+
postRevocationSpendCents: safeNonNegativeInteger(args.postRevocationSpendCents),
|
|
484
|
+
closedAt: envelope.revokedAt ?? new Date().toISOString(),
|
|
485
|
+
assertion: 'no_spend_after_revoke',
|
|
486
|
+
};
|
|
487
|
+
}
|
|
443
488
|
const decision: SpendDecision = {
|
|
444
489
|
decisionId: randomUUID(),
|
|
445
490
|
timestamp: new Date().toISOString(),
|
|
@@ -481,15 +526,29 @@ function buildReviewerCascadeReceipt(input: HermesKanbanReceiptInput, opts: Herm
|
|
|
481
526
|
}
|
|
482
527
|
|
|
483
528
|
function reviewerCascadeTriggers(envelope: HermesKanbanEnvelope, input: HermesKanbanReceiptInput, opts: HermesKanbanAdapterOptions): string[] {
|
|
484
|
-
if (opts.reviewerCascade?.enabled === false) return [];
|
|
529
|
+
if (opts.reviewerCascade?.enabled === false || envelope.governanceMode === 'lightweight') return [];
|
|
485
530
|
const threshold = opts.reviewerCascade?.highRiskThreshold ?? 0.55;
|
|
486
531
|
const triggers: string[] = [];
|
|
487
|
-
if (envelope.profile === 'reviewer') triggers.push('reviewer_profile');
|
|
488
532
|
if (typeof input.highRiskClassifierScore === 'number' && input.highRiskClassifierScore >= threshold) triggers.push(`risk_score_above:${threshold}`);
|
|
489
533
|
if (input.keywordRisk === true) triggers.push('keyword_prefilter');
|
|
490
534
|
return [...new Set(triggers)];
|
|
491
535
|
}
|
|
492
536
|
|
|
537
|
+
|
|
538
|
+
function governanceModeFor(capability: ReceiptCapabilityLevel, capCents: number, opts: HermesKanbanAdapterOptions): HermesKanbanGovernanceMode {
|
|
539
|
+
const threshold = opts.lightweightThresholdCents ?? 5;
|
|
540
|
+
const ceiling = opts.lightweightCapabilityCeiling ?? 'READ_ONLY';
|
|
541
|
+
return CAPABILITY_RANK[capability] <= CAPABILITY_RANK[ceiling] && capCents <= threshold ? 'lightweight' : 'full';
|
|
542
|
+
}
|
|
543
|
+
|
|
544
|
+
function resolveWorkspacePath(value: unknown): string | undefined {
|
|
545
|
+
if (typeof value !== 'string') return undefined;
|
|
546
|
+
const trimmed = value.trim();
|
|
547
|
+
if (!trimmed) return undefined;
|
|
548
|
+
if (trimmed.length > 1024 || /[\u0000-\u001f\u007f]/.test(trimmed)) throw new Error('Hermes Kanban workspacePath must be a metadata path');
|
|
549
|
+
return resolvePath(trimmed);
|
|
550
|
+
}
|
|
551
|
+
|
|
493
552
|
function capForTask(input: HermesKanbanTaskInput, profilePolicy: HermesKanbanProfilePolicy, opts: HermesKanbanAdapterOptions): number {
|
|
494
553
|
if (Number.isSafeInteger(profilePolicy.capCents) && profilePolicy.capCents! >= 0) return profilePolicy.capCents!;
|
|
495
554
|
const runtimeMinutes = runtimeMinutesFor(input);
|
|
@@ -513,7 +572,7 @@ function spendCapabilityForReceiptCapability(capability: ReceiptCapabilityLevel)
|
|
|
513
572
|
|
|
514
573
|
function assertTaskInput(input: HermesKanbanTaskInput): void {
|
|
515
574
|
assertPlainRecord(input, 'task');
|
|
516
|
-
const allowed = new Set(['taskId', 'boardSlug', 'profile', 'parentTaskIds', 'maxRuntimeMinutes', 'maxRuntimeMs', 'metadata', 'builderCode']);
|
|
575
|
+
const allowed = new Set(['taskId', 'boardSlug', 'profile', 'parentTaskIds', 'workspacePath', 'maxRuntimeMinutes', 'maxRuntimeMs', 'metadata', 'builderCode']);
|
|
517
576
|
for (const key of Object.keys(input as unknown as Record<string, unknown>)) {
|
|
518
577
|
if (!allowed.has(key)) throw new Error(`Hermes Kanban task input cannot include data-plane or unknown field: ${key}`);
|
|
519
578
|
}
|
|
@@ -545,7 +604,7 @@ function assertPlainRecord(value: unknown, name: string): void {
|
|
|
545
604
|
|
|
546
605
|
function assertActive(envelope: HermesKanbanEnvelope): void {
|
|
547
606
|
if (envelope.state === 'revoked') throw new AgentGuardBlockedError(blockedDecision(envelope, 'revoked'), envelope.scope);
|
|
548
|
-
if (envelope.state === '
|
|
607
|
+
if (envelope.state === 'complete') throw new AgentGuardBlockedError(blockedDecision(envelope, 'complete'), envelope.scope);
|
|
549
608
|
}
|
|
550
609
|
|
|
551
610
|
function blockedDecision(envelope: HermesKanbanEnvelope, state: string): SpendDecision {
|