Consume system bars, cutouts and docked keyboards in Android and iOS,
then let web content use the resulting viewport. Publish window wallpaper
strips through one shared background path.
Remove the old CSS and IME compensation layers, update layout ABI v2,
and keep the matching documentation and behavior tests together.
- Bump rmcp to 3.5 and migrate ClientInfo to ClientConfig.
- Use RMCP's built-in reqwest backend instead of the custom bounded client,
which shadowed upstream discover fallback for sessionless 4xx rejections.
- Map protocol preferences through one lifecycle table and reject a
negotiated version outside the preference's accepted set.
- Keep a single Auto retry for RMCP treating startup SSE errors as a closed
connection; drop the dead -32000 arm.
- Update the MCP boundary docs.
Sync secret inputs, info block animations, and remaining locale and help links.
Declare 1.19.0 compatibility and align architecture docs and localized READMEs.
Validation: pnpm run check; git diff --check.
Packaging and device tests skipped as requested.
- Refactored characters-adapter.js to intercept API calls for character management, replacing original function patches with fetch overrides.
- Updated chats-adapter.js to similarly intercept chat-related API calls, enhancing error handling and logging.
- Introduced theme management with new DTOs, services, and repositories for theme saving and deletion.
- Created file-based theme repository for persistent storage of themes.
- Developed themes-api.js to provide a Tauri backend interface for theme operations.
- Established themes-adapter.js to integrate the themes API with Tauri, handling fetch overrides for theme-related requests.
This commit introduces the initial phase of refactoring the SillyTavern backend
from Node.js to Rust, adopting a Clean Architecture approach. This foundational
work aims to improve performance, maintainability, and type safety.
Key accomplishments in this commit include:
* **Backend Refactoring & Architecture:**
* Restructured the backend codebase based on Clean Architecture principles.
* Implemented the core backend logic in Rust for several key modules.
* **API Endpoints Ported to Rust:**
* The following API endpoints have been successfully refactored to Rust:
- `/api/version`
- `/api/secrets`
- `/api/settings`
- `/api/avatars`
- `/api/chats`
- `/api/characters`
- `/api/groups`
- `/api/backgrounds`
* **Frontend Integration:**
* Injected Tauri adapters and necessary API communication layers into the
original SillyTavern frontend to interface with the new Rust backend.
* **Documentation:**
* Authored initial project documentation, including a Product Requirements
Document (PRD) and a comprehensive backend architecture overview.
This commit lays the groundwork for further development and migration of
remaining features to the new Rust-based backend.