Releases: katanemo/plano
Releases · katanemo/plano
0.4.22
What's Changed
- fix(anthropic-stream): avoid bare/duplicate message_stop on OpenAI upstream by @adilhafeez in #898
- fix: prevent index-out-of-bounds panic in signal analyzer follow-up by @adilhafeez in #896
- Add claude-opus-4-7 to anthropic provider models by @adilhafeez in #901
- Fix request closures during long-running streaming by @adilhafeez in #899
- Improve obs model name matching, latency metrics, and error reporting by @adilhafeez in #900
- Add Prometheus metrics endpoint and Grafana dashboard for brightstaff by @adilhafeez in #904
- add overrides.disable_signals to skip CPU-heavy signal analysis by @adilhafeez in #906
- signals: feature parity with the latest Signals paper. Porting logic from python repo by @syedhashmi in #903
- add jemalloc and /debug/memstats endpoint for OOM diagnosis by @adilhafeez in #885
- Add first-class ChatGPT subscription provider support by @Spherrrical in #881
- feat(providers): add Vercel AI Gateway and OpenRouter support by @Spherrrical in #902
- docs: align signals page with paper taxonomy by @syedhashmi in #910
- fix(routing): auto-migrate v0.3.0 inline routing_preferences to v0.4.0 top-level by @Spherrrical in #912
- signals: restore the pre-port flag marker emoji (🚩) by @syedhashmi in #913
- Bump version to 0.4.21 by @Spherrrical in #911
- fix(cli): drop function-local
import yamlshadowing module global inupby @Spherrrical in #916 - fix(config): accept
vercelandopenrouteras provider_interface values by @Spherrrical in #915 - Bump version to 0.4.22 by @Spherrrical in #917
Full Changelog: 0.4.20...0.4.22
release 0.4.20
What's Changed
- add Plano agent skills framework and rule set by @Spherrrical in #797
- Add DigitalOcean as a first-class LLM provider by @adilhafeez in #889
- Zero-config planoai up: pass-through proxy with auto-detected providers by @adilhafeez in #890
- planoai obs: live LLM observability TUI by @adilhafeez in #891
- fix: passthrough_auth accepts Anthropic x-api-key and normalizes to upstream format by @adilhafeez in #892
- fix: truncate oversized user messages in orchestrator routing prompt by @adilhafeez in #895
- release: bump version to 0.4.20 by @adilhafeez in #897
Full Changelog: 0.4.19...0.4.20
release 0.4.19
What's Changed
- Redis-backed session cache for cross-replica model affinity by @Spherrrical in #879
- use plano-orchestrator for LLM routing, remove arch-router by @adilhafeez in #886
- release 0.4.19 by @adilhafeez in #887
Full Changelog: 0.4.18...0.4.19
0.4.18
What's Changed
- Add first-class Xiaomi provider support by @Spherrrical in #863
- Model affinity for consistent model selection in agentic loops by @adilhafeez in #827
- release 0.4.18 by @Spherrrical in #878
Full Changelog: 0.4.17...0.4.18
0.4.17
What's Changed
- feat(web): merge DigitalOcean release announcement updates by @Spherrrical in #860
- feat(web): merge DigitalOcean release announcement updates by @Spherrrical in #862
- fix: resolve all open Dependabot security alerts by @adilhafeez in #866
- Publish docker images to DigitalOcean Container Registry by @adilhafeez in #868
- support developer role in chat completions API by @adilhafeez in #867
- ci(e2e): stabilize preference demo CI execution by @Spherrrical in #865
- release 0.4.17 by @adilhafeez in #869
Full Changelog: 0.4.16...0.4.17
0.4.17-rc1
What's Changed
- feat(web): merge DigitalOcean release announcement updates by @Spherrrical in #860
- feat(web): merge DigitalOcean release announcement updates by @Spherrrical in #862
- fix: resolve all open Dependabot security alerts by @adilhafeez in #866
- Publish docker images to DigitalOcean Container Registry by @adilhafeez in #868
- support developer role in chat completions API by @adilhafeez in #867
Full Changelog: 0.4.16...0.4.17-rc1
0.4.16
What's Changed
- Update black hook for Python 3.14 by @Spherrrical in #857
- Polish planoai up/down CLI output by @Spherrrical in #858
- replace production panics with graceful error handling in common crate by @adilhafeez in #844
- fix: route Perplexity OpenAI endpoints without /v1 by @Spherrrical in #854
- Handle null prefer in inline routing policy by @Spherrrical in #856
- release 0.4.16 by @Spherrrical in #859
Full Changelog: 0.4.15...0.4.16
0.4.15
What's Changed
- expand configuration reference with missing fields by @Spherrrical in #851
- model routing: cost/latency ranking with ranked fallback list by @adilhafeez in #849
- restructure model_metrics_sources to type + provider by @adilhafeez in #855
- release 0.4.15 by @adilhafeez in #853
Full Changelog: 0.4.14...0.4.15
release 0.4.14
What's Changed
- the orchestrator had a bug where it was setting the wrong headers for… by @salmanap in #839
- release 0.4.14 by @adilhafeez in #840
Full Changelog: 0.4.13...0.4.14
release 0.4.13
Highlights
Key Features
- Output Filter Chain — Adds support for output filter chains, enabling guardrails and processing on LLM responses in addition to the existing input/prompt filters (#822)
- Kubernetes Deployment Support — New K8s manifests and docs for self-hosted Arch-Router (vLLM) with GPU support, including deployment YAMLs and in-cluster routing config (#831)
Improvements
- Brightstaff Refactor — Extracted
AppStatestruct, cleaner error propagation, graceful shutdown (ctrl-c), and reorganized handlers intoagents/andllm/modules (#736) - Reliable Container Startup — Separated config generation from process startup in supervisord, ensuring configs are fully rendered before services launch (#838)
Security
- CVE-2026-0861 — Fixed glibc vulnerability via
apt-get upgradein Docker image (#832)
List of changes
- add k8s deployment manifests and docs for self-hosted Arch-Router by @adilhafeez in #831
- fix CVE-2026-0861: upgrade glibc via apt-get upgrade in Dockerfile by @adilhafeez in #832
- add output filter chain by @adilhafeez in #822
- refactor brightstaff by @adilhafeez in #736
- separate config generation from process startup in supervisord by @adilhafeez in #838
- release 0.4.13 by @adilhafeez in #837
Full Changelog: 0.4.12...0.4.13