Add typed default values to pipeline inputs to allow conditional inputs with no resolved default to pass lint

What does this MR do and why?

This MR is a naive approach to a quick win for UX described in #587643.
It uses typed default values to fall back to when conditional inputs have no matching rules nor general default.

The unit tests have been updated to reflect this new use case as well as an important subtelty : falsey resolved default might still be a non-nil resolved default and should not fall through to typed_default value.

References

Closes #587643

Screenshots or screen recordings

See https://gitlab.com/AlexDLSy/demo_ci_conditional_inputs for expected results.
Waiting for review to produce screen recordings of the actual results.

Before After

How to set up and validate locally

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #587643

Edited by AlexandredL

Merge request reports

Loading