Problem
After #471, the simulation integration settings include simulation_integ_test_gateway_auth_required as a boolean. In GitHub Actions, an unset repository or environment variable can be passed through as an empty string. Pydantic Settings treats a present empty string as a value and attempts to parse it as a boolean, which fails during test collection:
gateway_auth_required
Input should be a valid boolean, unable to interpret input [type=bool_parsing, input_value='', input_type=str]
This blocks deploy integration tests before auth enforcement is actually enabled.
Desired behavior
An empty simulation_integ_test_gateway_auth_required value should behave like the variable is unset, so the default False applies. When the value is explicitly set to 1 or another valid truthy value, auth smoke tests should run as intended.
Scope
- Configure integration settings to ignore empty env values.
- Avoid exporting
simulation_integ_test_gateway_auth_required from the integration-test runner when GATEWAY_AUTH_REQUIRED is empty.
- Add focused validation for the empty-string and truthy cases.
Problem
After #471, the simulation integration settings include
simulation_integ_test_gateway_auth_requiredas a boolean. In GitHub Actions, an unset repository or environment variable can be passed through as an empty string. Pydantic Settings treats a present empty string as a value and attempts to parse it as a boolean, which fails during test collection:This blocks deploy integration tests before auth enforcement is actually enabled.
Desired behavior
An empty
simulation_integ_test_gateway_auth_requiredvalue should behave like the variable is unset, so the defaultFalseapplies. When the value is explicitly set to1or another valid truthy value, auth smoke tests should run as intended.Scope
simulation_integ_test_gateway_auth_requiredfrom the integration-test runner whenGATEWAY_AUTH_REQUIREDis empty.