It would also be possible to write what you want in such a way that it works properly (without palette swaps) on Octo’s reference runtime, but swaps palettes in a specially-prepared runtime.
Of course, it’d fully work on the reference runtime, just be improved with a palette swap aware runtime.
If you were to add such a feature it is essential that you make this clear on your submission page, out of fairness for other participants.
Seems fair.