Unexpected input in forms

what should i do to get the expected dialogue?

when running, i got the following:

user: query wether
robot: what city?
user: query wether
robot: <fallback message>
user: hello
robot: <fallback message>

yet I expect the following dialogue:

user: query wether
robot: what city?
user: query wether
robot: what city?
user: hello
robot: I can help query wether

following is snippets in my domain/rules configuration: rules.yml:

version: "3.0"
rules:
  - rule: activate weather form
    steps:
      - intent: weather
      - action: weather_form
      - active_loop: weather_form
  - rule: Submit form
    condition:
      # Condition that form is active.
      - active_loop: weather_form
    steps:
      - action: weather_form
      - active_loop: null
      - slot_was_set:
          - requested_slot: null
      # The action we want to run when the form is submitted.
      - action: action_weather_form_submit
      - action: action_restart

domain.yml:

entities:
  - address
  - date-time
slots:
  address:
    type: text
    influence_conversation: true
    mappings:
      - entity: address
        type: from_entity
  date-time:
    type: text
    influence_conversation: true
    mappings:
      - entity: date-time
        type: from_entity
forms:
  weather_form:
    required_slots:
      - address
      - date-time

You should validate the address slot as described here.