If you want to have multiple pools for purposes of different retention levels for full / diff / incremental, can you point them all at the same storage device? When each pool goes to do its retention / purge / prune thing using the settings in the pool, is it smart enough to only touch volume files that were created by that particular pool?
One disadvantage of putting multiple pools at the same device is that a device can only service one pool at a time. (But not confirmed.)
Yes, you can point multiple pools at the same device.
Bacula is smart enough to do the Right Thing with respect to retention policies, pruning, purging, etc. (this is all handled in Bacula's database - the device isn't really involved).
The major caveat to be aware of is that if you're using an autoloader you want to ensure your pools don't overlap (no two tapes have the same bar code) to avoid accidentally scratching a tape you need. For the same reason you don't want volumes with the same name in two different pools sharing a (disk) device -- Bad Things can happen.
Similarly if you're manually changing tapes you want to be extremely careful to load the proper tape when Bacula asks for it. Bacula is generally good about reading the tape label and refusing to use a "wrong" tape, but you want to avoid any opportunities for error / data loss.