Skip to content

enhancement(worktree): make DefaultGitRunner timeout configurable via WorktreeConfig #4704

@bug-ops

Description

@bug-ops

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

  1. Add git_timeout_secs: u64 (default 30) to WorktreeConfig in zeph-config.
  2. Pass it to DefaultGitRunner::with_timeout(Duration::from_secs(config.git_timeout_secs))
    at all construction sites (src/runner.rs, src/commands/worktree.rs).
  3. 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

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3Research — medium-high complexityenhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions