Behaviour tree with player driven priorities

I’m currently getting (re)acquainted with the behaviour tree system. I’m trying to build a system where tasks have a priority but that priority can be set by the player. So, for instance, for one AI they might have a priority order of Cook, Build, Hunt but a different AI might have Hunt, Build, Cook.

Is there a way to do this with the behaviour tree? The only thing I can think of would be to have a service running on an early node that’s doing all the processing of available jobs, assigning one there and updating the blackboard, and then having a decorator on each of the tasks that’s checking the blackboard to see if it’s active. I think that would work, but it definitely feels wrong to put a big chunk of the decision logic into a single node.