Additionally, all the other hard-code checks need to be re-evaluated to reflect the latest changes of the Algorand protocol.
Suggestion:
Maybe one approach is to remove all the checks, where you won't perform runtime verification but you will rely on the Algorand Client to throw an error if the user enters incorrect data. With this approach, you won't need to track the latest updates all the time.
The URL field in the AssetParams object can be up to 96 bytes, as documented here.
I believe this line of code needs to be changed.
Additionally, all the other hard-code checks need to be re-evaluated to reflect the latest changes of the Algorand protocol.
Suggestion: Maybe one approach is to remove all the checks, where you won't perform runtime verification but you will rely on the Algorand Client to throw an error if the user enters incorrect data. With this approach, you won't need to track the latest updates all the time.