currently there are only a few workshop chaining orders IIRC, like fishing-process raw fish, spin/process thread-weave, butcher-tan skin. i know there are a couple more but i cant remember on the top of my head. what if they were expanded, and if dwarves had the required labors enabled, they automagically do them, instead of walking away.
expanding old workshop chaining
an old example would be a butcher with tanning labor also enabled will try to queue both jobs at once. fishing is a bit of a mess IMHO, no idea how theyd queue both as fishermen tend to drop their catch on the ground for someone else to either stockpile or process it. maybe a more efficient method using the same old backpack to store freshly caught fish (and expanding the decay timers) to queue both fishing and processing jobs.
new job chaining - a new job replacement queue. probably too cpu intensive ATM
dwarves should be much more responsible. a dwarf who takes milking/shearing jobs should also put the creature back in its pasture. pen/pasture jobs are really low priority jobs, and having to wait for someone else to queue it months later is frustrating. this literally applies to just about everything from harvesting to crafting. ive seen many farmers/herbalists drop their crops on the ground only for someone else to put it in the stockpile, while they have no job queued for a while. a hauling craftsdwarf (like a carpenter) should be able to decide to also do a carpentry job while theyre at it hauling the log.
another example, many miners doing a long range mining job just to do 1 tile and back again, versus many miners canceling their long range mining job because 1 miner got their first and replaced the job queue.
just 1 more example i can think of on the top of my head, clothing. the wiki says in order to book a clothing, they go through an extensive thought process. what if we made it much more extensive by tacking on 'stuff the old clothing in a bin and disown it' instead of just dropping it owned?
cancellations
there should also be better job cancellations too. ive seen many militia dwarves still hauling heavy stuff like stone or clay while switching to their active training duty. they should just drop their current job/item before switching. this also applies to civilian dwarves running away from something. ive seen some of them still hauling stone and stuff while running away. it sort of defeats the purpose of the 'running away' part.
military dwarves with inactive targets should also be able to cancel their target. if we tell squad A to kill something B, and dwarf C is still sleeping/eating/drinking/training session. dwarf C will go to where something B was at, and stare at the sky for a few days. they should automagically know that something B was killed and queue up a different job.
extra - make any job high priority (do now - n)
we should also be able to go through the job menu and add a high priority (like in workshops) on any job. i dont think job priority will ever be modifiable, but please give players something that allows it to shift it in our favors.
1 more extra - linking workshops to workshops, and reworking the AI
i tend to dislike stockpiles, and stockpile linking is very iffy. what if linked stockpile/workshops were recommended instead of required, or set a tolerancy level? 0 for default strict required behavior and 1 for more lenient recommended?
the ole butcher/tanner example.
both set to 1 - standard vanilla antics. i tend to have many butcher/tanner shops close together in many locations. 1 tanner shop in my cavern pasture will take a raw skin from a butcher shop on the surface and vise versa.
tanner set to 0 - tanner will only tan a hide from the linked butcher shop, and with both labors active will queue both jobs.