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
@@ -1,7 +1,4 @@
|
||||
use crate::cloud_object::{
|
||||
CloudObject, CloudObjectSyncStatus, GenericStringObjectFormat, JsonObjectType,
|
||||
};
|
||||
use crate::drive::CloudObjectTypeAndId;
|
||||
use crate::cloud_object::{CloudObject, CloudObjectSyncStatus};
|
||||
use crate::network::NetworkStatus;
|
||||
use crate::pane_group::focus_state::PaneFocusHandle;
|
||||
use crate::pane_group::{pane::view, BackingView, PaneConfiguration, PaneEvent};
|
||||
@@ -337,22 +334,12 @@ pub fn is_online(app: &AppContext) -> bool {
|
||||
NetworkStatus::as_ref(app).is_online()
|
||||
}
|
||||
|
||||
pub fn is_delete_allowed(ai_fact: CloudAIFact, app: &AppContext) -> bool {
|
||||
let cloud_object_type_and_id = CloudObjectTypeAndId::GenericStringObject {
|
||||
object_type: GenericStringObjectFormat::Json(JsonObjectType::AIFact),
|
||||
id: ai_fact.sync_id(),
|
||||
};
|
||||
is_online(app)
|
||||
&& cloud_object_type_and_id.has_server_id()
|
||||
&& !ai_fact.metadata().has_pending_online_only_change()
|
||||
pub fn is_delete_allowed(_ai_fact: CloudAIFact, _app: &AppContext) -> bool {
|
||||
true
|
||||
}
|
||||
|
||||
pub fn is_edit_allowed(ai_fact: CloudAIFact, app: &AppContext) -> bool {
|
||||
let cloud_object_type_and_id = CloudObjectTypeAndId::GenericStringObject {
|
||||
object_type: GenericStringObjectFormat::Json(JsonObjectType::AIFact),
|
||||
id: ai_fact.sync_id(),
|
||||
};
|
||||
is_online(app) || !cloud_object_type_and_id.has_server_id()
|
||||
pub fn is_edit_allowed(_ai_fact: CloudAIFact, _app: &AppContext) -> bool {
|
||||
true
|
||||
}
|
||||
|
||||
pub fn is_syncing(ai_fact: CloudAIFact, app: &AppContext) -> bool {
|
||||
|
||||
Reference in New Issue
Block a user