Repository navigation
v0.7.0
Highlights
- Added the forward-only database evolution system: migration ledger, dry-run contract preflight, frozen SQLite/PostgreSQL baselines, repair paths, instance heartbeats, rollback compatibility checks, managed upgrade preflight, and auto-rollback support for failed boots.
- Expanded quota and billing controls with aggregate user limits, owner-safe quota history, atomic image admission accounting, granular pricing controls, Redis admission rollback hardening, and extracted billing domain, persistence, and adapter modules.
- Hardened administrator security across OAuth, password reset, CSP, session bounds, API key mutation authorization, provider/resource credential redaction, alert delivery secrets, image job access, forwarded headers, and provider egress proxy validation.
- Improved provider and gateway compatibility with configurable global egress proxy settings, preserved explicit Codex background nulls,
max_completion_tokenssupport across adapters, implicit-TLS/STARTTLS SMTP encryption modes, and safer legacy provider refresh routing. - Upgraded the admin console with per-key usage details, daily usage visibility, improved API key usage charts, locale-aware number formatting, and a redesigned localized login homepage.
- Added OpenAPI gateway reference documentation, refreshed token governance positioning, restart-safe production bootstrap checks, and stream quality observability for time-to-first-byte and interruptions.
- Continued modularization by moving billing, reconciliation, and method-routed server responsibilities into smaller domain-oriented modules with expanded regression coverage.
Release artifacts
- Linux native archives for
amd64andarm64, pluschecksums.txt, are built and attached by the release workflow. - Container images are published as
ghcr.io/astaxie/tokenhub-backend:0.7.0,:0.7, and:latest. - The frontend and SDK smoke-test package metadata were bumped to
0.7.0inchore(release): prepare v0.7.0.
All merged PRs since v0.6.0
Features and enhancements
- feat(db): add forward-only database evolution with migration ledger (#265) by @deepjerry-ai
- feat(quota): enforce aggregate user limits (#263) by @astaxie
- feat(api-keys): add per-key usage details (#276) by @imaben
- feat(admin): add daily usage dashboard (#277) by @astaxie
- feat(provider): add configurable global egress proxy (#273) by @deepjerry-ai
- feat(frontend): improve API key usage page charts and layout (#279) by @imaben
- feat(billing): add granular pricing controls (#283) by @astaxie
- feat(docs): add OpenAPI gateway reference (#284) by @astaxie
- feat(notification): support implicit-TLS SMTP email channels (#271) by @excniesNIED
- feat(observability): stream time-to-first-byte and interruption metrics (#141) by @coldbrewtea
- feat(frontend): redesign login homepage (#287) by @astaxie
Fixes and hardening
- fix(store): correct quota accounting under bad usage and clock skew (#261) by @debin-ge
- fix(security): harden administrator authentication and secrets (#257) by @deepjerry-ai
- fix(codex): omit unset background probe parameter (#269) by @Mr0bean
- fix(deploy): make production bootstrap restart-safe (#281) by @legendtkl
- fix(api-keys): restrict assigned key mutations (#282) by @astaxie
- fix(gateway): honor max_completion_tokens in adapters (#293) by @astaxie
- fix(db): raise sqlite billing migration budget (#292) by @deepjerry-ai
Refactors, tests, docs, and maintenance
- refactor(server): route billing and reconciliation by method (#258) by @bailu-ZZ
- refactor(server): route legacy provider refresh action by method (#267) by @bailu-ZZ
- refactor(billing): extract domain module (#272) by @bailu-ZZ
- refactor(billing): extract persistence and adapter modules (#286) by @bailu-ZZ
- refactor(reconciliation): extract reconciliation domain module (#288) by @bailu-ZZ
- test(metrics): wait for observation after image job completion (#285) by @excniesNIED
- docs(readme): emphasize enterprise token governance (#278) by @astaxie
- docs: refresh token governance positioning (#280) by @astaxie
- docs(contributors): refresh localized contributor lists in the release range
Full Changelog: v0.6.0...v0.7.0