
TODO: TODO_96_01_13_29: multiple bootstrap stages to instantiate configs

# Problem

## Single high-level config source for multiple low-level configs

In multi-language environment (for `argrelay`, at least Bash and Python) config files often
contain identical information in different formats.

FS_85_33_46_53: bootstrap process should have at least three distinct stages:
*   minimal to set up Python venv with required dependencies
*   use high-level config input (some YAML) to instantiate all other configs
*   do anything else

See also FS_28_84_41_40 multi-level bootstrap.

## Minimizing initial Bash bootstrap

Current single `@/exe/bootstrap_env.bash` has to be self-sufficient - it cannot rely on any dependencies.

Because it is single, it keeps running with the same minimal assumptions about environment:
*   it has to continue running as Bash script
*   it (mostly) cannot source outside files as they should be upgraded first by this same boostrap script

With multiple bootstrap stages, next bootstrap stage can run in Python (easier to test) -
this is similar to the split of FS_36_17_84_44 `check_env` script.

## Using Python for bootstrap

Running Python for bootstrap has few key benefits:
*   It will tell the choice of Python interpreter making `@/conf/python_env.conf.bash` unnecessary.
*   Code is independent of target shell (e.g. `bash`, `zsh`, ...) but can generate required files for all.
*   Easier to implement, test, structure code than in shell scripts.

See also FS_28_84_41_40 multi-level bootstrap.
