Turns out this isn't a bug after all, just an awkward system.
I've got 3 pets doing Battle Quests - a Tier 2 for the first 5, a Tier 4 for the next 5 and a Tier 11 for the rest. When I got to Level 11 I made the weapons and scrolls for my Tier 11 pet the default but the scrolls didn't show up - the scroll box was blank. When I tested out a battle using the ordinary challenge opponent option , the scrolls did show up.
If you click the BQ button "Challenge (Challenger Name)" it will preselect your active pet. If the active pet has less AP than your spell set requires and then you click a different pet with higher AP it still uses the active pet's AP to calculate if your selected pet can use the spell set. If there isn't enough AP on the active pet, you get the blank no spells.
Two ways to work around this. One: have the pet with higher AP be your active pet while doing those BQs. Click the same button and your spells should appear.
Two: click the picture of the BQ challenger instead of the button. It will not preselect any pet on the challenger screen. You then click whatever pet you want to battle with (presumably the one with higher AP) and your spells will show up as expected.