@@ -1,29 +0,0 @@
-use anyhow::Result;
-use serde_json::Value;
-
-use crate::migrations::migrate_settings;
-
-pub fn remove_text_thread_settings(value: &mut Value) -> Result<()> {
- migrate_settings(value, &mut migrate_one)
-}
-
-fn migrate_one(obj: &mut serde_json::Map<String, Value>) -> Result<()> {
- // Remove `agent.default_view`
- if let Some(agent) = obj.get_mut("agent") {
- if let Some(agent_obj) = agent.as_object_mut() {
- agent_obj.remove("default_view");
- }
- }
-
- // Remove `edit_predictions.enabled_in_text_threads`
- if let Some(edit_predictions) = obj.get_mut("edit_predictions") {
- if let Some(edit_predictions_obj) = edit_predictions.as_object_mut() {
- edit_predictions_obj.remove("enabled_in_text_threads");
- }
- }
-
- // Remove top-level `slash_commands`
- obj.remove("slash_commands");
-
- Ok(())
-}
@@ -247,7 +247,6 @@ pub fn migrate_settings(text: &str) -> Result<Option<String>> {
migrations::m_2026_03_16::SETTINGS_PATTERNS,
&SETTINGS_QUERY_2026_03_16,
),
- MigrationType::Json(migrations::m_2026_03_31::remove_text_thread_settings),
];
run_migrations(text, migrations)
}
@@ -941,7 +940,8 @@ mod tests {
"foo": "bar"
},
"edit_predictions": {
- }
+ "enabled_in_text_threads": false,
+ }
}"#,
),
);
@@ -4480,109 +4480,4 @@ mod tests {
),
);
}
-
- #[test]
- fn test_remove_text_thread_settings() {
- assert_migrate_with_migrations(
- &[MigrationType::Json(
- migrations::m_2026_03_31::remove_text_thread_settings,
- )],
- r#"{
- "agent": {
- "default_model": {
- "provider": "anthropic",
- "model": "claude-sonnet"
- },
- "default_view": "text_thread"
- },
- "edit_predictions": {
- "mode": "eager",
- "enabled_in_text_threads": true
- },
- "slash_commands": {
- "cargo_workspace": {
- "enabled": true
- }
- }
-}"#,
- Some(
- r#"{
- "agent": {
- "default_model": {
- "provider": "anthropic",
- "model": "claude-sonnet"
- }
- },
- "edit_predictions": {
- "mode": "eager"
- }
-}"#,
- ),
- );
- }
-
- #[test]
- fn test_remove_text_thread_settings_only_default_view() {
- assert_migrate_with_migrations(
- &[MigrationType::Json(
- migrations::m_2026_03_31::remove_text_thread_settings,
- )],
- r#"{
- "agent": {
- "default_model": "claude-sonnet",
- "default_view": "thread"
- }
-}"#,
- Some(
- r#"{
- "agent": {
- "default_model": "claude-sonnet"
- }
-}"#,
- ),
- );
- }
-
- #[test]
- fn test_remove_text_thread_settings_only_slash_commands() {
- assert_migrate_with_migrations(
- &[MigrationType::Json(
- migrations::m_2026_03_31::remove_text_thread_settings,
- )],
- r#"{
- "slash_commands": {
- "cargo_workspace": {
- "enabled": true
- }
- },
- "vim_mode": true
-}"#,
- Some(
- r#"{
- "vim_mode": true
-}"#,
- ),
- );
- }
-
- #[test]
- fn test_remove_text_thread_settings_none_present() {
- assert_migrate_with_migrations(
- &[MigrationType::Json(
- migrations::m_2026_03_31::remove_text_thread_settings,
- )],
- r#"{
- "agent": {
- "default_model": {
- "provider": "anthropic",
- "model": "claude-sonnet"
- }
- },
- "edit_predictions": {
- "mode": "eager"
- }
-}"#,
- None,
- );
- }
}