Automations and Scripts - internal timings and concurrence

I have several input_numbers any one of which will trigger an automation when its state changes.
That automation in turn calls a script.

This is all well and good when the input_numbers are changed via the front end because the automation and script will under normal usage, be finished by the time the user has changed another one (unless the user has incredibly good fine motor skills!).

As well as the frontend I also want to use a Dash button and Telegram to update these input_numbers but doing so will mean they are all updated virtually simultaneously. This causes a timing problem as the automation will be triggered whilst already running and furthermore the scripts will also be called when they are already running.

Clearly I could simply force a delay between each update but that is a clunky because I’d be guessing how long to wait.

Alternatively, I could force a wait for both the automation and the script to end which is more elegant but what would be the exact internal timings with several instances of the automation and script all ‘queued’ to run?

Sorry for the long post, I suppose the question boils down to; does HA strictly honour the order that automations and scripts are called or would there be some randomness involved?

Here is an example of what my automation does:

  - alias: Duration changed in cycle1
    initial_state: 'on'
    trigger:
      - platform: state
        entity_id:
          - input_number.cycle1_zone1_duration   # These could all be updated
          - input_number.cycle1_zone2_duration   # virtually simultaneously
          - input_number.cycle1_zone3_duration   # by a Dash button or a 
          - input_number.cycle1_zone4_duration   # Telegram action
          - input_number.cycle1_zone5_duration
    action:
      - service: script.adjust_cycle1_durations     # This script takes a non-trivial
                                                    # length of time to complete