From 144b0fec01728c6997456defc6dc7f27427df1ba Mon Sep 17 00:00:00 2001 From: Emil Rossing Date: Tue, 14 Jul 2026 14:18:58 +0200 Subject: [PATCH 1/3] feat(desktop): Text changes to messages --- desktop/docs/UI_FEEDBACK.md | 2 +- desktop/src-tauri/src/lib.rs | 14 ------------ .../src/components/ObservationIndexPrompt.tsx | 4 ++-- desktop/src/lib/destructivePolicy.ts | 16 ++++++-------- desktop/src/lib/syncUiCopy.test.ts | 22 ++++++++++++++----- desktop/src/lib/syncUiCopy.ts | 11 +++++++--- desktop/src/pages/ProfilesPage.tsx | 2 -- desktop/src/pages/SyncPage.tsx | 4 ++-- desktop/src/types/domain.ts | 5 ----- 9 files changed, 37 insertions(+), 43 deletions(-) diff --git a/desktop/docs/UI_FEEDBACK.md b/desktop/docs/UI_FEEDBACK.md index 91dba17b1..69ef43ad9 100644 --- a/desktop/docs/UI_FEEDBACK.md +++ b/desktop/docs/UI_FEEDBACK.md @@ -34,7 +34,7 @@ Single source of truth for how the shell surfaces status, errors, and confirmati **Use for:** destructive actions, import-with-issues, closing unsaved observation tabs. -- `confirmDestructiveAction()` for destructive flows (always strict production-tier wording). +- `confirmDestructiveAction()` for destructive flows (clear, profile-scoped wording). - `confirm()` from `@tauri-apps/plugin-dialog` for save-anyway / import-anyway / tab discard (Save / Don't save / Cancel via separate flows). ## Retired patterns diff --git a/desktop/src-tauri/src/lib.rs b/desktop/src-tauri/src/lib.rs index f8f9de340..9d7c74085 100644 --- a/desktop/src-tauri/src/lib.rs +++ b/desktop/src-tauri/src/lib.rs @@ -103,16 +103,6 @@ pub struct BundleFormSpec { pub ui_schema: Value, } -/// Client-side guardrail for confirmations (not interpreted by Synkronus). -#[derive(Debug, Clone, Copy, Serialize, Deserialize, Default, PartialEq, Eq)] -#[serde(rename_all = "lowercase")] -enum ProfileEnvironment { - #[default] - Production, - Staging, - Development, -} - #[derive(Debug, Clone, Copy, Serialize, Deserialize, Default, PartialEq, Eq)] #[serde(rename_all = "snake_case")] enum DefaultAppMode { @@ -132,8 +122,6 @@ struct ServerProfile { database_path: String, attachments_path: Option, #[serde(default)] - environment: ProfileEnvironment, - #[serde(default)] default_app_mode: DefaultAppMode, #[serde(default)] custom_app_developer_mode: bool, @@ -847,7 +835,6 @@ fn default_app_config(data_dir: &Path) -> AppConfigFile { workspace_path: Some(workspace_dir.to_string_lossy().to_string()), database_path: db_path.to_string_lossy().to_string(), attachments_path: None, - environment: ProfileEnvironment::default(), default_app_mode: DefaultAppMode::default(), custom_app_developer_mode: false, custom_app_local_folder: None, @@ -870,7 +857,6 @@ fn migrate_legacy_workspace(workspace_path: &str, _data_dir: &Path) -> AppConfig workspace_path: Some(workspace_path.to_string()), database_path: db.to_string_lossy().to_string(), attachments_path: None, - environment: ProfileEnvironment::default(), default_app_mode: DefaultAppMode::default(), custom_app_developer_mode: false, custom_app_local_folder: None, diff --git a/desktop/src/components/ObservationIndexPrompt.tsx b/desktop/src/components/ObservationIndexPrompt.tsx index f06b387ca..bed1b3f38 100644 --- a/desktop/src/components/ObservationIndexPrompt.tsx +++ b/desktop/src/components/ObservationIndexPrompt.tsx @@ -67,8 +67,8 @@ export function ObservationIndexPrompt() {

- Indexes are created on this profile's production database (the - same store used for sync and observations). This is not limited to + Indexes are created in this profile's local database (the same + store used for sync and observations). This is not limited to developer mode or the dev mirror folder.