swarm repositories / source
aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md2
-rw-r--r--crates/phone-opus/src/mcp/service.rs2
2 files changed, 2 insertions, 2 deletions
diff --git a/README.md b/README.md
index 4b09901..ad78291 100644
--- a/README.md
+++ b/README.md
@@ -35,7 +35,7 @@ Each `consult` call runs Claude Code with:
- `phone_opus` gives Claude a separate persistent home and XDG state under its own state root
- `/tmp` and `/var/tmp` stay writable
- when the consulted `cwd` sits inside a writable tree such as `/tmp/...`, that consulted tree is remounted read-only so Claude cannot accidentally edit the target repo
-- a progress watchdog that aborts consults if Claude makes no observable progress for 30 seconds, using transcript growth and pipe activity as the liveness signal
+- a progress watchdog that aborts consults if Claude makes no observable progress for 20 minutes, using transcript growth and pipe activity as the liveness signal
- successful consult outputs are mirrored to `/tmp/phone_opus-consults` as timestamped JSON files with a prompt-derived slug and light auto-pruning
- internet access remains available
diff --git a/crates/phone-opus/src/mcp/service.rs b/crates/phone-opus/src/mcp/service.rs
index 38e472e..4a65e6d 100644
--- a/crates/phone-opus/src/mcp/service.rs
+++ b/crates/phone-opus/src/mcp/service.rs
@@ -895,7 +895,7 @@ const CONSULT_OUTPUT_ROOT: &str = "/tmp/phone_opus-consults";
const CONSULT_OUTPUT_KEEP_COUNT: usize = 256;
const CONSULT_OUTPUT_MAX_AGE: Duration = Duration::from_secs(7 * 24 * 60 * 60);
const CLAUDE_PROGRESS_POLL_INTERVAL: Duration = Duration::from_millis(250);
-const DEFAULT_CLAUDE_STALL_TIMEOUT: Duration = Duration::from_secs(30);
+const DEFAULT_CLAUDE_STALL_TIMEOUT: Duration = Duration::from_secs(20 * 60);
const CONSULT_TIMESTAMP_FORMAT: &[time::format_description::FormatItem<'static>] =
time::macros::format_description!("[year][month][day]T[hour][minute][second]Z");
const CLAUDE_MIRROR_FILES: [&str; 4] = [