@agentguard-run/spend 0.15.2 → 0.15.4
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 +7 -0
- package/dist/dashboard/aggregate.d.ts +90 -0
- package/dist/dashboard/aggregate.d.ts.map +1 -0
- package/dist/dashboard/aggregate.js +147 -0
- package/dist/dashboard/aggregate.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -1
- package/dist/index.js.map +1 -1
- package/dist/policy.d.ts.map +1 -1
- package/dist/policy.js +60 -0
- package/dist/policy.js.map +1 -1
- package/dist/receipts/portability.d.ts +76 -0
- package/dist/receipts/portability.d.ts.map +1 -0
- package/dist/receipts/portability.js +88 -0
- package/dist/receipts/portability.js.map +1 -0
- package/dist/types.d.ts +50 -4
- package/dist/types.d.ts.map +1 -1
- package/package.json +8 -4
- package/src/dashboard/aggregate.test.ts +103 -0
- package/src/dashboard/aggregate.ts +201 -0
- package/src/receipts/portability.test.ts +68 -0
- package/src/receipts/portability.ts +156 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
## 0.15.3
|
|
2
|
+
|
|
3
|
+
- Added a read-side CFO cost dashboard (`aggregateLedger`, `classifyOrigin`, `decisionCents`, `centsToUsd`) that rolls the signed decision log into spend by hour/model/provider, frontier-vs-"dark" (self-hosted / open-weight) token attribution, reserved-vs-settled true-up, a saved-by-policy figure, and a chain-integrity verdict. Runnable demo: `npm run demo:dashboard`.
|
|
4
|
+
- Added model-agnostic provenance that survives model hot-swap (`workloadProvenance`, `formatLineage`): a portable per-workload manifest with the model lineage, swap events, frontier/dark origin mix, and a single tamper-evidence verdict spanning the whole swap sequence. Runnable demo: `npm run demo:hotswap`.
|
|
5
|
+
- Added a runnable DAG trust-attestation demo (`npm run demo:attestation`).
|
|
6
|
+
- Purely additive; no existing API changed.
|
|
7
|
+
|
|
1
8
|
## 0.15.2
|
|
2
9
|
|
|
3
10
|
- 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.
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AgentGuard® — CFO cost dashboard, read side.
|
|
3
|
+
*
|
|
4
|
+
* Aggregates the signed, hash-chained decision log into a CFO-legible view:
|
|
5
|
+
* spend over time, by model, by provider, frontier-vs-"dark" (local /
|
|
6
|
+
* open-weight / self-hosted) tokens, reserved-vs-settled true-up, an
|
|
7
|
+
* enforcement/savings summary, and a tamper-evidence check. Everything is
|
|
8
|
+
* derived IN-PROCESS from the customer-held ledger — no proxy, no data plane,
|
|
9
|
+
* no provider billing API required.
|
|
10
|
+
*
|
|
11
|
+
* The "dark token" view is the differentiator: open-source / self-hosted usage
|
|
12
|
+
* never appears on any provider's bill, so a provider console structurally
|
|
13
|
+
* cannot show it. The signed ledger can, because the receipt is written where
|
|
14
|
+
* the call is made.
|
|
15
|
+
*
|
|
16
|
+
* Honest scope note: the signed SpendDecision carries time, provider, model,
|
|
17
|
+
* cents, action, builderCode, entryType and a provenance block — but NOT full
|
|
18
|
+
* tenant/agent identity (only the scope key a cap matched on). Per-agent /
|
|
19
|
+
* per-tenant breakdown therefore requires recording a metadata-only scope
|
|
20
|
+
* digest on the decision; see `scopeKeyBreakdown` (best-effort from
|
|
21
|
+
* triggeredScopeKey) and DASHBOARD.md. We do not invent attribution the ledger
|
|
22
|
+
* does not carry.
|
|
23
|
+
*
|
|
24
|
+
* Patent notice: signed hash-chained decision log (U.S. application filed May
|
|
25
|
+
* 2026); composes with DAG Trust Attestation, Patent D §7.3 (App. No.
|
|
26
|
+
* 63/984,626). AgentGuard® is a U.S. registered trademark (Reg. No. 8281464)
|
|
27
|
+
* of Dunecrest Ventures Inc.
|
|
28
|
+
*/
|
|
29
|
+
import type { SignedDecisionLogEntry, SpendDecision } from '../types';
|
|
30
|
+
export type TokenOrigin = 'frontier' | 'dark' | 'unknown';
|
|
31
|
+
/** Classify a decision as frontier vs dark (local/open-weight) spend.
|
|
32
|
+
* Prefers the signed provenance block; falls back to the coarse provider
|
|
33
|
+
* field and labels the result `inferred` so the UI never overstates. */
|
|
34
|
+
export declare function classifyOrigin(decision: SpendDecision): {
|
|
35
|
+
origin: TokenOrigin;
|
|
36
|
+
inferred: boolean;
|
|
37
|
+
};
|
|
38
|
+
/** Cents this decision actually cost the org: settled actuals win over the
|
|
39
|
+
* pre-dispatch projection; blocked calls cost zero. */
|
|
40
|
+
export declare function decisionCents(decision: SpendDecision): number;
|
|
41
|
+
export interface BucketSpend {
|
|
42
|
+
key: string;
|
|
43
|
+
cents: number;
|
|
44
|
+
calls: number;
|
|
45
|
+
}
|
|
46
|
+
export interface CfoDashboard {
|
|
47
|
+
generatedAt: string;
|
|
48
|
+
windowStart: string | null;
|
|
49
|
+
windowEnd: string | null;
|
|
50
|
+
totals: {
|
|
51
|
+
calls: number;
|
|
52
|
+
spentCents: number;
|
|
53
|
+
frontierCents: number;
|
|
54
|
+
darkCents: number;
|
|
55
|
+
darkSharePct: number;
|
|
56
|
+
inferredCents: number;
|
|
57
|
+
};
|
|
58
|
+
enforcement: {
|
|
59
|
+
allowed: number;
|
|
60
|
+
downgraded: number;
|
|
61
|
+
blocked: number;
|
|
62
|
+
shadow: number;
|
|
63
|
+
/** Cents NOT spent because a call was blocked or downgraded — the ROI line. */
|
|
64
|
+
estimatedSavedCents: number;
|
|
65
|
+
};
|
|
66
|
+
trueUp: {
|
|
67
|
+
reservedCents: number;
|
|
68
|
+
settledCents: number;
|
|
69
|
+
driftCents: number;
|
|
70
|
+
};
|
|
71
|
+
byHour: BucketSpend[];
|
|
72
|
+
byModel: BucketSpend[];
|
|
73
|
+
byProvider: BucketSpend[];
|
|
74
|
+
byBuilderCode: BucketSpend[];
|
|
75
|
+
scopeKeyBreakdown: BucketSpend[];
|
|
76
|
+
integrity: {
|
|
77
|
+
verified: boolean;
|
|
78
|
+
entries: number;
|
|
79
|
+
reason?: string;
|
|
80
|
+
sequence?: number;
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Build the CFO dashboard from signed ledger entries. Pure + synchronous.
|
|
85
|
+
* `integrity` is passed in (compute via verifyChain, which is async) so this
|
|
86
|
+
* stays a pure function; pass null to skip.
|
|
87
|
+
*/
|
|
88
|
+
export declare function aggregateLedger(entries: SignedDecisionLogEntry[], integrity?: CfoDashboard['integrity'] | null, now?: string): CfoDashboard;
|
|
89
|
+
export declare const centsToUsd: (c: number) => string;
|
|
90
|
+
//# sourceMappingURL=aggregate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aggregate.d.ts","sourceRoot":"","sources":["../../src/dashboard/aggregate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,OAAO,KAAK,EAAY,sBAAsB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAUhF,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;AAE1D;;yEAEyE;AACzE,wBAAgB,cAAc,CAAC,QAAQ,EAAE,aAAa,GAAG;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAalG;AAED;wDACwD;AACxD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,CAI7D;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AACD,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,MAAM,CAAC;QACnB,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,WAAW,EAAE;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,+EAA+E;QAC/E,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,MAAM,EAAE;QACN,aAAa,EAAE,MAAM,CAAC;QACtB,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,UAAU,EAAE,WAAW,EAAE,CAAC;IAC1B,aAAa,EAAE,WAAW,EAAE,CAAC;IAC7B,iBAAiB,EAAE,WAAW,EAAE,CAAC;IACjC,SAAS,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACvF;AAaD;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,sBAAsB,EAAE,EACjC,SAAS,GAAE,YAAY,CAAC,WAAW,CAAC,GAAG,IAAW,EAClD,GAAG,GAAE,MAAiC,GACrC,YAAY,CA0Ed;AAED,eAAO,MAAM,UAAU,GAAI,GAAG,MAAM,KAAG,MAAoC,CAAC"}
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.centsToUsd = void 0;
|
|
4
|
+
exports.classifyOrigin = classifyOrigin;
|
|
5
|
+
exports.decisionCents = decisionCents;
|
|
6
|
+
exports.aggregateLedger = aggregateLedger;
|
|
7
|
+
/** Model families that are open-weight / self-hostable → "dark" when self-hosted. */
|
|
8
|
+
const OPEN_WEIGHT_FAMILIES = new Set([
|
|
9
|
+
'meta', 'mistral', 'cohere', 'fireworks', 'baseten', 'together',
|
|
10
|
+
'deepseek', 'moonshot', 'alibaba', 'self_hosted',
|
|
11
|
+
]);
|
|
12
|
+
const FRONTIER_PROVIDERS = new Set(['openai', 'anthropic', 'gemini', 'bedrock']);
|
|
13
|
+
/** Classify a decision as frontier vs dark (local/open-weight) spend.
|
|
14
|
+
* Prefers the signed provenance block; falls back to the coarse provider
|
|
15
|
+
* field and labels the result `inferred` so the UI never overstates. */
|
|
16
|
+
function classifyOrigin(decision) {
|
|
17
|
+
const prov = decision.provenance;
|
|
18
|
+
if (prov?.model_identity) {
|
|
19
|
+
const fam = prov.model_identity.provider;
|
|
20
|
+
if (fam === 'self_hosted')
|
|
21
|
+
return { origin: 'dark', inferred: false };
|
|
22
|
+
const selfHosted = /self|local|on[-_]?prem|in[-_]?house/i.test(prov.hosting?.provider_route ?? '');
|
|
23
|
+
if (selfHosted)
|
|
24
|
+
return { origin: 'dark', inferred: false };
|
|
25
|
+
if (OPEN_WEIGHT_FAMILIES.has(fam))
|
|
26
|
+
return { origin: 'dark', inferred: false };
|
|
27
|
+
if (fam === 'anthropic' || fam === 'openai' || fam === 'google')
|
|
28
|
+
return { origin: 'frontier', inferred: false };
|
|
29
|
+
}
|
|
30
|
+
if (FRONTIER_PROVIDERS.has(decision.provider))
|
|
31
|
+
return { origin: 'frontier', inferred: true };
|
|
32
|
+
if (decision.provider === 'unknown')
|
|
33
|
+
return { origin: 'dark', inferred: true };
|
|
34
|
+
return { origin: 'unknown', inferred: true };
|
|
35
|
+
}
|
|
36
|
+
/** Cents this decision actually cost the org: settled actuals win over the
|
|
37
|
+
* pre-dispatch projection; blocked calls cost zero. */
|
|
38
|
+
function decisionCents(decision) {
|
|
39
|
+
if (decision.action === 'block')
|
|
40
|
+
return 0;
|
|
41
|
+
if (typeof decision.actualCents === 'number')
|
|
42
|
+
return decision.actualCents;
|
|
43
|
+
return decision.projectedCents ?? 0;
|
|
44
|
+
}
|
|
45
|
+
function topBuckets(map, limit = 50) {
|
|
46
|
+
return [...map.values()].sort((a, b) => b.cents - a.cents).slice(0, limit);
|
|
47
|
+
}
|
|
48
|
+
function bump(map, key, cents) {
|
|
49
|
+
const cur = map.get(key) ?? { key, cents: 0, calls: 0 };
|
|
50
|
+
cur.cents += cents;
|
|
51
|
+
cur.calls += 1;
|
|
52
|
+
map.set(key, cur);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Build the CFO dashboard from signed ledger entries. Pure + synchronous.
|
|
56
|
+
* `integrity` is passed in (compute via verifyChain, which is async) so this
|
|
57
|
+
* stays a pure function; pass null to skip.
|
|
58
|
+
*/
|
|
59
|
+
function aggregateLedger(entries, integrity = null, now = new Date().toISOString()) {
|
|
60
|
+
const byHour = new Map();
|
|
61
|
+
const byModel = new Map();
|
|
62
|
+
const byProvider = new Map();
|
|
63
|
+
const byBuilder = new Map();
|
|
64
|
+
const byScopeKey = new Map();
|
|
65
|
+
let calls = 0, spent = 0, frontier = 0, dark = 0, inferred = 0;
|
|
66
|
+
let allowed = 0, downgraded = 0, blocked = 0, shadow = 0, saved = 0;
|
|
67
|
+
let reserved = 0, settled = 0;
|
|
68
|
+
let minTs = null, maxTs = null;
|
|
69
|
+
for (const entry of entries) {
|
|
70
|
+
const d = entry.decision;
|
|
71
|
+
const kind = d.entryType ?? 'decision';
|
|
72
|
+
if (kind === 'settlement') {
|
|
73
|
+
if (typeof d.actualCents === 'number')
|
|
74
|
+
settled += d.actualCents;
|
|
75
|
+
// settlement entries adjust true-up only; not double-counted as calls
|
|
76
|
+
continue;
|
|
77
|
+
}
|
|
78
|
+
if (kind === 'outcome' || kind === 'governance')
|
|
79
|
+
continue;
|
|
80
|
+
// provider enforcement decision
|
|
81
|
+
calls += 1;
|
|
82
|
+
const cents = decisionCents(d);
|
|
83
|
+
spent += cents;
|
|
84
|
+
reserved += d.projectedCents ?? 0;
|
|
85
|
+
const { origin, inferred: wasInferred } = classifyOrigin(d);
|
|
86
|
+
if (origin === 'frontier')
|
|
87
|
+
frontier += cents;
|
|
88
|
+
else if (origin === 'dark')
|
|
89
|
+
dark += cents;
|
|
90
|
+
if (wasInferred)
|
|
91
|
+
inferred += cents;
|
|
92
|
+
switch (d.action) {
|
|
93
|
+
case 'allow':
|
|
94
|
+
allowed += 1;
|
|
95
|
+
break;
|
|
96
|
+
case 'downgrade':
|
|
97
|
+
downgraded += 1;
|
|
98
|
+
saved += Math.max(0, (d.projectedCents ?? 0) - cents);
|
|
99
|
+
break;
|
|
100
|
+
case 'block':
|
|
101
|
+
blocked += 1;
|
|
102
|
+
saved += d.projectedCents ?? 0;
|
|
103
|
+
break;
|
|
104
|
+
case 'shadow':
|
|
105
|
+
shadow += 1;
|
|
106
|
+
break;
|
|
107
|
+
}
|
|
108
|
+
const ts = d.timestamp;
|
|
109
|
+
if (ts) {
|
|
110
|
+
if (!minTs || ts < minTs)
|
|
111
|
+
minTs = ts;
|
|
112
|
+
if (!maxTs || ts > maxTs)
|
|
113
|
+
maxTs = ts;
|
|
114
|
+
bump(byHour, ts.slice(0, 13) + ':00', cents); // ISO hour bucket
|
|
115
|
+
}
|
|
116
|
+
bump(byModel, d.modelResolved || d.modelRequested || 'unknown', cents);
|
|
117
|
+
bump(byProvider, d.provider || 'unknown', cents);
|
|
118
|
+
if (d.builderCode)
|
|
119
|
+
bump(byBuilder, d.builderCode, cents);
|
|
120
|
+
if (d.triggeredScopeKey)
|
|
121
|
+
bump(byScopeKey, d.triggeredScopeKey, cents);
|
|
122
|
+
}
|
|
123
|
+
return {
|
|
124
|
+
generatedAt: now,
|
|
125
|
+
windowStart: minTs,
|
|
126
|
+
windowEnd: maxTs,
|
|
127
|
+
totals: {
|
|
128
|
+
calls,
|
|
129
|
+
spentCents: spent,
|
|
130
|
+
frontierCents: frontier,
|
|
131
|
+
darkCents: dark,
|
|
132
|
+
darkSharePct: spent > 0 ? Math.round((dark / spent) * 1000) / 10 : 0,
|
|
133
|
+
inferredCents: inferred,
|
|
134
|
+
},
|
|
135
|
+
enforcement: { allowed, downgraded, blocked, shadow, estimatedSavedCents: saved },
|
|
136
|
+
trueUp: { reservedCents: reserved, settledCents: settled, driftCents: settled - reserved },
|
|
137
|
+
byHour: [...byHour.values()].sort((a, b) => a.key.localeCompare(b.key)),
|
|
138
|
+
byModel: topBuckets(byModel),
|
|
139
|
+
byProvider: topBuckets(byProvider),
|
|
140
|
+
byBuilderCode: topBuckets(byBuilder),
|
|
141
|
+
scopeKeyBreakdown: topBuckets(byScopeKey),
|
|
142
|
+
integrity: integrity ?? { verified: false, entries: entries.length, reason: 'NOT_CHECKED' },
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
const centsToUsd = (c) => `$${(c / 100).toFixed(2)}`;
|
|
146
|
+
exports.centsToUsd = centsToUsd;
|
|
147
|
+
//# sourceMappingURL=aggregate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aggregate.js","sourceRoot":"","sources":["../../src/dashboard/aggregate.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -45,4 +45,6 @@ export * from './governance';
|
|
|
45
45
|
export * from './byo';
|
|
46
46
|
export * from './frameworks';
|
|
47
47
|
export * from './operating-pack';
|
|
48
|
+
export { aggregateLedger, classifyOrigin, decisionCents, centsToUsd, type CfoDashboard, type BucketSpend, type TokenOrigin, } from './dashboard/aggregate';
|
|
49
|
+
export { workloadProvenance, formatLineage, type WorkloadProvenance, type WorkloadProvenanceReport, type ModelUse, type ModelSwap, } from './receipts/portability';
|
|
48
50
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/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/index.js
CHANGED
|
@@ -23,7 +23,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
23
23
|
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
|
-
exports.PATENT_NOTICE = exports.agentguard = exports.AGENTGUARD_SPEND_VERSION = void 0;
|
|
26
|
+
exports.formatLineage = exports.workloadProvenance = exports.centsToUsd = exports.decisionCents = exports.classifyOrigin = exports.aggregateLedger = exports.PATENT_NOTICE = exports.agentguard = exports.AGENTGUARD_SPEND_VERSION = void 0;
|
|
27
27
|
const context_1 = require("./workflow/context");
|
|
28
28
|
// Cost table
|
|
29
29
|
var cost_table_1 = require("./cost-table");
|
|
@@ -174,4 +174,14 @@ __exportStar(require("./governance"), exports);
|
|
|
174
174
|
__exportStar(require("./byo"), exports);
|
|
175
175
|
__exportStar(require("./frameworks"), exports);
|
|
176
176
|
__exportStar(require("./operating-pack"), exports);
|
|
177
|
+
// CFO cost dashboard (read side)
|
|
178
|
+
var aggregate_1 = require("./dashboard/aggregate");
|
|
179
|
+
Object.defineProperty(exports, "aggregateLedger", { enumerable: true, get: function () { return aggregate_1.aggregateLedger; } });
|
|
180
|
+
Object.defineProperty(exports, "classifyOrigin", { enumerable: true, get: function () { return aggregate_1.classifyOrigin; } });
|
|
181
|
+
Object.defineProperty(exports, "decisionCents", { enumerable: true, get: function () { return aggregate_1.decisionCents; } });
|
|
182
|
+
Object.defineProperty(exports, "centsToUsd", { enumerable: true, get: function () { return aggregate_1.centsToUsd; } });
|
|
183
|
+
// Model-agnostic provenance that survives hot-swap
|
|
184
|
+
var portability_1 = require("./receipts/portability");
|
|
185
|
+
Object.defineProperty(exports, "workloadProvenance", { enumerable: true, get: function () { return portability_1.workloadProvenance; } });
|
|
186
|
+
Object.defineProperty(exports, "formatLineage", { enumerable: true, get: function () { return portability_1.formatLineage; } });
|
|
177
187
|
//# sourceMappingURL=index.js.map
|
package/dist/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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"}
|
package/dist/policy.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../src/policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EACV,WAAW,EACX,WAAW,EACX,aAAa,EACb,UAAU,EAEV,UAAU,EAEV,WAAW,EACX,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAkC,KAAK,uBAAuB,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../src/policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EACV,WAAW,EACX,WAAW,EACX,aAAa,EACb,UAAU,EAEV,UAAU,EAEV,WAAW,EACX,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAkC,KAAK,uBAAuB,EAAE,MAAM,WAAW,CAAC;AA0CzF;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAEvD;AAmBD;;;GAGG;AACH,iBAAS,iBAAiB,CAAC,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,GAAG,OAAO,CAQlF;AAID,MAAM,WAAW,oBAAoB;IACnC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI,CAGjH;AAED,wBAAgB,8BAA8B,CAC5C,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,sBAAsB,EAC/B,KAAK,GAAE,oBAAyB,GAC/B,sBAAsB,CAUxB;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,KAAK,GAAE,oBAAyB,GAAG,MAAM,EAAE,CAoBxG;AAED,eAAO,MAAM,2BAA2B,aAMtC,CAAC;AAEH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,uBAAuB,GAAG,IAAI,CAWrG;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,EAAE,CAIzE;AAkCD,iBAAS,eAAe,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,WAAW,GAAG,WAAW,CAEpE;AAED,wBAAsB,cAAc,CAClC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,UAAU,GAChB,OAAO,CAAC,aAAa,CAAC,CAkLxB;AAsJD,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,UAAU,EACjB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CASf;AA2CD,iBAAS,0BAA0B,CACjC,OAAO,EAAE,WAAW,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,EACvD,QAAQ,EAAE,WAAW,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,GACvD,OAAO,CAET;AA6BD,eAAO,MAAM,QAAQ;;;;CAAqE,CAAC"}
|
package/dist/policy.js
CHANGED
|
@@ -24,6 +24,18 @@ const crypto_1 = require("crypto");
|
|
|
24
24
|
const cost_table_1 = require("./cost-table");
|
|
25
25
|
const decision_log_1 = require("./decision-log");
|
|
26
26
|
const license_1 = require("./license");
|
|
27
|
+
const dag_1 = require("./receipts/dag");
|
|
28
|
+
/**
|
|
29
|
+
* DAG-TAT gate: capability tier -> receipt-DAG capability level.
|
|
30
|
+
* Thresholds ramp with the blast radius of the claim (payment_execute
|
|
31
|
+
* demands the ORCHESTRATE gate: highest composite trust, deepest chain).
|
|
32
|
+
*/
|
|
33
|
+
const TIER_TO_DAG_LEVEL = {
|
|
34
|
+
read_only: 'READ_ONLY',
|
|
35
|
+
data_write: 'TRANSACT',
|
|
36
|
+
payment_initiate: 'ADMIN',
|
|
37
|
+
payment_execute: 'ORCHESTRATE',
|
|
38
|
+
};
|
|
27
39
|
/**
|
|
28
40
|
* Build a collision-resistant storage key from a SpendScope. The hash is over
|
|
29
41
|
* canonical JSON, so attacker-controlled separators in tenant/user IDs cannot
|
|
@@ -212,6 +224,54 @@ async function evaluatePolicy(policy, call, store) {
|
|
|
212
224
|
});
|
|
213
225
|
}
|
|
214
226
|
}
|
|
227
|
+
// DAG-TAT attestation gate (Patent D §7.3 composition, now in-package):
|
|
228
|
+
// claims listed in policy.attestation.requireFor are only honored when the
|
|
229
|
+
// call carries a signed receipt-DAG chain that verifies under the policy's
|
|
230
|
+
// trusted signer keys AND clears the trust/depth gate for the claimed tier.
|
|
231
|
+
// Fails closed in every enforcement mode: an unproven high-capability claim
|
|
232
|
+
// is a security event, not a budgeting event.
|
|
233
|
+
if (policy.attestation && call.capabilityClaim && policy.attestation.requireFor.includes(call.capabilityClaim)) {
|
|
234
|
+
const claimed = call.capabilityClaim;
|
|
235
|
+
const level = TIER_TO_DAG_LEVEL[claimed];
|
|
236
|
+
const blockForAttestation = (reasons) => buildDecision({
|
|
237
|
+
decisionId,
|
|
238
|
+
timestamp,
|
|
239
|
+
action: 'block',
|
|
240
|
+
triggeredCap: null,
|
|
241
|
+
triggeredScopeKey: null,
|
|
242
|
+
projectedCents: 0,
|
|
243
|
+
windowSpendBefore: 0,
|
|
244
|
+
windowSpendAfter: 0,
|
|
245
|
+
provider,
|
|
246
|
+
modelRequested: call.model,
|
|
247
|
+
modelResolved: call.model,
|
|
248
|
+
policy,
|
|
249
|
+
reasons,
|
|
250
|
+
});
|
|
251
|
+
const chain = call.attestation;
|
|
252
|
+
const nodes = Array.isArray(chain) ? chain : chain && 'nodes' in chain ? chain.nodes : undefined;
|
|
253
|
+
if (!nodes || nodes.length === 0) {
|
|
254
|
+
return blockForAttestation([
|
|
255
|
+
`Capability '${claimed}' requires a verified attestation chain; none provided`,
|
|
256
|
+
]);
|
|
257
|
+
}
|
|
258
|
+
let verification;
|
|
259
|
+
try {
|
|
260
|
+
verification = await (0, dag_1.verifyReceiptDag)(nodes, policy.attestation.signerKeys);
|
|
261
|
+
}
|
|
262
|
+
catch (err) {
|
|
263
|
+
return blockForAttestation([
|
|
264
|
+
`Capability '${claimed}' attestation verification errored: ${String(err.message ?? err)}`,
|
|
265
|
+
]);
|
|
266
|
+
}
|
|
267
|
+
const gate = (0, dag_1.gateCapability)(level, verification, policy.attestation.thresholds);
|
|
268
|
+
if (!gate.granted) {
|
|
269
|
+
return blockForAttestation([
|
|
270
|
+
`Attestation gate denied capability '${claimed}' (level ${level}): ${gate.reason ?? 'NOT_GRANTED'}`,
|
|
271
|
+
`compositeTrust=${gate.compositeTrust.toFixed(3)} depth=${gate.depth}`,
|
|
272
|
+
]);
|
|
273
|
+
}
|
|
274
|
+
}
|
|
215
275
|
const projectedCents = (0, cost_table_1.computeCallCents)(call.model, call.inputTokens, call.outputTokens);
|
|
216
276
|
if (projectedCents === null) {
|
|
217
277
|
const action = policy.mode === 'enforce' ? 'block' : 'allow';
|
package/dist/policy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policy.js","sourceRoot":"","sources":["../src/policy.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"policy.js","sourceRoot":"","sources":["../src/policy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AgentGuard® — model-agnostic provenance that survives hot-swap.
|
|
3
|
+
*
|
|
4
|
+
* The "headless" / model-fungibility problem (raised on All-In E280): teams want
|
|
5
|
+
* to hot-swap models — frontier → open-weight → self-hosted — per task to cut
|
|
6
|
+
* cost, but "no one has figured out how to abstract memory/context/AUDIT away
|
|
7
|
+
* from the model." A provider console can't help: it only sees its own tokens,
|
|
8
|
+
* and the trail breaks the moment you route to a different provider.
|
|
9
|
+
*
|
|
10
|
+
* AgentGuard's signed decision log already records, per call, which model served
|
|
11
|
+
* it (provenance) inside one continuous hash chain. This module reads that log
|
|
12
|
+
* and produces a PORTABLE, model-agnostic provenance manifest per workload: the
|
|
13
|
+
* ordered model lineage, every swap, the frontier/dark origin mix, and a single
|
|
14
|
+
* tamper-evidence verdict that spans the whole swap sequence. The audit is keyed
|
|
15
|
+
* to the workload, not the model — so it survives the swap.
|
|
16
|
+
*
|
|
17
|
+
* Honest scope note (same as the dashboard): the signed SpendDecision does not
|
|
18
|
+
* carry a first-class workload/agent id (only `triggeredScopeKey`). Callers pass
|
|
19
|
+
* a `keyOf` selector to group; the default uses `triggeredScopeKey`. We never
|
|
20
|
+
* invent a grouping the ledger does not support.
|
|
21
|
+
*
|
|
22
|
+
* Patent notice: signed hash-chained decision log (U.S. application filed May
|
|
23
|
+
* 2026); composes with DAG Trust Attestation, Patent D §7.3 (App. No.
|
|
24
|
+
* 63/984,626). AgentGuard® is a U.S. registered trademark (Reg. No. 8281464) of
|
|
25
|
+
* Dunecrest Ventures Inc.
|
|
26
|
+
*/
|
|
27
|
+
import type { SignedDecisionLogEntry, SpendDecision } from '../types';
|
|
28
|
+
import { type TokenOrigin } from '../dashboard/aggregate';
|
|
29
|
+
export interface ModelUse {
|
|
30
|
+
model: string;
|
|
31
|
+
origin: TokenOrigin;
|
|
32
|
+
provider: string;
|
|
33
|
+
calls: number;
|
|
34
|
+
cents: number;
|
|
35
|
+
}
|
|
36
|
+
export interface ModelSwap {
|
|
37
|
+
atSequence: number;
|
|
38
|
+
fromModel: string;
|
|
39
|
+
toModel: string;
|
|
40
|
+
fromOrigin: TokenOrigin;
|
|
41
|
+
toOrigin: TokenOrigin;
|
|
42
|
+
/** True when the swap crossed the frontier↔dark boundary (the audit-risky kind). */
|
|
43
|
+
crossesBoundary: boolean;
|
|
44
|
+
}
|
|
45
|
+
export interface WorkloadProvenance {
|
|
46
|
+
key: string;
|
|
47
|
+
calls: number;
|
|
48
|
+
spentCents: number;
|
|
49
|
+
frontierCents: number;
|
|
50
|
+
darkCents: number;
|
|
51
|
+
firstAt: string | null;
|
|
52
|
+
lastAt: string | null;
|
|
53
|
+
models: ModelUse[];
|
|
54
|
+
/** Ordered model lineage, e.g. ['claude-5','gpt-5-mini','glm-5.2']. */
|
|
55
|
+
lineage: string[];
|
|
56
|
+
swaps: ModelSwap[];
|
|
57
|
+
}
|
|
58
|
+
export interface WorkloadProvenanceReport {
|
|
59
|
+
workloads: WorkloadProvenance[];
|
|
60
|
+
/** Chain-level tamper evidence spans ALL swaps — the point of the manifest. */
|
|
61
|
+
continuity: {
|
|
62
|
+
verified: boolean;
|
|
63
|
+
entries: number;
|
|
64
|
+
reason?: string;
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Build the portable per-workload provenance manifest from signed ledger
|
|
69
|
+
* entries. Pass the async `verifyChain` result as `continuity` so this stays a
|
|
70
|
+
* pure, synchronous function (never null-continuity in production — a manifest
|
|
71
|
+
* without tamper evidence is not the product).
|
|
72
|
+
*/
|
|
73
|
+
export declare function workloadProvenance(entries: SignedDecisionLogEntry[], continuity?: WorkloadProvenanceReport['continuity'], keyOf?: (d: SpendDecision) => string): WorkloadProvenanceReport;
|
|
74
|
+
/** Human-readable lineage, e.g. "claude-5 → gpt-5-mini → glm-5.2". */
|
|
75
|
+
export declare const formatLineage: (w: WorkloadProvenance) => string;
|
|
76
|
+
//# sourceMappingURL=portability.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"portability.d.ts","sourceRoot":"","sources":["../../src/receipts/portability.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,OAAO,KAAK,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACtE,OAAO,EAAiC,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAEzF,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AACD,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,WAAW,CAAC;IACxB,QAAQ,EAAE,WAAW,CAAC;IACtB,oFAAoF;IACpF,eAAe,EAAE,OAAO,CAAC;CAC1B;AACD,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,uEAAuE;IACvE,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB;AACD,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,kBAAkB,EAAE,CAAC;IAChC,+EAA+E;IAC/E,UAAU,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACrE;AAID;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,sBAAsB,EAAE,EACjC,UAAU,GAAE,wBAAwB,CAAC,YAAY,CAA0D,EAC3G,KAAK,GAAE,CAAC,CAAC,EAAE,aAAa,KAAK,MAAqB,GACjD,wBAAwB,CA4E1B;AAED,sEAAsE;AACtE,eAAO,MAAM,aAAa,GAAI,GAAG,kBAAkB,KAAG,MAA+B,CAAC"}
|