How to conditionally set a jobs.<job_id>._foo_ value?

Is there a way for me to, in a workflow, run some code that programmatically sets some value, and then uses that value to set a job configuration item like .name or .runs-on or .strategy.fail-fast or any other? For example, what if I want a job to have .continue-on-error be true in some situations and false in others, based on some environment variable value or some query run in a previous job.

I can set outputs from jobs and use them in subsequent jobs, but I can’t find any clear documentation on what values are available during the parsing of which job settings. For example, can a job’s .name use an output from a previous job? Can any job..foo use outputs from previous jobs?