An Open Standard for lineage metadata collection
This report presents the forensic synthetic code analysis of OpenLineage/OpenLineage, a Java project with 2,539 GitHub stars. SynthScan v2.0 examined 337,579 lines of code across 2322 source files, recording 1099 pattern matches distributed across 22 syntactic categories. The overall adjusted score of 5.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).
Longitudinal tracking requires multiple scan runs. Once this repository is re-scanned after new commits land, this chart will visualise how the synthetic code signal evolves over time — enabling you to detect whether AI authorship is growing, stabilising, or being actively corrected by human engineers.
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 1099 distinct pattern matches across 22 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 | proxy/fluentd/lib/fluent/plugin/parser_openlineage.rb | 93 | def rewrite_schema_to_include_facets(schema) | CODE |
| LOW | proxy/fluentd/lib/fluent/plugin/parser_openlineage.rb | 131 | def add_ref_as_parent_property(schema, parent, facet_name, property) | CODE |
| LOW | proxy/fluentd/lib/fluent/plugin/parser_openlineage.rb | 142 | def find_parent_object_getter(parent) | CODE |
| LOW | integration/dbt/tests/test_main.py | 86 | def test_consume_structured_logs(command_line, os_envs, function_kwargs, monkeypatch): | CODE |
| LOW | integration/dbt/tests/test_main.py | 137 | def _setup_local_artifacts_mocks(monkeypatch, env): | CODE |
| LOW | integration/dbt/tests/test_main.py | 159 | def test_consume_local_artifacts_propagates_root_parent_metadata(monkeypatch): | CODE |
| LOW | integration/dbt/tests/test_main.py | 191 | def test_consume_local_artifacts_root_when_no_external_parent(monkeypatch): | CODE |
| LOW | integration/dbt/tests/test_main.py | 216 | def test_consume_local_artifacts_explicit_root_different_from_parent(monkeypatch): | CODE |
| LOW | integration/dbt/tests/test_main.py | 254 | def test_consume_local_artifacts_partial_root_falls_back_to_parent(monkeypatch): | CODE |
| LOW | …egration/dbt/tests/integration/test_structured_logs.py | 10 | def test_structured_logs_event_hierarchy(self, dbt_runner, reset_test_server): | CODE |
| LOW | …egration/dbt/tests/integration/test_structured_logs.py | 157 | def test_singular_test_data_quality_assertions(self, dbt_runner, reset_test_server): | CODE |
| LOW | …egration/dbt/tests/integration/test_structured_logs.py | 230 | def test_singular_test_multi_table_data_quality_assertions(self, dbt_runner, reset_test_server): | CODE |
| LOW | integration/dbt/tests/integration/test_integration.py | 15 | def test_basic_seed_to_staging_pipeline(self, dbt_runner, reset_test_server): | CODE |
| LOW | integration/dbt/tests/integration/test_integration.py | 43 | def test_full_pipeline_lineage(self, dbt_runner, reset_test_server): | CODE |
| LOW | integration/dbt/tests/integration/test_integration.py | 84 | def test_empty_model_execution(self, dbt_runner, reset_test_server): | CODE |
| LOW | integration/dbt/tests/integration/test_integration.py | 121 | def test_local_artifacts_mode(self, dbt_runner, reset_test_server): | CODE |
| LOW | integration/dbt/tests/integration/test_integration.py | 139 | def test_job_name_local_artifacts_mode(self, dbt_runner, reset_test_server): | CODE |
| LOW | integration/dbt/tests/integration/test_integration.py | 164 | def test_event_schema_validation(self, dbt_runner, reset_test_server): | CODE |
| LOW⚡ | integration/common/tests/test_utils.py | 16 | def test_nullable_chain_fails(): | CODE |
| LOW⚡ | integration/common/tests/test_utils.py | 21 | def test_nullable_chain_works(): | CODE |
| LOW⚡ | integration/common/tests/test_utils.py | 29 | def test_nullable_chain_does_not_mutate_chain(): | CODE |
| LOW⚡ | integration/common/tests/test_utils.py | 37 | def test_parse_single_arg_does_not_exist(): | CODE |
| LOW⚡ | integration/common/tests/test_utils.py | 42 | def test_parse_single_arg_next(): | CODE |
| LOW⚡ | integration/common/tests/test_utils.py | 47 | def test_parse_single_arg_equals(): | CODE |
| LOW⚡ | integration/common/tests/test_utils.py | 52 | def test_parse_single_arg_gets_first_key(): | CODE |
| LOW⚡ | integration/common/tests/test_utils.py | 56 | def test_parse_single_arg_default(): | CODE |
| LOW⚡ | integration/common/tests/test_utils.py | 61 | def test_parse_single_arg_trailing_key_uses_default(): | CODE |
| LOW | integration/common/tests/test_utils.py | 107 | def test_add_command_line_arg(command_line, arg_name, arg_value, expected_command_line): | CODE |
| LOW | integration/common/tests/test_utils.py | 136 | def test_add_or_replace_command_line_option(command_line, option, replace_option, expected_command_line): | CODE |
| LOW | integration/common/tests/test_utils.py | 166 | def test_remove_command_line_option(command_line, command_option, expected_command_line): | CODE |
| LOW | integration/common/tests/test_utils.py | 186 | def test_incremental_file_reader(incremental_reads, expected_lines): | CODE |
| LOW | integration/common/tests/test_snowflake.py | 52 | def test_snowflake_sqlite_account_urls(source, target): | CODE |
| LOW | integration/common/tests/test_dataset.py | 44 | def test_dataset_with_db_name(source): | CODE |
| LOW | integration/common/tests/test_dataset.py | 49 | def test_dataset_to_openlineage(table_schema): | CODE |
| LOW | integration/common/tests/dbt/test_meta_owner.py | 33 | def test_missing_owner_emits_no_facet(processor): | CODE |
| LOW | integration/common/tests/dbt/test_meta_owner.py | 38 | def test_string_owner_emits_single(processor): | CODE |
| LOW | integration/common/tests/dbt/test_meta_owner.py | 53 | def test_regression_single_element_list(processor): | CODE |
| LOW | integration/common/tests/dbt/test_dbt_local.py | 65 | def test_dbt_parse_and_compare_event(path, job_name, parent_run_metadata): | CODE |
| LOW | integration/common/tests/dbt/test_dbt_local.py | 92 | def test_dbt_parse_dbt_test_event(mock_datetime, mock_uuid, parent_run_metadata, path): | CODE |
| LOW | integration/common/tests/dbt/test_dbt_local.py | 121 | def test_dbt_parse_singular_test_event(mock_datetime, mock_uuid, parent_run_metadata): | CODE |
| LOW | integration/common/tests/dbt/test_dbt_local.py | 162 | def test_dbt_parse_profile_with_env_vars(mock_uuid, parent_run_metadata): | CODE |
| LOW⚡ | integration/common/tests/dbt/test_dbt_local.py | 192 | def test_jinja_undefined_variable(jinja_env): | CODE |
| LOW⚡ | integration/common/tests/dbt/test_dbt_local.py | 197 | def test_jinja_undefined_method(jinja_env): | CODE |
| LOW⚡ | integration/common/tests/dbt/test_dbt_local.py | 202 | def test_jinja_defined_method(jinja_env): | CODE |
| LOW⚡ | integration/common/tests/dbt/test_dbt_local.py | 209 | def test_jinja_defined_variable(jinja_env): | CODE |
| LOW⚡ | integration/common/tests/dbt/test_dbt_local.py | 214 | def test_jinja_undefined_method_with_args(jinja_env): | CODE |
| LOW | integration/common/tests/dbt/test_dbt_local.py | 245 | def test_lazy_load_jinja_dict(jinja_env): | CODE |
| LOW | integration/common/tests/dbt/test_dbt_local.py | 257 | def test_logging_handler_warns(): | CODE |
| LOW | integration/common/tests/dbt/test_dbt_local.py | 268 | def test_logging_handler_does_not_warn(): | CODE |
| LOW | integration/common/tests/dbt/test_dbt_local.py | 277 | def test_build_target_path_with_user_defined(): | CODE |
| LOW | integration/common/tests/dbt/test_dbt_local.py | 289 | def test_build_target_path_with_envvar(): | CODE |
| LOW⚡ | integration/common/tests/dbt/test_facets.py | 10 | def test_facet_copy_serialization_dbt_version_run_facet(): | CODE |
| LOW⚡ | integration/common/tests/dbt/test_facets.py | 16 | def test_facet_copy_serialization_dbt_run_run_facet(): | CODE |
| LOW⚡ | integration/common/tests/dbt/test_facets.py | 24 | def test_facet_copy_serialization_dbt_node_job_facet(): | CODE |
| LOW | integration/common/tests/dbt/test_dbt.py | 17 | def test_seed_snapshot_nodes_do_not_throw(): | CODE |
| LOW⚡ | integration/common/tests/dbt/test_processor.py | 510 | def test_all_pass_emits_complete(self, processor): | CODE |
| LOW⚡ | integration/common/tests/dbt/test_processor.py | 516 | def test_error_severity_failure_emits_fail(self, processor): | CODE |
| LOW⚡ | integration/common/tests/dbt/test_processor.py | 522 | def test_warn_severity_failure_emits_complete(self, processor): | CODE |
| LOW⚡ | integration/common/tests/dbt/test_processor.py | 530 | def test_mixed_pass_and_warn_failure_emits_complete(self, processor): | CODE |
| LOW⚡ | integration/common/tests/dbt/test_processor.py | 537 | def test_mixed_error_and_warn_failure_emits_fail(self, processor): | CODE |
| 584 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | …est/java/io/openlineage/hive/InMemoryHiveTestBase.java | 101 | String jdbcDriver = org.apache.derby.jdbc.EmbeddedDriver.class.getName(); | CODE |
| CRITICAL | …/test/java/io/openlineage/hive/util/HiveUtilsTest.java | 20 | new org.apache.hadoop.hive.metastore.api.Table(); | CODE |
| CRITICAL | …/test/java/io/openlineage/hive/util/HiveUtilsTest.java | 34 | new org.apache.hadoop.hive.metastore.api.Table(); | CODE |
| CRITICAL | …/test/java/io/openlineage/hive/util/HiveUtilsTest.java | 49 | new org.apache.hadoop.hive.metastore.api.Table(); | CODE |
| CRITICAL | …java/io/openlineage/spark/agent/Spark4CompatUtils.java | 36 | org.apache.commons.lang3.reflect.MethodUtils.invokeMethod(queryExecution, "sparkSession"); | CODE |
| CRITICAL | …nlineage/spark/agent/OpenLineageSparkListenerTest.java | 183 | // org.apache.spark.sql.SparkSession org.apache.spark.sql.execution.QueryExecution.sparkSession() | COMMENT |
| CRITICAL | …lineage/spark/agent/lifecycle/RddExecutionContext.java | 573 | path = org.apache.hadoop.mapred.FileOutputFormat.getOutputPath(jobConf); | CODE |
| CRITICAL | …lineage/spark/agent/lifecycle/RddExecutionContext.java | 579 | org.apache.hadoop.mapreduce.lib.output.FileOutputFormat.getOutputPath(new Job(jobConf)); | CODE |
| CRITICAL | …park/agent/lifecycle/Spark34DatasetBuilderFactory.java | 133 | return new io.openlineage.spark33.agent.lifecycle.plan.CreateReplaceDatasetBuilder(context); | CODE |
| CRITICAL | …park/agent/lifecycle/Spark32DatasetBuilderFactory.java | 118 | return new io.openlineage.spark33.agent.lifecycle.plan.CreateReplaceDatasetBuilder(context); | CODE |
| CRITICAL | …cycle/SparkOpenLineageExtensionVisitorWrapperTest.java | 71 | new io.openlineage.client.utils.DatasetIdentifier.Symlink( | CODE |
| CRITICAL | …cycle/SparkOpenLineageExtensionVisitorWrapperTest.java | 100 | new io.openlineage.client.utils.DatasetIdentifier.Symlink( | CODE |
| CRITICAL | …nlineage/spark/agent/util/RddDatasetInfoExtractor.java | 131 | org.apache.hadoop.mapreduce.lib.input.FileInputFormat.getInputPaths( | CODE |
| CRITICAL | …park/agent/lifecycle/HadoopRDDInputDatasetBuilder.java | 69 | org.apache.hadoop.mapred.FileInputFormat.getInputPaths( | CODE |
| CRITICAL | …park/agent/lifecycle/HadoopRDDInputDatasetBuilder.java | 74 | org.apache.hadoop.mapreduce.lib.input.FileInputFormat.getInputPaths( | CODE |
| CRITICAL | …e/spark/agent/lifecycle/plan/KustoRelationVisitor.java | 154 | io.openlineage.spark.agent.util.ScalaConversionUtils.fromMap(options); | CODE |
| CRITICAL | …spark3/agent/lifecycle/plan/column/VisitorFactory.java | 43 | new io.openlineage.spark3.agent.lifecycle.plan.column.visitors.operator.WindowVisitor(), | CODE |
| CRITICAL⚡ | website/docs/client/java/developing/logging.md | 251 | at io.openlineage.client.transports.HttpTransport.emit(HttpTransport.java:113) | CODE |
| CRITICAL⚡ | website/docs/client/java/developing/logging.md | 255 | at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.jav | CODE |
| CRITICAL⚡ | website/docs/client/java/developing/logging.md | 256 | at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java: | CODE |
| CRITICAL⚡ | website/docs/client/java/developing/logging.md | 257 | at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:393) | CODE |
| CRITICAL⚡ | website/docs/client/java/developing/logging.md | 258 | at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236) | CODE |
| CRITICAL⚡ | website/docs/client/java/developing/logging.md | 259 | at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:186) | CODE |
| CRITICAL⚡ | website/docs/client/java/developing/logging.md | 260 | at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89) | CODE |
| CRITICAL⚡ | website/docs/client/java/developing/logging.md | 261 | at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110) | CODE |
| CRITICAL⚡ | website/docs/client/java/developing/logging.md | 262 | at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185) | CODE |
| CRITICAL⚡ | website/docs/client/java/developing/logging.md | 263 | at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83) | CODE |
| CRITICAL⚡ | website/docs/client/java/developing/logging.md | 264 | at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:108) | CODE |
| CRITICAL⚡ | website/docs/client/java/developing/logging.md | 265 | at io.openlineage.client.transports.HttpTransport.emit(HttpTransport.java:108) | CODE |
| CRITICAL⚡ | website/docs/client/java/developing/logging.md | 274 | at org.apache.http.conn.socket.PlainConnectionSocketFactory.connectSocket(PlainConnectionSocketFactory.java:75) | CODE |
| CRITICAL⚡ | website/docs/client/java/developing/logging.md | 275 | at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.jav | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | generator/go/render/spec/renderer.go | 75 | // ── Internal types ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | generator/go/render/spec/renderer.go | 85 | // ── Emitters ────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | generator/go/render/spec/renderer.go | 128 | // ── BaseEvent ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | generator/go/render/spec/renderer.go | 155 | // ── Typed event structs ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | generator/go/render/spec/renderer.go | 206 | // ── Emittable marker methods ───────────────────────────────────────────── | COMMENT |
| MEDIUM | generator/go/render/spec/renderer.go | 241 | // ── Property collection ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | generator/go/render/spec/renderer.go | 287 | // ── Type resolution ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | generator/go/render/spec/renderer.go | 386 | // ── Helpers ─────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | generator/go/render/client/facets.go | 71 | // ── 1. Facet root structs ───────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | generator/go/render/client/facets.go | 76 | // ── 2. Enum types + constants ───────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | generator/go/render/client/facets.go | 81 | // ── 3. Union interfaces, raw wrappers, and seal methods ─────────────────── | COMMENT |
| MEDIUM⚡ | generator/go/render/client/facets.go | 86 | // ── 4. Nested concrete helper structs (unique by TypeName) ─────────────── | COMMENT |
| MEDIUM⚡ | generator/go/render/client/facets.go | 113 | // ── 1. Container structs ────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | generator/go/render/client/facets.go | 116 | // ── 2. Apply + constructor + With* per facet ────────────────────────────── | COMMENT |
| MEDIUM⚡ | generator/go/render/client/facets.go | 121 | // ── 3. Variant constructors for all union types ─────────────────────────── | COMMENT |
| MEDIUM⚡ | generator/go/render/client/facets.go | 131 | // ── Facet root struct ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | generator/go/render/client/facets.go | 165 | // ── Nested struct ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | generator/go/render/client/facets.go | 198 | // ── Container structs ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | generator/go/render/client/facets.go | 243 | // ── Apply + constructor + With* ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | generator/go/render/client/facets.go | 394 | // ── OL Go type helpers ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | generator/go/render/client/facets.go | 562 | // ── Nested type collection ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | generator/go/render/client/facets.go | 820 | // ── Enum type + constants ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | generator/go/render/client/facets.go | 848 | // ── Union interface + raw wrapper ───────────────────────────────────────────── | COMMENT |
| MEDIUM | generator/go/render/client/facets.go | 975 | // ── Naming / kind helpers ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 34 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 36 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 156 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 158 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 172 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 174 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 194 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 196 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 234 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 236 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 273 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 275 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 347 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 349 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 376 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 378 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 543 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | client/python/tests/test_source_code_location.py | 545 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | client/python/tests/test_source_code_location.py | 82 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | client/python/tests/test_source_code_location.py | 84 | # --------------------------------------------------------------------------- | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | website/docs/integrations/feast.md | 167 | api_key: "your-api-key" | CODE |
| HIGH | website/docs/integrations/feast.md | 178 | export FEAST_OPENLINEAGE_CONSUMER_API_KEY=your-api-key | CODE |
| HIGH⚡ | website/docs/integrations/feast.md | 227 | OPENLINEAGE_API_KEY = "your-api-key" | CODE |
| HIGH⚡ | website/docs/integrations/feast.md | 237 | spark.openlineage.transport.auth.apiKey=your-api-key | CODE |
| HIGH⚡ | website/docs/integrations/feast.md | 244 | OPENLINEAGE_API_KEY: "your-api-key" | CODE |
| HIGH | website/docs/client/python/configuration.md | 363 | OPENLINEAGE__TRANSPORT__AUTH__API_KEY=your-api-key | CODE |
| HIGH | website/docs/client/python/configuration.md | 390 | apiKey: your-api-key | CODE |
| HIGH | website/docs/client/python/configuration.md | 402 | apiKey: your-api-key | CODE |
| HIGH | website/docs/client/python/configuration.md | 434 | "apiKey": "your-api-key", | CODE |
| HIGH | website/docs/client/java/partials/java_transport.md | 302 | apiKey: your-api-key | CODE |
| HIGH | website/docs/client/java/partials/java_transport.md | 314 | apiKey: your-api-key | CODE |
| HIGH | website/docs/client/java/partials/java_transport.md | 343 | spark.openlineage.transport.auth.apiKey=your-api-key | CODE |
| HIGH | website/docs/client/java/partials/java_transport.md | 368 | openlineage.transport.auth.apiKey=your-api-key | CODE |
| HIGH | website/docs/client/java/partials/java_transport.md | 396 | jwtTokenProvider.setApiKey("your-api-key"); | CODE |
| HIGH | client/go/README.md | 48 | APIKey: "your-api-key", | CODE |
| HIGH | client/go/README.md | 256 | APIKey: "your-api-key", // optional | CODE |
| HIGH⚡ | client/python/tests/test_client.py | 814 | '"auth": {"type": "api_key", "apiKey": "YOUR_API_KEY"}}', | CODE |
| HIGH⚡ | client/python/tests/test_client.py | 825 | assert transport.config.auth.api_key == "YOUR_API_KEY" | CODE |
| HIGH⚡ | client/python/tests/test_client.py | 833 | "OPENLINEAGE_API_KEY": "YOUR_API_KEY", | CODE |
| HIGH⚡ | client/python/tests/test_client.py | 845 | assert transport.config.auth.api_key == "YOUR_API_KEY" | CODE |
| HIGH | client/python/src/openlineage/client/transport/http.py | 76 | "apiKey": "your-api-key", | STRING |
| HIGH | …io/openlineage/client/transports/JwtTokenProvider.java | 56 | * apiKey: your-api-key | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | integration/common/src/openlineage/common/models.py | 9 | CODE | |
| LOW | integration/common/src/openlineage/common/__init__.py | 4 | CODE | |
| LOW | …common/src/openlineage/common/provider/dbt/__init__.py | 4 | CODE | |
| LOW | …common/src/openlineage/common/provider/dbt/__init__.py | 5 | CODE | |
| LOW | …common/src/openlineage/common/provider/dbt/__init__.py | 6 | CODE | |
| LOW | …common/src/openlineage/common/provider/dbt/__init__.py | 7 | CODE | |
| LOW | …ommon/src/openlineage/common/provider/dbt/processor.py | 3 | CODE | |
| LOW | …lineage/common/provider/great_expectations/__init__.py | 4 | CODE | |
| LOW | …egration/common/src/openlineage/common/sql/__init__.py | 6 | CODE | |
| LOW | …egration/common/src/openlineage/common/sql/__init__.py | 6 | CODE | |
| LOW | …egration/common/src/openlineage/common/sql/__init__.py | 6 | CODE | |
| LOW | …egration/common/src/openlineage/common/sql/__init__.py | 6 | CODE | |
| LOW | …egration/common/src/openlineage/common/sql/__init__.py | 6 | CODE | |
| LOW | client/python/tests/test_composite.py | 3 | CODE | |
| LOW | client/python/tests/test_utils.py | 3 | CODE | |
| LOW | client/python/tests/conftest.py | 3 | CODE | |
| LOW | client/python/tests/test_source_code_location.py | 3 | CODE | |
| LOW | client/python/tests/test_kafka.py | 3 | CODE | |
| LOW | client/python/tests/test_async_http.py | 3 | CODE | |
| LOW | client/python/tests/transport.py | 3 | CODE | |
| LOW | client/python/tests/test_facet.py | 3 | CODE | |
| LOW | client/python/tests/test_http_integration.py | 3 | CODE | |
| LOW | client/python/tests/test_factory.py | 3 | CODE | |
| LOW | client/python/tests/test_gcplineage.py | 3 | CODE | |
| LOW | client/python/tests/test_facet_v2.py | 3 | CODE | |
| LOW | client/python/tests/test_http.py | 3 | CODE | |
| LOW | client/python/tests/test_amazon_datazone.py | 4 | CODE | |
| LOW | client/python/tests/test_datadog.py | 3 | CODE | |
| LOW | client/python/tests/test_msk_iam.py | 3 | CODE | |
| LOW | client/python/tests/test_events.py | 3 | CODE | |
| LOW | client/python/tests/test_client.py | 3 | CODE | |
| LOW | client/python/tests/test_uuid.py | 3 | CODE | |
| LOW | client/python/tests/test_jwt_token_provider.py | 3 | CODE | |
| LOW | …nt/python/tests/integration/test_server/test_server.py | 3 | CODE | |
| LOW | client/python/tests/generator/test_cli.py | 3 | CODE | |
| LOW | client/python/tests/generator/test_base.py | 3 | CODE | |
| LOW | client/python/tests/transform/test_transform.py | 3 | CODE | |
| LOW | client/python/src/openlineage/client/tags.py | 3 | CODE | |
| LOW | client/python/src/openlineage/client/git.py | 3 | CODE | |
| LOW | client/python/src/openlineage/client/client.py | 3 | CODE | |
| LOW | client/python/src/openlineage/client/serde.py | 3 | CODE | |
| LOW | client/python/src/openlineage/client/constants.py | 3 | CODE | |
| LOW | client/python/src/openlineage/client/__init__.py | 3 | CODE | |
| LOW | client/python/src/openlineage/client/__init__.py | 7 | CODE | |
| LOW | client/python/src/openlineage/client/__init__.py | 7 | CODE | |
| LOW | client/python/src/openlineage/client/__init__.py | 8 | CODE | |
| LOW | client/python/src/openlineage/client/utils.py | 3 | CODE | |
| LOW | client/python/src/openlineage/client/filter.py | 3 | CODE | |
| LOW | client/python/src/openlineage/client/facet_v2.py | 4 | CODE | |
| LOW | client/python/src/openlineage/client/facet_v2.py | 4 | CODE | |
| LOW | client/python/src/openlineage/client/facet_v2.py | 4 | CODE | |
| LOW | client/python/src/openlineage/client/facet_v2.py | 4 | CODE | |
| LOW | client/python/src/openlineage/client/facet_v2.py | 4 | CODE | |
| LOW | client/python/src/openlineage/client/facet_v2.py | 4 | CODE | |
| LOW | client/python/src/openlineage/client/facet_v2.py | 4 | CODE | |
| LOW | client/python/src/openlineage/client/facet_v2.py | 4 | CODE | |
| LOW | client/python/src/openlineage/client/facet_v2.py | 4 | CODE | |
| LOW | client/python/src/openlineage/client/facet_v2.py | 4 | CODE | |
| LOW | client/python/src/openlineage/client/facet_v2.py | 4 | CODE | |
| LOW | client/python/src/openlineage/client/facet_v2.py | 4 | CODE | |
| 83 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | integration/common/tests/dbt/snapshot/dbt_project.yml | 31 | # In this example config, we tell dbt to build all models in the example/ | COMMENT |
| HIGH | integration/common/tests/dbt/alias/dbt_project.yml | 30 | # In this example config, we tell dbt to build all models in the example/ directory | COMMENT |
| HIGH | integration/common/tests/dbt/large/dbt_project.yml | 31 | # In this example config, we tell dbt to build all models in the example/ directory | COMMENT |
| HIGH | integration/common/tests/dbt/fail/dbt_project.yml | 31 | # In this example config, we tell dbt to build all models in the example/ directory | COMMENT |
| HIGH | integration/common/tests/dbt/test/dbt_project.yml | 31 | # In this example config, we tell dbt to build all models in the example/ directory | COMMENT |
| HIGH | integration/common/tests/dbt/catalog/dbt_project.yml | 31 | # In this example config, we tell dbt to build all models in the example/ directory | COMMENT |
| HIGH | …tion/common/tests/dbt/no_test_metadata/dbt_project.yml | 31 | # In this example config, we tell dbt to build all models in the example/ directory | COMMENT |
| HIGH | integration/common/tests/dbt/small/dbt_project.yml | 30 | # In this example config, we tell dbt to build all models in the example/ directory | COMMENT |
| HIGH | integration/common/tests/dbt/env_vars/dbt_project.yml | 31 | # In this example config, we tell dbt to build all models in the example/ directory | COMMENT |
| HIGH | integration/common/tests/dbt/profiles/dbt_project.yml | 31 | # In this example config, we tell dbt to build all models in the example/ directory | COMMENT |
| HIGH | …gration/common/tests/dbt/compiled_code/dbt_project.yml | 31 | # In this example config, we tell dbt to build all models in the example/ directory | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …src/test/java/io/openlineage/spark/agent/AwsUtils.java | 77 | // Step 1: List objects with the specified prefix | COMMENT |
| LOW | …src/test/java/io/openlineage/spark/agent/AwsUtils.java | 96 | // Step 2: Delete objects in batches (up to 1000 per request) | COMMENT |
| LOW | …src/test/java/io/openlineage/spark/agent/AwsUtils.java | 114 | // Step 3: Prepare for the next iteration if more objects are available | COMMENT |
| LOW⚡ | …ty/compatibility_test/contributing/new_input_events.md | 10 | ## Step 1: Create Scenario Directory | COMMENT |
| LOW⚡ | …ty/compatibility_test/contributing/new_input_events.md | 18 | ## Step 2: Configure OpenLineage Version | COMMENT |
| LOW⚡ | …ty/compatibility_test/contributing/new_input_events.md | 28 | ## Step 3: Define Maintainers | COMMENT |
| LOW | …ty/compatibility_test/contributing/new_input_events.md | 45 | ## Step 4: Add Events | COMMENT |
| LOW | …bility/compatibility_test/contributing/new_producer.md | 13 | ## Step 1: Create Producer Directory Structure | COMMENT |
| LOW | …bility/compatibility_test/contributing/new_producer.md | 20 | ## Step 2: Set Up Runner Environment | COMMENT |
| LOW | …bility/compatibility_test/contributing/new_producer.md | 33 | ## Step 3: Create Scenarios Structure | COMMENT |
| LOW | …bility/compatibility_test/contributing/new_producer.md | 40 | ## Step 4: Define Maintainers | COMMENT |
| LOW | …bility/compatibility_test/contributing/new_producer.md | 57 | ## Step 5: Configure Supported Versions | COMMENT |
| LOW | …bility/compatibility_test/contributing/new_producer.md | 70 | ## Step 6: Create GitHub Workflow | COMMENT |
| LOW | …bility/compatibility_test/contributing/new_producer.md | 172 | ## Step 7: Update main workflow files | COMMENT |
| LOW | …bility/compatibility_test/contributing/new_producer.md | 315 | ## Step 8: Update Release Configuration | COMMENT |
| LOW⚡ | …bility/compatibility_test/contributing/new_consumer.md | 12 | ## Step 1: Create Consumer Directory Structure | COMMENT |
| LOW⚡ | …bility/compatibility_test/contributing/new_consumer.md | 19 | ## Step 2: Set Up Consumer Infrastructure | COMMENT |
| LOW⚡ | …bility/compatibility_test/contributing/new_consumer.md | 29 | ## Step 3: Create Field Mapping Configuration | COMMENT |
| LOW⚡ | …bility/compatibility_test/contributing/new_consumer.md | 32 | ## Step 4: Define Maintainers | COMMENT |
| LOW | …bility/compatibility_test/contributing/new_consumer.md | 51 | ## Step 5: Create Consumer Workflow | COMMENT |
| LOW | …bility/compatibility_test/contributing/new_consumer.md | 109 | ## Step 6: Update main workflow files | COMMENT |
| LOW | …bility/compatibility_test/contributing/new_consumer.md | 196 | ## Step 6: Create Consumer Scenarios | COMMENT |
| LOW | …mpatibility_test/contributing/new_consumer_scenario.md | 12 | ## Step 1: Create Consumer Scenario Directory | COMMENT |
| LOW | …mpatibility_test/contributing/new_consumer_scenario.md | 20 | ## Step 2: Create configuration file | COMMENT |
| LOW | …mpatibility_test/contributing/new_consumer_scenario.md | 45 | ## Step 3: Define Maintainers | COMMENT |
| LOW | …mpatibility_test/contributing/new_consumer_scenario.md | 64 | ## Step 5: Document the Scenario | COMMENT |
| LOW | …mpatibility_test/contributing/new_consumer_scenario.md | 88 | ## Step 8: Create Expected Validation Files | COMMENT |
| LOW | …mpatibility_test/contributing/new_producer_scenario.md | 17 | ## Step 1: Create Producer Scenario Directory | COMMENT |
| LOW | …mpatibility_test/contributing/new_producer_scenario.md | 25 | ## Step 2: Configure Test Specifications | COMMENT |
| LOW | …mpatibility_test/contributing/new_producer_scenario.md | 85 | ## Step 3: Define Maintainers | COMMENT |
| LOW | …mpatibility_test/contributing/new_producer_scenario.md | 103 | ## Step 4: Add Expected Events | COMMENT |
| LOW | …mpatibility_test/contributing/new_producer_scenario.md | 115 | ## Step 5: Document the Scenario | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | integration/dbt/src/openlineage/dbt/__init__.py | 236 | except Exception as e: | CODE |
| LOW | integration/dbt/src/openlineage/dbt/__init__.py | 246 | except Exception: | CODE |
| LOW | integration/dbt/src/openlineage/dbt/__init__.py | 412 | except Exception as e: | CODE |
| LOW | integration/common/src/openlineage/common/test.py | 25 | except Exception: | CODE |
| LOW | integration/common/src/openlineage/common/test.py | 34 | except Exception: | CODE |
| LOW | …ion/common/src/openlineage/common/provider/bigquery.py | 159 | except Exception as e: | CODE |
| LOW | …ion/common/src/openlineage/common/provider/bigquery.py | 250 | except Exception as e: | CODE |
| LOW | …ion/common/src/openlineage/common/provider/bigquery.py | 275 | except Exception as e: | CODE |
| MEDIUM | …ion/common/src/openlineage/common/provider/bigquery.py | 272 | def _get_table_safely(self, output_table_name): | CODE |
| LOW | …ommon/src/openlineage/common/provider/redshift_data.py | 55 | except Exception as e: | CODE |
| LOW | …ommon/src/openlineage/common/provider/redshift_data.py | 98 | except Exception as e: | CODE |
| LOW | …ommon/src/openlineage/common/provider/redshift_data.py | 108 | except Exception as e: | CODE |
| MEDIUM | …ommon/src/openlineage/common/provider/redshift_data.py | 105 | def _get_table_safely(self, output_table_name): | CODE |
| LOW | …ommon/src/openlineage/common/provider/dbt/processor.py | 646 | except Exception as e: | CODE |
| LOW | …ommon/src/openlineage/common/provider/dbt/processor.py | 1097 | except Exception as e: | CODE |
| MEDIUM | …ommon/src/openlineage/common/provider/dbt/processor.py | 643 | def to_openlineage_events(self, *args, **kwargs) -> DbtRunResult | None: | CODE |
| LOW | …src/openlineage/common/provider/dbt/structured_logs.py | 908 | except Exception: | CODE |
| LOW | …src/openlineage/common/provider/dbt/structured_logs.py | 929 | except Exception: | CODE |
| MEDIUM | integration/spark/jar_compare.py | 366 | print(f"Error: {e}", file=sys.stderr) | STRING |
| LOW | client/python/tests/conftest.py | 184 | except Exception as e: | CODE |
| LOW | client/python/tests/conftest.py | 194 | except Exception as e: | CODE |
| MEDIUM | client/python/tests/test_async_http.py | 361 | def worker(thread_id): | CODE |
| LOW | client/python/tests/test_async_http.py | 371 | except Exception as e: | CODE |
| LOW | …nt/python/tests/integration/test_server/test_server.py | 301 | except Exception as e: | CODE |
| LOW | …nt/python/tests/integration/test_server/test_server.py | 431 | except Exception as e: | CODE |
| LOW | client/python/src/openlineage/client/client.py | 300 | except Exception: | CODE |
| LOW | client/python/src/openlineage/client/client.py | 321 | except Exception: | CODE |
| LOW | client/python/src/openlineage/client/client.py | 601 | except Exception: | CODE |
| LOW | client/python/src/openlineage/client/utils.py | 19 | except Exception as e: | CODE |
| LOW | …on/src/openlineage/client/transport/amazon_datazone.py | 65 | except Exception as error: | CODE |
| LOW | client/python/src/openlineage/client/transport/file.py | 262 | except Exception as error: | CODE |
| LOW | client/python/src/openlineage/client/transport/http.py | 149 | except Exception as e: | CODE |
| LOW | client/python/src/openlineage/client/transport/http.py | 204 | except Exception as e: | CODE |
| LOW | client/python/src/openlineage/client/transport/http.py | 260 | except Exception as e: | CODE |
| LOW | client/python/src/openlineage/client/transport/http.py | 367 | except Exception as e: # noqa: BLE001 | CODE |
| LOW | …/python/src/openlineage/client/transport/gcplineage.py | 150 | except Exception as e: | CODE |
| LOW | …/python/src/openlineage/client/transport/gcplineage.py | 164 | except Exception as e: | CODE |
| LOW | …/python/src/openlineage/client/transport/gcplineage.py | 208 | except Exception as e: | CODE |
| LOW | …/python/src/openlineage/client/transport/gcplineage.py | 218 | except Exception as e: | CODE |
| LOW | …t/python/src/openlineage/client/transport/composite.py | 124 | except Exception as e: # Handle failure | CODE |
| LOW | …t/python/src/openlineage/client/transport/composite.py | 165 | except Exception as e: | CODE |
| LOW | …ent/python/src/openlineage/client/transport/datadog.py | 55 | except Exception: | CODE |
| LOW | …/python/src/openlineage/client/transport/async_http.py | 198 | except Exception as e: | CODE |
| LOW⚡ | …/python/src/openlineage/client/transport/async_http.py | 247 | except Exception: | CODE |
| LOW | …/python/src/openlineage/client/transport/async_http.py | 333 | except Exception: | CODE |
| LOW | …/python/src/openlineage/client/transport/async_http.py | 439 | except Exception as e: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …ectations/test_great_expectations_validation_action.py | 80 | # Create a modern GE v3 context | COMMENT |
| MEDIUM | …ectations/test_great_expectations_validation_action.py | 166 | # Create a modern GE v3 context | COMMENT |
| MEDIUM | …ectations/test_great_expectations_validation_action.py | 275 | # Create a modern GE v3 context | COMMENT |
| MEDIUM | …ommon/src/openlineage/common/provider/dbt/processor.py | 52 | # This class represents supported adapters. | COMMENT |
| MEDIUM | client/python/tests/test_async_http.py | 176 | # Create a mock event that's not a RunEvent | COMMENT |
| MEDIUM | client/python/tests/test_http_integration.py | 68 | # Create a complete run lifecycle | COMMENT |
| MEDIUM | client/python/tests/test_http_integration.py | 168 | # Create a second complete event with different timestamp | COMMENT |
| MEDIUM | client/python/tests/test_factory.py | 238 | # Create a transport with invalid config_class | COMMENT |
| MEDIUM | client/python/tests/test_gcplineage.py | 295 | # Create a non-RunEvent | COMMENT |
| MEDIUM | client/python/tests/test_file.py | 140 | # Create the file and make it read-only | COMMENT |
| MEDIUM | client/python/tests/test_file.py | 483 | # Create a filesystem that raises an error on open | COMMENT |
| MEDIUM | client/python/tests/test_datadog.py | 482 | # Create a non-RunEvent | COMMENT |
| MEDIUM | client/python/tests/test_jwt_token_provider.py | 295 | # Create a JWT with exp claim | COMMENT |
| MEDIUM | …/python/src/openlineage/client/transport/async_http.py | 209 | # Create a queue with 2x the configured size to reserve space for released completion events | COMMENT |
| MEDIUM⚡ | …/python/src/openlineage/client/transport/async_http.py | 254 | # Create a semaphore to limit concurrent requests | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | release.sh | 1 | #!/bin/bash | COMMENT |
| LOW | .taskrc.yml | 1 | # Make `env:` declared in Taskfiles take precedence over inherited shell | COMMENT |
| LOW | integration/hive-docker/entrypoint.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …ion/flink/flink2/src/test/resources/generate_events.sh | 21 | COMMENT | |
| LOW | …est/java/io/openlineage/flink/Flink2ContainerTest.java | 201 | List<SchemaDatasetFacetFields> fields = input.get().getFacets().getSchema().getFields(); | COMMENT |
| LOW | integration/spark/Taskfile.yml | 1 | # Tasks for the OpenLineage Spark integration. Included by the root Taskfile | COMMENT |
| LOW | integration/spark/docker-compose.yml | 61 | # Enables SQL statement logging (see: https://www.postgresql.org/docs/12/runtime-config-logging.html#GUC-LOG-STATEME | COMMENT |
| LOW | integration/spark/databricks/upload-to-databricks.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …gent/lifecycle/plan/LogicalRelationDatasetBuilder.java | 221 | // This is a fallback that can occur when hadoop configurations cannot be | COMMENT |
| LOW | integration/spark/cli/configurable-test.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | …ent/lifecycle/plan/catalog/iceberg/IcebergHandler.java | 141 | // 1. You can read iceberg data without using an Iceberg catalog | COMMENT |
| LOW | integration/sql/impl/src/context/mod.rs | 61 | // since it's supposed to be opaque blob - so we want to keep input and output info. | COMMENT |
| LOW | integration/sql/impl/src/context/mod.rs | 621 | use super::*; | COMMENT |
| LOW | integration/sql/iface-py/script/build.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | .github/dependabot.yml | 1 | # For information about how to configure Dependabot, see: | COMMENT |
| LOW | .github/workflows/visual-difference-detection.yml | 1 | name: Visual difference detection | COMMENT |
| LOW | .github/workflows/integration-tests-spark-aws.yml | 1 | name: Integration tests for Spark AWS | COMMENT |
| LOW | .github/workflows/integration-tests-spark-azure.yml | 1 | name: Integration tests for Spark Azure | COMMENT |
| LOW | dev/java-home.sh | 1 | #!/bin/sh | COMMENT |
| LOW | .circleci/check-changes.sh | 81 | # Collect all the jobs from each workflow except for the "workflow_complete" job and | COMMENT |
| LOW | .circleci/config.yml | 21 | nightly-run: | COMMENT |
| LOW | client/go/pkg/openlineage/context.go | 61 | NewEvent(EventType) *RunEvent | COMMENT |
| LOW | client/go/pkg/openlineage/helpers.go | 21 | // | COMMENT |
| LOW | client/python/tests/__init__.py | 1 | # Copyright 2018-2026 contributors to the OpenLineage project | COMMENT |
| LOW | client/python/tests/generator/__init__.py | 1 | # Copyright 2018-2026 contributors to the OpenLineage project | COMMENT |
| LOW | client/python/tests/transform/__init__.py | 1 | # Copyright 2018-2026 contributors to the OpenLineage project | COMMENT |
| LOW | client/python/tests/transform/transformers/__init__.py | 1 | # Copyright 2018-2026 contributors to the OpenLineage project | COMMENT |
| LOW | …ge/client/transport/transform/transformers/__init__.py | 1 | # Copyright 2018-2026 contributors to the OpenLineage project | COMMENT |
| LOW | …ient/python/src/openlineage/client/generator/header.py | 1 | # Copyright 2018-2026 contributors to the OpenLineage project | COMMENT |
| LOW | …nt/python/src/openlineage/client/generator/__init__.py | 1 | # Copyright 2018-2026 contributors to the OpenLineage project | COMMENT |
| LOW | client/python/src/openlineage/client/naming/__init__.py | 1 | # Copyright 2018-2026 contributors to the OpenLineage project | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …egration/dbt/tests/integration/test_structured_logs.py | 10 | CODE | |
| LOW | integration/dbt/src/openlineage/dbt/__init__.py | 194 | CODE | |
| LOW | …mmon/tests/dbt/structured_logs/test_structured_logs.py | 636 | CODE | |
| LOW | integration/common/script/match.py | 9 | CODE | |
| LOW | integration/common/src/openlineage/common/test.py | 83 | CODE | |
| LOW | integration/common/src/openlineage/common/utils.py | 62 | CODE | |
| LOW | …ion/common/src/openlineage/common/provider/bigquery.py | 121 | CODE | |
| LOW | …ommon/src/openlineage/common/provider/dbt/processor.py | 282 | CODE | |
| LOW | …ommon/src/openlineage/common/provider/dbt/processor.py | 929 | CODE | |
| LOW | …on/common/src/openlineage/common/provider/dbt/utils.py | 162 | CODE | |
| LOW | …src/openlineage/common/provider/dbt/structured_logs.py | 185 | CODE | |
| LOW | …src/openlineage/common/provider/dbt/structured_logs.py | 239 | CODE | |
| LOW | …src/openlineage/common/provider/dbt/structured_logs.py | 424 | CODE | |
| LOW | …src/openlineage/common/provider/dbt/structured_logs.py | 846 | CODE | |
| LOW | …enlineage/common/provider/great_expectations/action.py | 291 | CODE | |
| LOW | …enlineage/common/provider/great_expectations/action.py | 467 | CODE | |
| LOW | dev/get_contributor_stats.py | 107 | CODE | |
| LOW | dev/get_contributor_stats.py | 125 | CODE | |
| LOW | dev/get_changes.py | 38 | CODE | |
| LOW | client/python/tests/test_async_http.py | 353 | CODE | |
| LOW | …nt/python/tests/integration/test_server/test_server.py | 236 | CODE | |
| LOW | …nt/python/tests/integration/test_server/test_server.py | 275 | CODE | |
| LOW | …nt/python/tests/integration/test_server/test_server.py | 306 | CODE | |
| LOW | client/python/src/openlineage/client/client.py | 447 | CODE | |
| LOW | …/python/src/openlineage/client/transport/gcplineage.py | 168 | CODE | |
| LOW | …ent/python/src/openlineage/client/transport/datadog.py | 150 | CODE | |
| LOW | …/python/src/openlineage/client/transport/async_http.py | 253 | CODE | |
| LOW | …/python/src/openlineage/client/transport/async_http.py | 365 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | integration/dbt/tests/integration/conftest.py | 61 | # Check if there's already a valid SQL wheel with matching version and platform | COMMENT |
| LOW | …on/common/src/openlineage/common/provider/snowflake.py | 29 | # Check if it's organization-account format (contains hyphen) | COMMENT |
| LOW | integration/spark/jar_compare.py | 187 | # Check if files are identical | COMMENT |
| LOW | .pre_commit/check_version_update_path.sh | 30 | # Check if all paths exist | COMMENT |
| LOW⚡ | .pre_commit/run-spec-snapshot.sh | 45 | # Check if the file is tracked by Git | COMMENT |
| LOW⚡ | .pre_commit/run-spec-snapshot.sh | 48 | # Check if the copied file differs from the committed version and is not staged | COMMENT |
| LOW⚡ | .pre_commit/run-spec-snapshot.sh | 50 | # Check if the differences are not already staged | COMMENT |
| LOW | …nt/python/tests/integration/test_server/test_server.py | 360 | # Check if we should simulate an error | COMMENT |
| LOW | …nt/python/tests/integration/test_server/test_server.py | 533 | # Check if there are completion events before START | COMMENT |
| LOW | …nt/python/tests/integration/test_server/test_server.py | 537 | # Check if there's a START event later in the sequence | COMMENT |
| LOW | client/python/src/openlineage/client/transport/file.py | 92 | # Check if fsspec features are requested but not available | COMMENT |
| LOW | …/python/src/openlineage/client/transport/gcplineage.py | 137 | # Check if event should use async transport based on rules | COMMENT |
| LOW | …ent/python/src/openlineage/client/transport/datadog.py | 137 | # Check if event has JobTypeJobFacet with integration = "dbt" | COMMENT |
| LOW | …/python/src/openlineage/client/transport/async_http.py | 563 | # Check if worker thread is still alive | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | integration/common/src/openlineage/common/__init__.py | 6 | __all__ = ["__version__"] | CODE |
| LOW | integration/common/src/openlineage/common/utils.py | 8 | logger = logging.getLogger(__name__) | CODE |
| LOW | …common/src/openlineage/common/provider/dbt/__init__.py | 9 | __all__ = [ | CODE |
| LOW | …lineage/common/provider/great_expectations/__init__.py | 8 | __all__ = ["OpenLineageValidationAction"] | CODE |
| LOW | …egration/common/src/openlineage/common/sql/__init__.py | 16 | __all__ = [ | CODE |
| LOW | client/python/tests/conftest.py | 42 | def _setup_producer(test_producer) -> None: | CODE |
| LOW | client/python/src/openlineage/client/__init__.py | 16 | def set_producer(producer: str) -> None: | CODE |
| LOW | client/python/src/openlineage/client/__init__.py | 21 | __all__ = ["OpenLineageClient", "OpenLineageClientOptions", "set_producer", "__version__"] | CODE |
| LOW | client/python/src/openlineage/client/facet.py | 20 | def set_producer(producer: str) -> None: | CODE |
| LOW | client/python/src/openlineage/client/facet_v2.py | 54 | __all__ = [ | CODE |
| LOW | client/python/src/openlineage/client/event_v2.py | 23 | __all__ = [ | CODE |
| LOW | …on/src/openlineage/client/transport/amazon_datazone.py | 75 | def _setup_datazone(self, region: str | None = None, endpoint_url: str | None = None) -> None: | CODE |
| LOW | …nt/python/src/openlineage/client/transport/__init__.py | 49 | __all__ = [ | CODE |
| LOW | client/python/src/openlineage/client/transport/kafka.py | 189 | def _setup_producer(self, config: dict) -> None: # type: ignore[type-arg] | CODE |
| LOW | …ent/python/src/openlineage/client/transport/msk_iam.py | 79 | def _setup_producer(self, config: dict) -> None: # type: ignore[type-arg] | CODE |
| LOW⚡ | …/python/src/openlineage/client/transport/async_http.py | 242 | def _setup_loop(self) -> None: | CODE |
| LOW | …src/openlineage/client/transport/transform/__init__.py | 14 | __all__ = [ | CODE |
| LOW | client/python/src/openlineage/client/generator/base.py | 44 | def set_producer(producer: str) -> None: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | website/docs/spec/facets/custom-facets.md | 0 | create or replace table tmp_demo.user_counts as ( select date_trunc(day, created_at) date, count(id) as user_count from | STRING |
| HIGH | website/docs/client/python/usage.md | 0 | create or replace table tmp_demo.user_counts as ( select date_trunc(day, created_at) date, count(id) as user_count from | STRING |
| HIGH | website/docs/client/python/development/logging.md | 0 | create or replace table tmp_demo.user_counts as ( select date_trunc(day, created_at) date, count(id) as user_count from | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …mmon/tests/dbt/structured_logs/test_structured_logs.py | 1551 | # Valid manifest - comprehensive scenario | COMMENT |
| LOW | …on/common/src/openlineage/common/provider/snowflake.py | 70 | # else - its new hostname, just return it | COMMENT |
| MEDIUM | client/python/src/openlineage/client/client.py | 392 | # Special case - for seamless switch to async transport | COMMENT |
| MEDIUM | …/python/src/openlineage/client/transport/gcplineage.py | 113 | """Safely run async coroutine in sync context with robust event loop handling.""" | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | integration/common/tests/dbt/test_dbt_local.py | 226 | {{ undefined }} | STRING |
| HIGH | integration/common/tests/dbt/test_dbt_local.py | 237 | {{ undefined }} | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …rc/openlineage/client/transport/transform/transform.py | 63 | Create a TransformConfig instance from a dictionary of parameters. Validates that required fields (`transport` | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …src/test/java/io/openlineage/spark/agent/AwsUtils.java | 77 | // Step 1: List objects with the specified prefix | COMMENT |
| LOW | …src/test/java/io/openlineage/spark/agent/AwsUtils.java | 96 | // Step 2: Delete objects in batches (up to 1000 per request) | COMMENT |
| LOW | …src/test/java/io/openlineage/spark/agent/AwsUtils.java | 114 | // Step 3: Prepare for the next iteration if more objects are available | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …penlineage/spark/agent/PostgresJDBCSparkQueryTest.java | 374 | "INSERT INTO authors (author_id, author_name) VALUES (1, 'John Doe');"); | CODE |
| LOW | …penlineage/spark/agent/PostgresJDBCSparkQueryTest.java | 382 | "INSERT INTO authors (author_id, author_name) VALUES (2, 'Jane Doe');"); | CODE |
| LOW | client/python/tests/test_http_integration.py | 448 | {"Authorization": "Bearer fake-token", "X-Custom": "value"}, | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | client/python/tests/generator/test_base.py | 119 | def my_function(): | CODE |
| LOW⚡ | client/python/tests/generator/test_base.py | 125 | assert "def my_function():" in rest | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …va/io/openlineage/flink/visitor/JdbcSourceVisitor.java | 54 | // TODO: implement namespace resolver | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | integration/sql/iface-py/tests/python/sql_tester.py | 24 | # via UNIX pipe to the tool. In case of inputing directly, make sure to press | COMMENT |