Эти каскадные вызовы контрольной точки довольно глючные и имеют несколько проблем, связанных с ними. Если вы выложите sh из вашего примера больше, вы можете отправить вопрос на github, если у вас установлена самая последняя версия snakemake.
В качестве обходного пути вы можете попробовать добавить временный файл сигналов в каждый файл. каталог, чтобы указать, что правило завершено. Затем вам нужно будет использовать подстановочные знаки в коде правила.
Не здорово, но может работать. Поскольку у вас есть временный ввод в качестве сигнала, правила будут перезапускаться каждый раз, даже если другие файлы уже присутствуют; змеиный мастер не знает, что они являются выходами. Другой вариант заключается в том, чтобы заранее проверить ваши входные данные, чтобы решить, будут ли сгенерированы один или два файла, и передать их в вашу функцию ввода logi c, минуя контрольные точки.