feat(jans-cli-tui): additional config-api parameters by devrimyatar · Pull Request #12914 · JanssenProject/jans (original) (raw)
2-2: LGTM! JSON import is necessary for the new validation logic.
The json import is correctly placed and required for the JSON parsing and serialization operations added later in the file.
126-142: LGTM! New checkboxes follow established patterns.
The two new checkboxes for client secret response handling are properly implemented with schema help integration, internationalization, and consistent styling.
203-210: LGTM! External logger configuration checkbox is well-integrated.
The checkbox follows the same pattern as other configuration options and properly retrieves help text from the schema.
301-370: LGTM! Audit log configuration fields are well-implemented.
The new fields expand the audit log configuration UI appropriately:
- The
logDatacheckbox follows existing patterns - The
ignoreAnnotationandignoreObjectMappinglist fields are properly configured - Line 334 cleverly uses
json.dumps()to serialize stored objects for display in the UI - File path, name, and date format fields are cleanly integrated with schema help
784-808: LGTM! Validation function is correct and past feedback has been addressed.
The check_mapping_object function properly validates the structure of mapping objects. The changes from the previous review (type annotations and idiomatic not in operator) have been successfully applied.
Note on static analysis hint: The typing.Any annotation is appropriate here because the function is designed to validate unknown input types at runtime. Using a more specific type like dict would incorrectly assume the input is always valid.
Based on static analysis hints.
818-834: LGTM! Robust validation with excellent error handling.
The JSON decoding and validation logic for ignoreObjectMapping is well-implemented:
- Per-line JSON decoding with error collection
- Structural validation using
check_mapping_object - User-friendly error messages with line numbers (addressing previous feedback)
- Save operation properly aborted on validation failure
The approach of aggregating all errors before displaying them provides a better user experience than failing on the first error.