Refactor verdict handling and editor state management

- Removed the Escalate variant from the Verdict enum and associated parsing logic.
- Cleaned up the EditorState struct by removing unused fields and methods.
- Simplified MCP connection functions by removing unnecessary disconnect and handle dismiss functions.
- Added tick count to MiscState for managing UI updates during processing.
- Updated chat and status views to display a spinner during AI processing using the tick count.
- Created a README.md file to document the project, its features, architecture, usage, key bindings, agent modes, security measures, installation instructions, and configuration details.
This commit is contained in:
asepharyana
2026-07-12 03:19:25 +07:00
parent 36573e7e3b
commit df5775a272
9 changed files with 193 additions and 1468 deletions
-8
View File
@@ -2,7 +2,6 @@
pub enum Verdict {
Allow,
Block(String),
Escalate,
}
pub struct Harness;
@@ -80,7 +79,6 @@ mod tests {
"block" => Some(Verdict::Block(
v.get("reason").and_then(|r| r.as_str()).unwrap_or("blocked").to_string()
)),
"escalate" => Some(Verdict::Escalate),
_ => None,
};
}
@@ -153,12 +151,6 @@ mod tests {
assert_eq!(v, Some(Verdict::Block("dangerous operation".to_string())));
}
#[test]
fn test_parse_verdict_json_escalate() {
let v = parse_verdict(r#"{"verdict": "escalate"}"#);
assert_eq!(v, Some(Verdict::Escalate));
}
#[test]
fn test_parse_verdict_text_allow() {
let v = parse_verdict("Verdict: Allow");