Let me be the first to thank you for all this hard work.
Not everyone will recognise it right now, but this lays the groundwork for player housing in future. It's kind of incredible just how much of the 0.6 feature line you guys have knocked over already.
I'll try to answer some of your questions to get the ball rolling. Others are more than welcome to chime in with corrections or more information. I don't mind if I get something wrong, just correct me.
I'm at work right now so will add to this over next couple of days if I get a chance to test something properly. Right now information is from the top of my head.
Building interior state is kept until you leave the town/city/place.
Yeah, it seems to be. I haven't stressed this system though. Maybe it only stores the last 5 (or 10 or 20) buildings the player enters in that location. Whatever limits classic has, I would be more than happy for you to cache all buildings player enters inside a location and persist that until they leave location.
Shops restock shelves... when?
I believe every 24 hours of game time. Can anyone confirm?
Enemies inside buildings - do they persist if you leave then re-enter? Can they transition outside, or is leaving a surefire way to escape quest enemies who are kicking ya butt? (not guards, they are different)
I believe they persist if player runs outside and back in - but cannot transition outside themselves. Right now I don't persist any building interiors and quest enemies are simply re-injected when player enters building again.
If you are surrounded outside, can you recall and if you come back are enemies gone?
I believe if you recall to a different map pixel, the exterior state will be cleared. But if you recall to elsewhere within same map pixel, state will persist. Would really need to test this to be sure.
Renting tavern rooms - does dropped loot persist until room rent expires? Can you store in furniture? Is it room specific or can you use any room in the tavern?
I think any dropped loot in the tavern uses standard persistence rules for interiors. I believe you can initiate rest from anywhere inside tavern after renting a room and player will awake on top of a REST marker. Enable "Show Editor Flats" in StartGameBehaviour Inspector to see these in scene. They are generally placed at the foot of each bed - there's no "room" allocated as such.
It's likely player is allocated a random REST marker at time of renting so they have a constant bed to wake up next to on subsequent rests. Not sure if player is allocated same REST marker when they renew renting or just get another random one.
Are there any buildings (i.e. not dungeons or palaces which are actually dungeons) which have action objects (i.e. levers etc)
Nope, interiors do not carry any interactable objects like this. The action record structure is only present in RDB records and not at all in RMB block data where interiors are housed.
I'm guessing this is why original developers didn't use action records for basic interior doors and just made doors a standalone interactable object.
Oh and for extra credit, is there any relationship between the "House for Sale" buildings you can find and the houses sold by banks? I can't see one.
No extra credit for me then.
I thought the "house for sale" buildings were 1:1 what the bank would offer. If this isn't the case, I'm not sure how else banks would ID an available player home. This is probably something we need some reverse engineering on to uncover.