diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_column_desc_are_same.py b/src/datapilot/core/platforms/dbt/insights/checks/check_column_desc_are_same.py index 7c73f46e..3ec9353c 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_column_desc_are_same.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_column_desc_are_same.py @@ -9,7 +9,7 @@ class CheckColumnDescAreSame(ChecksInsight): - NAME = "Column descriptions consistent for same column names" + NAME = "column_name_inconsistent_desc" ALIAS = "column_descriptions_are_same" DESCRIPTION = "Column description for the same column name should be same " REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_column_name_contract.py b/src/datapilot/core/platforms/dbt/insights/checks/check_column_name_contract.py index e099b9d0..867ed44c 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_column_name_contract.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_column_name_contract.py @@ -14,7 +14,7 @@ class CheckColumnNameContract(ChecksInsight): - NAME = "Column name follows contract pattern" + NAME = "column_name_pattern_violation" ALIAS = "column_name_contract" DESCRIPTION = "Column names should adhere to the contract pattern defined for the data type. " REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_macro_args_have_desc.py b/src/datapilot/core/platforms/dbt/insights/checks/check_macro_args_have_desc.py index ee2b3973..1017d372 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_macro_args_have_desc.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_macro_args_have_desc.py @@ -8,7 +8,7 @@ class CheckMacroArgsHaveDesc(ChecksInsight): - NAME = "Check macro arguments has description" + NAME = "macro_arg_no_desc" ALIAS = "check_macro_args_have_desc" DESCRIPTION = "Macro arguments should have a description. " REASON_TO_FLAG = "Clear descriptions for macro arguments are crucial as they prevent misunderstandings, enhance user comprehension, and simplify maintenance. This leads to more accurate data analysis and efficient workflows." diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_macro_has_desc.py b/src/datapilot/core/platforms/dbt/insights/checks/check_macro_has_desc.py index afc853d2..f0e22c22 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_macro_has_desc.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_macro_has_desc.py @@ -8,7 +8,7 @@ class CheckMacroHasDesc(ChecksInsight): - NAME = "Macro has documentation" + NAME = "macro_no_docs" ALIAS = "check_macro_has_desc" DESCRIPTION = "Macros should be documented." REASON_TO_FLAG = "Undocumented macros can cause misunderstandings and inefficiencies in data modeling and analysis, as they make it difficult to understand their purpose and usage. Clear descriptions are vital for accuracy and streamlined workflow." diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_all_columns.py b/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_all_columns.py index fcf46835..5b282dc3 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_all_columns.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_all_columns.py @@ -14,7 +14,7 @@ class CheckModelHasAllColumns(ChecksInsight): - NAME = "Model has all columns as per catalog" + NAME = "model_missing_columns" ALIAS = "check_model_has_all_columns" DESCRIPTION = "Models should have all the columns as per the catalog." REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_meta_keys.py b/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_meta_keys.py index fa66d0ba..67ace7cd 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_meta_keys.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_meta_keys.py @@ -12,7 +12,7 @@ class CheckModelHasMetaKeys(ChecksInsight): - NAME = "Model has all valid keys in metadata" + NAME = "model_invalid_meta_keys" ALIAS = "check_model_has_valid_meta_keys" DESCRIPTION = "Model always has a list of valid metadata keys." REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_properties_file.py b/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_properties_file.py index 657ff478..36c2b163 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_properties_file.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_properties_file.py @@ -8,7 +8,7 @@ class CheckModelHasPropertiesFile(ChecksInsight): - NAME = "Model has properties file" + NAME = "model_no_schema_file" ALIAS = "check_model_has_properties_file" DESCRIPTION = "Models should have a properties/schema file (.yml) defined." REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_group.py b/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_group.py index 66dd1fdb..844f8aa7 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_group.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_group.py @@ -9,7 +9,7 @@ class CheckModelHasTestsByGroup(ChecksInsight): - NAME = "Model has tests by group" + NAME = "model_insufficient_tests_by_group" ALIAS = "check_model_has_tests_by_group" DESCRIPTION = "Check if models have a number of tests for specific test groups." REASON_TO_FLAG = "Models should have tests with specific groups for proper validation." diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_name.py b/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_name.py index 3e5eb04d..226eb86b 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_name.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_name.py @@ -9,7 +9,7 @@ class CheckModelHasTestsByName(ChecksInsight): - NAME = "Model has tests by name" + NAME = "model_missing_required_tests" ALIAS = "check_model_has_tests_by_name" DESCRIPTION = "Checks that the model has tests with specific names." REASON_TO_FLAG = "Models should have tests with specific names for proper validation." diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_type.py b/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_type.py index a5ce95c8..9cbc1cd0 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_type.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_model_has_tests_by_type.py @@ -9,7 +9,7 @@ class CheckModelHasTestsByType(ChecksInsight): - NAME = "Model has tests by type" + NAME = "model_insufficient_tests_by_type" ALIAS = "check_model_has_tests_by_type" DESCRIPTION = "Checks that the model has tests with specific types." REASON_TO_FLAG = "Models should have tests with specific types for proper validation." diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_model_materialization_by_childs.py b/src/datapilot/core/platforms/dbt/insights/checks/check_model_materialization_by_childs.py index 33d6a445..29234ce0 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_model_materialization_by_childs.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_model_materialization_by_childs.py @@ -8,7 +8,7 @@ class CheckModelMaterializationByChilds(ChecksInsight): - NAME = "Model materialization by children" + NAME = "model_suboptimal_materialization" ALIAS = "check_model_materialization_by_childs" DESCRIPTION = "Fewer children than threshold ideally should be view or ephemeral, more or equal should be table or incremental." REASON_TO_FLAG = "The model is flagged due to inappropriate materialization: models with child counts above the threshold require robust and efficient data processing, hence they should be materialized as tables or incrementals for optimized query performance and data management." diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_model_name_contract.py b/src/datapilot/core/platforms/dbt/insights/checks/check_model_name_contract.py index 988c5be9..8ab2e86d 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_model_name_contract.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_model_name_contract.py @@ -11,7 +11,7 @@ class CheckModelNameContract(ChecksInsight): - NAME = "Valid Mmdel name by folder" + NAME = "model_name_pattern_violation" ALIAS = "model_name_by_folder" DESCRIPTION = ( "Check that model name abides to a contract (similar to check-column-name-contract). A contract consists of a regex pattern." diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_and_childs.py b/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_and_childs.py index 2ab27ed3..c5a165d5 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_and_childs.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_and_childs.py @@ -9,7 +9,7 @@ class CheckModelParentsAndChilds(ChecksInsight): - NAME = "Model has specific number of parents or/and childs" + NAME = "model_excessive_dependencies" ALIAS = "check_model_parents_and_childs" DESCRIPTION = "Ensures the model has a specific number (max/min) of parents or/and childs." REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_database.py b/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_database.py index 44880e8a..e801347f 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_database.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_database.py @@ -8,7 +8,7 @@ class CheckModelParentsDatabase(ChecksInsight): - NAME = "Check model parents database" + NAME = "model_invalid_database" ALIAS = "check_model_parents_database" DESCRIPTION = "Ensures the parent models or sources are from certain database." REASON_TO_FLAG = "The model has a different database as parent model or source." diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_schema.py b/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_schema.py index 697f0ace..2f32759d 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_schema.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_model_parents_schema.py @@ -8,7 +8,7 @@ class CheckModelParentsSchema(ChecksInsight): - NAME = "Model Parents are from an allowed list of schemas" + NAME = "model_invalid_schema" ALIAS = "check_model_parents_schema" DESCRIPTION = "Ensures the parent models or sources are from certain schema." REASON_TO_FLAG = "The model has a different schema as parent model or source." diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_model_tags.py b/src/datapilot/core/platforms/dbt/insights/checks/check_model_tags.py index 69ddb245..7f178255 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_model_tags.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_model_tags.py @@ -8,7 +8,7 @@ class CheckModelTags(ChecksInsight): - NAME = "Model only has valid tags" + NAME = "model_invalid_tags" ALIAS = "check_model_tags" DESCRIPTION = "Ensures that the model has only valid tags from the provided list." REASON_TO_FLAG = "The model has tags that are not in the valid tags list" diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_source_childs.py b/src/datapilot/core/platforms/dbt/insights/checks/check_source_childs.py index a9e70753..c42a96b5 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_source_childs.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_source_childs.py @@ -8,7 +8,7 @@ class CheckSourceChilds(ChecksInsight): - NAME = "Source has allowed number of children" + NAME = "source_excessive_dependencies" ALIAS = "check_source_childs" DESCRIPTION = "Check the source has a specific number (max/min) of childs" REASON_TO_FLAG = "The source has a number of childs that is not in the valid range" diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_source_columns_have_desc.py b/src/datapilot/core/platforms/dbt/insights/checks/check_source_columns_have_desc.py index a39cf0ea..8ce31188 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_source_columns_have_desc.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_source_columns_have_desc.py @@ -13,7 +13,7 @@ class CheckSourceColumnsHaveDescriptions(ChecksInsight): - NAME = "Source columns have descriptions" + NAME = "source_columns_no_description" ALIAS = "check_source_columns_have_desc" DESCRIPTION = "Ensures that the source has columns with descriptions in the properties file (usually schema.yml)." REASON_TO_FLAG = "Missing descriptions for columns in the source can lead to confusion and inconsistency in analysis. " diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_all_columns.py b/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_all_columns.py index 3cb72bda..ab87462e 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_all_columns.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_all_columns.py @@ -14,7 +14,7 @@ class CheckSourceHasAllColumns(ChecksInsight): - NAME = "Source has all columns" + NAME = "source_missing_columns" ALIAS = "check_source_has_all_columns" DESCRIPTION = "Ensures that all columns in the database are also specified in the properties file. (usually schema.yml)." REASON_TO_FLAG = "Missing columns in the source can lead to confusion and inconsistency in analysis. " diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_freshness.py b/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_freshness.py index b4f3eaee..088c5dd6 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_freshness.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_freshness.py @@ -8,7 +8,7 @@ class CheckSourceHasFreshness(ChecksInsight): - NAME = "Source has freshness options" + NAME = "source_no_freshness" ALIAS = "check_source_has_freshness" DESCRIPTION = "Ensures that the source has freshness options" REASON_TO_FLAG = "Missing freshness options for the source can lead to confusion and inconsistency in analysis. " diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_loader.py b/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_loader.py index 8081b546..421e286e 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_loader.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_loader.py @@ -8,7 +8,7 @@ class CheckSourceHasLoader(ChecksInsight): - NAME = "Source has loader" + NAME = "source_no_loader" ALIAS = "check_source_has_loader" DESCRIPTION = "Check if the source has a loader" REASON_TO_FLAG = "Missing loader for the source can lead to confusion and inconsistency in analysis. " diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_meta_keys.py b/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_meta_keys.py index f988e641..190849f0 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_meta_keys.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_meta_keys.py @@ -11,7 +11,7 @@ class CheckSourceHasMetaKeys(ChecksInsight): - NAME = "Source has required metadata keys" + NAME = "source_invalid_meta_keys" ALIAS = "check_source_has_meta_keys" DESCRIPTION = "Check if the source has required metadata keys" REASON_TO_FLAG = "Missing meta keys in the source can lead to inconsistency in metadata management and understanding of the source. It's important to ensure that the source includes all the required meta keys as per the configuration." diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests.py b/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests.py index 979b5ceb..1771ef88 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests.py @@ -8,7 +8,7 @@ class CheckSourceHasTests(ChecksInsight): - NAME = "Source has tests" + NAME = "source_no_tests" ALIAS = "check_source_has_tests" DESCRIPTION = "Check if the source has tests" REASON_TO_FLAG = "The source table is missing tests. Ensure that the source table has tests." diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_group.py b/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_group.py index c8a7710d..51ad31e0 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_group.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_group.py @@ -9,7 +9,7 @@ class CheckSourceHasTestsByGroup(ChecksInsight): - NAME = "Source has tests by group" + NAME = "source_insufficient_tests_by_group" ALIAS = "check_source_has_tests_by_group" DESCRIPTION = "Check if sources have a number of tests for specific test groups." REASON_TO_FLAG = "Sources should have tests with specific groups for proper validation." diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_name.py b/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_name.py index 0964336f..3f8227d4 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_name.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_name.py @@ -9,7 +9,7 @@ class CheckSourceHasTestsByName(ChecksInsight): - NAME = "Source has tests by name" + NAME = "source_missing_required_tests" ALIAS = "check_source_has_tests_by_name" DESCRIPTION = "Checks that the source has tests with specific names." REASON_TO_FLAG = "Sources should have tests with specific names for proper validation." diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_type.py b/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_type.py index b78e1140..a4489a6e 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_type.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_source_has_tests_by_type.py @@ -8,7 +8,7 @@ class CheckSourceHasTestsByType(ChecksInsight): - NAME = "Source has tests by type" + NAME = "source_insufficient_tests_by_type" ALIAS = "check_source_has_tests_by_type" DESCRIPTION = "Checks that the source has tests with specific types." REASON_TO_FLAG = "Sources should have tests with specific types for proper validation." diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_source_table_has_description.py b/src/datapilot/core/platforms/dbt/insights/checks/check_source_table_has_description.py index e2474f71..b69c19cf 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_source_table_has_description.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_source_table_has_description.py @@ -8,7 +8,7 @@ class CheckSourceTableHasDescription(ChecksInsight): - NAME = "Source table has description" + NAME = "source_no_description" ALIAS = "check_source_table_has_desc" DESCRIPTION = "Ensures that the source table has a description" REASON_TO_FLAG = "Missing description for the source table can lead to confusion and inconsistency in analysis. " diff --git a/src/datapilot/core/platforms/dbt/insights/checks/check_source_tags.py b/src/datapilot/core/platforms/dbt/insights/checks/check_source_tags.py index d7dc87c2..f65504cf 100644 --- a/src/datapilot/core/platforms/dbt/insights/checks/check_source_tags.py +++ b/src/datapilot/core/platforms/dbt/insights/checks/check_source_tags.py @@ -8,7 +8,7 @@ class CheckSourceTags(ChecksInsight): - NAME = "Source has tags" + NAME = "source_invalid_tags" ALIAS = "check_source_tags" DESCRIPTION = "The source has only valid tags from the provided list." REASON_TO_FLAG = "The source has tags that are not in the valid tags list" diff --git a/src/datapilot/core/platforms/dbt/insights/dbt_test/missing_primary_key_tests.py b/src/datapilot/core/platforms/dbt/insights/dbt_test/missing_primary_key_tests.py index e64a4726..5c1707c9 100644 --- a/src/datapilot/core/platforms/dbt/insights/dbt_test/missing_primary_key_tests.py +++ b/src/datapilot/core/platforms/dbt/insights/dbt_test/missing_primary_key_tests.py @@ -21,7 +21,7 @@ class MissingPrimaryKeyTests(DBTTestInsight): NOT_NULL = "not_null" UNIQUE = "unique" UNIQUE_COMBINATION_OF_COLUMNS = "unique_combination_of_columns" - NAME = "Missing primary key tests" + NAME = "missing_primary_keys_tests" ALIAS = "missing_primary_key_tests" DESCRIPTION = "Checks if the model has a primary key test. " REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/dbt_test/test_coverage.py b/src/datapilot/core/platforms/dbt/insights/dbt_test/test_coverage.py index 80841a86..d285f999 100644 --- a/src/datapilot/core/platforms/dbt/insights/dbt_test/test_coverage.py +++ b/src/datapilot/core/platforms/dbt/insights/dbt_test/test_coverage.py @@ -14,7 +14,7 @@ class DBTTestCoverage(DBTTestInsight): It aims to ensure that a minimum percentage of tests are applied to each model to maintain data integrity. """ - NAME = "Low test coverage in dbt models" + NAME = "low_test_coverage" ALIAS = "dbt_low_test_coverage" DESCRIPTION = "Checks if the project test coverage is below the minimum threshold. " REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/governance/documentation_on_stale_columns.py b/src/datapilot/core/platforms/dbt/insights/governance/documentation_on_stale_columns.py index e1f1eb01..5be66e1c 100644 --- a/src/datapilot/core/platforms/dbt/insights/governance/documentation_on_stale_columns.py +++ b/src/datapilot/core/platforms/dbt/insights/governance/documentation_on_stale_columns.py @@ -16,7 +16,7 @@ class DBTDocumentationStaleColumns(DBTGovernanceInsight): DBTDocumentationStaleColumns identifies columns that have been documented but are no longer present in the model. """ - NAME = "Documentation of stale columns" + NAME = "model_stale_column_desc" ALIAS = "documentation_on_stale_columns" DESCRIPTION = ( "Identify columns that have been documented but are no longer present in the model. " diff --git a/src/datapilot/core/platforms/dbt/insights/governance/exposures_dependent_on_private_models.py b/src/datapilot/core/platforms/dbt/insights/governance/exposures_dependent_on_private_models.py index baab4850..a2e5b4d5 100644 --- a/src/datapilot/core/platforms/dbt/insights/governance/exposures_dependent_on_private_models.py +++ b/src/datapilot/core/platforms/dbt/insights/governance/exposures_dependent_on_private_models.py @@ -13,7 +13,7 @@ class DBTExposureDependentOnPrivateModels(DBTGovernanceInsight): DBTExposureDependentOnPrivateModels identifies exposures that are dependent on private models. """ - NAME = "Exposures dependent on private models" + NAME = "exposure_private_dependency" ALIAS = "exposures_dependent_on_private_models" DESCRIPTION = "Identify exposures that are dependent on private models. " REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/governance/public_models_without_contracts.py b/src/datapilot/core/platforms/dbt/insights/governance/public_models_without_contracts.py index 282284fe..bb2aa5a4 100644 --- a/src/datapilot/core/platforms/dbt/insights/governance/public_models_without_contracts.py +++ b/src/datapilot/core/platforms/dbt/insights/governance/public_models_without_contracts.py @@ -13,7 +13,7 @@ class DBTPublicModelWithoutContracts(DBTGovernanceInsight): DBTUndocumentedPublicModels identifies public models that are not documented. """ - NAME = "Public models without contracts" + NAME = "public_model_no_contract" ALIAS = "public_models_without_contracts" DESCRIPTION = "Identify public models that don't have contracts." REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/governance/undocumented_columns.py b/src/datapilot/core/platforms/dbt/insights/governance/undocumented_columns.py index f6bcae1f..67ebab9b 100644 --- a/src/datapilot/core/platforms/dbt/insights/governance/undocumented_columns.py +++ b/src/datapilot/core/platforms/dbt/insights/governance/undocumented_columns.py @@ -16,7 +16,7 @@ class DBTMissingDocumentation(DBTGovernanceInsight): DBTDocumentationStaleColumns identifies columns that have been documented but are no longer present in the model. """ - NAME = "Missing documentation" + NAME = "model_undocumented_columns" ALIAS = "missing_documentation" DESCRIPTION = ( "Detects columns and models in the dbt project that lack documentation. Proper documentation is essential " diff --git a/src/datapilot/core/platforms/dbt/insights/governance/undocumented_public_models.py b/src/datapilot/core/platforms/dbt/insights/governance/undocumented_public_models.py index 7c4d49c5..bf93411d 100644 --- a/src/datapilot/core/platforms/dbt/insights/governance/undocumented_public_models.py +++ b/src/datapilot/core/platforms/dbt/insights/governance/undocumented_public_models.py @@ -17,7 +17,7 @@ class DBTUndocumentedPublicModels(DBTGovernanceInsight): DBTUndocumentedPublicModels identifies public models that are not documented. """ - NAME = "Undocumented public models" + NAME = "undocumented_public_models" ALIAS = "undocumented_public_models" DESCRIPTION = "Identify public models that don't have documentation." REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/modelling/direct_join_to_source.py b/src/datapilot/core/platforms/dbt/insights/modelling/direct_join_to_source.py index 0da5569c..c768ec1a 100644 --- a/src/datapilot/core/platforms/dbt/insights/modelling/direct_join_to_source.py +++ b/src/datapilot/core/platforms/dbt/insights/modelling/direct_join_to_source.py @@ -21,7 +21,7 @@ class DBTDirectJoinSource(DBTModellingInsight): """ ALIAS = "source_staging_model_integrity" - NAME = "Source-Staging Model Integrity" + NAME = "direct_join_to_source" DESCRIPTION = "A model should not have direct joins to both sources and other staging models. " REASON_TO_FLAG = ( "Flagged when a model directly joins a source and a model without a staging intermediary. " diff --git a/src/datapilot/core/platforms/dbt/insights/modelling/downstream_models_dependent_on_source.py b/src/datapilot/core/platforms/dbt/insights/modelling/downstream_models_dependent_on_source.py index 1025fe5a..88db7d2d 100644 --- a/src/datapilot/core/platforms/dbt/insights/modelling/downstream_models_dependent_on_source.py +++ b/src/datapilot/core/platforms/dbt/insights/modelling/downstream_models_dependent_on_source.py @@ -19,8 +19,8 @@ class DBTDownstreamModelsDependentOnSource(DBTModellingInsight): in a dbt project that depend directly on a source node. """ - NAME = "Downstream models dependent on source" - ALIAS = "downstream_source_dependence" + NAME = "model_downstream_source_dependency" + ALIAS = "downstream_source_dependency" DESCRIPTION = "Downstream models should not depend directly on source nodes. " REASON_TO_FLAG = ( "Direct dependency of marts or intermediate models on a source node suggests a missing staging model. " diff --git a/src/datapilot/core/platforms/dbt/insights/modelling/duplicate_sources.py b/src/datapilot/core/platforms/dbt/insights/modelling/duplicate_sources.py index e2fa6486..b5308660 100644 --- a/src/datapilot/core/platforms/dbt/insights/modelling/duplicate_sources.py +++ b/src/datapilot/core/platforms/dbt/insights/modelling/duplicate_sources.py @@ -15,7 +15,7 @@ class DBTDuplicateSources(DBTModellingInsight): Ref: https://github.com/dbt-labs/dbt-project-evaluator/blob/main/models/marts/dag/fct_duplicate_sources.sql """ - NAME = "Duplicate sources" + NAME = "duplicate_source" ALIAS = "Duplicate_Sources" DESCRIPTION = "Duplicate sources should be avoided." REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/modelling/hard_coded_references.py b/src/datapilot/core/platforms/dbt/insights/modelling/hard_coded_references.py index 068f0f42..02c91b43 100644 --- a/src/datapilot/core/platforms/dbt/insights/modelling/hard_coded_references.py +++ b/src/datapilot/core/platforms/dbt/insights/modelling/hard_coded_references.py @@ -15,7 +15,7 @@ class DBTHardCodedReferences(DBTModellingInsight): Checks if the dbt model has hard coded references to other models. """ - NAME = "Hard coded references" + NAME = "hardcoded_refs" ALIAS = "hard_coded_references" DESCRIPTION = "Models should not have hard-coded references to tables" REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/modelling/joining_of_upstream_concepts.py b/src/datapilot/core/platforms/dbt/insights/modelling/joining_of_upstream_concepts.py index 8b19fbbf..ce73abfa 100644 --- a/src/datapilot/core/platforms/dbt/insights/modelling/joining_of_upstream_concepts.py +++ b/src/datapilot/core/platforms/dbt/insights/modelling/joining_of_upstream_concepts.py @@ -13,11 +13,9 @@ class DBTRejoiningOfUpstreamConcepts(DBTModellingInsight): model has no other downstream dependencies. """ - NAME = "Rejoining of upstream Concepts" + NAME = "upstream_rejoins" ALIAS = "rejoining_upstream_concepts" - DESCRIPTION = ( - "Detects scenarios where a parent's direct child is also a direct child of another one " "of the parent's direct children." - ) + DESCRIPTION = "Detects scenarios where a parent's direct child is also a direct child of another one of the parent's direct children." REASON_TO_FLAG = ( "Flagged to identify cases where a parent model has a direct child that is also a direct child " "of another one of the parent's direct children. Such patterns can suggest loops or redundancies in the DAG." diff --git a/src/datapilot/core/platforms/dbt/insights/modelling/model_fanout.py b/src/datapilot/core/platforms/dbt/insights/modelling/model_fanout.py index cf581ca8..2a54b884 100644 --- a/src/datapilot/core/platforms/dbt/insights/modelling/model_fanout.py +++ b/src/datapilot/core/platforms/dbt/insights/modelling/model_fanout.py @@ -13,7 +13,7 @@ class DBTModelFanout(DBTModellingInsight): of direct leaf children, indicating a high model fanout. """ - NAME = "Model fanout analysis" + NAME = "model_excessive_fanout" ALIAS = "model_fanout" DESCRIPTION = "Identifies parent models with an unusually high number of children. " REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/modelling/multiple_sources_joined.py b/src/datapilot/core/platforms/dbt/insights/modelling/multiple_sources_joined.py index fd29783f..4bf13291 100644 --- a/src/datapilot/core/platforms/dbt/insights/modelling/multiple_sources_joined.py +++ b/src/datapilot/core/platforms/dbt/insights/modelling/multiple_sources_joined.py @@ -13,7 +13,7 @@ class DBTModelsMultipleSourcesJoined(DBTModellingInsight): DBTModelsMultipleSourcesJoined identifies models in a dbt project that reference more than one source. """ - NAME = "Multiple sources joined" + NAME = "multi_source_joins" ALIAS = "multiple_sources_joined" DESCRIPTION = "Models should not directly join multiple sources." REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/modelling/root_model.py b/src/datapilot/core/platforms/dbt/insights/modelling/root_model.py index b6c4d04d..b44a1575 100644 --- a/src/datapilot/core/platforms/dbt/insights/modelling/root_model.py +++ b/src/datapilot/core/platforms/dbt/insights/modelling/root_model.py @@ -13,7 +13,7 @@ class DBTRootModel(DBTModellingInsight): meaning these models cannot be traced back to a declared source or model. """ - NAME = "Root model traceability" + NAME = "orphan_models" ALIAS = "root_model" DESCRIPTION = "Identifies models in a dbt project with 0 direct parents, meaning these models cannot be traced back to a declared source or model." REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/modelling/source_fanout.py b/src/datapilot/core/platforms/dbt/insights/modelling/source_fanout.py index a868a8ca..8bcb3d12 100644 --- a/src/datapilot/core/platforms/dbt/insights/modelling/source_fanout.py +++ b/src/datapilot/core/platforms/dbt/insights/modelling/source_fanout.py @@ -12,7 +12,7 @@ class DBTSourceFanout(DBTModellingInsight): DBTSourceFanout identifies instances where a source is the direct parent of multiple resources in the DAG. """ - NAME = "Source fanout analysis" + NAME = "source_excessive_fanout" ALIAS = "source_fanout" DESCRIPTION = "Identifies sources with a high number of direct children." REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/modelling/staging_model_dependent_on_downstream_models.py b/src/datapilot/core/platforms/dbt/insights/modelling/staging_model_dependent_on_downstream_models.py index 579cc449..2ffcf8f3 100644 --- a/src/datapilot/core/platforms/dbt/insights/modelling/staging_model_dependent_on_downstream_models.py +++ b/src/datapilot/core/platforms/dbt/insights/modelling/staging_model_dependent_on_downstream_models.py @@ -20,7 +20,7 @@ class DBTStagingModelsDependentOnDownstreamModels(DBTModellingInsight): DBTStagingModelsDependentOnDownstream identifies staging models in a dbt project that depend on downstream models. """ - NAME = "Staging models dependency check" + NAME = "staging_downstream_dependency" ALIAS = "staging_models_dependency" DESCRIPTION = "Staging models should not depend on downstream models." REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/modelling/staging_model_dependent_on_staging_models.py b/src/datapilot/core/platforms/dbt/insights/modelling/staging_model_dependent_on_staging_models.py index abe555bf..1ab1e0af 100644 --- a/src/datapilot/core/platforms/dbt/insights/modelling/staging_model_dependent_on_staging_models.py +++ b/src/datapilot/core/platforms/dbt/insights/modelling/staging_model_dependent_on_staging_models.py @@ -16,7 +16,7 @@ class DBTStagingModelsDependentOnStagingModels(DBTModellingInsight): DBTStagingModelsDependentOnStagingModels identifies staging models in a dbt project that depend on staging models. """ - NAME = "Staging models dependency on staging Models" + NAME = "model_staging_on_staging" ALIAS = "staging_models_on_staging" DESCRIPTION = "Staging models should not directly depend on other staging models." REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/modelling/unused_sources.py b/src/datapilot/core/platforms/dbt/insights/modelling/unused_sources.py index de1aa9e1..7cbf7ea2 100644 --- a/src/datapilot/core/platforms/dbt/insights/modelling/unused_sources.py +++ b/src/datapilot/core/platforms/dbt/insights/modelling/unused_sources.py @@ -11,7 +11,7 @@ class DBTUnusedSources(DBTModellingInsight): DBTUnusedSources identifies sources in a dbt project that are not being referenced by any models. """ - NAME = "Unused sources detection" + NAME = "unused_source" ALIAS = "unused_sources" DESCRIPTION = "Detects sources in the dbt project that are not being referenced by any models." REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/performance/chain_view_linking.py b/src/datapilot/core/platforms/dbt/insights/performance/chain_view_linking.py index 9d77fe29..6826739f 100644 --- a/src/datapilot/core/platforms/dbt/insights/performance/chain_view_linking.py +++ b/src/datapilot/core/platforms/dbt/insights/performance/chain_view_linking.py @@ -13,7 +13,7 @@ class DBTChainViewLinking(DBTPerformanceInsight): """ CHAIN_LENGTH_STR = "chain_length" - NAME = "Chain view linking" + NAME = "model_excessive_chain_of_views" ALIAS = "chain_view_linking" CHAIN_LENGTH = 4 # Default chain length, can be adjusted as needed DESCRIPTION = "Checks for long chains of view/ephemeral models in the dbt project. Long chains can lead to slow computation " diff --git a/src/datapilot/core/platforms/dbt/insights/performance/exposure_parent_materializations.py b/src/datapilot/core/platforms/dbt/insights/performance/exposure_parent_materializations.py index d7f5d0d1..55530d23 100644 --- a/src/datapilot/core/platforms/dbt/insights/performance/exposure_parent_materializations.py +++ b/src/datapilot/core/platforms/dbt/insights/performance/exposure_parent_materializations.py @@ -14,7 +14,7 @@ class DBTExposureParentMaterialization(DBTPerformanceInsight): Checks if the dbt model has hard coded references to other models. """ - NAME = "Exposure parent materialization check" + NAME = "exposure_direct_source_dependency" ALIAS = "exposure_parent_bad_materialization" DESCRIPTION = "Exposures should depend on transformed data models or metrics, not raw untransformed sources. " REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/sql/sql_check.py b/src/datapilot/core/platforms/dbt/insights/sql/sql_check.py index 16774b69..3914af90 100644 --- a/src/datapilot/core/platforms/dbt/insights/sql/sql_check.py +++ b/src/datapilot/core/platforms/dbt/insights/sql/sql_check.py @@ -30,7 +30,7 @@ class SqlCheck(SqlInsight): This class identifies DBT models with SQL optimization issues. """ - NAME = "sql optimization issues" + NAME = "model_unoptimized_sql" ALIAS = "check_sql_optimization" DESCRIPTION = "Checks if the model has SQL optimization issues. " REASON_TO_FLAG = "The query can be optimized." diff --git a/src/datapilot/core/platforms/dbt/insights/structure/model_directories_structure.py b/src/datapilot/core/platforms/dbt/insights/structure/model_directories_structure.py index d886c83c..c7ace49d 100644 --- a/src/datapilot/core/platforms/dbt/insights/structure/model_directories_structure.py +++ b/src/datapilot/core/platforms/dbt/insights/structure/model_directories_structure.py @@ -17,7 +17,7 @@ class DBTModelDirectoryStructure(DBTStructureInsight): DBTModelDirectoryStructure checks if models are placed in the correct directories. """ - NAME = "Bad model directory structure" + NAME = "model_invalid_directory_structure" ALIAS = "model_directory_structure" DESCRIPTION = "This rule identifies models that are not placed in their correct directories. " REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/structure/model_naming_conventions.py b/src/datapilot/core/platforms/dbt/insights/structure/model_naming_conventions.py index 3f2f1094..80c60707 100644 --- a/src/datapilot/core/platforms/dbt/insights/structure/model_naming_conventions.py +++ b/src/datapilot/core/platforms/dbt/insights/structure/model_naming_conventions.py @@ -18,7 +18,7 @@ class DBTModelNamingConvention(DBTStructureInsight): DBTModelNamingConvention identifies models that do not follow the naming convention. """ - NAME = "Bad model naming convention" + NAME = "model_invalid_name" ALIAS = "model_naming_convention_check" DESCRIPTION = "This rule identifies models that do not follow the naming convention." REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/structure/source_directories_structure.py b/src/datapilot/core/platforms/dbt/insights/structure/source_directories_structure.py index fa3ef85b..45c63778 100644 --- a/src/datapilot/core/platforms/dbt/insights/structure/source_directories_structure.py +++ b/src/datapilot/core/platforms/dbt/insights/structure/source_directories_structure.py @@ -14,7 +14,7 @@ class DBTSourceDirectoryStructure(DBTStructureInsight): DBTSourcesDirectoryStructure checks if sources are placed in the correct directories. """ - NAME = "Bad source directory structure" + NAME = "source_invalid_directory_structure" ALIAS = "source_directory_structure" DESCRIPTION = "This rule identifies sources that are not placed in their correct directories. " REASON_TO_FLAG = ( diff --git a/src/datapilot/core/platforms/dbt/insights/structure/test_directory_structure.py b/src/datapilot/core/platforms/dbt/insights/structure/test_directory_structure.py index 6ca7f243..99cd4c65 100644 --- a/src/datapilot/core/platforms/dbt/insights/structure/test_directory_structure.py +++ b/src/datapilot/core/platforms/dbt/insights/structure/test_directory_structure.py @@ -13,7 +13,7 @@ class DBTTestDirectoryStructure(DBTStructureInsight): DBTTestDirectoryStructure checks if tests are placed in the correct directories. """ - NAME = "Bad test directory structure" + NAME = "test_invalid_directory" ALIAS = "test_directory_structure" DESCRIPTION = "This rule checks if tests are correctly placed in the same directories as their corresponding models." REASON_TO_FLAG = (