codeant-ai-for-open-source[bot] commented on code in PR #43566:
URL: https://github.com/apache/superset/pull/43566#discussion_r3867214535
##########
superset/db_engine_specs/databend.py:
##########
@@ -162,8 +162,24 @@ class DatabendEngineSpec(DatabendBaseEngineSpec):
_show_functions_column = "name"
supports_file_upload = False
- # Note: Primary metadata is in DatabendConnectEngineSpec which provides
- # the native connection UI. This spec exists for backwards compatibility.
+ metadata = {
+ "description": (
+ "Databend is an open-source cloud-native data warehouse built in
Rust "
+ "(legacy databend-sqlalchemy connector)."
+ ),
+ "logo": "databend.png",
+ "homepage_url": "https://www.databend.com/",
+ "categories": [
+ DatabaseCategory.CLOUD_DATA_WAREHOUSES,
+ DatabaseCategory.ANALYTICAL_DATABASES,
+ DatabaseCategory.PROPRIETARY,
+ ],
Review Comment:
**Suggestion:** The metadata describes Databend as open-source but assigns
it the `PROPRIETARY` licensing category. Metadata consumers use these
categories for UI and documentation grouping, so this places the engine in the
wrong licensing filter and contradicts the description. Replace the licensing
category with the appropriate open-source category. [logic error]
<details>
<summary><b>Severity Level:</b> Minor ๐งน</summary>
```mdx
- โ ๏ธ Databend appears under the wrong licensing category.
- โ ๏ธ Database selector and documentation filters become misleading.
```
</details>
[](https://docs.codeant.ai/cli/resolve-pr-comments-skill)
[](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=e9470a0c8edc43d0b79b3eebe2de52bb&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
[](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=e9470a0c8edc43d0b79b3eebe2de52bb&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
<details>
<summary><b>Prompt for AI Agent ๐ค </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset/db_engine_specs/databend.py
**Line:** 172:176
**Comment:**
*Logic Error: The metadata describes Databend as open-source but
assigns it the `PROPRIETARY` licensing category. Metadata consumers use these
categories for UI and documentation grouping, so this places the engine in the
wrong licensing filter and contradicts the description. Replace the licensing
category with the appropriate open-source category.
Validate the correctness of the flagged issue. If correct, How can I resolve
this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask
user if the user wants to fix the rest of the comments as well. if said yes,
then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=bb44ef3a06e13e26dd0076d0534e7fb8272c01990c168ae92508e542c335b888&reaction=like'>๐</a>
| <a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=bb44ef3a06e13e26dd0076d0534e7fb8272c01990c168ae92508e542c335b888&reaction=dislike'>๐</a>
##########
superset/db_engine_specs/databricks.py:
##########
@@ -456,9 +480,22 @@ class
DatabricksNativeEngineSpec(DatabricksDynamicBaseEngineSpec):
"databricks+connector://token:{access_token}@{host}:{port}/{database_name}"
)
- # Note: Primary metadata is in DatabricksPythonConnectorEngineSpec which
- # consolidates all Databricks connection methods. This spec exists for
- # backwards compatibility with legacy databricks-dbapi connections.
+ metadata = {
+ "description": (
+ "Legacy Databricks connector using the databricks-dbapi driver."
+ ),
+ "logo": "databricks.png",
+ "homepage_url": "https://www.databricks.com/",
+ "categories": [
+ DatabaseCategory.CLOUD_DATA_WAREHOUSES,
+ DatabaseCategory.ANALYTICAL_DATABASES,
+ ],
+ "pypi_packages": ["databricks-dbapi"],
Review Comment:
**Suggestion:** The legacy runtime setup requires the SQLAlchemy extra, as
shown by the existing driver metadata and documentation
(`databricks-dbapi[sqlalchemy]`), but this new top-level package entry only
installs `databricks-dbapi`. Users following the metadata installation
instructions can therefore lack the SQLAlchemy integration needed to use the
advertised `databricks+connector` URI. Use the package specification with the
required extra. [api mismatch]
<details>
<summary><b>Severity Level:</b> Major โ ๏ธ</summary>
```mdx
- โ Legacy Databricks URI setup can lack its SQLAlchemy integration.
- โ ๏ธ Users may receive driver or dialect-loading failures.
```
</details>
[](https://docs.codeant.ai/cli/resolve-pr-comments-skill)
[](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=648f35dd5cd74dacac78ba78609777bc&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
[](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=648f35dd5cd74dacac78ba78609777bc&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
<details>
<summary><b>Prompt for AI Agent ๐ค </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset/db_engine_specs/databricks.py
**Line:** 493:493
**Comment:**
*Api Mismatch: The legacy runtime setup requires the SQLAlchemy extra,
as shown by the existing driver metadata and documentation
(`databricks-dbapi[sqlalchemy]`), but this new top-level package entry only
installs `databricks-dbapi`. Users following the metadata installation
instructions can therefore lack the SQLAlchemy integration needed to use the
advertised `databricks+connector` URI. Use the package specification with the
required extra.
Validate the correctness of the flagged issue. If correct, How can I resolve
this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask
user if the user wants to fix the rest of the comments as well. if said yes,
then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=245d487977d528737ea71f576b668f8be227fd684c6758f2d369b23b78cb10e0&reaction=like'>๐</a>
| <a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=245d487977d528737ea71f576b668f8be227fd684c6758f2d369b23b78cb10e0&reaction=dislike'>๐</a>
##########
superset/db_engine_specs/databricks.py:
##########
@@ -230,9 +230,22 @@ class DatabricksHiveEngineSpec(HiveEngineSpec):
drivers = {"pyhive": "Hive driver for Interactive Cluster"}
default_driver = "pyhive"
- # Note: Primary metadata is in DatabricksPythonConnectorEngineSpec which
- # consolidates all Databricks connection methods. This spec exists for
- # backwards compatibility with Interactive Cluster connections.
+ metadata = {
+ "description": (
+ "Databricks Interactive Cluster connectivity via the PyHive
connector."
+ ),
+ "logo": "databricks.png",
+ "homepage_url": "https://www.databricks.com/",
+ "categories": [
+ DatabaseCategory.CLOUD_DATA_WAREHOUSES,
+ DatabaseCategory.ANALYTICAL_DATABASES,
+ ],
+ "pypi_packages": ["pyhive"],
+ "connection_string": (
+ "databricks+pyhive://token:{access_token}@{host}:{port}/{database}"
+ ),
+ "default_port": 443,
+ }
Review Comment:
**Suggestion:** Both advertised legacy Databricks connection templates omit
the endpoint-specific `http_path`, which the Databricks driver requires and the
existing connection documentation says must be supplied through engine
parameters. Because these new metadata blocks have no parameter descriptions or
notes explaining that prerequisite, generated setup guidance presents an
incomplete connection recipe that fails when used as-is. Include `http_path` in
the documented connection configuration or explicitly document the required
engine parameters. [incomplete implementation]
<details>
<summary><b>Severity Level:</b> Major โ ๏ธ</summary>
```mdx
- โ ๏ธ Interactive Cluster setup guidance omits required HTTP path.
- โ ๏ธ Generated connection examples may fail during driver initialization.
```
</details>
[](https://docs.codeant.ai/cli/resolve-pr-comments-skill)
[](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=ee0a120063394a3a8de340f3368f38c8&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
[](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=ee0a120063394a3a8de340f3368f38c8&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
<details>
<summary><b>Prompt for AI Agent ๐ค </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset/db_engine_specs/databricks.py
**Line:** 243:248
**Comment:**
*Incomplete Implementation: Both advertised legacy Databricks
connection templates omit the endpoint-specific `http_path`, which the
Databricks driver requires and the existing connection documentation says must
be supplied through engine parameters. Because these new metadata blocks have
no parameter descriptions or notes explaining that prerequisite, generated
setup guidance presents an incomplete connection recipe that fails when used
as-is. Include `http_path` in the documented connection configuration or
explicitly document the required engine parameters.
Validate the correctness of the flagged issue. If correct, How can I resolve
this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask
user if the user wants to fix the rest of the comments as well. if said yes,
then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=2e6a22aad2b17572f9e9fed5d15b061b858c803b98513f6725c3fd991c27233c&reaction=like'>๐</a>
| <a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=2e6a22aad2b17572f9e9fed5d15b061b858c803b98513f6725c3fd991c27233c&reaction=dislike'>๐</a>
##########
superset/db_engine_specs/elasticsearch.py:
##########
@@ -204,6 +204,22 @@ class OpenDistroEngineSpec(BaseEngineSpec): # pylint:
disable=abstract-method
engine = "odelasticsearch"
engine_name = "OpenSearch (OpenDistro)"
+ metadata = {
+ "description": (
+ "OpenSearch (OpenDistro) is a community-driven, open-source search
"
+ "and analytics suite derived from Elasticsearch."
+ ),
+ "logo": "elasticsearch.png",
+ "homepage_url": "https://opensearch.org/",
Review Comment:
**Suggestion:** The new metadata identifies this engine as OpenSearch but
points to the Elasticsearch logo. The database selector and generated
documentation will therefore display Elasticsearch branding for an
OpenSearch/OpenDistro connection. Use an OpenSearch-specific logo asset or
retain an explicitly OpenDistro-compatible description if no such asset is
intended. [inconsistent naming]
<details>
<summary><b>Severity Level:</b> Minor ๐งน</summary>
```mdx
- โ ๏ธ OpenSearch branding may appear as Elasticsearch.
- โ ๏ธ Existing metadata intentionally reuses Elasticsearch branding for
OpenSearch compatibility.
```
</details>
[](https://docs.codeant.ai/cli/resolve-pr-comments-skill)
[](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=838c124655dd4cde9730e69fa463c006&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
[](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=838c124655dd4cde9730e69fa463c006&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
<details>
<summary><b>Prompt for AI Agent ๐ค </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset/db_engine_specs/elasticsearch.py
**Line:** 207:213
**Comment:**
*Inconsistent Naming: The new metadata identifies this engine as
OpenSearch but points to the Elasticsearch logo. The database selector and
generated documentation will therefore display Elasticsearch branding for an
OpenSearch/OpenDistro connection. Use an OpenSearch-specific logo asset or
retain an explicitly OpenDistro-compatible description if no such asset is
intended.
Validate the correctness of the flagged issue. If correct, How can I resolve
this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask
user if the user wants to fix the rest of the comments as well. if said yes,
then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=93d041316475be667e344af9cb0f4341fd9fa057bab1f47093e5d9de7d8264bd&reaction=like'>๐</a>
| <a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=93d041316475be667e344af9cb0f4341fd9fa057bab1f47093e5d9de7d8264bd&reaction=dislike'>๐</a>
##########
superset/db_engine_specs/ibmi.py:
##########
@@ -28,6 +30,22 @@ class IBMiEngineSpec(Db2EngineSpec):
engine_name = "IBM Db2 for i"
max_column_name_length = 128
+ metadata = {
+ "description": (
+ "IBM Db2 for i is an integrated relational database management "
+ "system optimized for IBM i."
+ ),
+ "logo": "ibm-db2.svg",
+ "homepage_url": "https://www.ibm.com/products/db2",
+ "categories": [
+ DatabaseCategory.TRADITIONAL_RDBMS,
+ DatabaseCategory.ENTERPRISE,
+ ],
+ "pypi_packages": ["sqlalchemy-ibmi"],
+ "connection_string":
"ibmi://{user}:{password}@{host}:{port}/{database}",
+ "default_port": 50000,
Review Comment:
**Suggestion:** The IBM i connection template uses `{user}`, but the
established IBM i metadata contract uses `{username}` and the database
parameter is named `username`. Consumers that substitute the standard parameter
name will leave `{user}` unresolved or produce an unusable example. Use the
same username placeholder as the IBM i compatibility metadata. [api mismatch]
<details>
<summary><b>Severity Level:</b> Minor ๐งน</summary>
```mdx
- โ ๏ธ IBM i setup examples can retain an unresolved username placeholder.
- โ ๏ธ Automated connection-template substitution may produce invalid URIs.
```
</details>
[](https://docs.codeant.ai/cli/resolve-pr-comments-skill)
[](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=4b0ab02c2e2c411ebc43fee18cdf51c6&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
[](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=4b0ab02c2e2c411ebc43fee18cdf51c6&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
<details>
<summary><b>Prompt for AI Agent ๐ค </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset/db_engine_specs/ibmi.py
**Line:** 44:46
**Comment:**
*Api Mismatch: The IBM i connection template uses `{user}`, but the
established IBM i metadata contract uses `{username}` and the database
parameter is named `username`. Consumers that substitute the standard parameter
name will leave `{user}` unresolved or produce an unusable example. Use the
same username placeholder as the IBM i compatibility metadata.
Validate the correctness of the flagged issue. If correct, How can I resolve
this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask
user if the user wants to fix the rest of the comments as well. if said yes,
then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=a27f98d82af024cc3ea53b929e6066e75ab79ed26bdd072b83330490526d16f4&reaction=like'>๐</a>
| <a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=a27f98d82af024cc3ea53b929e6066e75ab79ed26bdd072b83330490526d16f4&reaction=dislike'>๐</a>
##########
superset/db_engine_specs/kusto.py:
##########
@@ -174,6 +174,26 @@ class KustoKqlEngineSpec(BaseEngineSpec): # pylint:
disable=abstract-method
allows_sql_comments = False
run_multiple_statements_as_one = True
+ metadata = {
+ "description": (
+ "Azure Data Explorer (Kusto) using native Kusto Query Language
(KQL) "
+ "for high-performance log and telemetry analytics."
+ ),
+ "logo": "kusto.png",
+ "homepage_url":
"https://azure.microsoft.com/en-us/products/data-explorer/",
+ "categories": [
+ DatabaseCategory.CLOUD_AZURE,
+ DatabaseCategory.ANALYTICAL_DATABASES,
+ DatabaseCategory.PROPRIETARY,
+ ],
+ "pypi_packages": ["sqlalchemy-kusto"],
+ "connection_string": (
+ "kustokql+https://{cluster}.kusto.windows.net/{database}"
+ "?msi=False&azure_ad_client_id={client_id}"
+ "&azure_ad_client_secret={client_secret}"
+ ),
+ }
Review Comment:
**Suggestion:** The KQL connection template omits the required Azure AD
tenant parameter, while the sibling SQL template includes
`azure_ad_tenant_id={tenant_id}` and documents `tenant_id`. Metadata consumers
will generate incomplete connection strings for tenants requiring explicit
tenant selection. Add the tenant parameter and corresponding parameter
description. [api mismatch]
<details>
<summary><b>Severity Level:</b> Major โ ๏ธ</summary>
```mdx
- โ ๏ธ Explicit Azure AD KQL authentication lacks tenant selection.
- โ Generated KQL connection setup can fail authentication.
```
</details>
[](https://docs.codeant.ai/cli/resolve-pr-comments-skill)
[](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=2da71504676445ec9b38830f4f58b68b&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
[](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=2da71504676445ec9b38830f4f58b68b&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
<details>
<summary><b>Prompt for AI Agent ๐ค </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset/db_engine_specs/kusto.py
**Line:** 189:195
**Comment:**
*Api Mismatch: The KQL connection template omits the required Azure AD
tenant parameter, while the sibling SQL template includes
`azure_ad_tenant_id={tenant_id}` and documents `tenant_id`. Metadata consumers
will generate incomplete connection strings for tenants requiring explicit
tenant selection. Add the tenant parameter and corresponding parameter
description.
Validate the correctness of the flagged issue. If correct, How can I resolve
this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask
user if the user wants to fix the rest of the comments as well. if said yes,
then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=85fc772e6f5f83bdf8026cf7e74c09fa55511f2ad3e5aa076b70a2cfe6f0fadb&reaction=like'>๐</a>
| <a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=85fc772e6f5f83bdf8026cf7e74c09fa55511f2ad3e5aa076b70a2cfe6f0fadb&reaction=dislike'>๐</a>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]