The Context Platform for your Data and AI Stack
This report presents the forensic synthetic code analysis of datahub-project/datahub, a Python project with 12,424 GitHub stars. SynthScan v2.0 examined 3,607,764 lines of code across 15978 source files, recording 29883 pattern matches distributed across 27 syntactic categories. The overall adjusted score of 11.3 places this repository in the Low AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 29883 distinct pattern matches across 27 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …cker/snippets/ingestion/build_bundled_venvs_unified.py | 35 | def _print_subprocess_failure(proc: subprocess.CompletedProcess[str]) -> None: | CODE |
| LOW | …cker/snippets/ingestion/build_bundled_venvs_unified.py | 42 | def _verify_installed_acryl_datahub_version( | CODE |
| LOW | docker/snippets/ingestion/bundled_venv_config.py | 65 | def bundled_venv_symlink_names(group_plan: BundledVenvGroupPlan) -> Tuple[str, ...]: | CODE |
| LOW | docker/snippets/ingestion/bundled_venv_config.py | 73 | def _default_plugin_extras_for_plugin(plugin: str, slim_mode: bool) -> List[str]: | CODE |
| LOW | docker/snippets/ingestion/bundled_venv_config.py | 117 | def groups_config_from_plugin_group_env( | CODE |
| LOW | …icsearch/query/request/AutocompleteRequestHandler.java | 51 | public class AutocompleteRequestHandler extends BaseRequestHandler { | CODE |
| LOW | …ch/elasticsearch/query/request/BaseRequestHandler.java | 12 | public abstract class BaseRequestHandler { | CODE |
| LOW | …/elasticsearch/query/request/SearchRequestHandler.java | 78 | public class SearchRequestHandler extends BaseRequestHandler { | CODE |
| LOW | perf-test/authz-perf/compare.py | 15 | def _row_effective_expectation(row: dict) -> int: | CODE |
| LOW | perf-test/authz-perf/compare.py | 114 | def _unmatched_metric_warnings( | CODE |
| LOW | perf-test/authz-perf/executor.py | 45 | def _maybe_jitter_search_variables( | CODE |
| LOW | perf-test/authz-perf/tests/test_run_multi.py | 10 | def test_output_dir_writes_manifest(mock_run, mock_gms, tmp_path: Path) -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_run_multi.py | 57 | def test_fail_fast_stops_on_error(mock_run, mock_gms, tmp_path: Path) -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_graphql_adapt_loader.py | 6 | def test_resolve_operation_document_delegates_to_registry() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_targets.py | 28 | def test_parse_target_requires_name() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_targets.py | 59 | def test_env_file_hidden_name() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_targets.py | 65 | def test_env_file_name_override(tmp_path: Path) -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_targets.py | 81 | def test_gms_url_creates_local_target() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_results.py | 7 | def test_jsonl_append_and_summary(tmp_path: Path) -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_stats.py | 10 | def test_compute_stats_max_not_trimmed() -> None: | CODE |
| LOW⚡ | perf-test/authz-perf/tests/test_output_paths.py | 12 | def test_build_slug_prefers_run_label() -> None: | CODE |
| LOW⚡ | perf-test/authz-perf/tests/test_output_paths.py | 18 | def test_build_slug_git_commit() -> None: | CODE |
| LOW⚡ | perf-test/authz-perf/tests/test_output_paths.py | 24 | def test_result_paths_single_local_bisect() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_output_paths.py | 36 | def test_result_paths_multi_cell() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_run_graphql_setup.py | 12 | def test_run_single_target_generates_queries( | CODE |
| LOW | perf-test/authz-perf/tests/test_query_build.py | 23 | def test_build_operation_document_minimal() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_query_build.py | 41 | def test_build_omits_missing_paths() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_query_build.py | 57 | def test_resolve_operation_document_with_registry() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_benchmarks.py | 10 | def test_all_personas_have_core_ops() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_benchmarks.py | 31 | def test_query_specs_cover_all_scenarios() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_benchmarks.py | 44 | def test_get_me_uses_privilege_expand() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_gms_config.py | 34 | def test_fetch_gms_config_failure(mock_get: MagicMock) -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_session.py | 8 | def test_persona_session_reuses_same_session() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_graphql_adapt.py | 12 | def test_create_graphql_query_registry(mock_cls: MagicMock) -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_graphql_adapt.py | 24 | def test_setup_graphql_queries(mock_create: MagicMock) -> None: | CODE |
| LOW | …rf-test/authz-perf/tests/test_persona_password_seed.py | 16 | def test_local_password_unchanged() -> None: | CODE |
| LOW | …rf-test/authz-perf/tests/test_persona_password_seed.py | 22 | def test_derive_persona_password_deterministic( | CODE |
| LOW | …rf-test/authz-perf/tests/test_persona_password_seed.py | 35 | def test_derive_persona_password_varies_by_host( | CODE |
| LOW | …rf-test/authz-perf/tests/test_persona_password_seed.py | 47 | def test_load_or_create_seed_from_env(tmp_path, monkeypatch) -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_personas.py | 9 | def test_personas_oracle_has_seventeen_entries() -> None: | CODE |
| LOW⚡ | perf-test/authz-perf/tests/test_variants.py | 4 | def test_parse_variants_default() -> None: | CODE |
| LOW⚡ | perf-test/authz-perf/tests/test_variants.py | 8 | def test_parse_variants_run_labels() -> None: | CODE |
| LOW⚡ | perf-test/authz-perf/tests/test_variants.py | 14 | def test_parse_variants_docker_tags() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_metadata.py | 7 | def test_capture_git_metadata() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_metadata.py | 12 | def test_capture_deployment_metadata() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_metadata.py | 25 | def test_deployment_docker_tag() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_credentials.py | 8 | def test_uses_datahubenv_token() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_credentials.py | 21 | def test_gms_url_cli_overrides_config() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_credentials.py | 34 | def test_mints_token_from_username_password() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_credentials.py | 58 | def test_no_credentials_non_interactive_exits() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_credentials.py | 67 | def test_merges_datahubenv_token_when_env_url_only( | CODE |
| LOW | perf-test/authz-perf/tests/test_expectations.py | 19 | def test_view_authorization_from_properties_prefers_dot_key() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_expectations.py | 31 | def test_adapt_benchmarks_keeps_fixture_when_view_auth_enabled() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_expectations.py | 51 | def test_adapt_benchmarks_relaxes_deny_when_view_auth_disabled() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_expectations.py | 71 | def test_metric_key_and_profile_for_adapted_deny() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_expectations.py | 86 | def test_metric_key_for_authz_deny() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_expectations.py | 100 | def test_warn_authorization_settings_drift() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_graphql_health.py | 25 | def test_execute_graphql_success() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_graphql_health.py | 51 | def test_execute_graphql_http_error() -> None: | CODE |
| LOW | perf-test/authz-perf/tests/test_graphql_health.py | 79 | def test_request_health_tracker_status_mismatch() -> None: | CODE |
| 19153 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …/metadata/aspect/hooks/AspectMigrationMutatorTest.java | 85 | // ── Read mutation ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …/metadata/aspect/hooks/AspectMigrationMutatorTest.java | 169 | // ── Write mutation ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …/metadata/aspect/hooks/AspectMigrationMutatorTest.java | 230 | // ── Helpers ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …data/aspect/hooks/AspectMigrationMutatorChainTest.java | 57 | // ── Empty chain ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …data/aspect/hooks/AspectMigrationMutatorChainTest.java | 93 | // ── Single-hop chain ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …data/aspect/hooks/AspectMigrationMutatorChainTest.java | 163 | // ── Multi-hop chain ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …data/aspect/hooks/AspectMigrationMutatorChainTest.java | 185 | // ── Gap bridging ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …data/aspect/hooks/AspectMigrationMutatorChainTest.java | 401 | // ── Self-disable ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …data/aspect/hooks/AspectMigrationMutatorChainTest.java | 431 | // ── Priority ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …data/aspect/hooks/AspectMigrationMutatorChainTest.java | 439 | // ── Helpers ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …metadata/aspect/hooks/AspectMigrationMutatorChain.java | 111 | // ── Read path ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …metadata/aspect/hooks/AspectMigrationMutatorChain.java | 164 | // ── Write path ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …edin/metadata/aspect/hooks/AspectMigrationMutator.java | 67 | // ── Read path ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …edin/metadata/aspect/hooks/AspectMigrationMutator.java | 109 | // ── Write path ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …edin/metadata/aspect/hooks/AspectMigrationMutator.java | 145 | // ── Helpers ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …raphql/resolvers/timeline/GetTimelineResolverTest.java | 107 | // ── includeVersionSet tests ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | …raphql/resolvers/timeline/GetTimelineResolverTest.java | 378 | // ── Helpers ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …edin/metadata/entity/EbeanAspectMigrationsDaoTest.java | 83 | // ── streamAspectBatchesForMigration ─────────────────────────────────────── | COMMENT |
| MEDIUM | …data/search/utils/ESUtilsLifecycleStageFilterTest.java | 129 | // ── Helpers ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …/queue/postgres/EbeanPostgresMetadataQueueStoreIT.java | 762 | // ── Priority queue integration tests ────────────────────────────────────── | COMMENT |
| MEDIUM | …metadata/aspect/hooks/DomainsSyncMutationHookTest.java | 59 | // ── Legacy path: only domains provided ───────────────────────────────────── | COMMENT |
| MEDIUM | …metadata/aspect/hooks/DomainsSyncMutationHookTest.java | 131 | // ── New path: domainAssociations provided ────────────────────────────────── | COMMENT |
| MEDIUM | …metadata/aspect/hooks/DomainsSyncMutationHookTest.java | 202 | // ── Conflict detection ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …metadata/aspect/hooks/DomainsSyncMutationHookTest.java | 279 | // ── Read-modify-write scenarios ─────────────────────────────────────────── | COMMENT |
| MEDIUM | …metadata/aspect/hooks/DomainsSyncMutationHookTest.java | 334 | // ── Edge cases ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …metadata/aspect/hooks/DomainsSyncMutationHookTest.java | 388 | // ── Ordering: manual before propagated ─────────────────────────────────── | COMMENT |
| MEDIUM | …metadata/aspect/hooks/DomainsSyncMutationHookTest.java | 509 | // ── Helpers ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ata/aspect/hooks/LifecycleStageTransitionHookTest.java | 268 | // ── Helpers ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ntgenerator/VersionPropertiesChangeEventGenerator.java | 86 | // ── getChangeEvents (preferred path) ────────────────────────────────────── | COMMENT |
| MEDIUM | …ntgenerator/VersionPropertiesChangeEventGenerator.java | 99 | // ── Core diff logic ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | …nt-context/tests/unit/google_adk_tools/test_builder.py | 144 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …nt-context/tests/unit/google_adk_tools/test_builder.py | 146 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/google_adk_registration/test_plugin.py | 42 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/google_adk_registration/test_plugin.py | 44 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/google_adk_registration/test_plugin.py | 54 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/google_adk_registration/test_plugin.py | 56 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/google_adk_registration/test_plugin.py | 76 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/google_adk_registration/test_plugin.py | 78 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/google_adk_registration/test_plugin.py | 185 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/google_adk_registration/test_plugin.py | 187 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/google_adk_registration/test_plugin.py | 224 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/google_adk_registration/test_plugin.py | 226 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/google_adk_registration/test_plugin.py | 247 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/google_adk_registration/test_plugin.py | 249 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …text/tests/unit/google_adk_registration/test_plugin.py | 8 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …text/tests/unit/google_adk_registration/test_plugin.py | 10 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ent-context/tests/unit/langchain_tools/test_builder.py | 162 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …ent-context/tests/unit/langchain_tools/test_builder.py | 164 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/langchain_registration/test_handler.py | 63 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/langchain_registration/test_handler.py | 65 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/langchain_registration/test_handler.py | 161 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/langchain_registration/test_handler.py | 163 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/langchain_registration/test_handler.py | 290 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/langchain_registration/test_handler.py | 292 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/langchain_registration/test_handler.py | 360 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …text/tests/unit/langchain_registration/test_handler.py | 362 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …text/tests/unit/langchain_registration/test_handler.py | 19 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …text/tests/unit/langchain_registration/test_handler.py | 21 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …agent-context/tests/unit/mcp_tools/test_ask_datahub.py | 75 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …agent-context/tests/unit/mcp_tools/test_ask_datahub.py | 77 | # --------------------------------------------------------------------------- | COMMENT |
| 1927 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | datahub-frontend/app/auth/AuthModule.java | 427 | com.linkedin.metadata.utils.BasePathUtils.resolveBasePath( | CODE |
| CRITICAL | datahub-frontend/app/auth/AuthModule.java | 490 | return com.linkedin.metadata.utils.BasePathUtils.resolveBasePath(basePathEnabled, basePath); | CODE |
| CRITICAL | datahub-frontend/app/controllers/Application.java | 280 | org.apache.pekko.stream.javadsl.StreamConverters.fromInputStream( | CODE |
| CRITICAL | datahub-frontend/test/oidc/OidcCallbackLogicTest.java | 32 | org.junit.jupiter.api.Assertions.assertDoesNotThrow( | CODE |
| CRITICAL | datahub-frontend/test/oidc/OidcCallbackLogicTest.java | 47 | org.junit.jupiter.api.Assertions.assertThrows( | CODE |
| CRITICAL | …end/test/controllers/AuthenticationControllerTest.java | 239 | .when(() -> com.linkedin.metadata.utils.BasePathUtils.normalizeBasePath("")) | CODE |
| CRITICAL | …end/test/controllers/AuthenticationControllerTest.java | 269 | .when(() -> com.linkedin.metadata.utils.BasePathUtils.normalizeBasePath("/datahub")) | CODE |
| CRITICAL | …end/test/controllers/AuthenticationControllerTest.java | 299 | .when(() -> com.linkedin.metadata.utils.BasePathUtils.normalizeBasePath("/api/v2")) | CODE |
| CRITICAL | …end/test/controllers/AuthenticationControllerTest.java | 302 | .when(() -> com.linkedin.metadata.utils.BasePathUtils.addBasePath("/login", "/api/v2")) | CODE |
| CRITICAL | …end/test/controllers/AuthenticationControllerTest.java | 332 | .when(() -> com.linkedin.metadata.utils.BasePathUtils.normalizeBasePath("")) | CODE |
| CRITICAL | …end/test/controllers/AuthenticationControllerTest.java | 335 | .when(() -> com.linkedin.metadata.utils.BasePathUtils.addBasePath("/login", "")) | CODE |
| CRITICAL | …end/test/controllers/AuthenticationControllerTest.java | 377 | .when(() -> com.linkedin.metadata.utils.BasePathUtils.normalizeBasePath("/datahub")) | CODE |
| CRITICAL | …end/test/controllers/AuthenticationControllerTest.java | 381 | () -> com.linkedin.metadata.utils.BasePathUtils.addBasePath(anyString(), anyString())) | CODE |
| CRITICAL⚡ | …end/test/controllers/AuthenticationControllerTest.java | 432 | .when(() -> com.linkedin.metadata.utils.BasePathUtils.normalizeBasePath("/datahub")) | CODE |
| CRITICAL⚡ | …end/test/controllers/AuthenticationControllerTest.java | 435 | .when(() -> com.linkedin.metadata.utils.BasePathUtils.addBasePath("/logOut", "/datahub")) | CODE |
| CRITICAL⚡ | …end/test/controllers/AuthenticationControllerTest.java | 439 | () -> com.linkedin.metadata.utils.BasePathUtils.addBasePath(anyString(), anyString())) | CODE |
| CRITICAL | …end/test/controllers/AuthenticationControllerTest.java | 487 | .when(() -> com.linkedin.metadata.utils.BasePathUtils.normalizeBasePath("/api/v2")) | CODE |
| CRITICAL | …end/test/controllers/AuthenticationControllerTest.java | 491 | () -> com.linkedin.metadata.utils.BasePathUtils.addBasePath(anyString(), anyString())) | CODE |
| CRITICAL | …end/test/controllers/AuthenticationControllerTest.java | 538 | .when(() -> com.linkedin.metadata.utils.BasePathUtils.normalizeBasePath("/datahub")) | CODE |
| CRITICAL | …end/test/controllers/AuthenticationControllerTest.java | 542 | () -> com.linkedin.metadata.utils.BasePathUtils.addBasePath(anyString(), anyString())) | CODE |
| CRITICAL⚡ | …end/test/controllers/AuthenticationControllerTest.java | 588 | .when(() -> com.linkedin.metadata.utils.BasePathUtils.normalizeBasePath("/api/v2")) | CODE |
| CRITICAL⚡ | …end/test/controllers/AuthenticationControllerTest.java | 592 | () -> com.linkedin.metadata.utils.BasePathUtils.addBasePath("/dashboard", "/api/v2")) | CODE |
| CRITICAL⚡ | …end/test/controllers/AuthenticationControllerTest.java | 595 | .when(() -> com.linkedin.metadata.utils.BasePathUtils.addBasePath("/", "/api/v2")) | CODE |
| CRITICAL | …end/test/controllers/AuthenticationControllerTest.java | 643 | .when(() -> com.linkedin.metadata.utils.BasePathUtils.normalizeBasePath("/datahub")) | CODE |
| CRITICAL | …end/test/controllers/AuthenticationControllerTest.java | 647 | () -> com.linkedin.metadata.utils.BasePathUtils.addBasePath(anyString(), anyString())) | CODE |
| CRITICAL | …data/models/EntitySpecBuilderSearchIndexGroupTest.java | 124 | new com.linkedin.metadata.models.annotation.AspectAnnotation(name, false, false, null, 1L), | CODE |
| CRITICAL | …com/linkedin/metadata/models/ConfigEntitySpecTest.java | 126 | new com.linkedin.metadata.models.annotation.AspectAnnotation(name, false, false, null, 1L), | CODE |
| CRITICAL | …va/com/linkedin/metadata/aspect/models/graph/Edge.java | 151 | com.linkedin.metadata.query.filter.SortOrder.valueOf( | CODE |
| CRITICAL | …b/graphql/types/dataset/mappers/DatasetMapperTest.java | 69 | new com.linkedin.datahub.graphql.generated.AuditStamp( | CODE |
| CRITICAL | …b/graphql/types/dataset/mappers/DatasetMapperTest.java | 119 | new com.linkedin.datahub.graphql.generated.AuditStamp(0L, null)); | CODE |
| CRITICAL | …b/graphql/types/dataset/mappers/DatasetMapperTest.java | 174 | new com.linkedin.datahub.graphql.generated.AuditStamp(20L, null)); | CODE |
| CRITICAL | …ql/types/dataset/mappers/DatasetProfileMapperTest.java | 86 | new com.linkedin.datahub.graphql.generated.DatasetFieldProfile( | CODE |
| CRITICAL⚡ | …ql/types/dataset/mappers/DatasetProfileMapperTest.java | 100 | new com.linkedin.datahub.graphql.generated.Quantile("0.25", "1"), | CODE |
| CRITICAL⚡ | …ql/types/dataset/mappers/DatasetProfileMapperTest.java | 101 | new com.linkedin.datahub.graphql.generated.Quantile("0.75", "5"))), | CODE |
| CRITICAL⚡ | …ql/types/dataset/mappers/DatasetProfileMapperTest.java | 104 | new com.linkedin.datahub.graphql.generated.ValueFrequency("2", 10L)))), | CODE |
| CRITICAL⚡ | …ql/types/dataset/mappers/DatasetProfileMapperTest.java | 105 | new com.linkedin.datahub.graphql.generated.DatasetFieldProfile( | CODE |
| CRITICAL⚡ | …ql/types/dataset/mappers/DatasetProfileMapperTest.java | 119 | new com.linkedin.datahub.graphql.generated.Quantile("0.25", "1"), | CODE |
| CRITICAL⚡ | …ql/types/dataset/mappers/DatasetProfileMapperTest.java | 120 | new com.linkedin.datahub.graphql.generated.Quantile("0.75", "5"))), | CODE |
| CRITICAL⚡ | …ql/types/dataset/mappers/DatasetProfileMapperTest.java | 123 | new com.linkedin.datahub.graphql.generated.ValueFrequency( | CODE |
| CRITICAL | …ql/types/dataset/mappers/DatasetProfileMapperTest.java | 255 | new com.linkedin.datahub.graphql.generated.DatasetFieldProfile( | CODE |
| CRITICAL | …ql/types/dataset/mappers/DatasetProfileMapperTest.java | 258 | new com.linkedin.datahub.graphql.generated.DatasetFieldProfile( | CODE |
| CRITICAL | …pes/dataplatforminstance/DataPlatformInstanceTest.java | 203 | new com.linkedin.datahub.graphql.types.dataplatforminstance.DataPlatformInstanceType( | CODE |
| CRITICAL | …datahub/graphql/types/assertion/AssertionTypeTest.java | 106 | new com.linkedin.datahub.graphql.types.assertion.AssertionType(client); | CODE |
| CRITICAL | …datahub/graphql/types/assertion/AssertionTypeTest.java | 151 | new com.linkedin.datahub.graphql.types.assertion.AssertionType(mockClient); | CODE |
| CRITICAL | …atahub/graphql/types/knowledge/DocumentMapperTest.java | 868 | com.google.common.collect.ImmutableList.of( | CODE |
| CRITICAL | …in/datahub/graphql/types/view/DataHubViewTypeTest.java | 180 | new com.linkedin.datahub.graphql.types.view.DataHubViewType(client); | CODE |
| CRITICAL | …in/datahub/graphql/types/view/DataHubViewTypeTest.java | 249 | new com.linkedin.datahub.graphql.types.view.DataHubViewType(client); | CODE |
| CRITICAL | …in/datahub/graphql/types/view/DataHubViewTypeTest.java | 289 | new com.linkedin.datahub.graphql.types.view.DataHubViewType(mockClient); | CODE |
| CRITICAL | …in/datahub/graphql/types/view/DataHubViewTypeTest.java | 336 | new com.linkedin.datahub.graphql.types.view.DataHubViewType(client); | CODE |
| CRITICAL | …in/datahub/graphql/types/view/DataHubViewTypeTest.java | 381 | new com.linkedin.datahub.graphql.types.view.DataHubViewType(client); | CODE |
| CRITICAL | …in/datahub/graphql/types/view/DataHubViewTypeTest.java | 448 | new com.linkedin.datahub.graphql.types.view.DataHubViewType(client); | CODE |
| CRITICAL⚡ | …datahub/graphql/types/incident/IncidentMapperTest.java | 120 | com.linkedin.datahub.graphql.generated.IncidentType.FIELD.toString()); | CODE |
| CRITICAL⚡ | …datahub/graphql/types/incident/IncidentMapperTest.java | 127 | com.linkedin.datahub.graphql.generated.IncidentSourceType.ASSERTION_FAILURE.toString()); | CODE |
| CRITICAL⚡ | …datahub/graphql/types/incident/IncidentMapperTest.java | 131 | com.linkedin.datahub.graphql.generated.IncidentState.ACTIVE.toString()); | CODE |
| CRITICAL⚡ | …datahub/graphql/types/incident/IncidentMapperTest.java | 134 | com.linkedin.datahub.graphql.generated.IncidentState.ACTIVE.toString()); | CODE |
| CRITICAL⚡ | …datahub/graphql/types/incident/IncidentMapperTest.java | 137 | com.linkedin.datahub.graphql.generated.IncidentStage.INVESTIGATION.toString()); | CODE |
| CRITICAL | …n/datahub/graphql/types/incident/IncidentTypeTest.java | 108 | new com.linkedin.datahub.graphql.types.incident.IncidentType(client); | CODE |
| CRITICAL | …n/datahub/graphql/types/incident/IncidentTypeTest.java | 167 | new com.linkedin.datahub.graphql.types.incident.IncidentType(mockClient); | CODE |
| CRITICAL | …b/graphql/types/mappers/UnsafeEnumValueOfLintTest.java | 54 | "com.linkedin.datahub.graphql.generated.DataHubConnectionDetailsType.valueOf( gmsDetails.getType().toS | CODE |
| CRITICAL | …b/graphql/types/mappers/UnsafeEnumValueOfLintTest.java | 288 | "com.linkedin.datahub.graphql.generated.OriginType.valueOf( groupOrigin.getType().toString())"), | CODE |
| 414 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …cker/snippets/ingestion/build_bundled_venvs_unified.py | 71 | except Exception: | CODE |
| LOW | …cker/snippets/ingestion/build_bundled_venvs_unified.py | 287 | except Exception as e: | CODE |
| LOW | perf-test/authz-perf/run.py | 456 | except Exception as exc: | CODE |
| LOW | perf-test/authz-perf/executor.py | 268 | except Exception as exc: | CODE |
| LOW | perf-test/authz-perf/lib/credentials.py | 76 | except Exception: | CODE |
| LOW | datahub-agent-context/examples/langchain/basic_agent.py | 239 | except Exception as e: | CODE |
| LOW | …tahub-agent-context/examples/google_adk/basic_agent.py | 238 | except Exception as e: | CODE |
| LOW | …ontext/src/datahub_agent_context/_registration_core.py | 216 | except Exception as exc: | CODE |
| LOW | …ontext/src/datahub_agent_context/_registration_core.py | 298 | except Exception as exc: | CODE |
| LOW | …ontext/src/datahub_agent_context/_registration_core.py | 377 | except Exception as exc: | CODE |
| LOW | …hub_agent_context/google_adk_registration/decorator.py | 35 | except Exception: | CODE |
| LOW | …hub_agent_context/google_adk_registration/decorator.py | 54 | except Exception: | CODE |
| LOW | …hub_agent_context/google_adk_registration/decorator.py | 60 | except Exception: | CODE |
| LOW | …atahub_agent_context/google_adk_registration/plugin.py | 66 | except Exception: | CODE |
| LOW | …atahub_agent_context/google_adk_registration/plugin.py | 89 | except Exception: | CODE |
| LOW | …atahub_agent_context/google_adk_registration/plugin.py | 175 | except Exception as exc: | CODE |
| LOW | …atahub_agent_context/google_adk_registration/plugin.py | 193 | except Exception as exc: | CODE |
| LOW | …atahub_agent_context/google_adk_registration/plugin.py | 198 | except Exception as exc: | CODE |
| LOW⚡ | …ntext/src/datahub_agent_context/snowflake/snowflake.py | 286 | except Exception as e: | CODE |
| LOW⚡ | …ntext/src/datahub_agent_context/snowflake/snowflake.py | 295 | except Exception as e: | CODE |
| LOW | …ntext/src/datahub_agent_context/snowflake/snowflake.py | 659 | except Exception as e: | CODE |
| LOW | …hub_agent_context/snowflake/udfs/add_glossary_terms.py | 44 | except Exception as e: | CODE |
| LOW | …agent_context/snowflake/udfs/get_dataset_assertions.py | 56 | except Exception as e: | CODE |
| LOW | …_agent_context/snowflake/udfs/remove_glossary_terms.py | 40 | except Exception as e: | CODE |
| LOW | …c/datahub_agent_context/snowflake/udfs/get_entities.py | 34 | except Exception as e: | CODE |
| LOW | …t/src/datahub_agent_context/snowflake/udfs/add_tags.py | 44 | except Exception as e: | CODE |
| LOW | …context/snowflake/udfs/remove_structured_properties.py | 40 | except Exception as e: | CODE |
| LOW | …rc/datahub_agent_context/snowflake/udfs/remove_tags.py | 40 | except Exception as e: | CODE |
| LOW | …nt_context/snowflake/udfs/get_lineage_paths_between.py | 49 | except Exception as e: | CODE |
| LOW | …rc/datahub_agent_context/snowflake/udfs/get_lineage.py | 41 | except Exception as e: | CODE |
| LOW | …nt_context/snowflake/udfs/add_structured_properties.py | 41 | except Exception as e: | CODE |
| LOW | …datahub_agent_context/snowflake/udfs/search_datahub.py | 56 | except Exception as e: | CODE |
| LOW | …hub_agent_context/snowflake/udfs/update_description.py | 42 | except Exception as e: | CODE |
| LOW | …tahub_agent_context/snowflake/udfs/get_datahub_chat.py | 41 | except Exception as e: | CODE |
| LOW | …tahub_agent_context/snowflake/udfs/ask_datahub_chat.py | 38 | except Exception as e: | CODE |
| LOW | …rc/datahub_agent_context/snowflake/udfs/set_domains.py | 39 | except Exception as e: | CODE |
| LOW | …src/datahub_agent_context/snowflake/udfs/add_owners.py | 42 | except Exception as e: | CODE |
| LOW | …datahub_agent_context/snowflake/udfs/remove_domains.py | 32 | except Exception as e: | CODE |
| LOW | …/datahub_agent_context/snowflake/udfs/remove_owners.py | 39 | except Exception as e: | CODE |
| LOW | …ub_agent_context/snowflake/udfs/get_dataset_queries.py | 49 | except Exception as e: | CODE |
| LOW | …datahub_agent_context/snowflake/udfs/grep_documents.py | 50 | except Exception as e: | CODE |
| LOW | …tahub_agent_context/snowflake/udfs/search_documents.py | 50 | except Exception as e: | CODE |
| LOW | …hub_agent_context/snowflake/udfs/list_schema_fields.py | 62 | except Exception as e: | CODE |
| LOW | …ext/src/datahub_agent_context/snowflake/udfs/get_me.py | 38 | except Exception as e: | CODE |
| LOW | …atahub_agent_context/langchain_registration/handler.py | 34 | except Exception: | CODE |
| LOW | …atahub_agent_context/langchain_registration/handler.py | 37 | except Exception: | CODE |
| LOW | …atahub_agent_context/langchain_registration/handler.py | 126 | except Exception as exc: | CODE |
| LOW | …ahub_agent_context/langchain_registration/decorator.py | 43 | except Exception: | CODE |
| LOW | …ahub_agent_context/langchain_registration/decorator.py | 60 | except Exception: | CODE |
| LOW | …ahub_agent_context/langchain_registration/decorator.py | 67 | except Exception: | CODE |
| LOW | …t-context/src/datahub_agent_context/mcp_tools/terms.py | 67 | except Exception as e: | STRING |
| LOW | …t-context/src/datahub_agent_context/mcp_tools/terms.py | 156 | except Exception as e: | STRING |
| LOW | …nt-context/src/datahub_agent_context/mcp_tools/tags.py | 68 | except Exception as e: | STRING |
| LOW | …nt-context/src/datahub_agent_context/mcp_tools/tags.py | 157 | except Exception as e: | STRING |
| LOW | …ext/src/datahub_agent_context/mcp_tools/ask_datahub.py | 180 | except Exception as e: | CODE |
| LOW | …ext/src/datahub_agent_context/mcp_tools/ask_datahub.py | 309 | except Exception as e: | CODE |
| LOW | …tahub_agent_context/mcp_tools/structured_properties.py | 77 | except Exception as e: | STRING |
| LOW | …tahub_agent_context/mcp_tools/structured_properties.py | 143 | except Exception as e: | STRING |
| LOW | …tahub_agent_context/mcp_tools/structured_properties.py | 320 | except Exception as e: | STRING |
| LOW | …tahub_agent_context/mcp_tools/structured_properties.py | 432 | except Exception as e: | STRING |
| 1942 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | docker/quickstart/docker-compose.quickstart-profile.yml | 1 | # This file is generated as part of build process. If any build changes cause this file to be modified, please check in | COMMENT |
| MEDIUM | docker/quickstart/quickstart_version_mapping.yaml | 1 | # This file is used by the CLI to map quickstart version "labels" to docker tags and git refs. | COMMENT |
| MEDIUM | …ent-context/tests/unit/mcp_tools/test_save_document.py | 286 | # Create a mock document that is NOT in the agent hierarchy | COMMENT |
| MEDIUM | …t/src/datahub_agent_context/mcp_tools/save_document.py | 279 | # Create the document | COMMENT |
| MEDIUM | …t/src/datahub_agent_context/mcp_tools/save_document.py | 576 | # Create the document | COMMENT |
| MEDIUM | …ceberg-catalog/src/integrationTest/integration_test.py | 59 | # Create a Spark session | STRING |
| MEDIUM | …gin/source/acryl/test_datahub_cloud_events_consumer.py | 204 | dummy_response = Response() # Create a dummy Response object | CODE |
| MEDIUM | …plugin/source/acryl/test_datahub_cloud_event_source.py | 422 | # Create a realistic MCL event based on the documented format | COMMENT |
| MEDIUM | …plugin/source/acryl/test_datahub_cloud_event_source.py | 508 | # Create a realistic MCL event based on documented format | COMMENT |
| MEDIUM | …yl/test_datahub_cloud_events_consumer_offsets_store.py | 116 | # Create a mock PlatformResourceInfoClass that includes our serialized state | COMMENT |
| MEDIUM | datahub-actions/tests/unit/utils/test_kafka_msk_iam.py | 23 | # Create a minimal fake module matching the direct import path | COMMENT |
| MEDIUM | …in/action/metadata_change_sync/metadata_change_sync.py | 171 | # Create an emitter to DataHub over REST | COMMENT |
| MEDIUM | smoke-test/test_system_info.py | 288 | # Create a limited-privilege user (no special privileges by default) | COMMENT |
| MEDIUM⚡ | smoke-test/test_authentication_e2e.py | 355 | # Create a limited-privilege user for testing | COMMENT |
| MEDIUM | smoke-test/test_e2e.py | 1122 | # Creating the same user again fails | COMMENT |
| MEDIUM⚡ | …e-test/tests/service_accounts/test_service_accounts.py | 590 | # Create a service account with a unique display name | COMMENT |
| MEDIUM⚡ | …e-test/tests/service_accounts/test_service_accounts.py | 593 | # Create the service account | COMMENT |
| MEDIUM | …oke-test/tests/cli/dataset_cmd/test_dataset_command.py | 98 | # Create a dataset YAML file | COMMENT |
| MEDIUM | …oke-test/tests/cli/dataset_cmd/test_dataset_command.py | 152 | # Create a minimal dataset YAML as a starting point | COMMENT |
| MEDIUM⚡ | smoke-test/tests/openapi/v1/test_tracking.py | 57 | # Create a test event with a unique identifier | COMMENT |
| MEDIUM | smoke-test/tests/openapi/v1/test_tracking.py | 236 | # Create a Kafka consumer for DUE events BEFORE sending the event | COMMENT |
| MEDIUM⚡ | smoke-test/tests/openapi/v1/test_tracking.py | 372 | # Create a test event with a unique identifier | COMMENT |
| MEDIUM⚡ | smoke-test/tests/openapi/v1/test_tracking.py | 377 | # Create a test event that mimics a real PageViewEvent | COMMENT |
| MEDIUM | smoke-test/tests/openapi/v1/test_tracking.py | 422 | # Create a query to find our test event by the unique browserId and customField | COMMENT |
| MEDIUM | smoke-test/tests/privileges/test_privileges.py | 65 | # Create a new user | COMMENT |
| MEDIUM | smoke-test/tests/privileges/test_privileges.py | 225 | # Create a secret | COMMENT |
| MEDIUM | smoke-test/tests/privileges/test_privileges.py | 389 | # Create a access token | COMMENT |
| MEDIUM | smoke-test/tests/privileges/test_privileges.py | 501 | # Create a policy | COMMENT |
| MEDIUM | smoke-test/tests/privileges/test_privileges.py | 590 | # Create a secret | COMMENT |
| MEDIUM | smoke-test/tests/privileges/utils.py | 292 | # Create a new user using the invite token | COMMENT |
| MEDIUM | …ts/structured_properties/test_structured_properties.py | 635 | # Create a test structured property | COMMENT |
| MEDIUM | smoke-test/tests/patch/test_datajob_patches.py | 172 | # Create the data job | COMMENT |
| MEDIUM | …st/tests/knowledge/test_document_hierarchy_settings.py | 394 | # Create a document | STRING |
| MEDIUM | …e-test/tests/knowledge/document_change_history_test.py | 40 | # Create a document | COMMENT |
| MEDIUM | …e-test/tests/knowledge/document_change_history_test.py | 158 | # Create a document | COMMENT |
| MEDIUM | …e-test/tests/knowledge/document_change_history_test.py | 228 | # Create a document | COMMENT |
| MEDIUM | smoke-test/tests/lineage/test_lineage.py | 831 | # Create an emitter to the GMS REST API. | COMMENT |
| MEDIUM⚡ | smoke-test/tests/semantic/test_event_mode_fallback.py | 541 | # Create a new document to trigger an event | COMMENT |
| MEDIUM | …test/tests/managed_ingestion/managed_ingestion_test.py | 577 | # Create a request to execute the ingestion source | COMMENT |
| MEDIUM | …esources/analytics_backfill/generate_glossary_terms.py | 93 | # Create a URL-friendly term ID | COMMENT |
| MEDIUM | …st_resources/actions/datasets_for_cycles_template.yaml | 1 | # This file is used to define a dataset and provide metadata for it | COMMENT |
| MEDIUM | …oke-test/test_resources/actions/datasets_template.yaml | 1 | # This file is used to define a dataset and provide metadata for it | COMMENT |
| MEDIUM⚡ | …irflow-plugin/tests/unit/test_airflow_asset_adapter.py | 57 | # Create a real Asset-named class with uri | COMMENT |
| MEDIUM⚡ | …irflow-plugin/tests/unit/test_airflow_asset_adapter.py | 66 | # Create a real Dataset-named class with uri | COMMENT |
| MEDIUM | …n/java/acryl-spark-lineage/scripts/generate-patches.sh | 58 | # Create a note file indicating this is a DataHub-specific addition | COMMENT |
| MEDIUM | scripts/dev/tests/test_datahub_dev.py | 148 | # Create a stale env file + sentinel for a branch that doesn't exist | COMMENT |
| MEDIUM | .github/workflows/metadata-ingestion.yml | 362 | # Create a fresh venv for this plugin | COMMENT |
| MEDIUM | .github/scripts/dep-analyzer.py | 305 | # Create a fake module context | COMMENT |
| MEDIUM | metadata-ingestion/pyproject.toml | 3 | # This file is generated from setup.py by: | COMMENT |
| MEDIUM | …tadata-ingestion/tests/unit/test_thoughtspot_source.py | 2517 | # Create a visualization with full metadata | COMMENT |
| MEDIUM | …tadata-ingestion/tests/unit/test_thoughtspot_source.py | 2642 | # Create a liveboard with visualizations | COMMENT |
| MEDIUM | …tadata-ingestion/tests/unit/test_thoughtspot_source.py | 4432 | # Create a worksheet/table model | STRING |
| MEDIUM⚡ | metadata-ingestion/tests/unit/test_gc.py | 213 | # Create a report | COMMENT |
| MEDIUM⚡ | metadata-ingestion/tests/unit/test_gc.py | 216 | # Create the test instance | COMMENT |
| MEDIUM⚡ | metadata-ingestion/tests/unit/test_gc.py | 224 | # Create a sample URN | COMMENT |
| MEDIUM | metadata-ingestion/tests/unit/test_gc.py | 200 | # Create a default config | COMMENT |
| MEDIUM | metadata-ingestion/tests/unit/test_gc.py | 620 | # Create a default config | COMMENT |
| MEDIUM | metadata-ingestion/tests/unit/test_gc.py | 631 | # Create a report | COMMENT |
| MEDIUM | metadata-ingestion/tests/unit/test_gc.py | 634 | # Create the test instance | COMMENT |
| MEDIUM | metadata-ingestion/tests/unit/test_gc.py | 754 | # Define a side effect function that simulates the behavior of _process_futures | COMMENT |
| 398 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …ontext/src/datahub_agent_context/_registration_core.py | 33 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ub-agent-context/src/datahub_agent_context/__init__.py | 27 | __all__ = [ | CODE |
| LOW | datahub-agent-context/src/datahub_agent_context/cli.py | 7 | logger = logging.getLogger(__name__) | CODE |
| LOW | …src/datahub_agent_context/google_adk_tools/__init__.py | 11 | __all__ = ["build_google_adk_tools", "build_google_adk_cloud_tools"] | CODE |
| LOW⚡ | …hub_agent_context/google_adk_registration/decorator.py | 13 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | …hub_agent_context/google_adk_registration/decorator.py | 15 | __all__ = ["datahub_tool", "register_google_adk_agent"] | CODE |
| LOW | …ahub_agent_context/google_adk_registration/__init__.py | 11 | __all__ = ["DataHubBeforeModelCallback", "datahub_tool", "register_google_adk_agent"] | CODE |
| LOW | …atahub_agent_context/google_adk_registration/plugin.py | 13 | logger = logging.getLogger(__name__) | CODE |
| LOW | …/src/datahub_agent_context/langchain_tools/__init__.py | 11 | __all__ = ["build_langchain_tools", "build_langchain_cloud_tools"] | CODE |
| LOW | …t/src/datahub_agent_context/snowflake/generate_udfs.py | 71 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ntext/src/datahub_agent_context/snowflake/snowflake.py | 18 | logger = logging.getLogger(__name__) | CODE |
| LOW | …datahub_agent_context/snowflake/generators/__init__.py | 16 | __all__ = [ | CODE |
| LOW | …atahub_agent_context/langchain_registration/handler.py | 20 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ahub_agent_context/langchain_registration/decorator.py | 13 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ahub_agent_context/langchain_registration/decorator.py | 15 | __all__ = ["datahub_tool", "register_langchain_agent"] | CODE |
| LOW | …tahub_agent_context/langchain_registration/__init__.py | 9 | __all__ = ["DataHubCallbackHandler", "datahub_tool", "register_langchain_agent"] | CODE |
| LOW | …rc/datahub_agent_context/mcp_tools/_token_estimator.py | 6 | logger = logging.getLogger(__name__) | CODE |
| LOW | …t-context/src/datahub_agent_context/mcp_tools/terms.py | 9 | logger = logging.getLogger(__name__) | CODE |
| LOW | …nt-context/src/datahub_agent_context/mcp_tools/tags.py | 9 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ext/src/datahub_agent_context/mcp_tools/ask_datahub.py | 17 | logger = logging.getLogger(__name__) | CODE |
| LOW | …tahub_agent_context/mcp_tools/structured_properties.py | 11 | logger = logging.getLogger(__name__) | CODE |
| LOW | …-context/src/datahub_agent_context/mcp_tools/owners.py | 10 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ntext/src/datahub_agent_context/mcp_tools/documents.py | 35 | logger = logging.getLogger(__name__) | CODE |
| LOW | …context/src/datahub_agent_context/mcp_tools/domains.py | 9 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ontext/src/datahub_agent_context/mcp_tools/__init__.py | 31 | __all__ = [ | CODE |
| LOW | …text/src/datahub_agent_context/mcp_tools/assertions.py | 13 | logger = logging.getLogger(__name__) | CODE |
| LOW | …context/src/datahub_agent_context/mcp_tools/queries.py | 18 | logger = logging.getLogger(__name__) | CODE |
| LOW | …-context/src/datahub_agent_context/mcp_tools/search.py | 20 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ontext/src/datahub_agent_context/mcp_tools/entities.py | 17 | logger = logging.getLogger(__name__) | CODE |
| LOW | …context/src/datahub_agent_context/mcp_tools/lineage.py | 28 | logger = logging.getLogger(__name__) | CODE |
| LOW | …context/src/datahub_agent_context/mcp_tools/helpers.py | 16 | logger = logging.getLogger(__name__) | CODE |
| LOW | …nt-context/src/datahub_agent_context/mcp_tools/base.py | 10 | logger = logging.getLogger(__name__) | CODE |
| LOW | …xt/src/datahub_agent_context/mcp_tools/descriptions.py | 9 | logger = logging.getLogger(__name__) | CODE |
| LOW | …-context/src/datahub_agent_context/mcp_tools/get_me.py | 9 | logger = logging.getLogger(__name__) | CODE |
| LOW | …t/src/datahub_agent_context/mcp_tools/save_document.py | 26 | logger = logging.getLogger(__name__) | CODE |
| LOW | datahub-actions/src/datahub_actions/entrypoints.py | 27 | logger = logging.getLogger(__name__) | CODE |
| LOW | …-actions/src/datahub_actions/pipeline/pipeline_util.py | 42 | logger = logging.getLogger(__name__) | CODE |
| LOW | …tahub-actions/src/datahub_actions/pipeline/pipeline.py | 37 | logger = logging.getLogger(__name__) | CODE |
| LOW | …tions/src/datahub_actions/pipeline/pipeline_manager.py | 23 | logger = logging.getLogger(__name__) | CODE |
| LOW | …hub-actions/src/datahub_actions/source/event_source.py | 60 | def set_filters(self, filters: List["Filter"]) -> None: | CODE |
| LOW | …actions/plugin/source/pgqueue/pg_queue_event_source.py | 56 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ahub_actions/plugin/source/kafka/kafka_event_source.py | 52 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ahub_actions/plugin/source/kafka/kafka_event_source.py | 249 | def set_filters(self, filters: List[Filter]) -> None: | CODE |
| LOW | …tions/src/datahub_actions/plugin/source/kafka/utils.py | 5 | logger = logging.getLogger(__name__) | CODE |
| LOW | …s/plugin/source/acryl/datahub_cloud_events_consumer.py | 25 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | …ions/plugin/source/acryl/datahub_cloud_event_source.py | 44 | logger = logging.getLogger(__name__) | CODE |
| LOW | …lugin/source/acryl/datahub_cloud_events_ack_manager.py | 4 | logger = logging.getLogger(__name__) | CODE |
| LOW | …e/acryl/datahub_cloud_events_consumer_offsets_store.py | 18 | logger = logging.getLogger(__name__) | CODE |
| LOW | …tahub_actions/plugin/action/hello_world/hello_world.py | 24 | logger = logging.getLogger(__name__) | CODE |
| LOW | …_actions/plugin/action/term/term_propagation_action.py | 27 | logger = logging.getLogger(__name__) | CODE |
| LOW | …c/datahub_actions/plugin/action/utils/term_resolver.py | 20 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ahub_actions/plugin/action/snowflake/tag_propagator.py | 36 | logger = logging.getLogger(__name__) | CODE |
| LOW | …hub_actions/plugin/action/execution/executor_action.py | 38 | logger = logging.getLogger(__name__) | CODE |
| LOW | …s/plugin/action/propagation/docs/propagation_action.py | 54 | logger = logging.getLogger(__name__) | CODE |
| LOW | …tions/src/datahub_actions/plugin/action/teams/teams.py | 34 | logger = logging.getLogger(__name__) | CODE |
| LOW | …tions/src/datahub_actions/plugin/action/slack/slack.py | 38 | logger = logging.getLogger(__name__) | CODE |
| LOW | …in/action/metadata_change_sync/metadata_change_sync.py | 22 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ub_actions/plugin/action/tag/tag_propagation_action.py | 27 | logger = logging.getLogger(__name__) | CODE |
| LOW | …src/datahub_actions/plugin/filter/event_type_filter.py | 27 | logger = logging.getLogger(__name__) | CODE |
| LOW | …_actions/plugin/transform/filter/filter_transformer.py | 27 | logger = logging.getLogger(__name__) | CODE |
| 913 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …cker/snippets/ingestion/build_bundled_venvs_unified.py | 93 | CODE | |
| LOW | perf-test/authz-perf/run.py | 347 | CODE | |
| LOW | perf-test/authz-perf/executor.py | 233 | CODE | |
| LOW | …gent-context/tests/unit/snowflake/test_udf_coverage.py | 367 | CODE | |
| LOW | …tahub-agent-context/examples/google_adk/basic_agent.py | 115 | CODE | |
| LOW | …atahub_agent_context/google_adk_registration/plugin.py | 166 | CODE | |
| LOW | …ntext/src/datahub_agent_context/snowflake/snowflake.py | 248 | CODE | |
| LOW | …atahub_agent_context/langchain_registration/handler.py | 23 | CODE | |
| LOW | …rc/datahub_agent_context/mcp_tools/_token_estimator.py | 17 | CODE | |
| LOW | …rc/datahub_agent_context/mcp_tools/_token_estimator.py | 35 | CODE | |
| LOW | …ext/src/datahub_agent_context/mcp_tools/ask_datahub.py | 220 | CODE | |
| LOW | …tahub_agent_context/mcp_tools/structured_properties.py | 83 | CODE | |
| LOW | …ntext/src/datahub_agent_context/mcp_tools/documents.py | 515 | CODE | |
| LOW | …text/src/datahub_agent_context/mcp_tools/assertions.py | 219 | CODE | |
| LOW | …ontext/src/datahub_agent_context/mcp_tools/entities.py | 29 | CODE | |
| LOW | …context/src/datahub_agent_context/mcp_tools/lineage.py | 142 | CODE | |
| LOW | …context/src/datahub_agent_context/mcp_tools/lineage.py | 324 | CODE | |
| LOW | …context/src/datahub_agent_context/mcp_tools/helpers.py | 91 | CODE | |
| LOW | …context/src/datahub_agent_context/mcp_tools/helpers.py | 237 | CODE | |
| LOW | …context/src/datahub_agent_context/mcp_tools/helpers.py | 366 | CODE | |
| LOW | …nt-context/src/datahub_agent_context/mcp_tools/base.py | 23 | CODE | |
| LOW | …xt/src/datahub_agent_context/mcp_tools/descriptions.py | 12 | CODE | |
| LOW | …t/src/datahub_agent_context/mcp_tools/save_document.py | 155 | CODE | |
| LOW | …gin/source/acryl/test_datahub_cloud_events_consumer.py | 514 | CODE | |
| LOW | …gin/source/acryl/test_datahub_cloud_events_consumer.py | 606 | CODE | |
| LOW | …ons/tests/unit/observability/test_kafka_lag_monitor.py | 309 | CODE | |
| LOW | …ons/tests/unit/observability/test_kafka_lag_monitor.py | 319 | CODE | |
| LOW | …ahub_actions/plugin/source/kafka/kafka_event_source.py | 384 | CODE | |
| LOW | …ahub_actions/plugin/source/kafka/kafka_event_source.py | 430 | CODE | |
| LOW | …ions/plugin/source/acryl/datahub_cloud_event_source.py | 182 | CODE | |
| LOW | …_actions/plugin/action/term/term_propagation_action.py | 82 | CODE | |
| LOW | …_actions/plugin/action/term/term_propagation_action.py | 128 | CODE | |
| LOW | …hub_actions/plugin/action/execution/executor_action.py | 93 | CODE | |
| LOW | …actions/plugin/action/propagation/propagation_utils.py | 258 | CODE | |
| LOW | …s/plugin/action/propagation/docs/propagation_action.py | 188 | CODE | |
| LOW | …s/plugin/action/propagation/docs/propagation_action.py | 229 | CODE | |
| LOW | …s/plugin/action/propagation/docs/propagation_action.py | 347 | CODE | |
| LOW | …s/plugin/action/propagation/docs/propagation_action.py | 405 | CODE | |
| LOW | …s/plugin/action/propagation/docs/propagation_action.py | 493 | CODE | |
| LOW | …s/plugin/action/propagation/docs/propagation_action.py | 670 | CODE | |
| LOW | …s/plugin/action/propagation/docs/propagation_action.py | 745 | CODE | |
| LOW | …ub_actions/plugin/action/tag/tag_propagation_action.py | 93 | CODE | |
| LOW | …tions/src/datahub_actions/utils/delta_extractor_mcl.py | 37 | CODE | |
| LOW | smoke-test/conftest.py | 346 | CODE | |
| LOW | smoke-test/test_system_info.py | 151 | CODE | |
| LOW | smoke-test/tests/consistency_utils.py | 186 | CODE | |
| LOW | smoke-test/tests/cypress/timestamp_updater.py | 20 | CODE | |
| LOW | smoke-test/tests/cypress/timestamp_updater.py | 34 | CODE | |
| LOW | smoke-test/tests/entity_graph_cache/helpers.py | 310 | CODE | |
| LOW | …ke-test/tests/cli/delete_cmd/test_timeseries_delete.py | 108 | CODE | |
| LOW | …oke-test/tests/cli/dataset_cmd/test_dataset_command.py | 249 | CODE | |
| LOW | smoke-test/tests/zdu/framework/docker_compose.py | 235 | CODE | |
| LOW | smoke-test/tests/zdu/framework/test_cleanup.py | 264 | CODE | |
| LOW | smoke-test/tests/zdu/framework/log_monitor.py | 178 | CODE | |
| LOW | smoke-test/tests/zdu/framework/log_monitor.py | 282 | CODE | |
| LOW | …oke-test/tests/zdu/framework/phases/rolling_restart.py | 208 | CODE | |
| LOW | …oke-test/tests/zdu/framework/phases/rolling_restart.py | 239 | CODE | |
| LOW | …ke-test/tests/zdu/framework/phases/upgrade_blocking.py | 161 | CODE | |
| LOW | …e-test/tests/zdu/framework/phases/kill_switch_sweep.py | 329 | CODE | |
| LOW | smoke-test/tests/zdu/framework/phases/cleanup.py | 188 | CODE | |
| 1081 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …ntext/src/datahub_agent_context/snowflake/snowflake.py | 22 | Extract domain from DataHub URL for network rules. Args: datahub_url: DataHub instance URL (e.g., https://e | STRING |
| HIGH | …ntext/src/datahub_agent_context/snowflake/snowflake.py | 311 | Auto-detect Snowflake connection parameters from an active connection. Args: connection: Active Snowflake c | STRING |
| HIGH | …hub_agent_context/snowflake/udfs/add_glossary_terms.py | 7 | Generate ADD_GLOSSARY_TERMS UDF using datahub-agent-context. This UDF wraps datahub_agent_context.mcp_tools.add_glo | STRING |
| HIGH | …agent_context/snowflake/udfs/get_dataset_assertions.py | 7 | Generate GET_DATASET_ASSERTIONS UDF using datahub-agent-context. This UDF wraps datahub_agent_context.mcp_tools.get | STRING |
| HIGH | …t/src/datahub_agent_context/snowflake/udfs/add_tags.py | 7 | Generate ADD_TAGS UDF using datahub-agent-context. This UDF wraps datahub_agent_context.mcp_tools.add_tags() to add | STRING |
| HIGH | …nt_context/snowflake/udfs/get_lineage_paths_between.py | 7 | Generate GET_LINEAGE_PATHS_BETWEEN UDF using datahub-agent-context. This UDF wraps datahub_agent_context.mcp_tools. | STRING |
| HIGH | …datahub_agent_context/snowflake/udfs/search_datahub.py | 7 | Generate SEARCH_DATAHUB UDF using datahub-agent-context. This UDF wraps datahub_agent_context.mcp_tools.search() to | STRING |
| HIGH | …hub_agent_context/snowflake/udfs/update_description.py | 7 | Generate UPDATE_DESCRIPTION UDF using datahub-agent-context. This UDF wraps datahub_agent_context.mcp_tools.update_ | STRING |
| HIGH | …tahub_agent_context/snowflake/udfs/get_datahub_chat.py | 7 | Generate GET_DATAHUB_CHAT UDF using datahub-agent-context. This UDF wraps datahub_agent_context.mcp_tools.get_datah | STRING |
| HIGH | …tahub_agent_context/snowflake/udfs/ask_datahub_chat.py | 7 | Generate ASK_DATAHUB_CHAT UDF using datahub-agent-context. This UDF wraps datahub_agent_context.mcp_tools.ask_datah | STRING |
| HIGH | …ub_agent_context/snowflake/udfs/get_dataset_queries.py | 7 | Generate GET_DATASET_QUERIES UDF using datahub-agent-context. This UDF wraps datahub_agent_context.mcp_tools.get_da | STRING |
| HIGH | …ntext/src/datahub_agent_context/snowflake/udfs/base.py | 12 | Generate the SQL CREATE FUNCTION statement for a Python UDF. Args: function_name: Name of the UDF to c | STRING |
| HIGH | …datahub_agent_context/snowflake/udfs/grep_documents.py | 7 | Generate GREP_DOCUMENTS UDF using datahub-agent-context. This UDF wraps datahub_agent_context.mcp_tools.grep_docume | STRING |
| HIGH | …tahub_agent_context/snowflake/udfs/search_documents.py | 7 | Generate SEARCH_DOCUMENTS UDF using datahub-agent-context. This UDF wraps datahub_agent_context.mcp_tools.search_do | STRING |
| HIGH | …hub_agent_context/snowflake/udfs/list_schema_fields.py | 7 | Generate LIST_SCHEMA_FIELDS UDF using datahub-agent-context. This UDF wraps datahub_agent_context.mcp_tools.list_sc | STRING |
| HIGH | …t-context/src/datahub_agent_context/mcp_tools/terms.py | 167 | Add one or more glossary terms (terms) to multiple DataHub entities or their columns (e.g., schema fields). This to | STRING |
| HIGH | …t-context/src/datahub_agent_context/mcp_tools/terms.py | 235 | Remove one or more glossary terms (terms) from multiple DataHub entities or their column_paths (e.g., schema fields). | STRING |
| HIGH | …nt-context/src/datahub_agent_context/mcp_tools/tags.py | 168 | Add one or more tags to multiple DataHub entities or their columns (e.g., schema fields). This tool allows you to t | STRING |
| HIGH | …nt-context/src/datahub_agent_context/mcp_tools/tags.py | 236 | Remove one or more tags from multiple DataHub entities or their column_paths (e.g., schema fields). This tool allow | STRING |
| HIGH | …ext/src/datahub_agent_context/mcp_tools/ask_datahub.py | 138 | Ask DataHub a question about your data catalog. Sends a question to the DataHub AI assistant, which can search the | STRING |
| HIGH | …tahub_agent_context/mcp_tools/structured_properties.py | 86 | Validate and convert a property value to the appropriate GraphQL format. Supports 5 data types: - datahub. | STRING |
| HIGH | …-context/src/datahub_agent_context/mcp_tools/owners.py | 205 | Add one or more owners to multiple DataHub entities. This tool allows you to assign multiple entities with multiple | STRING |
| HIGH | …-context/src/datahub_agent_context/mcp_tools/owners.py | 276 | Remove one or more owners from multiple DataHub entities. This tool allows you to unassign multiple entities from m | STRING |
| HIGH | …ntext/src/datahub_agent_context/mcp_tools/documents.py | 327 | Search for documents stored in the customer's DataHub deployment. These are the organization's own documents (runbo | STRING |
| HIGH | …ntext/src/datahub_agent_context/mcp_tools/documents.py | 522 | Search within document content using regex patterns. Similar to ripgrep/grep - finds matching excerpts within docum | STRING |
| HIGH | …context/src/datahub_agent_context/mcp_tools/domains.py | 66 | Set domain for multiple DataHub entities. This tool allows you to assign a domain to multiple entities in a single | STRING |
| HIGH | …context/src/datahub_agent_context/mcp_tools/domains.py | 166 | Remove domain assignment from multiple DataHub entities. This tool allows you to unset the domain for multiple enti | STRING |
| HIGH | …context/src/datahub_agent_context/mcp_tools/queries.py | 52 | Get SQL queries associated with a dataset or column to understand usage patterns. This tool retrieves actual SQL qu | STRING |
| HIGH | …-context/src/datahub_agent_context/mcp_tools/search.py | 39 | Search across DataHub entities using structured full-text search. Results are ordered by relevance and importance - | STRING |
| HIGH | …ontext/src/datahub_agent_context/mcp_tools/entities.py | 133 | List schema fields for a dataset, with optional keyword filtering and pagination. Useful when schema fields were tr | STRING |
| HIGH | …context/src/datahub_agent_context/mcp_tools/lineage.py | 55 | Get filter for lineage degree (hops). Args: max_hops: Maximum number of hops to search for lineage | STRING |
| HIGH | …context/src/datahub_agent_context/mcp_tools/lineage.py | 152 | Get upstream or downstream lineage for any entity. Set upstream to True for upstream lineage, False for downstream | STRING |
| HIGH | …context/src/datahub_agent_context/mcp_tools/lineage.py | 369 | Internal helper to find upstream lineage path. Always queries upstream lineage (more bounded than downstream). | STRING |
| HIGH | …context/src/datahub_agent_context/mcp_tools/lineage.py | 505 | Internal helper to find lineage path in a specific direction. Always queries upstream internally (more efficient), | STRING |
| HIGH | …context/src/datahub_agent_context/mcp_tools/lineage.py | 574 | Get detailed lineage path(s) between two specific entities or columns. Returns the paths array from searchAcrossLin | STRING |
| HIGH | …context/src/datahub_agent_context/mcp_tools/helpers.py | 139 | Convert a dataset URN to a schema field URN if column is provided. Args: urn: Dataset URN column: O | STRING |
| HIGH | …xt/src/datahub_agent_context/mcp_tools/descriptions.py | 141 | Update description for a DataHub entity or its column (e.g., schema field). This tool allows you to set, append to, | STRING |
| HIGH | datahub-actions/src/datahub_actions/cli/actions.py | 56 | Load a config file as raw YAML/JSON without variable expansion. Args: config_file: Path to the configu | STRING |
| HIGH | …n/src/datahub_airflow_plugin/_airflow_asset_adapter.py | 73 | Convert Airflow Asset URI to DataHub dataset URN. Args: asset: An Airflow Asset or Dataset object with a 'u | STRING |
| HIGH | metadata-ingestion/src/datahub/configuration/kafka.py | 26 | Resolve OAuth callback string paths to callable functions. This helper resolves the oauth_cb configuration par | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/datajob.py | 64 | Adds an input data job to the DataJobPatchBuilder. Args: input: The input data job, which | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/datajob.py | 120 | Sets the input data jobs for the DataJobPatchBuilder. Args: inputs: A list of Edge objects | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/datajob.py | 145 | Adds an input dataset to the DataJobPatchBuilder. Args: input: The input dataset, which ca | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/datajob.py | 201 | Sets the input datasets for the DataJobPatchBuilder. Args: inputs: A list of Edge objects | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/datajob.py | 228 | Adds an output dataset to the DataJobPatchBuilder. Args: output: The output dataset, which | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/datajob.py | 284 | Sets the output datasets for the DataJobPatchBuilder. Args: outputs: A list of Edge object | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/datajob.py | 309 | Adds an input dataset field to the DataJobPatchBuilder. Args: input: The input dataset fie | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/datajob.py | 354 | Sets the input dataset fields for the DataJobPatchBuilder. Args: inputs: A list of Edge ob | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/datajob.py | 381 | Adds an output dataset field to the DataJobPatchBuilder. Args: output: The output dataset | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/datajob.py | 426 | Sets the output dataset fields for the DataJobPatchBuilder. Args: outputs: A list of Edge | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/chart.py | 52 | Adds an input to the ChartPatchBuilder. Args: input: The input, which can be an Edge objec | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/chart.py | 105 | Sets the input edges for the ChartPatchBuilder. Args: inputs: A list of Edge objects repre | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/dashboard.py | 53 | Adds an dataset to the DashboardPatchBuilder. Args: dataset: The dataset, which can be an | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/dashboard.py | 111 | Sets the dataset edges for the DashboardPatchBuilder. Args: datasets: A list of Edge objec | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/dashboard.py | 136 | Adds a chart edge to the DashboardPatchBuilder. Args: chart: The dataset, which can be an | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/dashboard.py | 194 | Sets the chart edges for the DashboardPatchBuilder. Args: charts: A list of Edge objects r | STRING |
| HIGH | metadata-ingestion/src/datahub/specific/dashboard.py | 279 | Adds an dashboard to the DashboardPatchBuilder. Args: dashboard: The dashboard, which can | STRING |
| HIGH | …-ingestion/src/datahub/ingestion/recording/db_proxy.py | 389 | Look up a recorded query result using multi-level matching. Matching strategy (in order of preference): | STRING |
| HIGH | …-ingestion/src/datahub/ingestion/recording/db_proxy.py | 433 | Find a recording using fuzzy string matching. This is a fallback for when exact and normalized matching fail. | STRING |
| HIGH | …datahub/ingestion/source/fivetran/fivetran_rest_api.py | 97 | Get details for a specific connection from the Fivetran API. Args: connection_id: The Five | STRING |
| 108 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …phql/resolvers/assertion/EntityAssertionsResolver.java | 58 | // Step 1: Fetch set of assertions associated with the target entity from the Graph | COMMENT |
| LOW⚡ | …phql/resolvers/assertion/EntityAssertionsResolver.java | 74 | // Step 2: Hydrate the assertion entities based on the urns from step 1 | COMMENT |
| LOW⚡ | …phql/resolvers/assertion/EntityAssertionsResolver.java | 82 | // Step 3: Map GMS assertion model to GraphQL model, preserving graph-store order. | COMMENT |
| LOW | …phql/resolvers/assertion/EntityAssertionsResolver.java | 97 | // Step 4: Package and return result | COMMENT |
| LOW | …hql/resolvers/assertion/AssertionRunEventResolver.java | 62 | // Step 1: Fetch aspects from GMS | COMMENT |
| LOW⚡ | …hql/resolvers/assertion/AssertionRunEventResolver.java | 77 | // Step 2: Bind profiles into GraphQL strong types. | COMMENT |
| LOW⚡ | …hql/resolvers/assertion/AssertionRunEventResolver.java | 83 | // Step 3: Package and return response. | COMMENT |
| LOW⚡ | …aphql/resolvers/knowledge/SearchDocumentsResolver.java | 111 | // Step 1: Search using service to get URNs | COMMENT |
| LOW⚡ | …aphql/resolvers/knowledge/SearchDocumentsResolver.java | 121 | // Step 2: Extract URNs from search results | COMMENT |
| LOW⚡ | …aphql/resolvers/knowledge/SearchDocumentsResolver.java | 127 | // Step 3: Batch hydrate/resolve the Document entities | COMMENT |
| LOW⚡ | …aphql/resolvers/knowledge/SearchDocumentsResolver.java | 135 | // Step 4: Map entities in the same order as search results | COMMENT |
| LOW⚡ | …aphql/resolvers/knowledge/SearchDocumentsResolver.java | 141 | // Step 5: Convert to GraphQL Document objects | COMMENT |
| LOW⚡ | …aphql/resolvers/knowledge/SearchDocumentsResolver.java | 148 | // Step 6: Build the result | COMMENT |
| LOW | …phql/resolvers/knowledge/RelatedDocumentsResolver.java | 103 | // Step 1: Search using service to get URNs | COMMENT |
| LOW⚡ | …phql/resolvers/knowledge/RelatedDocumentsResolver.java | 121 | // Step 2: Extract URNs from search results | COMMENT |
| LOW⚡ | …phql/resolvers/knowledge/RelatedDocumentsResolver.java | 127 | // Step 3: Batch hydrate/resolve the Document entities | COMMENT |
| LOW⚡ | …phql/resolvers/knowledge/RelatedDocumentsResolver.java | 135 | // Step 4: Map entities in the same order as search results | COMMENT |
| LOW⚡ | …phql/resolvers/knowledge/RelatedDocumentsResolver.java | 141 | // Step 5: Convert to GraphQL Document objects | COMMENT |
| LOW⚡ | …phql/resolvers/knowledge/RelatedDocumentsResolver.java | 148 | // Step 6: Build the result | COMMENT |
| LOW | …raphql/resolvers/incident/EntityIncidentsResolver.java | 68 | // Step 1: Fetch set of incidents associated with the target entity from the Search | COMMENT |
| LOW⚡ | …raphql/resolvers/incident/EntityIncidentsResolver.java | 89 | // Step 2: Hydrate the incident entities | COMMENT |
| LOW⚡ | …raphql/resolvers/incident/EntityIncidentsResolver.java | 97 | // Step 3: Map GMS incident model to GraphQL model | COMMENT |
| LOW | …raphql/resolvers/incident/EntityIncidentsResolver.java | 108 | // Step 4: Package and return result | COMMENT |
| LOW | …ahub/graphql/resolvers/jobs/ExecutionRunsResolver.java | 64 | // Step 1: Fetch set of task runs associated with the target entity from the Search | COMMENT |
| LOW⚡ | …ahub/graphql/resolvers/jobs/ExecutionRunsResolver.java | 82 | // Step 2: Hydrate the incident entities | COMMENT |
| LOW⚡ | …ahub/graphql/resolvers/jobs/ExecutionRunsResolver.java | 90 | // Step 3: Map GMS incident model to GraphQL model | COMMENT |
| LOW | …ahub/graphql/resolvers/jobs/ExecutionRunsResolver.java | 101 | // Step 4: Package and return result | COMMENT |
| LOW | …datahub/graphql/resolvers/jobs/EntityRunsResolver.java | 68 | // Step 1: Fetch set of task runs associated with the target entity from the Search | COMMENT |
| LOW⚡ | …datahub/graphql/resolvers/jobs/EntityRunsResolver.java | 86 | // Step 2: Hydrate the incident entities | COMMENT |
| LOW⚡ | …datahub/graphql/resolvers/jobs/EntityRunsResolver.java | 94 | // Step 3: Map GMS instance model to GraphQL model | COMMENT |
| LOW | …datahub/graphql/resolvers/jobs/EntityRunsResolver.java | 105 | // Step 4: Package and return result | COMMENT |
| LOW | …resolvers/datacontract/EntityDataContractResolver.java | 48 | // Step 1: Fetch the contract associated with the dataset. | COMMENT |
| LOW⚡ | …resolvers/datacontract/EntityDataContractResolver.java | 77 | // Step 2: Hydrate the contract entities based on the urns from step 1 | COMMENT |
| LOW⚡ | …resolvers/datacontract/EntityDataContractResolver.java | 86 | // Step 4: Package and return result | COMMENT |
| LOW | docker/airflow/docker-compose.yaml | 21 | # WARNING: This configuration is for local development. Do not use it in a production deployment. | COMMENT |
| LOW | docker/airflow/local_airflow.md | 26 | ## Step 1: Set up your Airflow area | COMMENT |
| LOW | docker/airflow/local_airflow.md | 52 | ## Step 2: Bring up Airflow | COMMENT |
| LOW | docker/airflow/local_airflow.md | 119 | ## Step 3: Register DataHub connection (hook) to Airflow | COMMENT |
| LOW | docker/airflow/local_airflow.md | 137 | ## Step 4: Find the DAGs and run it | COMMENT |
| LOW⚡ | …/com/linkedin/metadata/trace/TraceServiceImplTest.java | 528 | // Step 1: Verify that parsing this trace ID produces a far-future epoch | COMMENT |
| LOW⚡ | …/com/linkedin/metadata/trace/TraceServiceImplTest.java | 537 | // Step 2: Verify that the queue time calculation would produce a value that overflows | COMMENT |
| LOW⚡ | …/com/linkedin/metadata/trace/TraceServiceImplTest.java | 543 | // Step 3: Confirm that Duration.ofMillis(queueTimeMs).toNanos() would overflow | COMMENT |
| LOW | …/com/linkedin/metadata/trace/TraceServiceImplTest.java | 555 | // Step 4: Verify the fix — extractTraceIdEpochMillis returns null for this trace ID, | COMMENT |
| LOW⚡ | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1399 | // Step 1: Create initial index with 1 shard | COMMENT |
| LOW⚡ | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1405 | // Step 2: Index some documents | COMMENT |
| LOW⚡ | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1425 | // Step 3: Create builder with different shard count to force requiresReindex, and non-zero | COMMENT |
| LOW⚡ | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1471 | // Step 6: Restore settings | COMMENT |
| LOW⚡ | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1478 | // Step 7: Verify next index has all documents | COMMENT |
| LOW⚡ | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1494 | // Step 8: Verify alias still points to original index (no swap happened) | COMMENT |
| LOW⚡ | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1504 | // Step 9: Verify next index has the new shard count | COMMENT |
| LOW | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1443 | // Step 4: Run incremental reindex (Phase 1) | COMMENT |
| LOW | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1459 | // Step 5: Poll until reindex completes | COMMENT |
| LOW | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1516 | // Step 10: Verify settings were restored (replicas back to target, refresh interval restored) | COMMENT |
| LOW | …n/metadata/search/elasticsearch/query/ESSearchDAO.java | 311 | // Step 1: construct the query | COMMENT |
| LOW | …n/metadata/search/elasticsearch/query/ESSearchDAO.java | 325 | // Step 2: execute the query and extract results, validated against document model as well | COMMENT |
| LOW | …sticsearch/indexbuilder/DestinationIndexOptimizer.java | 107 | // Step 1: Fetch all original settings in a single API call (batch operation) | COMMENT |
| LOW | …sticsearch/indexbuilder/DestinationIndexOptimizer.java | 167 | // Step 2: Apply optimizations in a single atomic API call (batch operation) | COMMENT |
| LOW | …ain/java/com/linkedin/metadata/kafka/CDCProcessor.java | 155 | // Step 1: Parse JSON using Jackson ObjectMapper | COMMENT |
| LOW⚡ | …ain/java/com/linkedin/metadata/kafka/CDCProcessor.java | 178 | // Step 2: Extract "before" and "after" fields as JsonNode objects | COMMENT |
| LOW⚡ | …ain/java/com/linkedin/metadata/kafka/CDCProcessor.java | 182 | // Step 3: Check if we should process this record (only latest versions) | COMMENT |
| 399 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docker/snippets/ingestion/bundled_venv_config.py | 21 | CODE | |
| LOW | perf-test/authz-perf/run.py | 2 | CODE | |
| LOW | perf-test/authz-perf/compare.py | 2 | CODE | |
| LOW | perf-test/authz-perf/executor.py | 1 | CODE | |
| LOW | perf-test/authz-perf/scripts/extract_query_specs.py | 3 | CODE | |
| LOW | perf-test/authz-perf/lib/personas.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/graphql.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/graphql.py | 9 | CODE | |
| LOW | perf-test/authz-perf/lib/targets.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/metadata.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/variants.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/query_spec.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/paths.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/results.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/credentials.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/session.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/system_info.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/graphql_adapt.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/query_build.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/persona_password_seed.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/orchestration.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/persona_credentials.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/gms_config.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/expectations.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/stats.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/datapack.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/init.py | 1 | CODE | |
| LOW | perf-test/authz-perf/lib/output_paths.py | 1 | CODE | |
| LOW | datahub-agent-context/tests/unit/fake_emitter.py | 3 | CODE | |
| LOW | …text/tests/unit/google_adk_registration/test_plugin.py | 1 | CODE | |
| LOW | …text/tests/unit/langchain_registration/test_handler.py | 1 | CODE | |
| LOW | …agent-context/examples/langchain/autoregister_agent.py | 20 | CODE | |
| LOW | …context/examples/google_adk/autoregister_google_adk.py | 17 | CODE | |
| LOW | …ontext/src/datahub_agent_context/_registration_core.py | 18 | CODE | |
| LOW | …ub-agent-context/src/datahub_agent_context/__init__.py | 17 | CODE | |
| LOW | …ub-agent-context/src/datahub_agent_context/__init__.py | 18 | CODE | |
| LOW | …ub-agent-context/src/datahub_agent_context/__init__.py | 18 | CODE | |
| LOW | …ub-agent-context/src/datahub_agent_context/__init__.py | 18 | CODE | |
| LOW | …ub-agent-context/src/datahub_agent_context/__init__.py | 18 | CODE | |
| LOW | …ub-agent-context/src/datahub_agent_context/__init__.py | 18 | CODE | |
| LOW | …ub-agent-context/src/datahub_agent_context/__init__.py | 25 | CODE | |
| LOW | …hub-agent-context/src/datahub_agent_context/context.py | 11 | CODE | |
| LOW | …hub-agent-context/src/datahub_agent_context/context.py | 12 | CODE | |
| LOW | …tahub-agent-context/src/datahub_agent_context/utils.py | 11 | CODE | |
| LOW | …src/datahub_agent_context/google_adk_tools/__init__.py | 6 | CODE | |
| LOW | …src/datahub_agent_context/google_adk_tools/__init__.py | 6 | CODE | |
| LOW | …/src/datahub_agent_context/google_adk_tools/builder.py | 20 | CODE | |
| LOW | …hub_agent_context/google_adk_registration/decorator.py | 1 | CODE | |
| LOW | …hub_agent_context/google_adk_registration/decorator.py | 7 | CODE | |
| LOW | …ahub_agent_context/google_adk_registration/__init__.py | 1 | CODE | |
| LOW | …ahub_agent_context/google_adk_registration/__init__.py | 3 | CODE | |
| LOW | …ahub_agent_context/google_adk_registration/__init__.py | 3 | CODE | |
| LOW | …ahub_agent_context/google_adk_registration/__init__.py | 7 | CODE | |
| LOW | …/src/datahub_agent_context/langchain_tools/__init__.py | 6 | CODE | |
| LOW | …/src/datahub_agent_context/langchain_tools/__init__.py | 6 | CODE | |
| LOW | …t/src/datahub_agent_context/langchain_tools/builder.py | 20 | CODE | |
| LOW | …datahub_agent_context/snowflake/generators/__init__.py | 3 | CODE | |
| LOW | …datahub_agent_context/snowflake/generators/__init__.py | 6 | CODE | |
| LOW | …datahub_agent_context/snowflake/generators/__init__.py | 9 | CODE | |
| LOW | …datahub_agent_context/snowflake/generators/__init__.py | 12 | CODE | |
| 754 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH⚡ | …cker/snippets/ingestion/build_bundled_venvs_unified.py | 122 | base_cmd = f"source {venv_path}/bin/activate && uv pip install --upgrade pip wheel setuptools --constraint {cons | CODE |
| HIGH⚡ | …cker/snippets/ingestion/build_bundled_venvs_unified.py | 131 | install_cmd = f"source {venv_path}/bin/activate && uv pip install {datahub_package} --constraint {constraint | CODE |
| HIGH⚡ | …cker/snippets/ingestion/build_bundled_venvs_unified.py | 135 | f'source {venv_path}/bin/activate && uv pip install "{datahub_package}" ' | CODE |
| HIGH | …agent_context/snowflake/generators/stored_procedure.py | 47 | columns.push(rs.getColumnName(i)); | CODE |
| HIGH | …agent_context/snowflake/generators/stored_procedure.py | 59 | results.push(row); | CODE |
| HIGH | smoke-test/tests/audit_events/audit_events_test.py | 311 | \"account_id\":null, | CODE |
| HIGH | smoke-test/tests/audit_events/audit_events_test.py | 341 | \"account_id\":null, | CODE |
| HIGH | …e-test/tests/service_accounts/test_service_accounts.py | 228 | f"Expected defaultView to be null, got: {default_view}" | CODE |
| HIGH | smoke-test/tests/oauth/test_oauth_cli_gms.py | 7 | "pip install -e /repo/metadata-ingestion && pytest /smoke/test_oauth_cli_gms.py -v" | STRING |
| HIGH | …e-test/tests/library_examples/test_library_examples.py | 12 | Run with: cd smoke-test && source venv/bin/activate && pytest tests/library_examples/ -v | STRING |
| HIGH⚡ | smoke-test/tests/zdu/framework/test_config.py | 20 | Running ``cd smoke-test && python -m tests.zdu`` used to produce a | STRING |
| HIGH | smoke-test/tests/zdu/framework/phases/build_images.py | 11 | configured ref via ``git fetch && git reset --hard <ref>``. This keeps | STRING |
| HIGH | smoke-test/tests/privileges/test_privileges.py | 268 | \"account_id\":null, | CODE |
| HIGH | smoke-test/tests/privileges/test_privileges.py | 308 | \"account_id\":null, | CODE |
| HIGH | …oke-test/tests/authorization/test_aspect_write_auth.py | 91 | batchSetDataProduct(input: { dataProductUrn: null, resourceUrns: $resourceUrns }) | CODE |
| HIGH | …test/tests/managed_ingestion/managed_ingestion_test.py | 486 | "recipe": '{"source":{"type":"mysql","config":{"include_tables":true,"database":null,"password":"${MYSQL | CODE |
| HIGH | …test/tests/managed_ingestion/managed_ingestion_test.py | 529 | == '{"source":{"type":"mysql","config":{"include_tables":true,"database":null,"password":"${MYSQL_PASSWORD}","pr | CODE |
| HIGH | …test/tests/managed_ingestion/managed_ingestion_test.py | 566 | "recipe": '{"source":{"type":"mysql","config":{"include_tables":true,"database":null,"password":"${MYSQL | CODE |
| HIGH | …test/tests/managed_ingestion/managed_ingestion_test.py | 612 | '{"source":{"type":"mysql","config":{"include_tables":true,"database":null,"password":"${MYSQL_PASSWORD}","p | CODE |
| HIGH | python-build/generate_release_scripts.py | 71 | rm -rf build dist || true | CODE |
| HIGH | metadata-ingestion/tests/unit/test_superset_source.py | 1644 | # ``{"result": null}`` is an API contract violation, not an empty | COMMENT |
| HIGH | metadata-ingestion/tests/unit/test_superset_source.py | 2054 | # ``{"result": null}`` would crash callers that do | COMMENT |
| HIGH⚡ | …data-ingestion/tests/unit/test_unity_catalog_source.py | 2271 | " synonyms: ['valid', 123, '', ' ', null, ['nested']]\n" | CODE |
| HIGH⚡ | metadata-ingestion/tests/unit/test_cassandra_source.py | 47 | {"keyspace_name": "playground", "table_name": "people", "column_name": "birthday", "clustering_order": " | STRING |
| HIGH⚡ | metadata-ingestion/tests/unit/test_cassandra_source.py | 48 | {"keyspace_name": "playground", "table_name": "people", "column_name": "email", "clustering_order": "non | STRING |
| HIGH⚡ | metadata-ingestion/tests/unit/test_cassandra_source.py | 49 | {"keyspace_name": "playground", "table_name": "people", "column_name": "name", "clustering_order": "none | STRING |
| HIGH | metadata-ingestion/tests/unit/test_compare_metadata.py | 11 | "auditHeader": null, | STRING |
| HIGH | metadata-ingestion/tests/unit/test_compare_metadata.py | 59 | "auditHeader": null, | STRING |
| HIGH | metadata-ingestion/tests/unit/test_compare_metadata.py | 107 | "auditHeader": null, | STRING |
| HIGH | …ta-ingestion/tests/unit/glue/test_glue_source_stubs.py | 187 | "avro.schema.literal": '{"type":"record","name":"flights_avro_subset","namespace":"default","fields" | CODE |
| HIGH | …ta-ingestion/tests/unit/glue/test_glue_source_stubs.py | 198 | "avro.schema.literal": '{"type":"record","name":"flights_avro_subset","namespace":"default","fields":[{" | CODE |
| HIGH | …ta-ingestion/tests/unit/glue/test_glue_source_stubs.py | 217 | "avro.schema.literal": '{"type":"record","name":"flights_avro_subset","namespace":"default","fields":[{"name | CODE |
| HIGH | …ta-ingestion/tests/unit/glue/test_glue_source_stubs.py | 1135 | "avro.schema.literal": '{"type":"record","name":"flights_avro_subset","namespace":"default","fields" | STRING |
| HIGH | …ta-ingestion/tests/unit/glue/test_glue_source_stubs.py | 1146 | "avro.schema.literal": '{"type":"record","name":"flights_avro_subset","namespace":"default","fields":[{" | STRING |
| HIGH | …ta-ingestion/tests/unit/glue/test_glue_source_stubs.py | 1165 | "avro.schema.literal": '{"type":"record","name":"flights_avro_subset","namespace":"default","fields":[{"name | STRING |
| HIGH | …ta-ingestion/tests/unit/glue/test_glue_source_stubs.py | 1245 | "avro.schema.literal": '{"type":"record","name":"flights_avro_subset","namespace":"default","fields" | STRING |
| HIGH | …ta-ingestion/tests/unit/glue/test_glue_source_stubs.py | 1256 | "avro.schema.literal": '{"type":"record","name":"flights_avro_subset","namespace":"default","fields":[{" | STRING |
| HIGH | …ta-ingestion/tests/unit/glue/test_glue_source_stubs.py | 1273 | "avro.schema.literal": '{"type":"record","name":"flights_avro_subset","namespace":"default","fields":[{"name | STRING |
| HIGH | metadata-ingestion/tests/unit/dbt/test_dbt_source.py | 2257 | """When dbt serializes error_after as {"count": null, "period": null}, | STRING |
| HIGH | …estion/tests/unit/sqlalchemy_profiler/test_adapters.py | 499 | mathematically undefined, so we return None (not 0.0). | STRING |
| HIGH | …estion/tests/unit/sqlalchemy_profiler/test_adapters.py | 1540 | """stddevSamp returns NULL with ≤1 non-null row → None (mathematically undefined).""" | STRING |
| HIGH | …/tests/unit/snowflake/test_snowflake_dynamic_tables.py | 211 | """INPUTS that parses to a non-list value (null, single object) doesn't crash | STRING |
| HIGH⚡ | …tests/unit/utilities/test_sqlalchemy_type_converter.py | 119 | assert schema_fields[0].fieldPath == "[version=2.0].[type=null]" | CODE |
| HIGH⚡ | …tests/unit/utilities/test_sqlalchemy_type_converter.py | 125 | # multiple unrecognised columns collapse to the same "[version=2.0].[type=null]" | COMMENT |
| HIGH | …tests/unit/utilities/test_sqlalchemy_type_converter.py | 141 | assert fields_a[0].fieldPath == "[version=2.0].[type=null].col_a" | CODE |
| HIGH | …tests/unit/utilities/test_sqlalchemy_type_converter.py | 142 | assert fields_b[0].fieldPath == "[version=2.0].[type=null].col_b" | CODE |
| HIGH | …ion/tests/unit/utilities/test_graphql_query_adapter.py | 1303 | cache_path.write_text('{"data": null}') | CODE |
| HIGH⚡ | …ata-ingestion/tests/unit/powerbi/test_user_creation.py | 137 | When displayName is null, we fallback to user_id to avoid null values. | STRING |
| HIGH | …gestion/tests/unit/sql_parsing/test_sqlglot_lineage.py | 1344 | col1 = t1.col1 || t1.col2, | STRING |
| HIGH | …gestion/tests/unit/sql_parsing/test_sqlglot_lineage.py | 1345 | col2 = t1.col1 || t2.col2 | STRING |
| HIGH | …gestion/tests/unit/sql_parsing/test_sqlglot_lineage.py | 1763 | IF (main.id is not null, main, extras).* REPLACE ( | STRING |
| HIGH | …data-ingestion/tests/integration/dremio/test_dremio.py | 58 | command = f'docker exec --user root {container_name} sh -c "apt-get update && apt-get install -y mysql-client && /u | CODE |
| HIGH⚡ | …data-ingestion/tests/integration/looker/test_looker.py | 256 | dynamic_fields='[{"table_calculation":"calc","label":"foobar","expression":"offset(${my_table.va | CODE |
| HIGH⚡ | …data-ingestion/tests/integration/looker/test_looker.py | 402 | dynamic_fields='[{"table_calculation":"calc","label":"foobar","expression":"offset(${my_table.value} | CODE |
| HIGH⚡ | …data-ingestion/tests/integration/looker/test_looker.py | 412 | dynamic_fields='[{"table_calculation":"calc","label":"foobar","expression":"offset(${my_table.value} | CODE |
| HIGH | …data-ingestion/tests/integration/looker/test_looker.py | 314 | dynamic_fields='[{"table_calculation":"calc","label":"foobar","expression":"offset(${my_table.value} | CODE |
| HIGH | …data-ingestion/tests/integration/looker/test_looker.py | 440 | dynamic_fields='[{"table_calculation":"calc","label":"foobar","expression":"offset(${my_table.value} | CODE |
| HIGH | …data-ingestion/tests/integration/looker/test_looker.py | 1499 | dynamic_fields='[{"table_calculation":"calc","label":"foobar","expression":"offset(${my_table.va | CODE |
| HIGH | …data-ingestion/tests/integration/looker/test_looker.py | 1522 | dynamic_fields='[{"table_calculation":"calc","label":"foobar","expression":"offset(${my_table.va | CODE |
| HIGH | …data-ingestion/tests/integration/looker/test_looker.py | 1545 | dynamic_fields='[{"table_calculation":"calc","label":"foobar","expression":"offset(${my_table.va | CODE |
| 78 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .betterleaks.toml | 1 | title = "DataHub betterleaks config" | COMMENT |
| LOW | …va/com/linkedin/metadata/models/EntitySpecBuilder.java | 81 | // Now validate that all relationships point to valid entities. | COMMENT |
| LOW | …n/metadata/models/annotation/SearchableAnnotation.java | 41 | // Whether or not to add field to filters. | COMMENT |
| LOW | …esolvers/logical/UpdateLogicalModelSchemaResolver.java | 81 | COMMENT | |
| LOW | docker/snippets/mssql_odbc.sh | 1 | #!/bin/bash | COMMENT |
| LOW | docker/snippets/oracle_instantclient.sh | 1 | #!/bin/bash | COMMENT |
| LOW | docker/snippets/ingestion/constraints.txt | 1 | cmdstanpy>=1.3.0,<2.0.0 | COMMENT |
| LOW | docker/snippets/ingestion/constraints.txt | 61 | # (unstructured / HTML parsing; bundled venvs such as datahub-documents-bundled.) | COMMENT |
| LOW | docker/snippets/ingestion/bundled_venv_config.py | 1 | # Copyright 2025 Acryl Data, Inc. | COMMENT |
| LOW | docker/snippets/uv/profiles/default.toml | 1 | # Empty file since the default is public PyPi | COMMENT |
| LOW | docker/datahub-mae-consumer/start.sh | 81 | echo "[STARTUP] Generating deterministic classpath from extracted layers" | COMMENT |
| LOW | docker/datahub-actions/readiness-check.sh | 1 | #!/bin/bash | COMMENT |
| LOW | docker/datahub-actions/start.sh | 1 | #!/bin/bash | COMMENT |
| LOW | docker/datahub-actions/config/teams_action.yaml | 1 | # Copyright 2021 Acryl Data, Inc. | COMMENT |
| LOW | docker/datahub-actions/config/executor.yaml | 1 | # Copyright 2021 Acryl Data, Inc. | COMMENT |
| LOW | docker/datahub-actions/config/slack_action.yaml | 1 | # Copyright 2021 Acryl Data, Inc. | COMMENT |
| LOW | …ker/datahub-actions/config/doc_propagation_action.yaml | 1 | # Copyright 2021 Acryl Data, Inc. | COMMENT |
| LOW | docker/quickstart/quickstart_version_mapping.yaml | 1 | # This file is used by the CLI to map quickstart version "labels" to docker tags and git refs. | COMMENT |
| LOW | docker/airflow/docker-compose.yaml | 1 | # Licensed to the Apache Software Foundation (ASF) under one | COMMENT |
| LOW | docker/airflow/docker-compose.yaml | 21 | # WARNING: This configuration is for local development. Do not use it in a production deployment. | COMMENT |
| LOW | docker/profiles/docker-compose.ollama.yml | 61 | # When the debug-ai profile is active, tell GMS to use the local Ollama provider. | COMMENT |
| LOW | docker/profiles/docker-compose.zdu-test-override.yml | 1 | # ZDU test-framework compose override — NOT part of the production stack. | COMMENT |
| LOW | docker/datahub-upgrade/README.md | 101 | DATAHUB_MAE_CONSUMER_HOST=<your-mae-consumer-host> | COMMENT |
| LOW | …/com/linkedin/metadata/trace/TraceServiceImplTest.java | 501 | COMMENT | |
| LOW | …etadata/entity/EbeanEntityServiceOptimizationTest.java | 41 | Counts for ORM optimization calculations | COMMENT |
| LOW | …ch/elasticsearch/client/shim/SearchClientShimTest.java | 141 | assertEquals(copy.getConnectionRequestTimeout(), Integer.valueOf(10000)); | COMMENT |
| LOW | …va/com/linkedin/metadata/entity/EntityServiceImpl.java | 1101 | // Generate default aspects within the transaction (they are re-calculated | COMMENT |
| LOW | …com/linkedin/metadata/entity/ebean/EbeanAspectDao.java | 421 | } | COMMENT |
| LOW | …com/linkedin/metadata/entity/ebean/EbeanAspectDao.java | 621 | @Nonnull final List<EbeanAspectV2.PrimaryKey> keys, | COMMENT |
| LOW | …/search/elasticsearch/indexbuilder/ESIndexBuilder.java | 221 | // fixed... | COMMENT |
| LOW | datahub-agent-context/setup.py | 1 | # Copyright 2025 Acryl Data, Inc. | COMMENT |
| LOW | datahub-agent-context/tests/__init__.py | 1 | # Copyright 2025 Acryl Data, Inc. | COMMENT |
| LOW | datahub-agent-context/tests/unit/__init__.py | 1 | # Copyright 2025 Acryl Data, Inc. | COMMENT |
| LOW | …gent-context/tests/unit/snowflake/test_udf_coverage.py | 241 | COMMENT | |
| LOW | datahub-agent-context/examples/__init__.py | 1 | # Copyright 2025 Acryl Data, Inc. | COMMENT |
| LOW | datahub-agent-context/examples/langchain/__init__.py | 1 | # Copyright 2025 Acryl Data, Inc. | COMMENT |
| LOW | …ub-agent-context/src/datahub_agent_context/_version.py | 1 | # Copyright 2025 Acryl Data, Inc. | COMMENT |
| LOW | …ub-agent-context/src/datahub_agent_context/__init__.py | 1 | # Copyright 2025 Acryl Data, Inc. | COMMENT |
| LOW | …xt/src/datahub_agent_context/mcp_tools/gql/__init__.py | 1 | # Copyright 2021 Acryl Data, Inc. | COMMENT |
| LOW | …nfiguration/src/main/resources/entity-graph-cache.yaml | 1 | # Bundled entity graph cache definitions (merged at startup via entityGraphCache.configFile). | COMMENT |
| LOW | …ce/configuration/src/main/resources/search_config.yaml | 41 | COMMENT | |
| LOW | …onfiguration/src/main/resources/rate-limit-config.yaml | 1 | # Optional rate-limit override (Tier 2) — intentionally empty. | COMMENT |
| LOW | …vice/configuration/src/main/resources/application.yaml | 101 | # default. Baseline comes from entity-registry.yml (`viewUnrestricted: true`). Empty `value` | COMMENT |
| LOW | …vice/configuration/src/main/resources/application.yaml | 121 | # The value of cliVersion is substituted in by the processResources Gradle task. | COMMENT |
| LOW | …vice/configuration/src/main/resources/application.yaml | 721 | mappingConfig: ${ELASTICSEARCH_ENTITY_INDEX_V3_MAPPING_CONFIG:search_entity_mapping_config.yaml} | COMMENT |
| LOW | …vice/configuration/src/main/resources/application.yaml | 1761 | # When true, timing metrics are collected for individual GraphQL field resolvers | COMMENT |
| LOW | …vice/configuration/src/main/resources/application.yaml | 1781 | # Pattern syntax: | COMMENT |
| LOW | …vice/configuration/src/main/resources/application.yaml | 1801 | # Override: GRAPHQL_SHAPE_LOGGING_ENABLED=true | COMMENT |
| LOW | …rc/main/resources/bootstrap_mcps/lifecycle-stages.yaml | 1 | # Example lifecycle stage types for entity governance. | COMMENT |
| LOW | …rc/main/resources/bootstrap_mcps/lifecycle-stages.yaml | 21 | # entityTypes: | COMMENT |
| LOW | …rc/main/resources/bootstrap_mcps/lifecycle-stages.yaml | 41 | # - glossaryTerm | COMMENT |
| LOW | …rc/main/resources/bootstrap_mcps/lifecycle-stages.yaml | 61 | # entityTypes: | COMMENT |
| LOW | …rc/main/resources/bootstrap_mcps/lifecycle-stages.yaml | 81 | # Remains visible in search with a deprecated label so consumers can | COMMENT |
| LOW | …rc/main/resources/bootstrap_mcps/lifecycle-stages.yaml | 101 | # description: >- | COMMENT |
| LOW | …/metadata/config/search/BuildIndicesConfiguration.java | 81 | // Requests per second during NORMAL cluster health tier (default 500) | COMMENT |
| LOW | …/metadata/config/search/BuildIndicesConfiguration.java | 101 | // Environment variable: ELASTICSEARCH_BUILD_INDICES_WRITE_REJECTION_RED_THRESHOLD | COMMENT |
| LOW | …factory/system_telemetry/OpenTelemetryBaseFactory.java | 121 | props.put(propKey, "none"); | COMMENT |
| LOW | …din/metadata/model/validation/ModelValidationTask.java | 41 | "Failed to find Snapshot model with name %s in parsed schemas!", | COMMENT |
| LOW | datahub-actions/setup.py | 1 | # Copyright 2021 Acryl Data, Inc. | COMMENT |
| LOW | datahub-actions/tests/conftest.py | 1 | # Copyright 2021 Acryl Data, Inc. | COMMENT |
| 680 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | smoke-test/test_system_info.py | 0 | mutation createaccesstoken($input: createaccesstokeninput!) { createaccesstoken(input: $input) { accesstoken metadata { | STRING |
| HIGH | smoke-test/test_authentication_e2e.py | 0 | mutation createaccesstoken($input: createaccesstokeninput!) { createaccesstoken(input: $input) { accesstoken metadata { | STRING |
| HIGH | smoke-test/tests/utils.py | 0 | mutation createaccesstoken($input: createaccesstokeninput!) { createaccesstoken(input: $input) { accesstoken metadata { | STRING |
| HIGH | smoke-test/tests/metrics/usage_aggregation_metrics.py | 0 | mutation createaccesstoken($input: createaccesstokeninput!) { createaccesstoken(input: $input) { accesstoken metadata { | STRING |
| HIGH | smoke-test/test_system_info.py | 0 | mutation revokeaccesstoken($tokenid: string!) { revokeaccesstoken(tokenid: $tokenid) } | STRING |
| HIGH | smoke-test/test_authentication_e2e.py | 0 | mutation revokeaccesstoken($tokenid: string!) { revokeaccesstoken(tokenid: $tokenid) } | STRING |
| HIGH | smoke-test/tests/utils.py | 0 | mutation revokeaccesstoken($tokenid: string!) { revokeaccesstoken(tokenid: $tokenid) } | STRING |
| HIGH | smoke-test/tests/audit_events/audit_events_test.py | 0 | mutation revokeaccesstoken($tokenid: string!) { revokeaccesstoken(tokenid: $tokenid) } | STRING |
| HIGH | …e-test/tests/service_accounts/test_service_accounts.py | 0 | mutation revokeaccesstoken($tokenid: string!) { revokeaccesstoken(tokenid: $tokenid) } | STRING |
| HIGH | smoke-test/tests/tokens/token_utils.py | 0 | mutation revokeaccesstoken($tokenid: string!) { revokeaccesstoken(tokenid: $tokenid) } | STRING |
| HIGH | smoke-test/tests/tokens/revokable_access_token_test.py | 0 | mutation revokeaccesstoken($tokenid: string!) { revokeaccesstoken(tokenid: $tokenid) } | STRING |
| HIGH | …ngestion/src/datahub/ingestion/source/gc/datahub_gc.py | 0 | mutation revokeaccesstoken($tokenid: string!) { revokeaccesstoken(tokenid: $tokenid) } | STRING |
| HIGH | smoke-test/CLAUDE.MD | 0 | query getdataset($urn: string!) { dataset(urn: $urn) { urn name } } | STRING |
| HIGH | …ke-test/tests/knowledge/document_search_filter_test.py | 0 | query getdataset($urn: string!) { dataset(urn: $urn) { urn name } } | STRING |
| HIGH | …st/tests/knowledge/test_document_hierarchy_settings.py | 0 | query getdataset($urn: string!) { dataset(urn: $urn) { urn name } } | STRING |
| HIGH | smoke-test/tests/audit_events/audit_events_test.py | 0 | mutation updatepolicy($urn: string!, $input: policyupdateinput!) {\n updatepolicy(urn: $urn, input: $input) } | STRING |
| HIGH | smoke-test/tests/privileges/test_privileges.py | 0 | mutation updatepolicy($urn: string!, $input: policyupdateinput!) {\n updatepolicy(urn: $urn, input: $input) } | STRING |
| HIGH | smoke-test/tests/privileges/utils.py | 0 | mutation updatepolicy($urn: string!, $input: policyupdateinput!) {\n updatepolicy(urn: $urn, input: $input) } | STRING |
| HIGH | smoke-test/tests/audit_events/audit_events_test.py | 0 | mutation createaccesstoken($input: createaccesstokeninput!) { createaccesstoken(input: $input) { accesstoken metadata { | STRING |
| HIGH | …e-test/tests/service_accounts/test_service_accounts.py | 0 | mutation createaccesstoken($input: createaccesstokeninput!) { createaccesstoken(input: $input) { accesstoken metadata { | STRING |
| HIGH | smoke-test/tests/tokens/revokable_access_token_test.py | 0 | mutation createaccesstoken($input: createaccesstokeninput!) { createaccesstoken(input: $input) { accesstoken metadata { | STRING |
| HIGH | metadata-ingestion/src/datahub/cli/sso_cli.py | 0 | mutation createaccesstoken($input: createaccesstokeninput!) { createaccesstoken(input: $input) { accesstoken metadata { | STRING |
| HIGH | metadata-ingestion/src/datahub/cli/cli_utils.py | 0 | mutation createaccesstoken($input: createaccesstokeninput!) { createaccesstoken(input: $input) { accesstoken metadata { | STRING |
| HIGH | smoke-test/tests/audit_events/audit_events_test.py | 0 | query listaccesstokens($input: listaccesstokeninput!) { listaccesstokens(input: $input) { start count total tokens { urn | STRING |
| HIGH | smoke-test/tests/tokens/token_utils.py | 0 | query listaccesstokens($input: listaccesstokeninput!) { listaccesstokens(input: $input) { start count total tokens { urn | STRING |
| HIGH | smoke-test/tests/tokens/revokable_access_token_test.py | 0 | query listaccesstokens($input: listaccesstokeninput!) { listaccesstokens(input: $input) { start count total tokens { urn | STRING |
| HIGH | smoke-test/tests/status/test_lifecycle_state.py | 0 | mutation createdoc($input: createdocumentinput!) { createdocument(input: $input) } | STRING |
| HIGH | …ke-test/tests/knowledge/document_search_filter_test.py | 0 | mutation createdoc($input: createdocumentinput!) { createdocument(input: $input) } | STRING |
| HIGH | …st/tests/knowledge/test_document_hierarchy_settings.py | 0 | mutation createdoc($input: createdocumentinput!) { createdocument(input: $input) } | STRING |
| HIGH | smoke-test/tests/status/test_lifecycle_state.py | 0 | mutation deletedoc($urn: string!) { deletedocument(urn: $urn) } | STRING |
| HIGH | …ke-test/tests/knowledge/document_search_filter_test.py | 0 | mutation deletedoc($urn: string!) { deletedocument(urn: $urn) } | STRING |
| HIGH | …st/tests/knowledge/test_document_hierarchy_settings.py | 0 | mutation deletedoc($urn: string!) { deletedocument(urn: $urn) } | STRING |
| HIGH | smoke-test/tests/policies/test_policy_eval_perf.py | 0 | mutation createpolicy($input: policyupdateinput!) { createpolicy(input: $input) } | STRING |
| HIGH | smoke-test/tests/policies/test_policies.py | 0 | mutation createpolicy($input: policyupdateinput!) { createpolicy(input: $input) } | STRING |
| HIGH | smoke-test/tests/privileges/test_privileges.py | 0 | mutation createpolicy($input: policyupdateinput!) { createpolicy(input: $input) } | STRING |
| HIGH | smoke-test/tests/privileges/utils.py | 0 | mutation createpolicy($input: policyupdateinput!) { createpolicy(input: $input) } | STRING |
| HIGH | smoke-test/tests/policies/test_policies.py | 0 | fixture to execute setup before and tear down after all tests are run | STRING |
| HIGH | smoke-test/tests/privileges/test_privileges.py | 0 | fixture to execute setup before and tear down after all tests are run | STRING |
| HIGH | smoke-test/tests/tokens/revokable_access_token_test.py | 0 | fixture to execute setup before and tear down after all tests are run | STRING |
| HIGH | smoke-test/tests/tokens/session_access_token_test.py | 0 | fixture to execute setup before and tear down after all tests are run | STRING |
| HIGH | smoke-test/tests/utilities/multi_user.py | 0 | query getinvitetoken($input: getinvitetokeninput!) { getinvitetoken(input: $input){ invitetoken } } | STRING |
| HIGH | smoke-test/tests/tokens/revokable_access_token_test.py | 0 | query getinvitetoken($input: getinvitetokeninput!) { getinvitetoken(input: $input){ invitetoken } } | STRING |
| HIGH | smoke-test/tests/tokens/session_access_token_test.py | 0 | query getinvitetoken($input: getinvitetokeninput!) { getinvitetoken(input: $input){ invitetoken } } | STRING |
| HIGH | …e-test/tests/knowledge/test_document_search_history.py | 0 | mutation createka($input: createdocumentinput!) { createdocument(input: $input) } | STRING |
| HIGH | smoke-test/tests/knowledge/test_document_crud.py | 0 | mutation createka($input: createdocumentinput!) { createdocument(input: $input) } | STRING |
| HIGH | …st/tests/knowledge/test_document_hierarchy_settings.py | 0 | mutation createka($input: createdocumentinput!) { createdocument(input: $input) } | STRING |
| HIGH | …e-test/tests/knowledge/document_change_history_test.py | 0 | mutation createka($input: createdocumentinput!) { createdocument(input: $input) } | STRING |
| HIGH | …e-test/tests/knowledge/test_document_search_history.py | 0 | mutation movedoc($input: movedocumentinput!) { movedocument(input: $input) } | STRING |
| HIGH | smoke-test/tests/knowledge/test_document_crud.py | 0 | mutation movedoc($input: movedocumentinput!) { movedocument(input: $input) } | STRING |
| HIGH | …st/tests/knowledge/test_document_hierarchy_settings.py | 0 | mutation movedoc($input: movedocumentinput!) { movedocument(input: $input) } | STRING |
| HIGH | …e-test/tests/knowledge/test_document_search_history.py | 0 | mutation deleteka($urn: string!) { deletedocument(urn: $urn) } | STRING |
| HIGH | smoke-test/tests/knowledge/test_document_crud.py | 0 | mutation deleteka($urn: string!) { deletedocument(urn: $urn) } | STRING |
| HIGH | …st/tests/knowledge/test_document_hierarchy_settings.py | 0 | mutation deleteka($urn: string!) { deletedocument(urn: $urn) } | STRING |
| HIGH | …e-test/tests/knowledge/document_change_history_test.py | 0 | mutation deleteka($urn: string!) { deletedocument(urn: $urn) } | STRING |
| HIGH | …e-test/tests/knowledge/test_document_search_history.py | 0 | query searchdocs($input: searchdocumentsinput!) { searchdocuments(input: $input) { total documents { urn info { title st | STRING |
| HIGH | …ke-test/tests/knowledge/document_search_filter_test.py | 0 | query searchdocs($input: searchdocumentsinput!) { searchdocuments(input: $input) { total documents { urn info { title st | STRING |
| HIGH | …st/tests/knowledge/test_document_hierarchy_settings.py | 0 | query searchdocs($input: searchdocumentsinput!) { searchdocuments(input: $input) { total documents { urn info { title st | STRING |
| HIGH | smoke-test/tests/knowledge/test_document_crud.py | 0 | mutation updatestatus($input: updatedocumentstatusinput!) { updatedocumentstatus(input: $input) } | STRING |
| HIGH | …ke-test/tests/knowledge/document_search_filter_test.py | 0 | mutation updatestatus($input: updatedocumentstatusinput!) { updatedocumentstatus(input: $input) } | STRING |
| HIGH | …st/tests/knowledge/test_document_hierarchy_settings.py | 0 | mutation updatestatus($input: updatedocumentstatusinput!) { updatedocumentstatus(input: $input) } | STRING |
| 56 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …phql/resolvers/assertion/EntityAssertionsResolver.java | 58 | // Step 1: Fetch set of assertions associated with the target entity from the Graph | COMMENT |
| LOW⚡ | …phql/resolvers/assertion/EntityAssertionsResolver.java | 74 | // Step 2: Hydrate the assertion entities based on the urns from step 1 | COMMENT |
| LOW⚡ | …phql/resolvers/assertion/EntityAssertionsResolver.java | 82 | // Step 3: Map GMS assertion model to GraphQL model, preserving graph-store order. | COMMENT |
| LOW | …phql/resolvers/assertion/EntityAssertionsResolver.java | 97 | // Step 4: Package and return result | COMMENT |
| LOW | …hql/resolvers/assertion/AssertionRunEventResolver.java | 62 | // Step 1: Fetch aspects from GMS | COMMENT |
| LOW⚡ | …hql/resolvers/assertion/AssertionRunEventResolver.java | 77 | // Step 2: Bind profiles into GraphQL strong types. | COMMENT |
| LOW⚡ | …hql/resolvers/assertion/AssertionRunEventResolver.java | 83 | // Step 3: Package and return response. | COMMENT |
| LOW⚡ | …aphql/resolvers/knowledge/SearchDocumentsResolver.java | 111 | // Step 1: Search using service to get URNs | COMMENT |
| LOW⚡ | …aphql/resolvers/knowledge/SearchDocumentsResolver.java | 121 | // Step 2: Extract URNs from search results | COMMENT |
| LOW⚡ | …aphql/resolvers/knowledge/SearchDocumentsResolver.java | 127 | // Step 3: Batch hydrate/resolve the Document entities | COMMENT |
| LOW⚡ | …aphql/resolvers/knowledge/SearchDocumentsResolver.java | 135 | // Step 4: Map entities in the same order as search results | COMMENT |
| LOW⚡ | …aphql/resolvers/knowledge/SearchDocumentsResolver.java | 141 | // Step 5: Convert to GraphQL Document objects | COMMENT |
| LOW⚡ | …aphql/resolvers/knowledge/SearchDocumentsResolver.java | 148 | // Step 6: Build the result | COMMENT |
| LOW | …phql/resolvers/knowledge/RelatedDocumentsResolver.java | 103 | // Step 1: Search using service to get URNs | COMMENT |
| LOW⚡ | …phql/resolvers/knowledge/RelatedDocumentsResolver.java | 121 | // Step 2: Extract URNs from search results | COMMENT |
| LOW⚡ | …phql/resolvers/knowledge/RelatedDocumentsResolver.java | 127 | // Step 3: Batch hydrate/resolve the Document entities | COMMENT |
| LOW⚡ | …phql/resolvers/knowledge/RelatedDocumentsResolver.java | 135 | // Step 4: Map entities in the same order as search results | COMMENT |
| LOW⚡ | …phql/resolvers/knowledge/RelatedDocumentsResolver.java | 141 | // Step 5: Convert to GraphQL Document objects | COMMENT |
| LOW⚡ | …phql/resolvers/knowledge/RelatedDocumentsResolver.java | 148 | // Step 6: Build the result | COMMENT |
| LOW | …raphql/resolvers/incident/EntityIncidentsResolver.java | 68 | // Step 1: Fetch set of incidents associated with the target entity from the Search | COMMENT |
| LOW⚡ | …raphql/resolvers/incident/EntityIncidentsResolver.java | 89 | // Step 2: Hydrate the incident entities | COMMENT |
| LOW⚡ | …raphql/resolvers/incident/EntityIncidentsResolver.java | 97 | // Step 3: Map GMS incident model to GraphQL model | COMMENT |
| LOW | …raphql/resolvers/incident/EntityIncidentsResolver.java | 108 | // Step 4: Package and return result | COMMENT |
| LOW | …ahub/graphql/resolvers/jobs/ExecutionRunsResolver.java | 64 | // Step 1: Fetch set of task runs associated with the target entity from the Search | COMMENT |
| LOW⚡ | …ahub/graphql/resolvers/jobs/ExecutionRunsResolver.java | 82 | // Step 2: Hydrate the incident entities | COMMENT |
| LOW⚡ | …ahub/graphql/resolvers/jobs/ExecutionRunsResolver.java | 90 | // Step 3: Map GMS incident model to GraphQL model | COMMENT |
| LOW | …ahub/graphql/resolvers/jobs/ExecutionRunsResolver.java | 101 | // Step 4: Package and return result | COMMENT |
| LOW | …datahub/graphql/resolvers/jobs/EntityRunsResolver.java | 68 | // Step 1: Fetch set of task runs associated with the target entity from the Search | COMMENT |
| LOW⚡ | …datahub/graphql/resolvers/jobs/EntityRunsResolver.java | 86 | // Step 2: Hydrate the incident entities | COMMENT |
| LOW⚡ | …datahub/graphql/resolvers/jobs/EntityRunsResolver.java | 94 | // Step 3: Map GMS instance model to GraphQL model | COMMENT |
| LOW | …datahub/graphql/resolvers/jobs/EntityRunsResolver.java | 105 | // Step 4: Package and return result | COMMENT |
| LOW | …resolvers/datacontract/EntityDataContractResolver.java | 48 | // Step 1: Fetch the contract associated with the dataset. | COMMENT |
| LOW⚡ | …resolvers/datacontract/EntityDataContractResolver.java | 77 | // Step 2: Hydrate the contract entities based on the urns from step 1 | COMMENT |
| LOW⚡ | …resolvers/datacontract/EntityDataContractResolver.java | 86 | // Step 4: Package and return result | COMMENT |
| LOW⚡ | …/com/linkedin/metadata/trace/TraceServiceImplTest.java | 528 | // Step 1: Verify that parsing this trace ID produces a far-future epoch | COMMENT |
| LOW⚡ | …/com/linkedin/metadata/trace/TraceServiceImplTest.java | 537 | // Step 2: Verify that the queue time calculation would produce a value that overflows | COMMENT |
| LOW⚡ | …/com/linkedin/metadata/trace/TraceServiceImplTest.java | 543 | // Step 3: Confirm that Duration.ofMillis(queueTimeMs).toNanos() would overflow | COMMENT |
| LOW | …/com/linkedin/metadata/trace/TraceServiceImplTest.java | 555 | // Step 4: Verify the fix — extractTraceIdEpochMillis returns null for this trace ID, | COMMENT |
| LOW⚡ | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1399 | // Step 1: Create initial index with 1 shard | COMMENT |
| LOW⚡ | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1405 | // Step 2: Index some documents | COMMENT |
| LOW⚡ | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1425 | // Step 3: Create builder with different shard count to force requiresReindex, and non-zero | COMMENT |
| LOW⚡ | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1471 | // Step 6: Restore settings | COMMENT |
| LOW⚡ | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1478 | // Step 7: Verify next index has all documents | COMMENT |
| LOW⚡ | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1494 | // Step 8: Verify alias still points to original index (no swap happened) | COMMENT |
| LOW⚡ | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1504 | // Step 9: Verify next index has the new shard count | COMMENT |
| LOW | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1443 | // Step 4: Run incremental reindex (Phase 1) | COMMENT |
| LOW | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1459 | // Step 5: Poll until reindex completes | COMMENT |
| LOW | …metadata/search/indexbuilder/IndexBuilderTestBase.java | 1516 | // Step 10: Verify settings were restored (replicas back to target, refresh interval restored) | COMMENT |
| LOW | …n/metadata/search/elasticsearch/query/ESSearchDAO.java | 311 | // Step 1: construct the query | COMMENT |
| LOW | …n/metadata/search/elasticsearch/query/ESSearchDAO.java | 325 | // Step 2: execute the query and extract results, validated against document model as well | COMMENT |
| LOW | …sticsearch/indexbuilder/DestinationIndexOptimizer.java | 107 | // Step 1: Fetch all original settings in a single API call (batch operation) | COMMENT |
| LOW | …sticsearch/indexbuilder/DestinationIndexOptimizer.java | 167 | // Step 2: Apply optimizations in a single atomic API call (batch operation) | COMMENT |
| LOW | …in/metadata/aspect/consistency/ConsistencyService.java | 1138 | // For orphan check, we need to check if entity exists in SQL | COMMENT |
| LOW | …ain/java/com/linkedin/metadata/kafka/CDCProcessor.java | 155 | // Step 1: Parse JSON using Jackson ObjectMapper | COMMENT |
| LOW⚡ | …ain/java/com/linkedin/metadata/kafka/CDCProcessor.java | 178 | // Step 2: Extract "before" and "after" fields as JsonNode objects | COMMENT |
| LOW⚡ | …ain/java/com/linkedin/metadata/kafka/CDCProcessor.java | 182 | // Step 3: Check if we should process this record (only latest versions) | COMMENT |
| LOW⚡ | …ain/java/com/linkedin/metadata/kafka/CDCProcessor.java | 188 | // Step 4: Extract urn, aspect, metadata, systemmetadata fields from both before/after CDC | COMMENT |
| LOW | …ain/java/com/linkedin/metadata/kafka/CDCProcessor.java | 207 | // Step 5: Deserialize the "metadata" JSON strings to RecordTemplate objects | COMMENT |
| LOW | …ain/java/com/linkedin/metadata/kafka/CDCProcessor.java | 228 | // Step 6: Parse systemmetadata JSON strings to SystemMetadata objects | COMMENT |
| LOW | …ain/java/com/linkedin/metadata/kafka/CDCProcessor.java | 239 | // Step 7: Create ChangeMCP using "after" record data | COMMENT |
| 241 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | datahub-agent-context/examples/langchain/setup_dev.sh | 9 | # Check if we're in the right directory | COMMENT |
| LOW | …tahub-agent-context/examples/google_adk/basic_agent.py | 172 | # Set BIGQUERY_PROJECT_ID to control which project is billed for queries; | COMMENT |
| LOW | datahub-agent-context/examples/google_adk/setup_dev.sh | 9 | # Check if we're in the right directory | COMMENT |
| LOW | …ntext/src/datahub_agent_context/snowflake/snowflake.py | 39 | # Check if URL has a protocol | COMMENT |
| LOW | …ontext/src/datahub_agent_context/mcp_tools/entities.py | 60 | # Check if entity exists first | COMMENT |
| LOW | …ontext/src/datahub_agent_context/mcp_tools/entities.py | 86 | # Check if entity data was returned | COMMENT |
| LOW | …ontext/src/datahub_agent_context/mcp_tools/entities.py | 199 | # Check if entity data was returned | COMMENT |
| LOW | …context/src/datahub_agent_context/mcp_tools/lineage.py | 449 | # Check if any paths contain QUERY entities (with safe null handling) | COMMENT |
| LOW | …context/src/datahub_agent_context/mcp_tools/helpers.py | 209 | # Check if adding this entity would exceed budget | COMMENT |
| LOW | …context/src/datahub_agent_context/mcp_tools/helpers.py | 417 | # Check if this is column-level lineage by looking for paths | COMMENT |
| LOW | …nt-context/src/datahub_agent_context/mcp_tools/base.py | 40 | # Check if we've already determined newer GMS fields support for this graph | COMMENT |
| LOW⚡ | …nt-context/src/datahub_agent_context/mcp_tools/base.py | 81 | # Check if this is a field validation error and we tried with newer GMS fields enabled | COMMENT |
| LOW | …ema-registry-servlet/scripts/extract_kafka_messages.sh | 25 | # Check if kcat is available | COMMENT |
| LOW | …ema-registry-servlet/scripts/extract_kafka_messages.sh | 43 | # Check if topic exists and has messages | COMMENT |
| LOW | …ema-registry-servlet/scripts/extract_kafka_messages.sh | 50 | # Check if topic has messages by trying to get the first message | COMMENT |
| LOW | …tahub-actions/src/datahub_actions/pipeline/pipeline.py | 273 | # Increment stats | COMMENT |
| LOW | smoke-test/conftest.py | 352 | # Check if FILTERED_TESTS is set (for retry logic) | COMMENT |
| LOW | smoke-test/conftest.py | 373 | # Check if this item's module is in the filtered list | COMMENT |
| LOW | smoke-test/tests/cypress/timestamp_updater.py | 82 | # Check if this file needs timestamp updates | COMMENT |
| LOW | smoke-test/tests/cypress/timestamp_updater.py | 87 | # Read the file | COMMENT |
| LOW | …e-test/tests/library_examples/test_library_examples.py | 80 | # Check if this test has dependencies | COMMENT |
| LOW⚡ | smoke-test/tests/openapi/v1/test_tracking.py | 44 | # Check if Mixpanel API secret is available in environment variables | COMMENT |
| LOW⚡ | smoke-test/tests/openapi/v1/test_tracking.py | 49 | # Check if Mixpanel is enabled in server configuration | COMMENT |
| LOW | smoke-test/tests/openapi/v1/test_tracking.py | 303 | # Check if this is our test event | COMMENT |
| LOW | smoke-test/tests/privileges/test_privileges.py | 219 | # Assign privileges to the new user to manage secrets | COMMENT |
| LOW | smoke-test/tests/privileges/test_privileges.py | 287 | # Assign privileges to the new user to manage ingestion source | COMMENT |
| LOW | smoke-test/tests/privileges/test_privileges.py | 383 | # Assign privileges to the new user to create and manage access tokens | COMMENT |
| LOW | smoke-test/tests/privileges/test_privileges.py | 495 | # Assign privileges to the new user to create and manage policies | COMMENT |
| LOW | smoke-test/tests/privileges/test_privileges.py | 586 | # Assign user to group | COMMENT |
| LOW | smoke-test/tests/privileges/utils.py | 274 | # Check if the response structure is as expected before accessing | COMMENT |
| LOW | …e-test/tests/knowledge/document_change_history_test.py | 137 | # Check if we have a CREATED event | STRING |
| LOW | smoke-test/tests/semantic/test_current_offset_api.py | 56 | # Check if offsetId is in response | COMMENT |
| LOW⚡ | smoke-test/tests/semantic/test_event_mode_fallback.py | 482 | # Check if state contains event offsets | COMMENT |
| LOW⚡ | smoke-test/tests/semantic/test_event_driven_docs.py | 351 | # Check if process is still running | STRING |
| LOW | smoke-test/tests/semantic/test_event_driven_docs.py | 423 | # Check if updated content appears in chunks | STRING |
| LOW | smoke-test/tests/analytics/conftest.py | 136 | # Check if users file exists, create minimal one if not | COMMENT |
| LOW | …ces/analytics_backfill/load_events_to_elasticsearch.sh | 97 | # Check if Elasticsearch is accessible | COMMENT |
| LOW | …ces/analytics_backfill/load_events_to_elasticsearch.sh | 106 | # Check if index exists | COMMENT |
| LOW | metadata-ingestion-modules/airflow-plugin/run-tests.sh | 26 | # Check if Docker is running | COMMENT |
| LOW | metadata-ingestion-modules/airflow-plugin/run-tests.sh | 55 | # Set HOME to /tmp so all cache directories are writable | COMMENT |
| LOW | …gestion-modules/airflow-plugin/docker-compose.test.yml | 25 | # Set HOME to /tmp so all cache directories are writable | COMMENT |
| LOW | …b_airflow_plugin/airflow3/_athena_openlineage_patch.py | 75 | # Check if SQL parsing result is already in run_facets (from SQLParser patch) | COMMENT |
| LOW | …rc/datahub_airflow_plugin/airflow3/datahub_listener.py | 694 | # Check if the operator has OpenLineage support | COMMENT |
| LOW | …rc/datahub_airflow_plugin/airflow3/datahub_listener.py | 751 | # Check if DataHub SQL parsing result is in run_facets (from our patch) | COMMENT |
| LOW | …rc/datahub_airflow_plugin/airflow3/datahub_listener.py | 1127 | # Check if DAG is allowed by filter pattern | COMMENT |
| LOW | …rc/datahub_airflow_plugin/airflow3/datahub_listener.py | 1157 | # Check if emitter is available | COMMENT |
| LOW | …rc/datahub_airflow_plugin/airflow3/datahub_listener.py | 1271 | # Check if DAG is allowed before doing any expensive operations | COMMENT |
| LOW | …b_airflow_plugin/airflow3/_sqlite_openlineage_patch.py | 31 | # Check if already patched | COMMENT |
| LOW | …c/datahub_airflow_plugin/airflow3/_sql_parser_patch.py | 76 | # Check if OpenLineage plugin is enabled and load multi-statement flag | COMMENT |
| LOW | …c/datahub_airflow_plugin/airflow3/_sql_parser_patch.py | 151 | # Check if SQL still contains templates (should be rendered by operator) | COMMENT |
| LOW⚡ | …airflow_plugin/airflow3/_teradata_openlineage_patch.py | 96 | # Check if SQL parsing result is already in run_facets (from SQLParser patch) | COMMENT |
| LOW | …airflow_plugin/airflow3/_teradata_openlineage_patch.py | 295 | # Check if wrapper creation failed (import error) | COMMENT |
| LOW | …airflow_plugin/airflow3/_bigquery_openlineage_patch.py | 130 | # Check if there's a destinationTable in configuration | COMMENT |
| LOW | …airflow_plugin/airflow3/_bigquery_openlineage_patch.py | 253 | # Check if operator should be patched | COMMENT |
| LOW | …ration/java/datahub-schematron/cli/scripts/mce_diff.py | 283 | # Read the files into json objects and compare them | COMMENT |
| LOW | …n/java/acryl-spark-lineage/scripts/generate-patches.sh | 35 | # Check if upstream directory exists | COMMENT |
| LOW | .github/workflows/check-python-deps.yml | 170 | # Check if we have violations | COMMENT |
| LOW | .github/workflows/update-test-weights.yml | 128 | # Check if PR body was generated (non-empty file means changes exceed threshold) | COMMENT |
| LOW | .github/workflows/metadata-ingestion.yml | 300 | # Check if any Python file in metadata-ingestion is in the changed files | COMMENT |
| LOW | .github/workflows/connector-tests-trigger.yml | 109 | # Check if PR has the skip-connector-tests label | COMMENT |
| 221 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | datahub-graphql-core/README.md | 85 | an URN to a "placeholder" GraphQL entity which is subsequently resolved by the GraphQL engine. | CODE |
| LOW | …va/com/linkedin/datahub/graphql/GraphQLEngineTest.java | 134 | userDatabase.put("1", new User("1", "John Doe", "john@example.com")); | CODE |
| LOW | …va/com/linkedin/datahub/graphql/GraphQLEngineTest.java | 169 | assertEquals(user.get("name"), "John Doe"); | CODE |
| LOW | …om/linkedin/metadata/entity/EntityServiceImplTest.java | 146 | CorpUserInfo originalInfo = AspectGenerationUtils.createCorpUserInfo("test@test.com"); | CODE |
| LOW | …om/linkedin/metadata/entity/EntityServiceImplTest.java | 204 | CorpUserInfo originalInfo = AspectGenerationUtils.createCorpUserInfo("test@test.com"); | CODE |
| LOW | …om/linkedin/metadata/entity/EntityServiceImplTest.java | 266 | CorpUserInfo newInfo = AspectGenerationUtils.createCorpUserInfo("test@test.com"); | CODE |
| LOW | …om/linkedin/metadata/entity/EntityServiceImplTest.java | 375 | CorpUserInfo originalInfo = AspectGenerationUtils.createCorpUserInfo("test@test.com"); | CODE |
| LOW | …adata/search/query/request/SearchQueryBuilderTest.java | 1267 | "name:'John Doe'"); | CODE |
| LOW | …tem_info/collectors/SpringComponentsCollectorTest.java | 65 | assertEquals(maeInfo.getProperties().get("mode"), "placeholder"); | CODE |
| LOW | …tem_info/collectors/SpringComponentsCollectorTest.java | 74 | assertEquals(mceInfo.getProperties().get("mode"), "placeholder"); | CODE |
| LOW | …tem_info/collectors/SpringComponentsCollectorTest.java | 177 | assertEquals(properties.get("mode"), "placeholder"); | CODE |
| LOW | …tem_info/collectors/SpringComponentsCollectorTest.java | 209 | assertEquals(properties.get("mode"), "placeholder"); | CODE |
| LOW | …/system_info/collectors/SpringComponentsCollector.java | 139 | "mode", "placeholder", | CODE |
| LOW | …/system_info/collectors/SpringComponentsCollector.java | 176 | "mode", "placeholder", | CODE |
| LOW⚡ | …ent-context/tests/unit/mcp_tools/test_save_document.py | 39 | "displayName": "John Doe", | CODE |
| LOW⚡ | …ent-context/tests/unit/mcp_tools/test_save_document.py | 40 | "fullName": "John Doe", | CODE |
| LOW⚡ | …ent-context/tests/unit/mcp_tools/test_save_document.py | 45 | "displayName": "John Doe", | CODE |
| LOW⚡ | …ent-context/tests/unit/mcp_tools/test_save_document.py | 77 | assert _get_user_display_name(mock_user_info) == "John Doe" | CODE |
| LOW | …ent-context/tests/unit/mcp_tools/test_save_document.py | 182 | assert result["author"] == "John Doe" | CODE |
| LOW | …ent-context/tests/unit/mcp_tools/test_save_document.py | 437 | assert result["author"] == "John Doe" | CODE |
| LOW | …ent-context/tests/unit/mcp_tools/test_save_document.py | 628 | assert result["author"] == "John Doe" | CODE |
| LOW | …ent-context/tests/unit/mcp_tools/test_save_document.py | 680 | assert result["author"] == "John Doe" | CODE |
| LOW | …om/linkedin/metadata/utils/GenericRecordUtilsTest.java | 43 | patchBuilder.add("/name", "John Doe"); | CODE |
| LOW | …om/linkedin/metadata/utils/GenericRecordUtilsTest.java | 99 | addOp.setValue("John Doe"); | CODE |
| LOW | …om/linkedin/metadata/utils/GenericRecordUtilsTest.java | 226 | addressNode.put("street", "123 Main St"); | CODE |
| LOW | …om/linkedin/metadata/utils/GenericRecordUtilsTest.java | 231 | rootNode.put("name", "John Doe"); | CODE |
| LOW⚡ | …om/linkedin/metadata/utils/GenericRecordUtilsTest.java | 252 | assertEquals(dataMap.getString("name"), "John Doe"); | CODE |
| LOW⚡ | …om/linkedin/metadata/utils/GenericRecordUtilsTest.java | 255 | assertEquals(addressData.getString("street"), "123 Main St"); | CODE |
| LOW⚡ | …om/linkedin/metadata/utils/GenericRecordUtilsTest.java | 264 | phoneNumbers.add("555-1234"); | CODE |
| LOW⚡ | …om/linkedin/metadata/utils/GenericRecordUtilsTest.java | 265 | phoneNumbers.add("555-5678"); | CODE |
| LOW | …om/linkedin/metadata/utils/GenericRecordUtilsTest.java | 300 | assertEquals(phonesList.get(0), "555-1234"); | CODE |
| LOW | …om/linkedin/metadata/utils/GenericRecordUtilsTest.java | 301 | assertEquals(phonesList.get(1), "555-5678"); | CODE |
| LOW | …om/linkedin/metadata/utils/GenericRecordUtilsTest.java | 346 | homePhone.put("number", "555-1234"); | CODE |
| LOW | …om/linkedin/metadata/utils/GenericRecordUtilsTest.java | 350 | workPhone.put("number", "555-5678"); | CODE |
| LOW | …om/linkedin/metadata/utils/GenericRecordUtilsTest.java | 392 | assertEquals(homePhoneData.getString("number"), "555-1234"); | CODE |
| LOW | …om/linkedin/metadata/utils/GenericRecordUtilsTest.java | 396 | assertEquals(workPhoneData.getString("number"), "555-5678"); | CODE |
| LOW | …ct/openapi/operations/v1/SystemInfoControllerTest.java | 240 | "mode", "placeholder", | CODE |
| LOW | …tory/search/semantic/EmbeddingProviderFactoryTest.java | 386 | "sk-test-fake-key", "https://api.openai.com/v1/embeddings", "text-embedding-3-small"); | CODE |
| LOW | …tory/search/semantic/EmbeddingProviderFactoryTest.java | 424 | "sk-test-fake-key", "https://api.openai.com/v1/embeddings", "text-embedding-3-large"); | CODE |
| LOW | …io/datahubproject/event/ExternalEventsServiceTest.java | 85 | testEvent1.put("name", "John Doe"); | CODE |
| LOW | …io/datahubproject/event/ExternalEventsServiceTest.java | 90 | testEvent2.put("name", "Jane Doe"); | CODE |
| LOW | …ss/cypress/e2e/manage_tagsV2/search_bar_placeholder.js | 11 | "placeholder", | CODE |
| LOW | …cypress/cypress/e2e/application/manage_applications.js | 7 | "placeholder", | CODE |
| LOW | smoke-test/tests/cli/user_cmd/test_user_add.py | 303 | display_name = "John Doe" | CODE |
| LOW | …e-test/tests/zdu/framework/test_inject_traffic_dual.py | 23 | urn="placeholder", | CODE |
| LOW | …e-test/tests/zdu/framework/test_inject_traffic_dual.py | 37 | m.get_doc.return_value = {"urn": "placeholder"} | CODE |
| LOW | …ke-test/tests/zdu/framework/test_inject_traffic_pre.py | 23 | urn="placeholder", | CODE |
| LOW | …ke-test/tests/zdu/framework/test_inject_traffic_pre.py | 37 | m.get_doc.return_value = {"urn": "placeholder"} | CODE |
| LOW | smoke-test/tests/containers/data.json | 144 | "string": "John Doe" | CODE |
| LOW | smoke-test/tests/containers/data.json | 156 | "string": "John Doe" | CODE |
| LOW | docs/cli.md | 850 | datahub user add --email user@example.com --display-name "John Doe" --password --role Admin | CODE |
| LOW | docs/managed-datahub/smtp-email.md | 79 | export NOTIFICATION_FOOTER_TEXT="Acme Corp" # footer signature shown on every email | CODE |
| LOW | docs/api/tutorials/mlmodel-mlmodelgroup.md | 64 | >> Model Group Custom Properties: {'owner': 'John Doe', 'team': 'recommendations', 'domain': 'marketing'} | CODE |
| LOW | li-utils/src/test/resources/corp-user-info.json | 3 | "email": "foo@bar.com", | CODE |
| LOW | datahub-web-react/src/Mocks.tsx | 3959 | description: 'Lorem ipsum dolor sit amet, consectetu', | CODE |
| LOW | datahub-web-react/src/Mocks.tsx | 3959 | description: 'Lorem ipsum dolor sit amet, consectetu', | CODE |
| LOW | …ct/src/app/entityV2/user/__tests__/UserHeader.test.tsx | 13 | name="Jane Doe" | CODE |
| LOW | …ct/src/app/entityV2/user/__tests__/UserHeader.test.tsx | 21 | expect(getByText('Jane Doe')).toBeInTheDocument(); | CODE |
| LOW⚡ | …_/components/editor/extensions/htmlToMarkdown.test.tsx | 4 | ['strike', '<strike>Lorem ipsum</strike>', '~Lorem ipsum~'], | CODE |
| LOW⚡ | …_/components/editor/extensions/htmlToMarkdown.test.tsx | 5 | ['s', '<s>Lorem ipsum</s>', '~Lorem ipsum~'], | CODE |
| 333 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | README.md | 145 | - **[Context Management Is the Missing Piece in the Agentic AI Puzzle](https://datahub.com/blog/context-management-is-th | CODE |
| MEDIUM | docker/profiles/docker-compose.ollama.yml | 33 | # One-shot init container that pulls the embedding model and warms it up. | COMMENT |
| MEDIUM | …context/src/datahub_agent_context/mcp_tools/queries.py | 185 | # Truncate long SQL queries to prevent context window issues | COMMENT |
| MEDIUM | …context/src/datahub_agent_context/mcp_tools/helpers.py | 23 | # Maximum token count for tool responses to prevent context window issues | COMMENT |
| MEDIUM⚡ | …nt-context/src/datahub_agent_context/mcp_tools/base.py | 69 | # Execute the GraphQL query with projection enabled for agentic callers | COMMENT |
| MEDIUM | smoke-test/tests/zdu/framework/runner.py | 187 | # Phase 0 (combined) — SetupOldStackPhase orchestrates build_images + | COMMENT |
| MEDIUM | …est_resources/analytics_backfill/populate_analytics.sh | 5 | # This script orchestrates the entire process of: | COMMENT |
| MEDIUM | docs/dev-guides/semantic-search/CONFIGURATION.md | 18 | # Vector dimensions (must match embedding model) | COMMENT |
| MEDIUM | docs/dev-guides/semantic-search/CONFIGURATION.md | 41 | # Define index mappings for each embedding model you use | COMMENT |
| MEDIUM | metadata-ingestion/setup.py | 516 | # Unstructured ingest framework for pipeline orchestration | COMMENT |
| MEDIUM⚡ | …tadata-ingestion/tests/unit/informatica/test_source.py | 1328 | # picks up MT1 as a predecessor; orchestrate's inputDatajobs is just | COMMENT |
| MEDIUM⚡ | …tadata-ingestion/tests/unit/informatica/test_source.py | 1330 | # ``input_ds → MT1 → MT2 → orchestrate → out_ds``. | COMMENT |
| MEDIUM⚡ | …tadata-ingestion/tests/unit/informatica/test_source.py | 1405 | # End-of-lineage pass emits the orchestrate's DataJobInputOutput with | COMMENT |
| MEDIUM⚡ | …tadata-ingestion/tests/unit/informatica/test_source.py | 1408 | # ``last_MT → orchestrate → output_ds``. | COMMENT |
| MEDIUM | …tadata-ingestion/tests/unit/informatica/test_source.py | 1368 | # Step metadata still preserved on orchestrate for auditing. | COMMENT |
| MEDIUM | …tadata-ingestion/tests/unit/informatica/test_source.py | 1454 | # surface, so no orchestrate DataJob is emitted (keeps the catalog | COMMENT |
| MEDIUM | …estion/tests/unit/sql_parsing/test_split_statements.py | 462 | # surrounding WHILE/LOOP/RETURN scaffolding (equivalent-or-better for lineage). | STRING |
| MEDIUM⚡ | …/tests/integration/azure_data_factory/complex_mocks.py | 1284 | # Main orchestration pipeline with both ExecutePipeline and Copy activities | COMMENT |
| MEDIUM⚡ | …tegration/azure_data_factory/test_complex_pipelines.py | 345 | # Scenario: Parent pipeline orchestrates child pipelines | COMMENT |
| MEDIUM⚡ | …tegration/azure_data_factory/test_complex_pipelines.py | 1142 | # - Understanding orchestration hierarchies | COMMENT |
| MEDIUM | …tegration/azure_data_factory/test_complex_pipelines.py | 362 | # - Users need to see the full orchestration hierarchy | COMMENT |
| MEDIUM | …tegration/azure_data_factory/test_complex_pipelines.py | 986 | # - Users need visibility into all orchestration activities | COMMENT |
| MEDIUM | …tadata-ingestion/tests/integration/sigma/test_sigma.py | 2651 | # Minimal workspace + workbook scaffolding so the pipeline runs. | COMMENT |
| MEDIUM | …tion/tests/integration/informatica/test_informatica.py | 184 | # orchestrate DataJob + aggregated-lineage end-to-end. | COMMENT |
| MEDIUM | …sources/datahub-documents/datahub-documents_recipe.yml | 7 | # Enables event-driven mode and incremental processing | COMMENT |
| MEDIUM | …cs/sources/datahub-documents/datahub-documents_post.md | 125 | # - Updating embedding model | COMMENT |
| MEDIUM | …ingestion/examples/recipes/datahub_documents_event.yml | 3 | # This recipe processes Document entities from DataHub in event-driven mode. | COMMENT |
| MEDIUM | …ingestion/examples/recipes/datahub_documents_batch.yml | 28 | enabled: false # Set to true to use event-driven mode instead | CODE |
| MEDIUM | …a-ingestion/examples/recipes/confluence_to_datahub.yml | 104 | # model: "text-embedding-3-small" # OpenAI embedding model | COMMENT |
| MEDIUM | …/datahub/ingestion/source/snowflake/snowflake_query.py | 26 | # scaffolding the filter is embedded in. | COMMENT |
| MEDIUM | …n/src/datahub/ingestion/source/notion/notion_source.py | 151 | model: "embed-english-v3.0" # Cohere embedding model | STRING |
| MEDIUM | …tion/src/datahub/ingestion/source/snowplow/snowplow.py | 236 | # Create processor dependencies (dependency injection) | COMMENT |
| MEDIUM | …ion/src/datahub/ingestion/source/informatica/source.py | 178 | # ``input_ds → MT1 → … → MTn → orchestrate → out_ds``. | COMMENT |
| MEDIUM | …ion/src/datahub/ingestion/source/informatica/source.py | 181 | # up to any Taskflow's orchestrate. | COMMENT |
| MEDIUM | …ion/src/datahub/ingestion/source/informatica/source.py | 997 | # orchestrate so the Taskflow Lineage view has the full pipeline. | COMMENT |
| MEDIUM | …ion/src/datahub/ingestion/source/informatica/source.py | 1211 | # onto the orchestrate's accumulated ``outputDatasets``. | COMMENT |
| MEDIUM | …datahub/ingestion/source/confluence/confluence_html.py | 81 | # Template / space scaffolding | COMMENT |
| MEDIUM | …tahub/ingestion/source/unstructured/chunking_source.py | 331 | # Choose mode: event-driven or batch | COMMENT |
| MEDIUM | …/src/datahub/ingestion/source/sap_datasphere/client.py | 506 | # Shared CSN request scaffold for flow/object design-time fetches: GET the | COMMENT |
| MEDIUM | …stion/workunit_processors/auto_resolve_lineage_urns.py | 218 | # These are the aspects a BI / orchestration source emits that carry *upstream | COMMENT |
| MEDIUM | …/src/datahub/ingestion/glossary/classifier_registry.py | 8 | # orchestration mixin) is intentionally retained so custom classifiers can still be | COMMENT |
| MEDIUM | …src/datahub/ingestion/glossary/classification_types.py | 9 | # the orchestration mixin usable by third-party classifiers without the dependency. | COMMENT |
| MEDIUM | metadata-ingestion/src/datahub/sdk/document.py | 1238 | # Build embedding model data with metadata | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …vice/configuration/src/main/resources/application.yaml | 1780 | # Works in conjunction with fieldLevelOperations - both conditions must match if both are set | COMMENT |
| LOW | datahub-actions/tests/unit/utils/test_kafka_msk_iam.py | 19 | # If already present (package installed), just return the real module | COMMENT |
| LOW | …hub_actions/plugin/action/execution/executor_action.py | 207 | # and not just dicts, we can just pass in the DataHubSecretStoreConfig | COMMENT |
| MEDIUM | smoke-test/smoke.sh | 4 | # Runs a basic e2e test. It is not meant to be fully comprehensive, | COMMENT |
| MEDIUM | smoke-test/tests/oauth/test_oauth_cli_gms.py | 38 | # harness overlays the triggering ref's SDK source onto the released install | COMMENT |
| MEDIUM | smoke-test/tests/zdu/framework/scenarios.py | 697 | # harness — those need infrastructure outside this branch's scope | COMMENT |
| LOW | smoke-test/tests/zdu/framework/test_rolling_restart.py | 317 | # restart in a future profile) must not crash — just return empty. | COMMENT |
| MEDIUM | smoke-test/tests/semantic/test_semantic_search.py | 628 | # it is robust to stale documents from prior test runs ranking above ours. | COMMENT |
| MEDIUM | …sources/analytics_backfill/backfill_activity_events.py | 46 | # Entity types for analytics - comprehensive list of DataHub entities | COMMENT |
| MEDIUM | …odules/airflow-plugin/tests/integration/test_plugin.py | 154 | # task instance actually succeeded (the harness's own task dump shows all | COMMENT |
| LOW | …odules/airflow-plugin/tests/integration/test_plugin.py | 860 | # When run directly, just set up a local airflow instance. | COMMENT |
| MEDIUM | …rc/datahub_airflow_plugin/airflow3/datahub_listener.py | 915 | # harness). Requires Airflow 3.x AssetEvent ORM. | COMMENT |
| MEDIUM | .github/scripts/compare_test_weights.py | 33 | """Calculate comprehensive change statistics.""" | STRING |
| MEDIUM | …gestion/tests/unit/test_athena_properties_extractor.py | 541 | # Test comprehensive TBLPROPERTIES for Iceberg | STRING |
| LOW⚡ | …ata-ingestion/tests/unit/test_hive_metastore_source.py | 657 | # Should not crash, just return no lineage | COMMENT |
| LOW | …ata-ingestion/tests/unit/test_hive_metastore_source.py | 631 | # Should not crash, just return no lineage | COMMENT |
| MEDIUM | metadata-ingestion/tests/unit/sdk_v2/test_chart.py | 362 | # Add some input datasets for comprehensive testing | COMMENT |
| MEDIUM | …tests/unit/tableau/test_tableau_virtual_connections.py | 339 | """Test comprehensive error handling""" | STRING |
| MEDIUM | metadata-ingestion/tests/unit/sigma/test_sigma_api.py | 2590 | # stringify for substring matching so this is robust to the | COMMENT |
| MEDIUM | …-ingestion/tests/unit/snowplow/test_snowplow_client.py | 393 | """Test all API methods for comprehensive coverage.""" | STRING |
| LOW | …ingestion/tests/unit/snowplow/test_schema_processor.py | 211 | # Should not raise, just return empty mapping | COMMENT |
| LOW | …data-ingestion/tests/integration/looker/test_looker.py | 694 | # here we just return empty so the dashboard/look goldens are unaffected. | COMMENT |
| LOW | …estion/tests/integration/dbt/jaffle_shop_manifest.json | 1 | {"metadata": {"dbt_schema_version": "https://schemas.getdbt.com/dbt/manifest/v5.json", "dbt_version": "1.1.0", "generate | CODE |
| MEDIUM | …ests/integration/azure_data_factory/test_adf_source.py | 354 | """Generate comprehensive test data for the ADF source.""" | STRING |
| MEDIUM | …/tests/integration/kafka_connect/test_kafka_connect.py | 137 | # a double and more robust check here is needed | COMMENT |
| MEDIUM | …stion/tests/integration/cassandra/setup/cassandra.yaml | 1558 | # each write which may be lower in order to facilitate availability. | COMMENT |
| MEDIUM | …a-ingestion/examples/library/dataflow_comprehensive.py | 9 | # Create a DataFlow with comprehensive metadata | COMMENT |
| MEDIUM | metadata-ingestion/examples/iceberg/create_table.py | 12 | # Define a more comprehensive schema for ski resort data | COMMENT |
| MEDIUM | metadata-ingestion/scripts/connector_registry.py | 111 | """Generate a comprehensive registry of connector metadata across all plugins.""" | STRING |
| MEDIUM | metadata-ingestion/scripts/connector_registry.py | 257 | """Generate a comprehensive connector registry for all ingestion sources.""" | STRING |
| LOW | …ata-ingestion/src/datahub/ingestion/source/superset.py | 900 | # can just return the urn directly | COMMENT |
| LOW | …data-ingestion/src/datahub/ingestion/source/openapi.py | 167 | # TODO: We should just create a requests.Session and set all the auth | COMMENT |
| LOW | …stion/src/datahub/ingestion/source/ge_data_profiler.py | 937 | # Note that we can't just call `self._get_dataset_rows(profile)` here because | COMMENT |
| LOW | …n/src/datahub/ingestion/source/looker/view_upstream.py | 1354 | # Don't throw an error, just return the original field name | COMMENT |
| LOW | …estion/src/datahub/ingestion/source/tableau/tableau.py | 1278 | # and extract the hostname, otherwise just return the connection string. | COMMENT |
| LOW | …src/datahub/ingestion/source/azure/abs_folder_utils.py | 157 | # Unlike container tags, if an object does not have tags, it will just return an empty array | COMMENT |
| MEDIUM | …ahub/ingestion/source/azure_data_factory/adf_source.py | 993 | # Get the Data Flow name using our robust lookup | COMMENT |
| MEDIUM | …src/datahub/ingestion/source/snowflake/snowflake_v2.py | 1042 | # or to handle serde errors gracefully, or to use a robust serialization format instead of pickle, | COMMENT |
| LOW | …n/src/datahub/ingestion/source/notion/notion_source.py | 680 | # Fallback if pick is not available - just use kwargs directly | COMMENT |
| MEDIUM | …n/src/datahub/ingestion/source/kafka_connect/common.py | 195 | # Confluent Cloud Kafka API configuration for comprehensive topic retrieval | COMMENT |
| MEDIUM | …atahub/ingestion/source/kafka_connect/kafka_connect.py | 414 | # First try to get all topics from Kafka REST API for comprehensive coverage | COMMENT |
| LOW | …stion/source/powerbi/rest_api_wrapper/data_resolver.py | 53 | # It is not failure so no need to log the message just return with False | COMMENT |
| LOW | …rc/datahub/ingestion/source/powerbi/m_query/_bridge.py | 146 | # If we just set _bridge_instance = None here, Python's GC decides | COMMENT |
| MEDIUM | …-ingestion/src/datahub/ingestion/source/kafka/kafka.py | 441 | # Handle comprehensive schema resolution for topics without schemas | COMMENT |
| LOW | …n/src/datahub/ingestion/source/kafka/kafka_profiler.py | 329 | # If no simple type found, just use the first one | COMMENT |
| LOW | …tion/src/datahub/ingestion/source/aws/s3_boto_utils.py | 66 | # Unlike bucket tags, if an object does not have tags, it will just return an empty array | COMMENT |
| LOW | …tahub/ingestion/source/unstructured/chunking_config.py | 348 | # Don't fail if config file doesn't exist - just use localhost | COMMENT |
| LOW | …tahub/ingestion/source/unstructured/chunking_config.py | 383 | # Don't fail if config file doesn't exist - just return None | COMMENT |
| LOW | …gestion/src/datahub/ingestion/source/git/git_import.py | 47 | # so we can just add one unconditionally. | COMMENT |
| LOW | …gestion/src/datahub/ingestion/source/git/git_import.py | 86 | # we can't just use the --branch flag of Git clone. Doing a blobless clone allows | COMMENT |
| MEDIUM⚡ | …atahub/ingestion/source/sql/hive/hive_thrift_client.py | 755 | # _fetch_*_rows() methods, enabling seamless integration with the parent class. | COMMENT |
| MEDIUM | …-ingestion/src/datahub/emitter/serialization_helper.py | 34 | # the aforementioned assumption in our tests. | COMMENT |
| LOW | …ngestion/src/datahub/utilities/prefix_batch_builder.py | 66 | # However, we'll just use a greedy algorithm for simplicity. | COMMENT |
| LOW | …ata-ingestion/src/datahub/utilities/yaml_sync_utils.py | 32 | # We should support that, but for now, we just use the sequence indent. | COMMENT |
| LOW | metadata-ingestion/src/datahub/sdk/resolver_client.py | 65 | # TODO: In auto methods, should we just create the user/domain/etc if it doesn't exist? | COMMENT |
| LOW | …a-ingestion/src/datahub/sql_parsing/sqlglot_lineage.py | 1807 | # If it fails, just return the original statement. | COMMENT |
| MEDIUM | …ata-ingestion/src/datahub/sql_parsing/sqlglot_utils.py | 222 | # The r" ?" makes it more robust to uneven spacing. | COMMENT |
| LOW | …tion/src/datahub/sql_parsing/sql_parsing_aggregator.py | 1795 | # This is a cycle, so we just return the query as-is. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | datahub-agent-context/examples/langchain/setup_dev.sh | 29 | echo " export OPENAI_API_KEY='your-api-key-here'" | CODE |
| HIGH | datahub-agent-context/examples/google_adk/setup_dev.sh | 29 | echo " export GOOGLE_API_KEY='your-api-key-here' # Gemini Developer API" | CODE |
| HIGH | …ged-datahub/datahub-api/graphql-api/getting-started.md | 29 | curl -X GET 'https://your-account.acryl.io/api/gms/config' --header <YOUR_TOKEN> | CODE |
| HIGH | docs/how-to/semantic-search-configuration.md | 21 | kubectl create secret generic openai-secret --from-literal=api-key=sk-your-api-key-here | CODE |
| HIGH | docs/how-to/semantic-search-configuration.md | 95 | OPENAI_API_KEY=sk-your-api-key-here | CODE |
| HIGH | docs/dev-guides/semantic-search/CONFIGURATION.md | 223 | OPENAI_API_KEY=sk-your-api-key-here | CODE |
| HIGH | …ct/src/app/ingest/source/builder/RecipeForm/airbyte.ts | 56 | placeholder: 'your-api-key', | CODE |
| HIGH⚡ | …ts/integration/snowplow/docs/REAL_BDP_TESTING_GUIDE.md | 40 | export SNOWPLOW_API_KEY_ID="your-api-key-id-here" | CODE |
| HIGH⚡ | …ts/integration/snowplow/docs/REAL_BDP_TESTING_GUIDE.md | 41 | export SNOWPLOW_API_KEY="your-api-key-secret-here" | CODE |
| HIGH | …tadata-ingestion/docs/sources/fivetran/fivetran_pre.md | 297 | api_key: "your_api_key" | CODE |
| HIGH | …tadata-ingestion/docs/sources/fivetran/fivetran_pre.md | 342 | api_key: "your_api_key" | CODE |
| HIGH | …ta-ingestion/docs/sources/fivetran/fivetran_recipe.yml | 74 | # api_key: "your_api_key" | COMMENT |
| HIGH | …data-ingestion/docs/sources/airbyte/airbyte_recipe.yml | 13 | # api_key: your_api_key # Alternative: API token if available | COMMENT |
| HIGH | …necone/skill_docs/PINECONE_CONNECTOR_IMPLEMENTATION.md | 255 | export PINECONE_API_KEY="your-api-key" | CODE |
| HIGH | …rce/pinecone/skill_docs/PINECONE_CONNECTOR_PLANNING.md | 120 | pc = Pinecone(api_key="YOUR_API_KEY") | CODE |
| HIGH | docs-website/generateDocsDir.ts | 726 | // everything else (code-fence placeholders like <YOUR_TOKEN>, config-table | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | perf-test/authz-perf/lib/metadata.py | 74 | CODE | |
| LOW | …ub-actions/src/datahub_actions/event/event_envelope.py | 50 | CODE | |
| LOW | …e-test/tests/library_examples/test_library_examples.py | 51 | CODE | |
| LOW | smoke-test/tests/cli/user_cmd/test_user_add.py | 55 | CODE | |
| LOW | …ts/zdu/framework/phases/skip_already_migrated_sweep.py | 82 | CODE | |
| LOW | …e-test/tests/zdu/framework/phases/kill_switch_sweep.py | 76 | CODE | |
| LOW | …e-test/tests/zdu/framework/phases/batch_delay_sweep.py | 67 | CODE | |
| LOW | …ke-test/tests/knowledge/document_search_filter_test.py | 32 | CODE | |
| LOW | …e-test/tests/knowledge/document_change_history_test.py | 28 | CODE | |
| LOW | smoke-test/tests/semantic/test_semantic_search.py | 147 | CODE | |
| LOW | …tion-modules/gx-plugin/src/datahub_gx_plugin/action.py | 90 | CODE | |
| LOW | …/src/datahub_dagster_plugin/sensors/datahub_sensors.py | 73 | CODE | |
| LOW | …les/prefect-plugin/src/prefect_datahub/example/flow.py | 14 | CODE | |
| LOW | metadata-ingestion/tests/unit/test_transform_dataset.py | 1655 | CODE | |
| LOW | metadata-ingestion/tests/unit/test_transform_dataset.py | 3262 | CODE | |
| LOW | metadata-ingestion/tests/unit/test_transform_dataset.py | 3433 | CODE | |
| LOW | metadata-ingestion/tests/unit/hive_test_utils.py | 18 | CODE | |
| LOW | metadata-ingestion/tests/unit/glue/test_glue_source.py | 100 | CODE | |
| LOW | …data-ingestion/tests/unit/hex/test_document_builder.py | 37 | CODE | |
| LOW | …stion/tests/unit/bigquery/test_bigquery_policy_tags.py | 30 | CODE | |
| LOW | …/tests/unit/snowflake/test_snowflake_semantic_model.py | 71 | CODE | |
| LOW | metadata-ingestion/tests/unit/odcs/test_odcs_mapper.py | 58 | CODE | |
| LOW | …tadata-ingestion/tests/integration/snowflake/common.py | 197 | CODE | |
| LOW | metadata-ingestion/src/datahub/entrypoints.py | 353 | CODE | |
| LOW | …a-ingestion/src/datahub/ingestion/recording/archive.py | 227 | CODE | |
| LOW | …ub/ingestion/source/looker/looker_template_language.py | 350 | CODE | |
| LOW | …src/datahub/ingestion/source/tableau/tableau_common.py | 1118 | CODE | |
| LOW | …a-ingestion/src/datahub/ingestion/source/hex/mapper.py | 84 | CODE | |
| LOW | …b/ingestion/source/sqlalchemy_profiler/base_adapter.py | 406 | CODE | |
| LOW | …ta-ingestion/src/datahub/ingestion/source/omni/omni.py | 442 | CODE | |
| LOW | …gestion/src/datahub/ingestion/source/sql/clickhouse.py | 453 | CODE | |
| LOW | …ub/ingestion/source/sql/athena_properties_extractor.py | 219 | CODE | |
| LOW | …ngestion/src/datahub/ingestion/source/sql/sql_utils.py | 62 | CODE | |
| LOW | …ngestion/src/datahub/ingestion/source/sql/sql_utils.py | 126 | CODE | |
| LOW | …adata-ingestion/src/datahub/ingestion/graph/openapi.py | 229 | CODE | |
| LOW | …adata-ingestion/src/datahub/ingestion/graph/openapi.py | 337 | CODE | |
| LOW | …adata-ingestion/src/datahub/ingestion/graph/openapi.py | 413 | CODE | |
| LOW | …adata-ingestion/src/datahub/ingestion/graph/openapi.py | 508 | CODE | |
| LOW | …tadata-ingestion/src/datahub/ingestion/graph/client.py | 975 | CODE | |
| LOW | …tadata-ingestion/src/datahub/ingestion/graph/client.py | 1050 | CODE | |
| LOW | …tadata-ingestion/src/datahub/ingestion/graph/client.py | 1201 | CODE | |
| LOW | metadata-ingestion/src/datahub/emitter/rest_emitter.py | 482 | CODE | |
| LOW | metadata-ingestion/src/datahub/emitter/mcp_builder.py | 310 | CODE | |
| LOW | metadata-ingestion/src/datahub/emitter/mcp_builder.py | 440 | CODE | |
| LOW | …data-ingestion/src/datahub/cli/specific/file_loader.py | 26 | CODE | |
| LOW | metadata-ingestion/src/datahub/sdk/glossary_node.py | 74 | CODE | |
| LOW | metadata-ingestion/src/datahub/sdk/datajob.py | 67 | CODE | |
| LOW | metadata-ingestion/src/datahub/sdk/mlmodel.py | 64 | CODE | |
| LOW | metadata-ingestion/src/datahub/sdk/mlmodel.py | 315 | CODE | |
| LOW | metadata-ingestion/src/datahub/sdk/semantic_model.py | 167 | CODE | |
| LOW | metadata-ingestion/src/datahub/sdk/semantic_model.py | 533 | CODE | |
| LOW | metadata-ingestion/src/datahub/sdk/chart.py | 62 | CODE | |
| LOW | metadata-ingestion/src/datahub/sdk/mlmodelgroup.py | 50 | CODE | |
| LOW | metadata-ingestion/src/datahub/sdk/container.py | 61 | CODE | |
| LOW | metadata-ingestion/src/datahub/sdk/glossary_term.py | 102 | CODE | |
| LOW | metadata-ingestion/src/datahub/sdk/dataset.py | 510 | CODE | |
| LOW | metadata-ingestion/src/datahub/sdk/dashboard.py | 64 | CODE | |
| LOW | metadata-ingestion/src/datahub/sdk/metric.py | 95 | CODE | |
| LOW | metadata-ingestion/src/datahub/sdk/document.py | 343 | CODE | |
| LOW | metadata-ingestion/src/datahub/sdk/document.py | 480 | CODE | |
| 3 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | docker/airflow/docker-compose.yaml | 42 | # Feel free to modify this file to suit your needs. | COMMENT |
| MEDIUM | …kedin/metadata/registry/SchemaRegistryServiceImpl.java | 415 | // This is a basic implementation - in production you'd want more sophisticated checking | COMMENT |
| MEDIUM | …kedin/metadata/registry/SchemaRegistryServiceImpl.java | 432 | // This is a basic implementation - in production you'd want more sophisticated checking | COMMENT |
| LOW | …ub/client/v2/entity/RequiresMutableAnnotationTest.java | 15 | * <p>This test ensures developers don't forget to annotate mutation methods, which would bypass | COMMENT |
| MEDIUM | …stion/tests/integration/cassandra/setup/cassandra.yaml | 54 | # initial_token allows you to specify tokens manually. While you can use it with | COMMENT |
| MEDIUM | …stion/tests/integration/cassandra/setup/cassandra.yaml | 819 | # you may want to adjust max_value_size accordingly. This should be positive and less than 2048. | COMMENT |
| MEDIUM | …-ingestion/tests/integration/azure_ad/test_azure_ad.py | 126 | # Azure offers a tool called 'graph-explorer' that you can use to generate fake data, | COMMENT |
| LOW | …n/src/datahub/ingestion/source/looker/looker_source.py | 328 | # for measure, we can also make sure to index the underlying field that the measure uses | COMMENT |
| LOW | …b/ingestion/source/state/redundant_run_skip_handler.py | 207 | # make sure to consider complete time bucket for usage | COMMENT |
| LOW | metadata-ingestion/src/datahub/cli/docker_check.py | 91 | # Yield the client and make sure to close it. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs/troubleshooting/quickstart.md | 250 | ## I've modified the default user.props file to include a custom username and password, but I don't see the new user(s) | COMMENT |
| HIGH | …ns/datahub-demo-dataset-governance-validator/README.md | 34 | # In this example, we start with the current stable DataHub image- this can be any GMS image however. | COMMENT |
| HIGH | …gestion/tests/unit/sql_parsing/test_sqlglot_lineage.py | 1075 | # In this example, output col1 should come from table3 and not table1, since the cte is unused. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | metadata-ingestion/tests/unit/test_mode_source.py | 568 | CODE | |
| MEDIUM | metadata-ingestion/tests/unit/test_mode_source.py | 583 | CODE | |
| MEDIUM | metadata-ingestion/tests/unit/test_mode_source.py | 598 | CODE | |
| MEDIUM | metadata-ingestion/tests/unit/test_mode_source.py | 615 | CODE | |
| MEDIUM | metadata-ingestion/tests/unit/test_oracle_source.py | 1847 | CODE | |
| MEDIUM | …-ingestion/tests/unit/test_unity_catalog_usage_join.py | 1863 | CODE | |
| MEDIUM | …-ingestion/tests/unit/test_unity_catalog_usage_join.py | 1124 | CODE | |
| MEDIUM | …tests/unit/bigquery/test_bigquery_queries_extractor.py | 1072 | CODE | |
| MEDIUM | …gestion/source/vertexai/vertexai_training_extractor.py | 205 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …/com/linkedin/metadata/service/LineageServiceTest.java | 116 | // TODO: Add tests for permissions once we add permissions for updating lineage | COMMENT |
| LOW | …pp/entityV2/shared/tabs/Dataset/Queries/QueriesTab.tsx | 47 | // TODO: implement search filtering properly | COMMENT |
| LOW | …yV2/summary/properties/hooks/usePropertiesFromAsset.ts | 10 | // TODO: implement loading and transformation of asset properties | COMMENT |
| LOW | datahub-web-react/src/app/homeV3/modules/utils.ts | 22 | // TODO: implement getting of the correct description | COMMENT |
| LOW | …tadata-ingestion/tests/integration/snowflake/common.py | 415 | # TODO: Add tests for view pagination. | STRING |
| LOW | …tadata-ingestion/tests/integration/snowflake/common.py | 595 | # TODO: Add tests for stream pagination. | STRING |
| LOW | metadata-ingestion/src/datahub/cli/lineage_cli.py | 279 | # TODO: implement get_paths_between in LineageClient | COMMENT |
| LOW | metadata-ingestion/src/datahub/sdk/entity_client.py | 115 | # TODO: add error handling around this with a suggested alternative if not yet supported | COMMENT |
| LOW | metadata-ingestion/src/datahub/sdk/entity.py | 197 | # TODO: Add validation to ensure that an "extra aspect" does not conflict | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …gent-skills/test-review/scripts/detect-test-changes.sh | 14 | # Usage: | COMMENT |
| LOW | …sts/integration/hive-metastore/docker-compose.hms3.yml | 13 | # Usage: | COMMENT |
| LOW⚡ | …integration/hive-metastore/kerberos/test-connection.sh | 8 | # Usage: | COMMENT |
| LOW | …tests/integration/recording/test_recording_workflow.sh | 4 | # Usage: | COMMENT |
| LOW | metadata-ingestion/examples/ai/dh_ai_client_sample.py | 40 | # Example usage | COMMENT |
| LOW | …n/src/datahub/api/entities/external/restricted_text.py | 42 | # Usage example | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …ub-agent-context/tests/unit/snowflake/test_udf_base.py | 118 | assert "def test_function():" in result | CODE |
| LOW | smoke-test/tests/utils.py | 270 | def test_function(): | STRING |
| LOW | …n-modules/dagster-plugin/examples/advanced_ops_jobs.py | 52 | def do_stuff(): | CODE |
| LOW | …a-ingestion-modules/dagster-plugin/examples/ops_job.py | 38 | def do_stuff(): | CODE |
| LOW | …stion/tests/unit/vertexai/test_vertexai_ml_metadata.py | 88 | def helper(self, mock_metadata_client, ml_metadata_config, mock_uri_parser): | CODE |
| LOW⚡ | …tests/integration/snowflake/test_snowflake_failures.py | 27 | def my_function(query): | CODE |
| LOW⚡ | …tests/integration/snowflake/test_snowflake_failures.py | 38 | def my_function(query): | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs/managed-datahub/release-notes/v_0_3_12.md | 37 | - Fix incorrect/missing closing parenthesis in links generated by AI | CODE |