5 exercises — practise describing automated pipeline rules with the zero conditional.
0 / 5 completed
1 / 5
Which sentence correctly uses the zero conditional to describe an always-true CI pipeline rule?
"If a pull request fails the linter, the pipeline blocks the merge" is the correct zero conditional: present simple in both the if-clause and the main clause describes a general, automated rule that is always true, not a one-time future prediction. Option A uses "will block", which shifts this into a first conditional describing a specific future instance rather than a general rule. Option C mixes a past tense if-clause with a present main clause, which is not a standard conditional pattern. Option D mixes a present if-clause with a past main clause, also non-standard for describing a general rule.
2 / 5
Which sentence correctly uses the zero conditional with "when" to describe automatic deployment behavior triggered by a merge to main?
"When code is merged to main, the deploy pipeline triggers automatically" correctly uses the zero conditional pattern with "when", present passive ("is merged") in the subordinate clause and present simple in the main clause, describing an automatic, always-true system behavior. Option A uses "will trigger", incorrectly framing this as a one-time future event instead of a general automated rule. Option B uses active "code merges", which is less natural than the passive here since code does not merge itself; a person or automated process merges it. Option D shifts the subordinate clause into past tense, which is inconsistent with describing a standing rule.
3 / 5
Which sentence correctly uses the zero conditional to describe how a feature flag system always behaves?
"If the feature flag is disabled, the fallback logic runs instead" is correct: both clauses use present simple to state a general, always-true system behavior, not a hypothetical or one-time future event. Option B incorrectly uses "will be" in the if-clause, which conditional clauses normally avoid regardless of conditional type. Option C mixes present simple in the if-clause with "will run" in the main clause, turning it into a first conditional describing a single future instance rather than a general rule. Option D mixes past tense with "will", which does not match any standard conditional pattern.
4 / 5
Which sentence correctly uses the zero conditional to describe test suite behavior that is always true?
"If a test times out, the CI runner retries it once before failing the build" is correct: present simple throughout describes the runner's consistent, built-in retry behavior as a general truth about the system. Option A shifts to "will retry", implying a specific future occurrence rather than a standing rule. Option B incorrectly uses past tense "retried" in the main clause, breaking the zero conditional pattern. Option D incorrectly uses "will time out" in the if-clause, which conditional structures avoid.
5 / 5
Which sentence correctly uses the zero conditional to describe when the deployment pipeline always sends a Slack alert?
"If the build fails, the pipeline sends a Slack alert to the on-call channel" is correct: present simple in both clauses expresses this as a standing, automated rule that holds true every time the condition is met. Option A uses "will send", reframing this as a first conditional about one specific future build rather than a general behavior. Option B incorrectly shifts the if-clause to past tense, which does not fit the zero conditional's present-present pattern. Option C incorrectly uses past tense "sent" in the main clause while keeping the if-clause present, an inconsistent mix that does not match any standard conditional form.