Actually, as I type I realise a problem (maybe this is what you speak of).
"IsNew" can be accessed without a database context. So perhaps the model I am thinking of would not be "entity.IsNew" but "adapter.IsEntityNew(entity)". This is probably quite a fundamental change, so I can understand hesitation in that.
pfew I'm glad you finally understood it.
Still, I think it's more accurate representation of the "IsNew" quality.
You mean, it should have been named 'Fetched' or 'Exists' and have a value !IsNew ? Isn't that the same thing?
What you suggest above is also giving other problems: the adapter has to keep track of its entities it fetched. That's not what it does: it's not a context or a cache, it's a piece of logic yuo use to do things. So if I fetch an entity E with adapter instance A and I save it with adapter instance A2, on the same DB, it should work properly, so A2 shouldn't have to look up what A did with E.