That is intentional. When you have no restrictions (in a Casual ascension, for instance), KoLmafia is attempting to save resources/server hits by requiring you to have the most effective "easy" item on hand. The cost is trivial (4500 right now) and one time.
while(get_clan_id() != 90485)
A first step would be to have the script print what it thinks get_clan_id() is in that block. And if something weird is happening with that, then there's also get_clan_name() to try.
Don't worry, historical prices were not a consideration in my fix. I just made sure that if you're adventuring (in a fight or choice) there won't be any server hits when attempting to get a mall price.
Seems like the code should be better about handling paths that aren't pre-listed, rather than relying on a buffer of 3 (completely arbitrary) unknown paths. Perhaps all of those Path-returning functions should return UNKNOWN (id -1) when the value doesn't exist in the maps.
Given that the code assumes scripts have unique names, and also given the effort to prevent any access to files outside of KoLmafia's directories, my first assumption would be that any leading ../ is stripped away before further processing. I know I added something like that in at least one...
Some googling tells me that this is due to failing to find an IP address. Sounds like a temporary network issue on your end that can't be prevented.
That value is not even checked by mafia. In general, can_interact() should be equivalent. No one has previously expressed an interest in knowing whether an ascension started out as Casual. Seems like it only matters if you're planning to do a 1-day casual and then a non-casual ascension in the...