Bug
execute_sql fails with 'str' object has no attribute 'as_dict' when query_tags is provided.
The SDK's StatementExecutionAPI.execute_statement() expects query_tags: Optional[List[QueryTag]], but executor.py passes the raw string directly.
Root Cause
executor.py line 88-89:
if query_tags:
exec_params["query_tags"] = query_tags # passes string, SDK expects List[QueryTag]