@cryptiklemur/lattice 1.18.1 → 1.18.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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cryptiklemur/lattice",
|
|
3
|
-
"version": "1.18.
|
|
3
|
+
"version": "1.18.2",
|
|
4
4
|
"description": "Multi-machine agentic dashboard for Claude Code. Monitor sessions, manage MCP servers and skills, orchestrate across mesh-networked nodes.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Aaron Scherer <me@aaronscherer.me>",
|
|
@@ -64,8 +64,9 @@ function formatDate(ts: number): string {
|
|
|
64
64
|
return year + "-" + month + "-" + day;
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
-
function getCostBucket(cost: number): string {
|
|
68
|
-
if (cost
|
|
67
|
+
function getCostBucket(cost: number): string | null {
|
|
68
|
+
if (cost <= 0) return null;
|
|
69
|
+
if (cost < 0.01) return "<$0.01";
|
|
69
70
|
if (cost < 0.05) return "$0.01-0.05";
|
|
70
71
|
if (cost < 0.10) return "$0.05-0.10";
|
|
71
72
|
if (cost < 0.50) return "$0.10-0.50";
|
|
@@ -254,7 +255,7 @@ function aggregate(sessions: SessionData[], period: AnalyticsPeriod): AnalyticsP
|
|
|
254
255
|
var toolStats = new Map<string, { count: number; totalCost: number; sessions: number }>();
|
|
255
256
|
|
|
256
257
|
var costBuckets = new Map<string, number>();
|
|
257
|
-
var bucketOrder = ["
|
|
258
|
+
var bucketOrder = ["<$0.01", "$0.01-0.05", "$0.05-0.10", "$0.10-0.50", "$0.50-1.00", "$1.00-5.00", "$5.00+"];
|
|
258
259
|
for (var b = 0; b < bucketOrder.length; b++) {
|
|
259
260
|
costBuckets.set(bucketOrder[b], 0);
|
|
260
261
|
}
|
|
@@ -335,7 +336,9 @@ function aggregate(sessions: SessionData[], period: AnalyticsPeriod): AnalyticsP
|
|
|
335
336
|
});
|
|
336
337
|
|
|
337
338
|
var bucket = getCostBucket(sess.cost);
|
|
338
|
-
|
|
339
|
+
if (bucket) {
|
|
340
|
+
costBuckets.set(bucket, (costBuckets.get(bucket) || 0) + 1);
|
|
341
|
+
}
|
|
339
342
|
}
|
|
340
343
|
|
|
341
344
|
var totalTokensAll = totalInput + totalOutput + totalCacheRead + totalCacheCreation;
|
|
@@ -388,7 +391,8 @@ function aggregate(sessions: SessionData[], period: AnalyticsPeriod): AnalyticsP
|
|
|
388
391
|
}
|
|
389
392
|
|
|
390
393
|
var sessionBubbles: AnalyticsPayload["sessionBubbles"] = [];
|
|
391
|
-
var
|
|
394
|
+
var nonZeroCost = filtered.filter(function (s) { return s.cost > 0; });
|
|
395
|
+
var sorted = nonZeroCost.slice().sort(function (a, b) {
|
|
392
396
|
return (b.endTime || b.startTime) - (a.endTime || a.startTime);
|
|
393
397
|
});
|
|
394
398
|
var bubbleCap = Math.min(sorted.length, 200);
|
|
@@ -572,7 +576,7 @@ function aggregate(sessions: SessionData[], period: AnalyticsPeriod): AnalyticsP
|
|
|
572
576
|
|
|
573
577
|
var sessionTimeline: AnalyticsPayload["sessionTimeline"] = [];
|
|
574
578
|
var tlSorted = filtered
|
|
575
|
-
.filter(function (s) { return s.startTime > 0 && s.endTime > 0; })
|
|
579
|
+
.filter(function (s) { return s.startTime > 0 && s.endTime > 0 && s.cost > 0; })
|
|
576
580
|
.sort(function (a, b) { return b.startTime - a.startTime; });
|
|
577
581
|
var tlCap = Math.min(tlSorted.length, 50);
|
|
578
582
|
for (var tli = 0; tli < tlCap; tli++) {
|