github / github/app

Child sessions with kickoff do not run Git `post-checkout` hooks

Đang mở
#3,211 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
Không có dữ liệu ngôn ngữ
Star
2.1k
Fork
153
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

## Summary

Creating a local worktree child session without a kickoff correctly runs the configured Git `post-checkout` hook.

Creating the same session with a kickoff prompt does not run the hook, and the child agent starts in an incompletely initialized worktree.

## Steps to reproduce

1. Configure a Git `post-checkout` hook that:
- writes an entry to a log;
- creates a file or symlink in the worktree.
2. Create a worktree child session without a kickoff.
3. Confirm that the hook ran and created the expected resource.
4. Create another worktree child session with an automatic kickoff prompt.
5. Confirm that:
- no hook-log entry exists;
- the expected resource is missing;
- the child agent has already started.

## Expected behavior

Idle and kickoff-enabled child sessions should use the same worktree initialization process. Git hooks should finish before the kickoff agent starts.

## Actual behavior

The hook runs for idle child sessions but not for kickoff-enabled sessions.

The affected worktree still has the correct commit and Git hook configuration, but hook-created repository resources are absent.

## Impact

Kickoff agents can fail immediately when repository setup relies on Git hooks—for example, to provide shared instructions, skills, configuration, or tool wrappers.

## Suggested fix

Create and fully initialize the worktree before starting the kickoff agent:

1. Create and check out the worktree.
2. Run configured Git hooks.
3. Wait for initialization to complete.
4. Start the child agent and deliver the kickoff prompt.

Hook failures should be reported as workspace-creation failures.

## Workaround

Create the child session without a kickoff, wait for hook initialization, and send the task prompt afterward.

This workaround may lose kickoff-specific model, reasoning-effort, or mode selection.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Trace the child-session worktree creation and kickoff startup paths, comparing the idle and kickoff-enabled flows described in the reproduction steps. Verify that the worktree is fully initialized and configured Git post-checkout hooks finish before the kickoff agent starts, and confirm hook failures are reported as workspace-creation failures.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
git
Lĩnh vực
developer-experience
Loại issue
Lỗi
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức độ hoạt động
Sôi nổi
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
68/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.