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 galaxy_core::ui::{
|
||||
color::{blend::Blend, coloru_with_opacity, OPAQUE},
|
||||
theme::{
|
||||
color::CustomDetails, AnsiColor, AnsiColors, Details, Fill, HorizontalGradient, Image,
|
||||
TerminalColors, VerticalGradient, WarpTheme,
|
||||
TerminalColors, VerticalGradient, GalaxyTheme,
|
||||
},
|
||||
};
|
||||
use pathfinder_color::ColorU;
|
||||
@@ -308,8 +308,8 @@ pub(super) fn samsung_light_colors() -> TerminalColors {
|
||||
}
|
||||
|
||||
/// Default bundled themes
|
||||
pub fn dark_theme() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub fn dark_theme() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0x000000FF)),
|
||||
ColorU::from_u32(0xffffffff),
|
||||
Fill::Solid(ColorU::from_u32(0x19AAD8FF)),
|
||||
@@ -321,8 +321,8 @@ pub fn dark_theme() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub fn light_theme() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub fn light_theme() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::white()),
|
||||
ColorU::new(17, 17, 17, OPAQUE),
|
||||
Fill::Solid(ColorU::from_u32(0x00c2ffff)),
|
||||
@@ -334,8 +334,8 @@ pub fn light_theme() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn dracula() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn dracula() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0x282A36FF)),
|
||||
ColorU::from_u32(0xF8F8F2FF),
|
||||
Fill::Solid(ColorU::from_u32(0xFF79C6FF)),
|
||||
@@ -347,8 +347,8 @@ pub(super) fn dracula() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn solarized_light() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn solarized_light() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0xFDF6E3FF)),
|
||||
ColorU::from_u32(0x586E75FF),
|
||||
Fill::Solid(ColorU::from_u32(0x66B5A9FF)),
|
||||
@@ -360,8 +360,8 @@ pub(super) fn solarized_light() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn solarized_dark() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn solarized_dark() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0x002B36FF)),
|
||||
ColorU::from_u32(0xF8F8F2FF),
|
||||
Fill::Solid(ColorU::from_u32(0xCB4B16FF)),
|
||||
@@ -373,8 +373,8 @@ pub(super) fn solarized_dark() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn gruvbox_dark() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn gruvbox_dark() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0x282828FF)),
|
||||
ColorU::from_u32(0xEBDBB2FF),
|
||||
Fill::Solid(ColorU::from_u32(0xFC802DFF)),
|
||||
@@ -386,8 +386,8 @@ pub(super) fn gruvbox_dark() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn gruvbox_light() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn gruvbox_light() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0xFBF1C7FF)),
|
||||
ColorU::from_u32(0x3C3836FF),
|
||||
Fill::Solid(ColorU::from_u32(0xAD3B14FF)),
|
||||
@@ -400,8 +400,8 @@ pub(super) fn gruvbox_light() -> WarpTheme {
|
||||
}
|
||||
|
||||
/// Bundled gradient themes
|
||||
pub(super) fn cyber_wave() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn cyber_wave() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::VerticalGradient(VerticalGradient::new(
|
||||
ColorU::black().blend(&coloru_with_opacity(ColorU::from_u32(0x00C2FFFF), 20)),
|
||||
ColorU::black(),
|
||||
@@ -419,8 +419,8 @@ pub(super) fn cyber_wave() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn willow_dream() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn willow_dream() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::VerticalGradient(VerticalGradient::new(
|
||||
ColorU::from_u32(0x206169FF),
|
||||
ColorU::from_u32(0x022F27FF),
|
||||
@@ -438,8 +438,8 @@ pub(super) fn willow_dream() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn fancy_dracula() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn fancy_dracula() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::VerticalGradient(VerticalGradient::new(
|
||||
ColorU::from_u32(0x252630FF),
|
||||
ColorU::from_u32(0x3D3F4FFF),
|
||||
@@ -457,8 +457,8 @@ pub(super) fn fancy_dracula() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn phenomenon() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn phenomenon() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0x121212FF)),
|
||||
ColorU::from_u32(0xFAF9F6FF),
|
||||
Fill::Solid(ColorU::from_u32(0x2E5D9EFF)),
|
||||
@@ -474,8 +474,8 @@ pub(super) fn phenomenon() -> WarpTheme {
|
||||
}
|
||||
|
||||
/// Bundled themes with background images
|
||||
pub(super) fn jellyfish() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn jellyfish() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0x1B1718FF)),
|
||||
ColorU::white(),
|
||||
Fill::Solid(ColorU::from_u32(0x538682FF)),
|
||||
@@ -490,8 +490,8 @@ pub(super) fn jellyfish() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn koi() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn koi() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0x211719FF)),
|
||||
ColorU::white(),
|
||||
Fill::Solid(ColorU::from_u32(0xFF3131FF)),
|
||||
@@ -506,8 +506,8 @@ pub(super) fn koi() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn leafy() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn leafy() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::black()),
|
||||
ColorU::white(),
|
||||
Fill::Solid(ColorU::from_u32(0x55972DFF)),
|
||||
@@ -522,8 +522,8 @@ pub(super) fn leafy() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn marble() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn marble() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0xE3E3E3FF)),
|
||||
ColorU::black(),
|
||||
Fill::Solid(ColorU::from_u32(0x585858FF)),
|
||||
@@ -538,11 +538,11 @@ pub(super) fn marble() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn pink_city() -> WarpTheme {
|
||||
pub(super) fn pink_city() -> GalaxyTheme {
|
||||
let details = CustomDetails {
|
||||
..CustomDetails::lighter_details()
|
||||
};
|
||||
WarpTheme::new(
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0xFBEFF6FF)),
|
||||
ColorU::black(),
|
||||
Fill::Solid(ColorU::from_u32(0xE10087FF)),
|
||||
@@ -557,8 +557,8 @@ pub(super) fn pink_city() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn snowy() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn snowy() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::VerticalGradient(VerticalGradient::new(
|
||||
ColorU::from_u32(0xFFFFFFFF),
|
||||
ColorU::from_u32(0xDEE6EBFF),
|
||||
@@ -576,8 +576,8 @@ pub(super) fn snowy() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn red_rock() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn red_rock() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::VerticalGradient(VerticalGradient::new(
|
||||
ColorU::from_u32(0x211719FF)
|
||||
.blend(&coloru_with_opacity(ColorU::from_u32(0x4C3435FF), 45)),
|
||||
@@ -597,8 +597,8 @@ pub(super) fn red_rock() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn dark_city() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn dark_city() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::VerticalGradient(VerticalGradient::new(
|
||||
ColorU::from_u32(0x01181FFF)
|
||||
.blend(&coloru_with_opacity(ColorU::from_u32(0x1A363FFF), 45)),
|
||||
@@ -618,8 +618,8 @@ pub(super) fn dark_city() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn sent_referral_reward() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn sent_referral_reward() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0x334567FF)),
|
||||
ColorU::white(),
|
||||
Fill::Solid(ColorU::from_u32(0xCD51FFFF)),
|
||||
@@ -634,8 +634,8 @@ pub(super) fn sent_referral_reward() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn solar_flare() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn solar_flare() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0x1B1C18FF)),
|
||||
ColorU::from_u32(0xDDE6EEFF),
|
||||
Fill::Solid(ColorU::from_u32(0x34895CFF)),
|
||||
@@ -650,8 +650,8 @@ pub(super) fn solar_flare() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn adeberry() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn adeberry() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0x1D2022FF)),
|
||||
ColorU::from_u32(0xE4EEF5FF),
|
||||
Fill::Solid(ColorU::from_u32(0x6C96B4FF)),
|
||||
@@ -663,8 +663,8 @@ pub(super) fn adeberry() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn samsung_dark() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn samsung_dark() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0x0C0F16FF)),
|
||||
ColorU::from_u32(0xEEF2FAFF),
|
||||
Fill::Solid(ColorU::from_u32(0x1F6FFFFF)),
|
||||
@@ -676,8 +676,8 @@ pub(super) fn samsung_dark() -> WarpTheme {
|
||||
)
|
||||
}
|
||||
|
||||
pub(super) fn samsung_light() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn samsung_light() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0xF7F9FCFF)),
|
||||
ColorU::from_u32(0x10131BFF),
|
||||
Fill::Solid(ColorU::from_u32(0x034AE5FF)),
|
||||
@@ -688,8 +688,8 @@ pub(super) fn samsung_light() -> WarpTheme {
|
||||
Some("Samsung Light".to_string()),
|
||||
)
|
||||
}
|
||||
pub(super) fn received_referral_reward() -> WarpTheme {
|
||||
WarpTheme::new(
|
||||
pub(super) fn received_referral_reward() -> GalaxyTheme {
|
||||
GalaxyTheme::new(
|
||||
Fill::Solid(ColorU::from_u32(0xFFFFFFFF)),
|
||||
ColorU::black(),
|
||||
Fill::Solid(ColorU::from_u32(0xCD51FFFF)),
|
||||
|
||||
Reference in New Issue
Block a user