Hi Cameron,
I think It makes more sense to use *warn-on-reflection* only when you are working with your code locally in your REPL.
Also, when you are using set! you are trying the change the root-binding of the var. This is not permitted. Have a look
here
I'm not too sure about the "gte" exception. Is this defined by you? Maybe you can elaborate a litte more on that as to what you are doing?
rdsr