The preference system is not particularly predictable and mainly suitable when no further information is available.
In particular there are two other methods to distribute that would be useful:
By percentages, i.e., always try to push/pull in direct proportion. In this case the preferences could have a meaning of percentage.
By absolute, i.e., try to push/pull everything to the highest preference first, any leftover goes to next highest, etc.
I think this will need a refactor somewhere, I think we could get away with only refactoring get_connected. Though it would still need someone to go through and identify places where these new behaviours would be preferrable to the default.
The
preference
system is not particularly predictable and mainly suitable when no further information is available.In particular there are two other methods to distribute that would be useful:
preferences
could have a meaning of percentage.I think this will need a refactor somewhere, I think we could get away with only refactoring
get_connected
. Though it would still need someone to go through and identify places where these new behaviours would be preferrable to the default.