Skip to content

fix: clarify --keep-going flag help text to distinguish runtime vs DAG construction errors#3705

Merged
johanneskoester merged 2 commits intomainfrom
copilot/fix-25ff410e-28ad-4c62-a8e4-0a81f5153b63
Sep 4, 2025
Merged

fix: clarify --keep-going flag help text to distinguish runtime vs DAG construction errors#3705
johanneskoester merged 2 commits intomainfrom
copilot/fix-25ff410e-28ad-4c62-a8e4-0a81f5153b63

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Aug 25, 2025

Problem

The help text for the --keep-going flag was ambiguous about when it applies:

"Go on with independent jobs if a job fails."

This could mislead users into thinking the flag applies to all types of errors, including those during workflow parsing or DAG construction. However, --keep-going only applies to runtime failures during job execution, not to errors that occur earlier in the workflow setup phase.

Solution

Updated the help text to explicitly clarify the scope and limitations:

"Go on with independent jobs if a job fails during execution. This only applies to runtime failures in job execution, not to errors during workflow parsing or DAG construction."

Key Clarifications Added

  1. "during execution" - Makes it clear this is about runtime, not parse-time errors
  2. "runtime failures in job execution" - Explicitly states the intended scope
  3. "not to errors during workflow parsing or DAG construction" - Explicitly excludes DAG-building phase errors

Impact

This change helps users understand that:

  • ✅ Job execution failures (e.g., shell command errors, missing input files) → --keep-going applies
  • ❌ Workflow syntax errors, rule definition issues, DAG construction problems → --keep-going does NOT apply

The change is purely cosmetic (help text only) and doesn't affect any functionality. It provides better user guidance and prevents confusion about when the flag is effective.


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Co-authored-by: johanneskoester <1858646+johanneskoester@users.noreply.github.com>
Copilot AI changed the title [WIP] Clarify in the help text of the --keep-going flag that it is only meant for going on in case of errors that occur in jobs (at runtime). Not for errrors during e.g. the building of the DAG. Clarify --keep-going flag help text to distinguish runtime vs DAG construction errors Aug 25, 2025
Copilot AI requested a review from johanneskoester August 25, 2025 08:03
@johanneskoester johanneskoester changed the title Clarify --keep-going flag help text to distinguish runtime vs DAG construction errors fix: clarify --keep-going flag help text to distinguish runtime vs DAG construction errors Aug 26, 2025
@johanneskoester johanneskoester marked this pull request as ready for review August 26, 2025 08:17
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Aug 26, 2025

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Support

Need help? Join our Discord community for assistance with any issues or questions.

CodeRabbit Commands (Invoked using PR/Issue comments)

Type @coderabbitai help to get the list of available commands.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Status, Documentation and Community

  • Visit our Status Page to check the current availability of CodeRabbit.
  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@johanneskoester johanneskoester merged commit a3a8ef4 into main Sep 4, 2025
87 of 160 checks passed
@johanneskoester johanneskoester deleted the copilot/fix-25ff410e-28ad-4c62-a8e4-0a81f5153b63 branch September 4, 2025 07:04
johanneskoester pushed a commit that referenced this pull request Sep 5, 2025
🤖 I have created a release *beep* *boop*
---


##
[9.11.0](v9.10.1...v9.11.0)
(2025-09-05)


### Features

* add landing page to the report containing custom metadata defined with
a YTE yaml template
([#3452](#3452))
([c754d80](c754d80))
* Issue a warning when unsupported characters are used in wildcard names
([#1587](#1587))
([fa57355](fa57355))


### Bug Fixes

* avoid checking output files in immediate-submit mode
([#3569](#3569))
([58c42cf](58c42cf))
* clarify --keep-going flag help text to distinguish runtime vs DAG
construction errors
([#3705](#3705))
([a3a8ef4](a3a8ef4))
* enable docstring assignment in `use rule ... with:` block
([#3710](#3710))
([2191962](2191962))
* fix missing attribute error in greedy scheduler settings when using
touch, dryrun or immediate submit.
([6471004](6471004))
* only trigger script with CODE label
([#3707](#3707))
([2d01f8c](2d01f8c))
* parser.py incorrectly parsing multiline f-strings
([#3701](#3701))
([06ece76](06ece76))
* parsing ordinary yaml strings
([#3506](#3506))
([ddf334e](ddf334e))
* remove temp files when using checkpoints
([#3716](#3716))
([5ff3e20](5ff3e20))
* Restore python rules changes triggering reruns. (GH:
[#3213](#3213))
([#3485](#3485))
([2f663be](2f663be))
* unit testing
([#3680](#3680))
([06ba7e6](06ba7e6))
* use queue_input_wait_time when updating queue input jobs
([#3712](#3712))
([a945a19](a945a19))


### Documentation

* output files within output directories is an error
([#2848](#2848))
([#2913](#2913))
([37272e5](37272e5))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
kjohnsen pushed a commit to kjohnsen/snakemake that referenced this pull request Dec 15, 2025
…G construction errors (snakemake#3705)

## Problem

The help text for the `--keep-going` flag was ambiguous about when it
applies:

```
"Go on with independent jobs if a job fails."
```

This could mislead users into thinking the flag applies to all types of
errors, including those during workflow parsing or DAG construction.
However, `--keep-going` only applies to runtime failures during job
execution, not to errors that occur earlier in the workflow setup phase.

## Solution

Updated the help text to explicitly clarify the scope and limitations:

```
"Go on with independent jobs if a job fails during execution. This only applies to runtime failures in job execution, not to errors during workflow parsing or DAG construction."
```

## Key Clarifications Added

1. **"during execution"** - Makes it clear this is about runtime, not
parse-time errors
2. **"runtime failures in job execution"** - Explicitly states the
intended scope
3. **"not to errors during workflow parsing or DAG construction"** -
Explicitly excludes DAG-building phase errors

## Impact

This change helps users understand that:
- ✅ Job execution failures (e.g., shell command errors, missing input
files) → `--keep-going` applies
- ❌ Workflow syntax errors, rule definition issues, DAG construction
problems → `--keep-going` does NOT apply

The change is purely cosmetic (help text only) and doesn't affect any
functionality. It provides better user guidance and prevents confusion
about when the flag is effective.

<!-- START COPILOT CODING AGENT TIPS -->
---

✨ Let Copilot coding agent [set things up for
you](https://github.com/snakemake/snakemake/issues/new?title=✨+Set+up+Copilot+instructions&body=Configure%20instructions%20for%20this%20repository%20as%20documented%20in%20%5BBest%20practices%20for%20Copilot%20coding%20agent%20in%20your%20repository%5D%28https://gh.io/copilot-coding-agent-tips%29%2E%0A%0A%3COnboard%20this%20repo%3E&assignees=copilot)
— coding agent works faster and does higher quality work when set up for
your repo.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: johanneskoester <1858646+johanneskoester@users.noreply.github.com>
kjohnsen pushed a commit to kjohnsen/snakemake that referenced this pull request Dec 15, 2025
🤖 I have created a release *beep* *boop*
---


##
[9.11.0](snakemake/snakemake@v9.10.1...v9.11.0)
(2025-09-05)


### Features

* add landing page to the report containing custom metadata defined with
a YTE yaml template
([snakemake#3452](snakemake#3452))
([c754d80](snakemake@c754d80))
* Issue a warning when unsupported characters are used in wildcard names
([snakemake#1587](snakemake#1587))
([fa57355](snakemake@fa57355))


### Bug Fixes

* avoid checking output files in immediate-submit mode
([snakemake#3569](snakemake#3569))
([58c42cf](snakemake@58c42cf))
* clarify --keep-going flag help text to distinguish runtime vs DAG
construction errors
([snakemake#3705](snakemake#3705))
([a3a8ef4](snakemake@a3a8ef4))
* enable docstring assignment in `use rule ... with:` block
([snakemake#3710](snakemake#3710))
([2191962](snakemake@2191962))
* fix missing attribute error in greedy scheduler settings when using
touch, dryrun or immediate submit.
([6471004](snakemake@6471004))
* only trigger script with CODE label
([snakemake#3707](snakemake#3707))
([2d01f8c](snakemake@2d01f8c))
* parser.py incorrectly parsing multiline f-strings
([snakemake#3701](snakemake#3701))
([06ece76](snakemake@06ece76))
* parsing ordinary yaml strings
([snakemake#3506](snakemake#3506))
([ddf334e](snakemake@ddf334e))
* remove temp files when using checkpoints
([snakemake#3716](snakemake#3716))
([5ff3e20](snakemake@5ff3e20))
* Restore python rules changes triggering reruns. (GH:
[snakemake#3213](snakemake#3213))
([snakemake#3485](snakemake#3485))
([2f663be](snakemake@2f663be))
* unit testing
([snakemake#3680](snakemake#3680))
([06ba7e6](snakemake@06ba7e6))
* use queue_input_wait_time when updating queue input jobs
([snakemake#3712](snakemake#3712))
([a945a19](snakemake@a945a19))


### Documentation

* output files within output directories is an error
([snakemake#2848](snakemake#2848))
([snakemake#2913](snakemake#2913))
([37272e5](snakemake@37272e5))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants