Making changes to addon schema in config.yaml but not seeing any changes in the UI?

Below is my config.yaml - should it work OK? I am trying to add in a ‘production’ option so I can toggle between testing against a local mailhost and a remote one (Gmail) and I can’t get the options in the UI to actually change! Despite refreshing. Thanks

name: "SMTP Email Aggregator MQTT"
version: "1.0.3"
slug: "smtp_email_aggregator_mqtt"
init: false
description: "SMTP server that aggregates and relays emails"
url: "https://github.com/yourusername/smtp_email_aggregator_addon"
arch:
  - aarch64
  - amd64
  - armhf
  - armv7
  - i386
startup: application
boot: auto
ports:
  5025/tcp: 5025
host_network: true
services:
  - mqtt:need
name: "SMTP Email Aggregator MQTT"
version: "1.0.3"
slug: "smtp_email_aggregator_mqtt"

options:
  smtp_mode: "production"
  outgoing_host: "smtp.example.com"
  outgoing_port: 587
  outgoing_secure: false
  outgoing_auth_user: ""
  outgoing_auth_pass: ""
  mailpit_host: "localhost"
  mailpit_port: 1025
  incoming_host: "0.0.0.0"
  incoming_port: 5025
  aggregate_subject: "Consolidated xxx"
  aggregate_body_text: "Dear xxx"
  aggregate_wait_minutes: 5
  aggregate_check_seconds: 10
  queue_threads: 3
  queue_poll_seconds: 5
  queue_retry_count: 5
  queue_failure_pause_minutes: 1
  postfix_enabled: false
  postfix_relay_host: "smtp.gmail.com:587"
  postfix_sasl_auth_enabled: true
  postfix_sasl_security_options: "noanonymous"
  postfix_tls_security_level: "encrypt"
  mqtt_error_topic: "smtp_aggregator/errors"
  mqtt_stats_topic: "smtp_aggregator/stats"
  mqtt_stats_interval: 300
  log_level: "info"

schema:
  smtp_mode: list(production|mailpit)
  outgoing_host:
    type: str
    show_if: "smtp_mode=production"
  outgoing_port:
    type: port
    show_if: "smtp_mode=production"
  outgoing_secure:
    type: bool
    show_if: "smtp_mode=production"
  outgoing_auth_user:
    type: str
    show_if: "smtp_mode=production"
  outgoing_auth_pass:
    type: password
    show_if: "smtp_mode=production"
  mailpit_host:
    type: str
    show_if: "smtp_mode=mailpit"
  mailpit_port:
    type: port
    show_if: "smtp_mode=mailpit"
  incoming_host: str
  incoming_port: port
  aggregate_subject: str
  aggregate_body_text: str
  aggregate_wait_minutes: int(1,60)
  aggregate_check_seconds: int(1,60)
  queue_threads: int(1,10)
  queue_poll_seconds: int(1,60)
  queue_retry_count: int(1,10)
  queue_failure_pause_minutes: int(1,60)
  postfix_enabled:
    type: bool
    show_if: "smtp_mode=production"
  postfix_relay_host:
    type: str
    show_if: "smtp_mode=production && postfix_enabled=true"
  postfix_sasl_auth_enabled:
    type: bool
    show_if: "smtp_mode=production && postfix_enabled=true"
  postfix_sasl_security_options:
    type: str
    show_if: "smtp_mode=production && postfix_enabled=true"
  postfix_tls_security_level:
    type: str
    show_if: "smtp_mode=production && postfix_enabled=true"
  mqtt_error_topic: str
  mqtt_stats_topic: str
  mqtt_stats_interval: int(60,3600)
  log_level: list(trace|debug|info|notice|warning|error|fatal)

After editing config refresh is not enough. Restart HA, please.

Turns out “show if” isn’t supported