✨ Feature
- Added an admin Usage Statistics dashboard with date range, user, permission group, model, and billing-scope filters, plus trend charts and model/user rankings.
- Added project-level defaults for MCP tools and Skills, so new conversations inside a project can start with the right tool and Skill set automatically.
- Added cancellation handling for chat message submissions, keeping the stream connected long enough to preserve final partial content, usage, and settlement state.
- Added public branding APIs and a dynamic web app manifest, allowing deployed branding to drive frontend metadata, logos, icons, and PWA details.
- Added a generated
@deeix/api-contractpackage to keep backend Swagger contracts and frontend TypeScript API types aligned.
⚡ Optimization
- Improved assistant retry behavior so successful retry branches preserve usable conversation context.
- Improved tool-result handling by estimating tool calls/results in context budgets, trimming oversized outputs, and omitting opaque payloads from model context.
- Improved HTML Visual Prompt handling with theme-aware CSS variables, stricter safe-tag/style constraints, and better artifact preview theme matching.
- Improved project editing UI with dedicated controls for default MCP tools and Skills.
- Improved branding loading across app shell, login, settings, share pages, notifications, and screenshots.
- Simplified HTTP security middleware by removing app-level HTTPS redirects, leaving TLS and redirect policy to the deployment layer.
- Migrated frontend workspace tooling to a monorepo flow with shared contract generation and quality checks.
🐛 Fixed
- Fixed context loss after successful assistant retry.
- Fixed invalid recovered assistant retry lineage being accepted into conversation context.
- Fixed stale PWA caches by retiring the old service worker and clearing legacy cache entries.
- Fixed branding configuration not being consistently exposed through public frontend/runtime endpoints.
- Removed the identity-provider logo proxy path and simplified custom provider logo handling to avoid unsafe logo rendering flows.