namespace ClaudeDo.Worker.Planning;

public interface IPlanningTerminalLauncher
{
    Task LaunchStartAsync(PlanningSessionStartContext ctx, CancellationToken cancellationToken);
    Task LaunchResumeAsync(PlanningSessionResumeContext ctx, CancellationToken cancellationToken);
    Task LaunchInteractiveAsync(InteractiveLaunchContext ctx, CancellationToken cancellationToken);
}

public sealed class PlanningLaunchException : Exception
{
    public PlanningLaunchException(string message) : base(message) { }
}
