v1.4.0: Auto-compact streaming, Bedrock summarization support, subagent orchestration, and Galaxy rebrand continuation
Major features: - Auto-compact: triggers conversation summarization when context window >= 85%, compacts Bedrock message history to a summary pair, and tracks live context tokens - Bedrock summarization: plumbs `is_summarization` flag through translator/client/response pipeline, handles SummarizeConversation input type, and marks `summarized` in metadata - Session restore: rebuilds bedrock_message_history from persisted task messages via newly-public `convert_proto_message`, preventing empty history on reconnect - Subagent orchestration: adds SubagentQuestion/Answer/CompletionSummary event types, parent-child question routing with depth limits, retry counting, and drain methods - Summarization UI: inline SummarizationView in AI blocks with progress/finished states Refactors: - Rename WarpTheme → GalaxyTheme across ~100 files (rebrand continuation) - Rename warp_home_config_dir → galaxy_home_config_dir and related path functions - Predefined rules: replace "System Defined Rule #N" with descriptive names (e.g. "Correctness Over Speed", "Never Guess") and add lookup helpers - Usage view: replace cumulative input/output token display with live context tokens, cache hit rate calculation, and separate cache read/write stats - Telemetry: remove verbose doc comments, simplify trait definitions - Facts view: simplify delete permission check (always allow local deletion) - Remove warp_managed_paths_watcher.rs (dead code) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.6
parent
eaa2ddc75e
commit
6f54e2cb30
@@ -3,7 +3,7 @@ use async_recursion::async_recursion;
|
||||
use async_trait::async_trait;
|
||||
use galaxy_core::ui::{
|
||||
color::hex_color::coloru_from_hex_string,
|
||||
theme::{AnsiColor, AnsiColors, TerminalColors, WarpTheme},
|
||||
theme::{AnsiColor, AnsiColors, TerminalColors, GalaxyTheme},
|
||||
};
|
||||
use galaxyui::fonts::FontInfo;
|
||||
use serde::Deserialize;
|
||||
@@ -289,7 +289,7 @@ impl AlacrittyTheme {
|
||||
} else {
|
||||
let bright = terminal_colors.bright;
|
||||
let accent = calculate_accent_color(background, foreground, cursor_color, bright);
|
||||
Ok(ThemeType::Single(WarpTheme::new(
|
||||
Ok(ThemeType::Single(GalaxyTheme::new(
|
||||
background.into(),
|
||||
foreground.into(),
|
||||
accent.into(),
|
||||
|
||||
@@ -2,7 +2,7 @@ use std::{path::PathBuf, sync::Arc};
|
||||
|
||||
use galaxy_core::ui::{
|
||||
color::hex_color::HexColorError as UiHexColorError,
|
||||
theme::{AnsiColors, WarpTheme},
|
||||
theme::{AnsiColors, GalaxyTheme},
|
||||
};
|
||||
use pathfinder_color::ColorU;
|
||||
use serde::Serialize;
|
||||
@@ -29,8 +29,8 @@ use super::iterm_parser::ITermProfile;
|
||||
|
||||
#[derive(Debug)]
|
||||
pub enum ThemeType {
|
||||
LightAndDark { light: WarpTheme, dark: WarpTheme },
|
||||
Single(WarpTheme),
|
||||
LightAndDark { light: GalaxyTheme, dark: GalaxyTheme },
|
||||
Single(GalaxyTheme),
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug)]
|
||||
|
||||
@@ -2,7 +2,7 @@ use std::path::PathBuf;
|
||||
|
||||
use async_trait::async_trait;
|
||||
use bitflags::bitflags;
|
||||
use galaxy_core::ui::theme::{AnsiColors, TerminalColors, WarpTheme};
|
||||
use galaxy_core::ui::theme::{AnsiColors, TerminalColors, GalaxyTheme};
|
||||
use galaxyui::{
|
||||
fonts::FontInfo, keymap::Keystroke, platform::mac::utils::unicode_char_to_key, DisplayIdx,
|
||||
};
|
||||
@@ -126,7 +126,7 @@ impl ITermTheme {
|
||||
mut self,
|
||||
suffix: &'static str,
|
||||
default_theme: &ITermTheme,
|
||||
) -> Result<WarpTheme, ThemeError> {
|
||||
) -> Result<GalaxyTheme, ThemeError> {
|
||||
if self.foreground == default_theme.foreground
|
||||
|| self.background == default_theme.background
|
||||
{
|
||||
@@ -149,7 +149,7 @@ impl ITermTheme {
|
||||
|
||||
let accent = calculate_accent_color(background, foreground, cursor, bright);
|
||||
|
||||
Ok(WarpTheme::new(
|
||||
Ok(GalaxyTheme::new(
|
||||
background.into(),
|
||||
foreground,
|
||||
accent.into(),
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
use async_io::block_on;
|
||||
use galaxy_core::ui::theme::{Fill, WarpTheme};
|
||||
use galaxy_core::ui::theme::{Fill, GalaxyTheme};
|
||||
use galaxyui::{fonts::FontInfo, keymap::Keystroke};
|
||||
use pathfinder_color::ColorU;
|
||||
use plist::{Dictionary, Value};
|
||||
@@ -106,9 +106,9 @@ fn test_color_dictionary_to_coloru() {
|
||||
|
||||
#[test]
|
||||
fn test_into_warp_theme_valid() {
|
||||
let theme: WarpTheme = solarized_dark_theme()
|
||||
let theme: GalaxyTheme = solarized_dark_theme()
|
||||
.into_warp_theme("", &default_dark_theme())
|
||||
.expect("Should be able to convert into WarpTheme");
|
||||
.expect("Should be able to convert into GalaxyTheme");
|
||||
assert_eq!(
|
||||
theme.accent(),
|
||||
Fill::Solid(ColorU {
|
||||
|
||||
@@ -35,7 +35,7 @@ use crate::{
|
||||
},
|
||||
themes::theme::{CustomTheme, SelectedSystemThemes, ThemeKind},
|
||||
ui_components::blended_colors,
|
||||
user_config::{self, WarpConfig},
|
||||
user_config::{self, GalaxyConfig},
|
||||
window_settings::WindowSettings,
|
||||
GlobalResourceHandlesProvider, TelemetryEvent,
|
||||
};
|
||||
@@ -775,10 +775,10 @@ impl SettingsImportView {
|
||||
));
|
||||
report_if_error!(theme_settings.use_system_theme.set_value(true, ctx));
|
||||
});
|
||||
WarpConfig::handle(ctx).update(ctx, |config, ctx| {
|
||||
GalaxyConfig::handle(ctx).update(ctx, |config, ctx| {
|
||||
config.add_new_theme_to_config(dark_kind, dark, ctx)
|
||||
});
|
||||
WarpConfig::handle(ctx).update(ctx, |config, ctx| {
|
||||
GalaxyConfig::handle(ctx).update(ctx, |config, ctx| {
|
||||
config.add_new_theme_to_config(light_kind, light, ctx)
|
||||
});
|
||||
}
|
||||
@@ -795,7 +795,7 @@ impl SettingsImportView {
|
||||
.set_value(theme_kind.clone(), ctx,));
|
||||
report_if_error!(theme_settings.use_system_theme.set_value(false, ctx));
|
||||
});
|
||||
WarpConfig::handle(ctx).update(ctx, |config, ctx| {
|
||||
GalaxyConfig::handle(ctx).update(ctx, |config, ctx| {
|
||||
config.add_new_theme_to_config(theme_kind, theme, ctx)
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user