From 115b04f20ed131cbc8d454e2fcae815d5d1848be Mon Sep 17 00:00:00 2001 From: infosave2007 Date: Sat, 8 Aug 2026 09:13:12 +0300 Subject: [PATCH] chore: release 0.2.40 --- CHANGELOG.md | 24 ++++++++++++++++++++++++ Cargo.lock | 2 +- Cargo.toml | 2 +- 3 files changed, 26 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 614178b..428201f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,30 @@ All notable changes to this project are documented here. The format is based on [Keep a Changelog](https://keepachangelog.com/). +## [0.2.40] - 2026-08-08 + +### Added +- **Per-key spend accounting** on the API-keys page: requests, tokens in/out and cost per key + for a selectable window (24h / 7d / 30d) plus a cumulative all-time cost column — "which + department spends what" at a glance. +- **Bounded stats on disk**: once `stats.jsonl` outgrows `stats.max_file_mb` (default 16, 0 + disables), records older than the retention window fold into cumulative per-account totals in + a small sidecar file (tmp+rename on both) and leave the log. All-time accounting survives + compaction and restarts; nothing is ever counted twice. +- **Per-complexity models inside a task rule**: each task is edited as rows of + "model + complexity" pairs — `[routing.tasks.code] low=["cheap"] high=["best"] any=[...]`. + The tier-specific pick leads its own tier, `any` (and legacy plain arrays) leads everywhere, + the global tier chain and `default` always remain as fallback, and high verdicts still + escalate over any-tier pins. + +### Changed +- Benchmark hard probes are generated from wider interdisciplinary pools (6 families each) and + retry once with a fresh template — the router's novelty decay no longer flips them red. + +### Fixed +- The `task-rule` badge is honest: it appears only when the rule actually chose the head of the + candidate chain, not whenever a rule merely exists for the task. + ## [0.2.39] - 2026-08-07 ### Added diff --git a/Cargo.lock b/Cargo.lock index 24abd44..632140c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -285,7 +285,7 @@ checksum = "1d07550c9036bf2ae0c684c4297d503f838287c83c53686d05370d0e139ae570" [[package]] name = "cortiq-gateway" -version = "0.2.39" +version = "0.2.40" dependencies = [ "anyhow", "arc-swap", diff --git a/Cargo.toml b/Cargo.toml index c4665fb..5638316 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cortiq-gateway" -version = "0.2.39" +version = "0.2.40" edition = "2021" rust-version = "1.75" license = "Apache-2.0"