host: saved workspaces validation

Named tab/pane/deck layouts, bounded and well-formed (slug ids, 1-60
character names, known tab kinds, http(s) URLs, size caps), moved from
the wayBetter for X app unchanged with its tests.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
CRTkafa 2026-09-29 10:59:20 +07:00
parent 8ff27a629f
commit 0d6e7d3323
2 changed files with 219 additions and 0 deletions

View file

@ -17,6 +17,7 @@
//! - [`i18n`]: the strings native UI and site tabs get in the owner's language (validated data), OS locale.
//! - [`backup`]: the settings backup envelope, secret scrubbing and the plugin/account sections.
//! - [`sync`]: encrypted settings sync through a folder the owner syncs (Argon2id + XChaCha20-Poly1305).
//! - [`workspaces`]: saved tab/pane/deck layouts, bounded and well-formed (never evaluated).
//!
//! With the `tauri` feature, [`host`] adds the Tauri glue that does not depend on app state.
@ -31,6 +32,7 @@ pub mod site;
pub mod sync;
pub mod tabs;
pub mod update;
pub mod workspaces;
#[cfg(feature = "tauri")]
pub mod host;