Description
DefaultGitRunner::new() in crates/zeph-worktree/src/git_runner.rs:63 uses a hardcoded
30-second timeout. WorktreeConfig has no git_timeout_secs field to override this value.
On slow networks, git fetch for base_ref = fresh can time out with no operator-level
escape hatch. This mirrors the pattern from issue #4645 (embed timeout in fidelity.rs).
Fix
- Add
git_timeout_secs: u64 (default 30) to WorktreeConfig in zeph-config.
- Pass it to
DefaultGitRunner::with_timeout(Duration::from_secs(config.git_timeout_secs))
at all construction sites (src/runner.rs, src/commands/worktree.rs).
- Add a
--migrate-config migration step for the new field.
Environment
- File:
crates/zeph-worktree/src/git_runner.rs:63
- Config type:
zeph-config::WorktreeConfig
Description
DefaultGitRunner::new()incrates/zeph-worktree/src/git_runner.rs:63uses a hardcoded30-second timeout.
WorktreeConfighas nogit_timeout_secsfield to override this value.On slow networks,
git fetchforbase_ref = freshcan time out with no operator-levelescape hatch. This mirrors the pattern from issue #4645 (embed timeout in fidelity.rs).
Fix
git_timeout_secs: u64(default30) toWorktreeConfiginzeph-config.DefaultGitRunner::with_timeout(Duration::from_secs(config.git_timeout_secs))at all construction sites (
src/runner.rs,src/commands/worktree.rs).--migrate-configmigration step for the new field.Environment
crates/zeph-worktree/src/git_runner.rs:63zeph-config::WorktreeConfig