v4.8.0
What's Changed
- feat(sponsors): make project funding discoverable by @junhoyeo in #950
- Add function to union MiMo Code databases from multiple directories by @zhangyunan1994 in #949
- feat(landing): add a dedicated sponsor section by @junhoyeo in #951
- feat(cli): add android-arm64 prebuilt for Termux by @alifakbar111 in #948
- chore(ci): prevent PR and release build drift by @junhoyeo in #953
- fix(submit): preserve usage history after local session cleanup by @junhoyeo (d9df8c9)
- fix(submit): derive session metrics per device and harden the active-time guard by @junhoyeo in #955
- feat(sessions): query session_model_usage for per-model token breakdown in Hermes parser by @n1klaus in #961
- feat(tui): show model names with family-shade colors in Sessions tab by @cmalec in #956
- ci: update coverage badge [skip ci] by @github-actions[bot] (3a2d2c5)
- fix(submit): clamp submission token aggregates to bigint by @junhoyeo in #959
- fix(kimi): resolve symbolic usage models from requests by @mijanx in #967
- feat(cursor): auto-login from local Cursor desktop state.vscdb by @FlintyLemming in #968
- docs(tui): propose a width-budgeted column set for the Sessions tab by @junhoyeo in #965
- fix(tui): budget the Sessions columns instead of over-subscribing them by @junhoyeo in #966
- feat(frontend): add display timezone preference for profile charts by @junhoyeo in #952
- fix(autosubmit): verify macOS launchd activation before reporting success by @Mathews-Tom in #971
- chore: ignore Claude Code worktrees by @junhoyeo in #974
- fix(autosubmit): report when the scheduled copy is a stale build by @junhoyeo in #973
- feat(frontend): add sitemap.xml and robots.txt by @junhoyeo (8e80ba1)
- fix(frontend): canonicalize the query-param variants of indexable pages by @junhoyeo (9d4bcde)
- docs(frontend): correct the homeUrl trailing-slash comment by @junhoyeo (e632b8d)
- fix(frontend): anchor core-page lastmod to real submission activity by @junhoyeo (52d37e9)
- feat(frontend): add privacy, terms, and contact pages by @junhoyeo (a15ca1c)
- fix(frontend): give each indexable page its own title and description by @junhoyeo (1594ecf)
- feat(frontend): render per-profile and per-group Open Graph cards by @junhoyeo (1c39f7c)
- fix(embed): coerce the bigint rank so UserEmbedStats.rank is really a number by @junhoyeo (fcdbc0d)
- feat(og): brand the cards with Manrope, Pretendard, and the wordmark by @junhoyeo (4b3f9bb)
- fix(9router): read usageHistory table, handle missing requestDetails by @n1klaus in #975
- fix(kimi): treat a blank KIMI_CODE_HOME as unset by @junhoyeo in #976
- fix(kimi): reject non-positive wire timestamps instead of bucketing pre-epoch by @junhoyeo in #977
- fix(opencodereview): keep timestampless llm_response records distinct by @junhoyeo in #978
- feat(clients): add Senpi (OmO Native) token usage tracking by @junhoyeo in #979
- test(provider): lock family matching for version-suffixed model ids by @junhoyeo in #981
- fix(provider): ignore Ollama route prefixes during inference by @junhoyeo in #982
- feat(moderation): hide suspect accounts from the leaderboard without deleting them by @junhoyeo in #980
- fix(tui): stop forcing Terminal.app into compatible color mode by @jyuwaaw in #983
- fix(moderation): drop the implied-rate floor that flagged 38 innocent accounts by @junhoyeo in #984
- feat(report): add MiniMax summarizer backend via OpenAI-compatible API by @octo-patch in #985
- docs(design): recovery plan for ratchet inflation that preserves cleanup protection by @junhoyeo (db82945)
- docs(design): confirm the invariant assumption; flag session rotation as a second cause by @junhoyeo (10c88c9)
- docs(design): gate on the token total, not active time by @junhoyeo (1d844c3)
- docs(design): rebuild the plan against the actual merge path by @junhoyeo (1a66757)
- docs(design): reorder by risk -- fix the read path before rewriting any rows by @junhoyeo (a435091)
- docs(design): bucket the high-water by month; a lifetime total swallows new work by @junhoyeo (e770eff)
- docs(design): stop calling bucketing a fix; measure the width and pin the key by @junhoyeo (01612a1)
- docs(design): fold in audit findings; the heal would have silently no-opped by @junhoyeo (96e58fd)
- docs(design): fix a stale header and a Phase 2 edge that zeroes live accounts by @junhoyeo (f0d2938)
- docs(design): split Phase 4 into a recorded snapshot and an offline reconcile by @junhoyeo (152f238)
- fix(leaderboard): sum only the filtered client's tokens on period boards by @junhoyeo in #988
- fix(submit): stop the alias fold from mutating the stored raw breakdown by @junhoyeo in #989
- fix(opencodereview): parse the client on the submit path, not just locally by @junhoyeo in #990
- fix(groups): sum only the filtered client's tokens on group period boards by @junhoyeo in #991
- fix(profile): stop the day aggregator from mutating stored breakdown rows by @junhoyeo in #992
- docs(design): mark the #960 adjacent fixes as landed and refresh the citations by @junhoyeo (7e1c702)
- docs(agents): document the rg pitfalls that silently produce empty results by @junhoyeo (f786367)
- docs(design): record the #960 census and re-gate the phases on what it showed by @junhoyeo (80491ad)
- docs(design): measure Phase 1's write cost and move it off the submit transaction by @junhoyeo (8a06eb5)
- docs(design): add Phase 1.5 dual-read, and record why the warm-up is forced by @junhoyeo (7490fa4)
- docs(design): verify Phase 3's cost instead of asserting it by @junhoyeo (5678d0a)
- feat: add Augment Code (Auggie) local session client by @luancm in #987
- fix(release): allow first-time publish of new platform packages in npm release-state check by @junhoyeo in #995
- fix: clean up lint regressions from the augment client merge by @junhoyeo (fce7747)
New Contributors
- @luancm made their first contribution in #987
- @octo-patch made their first contribution in #985
- @jyuwaaw made their first contribution in #983
- @FlintyLemming made their first contribution in #968
- @alifakbar111 made their first contribution in #948
- @zhangyunan1994 made their first contribution in #949
Full Changelog: v4.7.0...v4.8.0
