Currently, each time you open up a magic items shop, you're facing a new set of items. From memory and quick test, in classic those behave more like your usual shop: items will stay around for a while, if you buy one it disappears from the shop (but the shop will eventually refill).

But also, again from memory, the same merchant will always have the same set of items on display. That's consistent with people starting to build list of places to buy specific items, even if the UESP contains inaccuracies at times.
(another example in Province Gazetteer)
I wonder if that has been fully reverse-engineered.

I updated the type of items that are created a while ago to generally match classic (not counting this apparently always producing the same specific items, which I didn't know about), so it's not just a placeholder, although, the items not persisting between different talks to the merchant would mean that part hasn't been implemented yet.

If merchants really always have the same stock in classic, then my first guess is that the random number generator always ends up with the same specific seed for that merchant, resulting in the same items. Not sure if we will have that replicated any time soon, it would probably be the same thing as, or related to at least, getting interior NPC names to match classic.

// TODO: Classic seems deterministic so when re-visiting each mages guildhall, player sees same stuff.
// Does it change with level? Is it always generated but uses a consistent seed? How should DFU do this?

I think you're right that it will use something to seed the creation function. Currently all of the random item generation methods are using unity random functions instead of the daggerfall classic rand so that's also an issue here.

This feature is functional and free of operational defects for end users. It might not match classic behaviour precisely, but that's more a topic of refinement than a bug. I have no concerns about small divergences such as this.

Happy for discussion to continue, but I don't see this as a priority right now.

As far as I'm concerned, I like the idea of stock being deterministic for gameplay (this gives an incentive to explore mages guilds to find the specific item you want, take notes, share findings with other players).
Matching the exact formula used in classic so that you find the same items in both games would be nice, but I really don't mind as much.

When a measure becomes a target, it ceases to be a good measure.
-- Charles Goodhart