X_JOB_NOT_PROMOTABLE
Means
the job is not waiting on its run time
Typical cause
x jobs promote or promote() was asked for a job that is not waiting on a clock: an unknown id, a job already due, running or finished, or one suspended in a step.sleep — whose wake time is the step record, not the row
Fix
x jobs show <id> --json