# Failed Tests Total unique failed/errored tests: 406 ## 1. TestGetActiveBans.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 2. TestGetActiveBans.test_empty_when_no_bans **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 3. TestGetActiveBans.test_response_shape **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 4. TestBanIp.test_201_on_success **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 5. TestBanIp.test_400_for_invalid_ip **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 6. TestBanIp.test_404_for_unknown_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 7. TestBanIp.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 8. TestUnbanIp.test_200_unban_from_all **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 9. TestUnbanIp.test_200_unban_from_specific_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 10. TestUnbanIp.test_400_for_invalid_ip **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 11. TestUnbanIp.test_404_for_unknown_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 12. TestUnbanAll.test_200_clears_all_bans **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 13. TestUnbanAll.test_200_with_zero_count **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 14. TestUnbanAll.test_502_when_fail2ban_unreachable **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 15. TestUnbanAll.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 16. TestListBlocklists.test_authenticated_returns_200 **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 17. TestListBlocklists.test_response_contains_sources_key **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 18. TestCreateBlocklist.test_create_returns_201 **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 19. TestCreateBlocklist.test_create_source_id_in_response **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 20. TestUpdateBlocklist.test_update_returns_200 **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 21. TestUpdateBlocklist.test_update_returns_404_for_missing **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 22. TestDeleteBlocklist.test_delete_returns_204 **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 23. TestDeleteBlocklist.test_delete_returns_404_for_missing **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 24. TestPreviewBlocklist.test_preview_returns_200 **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 25. TestPreviewBlocklist.test_preview_returns_404_for_missing **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 26. TestPreviewBlocklist.test_preview_returns_502_on_download_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 27. TestPreviewBlocklist.test_preview_response_shape **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 28. TestRunImport.test_import_returns_200 **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 29. TestRunImport.test_import_response_shape **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 30. TestGetSchedule.test_schedule_returns_200 **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 31. TestGetSchedule.test_schedule_response_has_config **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 32. TestGetSchedule.test_schedule_response_includes_last_run_errors **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 33. TestUpdateSchedule.test_update_schedule_returns_200 **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 34. TestImportLog.test_log_returns_200 **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 35. TestImportLog.test_log_response_shape **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 36. TestImportLog.test_log_empty_when_no_runs **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 37. TestGetJailConfigs.test_200_returns_jail_list **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 38. TestGetJailConfigs.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 39. TestGetJailConfigs.test_502_on_connection_error **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 40. TestGetJailConfig.test_200_returns_jail_config **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 41. TestGetJailConfig.test_404_for_unknown_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 42. TestGetJailConfig.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 43. TestUpdateJailConfig.test_204_on_success **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 44. TestUpdateJailConfig.test_404_for_unknown_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 45. TestUpdateJailConfig.test_422_on_invalid_regex **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 46. TestUpdateJailConfig.test_400_on_config_operation_error **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 47. TestUpdateJailConfig.test_204_with_dns_mode **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 48. TestUpdateJailConfig.test_204_with_prefregex **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 49. TestUpdateJailConfig.test_204_with_date_pattern **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 50. TestGetGlobalConfig.test_200_returns_global_config **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 51. TestGetGlobalConfig.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 52. TestUpdateGlobalConfig.test_204_on_success **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 53. TestUpdateGlobalConfig.test_400_on_operation_error **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 54. TestReloadFail2ban.test_204_on_success **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 55. TestReloadFail2ban.test_502_when_fail2ban_unreachable **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 56. TestReloadFail2ban.test_409_when_reload_operation_fails **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 57. TestRestartFail2ban.test_204_on_success **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 58. TestRestartFail2ban.test_503_when_fail2ban_does_not_come_back **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 59. TestRestartFail2ban.test_409_when_stop_command_fails **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 60. TestRestartFail2ban.test_502_when_fail2ban_unreachable **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 61. TestRestartFail2ban.test_service_restart_daemon_called **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 62. TestRegexTest.test_200_matched **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 63. TestRegexTest.test_200_not_matched **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 64. TestRegexTest.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 65. TestAddLogPath.test_204_on_success **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 66. TestAddLogPath.test_404_for_unknown_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 67. TestPreviewLog.test_200_returns_preview **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 68. TestGetMapColorThresholds.test_200_returns_thresholds **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 69. TestUpdateMapColorThresholds.test_200_updates_thresholds **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 70. TestUpdateMapColorThresholds.test_400_for_invalid_order **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 71. TestUpdateMapColorThresholds.test_400_for_non_positive_values **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 72. TestGetInactiveJails.test_200_returns_inactive_list **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 73. TestGetInactiveJails.test_200_empty_list **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 74. TestGetInactiveJails.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 75. TestActivateJail.test_200_activates_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 76. TestActivateJail.test_200_with_overrides **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 77. TestActivateJail.test_404_for_unknown_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 78. TestActivateJail.test_409_when_already_active **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 79. TestActivateJail.test_failed_activation_does_not_set_last_activation **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 80. TestActivateJail.test_400_for_invalid_jail_name **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 81. TestActivateJail.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 82. TestActivateJail.test_200_with_active_false_on_missing_logpath **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 83. TestDeactivateJail.test_200_deactivates_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 84. TestDeactivateJail.test_404_for_unknown_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 85. TestDeactivateJail.test_409_when_already_inactive **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 86. TestDeactivateJail.test_400_for_invalid_jail_name **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 87. TestDeactivateJail.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 88. TestDeactivateJail.test_deactivate_triggers_health_probe **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 89. TestListFilters.test_200_returns_filter_list **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 90. TestListFilters.test_200_empty_filter_list **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 91. TestListFilters.test_active_filters_sorted_before_inactive **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 92. TestListFilters.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 93. TestGetFilter.test_200_returns_filter **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 94. TestGetFilter.test_404_for_unknown_filter **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 95. TestGetFilter.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 96. TestUpdateFilter.test_200_returns_updated_filter **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 97. TestUpdateFilter.test_404_for_unknown_filter **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 98. TestUpdateFilter.test_422_for_invalid_regex **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 99. TestUpdateFilter.test_400_for_invalid_name **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 100. TestUpdateFilter.test_reload_query_param_passed **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 101. TestUpdateFilter.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 102. TestCreateFilter.test_201_creates_filter **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 103. TestCreateFilter.test_409_when_already_exists **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 104. TestCreateFilter.test_422_for_invalid_regex **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 105. TestCreateFilter.test_400_for_invalid_name **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 106. TestCreateFilter.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 107. TestDeleteFilter.test_204_deletes_filter **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 108. TestDeleteFilter.test_404_for_unknown_filter **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 109. TestDeleteFilter.test_409_for_readonly_filter **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 110. TestDeleteFilter.test_400_for_invalid_name **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 111. TestDeleteFilter.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 112. TestAssignFilterToJail.test_204_assigns_filter **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 113. TestAssignFilterToJail.test_404_for_unknown_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 114. TestAssignFilterToJail.test_404_for_unknown_filter **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 115. TestAssignFilterToJail.test_400_for_invalid_jail_name **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 116. TestAssignFilterToJail.test_400_for_invalid_filter_name **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 117. TestAssignFilterToJail.test_reload_query_param_passed **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 118. TestAssignFilterToJail.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 119. TestListActionsRouter.test_200_returns_action_list **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 120. TestListActionsRouter.test_active_sorted_first **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 121. TestListActionsRouter.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 122. TestGetActionRouter.test_200_returns_action **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 123. TestGetActionRouter.test_404_when_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 124. TestGetActionRouter.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 125. TestUpdateActionRouter.test_200_returns_updated_action **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 126. TestUpdateActionRouter.test_404_when_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 127. TestUpdateActionRouter.test_400_for_bad_name **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 128. TestUpdateActionRouter.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 129. TestCreateActionRouter.test_201_returns_created_action **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 130. TestCreateActionRouter.test_409_when_already_exists **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 131. TestCreateActionRouter.test_400_for_bad_name **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 132. TestCreateActionRouter.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 133. TestDeleteActionRouter.test_204_on_delete **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 134. TestDeleteActionRouter.test_404_when_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 135. TestDeleteActionRouter.test_409_when_readonly **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 136. TestDeleteActionRouter.test_400_for_bad_name **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 137. TestDeleteActionRouter.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 138. TestAssignActionToJailRouter.test_204_on_success **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 139. TestAssignActionToJailRouter.test_404_when_jail_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 140. TestAssignActionToJailRouter.test_404_when_action_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 141. TestAssignActionToJailRouter.test_400_for_bad_jail_name **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 142. TestAssignActionToJailRouter.test_400_for_bad_action_name **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 143. TestAssignActionToJailRouter.test_reload_param_passed **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 144. TestAssignActionToJailRouter.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 145. TestRemoveActionFromJailRouter.test_204_on_success **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 146. TestRemoveActionFromJailRouter.test_404_when_jail_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 147. TestRemoveActionFromJailRouter.test_400_for_bad_jail_name **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 148. TestRemoveActionFromJailRouter.test_400_for_bad_action_name **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 149. TestRemoveActionFromJailRouter.test_reload_param_passed **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 150. TestRemoveActionFromJailRouter.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 151. TestGetFail2BanLog.test_200_returns_log_response **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 152. TestGetFail2BanLog.test_200_passes_lines_query_param **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 153. TestGetFail2BanLog.test_200_passes_filter_query_param **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 154. TestGetFail2BanLog.test_400_when_non_file_target **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 155. TestGetFail2BanLog.test_400_when_path_traversal_detected **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 156. TestGetFail2BanLog.test_502_when_fail2ban_unreachable **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 157. TestGetFail2BanLog.test_422_for_lines_exceeding_max **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 158. TestGetFail2BanLog.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 159. TestGetServiceStatus.test_200_when_online **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 160. TestGetServiceStatus.test_200_when_offline **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 161. TestGetServiceStatus.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 162. TestValidateJailEndpoint.test_200_valid_config **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 163. TestValidateJailEndpoint.test_200_invalid_config **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 164. TestValidateJailEndpoint.test_400_for_invalid_jail_name **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 165. TestValidateJailEndpoint.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 166. TestPendingRecovery.test_returns_null_when_no_pending_recovery **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 167. TestPendingRecovery.test_returns_record_when_set **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 168. TestPendingRecovery.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 169. TestRollbackEndpoint.test_200_success_clears_pending_recovery **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 170. TestRollbackEndpoint.test_200_fail_preserves_pending_recovery **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 171. TestRollbackEndpoint.test_400_for_invalid_jail_name **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 172. TestRollbackEndpoint.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 173. TestDashboardStatus.test_returns_200_when_authenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 174. TestDashboardStatus.test_response_shape_when_online **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 175. TestDashboardStatus.test_cached_values_returned_when_online **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 176. TestDashboardStatus.test_offline_status_returned_correctly **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 177. TestDashboardBans.test_returns_200_when_authenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 178. TestDashboardBans.test_response_contains_items_and_total **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 179. TestDashboardBans.test_default_range_is_24h **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 180. TestDashboardBans.test_accepts_time_range_param **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 181. TestDashboardBans.test_accepts_source_param **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 182. TestDashboardBans.test_empty_ban_list_returns_zero_total **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 183. TestDashboardBans.test_item_shape_is_correct **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 184. TestBansByCountry.test_returns_200_when_authenticated[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 185. TestBansByCountry.test_response_shape[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 186. TestBansByCountry.test_accepts_time_range_param[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 187. TestBansByCountry.test_invalid_source_returns_422[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 188. TestBansByCountry.test_empty_window_returns_empty_response[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 189. TestBanTrend.test_returns_200_when_authenticated[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 190. TestBanTrend.test_response_shape[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 191. TestBanTrend.test_each_bucket_has_timestamp_and_count[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 192. TestBanTrend.test_default_range_is_24h[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 193. TestBanTrend.test_accepts_range_param[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 194. TestBanTrend.test_origin_param_forwarded[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 195. TestBanTrend.test_no_origin_defaults_to_none[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 196. TestBanTrend.test_invalid_range_returns_422[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 197. TestBanTrend.test_invalid_source_returns_422[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 198. TestBanTrend.test_empty_buckets_response[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 199. TestBansByJail.test_returns_200_when_authenticated[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 200. TestBansByJail.test_response_shape[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 201. TestBansByJail.test_each_jail_has_name_and_count[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 202. TestBansByJail.test_default_range_is_24h[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 203. TestBansByJail.test_accepts_range_param[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 204. TestBansByJail.test_origin_param_forwarded[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 205. TestBansByJail.test_no_origin_defaults_to_none[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 206. TestBansByJail.test_invalid_range_returns_422[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 207. TestBansByJail.test_invalid_source_returns_422[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 208. TestBansByJail.test_empty_jails_response[asyncio] **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 209. TestDashboardBansOriginField.test_origin_present_in_ban_list_items **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 210. TestDashboardBansOriginField.test_selfblock_origin_serialised_correctly **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 211. TestDashboardBansOriginField.test_origin_present_in_bans_by_country **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 212. TestDashboardBansOriginField.test_bans_by_country_source_param_forwarded **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 213. TestDashboardBansOriginField.test_bans_by_country_country_code_forwarded **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 214. TestDashboardBansOriginField.test_blocklist_origin_serialised_correctly **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 215. TestOriginFilterParam.test_bans_origin_blocklist_forwarded_to_service **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 216. TestOriginFilterParam.test_bans_origin_selfblock_forwarded_to_service **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 217. TestOriginFilterParam.test_bans_no_origin_param_defaults_to_none **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 218. TestOriginFilterParam.test_bans_invalid_origin_returns_422 **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 219. TestOriginFilterParam.test_by_country_origin_blocklist_forwarded **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 220. TestOriginFilterParam.test_by_country_no_origin_defaults_to_none **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 221. TestListJailConfigFiles.test_200_returns_file_list **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 222. TestListJailConfigFiles.test_503_on_config_dir_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 223. TestListJailConfigFiles.test_401_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 224. TestGetJailConfigFile.test_200_returns_content **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 225. TestGetJailConfigFile.test_404_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 226. TestGetJailConfigFile.test_400_invalid_filename **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 227. TestSetJailConfigEnabled.test_204_on_success **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 228. TestSetJailConfigEnabled.test_404_file_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 229. TestGetFilterFileRaw.test_200_returns_content **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 230. TestGetFilterFileRaw.test_404_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 231. TestUpdateFilterFile.test_204_on_success **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 232. TestUpdateFilterFile.test_400_write_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 233. TestCreateFilterFile.test_201_creates_file **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 234. TestCreateFilterFile.test_409_conflict **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 235. TestCreateFilterFile.test_400_invalid_name **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 236. TestListActionFiles.test_200_returns_files **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 237. TestCreateActionFile.test_201_creates_file **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 238. TestGetActionFileRaw.test_200_returns_content **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 239. TestGetActionFileRaw.test_404_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 240. TestGetActionFileRaw.test_503_on_config_dir_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 241. TestUpdateActionFileRaw.test_204_on_success **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 242. TestUpdateActionFileRaw.test_400_write_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 243. TestUpdateActionFileRaw.test_404_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 244. TestUpdateActionFileRaw.test_400_invalid_name **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 245. TestCreateJailConfigFile.test_201_creates_file **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 246. TestCreateJailConfigFile.test_409_conflict **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 247. TestCreateJailConfigFile.test_400_invalid_name **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 248. TestCreateJailConfigFile.test_503_on_config_dir_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 249. TestGetParsedFilter.test_200_returns_parsed_config **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 250. TestGetParsedFilter.test_404_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 251. TestGetParsedFilter.test_503_on_config_dir_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 252. TestUpdateParsedFilter.test_204_on_success **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 253. TestUpdateParsedFilter.test_404_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 254. TestUpdateParsedFilter.test_400_write_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 255. TestGetParsedAction.test_200_returns_parsed_config **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 256. TestGetParsedAction.test_404_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 257. TestGetParsedAction.test_503_on_config_dir_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 258. TestUpdateParsedAction.test_204_on_success **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 259. TestUpdateParsedAction.test_404_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 260. TestUpdateParsedAction.test_400_write_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 261. TestGetParsedJailFile.test_200_returns_parsed_config **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 262. TestGetParsedJailFile.test_404_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 263. TestGetParsedJailFile.test_503_on_config_dir_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 264. TestUpdateParsedJailFile.test_204_on_success **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 265. TestUpdateParsedJailFile.test_404_not_found **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 266. TestUpdateParsedJailFile.test_400_write_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 267. TestGeoLookup.test_200_with_geo_info **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 268. TestGeoLookup.test_200_when_not_banned **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 269. TestGeoLookup.test_200_with_no_geo **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 270. TestGeoLookup.test_400_for_invalid_ip **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 271. TestGeoLookup.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 272. TestGeoLookup.test_ipv6_address **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 273. TestReResolve.test_returns_200_with_counts **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 274. TestReResolve.test_empty_when_no_unresolved_ips **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 275. TestReResolve.test_re_resolves_null_ips **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 276. TestReResolve.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 277. TestGeoStats.test_returns_200_with_stats **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 278. TestGeoStats.test_stats_empty_cache **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 279. TestGeoStats.test_stats_counts_unresolved **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 280. TestGeoStats.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 281. TestHistoryList.test_returns_200_when_authenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 282. TestHistoryList.test_response_shape **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 283. TestHistoryList.test_forwards_jail_filter **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 284. TestHistoryList.test_forwards_ip_filter **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 285. TestHistoryList.test_forwards_time_range **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 286. TestHistoryList.test_forwards_origin_filter **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 287. TestHistoryList.test_forwards_source_filter **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 288. TestHistoryList.test_archive_route_forces_source_archive **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 289. TestHistoryList.test_empty_result **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 290. TestIpHistory.test_returns_200_when_authenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 291. TestIpHistory.test_returns_404_for_unknown_ip **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 292. TestIpHistory.test_response_shape **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 293. TestIpHistory.test_aggregation_sums_failures **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 294. TestGetJails.test_200_when_authenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 295. TestGetJails.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 296. TestGetJails.test_response_shape **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 297. TestGetJailDetail.test_200_for_existing_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 298. TestGetJailDetail.test_404_for_unknown_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 299. TestStartJail.test_200_starts_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 300. TestStartJail.test_404_for_unknown_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 301. TestStartJail.test_409_on_operation_error **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 302. TestStopJail.test_200_stops_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 303. TestStopJail.test_200_for_already_stopped_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 304. TestToggleIdle.test_200_idle_on **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 305. TestToggleIdle.test_200_idle_off **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 306. TestReloadJail.test_200_reloads_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 307. TestReloadAll.test_200_reloads_all **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 308. TestIgnoreIpEndpoints.test_get_ignore_list **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 309. TestIgnoreIpEndpoints.test_add_ignore_ip_returns_201 **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 310. TestIgnoreIpEndpoints.test_add_invalid_ip_returns_400 **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 311. TestIgnoreIpEndpoints.test_delete_ignore_ip **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 312. TestIgnoreIpEndpoints.test_get_ignore_list_404_for_unknown_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 313. TestIgnoreIpEndpoints.test_get_ignore_list_502_on_connection_error **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 314. TestIgnoreIpEndpoints.test_add_ignore_ip_404_for_unknown_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 315. TestIgnoreIpEndpoints.test_add_ignore_ip_409_on_operation_error **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 316. TestIgnoreIpEndpoints.test_add_ignore_ip_502_on_connection_error **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 317. TestIgnoreIpEndpoints.test_delete_ignore_ip_404_for_unknown_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 318. TestIgnoreIpEndpoints.test_delete_ignore_ip_409_on_operation_error **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 319. TestIgnoreIpEndpoints.test_delete_ignore_ip_502_on_connection_error **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 320. TestToggleIgnoreSelf.test_200_enables_ignore_self **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 321. TestToggleIgnoreSelf.test_200_disables_ignore_self **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 322. TestToggleIgnoreSelf.test_404_for_unknown_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 323. TestToggleIgnoreSelf.test_409_on_operation_error **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 324. TestToggleIgnoreSelf.test_502_on_connection_error **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 325. TestFail2BanConnectionErrors.test_get_jails_502 **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 326. TestFail2BanConnectionErrors.test_get_jail_502 **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 327. TestFail2BanConnectionErrors.test_reload_all_409 **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 328. TestFail2BanConnectionErrors.test_reload_all_502 **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 329. TestFail2BanConnectionErrors.test_start_jail_502 **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 330. TestFail2BanConnectionErrors.test_stop_jail_409 **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 331. TestFail2BanConnectionErrors.test_stop_jail_502 **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 332. TestFail2BanConnectionErrors.test_toggle_idle_404 **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 333. TestFail2BanConnectionErrors.test_toggle_idle_409 **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 334. TestFail2BanConnectionErrors.test_toggle_idle_502 **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 335. TestFail2BanConnectionErrors.test_reload_jail_404 **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 336. TestFail2BanConnectionErrors.test_reload_jail_409 **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 337. TestFail2BanConnectionErrors.test_reload_jail_502 **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 338. TestGetJailBannedIps.test_200_returns_paginated_bans **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 339. TestGetJailBannedIps.test_200_with_search_parameter **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 340. TestGetJailBannedIps.test_200_with_page_and_page_size **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 341. TestGetJailBannedIps.test_400_when_page_is_zero **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 342. TestGetJailBannedIps.test_400_when_page_size_exceeds_max **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 343. TestGetJailBannedIps.test_400_when_page_size_is_zero **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 344. TestGetJailBannedIps.test_404_for_unknown_jail **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 345. TestGetJailBannedIps.test_502_when_fail2ban_unreachable **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 346. TestGetJailBannedIps.test_response_items_have_expected_fields **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 347. TestGetJailBannedIps.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 1 validation error for Settings --- ## 348. TestGetServerSettings.test_200_returns_settings **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 349. TestGetServerSettings.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 350. TestGetServerSettings.test_502_on_connection_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 351. TestUpdateServerSettings.test_204_on_success **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 352. TestUpdateServerSettings.test_400_on_operation_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 353. TestUpdateServerSettings.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 354. TestUpdateServerSettings.test_502_on_connection_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 355. TestFlushLogs.test_200_returns_message **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 356. TestFlushLogs.test_400_on_operation_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 357. TestFlushLogs.test_401_when_unauthenticated **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 358. TestFlushLogs.test_502_on_connection_error **Exception:** pydantic_core._pydantic_core.ValidationError: 2 validation errors for Settings --- ## 359. TestGetJailConfig.test_returns_jail_config_response **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 360. TestGetJailConfig.test_raises_jail_not_found **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 361. TestGetJailConfig.test_actions_parsed_correctly **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 362. TestGetJailConfig.test_empty_log_paths_fallback **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 363. TestGetJailConfig.test_date_pattern_none **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 364. TestGetJailConfig.test_use_dns_populated **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 365. TestGetJailConfig.test_use_dns_default_when_missing **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 366. TestGetJailConfig.test_prefregex_populated **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 367. TestGetJailConfig.test_prefregex_empty_when_missing **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 368. TestListJailConfigs.test_returns_list_response **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 369. TestListJailConfigs.test_empty_when_no_jails **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 370. TestListJailConfigs.test_multiple_jails **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 371. TestUpdateJailConfig.test_updates_numeric_fields **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 372. TestUpdateJailConfig.test_ignores_backend_field **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 373. TestUpdateJailConfig.test_raises_validation_error_on_bad_regex **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 374. TestUpdateJailConfig.test_skips_none_fields **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 375. TestUpdateJailConfig.test_replaces_fail_regex **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 376. TestUpdateJailConfig.test_sets_dns_mode **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 377. TestUpdateJailConfig.test_sets_prefregex **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 378. TestUpdateJailConfig.test_skips_none_prefregex **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 379. TestUpdateJailConfig.test_raises_validation_error_on_invalid_prefregex **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 380. TestGetGlobalConfig.test_returns_global_config **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 381. TestGetGlobalConfig.test_defaults_used_on_error **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 382. TestUpdateGlobalConfig.test_sends_set_commands **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 383. TestUpdateGlobalConfig.test_log_level_uppercased **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 384. TestUpdateGlobalConfig.test_invalid_log_target_raises_config_validation_error **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 385. TestUpdateGlobalConfig.test_valid_special_log_target **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 386. TestTestRegex.test_matching_pattern **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 387. TestTestRegex.test_non_matching_pattern **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 388. TestTestRegex.test_invalid_pattern_returns_error **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 389. TestTestRegex.test_empty_groups_when_no_capture **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 390. TestTestRegex.test_multiple_capture_groups **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 391. TestPreviewLog.test_returns_error_for_invalid_regex **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 392. TestPreviewLog.test_returns_error_for_missing_file **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 393. TestPreviewLog.test_rejects_log_paths_outside_allowed_directories **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 394. TestPreviewLog.test_matches_lines_in_file **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 395. TestPreviewLog.test_matched_line_has_groups **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 396. TestPreviewLog.test_num_lines_limit **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 397. TestReadFail2BanLog.test_returns_log_lines_from_file **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 398. TestReadFail2BanLog.test_filter_narrows_returned_lines **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 399. TestReadFail2BanLog.test_non_file_target_raises_operation_error **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 400. TestReadFail2BanLog.test_syslog_target_raises_operation_error **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 401. TestReadFail2BanLog.test_path_outside_safe_dir_raises_operation_error **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 402. TestReadFail2BanLog.test_missing_log_file_raises_operation_error **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 403. TestGetServiceStatus.test_online_status_includes_log_config **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 404. TestGetServiceStatus.test_offline_status_returns_unknown_log_fields **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 405. TestConfigModuleIntegration.test_jail_config_service_list_inactive_jails_uses_imports **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' --- ## 406. TestConfigModuleIntegration.test_filter_config_service_list_filters_uses_imports **Exception:** AttributeError: module 'app.models.config' has no attribute 'get_settings' ---