Ordered by severity, then signals introduced in this release. Hidden characters are shown as ⟨U+…⟩.
-
line length 568 characters (raw pass, confidence 0.50)
* Add `deployment_resource_type_vector_search_endpoint`, `deployment_resource_type_vector_search_index`, `deployment_resource_type_job_run`, `deployment_resource_type_postgres_catalog`, `deployment_resource_type_postgres_synced_table`, `deployment_resource_type_genie_space`, `deployment_resource_type_instance_pool`, `d
-
line length 780 characters (raw pass, confidence 0.50)
* Add `create_direct_group_member()`, `create_group()`, `create_service_principal()`, `create_user()`, `create_workspace_assignment()`, `delete_direct_group_member()`, `delete_group()`, `delete_service_principal()`, `delete_user()`, `delete_workspace_assignment()`, `get_direct_group_member()`, `get_group()`, `get_servi
-
line length 1011 characters (raw pass, confidence 0.50)
* Add `create_direct_group_member_proxy()`, `create_group_proxy()`, `create_service_principal_proxy()`, `create_user_proxy()`, `create_workspace_assignment_proxy()`, `delete_direct_group_member_proxy()`, `delete_group_proxy()`, `delete_service_principal_proxy()`, `delete_user_proxy()`, `delete_workspace_assignment_prox
-
line length 3303 characters (raw pass, confidence 0.65)
* Add `ssh_bootstrap_failure`, `aws_inaccessible_kms_key_failure`, `init_container_not_finished`, `spark_image_download_throttled`, `spark_image_not_found`, `cluster_operation_throttled`, `cluster_operation_timeout`, `serverless_long_running_terminated`, `azure_packed_deployment_partial_failure`, `invalid_worker_image_
likely benign
LLM, confidence 0.95
Changelog bullet listing many added error-code identifiers on one long line.
Reasoning
Long markdown bullet listing error code names in a changelog; a raw long-line heuristic with no obfuscation or malicious content.
-
line length 3317 characters (raw pass, confidence 0.65)
* [Breaking] Remove `ssh_bootstrap_failure`, `aws_inaccessible_kms_key_failure`, `init_container_not_finished`, `spark_image_download_throttled`, `spark_image_not_found`, `cluster_operation_throttled`, `cluster_operation_timeout`, `serverless_long_running_terminated`, `azure_packed_deployment_partial_failure`, `invalid
likely benign
LLM, confidence 0.95
Changelog breaking-change bullet listing removed error codes.
Reasoning
Changelog entry noting removal of error codes; long line is ordinary markdown prose/identifier list.
-
line length 3303 characters (raw pass, confidence 0.65)
* Add `ssh_bootstrap_failure`, `aws_inaccessible_kms_key_failure`, `init_container_not_finished`, `spark_image_download_throttled`, `spark_image_not_found`, `cluster_operation_throttled`, `cluster_operation_timeout`, `serverless_long_running_terminated`, `azure_packed_deployment_partial_failure`, `invalid_worker_image_
likely benign
LLM, confidence 0.95
Changelog bullet listing added error-code identifiers.
Reasoning
Same kind of long changelog bullet of added error identifiers; no executable or hidden content.
-
line length 810 characters (raw pass, confidence 0.50)
* Added [a.account_groups_v2](https://databricks-sdk-py.readthedocs.io/en/latest/account/iam/account_groups_v2.html) account-level service, [a.account_service_principals_v2](https://databricks-sdk-py.readthedocs.io/en/latest/account/iam/account_service_principals_v2.html) account-level service, [a.account_users_v2](htt
-
line length 852 characters (raw pass, confidence 0.50)
* Added [a.llm_proxy_partner_powered_account](https://databricks-sdk-py.readthedocs.io/en/latest/account/settings/settings/llm_proxy_partner_powered_account.html) account-level service, [a.llm_proxy_partner_powered_enforce](https://databricks-sdk-py.readthedocs.io/en/latest/account/settings/settings/llm_proxy_partner_p
-
line length 516 characters (raw pass, confidence 0.50)
* Added [w.enable_export_notebook](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/settings/settings/enable_export_notebook.html) workspace-level service, [w.enable_notebook_table_clipboard](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/settings/settings/enable_notebook_table_clipboard.html)
-
line length 2573 characters (raw pass, confidence 0.65)
* Added `access_token_failure`, `allocation_timeout`, `allocation_timeout_node_daemon_not_ready`, `allocation_timeout_no_healthy_clusters`, `allocation_timeout_no_matched_clusters`, `allocation_timeout_no_ready_clusters`, `allocation_timeout_no_unallocated_clusters`, `allocation_timeout_no_warmed_up_clusters`, `aws_ina
likely benign
LLM, confidence 0.95
Changelog bullet enumerating added allocation/access error identifiers.
Reasoning
Changelog bullet enumerating error identifiers; raw long-line signal only.
-
line length 2586 characters (raw pass, confidence 0.65)
* [Breaking] Removed `access_token_failure`, `allocation_timeout`, `allocation_timeout_node_daemon_not_ready`, `allocation_timeout_no_healthy_clusters`, `allocation_timeout_no_matched_clusters`, `allocation_timeout_no_ready_clusters`, `allocation_timeout_no_unallocated_clusters`, `allocation_timeout_no_warmed_up_cluste
likely benign
LLM, confidence 0.95
Changelog breaking-change bullet listing removed error identifiers.
Reasoning
Changelog breaking-change bullet listing removed identifiers; benign documentation.
-
line length 2573 characters (raw pass, confidence 0.65)
* Added `access_token_failure`, `allocation_timeout`, `allocation_timeout_node_daemon_not_ready`, `allocation_timeout_no_healthy_clusters`, `allocation_timeout_no_matched_clusters`, `allocation_timeout_no_ready_clusters`, `allocation_timeout_no_unallocated_clusters`, `allocation_timeout_no_warmed_up_clusters`, `aws_ina
likely benign
LLM, confidence 0.95
Changelog bullet enumerating added error identifiers.
Reasoning
Changelog bullet of added identifiers; long line from list formatting in docs.
-
line length 518 characters (raw pass, confidence 0.50)
* Added `databricks.sdk.service.compute.ClusterCompliance`, `databricks.sdk.service.compute.ClusterSettingsChange`, `databricks.sdk.service.compute.EnforceClusterComplianceRequest`, `databricks.sdk.service.compute.EnforceClusterComplianceResponse`, `databricks.sdk.service.compute.GetClusterComplianceRequest`, `databri
-
line length 525 characters (raw pass, confidence 0.50)
* Added `databricks.sdk.service.jobs.EnforcePolicyComplianceForJobResponseJobClusterSettingsChange`, `databricks.sdk.service.jobs.EnforcePolicyComplianceRequest`, `databricks.sdk.service.jobs.EnforcePolicyComplianceResponse`, `databricks.sdk.service.jobs.GetPolicyComplianceRequest`, `databricks.sdk.service.jobs.GetPol
-
line length 2008 characters (raw pass, confidence 0.65)
* Added `databricks.sdk.service.billing.ActionConfiguration`, `databricks.sdk.service.billing.ActionConfigurationType`, `databricks.sdk.service.billing.AlertConfiguration`, `databricks.sdk.service.billing.AlertConfigurationQuantityType`, `databricks.sdk.service.billing.AlertConfigurationTimePeriod`, `databricks.sdk.se
likely benign
LLM, confidence 0.95
Changelog bullet listing added Databricks SDK billing class names.
Reasoning
Changelog bullet listing newly added SDK class names; ordinary release notes.
-
line length 3300 characters (raw pass, confidence 0.65)
* Added `databricks.sdk.service.sql.AlertCondition`, `databricks.sdk.service.sql.AlertConditionOperand`, `databricks.sdk.service.sql.AlertConditionThreshold`, `databricks.sdk.service.sql.AlertOperandColumn`, `databricks.sdk.service.sql.AlertOperandValue`, `databricks.sdk.service.sql.AlertOperator`, `databricks.sdk.ser
likely benign
LLM, confidence 0.95
Changelog bullet listing added Databricks SDK SQL class names.
Reasoning
Changelog bullet listing added SDK SQL class names; no code execution or obfuscation.
-
line length 1250 characters (raw pass, confidence 0.50)
* Added `databricks.sdk.service.dashboards.CreateScheduleRequest`, `databricks.sdk.service.dashboards.CreateSubscriptionRequest`, `databricks.sdk.service.dashboards.CronSchedule`, `databricks.sdk.service.dashboards.DashboardView`, `databricks.sdk.service.dashboards.DeleteScheduleRequest`, `databricks.sdk.service.dashb
-
line length 884 characters (raw pass, confidence 0.50)
* Added `include_browse` field for `databricks.sdk.service.catalog.GetCatalogRequest`, `databricks.sdk.service.catalog.GetExternalLocationRequest`, `databricks.sdk.service.catalog.GetFunctionRequest`, `databricks.sdk.service.catalog.GetModelVersionRequest`, `databricks.sdk.service.catalog.GetRegisteredModelRequest
-
reach-by-name through `globals` (ast pass, confidence 0.60)
for var in dbruntime_objects:
globals()[var] = None
likely benign
LLM, confidence 0.85
Initializes runtime placeholder globals by name via globals() in the Databricks SDK runtime shim.
Reasoning
Assigning None to names from a list via globals() is a known pattern for initializing runtime placeholder globals in the Databricks SDK; it is reach-by-name but benign in this context, and the snippet shows best-effort initialization.
-
compression ratio 0.838 is >2σ above file mean 0.799 (raw pass, confidence 0.50)
def as_dict(self) -> dict:
body = {}
if self.api_key_name is not None:
-
base64-like blob (65 bytes, compression ratio 1.17) (raw pass, confidence 0.60)
Examples | Summary :--- | :--- ``etag=`` | An empty etag can only be used in GET to indicate no
freshness requirements. ``etag=RENUAAABhSweA4NvVmmUYdiU717H3Tgy0UJdor3gE4a+mq/oj9NjAf8ZsQ==`` | An
etag encoded a specific version of the rule set to get or to be updated.
likely benign
LLM, confidence 0.93
Example base64 etag value in an IAM API docstring.
Reasoning
The blob is an example etag inside a docstring table describing API usage; it is documentation, not a payload or dropper.
-
base64-like blob (65 bytes, compression ratio 1.17) (raw pass, confidence 0.60)
Examples | Summary :--- | :--- ``etag=`` | An empty etag can only be used in GET to indicate no
freshness requirements. ``etag=RENUAAABhSweA4NvVmmUYdiU717H3Tgy0UJdor3gE4a+mq/oj9NjAf8ZsQ==`` | An
etag encoded a specific version of the rule set to get or to be updated.
likely benign
LLM, confidence 0.93
Example base64 etag value in an IAM API docstring.
Reasoning
Same docstring example etag appearing again in another IAM method docstring; benign documentation.
-
base64-like blob (65 bytes, compression ratio 1.17) (raw pass, confidence 0.60)
Examples | Summary :--- | :--- ``etag=`` | An empty etag can only be used in GET to indicate no
freshness requirements. ``etag=RENUAAABhSweA4NvVmmUYdiU717H3Tgy0UJdor3gE4a+mq/oj9NjAf8ZsQ==`` | An
etag encoded a specific version of the rule set to get or to be updated.
likely benign
LLM, confidence 0.95
Documentation example of an opaque etag value in an access control API reference.
Reasoning
The flagged string is an etag example value embedded in API documentation. It is a random-looking base64 token, which is a normal documentation example; raw-pass base64 hits in docs have a high false-positive rate.
-
line length 763 characters (raw pass, confidence 0.50)
.. py:method:: create( [, aws_region: Optional[str], cloud: Optional[str], cloud_resource_container: Optional[CloudResourceContainer], compute_mode: Optional[CustomerFacingComputeMode], credentials_id: Optional[str], custom_tags: Optional[Dict[str, str]], deployment_name: Optional[str], gcp_managed_network_config:
-
line length 805 characters (raw pass, confidence 0.50)
.. py:method:: create_and_wait( [, aws_region: Optional[str], cloud: Optional[str], cloud_resource_container: Optional[CloudResourceContainer], compute_mode: Optional[CustomerFacingComputeMode], credentials_id: Optional[str], custom_tags: Optional[Dict[str, str]], deployment_name: Optional[str], gcp_managed_network
-
line length 3556 characters (raw pass, confidence 0.65)
- ``SUCCESS``: The run was completed successfully. - ``SUCCESS_WITH_FAILURES``: The run was completed successfully but some child runs failed. - ``USER_CANCELED``: The run was successfully canceled during execution by a user. - ``CANCELED``: The run was canceled during execution by the Databricks platform; for examp
dismissed
LLM, confidence 0.95
Very long line in generated SDK documentation listing run result state enum values.
Reasoning
The long line is a flattened RST enum description listing job run result states. Long lines in generated docs are a formatting artifact with no code execution or hidden content.
-
line length 565 characters (raw pass, confidence 0.50)
.. py:method:: update(name: str [, comment: Optional[str], credential_name: Optional[str], effective_enable_file_events: Optional[bool], effective_file_event_queue: Optional[FileEventQueue], enable_file_events: Optional[bool], encryption_details: Optional[EncryptionDetails], fallback: Optional[bool], file_event_que
-
line length 597 characters (raw pass, confidence 0.50)
.. py:method:: update(full_name: str, version: int [, aliases: Optional[List[RegisteredModelAlias]], catalog_name: Optional[str], comment: Optional[str], created_at: Optional[int], created_by: Optional[str], id: Optional[str], metastore_id: Optional[str], model_name: Optional[str], model_version_dependencies: Optio
-
line length 617 characters (raw pass, confidence 0.50)
.. py:method:: create(table_name: str, output_schema_name: str, assets_dir: str [, baseline_table_name: Optional[str], custom_metrics: Optional[List[MonitorMetric]], data_classification_config: Optional[MonitorDataClassificationConfig], inference_log: Optional[MonitorInferenceLog], latest_monitor_failure_msg: Optio
-
line length 560 characters (raw pass, confidence 0.50)
.. py:method:: update(table_name: str, output_schema_name: str [, baseline_table_name: Optional[str], custom_metrics: Optional[List[MonitorMetric]], dashboard_id: Optional[str], data_classification_config: Optional[MonitorDataClassificationConfig], inference_log: Optional[MonitorInferenceLog], latest_monitor_failur
-
line length 554 characters (raw pass, confidence 0.50)
.. py:method:: update(name: str [, aws_iam_role: Optional[AwsIamRoleRequest], azure_managed_identity: Optional[AzureManagedIdentityResponse], azure_service_principal: Optional[AzureServicePrincipal], cloudflare_api_token: Optional[CloudflareApiToken], comment: Optional[str], databricks_gcp_service_account: Optional
-
line length 1438 characters (raw pass, confidence 0.50)
.. py:method:: create(spark_version: str [, apply_policy_default_values: Optional[bool], autoscale: Optional[AutoScale], autotermination_minutes: Optional[int], aws_attributes: Optional[AwsAttributes], azure_attributes: Optional[AzureAttributes], clone_from: Optional[CloneCluster], cluster_log_conf: Optional[Cluste
-
line length 1480 characters (raw pass, confidence 0.50)
.. py:method:: create_and_wait(spark_version: str [, apply_policy_default_values: Optional[bool], autoscale: Optional[AutoScale], autotermination_minutes: Optional[int], aws_attributes: Optional[AwsAttributes], azure_attributes: Optional[AzureAttributes], clone_from: Optional[CloneCluster], cluster_log_conf: Option
-
line length 1417 characters (raw pass, confidence 0.50)
.. py:method:: edit(cluster_id: str, spark_version: str [, apply_policy_default_values: Optional[bool], autoscale: Optional[AutoScale], autotermination_minutes: Optional[int], aws_attributes: Optional[AwsAttributes], azure_attributes: Optional[AzureAttributes], cluster_log_conf: Optional[ClusterLogConf], cluster_na
-
line length 1459 characters (raw pass, confidence 0.50)
.. py:method:: edit_and_wait(cluster_id: str, spark_version: str [, apply_policy_default_values: Optional[bool], autoscale: Optional[AutoScale], autotermination_minutes: Optional[int], aws_attributes: Optional[AwsAttributes], azure_attributes: Optional[AzureAttributes], cluster_log_conf: Optional[ClusterLogConf], c
-
line length 731 characters (raw pass, confidence 0.50)
.. py:method:: create(instance_pool_name: str, node_type_id: str [, aws_attributes: Optional[InstancePoolAwsAttributes], azure_attributes: Optional[InstancePoolAzureAttributes], custom_tags: Optional[Dict[str, str]], disk_spec: Optional[DiskSpec], enable_elastic_disk: Optional[bool], gcp_attributes: Optional[Instan
-
base64-like blob (65 bytes, compression ratio 1.17) (raw pass, confidence 0.60)
Examples | Summary :--- | :--- ``etag=`` | An empty etag can only be used in GET to indicate no
freshness requirements. ``etag=RENUAAABhSweA4NvVmmUYdiU717H3Tgy0UJdor3gE4a+mq/oj9NjAf8ZsQ==`` | An
etag encoded a specific version of the rule set to get or to be updated.
likely benign
LLM, confidence 0.95
Documentation example of an opaque etag value in an access control proxy API reference.
Reasoning
This is the same etag documentation example as the other access_control doc, a duplicated generated docs page. The base64-like value is an illustrative example, not a payload.
-
line length 1210 characters (raw pass, confidence 0.50)
.. py:method:: create( [, access_control_list: Optional[List[JobAccessControlRequest]], budget_policy_id: Optional[str], continuous: Optional[Continuous], deployment: Optional[JobDeployment], description: Optional[str], duration_target: Optional[str], edit_mode: Optional[JobEditMode], email_notifications: Optional[
-
line length 644 characters (raw pass, confidence 0.50)
.. py:method:: repair_run(run_id: int [, dbt_commands: Optional[List[str]], duration_target: Optional[str], jar_params: Optional[List[str]], job_parameters: Optional[Dict[str, str]], latest_repair_id: Optional[int], notebook_params: Optional[Dict[str, str]], performance_target: Optional[PerformanceTarget], pipeline
-
line length 686 characters (raw pass, confidence 0.50)
.. py:method:: repair_run_and_wait(run_id: int [, dbt_commands: Optional[List[str]], duration_target: Optional[str], jar_params: Optional[List[str]], job_parameters: Optional[Dict[str, str]], latest_repair_id: Optional[int], notebook_params: Optional[Dict[str, str]], performance_target: Optional[PerformanceTarget],
-
line length 588 characters (raw pass, confidence 0.50)
.. py:method:: run_now(job_id: int [, dbt_commands: Optional[List[str]], duration_target: Optional[str], idempotency_token: Optional[str], jar_params: Optional[List[str]], job_parameters: Optional[Dict[str, str]], notebook_params: Optional[Dict[str, str]], only: Optional[List[str]], performance_target: Optional[Per
-
line length 630 characters (raw pass, confidence 0.50)
.. py:method:: run_now_and_wait(job_id: int [, dbt_commands: Optional[List[str]], duration_target: Optional[str], idempotency_token: Optional[str], jar_params: Optional[List[str]], job_parameters: Optional[Dict[str, str]], notebook_params: Optional[Dict[str, str]], only: Optional[List[str]], performance_target: Opt
-
line length 782 characters (raw pass, confidence 0.50)
.. py:method:: submit( [, access_control_list: Optional[List[JobAccessControlRequest]], budget_policy_id: Optional[str], duration_target: Optional[str], email_notifications: Optional[JobEmailNotifications], environment_variables: Optional[List[JobEnvironmentVariables]], environments: Optional[List[JobEnvironment]],
-
line length 824 characters (raw pass, confidence 0.50)
.. py:method:: submit_and_wait( [, access_control_list: Optional[List[JobAccessControlRequest]], budget_policy_id: Optional[str], duration_target: Optional[str], email_notifications: Optional[JobEmailNotifications], environment_variables: Optional[List[JobEnvironmentVariables]], environments: Optional[List[JobEnvir
-
line length 615 characters (raw pass, confidence 0.50)
.. py:method:: create_experiment(train_data_path: str, target_column: str, time_column: str, forecast_granularity: str, forecast_horizon: int [, custom_weights_column: Optional[str], experiment_path: Optional[str], future_feature_data_path: Optional[str], holiday_regions: Optional[List[str]], include_features: Opti
-
line length 657 characters (raw pass, confidence 0.50)
.. py:method:: create_experiment_and_wait(train_data_path: str, target_column: str, time_column: str, forecast_granularity: str, forecast_horizon: int [, custom_weights_column: Optional[str], experiment_path: Optional[str], future_feature_data_path: Optional[str], holiday_regions: Optional[List[str]], include_featu
-
line length 1189 characters (raw pass, confidence 0.50)
.. py:method:: clone(pipeline_id: str [, allow_duplicate_names: Optional[bool], budget_policy_id: Optional[str], catalog: Optional[str], channel: Optional[str], clone_mode: Optional[CloneMode], clusters: Optional[List[PipelineCluster]], configuration: Optional[Dict[str, str]], continuous: Optional[bool], deployment
-
line length 1191 characters (raw pass, confidence 0.50)
.. py:method:: create( [, allow_duplicate_names: Optional[bool], budget_policy_id: Optional[str], catalog: Optional[str], channel: Optional[str], clusters: Optional[List[PipelineCluster]], configuration: Optional[Dict[str, str]], continuous: Optional[bool], deployment: Optional[PipelineDeployment], development: Opt
-
line length 1195 characters (raw pass, confidence 0.50)
.. py:method:: update(pipeline_id: str [, allow_duplicate_names: Optional[bool], budget_policy_id: Optional[str], catalog: Optional[str], channel: Optional[str], clusters: Optional[List[PipelineCluster]], configuration: Optional[Dict[str, str]], continuous: Optional[bool], deployment: Optional[PipelineDeployment],
-
line length 531 characters (raw pass, confidence 0.50)
.. py:method:: query(name: str [, client_request_id: Optional[str], dataframe_records: Optional[List[Any]], dataframe_split: Optional[DataframeSplitInput], extra_params: Optional[Dict[str, str]], input: Optional[Any], inputs: Optional[Any], instances: Optional[List[Any]], max_tokens: Optional[int], messages: Option
-
line length 531 characters (raw pass, confidence 0.50)
.. py:method:: query(name: str [, client_request_id: Optional[str], dataframe_records: Optional[List[Any]], dataframe_split: Optional[DataframeSplitInput], extra_params: Optional[Dict[str, str]], input: Optional[Any], inputs: Optional[Any], instances: Optional[List[Any]], max_tokens: Optional[int], messages: Option
-
line length 666 characters (raw pass, confidence 0.50)
.. py:method:: create( [, auto_stop_mins: Optional[int], channel: Optional[Channel], cluster_size: Optional[str], creator_name: Optional[str], customer_version_label: Optional[str], enable_photon: Optional[bool], enable_serverless_compute: Optional[bool], instance_profile_arn: Optional[str], max_dbu: Optional[int],
-
line length 708 characters (raw pass, confidence 0.50)
.. py:method:: create_and_wait( [, auto_stop_mins: Optional[int], channel: Optional[Channel], cluster_size: Optional[str], creator_name: Optional[str], customer_version_label: Optional[str], enable_photon: Optional[bool], enable_serverless_compute: Optional[bool], instance_profile_arn: Optional[str], max_dbu: Optio
-
line length 669 characters (raw pass, confidence 0.50)
.. py:method:: edit(id: str [, auto_stop_mins: Optional[int], channel: Optional[Channel], cluster_size: Optional[str], creator_name: Optional[str], customer_version_label: Optional[str], enable_photon: Optional[bool], enable_serverless_compute: Optional[bool], instance_profile_arn: Optional[str], max_dbu: Optional[
-
line length 711 characters (raw pass, confidence 0.50)
.. py:method:: edit_and_wait(id: str [, auto_stop_mins: Optional[int], channel: Optional[Channel], cluster_size: Optional[str], creator_name: Optional[str], customer_version_label: Optional[str], enable_photon: Optional[bool], enable_serverless_compute: Optional[bool], instance_profile_arn: Optional[str], max_dbu:
-
line length 561 characters (raw pass, confidence 0.50)
.. py:method:: set_workspace_warehouse_config( [, channel: Optional[Channel], config_param: Optional[RepeatedEndpointConfPairs], data_access_config: Optional[List[EndpointConfPair]], enable_serverless_compute: Optional[bool], enabled_warehouse_types: Optional[List[WarehouseTypePair]], global_param: Optional[Repeate
-
file mixes tab and space indentation (87 tab-indented and 325 space-indented lines) (raw pass, confidence 0.40)
def _duration(d: str) -> Duration:
dur = Duration()
dur.FromJsonString(d)
return dur
-
`open(__file__)` — file reads its own source, common pattern for extracting payloads hidden in comments (ast pass, confidence 0.85)
with open(__file__, "rb") as f:
assert client._is_seekable_stream(f)
likely benign
LLM, confidence 0.90
Unit test opens the test file itself in binary mode to exercise seekable-stream detection.
Reasoning
The test opens its own file to get a seekable binary stream for testing _is_seekable_stream. This is ordinary test setup. The AST rule flags open(__file__) generically, and there is no decode, exec, or payload extraction in the snippet.
Run disclude locally to verify. Add --format sarif for SARIF output. Add --llm (with an API key in the environment) to include the LLM review.