@hasna/economy 0.5.7 → 0.5.8
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 +9 -0
- package/dist/chunks/{billing-22az60hy.js → billing-7twygmtj.js} +2 -2
- package/dist/chunks/{config-hsp7ndhj.js → config-mjgbekxj.js} +2 -2
- package/dist/chunks/{index-9wa1f2kv.js → index-7ek4r0ww.js} +1 -1
- package/dist/chunks/{index-wq7c4wqs.js → index-9za4cmq2.js} +2 -2
- package/dist/chunks/{index-z2n5y111.js → index-a1gh3d6t.js} +5 -4
- package/dist/chunks/{index-vajzfzgv.js → index-ep1pkyr3.js} +1 -1
- package/dist/chunks/{index-6yr4hb72.js → index-gf3kan31.js} +2 -2
- package/dist/chunks/{index-dk5rq1rq.js → index-gtjqy0kd.js} +1 -1
- package/dist/chunks/{index-b6c649mq.js → index-h2mcj7gv.js} +82 -7
- package/dist/chunks/{index-c7h2rxx1.js → index-t0n32g8r.js} +1 -1
- package/dist/chunks/{index-f5jv6q5q.js → index-zgvmrqyc.js} +1 -1
- package/dist/chunks/{open-projects-8qm46m3d.js → open-projects-bj561k5j.js} +1 -1
- package/dist/chunks/{pricing-k9wsjwbz.js → pricing-bkgvzpe9.js} +1 -1
- package/dist/chunks/{pricing-462f8xkm.js → pricing-bn88mhqk.js} +1 -1
- package/dist/chunks/{pricing-vxejj1qa.js → pricing-nt31hf53.js} +1 -1
- package/dist/chunks/{serve-ms8dvf7e.js → serve-14cgmx02.js} +14 -8
- package/dist/chunks/{sqlite-store-ht6frztj.js → sqlite-store-8t4anw98.js} +2 -2
- package/dist/chunks/{sqlite-store-13nhr1z0.js → sqlite-store-jfy0e8b6.js} +2 -2
- package/dist/chunks/{sqlite-store-gamn65xp.js → sqlite-store-r219qrjt.js} +2 -2
- package/dist/chunks/{tui-9t7340wd.js → tui-s6tpce3h.js} +4 -4
- package/dist/chunks/{watch-t6ssnx30.js → watch-cv5va8x6.js} +5 -5
- package/dist/chunks/{webhooks-nw4daw9y.js → webhooks-td46p6gk.js} +2 -2
- package/dist/cli/index.js +32 -28
- package/dist/cost-imports/contract.d.ts +84 -0
- package/dist/cost-imports/contract.d.ts.map +1 -0
- package/dist/cost-imports/decimal.d.ts +6 -0
- package/dist/cost-imports/decimal.d.ts.map +1 -0
- package/dist/cost-imports/providers.d.ts +4 -0
- package/dist/cost-imports/providers.d.ts.map +1 -0
- package/dist/index.js +66 -8
- package/dist/lib/analytics.d.ts +3 -0
- package/dist/lib/analytics.d.ts.map +1 -1
- package/dist/lib/comparison-contract.d.ts +8 -0
- package/dist/lib/comparison-contract.d.ts.map +1 -0
- package/dist/lib/comparison-test-contract.d.ts +3 -0
- package/dist/lib/comparison-test-contract.d.ts.map +1 -0
- package/dist/lib/store/index.d.ts.map +1 -1
- package/dist/mcp/index.js +69 -11
- package/dist/otel/index.js +1 -1
- package/dist/server/index.js +40 -6
- package/dist/server/service-operations.d.ts.map +1 -1
- package/dist/server/service-worker.js +40 -6
- package/docs/comparison-coverage.md +30 -0
- package/native/README.md +48 -0
- package/native/Tools/pair-qr.py +6 -1
- package/native/Tools/pair-qr.swift +19 -1
- package/package.json +1 -1
package/dist/cli/index.js
CHANGED
|
@@ -4,26 +4,28 @@ import {
|
|
|
4
4
|
syncAnthropicBilling,
|
|
5
5
|
syncGeminiBilling,
|
|
6
6
|
syncOpenAIBilling
|
|
7
|
-
} from "../chunks/index-
|
|
7
|
+
} from "../chunks/index-gtjqy0kd.js";
|
|
8
8
|
import {
|
|
9
9
|
buildStatusLine,
|
|
10
10
|
gatherStatusData
|
|
11
|
-
} from "../chunks/index-
|
|
11
|
+
} from "../chunks/index-gf3kan31.js";
|
|
12
12
|
import"../chunks/index-w3bvv0ns.js";
|
|
13
13
|
import {
|
|
14
14
|
agentPaths,
|
|
15
15
|
syncAll
|
|
16
|
-
} from "../chunks/index-
|
|
16
|
+
} from "../chunks/index-9za4cmq2.js";
|
|
17
17
|
import {
|
|
18
18
|
getStore,
|
|
19
19
|
isCloudStore
|
|
20
|
-
} from "../chunks/index-
|
|
20
|
+
} from "../chunks/index-a1gh3d6t.js";
|
|
21
21
|
import {
|
|
22
22
|
billingDriftCheck,
|
|
23
|
+
comparisonValueChange,
|
|
23
24
|
economyCloudStorage,
|
|
24
25
|
economyTransportReport,
|
|
26
|
+
formatComparisonValue,
|
|
25
27
|
packageMetadata
|
|
26
|
-
} from "../chunks/index-
|
|
28
|
+
} from "../chunks/index-h2mcj7gv.js";
|
|
27
29
|
import {
|
|
28
30
|
AGENTS,
|
|
29
31
|
MAX_INGEST_BYTES,
|
|
@@ -46,7 +48,7 @@ import {
|
|
|
46
48
|
setIngestState,
|
|
47
49
|
stableJson,
|
|
48
50
|
validateIngest
|
|
49
|
-
} from "../chunks/index-
|
|
51
|
+
} from "../chunks/index-zgvmrqyc.js";
|
|
50
52
|
import {
|
|
51
53
|
__require
|
|
52
54
|
} from "../chunks/index-p35cyhc4.js";
|
|
@@ -1279,7 +1281,7 @@ function registerExtendedCommands(program) {
|
|
|
1279
1281
|
}
|
|
1280
1282
|
}
|
|
1281
1283
|
if (!cloud) {
|
|
1282
|
-
const { openDatabase } = await import("../chunks/sqlite-store-
|
|
1284
|
+
const { openDatabase } = await import("../chunks/sqlite-store-r219qrjt.js");
|
|
1283
1285
|
const db = openDatabase();
|
|
1284
1286
|
ensurePricingSeeded(db);
|
|
1285
1287
|
const zeroCostBuckets = queryZeroCostTokenizedModels(db, 5);
|
|
@@ -1357,23 +1359,23 @@ function registerExtendedCommands(program) {
|
|
|
1357
1359
|
console.log();
|
|
1358
1360
|
});
|
|
1359
1361
|
program.command("tui").description("Terminal status dashboard (Linux/SSH friendly)").option("--watch", "Live refresh").option("--interval <seconds>", "Refresh interval", "30").action(async (opts) => {
|
|
1360
|
-
const { runTui } = await import("../chunks/tui-
|
|
1362
|
+
const { runTui } = await import("../chunks/tui-s6tpce3h.js");
|
|
1361
1363
|
await runTui({
|
|
1362
1364
|
watch: Boolean(opts.watch),
|
|
1363
1365
|
interval: Number(opts.interval ?? 30)
|
|
1364
1366
|
});
|
|
1365
1367
|
});
|
|
1366
1368
|
program.command("waybar").description("Print waybar-compatible JSON status line").action(async () => {
|
|
1367
|
-
const { printWaybarJson } = await import("../chunks/tui-
|
|
1369
|
+
const { printWaybarJson } = await import("../chunks/tui-s6tpce3h.js");
|
|
1368
1370
|
await printWaybarJson();
|
|
1369
1371
|
});
|
|
1370
1372
|
const barCmd = program.command("bar").description("Status bar helpers (Linux)");
|
|
1371
1373
|
barCmd.command("tui").description("Alias for economy tui").option("--watch", "Live refresh").action(async (opts) => {
|
|
1372
|
-
const { runTui } = await import("../chunks/tui-
|
|
1374
|
+
const { runTui } = await import("../chunks/tui-s6tpce3h.js");
|
|
1373
1375
|
await runTui({ watch: Boolean(opts.watch) });
|
|
1374
1376
|
});
|
|
1375
1377
|
barCmd.command("waybar").description("Alias for economy waybar").action(async () => {
|
|
1376
|
-
const { printWaybarJson } = await import("../chunks/tui-
|
|
1378
|
+
const { printWaybarJson } = await import("../chunks/tui-s6tpce3h.js");
|
|
1377
1379
|
await printWaybarJson();
|
|
1378
1380
|
});
|
|
1379
1381
|
program.command("estimate").description("Estimate cost for token counts").requiredOption("--model <model>", "Model name").option("--input <n>", "Input tokens", "0").option("--output <n>", "Output tokens", "0").action(async (opts) => {
|
|
@@ -2335,7 +2337,7 @@ function backfillMachineId(db) {
|
|
|
2335
2337
|
return { requests: Number(reqCount.changes), sessions: Number(sessCount.changes) };
|
|
2336
2338
|
}
|
|
2337
2339
|
async function recalculateZeroCostRequests(db) {
|
|
2338
|
-
const { assessCostFromDb } = await import("../chunks/pricing-
|
|
2340
|
+
const { assessCostFromDb } = await import("../chunks/pricing-bn88mhqk.js");
|
|
2339
2341
|
const zeroRows = db.prepare(`SELECT id, model, input_tokens, output_tokens, cache_read_tokens, cache_create_tokens, cache_create_5m_tokens, cache_create_1h_tokens
|
|
2340
2342
|
FROM requests
|
|
2341
2343
|
WHERE cost_usd = 0
|
|
@@ -2544,7 +2546,7 @@ async function postIngest(cloud, body) {
|
|
|
2544
2546
|
}
|
|
2545
2547
|
async function syncAllToCloud(cloud, opts = {}) {
|
|
2546
2548
|
await runIngestJournalOperation(cloud, { action: "reconcile" });
|
|
2547
|
-
const { openDatabase } = await import("../chunks/sqlite-store-
|
|
2549
|
+
const { openDatabase } = await import("../chunks/sqlite-store-r219qrjt.js");
|
|
2548
2550
|
const scratch = openDatabase(":memory:", true);
|
|
2549
2551
|
ensurePricingSeeded(scratch);
|
|
2550
2552
|
const cachePath = opts.cachePath ?? getIngestCachePath();
|
|
@@ -2571,7 +2573,7 @@ async function syncAllToCloud(cloud, opts = {}) {
|
|
|
2571
2573
|
}
|
|
2572
2574
|
async function billingSyncToCloud(cloud, opts = {}) {
|
|
2573
2575
|
await runIngestJournalOperation(cloud, { action: "reconcile" });
|
|
2574
|
-
const { openDatabase } = await import("../chunks/sqlite-store-
|
|
2576
|
+
const { openDatabase } = await import("../chunks/sqlite-store-r219qrjt.js");
|
|
2575
2577
|
const scratch = openDatabase(":memory:", true);
|
|
2576
2578
|
try {
|
|
2577
2579
|
const days = opts.days ?? 31;
|
|
@@ -2630,7 +2632,7 @@ function autosyncIntervalMs(env = process.env) {
|
|
|
2630
2632
|
return Math.round(seconds * 1000);
|
|
2631
2633
|
}
|
|
2632
2634
|
async function autosyncMarkerStore(env = process.env) {
|
|
2633
|
-
const { openDatabase } = await import("../chunks/sqlite-store-
|
|
2635
|
+
const { openDatabase } = await import("../chunks/sqlite-store-r219qrjt.js");
|
|
2634
2636
|
if (isCloudStore(env))
|
|
2635
2637
|
return openDatabase(getIngestCachePath());
|
|
2636
2638
|
return openDatabase();
|
|
@@ -2663,7 +2665,7 @@ async function autoSync(opts = {}) {
|
|
|
2663
2665
|
return;
|
|
2664
2666
|
if (!await autoSyncDue(undefined, process.env))
|
|
2665
2667
|
return;
|
|
2666
|
-
const { openDatabase } = await import("../chunks/sqlite-store-
|
|
2668
|
+
const { openDatabase } = await import("../chunks/sqlite-store-r219qrjt.js");
|
|
2667
2669
|
const db = openDatabase();
|
|
2668
2670
|
ensurePricingSeeded(db);
|
|
2669
2671
|
await syncAll(db, opts);
|
|
@@ -2931,13 +2933,13 @@ program.command("sync").description("Ingest cost data from all coding agents").o
|
|
|
2931
2933
|
}
|
|
2932
2934
|
return;
|
|
2933
2935
|
}
|
|
2934
|
-
const { openDatabase } = await import("../chunks/sqlite-store-
|
|
2936
|
+
const { openDatabase } = await import("../chunks/sqlite-store-r219qrjt.js");
|
|
2935
2937
|
const db = openDatabase();
|
|
2936
2938
|
ensurePricingSeeded(db);
|
|
2937
2939
|
const anySpecific = opts.claude || opts.takumi || opts.codex || opts.gemini || opts.opencode || opts.cursor || opts.pi || opts.hermes || opts.loops;
|
|
2938
2940
|
if (!anySpecific || opts.verbose) {
|
|
2939
2941
|
try {
|
|
2940
|
-
const { syncOpenProjectsRegistry } = await import("../chunks/open-projects-
|
|
2942
|
+
const { syncOpenProjectsRegistry } = await import("../chunks/open-projects-bj561k5j.js");
|
|
2941
2943
|
const p = await syncOpenProjectsRegistry(db);
|
|
2942
2944
|
if (opts.verbose)
|
|
2943
2945
|
console.log(chalk3.dim(`Synced open-projects registry: ${p.imported} imported, ${p.skipped} skipped`));
|
|
@@ -2972,7 +2974,7 @@ program.command("sync").description("Ingest cost data from all coding agents").o
|
|
|
2972
2974
|
console.log(chalk3.cyan(`\u2192 Backfilled machine_id='${machine}': ${r.requests} requests, ${r.sessions} sessions`));
|
|
2973
2975
|
}
|
|
2974
2976
|
if (opts.recalculate) {
|
|
2975
|
-
const { getPricingFromDb: getPricingFromDb2 } = await import("../chunks/pricing-
|
|
2977
|
+
const { getPricingFromDb: getPricingFromDb2 } = await import("../chunks/pricing-bn88mhqk.js");
|
|
2976
2978
|
const r = await recalculateZeroCostRequests(db);
|
|
2977
2979
|
console.log(chalk3.cyan(`\u2192 Recalculated: ${r.fixed}/${r.total} zero-cost requests now have pricing`));
|
|
2978
2980
|
const zeroCostBuckets = r.buckets;
|
|
@@ -2987,7 +2989,7 @@ program.command("sync").description("Ingest cost data from all coding agents").o
|
|
|
2987
2989
|
}
|
|
2988
2990
|
}
|
|
2989
2991
|
try {
|
|
2990
|
-
const { checkAndFireWebhooks } = await import("../chunks/webhooks-
|
|
2992
|
+
const { checkAndFireWebhooks } = await import("../chunks/webhooks-td46p6gk.js");
|
|
2991
2993
|
await checkAndFireWebhooks(db);
|
|
2992
2994
|
} catch {}
|
|
2993
2995
|
for (const line of syncOutcomeLines(result))
|
|
@@ -3198,7 +3200,7 @@ program.command("accounts [period]").description("List account usage by email ad
|
|
|
3198
3200
|
console.log();
|
|
3199
3201
|
});
|
|
3200
3202
|
program.command("watch").description("Live stream of incoming costs").option("--interval <seconds>", "Poll interval in seconds", "10").option("--daemon", "Watch agent data directories and sync on change").option("--agent <agent>", `Filter by agent (${AGENTS.join("|")})`).option("--notify <amount>", "Fire macOS notification when cumulative cost crosses this USD threshold").action(async (opts) => {
|
|
3201
|
-
const { watchCosts } = await import("../chunks/watch-
|
|
3203
|
+
const { watchCosts } = await import("../chunks/watch-cv5va8x6.js");
|
|
3202
3204
|
await watchCosts({
|
|
3203
3205
|
interval: parsePositiveCliInteger(opts.interval ?? "10", "--interval"),
|
|
3204
3206
|
daemon: Boolean(opts.daemon),
|
|
@@ -3339,16 +3341,16 @@ projectCmd.command("show <nameOrPath>").description("Detailed project breakdown
|
|
|
3339
3341
|
});
|
|
3340
3342
|
var configCmd = program.command("config").description("Manage economy configuration");
|
|
3341
3343
|
configCmd.command("set <key> <value>").description("Set a config value").action(async (_key, _value) => {
|
|
3342
|
-
const { setConfigValue } = await import("../chunks/config-
|
|
3344
|
+
const { setConfigValue } = await import("../chunks/config-mjgbekxj.js");
|
|
3343
3345
|
setConfigValue(_key, _value);
|
|
3344
3346
|
console.log(chalk3.green(`\u2713 ${_key} = ${_value}`));
|
|
3345
3347
|
});
|
|
3346
3348
|
configCmd.command("get <key>").description("Get a config value").action(async (key) => {
|
|
3347
|
-
const { getConfigValue } = await import("../chunks/config-
|
|
3349
|
+
const { getConfigValue } = await import("../chunks/config-mjgbekxj.js");
|
|
3348
3350
|
console.log(getConfigValue(key) ?? chalk3.dim("(not set)"));
|
|
3349
3351
|
});
|
|
3350
3352
|
configCmd.command("webhook-test").description("Send a test payload to the configured webhook URL").action(async () => {
|
|
3351
|
-
const { loadConfig } = await import("../chunks/config-
|
|
3353
|
+
const { loadConfig } = await import("../chunks/config-mjgbekxj.js");
|
|
3352
3354
|
const config = loadConfig();
|
|
3353
3355
|
const url = config["webhook-url"];
|
|
3354
3356
|
if (!url) {
|
|
@@ -3382,7 +3384,7 @@ configCmd.command("webhook-test").description("Send a test payload to the config
|
|
|
3382
3384
|
}
|
|
3383
3385
|
});
|
|
3384
3386
|
configCmd.action(async () => {
|
|
3385
|
-
const { loadConfig } = await import("../chunks/config-
|
|
3387
|
+
const { loadConfig } = await import("../chunks/config-mjgbekxj.js");
|
|
3386
3388
|
const config = loadConfig();
|
|
3387
3389
|
console.log();
|
|
3388
3390
|
printTable(["Key", "Value"], Object.entries(config).map(([k, v]) => [k, String(v)]));
|
|
@@ -3434,7 +3436,7 @@ pricingCmd.command("remove <model>").description("Remove pricing for a model").a
|
|
|
3434
3436
|
});
|
|
3435
3437
|
program.command("serve").description("Start the REST API server").option("-p, --port <port>", "Port", "3456").action(async (opts) => {
|
|
3436
3438
|
const port = parseCliPort(opts.port ?? "3456", "--port");
|
|
3437
|
-
const { startServer } = await import("../chunks/serve-
|
|
3439
|
+
const { startServer } = await import("../chunks/serve-14cgmx02.js");
|
|
3438
3440
|
startServer(port);
|
|
3439
3441
|
});
|
|
3440
3442
|
program.command("mcp").description("Show MCP server install commands").option("--claude", "Install into Claude Code").option("--codex", "Install into Codex").option("--gemini", "Install into Gemini CLI").option("--all", "Install into all agents").action(async (opts) => {
|
|
@@ -3614,11 +3616,13 @@ program.command("compare <period1> <period2>").description("Compare two periods
|
|
|
3614
3616
|
console.log(chalk3.bold.cyan(` ${p1} vs ${p2}`));
|
|
3615
3617
|
console.log();
|
|
3616
3618
|
printTable(["Metric", p1, p2, "Change"], [
|
|
3617
|
-
["
|
|
3619
|
+
["Usage value", formatComparisonValue(a), formatComparisonValue(b), comparisonValueChange(a, b)],
|
|
3618
3620
|
["Sessions", fmtCount(a.sessions), fmtCount(b.sessions), delta(a.sessions, b.sessions)],
|
|
3619
3621
|
["Requests", fmtCount(a.requests), fmtCount(b.requests), delta(a.requests, b.requests)],
|
|
3620
3622
|
["Tokens", fmtTokens2(a.tokens), fmtTokens2(b.tokens), delta(a.tokens, b.tokens)]
|
|
3621
3623
|
]);
|
|
3624
|
+
console.log(`${p1}: ${formatSummaryCoverage(a.money)}`);
|
|
3625
|
+
console.log(`${p2}: ${formatSummaryCoverage(b.money)}`);
|
|
3622
3626
|
console.log();
|
|
3623
3627
|
});
|
|
3624
3628
|
program.command("forecast").description("Project end-of-month cost based on current burn rate").action(async () => {
|
|
@@ -3795,7 +3799,7 @@ billingCmd.command("sync").description("Sync actual billing from Anthropic, Open
|
|
|
3795
3799
|
console.log(chalk3.green(`\u2713 pushed ${result.total} billing rows to the shared API`));
|
|
3796
3800
|
return;
|
|
3797
3801
|
}
|
|
3798
|
-
const { openDatabase } = await import("../chunks/sqlite-store-
|
|
3802
|
+
const { openDatabase } = await import("../chunks/sqlite-store-r219qrjt.js");
|
|
3799
3803
|
const db = openDatabase();
|
|
3800
3804
|
const doAll = !opts.anthropic && !opts.openai && !opts.gemini;
|
|
3801
3805
|
if (opts.anthropic || doAll) {
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
export type Provider = 'github' | 'aws' | 'blacksmith';
|
|
2
|
+
export interface Window {
|
|
3
|
+
start: string;
|
|
4
|
+
endExclusive: string;
|
|
5
|
+
timeZone: string;
|
|
6
|
+
}
|
|
7
|
+
/** Metadata from a trusted read/export, not a credential or authorization grant. */
|
|
8
|
+
export interface Capture {
|
|
9
|
+
provider: Provider;
|
|
10
|
+
account: string;
|
|
11
|
+
sourceId: string;
|
|
12
|
+
revision: string;
|
|
13
|
+
supersedes?: string;
|
|
14
|
+
observedAt: string;
|
|
15
|
+
window: Window;
|
|
16
|
+
currency: string;
|
|
17
|
+
currencySource: string;
|
|
18
|
+
complete: boolean;
|
|
19
|
+
awsQuery?: {
|
|
20
|
+
metric: 'UnblendedCost';
|
|
21
|
+
groupBy: 'SERVICE';
|
|
22
|
+
granularity: 'MONTHLY';
|
|
23
|
+
filter: null;
|
|
24
|
+
};
|
|
25
|
+
pages: Array<{
|
|
26
|
+
cursor: string | null;
|
|
27
|
+
nextCursor: string | null;
|
|
28
|
+
body: string;
|
|
29
|
+
}>;
|
|
30
|
+
}
|
|
31
|
+
export interface Authority {
|
|
32
|
+
provider: Provider;
|
|
33
|
+
account: string;
|
|
34
|
+
currency: string;
|
|
35
|
+
}
|
|
36
|
+
export interface CostRow {
|
|
37
|
+
id: string;
|
|
38
|
+
date: string;
|
|
39
|
+
dimensions: Record<string, string>;
|
|
40
|
+
kind: 'usage' | 'tax' | 'credit' | 'subscription' | 'included';
|
|
41
|
+
net: string;
|
|
42
|
+
gross?: string;
|
|
43
|
+
discount?: string;
|
|
44
|
+
quantity?: string;
|
|
45
|
+
unit?: string;
|
|
46
|
+
estimated: boolean;
|
|
47
|
+
}
|
|
48
|
+
export interface Snapshot {
|
|
49
|
+
schemaVersion: 1;
|
|
50
|
+
provider: Provider;
|
|
51
|
+
account: string;
|
|
52
|
+
sourceId: string;
|
|
53
|
+
revision: string;
|
|
54
|
+
supersedes: string | null;
|
|
55
|
+
observedAt: string;
|
|
56
|
+
window: Window;
|
|
57
|
+
currency: string;
|
|
58
|
+
currencySource: string;
|
|
59
|
+
basis: 'usage_report' | 'cost_explorer' | 'invoice';
|
|
60
|
+
scopeId: string;
|
|
61
|
+
contentHash: string;
|
|
62
|
+
snapshotId: string;
|
|
63
|
+
pageHashes: string[];
|
|
64
|
+
rows: CostRow[];
|
|
65
|
+
excludedRows: number;
|
|
66
|
+
total: string;
|
|
67
|
+
tax: string | null;
|
|
68
|
+
paymentStatus: 'unknown';
|
|
69
|
+
}
|
|
70
|
+
export declare function fail(code: string): never;
|
|
71
|
+
export declare function object(value: unknown): Record<string, unknown>;
|
|
72
|
+
export declare function list(value: unknown): unknown[];
|
|
73
|
+
/** Bounded metadata labels; URLs and control characters are refused. Not a secret scanner. */
|
|
74
|
+
export declare function label(value: unknown): string;
|
|
75
|
+
export declare function date(value: unknown): string;
|
|
76
|
+
export declare function stable(value: unknown): string;
|
|
77
|
+
export declare const hash: (value: string) => string;
|
|
78
|
+
export declare function validateCapture(c: Capture, authority: Authority): Record<string, unknown>[];
|
|
79
|
+
export declare function inWindow(day: unknown, c: Capture): string;
|
|
80
|
+
export declare function finish(c: Capture, rows: CostRow[], basis: Snapshot['basis'], excludedRows?: number): Snapshot;
|
|
81
|
+
export declare function admitRevision(history: readonly Snapshot[], next: Snapshot): 'append' | 'replay';
|
|
82
|
+
/** Totals stay partitioned by provider/account/currency/basis/window; no grand total. */
|
|
83
|
+
export declare function reconcile(history: readonly Snapshot[]): Snapshot[];
|
|
84
|
+
//# sourceMappingURL=contract.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/cost-imports/contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** Exact, bounded decimal arithmetic. Provider precision is retained until display. */
|
|
2
|
+
export declare function decimal(value: unknown): string;
|
|
3
|
+
export declare function add(...values: string[]): string;
|
|
4
|
+
export declare function negate(value: string): string;
|
|
5
|
+
export declare function within(left: string, right: string, tolerance?: string): boolean;
|
|
6
|
+
//# sourceMappingURL=decimal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decimal.d.ts","sourceRoot":"","sources":["../../src/cost-imports/decimal.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAc9C;AAKD,wBAAgB,GAAG,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAK/C;AACD,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAyE;AACtH,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,SAAM,GAAG,OAAO,CAI5E"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type Capture, type Authority, type Snapshot } from './contract.js';
|
|
2
|
+
/** No HTTP or state access: normalize one fully captured provider report. */
|
|
3
|
+
export declare function normalizeCostImport(capture: Capture, authority: Authority): Snapshot;
|
|
4
|
+
//# sourceMappingURL=providers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/cost-imports/providers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,SAAS,EAAgB,KAAK,QAAQ,EAA8E,MAAM,eAAe,CAAA;AAUrK,6EAA6E;AAC7E,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,GAAG,QAAQ,CAKpF"}
|
package/dist/index.js
CHANGED
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
COST_BASIS,
|
|
5
5
|
MAX_INGEST_BYTES,
|
|
6
6
|
__require,
|
|
7
|
+
buildCostSummary,
|
|
7
8
|
cacheDir,
|
|
8
9
|
calendarPeriodBounds,
|
|
9
10
|
calendarPeriodWhere,
|
|
@@ -56,13 +57,61 @@ import {
|
|
|
56
57
|
upsertSubscription,
|
|
57
58
|
usageSnapshotFilterForPeriod,
|
|
58
59
|
validateIngest
|
|
59
|
-
} from "./chunks/index-
|
|
60
|
+
} from "./chunks/index-t0n32g8r.js";
|
|
61
|
+
// src/lib/comparison-contract.ts
|
|
62
|
+
function comparisonDateBounds(from, to) {
|
|
63
|
+
const valid = (value) => /^\d{4}-\d{2}-\d{2}$/.test(value) && Number.isFinite(Date.parse(value + "T00:00:00Z")) && new Date(value + "T00:00:00Z").toISOString().slice(0, 10) === value;
|
|
64
|
+
if (!valid(from) || !valid(to) || from > to) {
|
|
65
|
+
throw new RangeError("from and to must be real YYYY-MM-DD UTC dates with from <= to");
|
|
66
|
+
}
|
|
67
|
+
const end = new Date(to + "T00:00:00Z");
|
|
68
|
+
end.setUTCDate(end.getUTCDate() + 1);
|
|
69
|
+
const exclusive = end.toISOString().slice(0, 10);
|
|
70
|
+
if (!valid(exclusive))
|
|
71
|
+
throw new RangeError("to exceeds the supported UTC date range");
|
|
72
|
+
return { time_zone: "UTC", start_date: from, end_date_exclusive: exclusive };
|
|
73
|
+
}
|
|
74
|
+
function requireCurrentRangeStats(value, from, to) {
|
|
75
|
+
if (!value || typeof value !== "object")
|
|
76
|
+
throw new Error("COMPARISON_REPORT_UNAVAILABLE: Invalid response");
|
|
77
|
+
const report = value;
|
|
78
|
+
let money;
|
|
79
|
+
try {
|
|
80
|
+
money = requireCurrentCostSummary(report.money);
|
|
81
|
+
} catch {
|
|
82
|
+
throw new Error("COMPARISON_REPORT_UNAVAILABLE: The service must support comparison coverage");
|
|
83
|
+
}
|
|
84
|
+
for (const key of ["sessions", "requests", "tokens"]) {
|
|
85
|
+
if (!Number.isSafeInteger(report[key]) || report[key] < 0)
|
|
86
|
+
throw new Error("COMPARISON_REPORT_UNAVAILABLE: Invalid " + key);
|
|
87
|
+
}
|
|
88
|
+
if (report.cost !== money.total_usd || report.requests !== money.request_rows || report.tokens !== money.tokens || money.session_only_sessions !== 0 || money.session_only_value_usd !== 0 || money.requests !== money.request_rows) {
|
|
89
|
+
throw new Error("COMPARISON_REPORT_UNAVAILABLE: Inconsistent monetary coverage");
|
|
90
|
+
}
|
|
91
|
+
const knownRows = money.request_rows - money.unknown_price_requests;
|
|
92
|
+
const completeness = money.request_rows === 0 ? "no_records" : money.unknown_price_requests === 0 ? "complete" : knownRows > 0 ? "partial" : "unavailable";
|
|
93
|
+
if (money.completeness !== completeness || knownRows === 0 && money.total_usd !== 0 || money.sessions > money.request_rows || money.request_rows === 0 && money.tokens !== 0) {
|
|
94
|
+
throw new Error("COMPARISON_REPORT_UNAVAILABLE: Inconsistent request coverage");
|
|
95
|
+
}
|
|
96
|
+
const bounds = money.period_bounds;
|
|
97
|
+
if (!bounds.start_date || !bounds.end_date_exclusive || bounds.start_date >= bounds.end_date_exclusive) {
|
|
98
|
+
throw new Error("COMPARISON_REPORT_UNAVAILABLE: Missing comparison dates");
|
|
99
|
+
}
|
|
100
|
+
if (from !== undefined || to !== undefined) {
|
|
101
|
+
const expected = comparisonDateBounds(from, to);
|
|
102
|
+
if (bounds.start_date !== expected.start_date || bounds.end_date_exclusive !== expected.end_date_exclusive) {
|
|
103
|
+
throw new Error("COMPARISON_REPORT_UNAVAILABLE: Response dates do not match the requested range");
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
return report;
|
|
107
|
+
}
|
|
108
|
+
|
|
60
109
|
// src/lib/store/index.ts
|
|
61
110
|
import { randomUUID } from "crypto";
|
|
62
111
|
// package.json
|
|
63
112
|
var package_default = {
|
|
64
113
|
name: "@hasna/economy",
|
|
65
|
-
version: "0.5.
|
|
114
|
+
version: "0.5.8",
|
|
66
115
|
description: "AI coding cost tracker \u2014 CLI + MCP server + REST API for Claude Code, Codex, OpenCode, Cursor, Pi, and Hermes, with legacy Gemini CLI session and Gemini API billing ingestion",
|
|
67
116
|
repository: {
|
|
68
117
|
type: "git",
|
|
@@ -1121,11 +1170,20 @@ function queryExportRows(db, type, period) {
|
|
|
1121
1170
|
return db.prepare(`SELECT * FROM economy_effective_sessions WHERE ${where} ORDER BY started_at DESC`).all();
|
|
1122
1171
|
}
|
|
1123
1172
|
function queryRangeStats(db, from, to) {
|
|
1124
|
-
const
|
|
1125
|
-
|
|
1126
|
-
|
|
1173
|
+
const bounds = comparisonDateBounds(from, to);
|
|
1174
|
+
const groups = db.prepare(`
|
|
1175
|
+
SELECT cost_basis, model, CASE WHEN cost_usd = 0 THEN 1 WHEN cost_usd < 0 THEN 2 ELSE 0 END AS zero_cost,
|
|
1176
|
+
SUM(cost_usd) AS cost_usd, COUNT(*) AS requests,
|
|
1177
|
+
COALESCE(SUM(input_tokens),0) AS input_tokens, COALESCE(SUM(output_tokens),0) AS output_tokens,
|
|
1178
|
+
COALESCE(SUM(cache_read_tokens),0) AS cache_read_tokens, COALESCE(SUM(cache_create_tokens),0) AS cache_create_tokens,
|
|
1179
|
+
COALESCE(SUM(cache_create_1h_tokens),0) AS cache_create_1h_tokens
|
|
1180
|
+
FROM economy_effective_requests WHERE DATE(timestamp) BETWEEN ? AND ?
|
|
1181
|
+
GROUP BY cost_basis, model, CASE WHEN cost_usd = 0 THEN 1 WHEN cost_usd < 0 THEN 2 ELSE 0 END
|
|
1182
|
+
`).all(from, to);
|
|
1183
|
+
const requestSessions = db.prepare("SELECT COUNT(DISTINCT session_id) AS sessions FROM economy_effective_requests WHERE DATE(timestamp) BETWEEN ? AND ?").get(from, to);
|
|
1184
|
+
const money = buildCostSummary("all", bounds, groups, { sessions: 0, requests: 0, tokens: 0, cost_usd: 0 }, requestSessions.sessions, listModelPricing(db));
|
|
1127
1185
|
const s = db.prepare(`SELECT COUNT(*) as sessions FROM economy_effective_sessions WHERE DATE(started_at) BETWEEN ? AND ?`).get(from, to);
|
|
1128
|
-
return { cost:
|
|
1186
|
+
return { cost: money.total_usd, money, requests: money.request_rows, tokens: money.tokens, sessions: s.sessions };
|
|
1129
1187
|
}
|
|
1130
1188
|
function queryForecast(db, now = new Date) {
|
|
1131
1189
|
const month = resolveReportingInterval({ kind: "calendar", period: "month" }, now);
|
|
@@ -1340,7 +1398,7 @@ class LocalStore {
|
|
|
1340
1398
|
_db;
|
|
1341
1399
|
async db() {
|
|
1342
1400
|
if (!this._db) {
|
|
1343
|
-
const { openDatabase } = await import("./chunks/sqlite-store-
|
|
1401
|
+
const { openDatabase } = await import("./chunks/sqlite-store-8t4anw98.js");
|
|
1344
1402
|
this._db = openDatabase();
|
|
1345
1403
|
ensurePricingSeeded(this._db);
|
|
1346
1404
|
}
|
|
@@ -1617,7 +1675,7 @@ class ApiStore {
|
|
|
1617
1675
|
return cloudListItems(this.cloud, "export", q({ type, period }));
|
|
1618
1676
|
}
|
|
1619
1677
|
async rangeStats(from, to) {
|
|
1620
|
-
return cloudObject(this.cloud, "/compare", q({ from, to }));
|
|
1678
|
+
return requireCurrentRangeStats(await cloudObject(this.cloud, "/compare", q({ from, to })), from, to);
|
|
1621
1679
|
}
|
|
1622
1680
|
async forecast() {
|
|
1623
1681
|
return cloudObject(this.cloud, "/forecast");
|
package/dist/lib/analytics.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { CostSummary } from '../types/index.js';
|
|
1
2
|
import type { SqliteAdapter as Database } from '../db/sqlite-adapter.js';
|
|
2
3
|
export interface ProjectDetailModel {
|
|
3
4
|
model: string;
|
|
@@ -28,7 +29,9 @@ export type ExportType = 'sessions' | 'requests';
|
|
|
28
29
|
/** Raw rows for a CSV export. CSV formatting stays in the caller. */
|
|
29
30
|
export declare function queryExportRows(db: Database, type: ExportType, period: string): Array<Record<string, unknown>>;
|
|
30
31
|
export interface RangeStats {
|
|
32
|
+
/** Known selected-request usage value subtotal. Use money.complete_total_usd for a complete total, never payment. */
|
|
31
33
|
cost: number;
|
|
34
|
+
money: CostSummary;
|
|
32
35
|
requests: number;
|
|
33
36
|
tokens: number;
|
|
34
37
|
sessions: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../src/lib/analytics.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../src/lib/analytics.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AASpD,OAAO,KAAK,EAAE,aAAa,IAAI,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAIxE,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAA;IACV,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,cAAc,EAAE,MAAM,CAAA;IACtB,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAChD,MAAM,EAAE,kBAAkB,EAAE,CAAA;IAC5B,YAAY,EAAE,oBAAoB,EAAE,CAAA;CACrC;AAED,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAa,GAAG,aAAa,GAAG,IAAI,CAoD3G;AAID,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,UAAU,CAAA;AAShD,qEAAqE;AACrE,wBAAgB,eAAe,CAC7B,EAAE,EAAE,QAAQ,EACZ,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,MAAM,GACb,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAOhC;AAID,MAAM,WAAW,UAAU;IACzB,qHAAqH;IACrH,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,WAAW,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,+EAA+E;AAC/E,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,UAAU,CAqBlF;AAID,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,MAAM,CAAA;IACrB,gBAAgB,EAAE,MAAM,CAAA;IACxB,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,mBAAmB,EAAE,MAAM,CAAA;IAC3B,YAAY,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;IACvD,kBAAkB,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;CAC9D;AAED,0DAA0D;AAC1D,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,EAAE,GAAG,GAAE,IAAiB,GAAG,YAAY,CAiChF;AAID,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;CACb;AAED,iFAAiF;AACjF,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,QAAQ,GAAG,eAAe,EAAE,CAWpE"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { RangeStats } from './analytics.js';
|
|
2
|
+
import type { CalendarPeriodBounds } from './periods.js';
|
|
3
|
+
export declare function comparisonDateBounds(from: string, to: string): CalendarPeriodBounds;
|
|
4
|
+
/** Old servers' bare cost sums cannot satisfy the comparison coverage contract. */
|
|
5
|
+
export declare function requireCurrentRangeStats(value: unknown, from?: string, to?: string): RangeStats;
|
|
6
|
+
export declare function formatComparisonValue(report: RangeStats): string;
|
|
7
|
+
export declare function comparisonValueChange(left: RangeStats, right: RangeStats): string;
|
|
8
|
+
//# sourceMappingURL=comparison-contract.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comparison-contract.d.ts","sourceRoot":"","sources":["../../src/lib/comparison-contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAGxD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,oBAAoB,CAYnF;AAED,mFAAmF;AACnF,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,UAAU,CAiC/F;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAEhE;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM,CASjF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comparison-test-contract.d.ts","sourceRoot":"","sources":["../../src/lib/comparison-test-contract.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAM5D,wBAAsB,wBAAwB,CAAC,EAAE,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAwF/E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/store/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/store/index.ts"],"names":[],"mappings":"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"}
|