feat: AI based permission checks
This commit is contained in:
@@ -4,6 +4,7 @@ use std::sync::RwLock;
|
||||
#[derive(Clone)]
|
||||
pub(super) struct PreferenceDraft {
|
||||
pub(super) model: ModelChoice,
|
||||
pub(super) default_permission_mode: PermissionMode,
|
||||
pub(super) legacy_mtp_enabled: bool,
|
||||
pub(super) dspark_enabled: bool,
|
||||
pub(super) idle_timeout_minutes: String,
|
||||
@@ -63,6 +64,7 @@ impl PreferenceDraft {
|
||||
let speculative = &runtime.speculative;
|
||||
Self {
|
||||
model: config.model,
|
||||
default_permission_mode: config.default_permission_mode,
|
||||
legacy_mtp_enabled: speculative.legacy_mtp_enabled,
|
||||
dspark_enabled: speculative.dspark_enabled,
|
||||
idle_timeout_minutes: config.idle_timeout_minutes.to_string(),
|
||||
@@ -407,6 +409,7 @@ impl App {
|
||||
};
|
||||
let config = Config {
|
||||
model: self.preference_draft.model,
|
||||
default_permission_mode: self.preference_draft.default_permission_mode,
|
||||
idle_timeout_minutes,
|
||||
a2ui_enabled: self.preference_draft.a2ui_enabled,
|
||||
endpoint: EndpointConfig {
|
||||
@@ -524,6 +527,10 @@ impl App {
|
||||
}
|
||||
self.preference_error = None;
|
||||
}
|
||||
Message::PreferencePermissionModeChanged(mode) => {
|
||||
self.preference_draft.default_permission_mode = mode;
|
||||
self.preference_error = None;
|
||||
}
|
||||
Message::PreferenceLegacyMtpChanged(enabled) => {
|
||||
self.preference_draft.legacy_mtp_enabled =
|
||||
self.preference_draft.model.supports_dspark() && enabled;
|
||||
|
||||
Reference in New Issue
Block a user