diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index d957b0e4..d33673fb 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -3,6 +3,7 @@ name: Test on: pull_request: branches: [main] + workflow_dispatch: concurrency: group: ${{ github.workflow }}-${{ github.ref }} @@ -33,7 +34,7 @@ jobs: - name: Type check frontend run: cd frontend && npx tsc --noEmit - + - name: Install Rust toolchain uses: dtolnay/rust-toolchain@stable with: @@ -55,4 +56,4 @@ jobs: run: | cargo fmt --all -- --check cargo test --workspace - cargo clippy --all --all-targets --all-features -- -D warnings \ No newline at end of file + cargo clippy --all --all-targets --all-features -- -D warnings diff --git a/backend/src/executor.rs b/backend/src/executor.rs index ba2f0fb8..7f29990d 100644 --- a/backend/src/executor.rs +++ b/backend/src/executor.rs @@ -4,7 +4,9 @@ use tokio::io::{AsyncBufReadExt, BufReader}; use ts_rs::TS; use uuid::Uuid; -use crate::executors::{AmpExecutor, ClaudeExecutor, EchoExecutor, GeminiExecutor, OpencodeExecutor}; +use crate::executors::{ + AmpExecutor, ClaudeExecutor, EchoExecutor, GeminiExecutor, OpencodeExecutor, +}; /// Context information for spawn failures to provide comprehensive error details #[derive(Debug, Clone)] diff --git a/backend/src/executors/opencode.rs b/backend/src/executors/opencode.rs index 9403755f..c510a7c1 100644 --- a/backend/src/executors/opencode.rs +++ b/backend/src/executors/opencode.rs @@ -44,7 +44,10 @@ impl Executor for OpencodeExecutor { // Use shell command for cross-platform compatibility let (shell_cmd, shell_arg) = get_shell_command(); - let opencode_command = format!("opencode -p \"{}\" --output-format=json", prompt.replace('"', "\\\"")); + let opencode_command = format!( + "opencode -p \"{}\" --output-format=json", + prompt.replace('"', "\\\"") + ); let mut command = Command::new(shell_cmd); command @@ -82,7 +85,10 @@ impl Executor for OpencodeFollowupExecutor { // Use shell command for cross-platform compatibility let (shell_cmd, shell_arg) = get_shell_command(); - let opencode_command = format!("opencode -p \"{}\" --output-format=json", self.prompt.replace('"', "\\\"")); + let opencode_command = format!( + "opencode -p \"{}\" --output-format=json", + self.prompt.replace('"', "\\\"") + ); let mut command = Command::new(shell_cmd); command diff --git a/backend/src/models/task_attempt.rs b/backend/src/models/task_attempt.rs index c6937b6c..46b14352 100644 --- a/backend/src/models/task_attempt.rs +++ b/backend/src/models/task_attempt.rs @@ -867,7 +867,8 @@ impl TaskAttempt { prompt, } => { use crate::executors::{ - AmpFollowupExecutor, ClaudeFollowupExecutor, GeminiFollowupExecutor, OpencodeFollowupExecutor, + AmpFollowupExecutor, ClaudeFollowupExecutor, GeminiFollowupExecutor, + OpencodeFollowupExecutor, }; let executor: Box = match config { diff --git a/frontend/src/components/theme-provider.tsx b/frontend/src/components/theme-provider.tsx index e8b70820..2e3f903a 100644 --- a/frontend/src/components/theme-provider.tsx +++ b/frontend/src/components/theme-provider.tsx @@ -33,7 +33,15 @@ export function ThemeProvider({ useEffect(() => { const root = window.document.documentElement; - root.classList.remove('light', 'dark', 'purple', 'green', 'blue', 'orange', 'red'); + root.classList.remove( + 'light', + 'dark', + 'purple', + 'green', + 'blue', + 'orange', + 'red' + ); if (theme === 'system') { const systemTheme = window.matchMedia('(prefers-color-scheme: dark)')