release: prepare for v0.3.31
- Update CHANGELOG with workspace refactor and clippy fix - Fix collapsible_if lint in web browsing session manager
This commit is contained in:
@@ -19,9 +19,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
- Redesigned the footer status strip with mode/model/token/cost layout, quadrant separators, and a context-usage bar.
|
||||
- Added Unicode prefix indicators (▸ You, ◆ Answer, ● System) to chat history cells for visual distinction.
|
||||
- Improved thinking token delineation with labeled delimiters in transcript rendering.
|
||||
- Refactored source code into workspace crates for better modularity and dependency management.
|
||||
|
||||
### Fixed
|
||||
- Fixed Plan mode ESC key dismissing the prompt without clearing `plan_prompt_pending`, which prevented the prompt from reappearing on subsequent plan completions.
|
||||
- Fixed clippy lint (collapsible_if) in web browsing session management.
|
||||
|
||||
## [0.3.30] - 2026-03-06
|
||||
|
||||
|
||||
@@ -95,15 +95,14 @@ impl WebRunState {
|
||||
|
||||
fn touch_session(&mut self, namespace: &str) {
|
||||
self.cleanup();
|
||||
if !self.sessions.contains_key(namespace) && self.sessions.len() >= MAX_WEB_RUN_SESSIONS {
|
||||
if let Some(oldest_namespace) = self
|
||||
if !self.sessions.contains_key(namespace) && self.sessions.len() >= MAX_WEB_RUN_SESSIONS
|
||||
&& let Some(oldest_namespace) = self
|
||||
.sessions
|
||||
.iter()
|
||||
.min_by_key(|(_, session)| session.last_access)
|
||||
.map(|(existing_namespace, _)| existing_namespace.clone())
|
||||
{
|
||||
self.remove_session(&oldest_namespace);
|
||||
}
|
||||
{
|
||||
self.remove_session(&oldest_namespace);
|
||||
}
|
||||
|
||||
let session = self.sessions.entry(namespace.to_string()).or_default();
|
||||
|
||||
Reference in New Issue
Block a user