@oh-my-pi/omp-stats 18.13.2 → 18.14.0

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 CHANGED
@@ -2,6 +2,22 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [18.14.0] - 2026-10-29
6
+
7
+ ### Changed
8
+
9
+ - Improved `omp stats` session synchronization performance by approximately 2–5× on large histories. The first sync after upgrading may take up to a minute while the stats database is optimized.
10
+
11
+ ### Fixed
12
+
13
+ - Fixed `/stats` and `omp stats` failing when another dashboard was syncing sessions or the configured port was already in use; busy dashboards are now reused, and a free port is selected when necessary.
14
+
15
+ ## [18.13.3] - 2026-10-28
16
+
17
+ ### Changed
18
+
19
+ - Updated Bun engine requirement to ≥1.4.4
20
+
5
21
  ## [18.12.0] - 2026-10-17
6
22
 
7
23
  ### Fixed
package/README.md CHANGED
@@ -11,15 +11,15 @@ Local observability dashboard for AI usage statistics.
11
11
 
12
12
  ## Metrics Tracked
13
13
 
14
- | Metric | Calculation |
15
- |--------|-------------|
16
- | Tokens/s | `output_tokens / (duration / 1000)` |
17
- | Cache Rate | `cache_read / (input + cache_read) * 100` |
18
- | Cache Savings | `(uncached prompt cost - actual prompt cost) / uncached prompt cost * 100` |
19
- | Error Rate | `count(stopReason=error) / total_calls * 100` |
20
- | API-equivalent estimate | Sum of token usage priced with the matching public API rate card |
21
- | Avg Latency | Mean of `duration` |
22
- | TTFT | Mean of `ttft` (time to first token) |
14
+ | Metric | Calculation |
15
+ | ----------------------- | -------------------------------------------------------------------------- |
16
+ | Tokens/s | `output_tokens / (duration / 1000)` |
17
+ | Cache Rate | `cache_read / (input + cache_read) * 100` |
18
+ | Cache Savings | `(uncached prompt cost - actual prompt cost) / uncached prompt cost * 100` |
19
+ | Error Rate | `count(stopReason=error) / total_calls * 100` |
20
+ | API-equivalent estimate | Sum of token usage priced with the matching public API rate card |
21
+ | Avg Latency | Mean of `duration` |
22
+ | TTFT | Mean of `ttft` (time to first token) |
23
23
 
24
24
  Subscription-backed models use matching public API prices when an exact public model exists; these values estimate API-equivalent usage rather than the user's bill. Subscription-only models without a public price are reported as N/A and excluded from dollar totals.
25
25
 
@@ -57,15 +57,15 @@ console.log(stats.byModel[0].avgTokensPerSecond);
57
57
 
58
58
  ## API Endpoints
59
59
 
60
- | Endpoint | Description |
61
- |----------|-------------|
62
- | `GET /api/stats` | Overall stats with all breakdowns |
63
- | `GET /api/stats/models` | Per-model statistics |
64
- | `GET /api/stats/folders` | Per-folder/project statistics |
65
- | `GET /api/stats/timeseries` | Hourly time series data |
66
- | `GET /api/events` | Server-sent live status: sync progress, data version, rollup backlog |
67
- | `GET /api/status` | Current live status (same shape as the events) |
68
- | `POST /api/sync` | Start a background sync; progress arrives on `/api/events` |
60
+ | Endpoint | Description |
61
+ | --------------------------- | -------------------------------------------------------------------- |
62
+ | `GET /api/stats` | Overall stats with all breakdowns |
63
+ | `GET /api/stats/models` | Per-model statistics |
64
+ | `GET /api/stats/folders` | Per-folder/project statistics |
65
+ | `GET /api/stats/timeseries` | Hourly time series data |
66
+ | `GET /api/events` | Server-sent live status: sync progress, data version, rollup backlog |
67
+ | `GET /api/status` | Current live status (same shape as the events) |
68
+ | `POST /api/sync` | Start a background sync; progress arrives on `/api/events` |
69
69
 
70
70
  ## Data Storage
71
71