convertTimezone and dashboard variable

Hello,

I'm running the latest version, 0.47.3.

I can't reproduce this using the H2 database because I cannot use the convertTimezone function without getting the error "metabase.driver.sql.query-processor/->honeysql called on something already compiled to Honey SQL. See metabase.driver.sql.query-processor/throw-double-compilation-error for more info.".

The problem is that when I create a custom field for a datetime with a new timezone and I connect that to a variable in a dashboard I get an empty result and the error message below in the logs.

For privacy reasons I also cannot show you the full error message.

[959baa37-8818-4d8e-b0db-15f62268b8f5] 2023-10-05T17:17:09+02:00 ERROR metabase.query-processor.middleware.catch-exceptions Error processing query: Output of unwrap-field-clause does not match schema: 

	   [(not (present? :field)) (not (present? "id-or-name")) (not (present? "options"))]  
{
...
:parameters
  [{:type :date/all-options,
    :value "past3months",
    :id "ad223047",
    :target [:dimension [:expression "Timestamp Stockholm"]]}],
  :async? true,
  :cache-ttl nil},
 :native nil,
 :status :failed,
 :class clojure.lang.ExceptionInfo,
 :stacktrace
 ["--> models.params$fn__61458$unwrap_field_clause__61463.invoke(params.clj:48)"
  "query_processor.middleware.parameters.mbql$fn__74924$build_filter_clause__74929$fn__74939.invoke(mbql.clj:60)"
  "query_processor.middleware.parameters.mbql$fn__74924$build_filter_clause__74929.invoke(mbql.clj:47)"
  "query_processor.middleware.parameters.mbql$expand.invokeStatic(mbql.clj:89)"
  "query_processor.middleware.parameters.mbql$expand.invoke(mbql.clj:75)"
  "query_processor.middleware.parameters$expand_mbql_params.invokeStatic(parameters.clj:37)"
  "query_processor.middleware.parameters$expand_mbql_params.invoke(parameters.clj:33)"
  "query_processor.middleware.parameters$expand_one.invokeStatic(parameters.clj:49)"
  "query_processor.middleware.parameters$expand_one.invoke(parameters.clj:41)"
  "query_processor.middleware.parameters$expand_all$replace_75026__75027.invoke(parameters.clj:59)"
  "mbql.util.match.impl$replace_in_collection$iter__30881__30885$fn__30886.invoke(impl.cljc:44)"
  "mbql.util.match.impl$replace_in_collection.invokeStatic(impl.cljc:43)"
  "mbql.util.match.impl$replace_in_collection.invoke(impl.cljc:38)"
  "query_processor.middleware.parameters$expand_all$replace_75026__75027.invoke(parameters.clj:59)"
  "query_processor.middleware.parameters$expand_all.invokeStatic(parameters.clj:59)"
  "query_processor.middleware.parameters$expand_all.invoke(parameters.clj:53)"
  "query_processor.middleware.parameters$expand_all.invokeStatic(parameters.clj:56)"
  "query_processor.middleware.parameters$expand_all.invoke(parameters.clj:53)"
  "query_processor.middleware.parameters$expand_parameters.invokeStatic(parameters.clj:77)"
  "query_processor.middleware.parameters$expand_parameters.invoke(parameters.clj:73)"
  "query_processor.middleware.parameters$fn__75043$substitute_parameters_STAR___75048$fn__75049.invoke(parameters.clj:82)"
  "query_processor.middleware.parameters$fn__75043$substitute_parameters_STAR___75048.invoke(parameters.clj:79)"
  "query_processor.middleware.parameters$substitute_parameters.invokeStatic(parameters.clj:109)"
  "query_processor.middleware.parameters$substitute_parameters.invoke(parameters.clj:101)"
  "query_processor$preprocess_STAR_$fn__78277.invoke(query_processor.clj:167)"
  "query_processor$preprocess_STAR_.invokeStatic(query_processor.clj:165)"
  "query_processor$preprocess_STAR_.invoke(query_processor.clj:160)"
  "query_processor$fn__78285$combined_pre_process__78286$combined_pre_process_STAR___78287.invoke(query_processor.clj:257)"
  "query_processor.middleware.resolve_database_and_driver$resolve_database_and_driver$fn__76963$fn__76968.invoke(resolve_database_and_driver.clj:36)"
  "driver$do_with_driver.invokeStatic(driver.clj:93)"
  "driver$do_with_driver.invoke(driver.clj:88)"
  "query_processor.middleware.resolve_database_and_driver$resolve_database_and_driver$fn__76963.invoke(resolve_database_and_driver.clj:35)"
  "query_processor.middleware.fetch_source_query$resolve_card_id_source_tables$fn__72945.invoke(fetch_source_query.clj:316)"
  "query_processor.middleware.store$initialize_store$fn__73126$fn__73127.invoke(store.clj:12)"
  "query_processor.store$do_with_store.invokeStatic(store.clj:56)"
  "query_processor.store$do_with_store.invoke(store.clj:50)"
  "query_processor.middleware.store$initialize_store$fn__73126.invoke(store.clj:11)"
  "query_processor.middleware.normalize_query$normalize$fn__77259.invoke(normalize_query.clj:36)"
  "query_processor.middleware.constraints$add_default_userland_constraints$fn__74653.invoke(constraints.clj:54)"
  "query_processor.middleware.process_userland_query$process_userland_query$fn__77188.invoke(process_userland_query.clj:151)"
  "query_processor.middleware.catch_exceptions$catch_exceptions$fn__77585.invoke(catch_exceptions.clj:171)"
  "query_processor.reducible$async_qp$qp_STAR___66802$thunk__66804.invoke(reducible.clj:103)"
  "query_processor.reducible$async_qp$qp_STAR___66802$fn__66806.invoke(reducible.clj:108)"],
 :card_id 339,
 :context :dashboard,
 :error
 "Output of unwrap-field-clause does not match schema: \n\n\t   [(not (present? :field)) (not (present? \"id-or-name\")) (not (present? \"options\"))]  \n\n",
 :row_count 0,
 :running_time 0,
 :preprocessed nil,
 :ex-data
 {:type :schema.core/error,
  :value nil,
  :error [(not (present? :field)) (not (present? "id-or-name")) (not (present? "options"))]},
 :data {:rows [], :cols []}}

IS this a bug?

Cheers