For some reason creating another server does not work for me. What seems to work tho is wrapping the bkapp inside a lambda. I’m still guessing there is some caching going on somewhere.
In case anyone stumbles with this in the future
server = bss.Server({'/': lambda x: bkapp(x)}, port=8080, address="0.0.0.0")
works as intended.
Another option is to fork and start the server on the child. This has the benefit of not blocking the main interpreter.
Thank you for your help!