---
feature_story: FS_76_29_13_28
feature_title: arg consumption priorities
feature_status: TEST
---

There are two orders which can prioritize arg consumption:
*   user input: the order in which args are specified on the command line
*   user config: the order in which arg types are listed in FS_31_70_49_15 `search_control`

This is different from interrogation - when there is no consume-able args anymore
and user is given suggestion to select from.
User interrogation is according to "user config" (FS_31_70_49_15 `search_control`) priority.

For the purpose of arg consumption prioritization (at the moment):
*   user input is used - arg values are tried to be consumed in the order they are specified
*   user config is ignored - which arg type gets filled next is random
    (based on dynamic order inside `remaining_types_to_values`)

The feature determines behavior for cases like:
*   TD_76_09_29_31 overlapped arg vals from diff arg types
*   TD_76_09_29_31 mutually exclusive arg vals from diff arg types

See also:
*   FS_44_36_84_88 consume args one by one

TODO: FS_76_29_13_28 Why not define the order based on FS_31_70_49_15 `search_control`
      (instead of whatever internal order `remaining_types_to_values` has)?
      It could already be the case that `remaining_types_to_values` are ordered as `search_control`.
      Why not make it explicit?
