Yes, cache invalidation isn't trivial. But it's a software problem that you can solve (for your particular application, or with a library for many similar applications) with enormous economies of scale.
> I'm just saying it could be done. Not that everybody would use it or like it. Although, I imagine getting rid of one dependency (cloud) and having more control would be a plus to some.
Ok, no objection there. Yes, some people would like this.
My point is that cloud first, and local caching that lets you work offline (like what you get with GMail and Google Docs) works well enough for most people, that there's probably not enough market share left over for your offline-first dream to get the economics of scale.
Though it's probably still more than possible in the same way that running your desktop on Linux was feasible from the 1990s onwards: at times a bit clunky, but if you are willing to put up with it, totally doable. Been there, done that.
> Phone centered solution could be more cost effective. A casual user would only need a phone, a backup solution (either cloud based or an external drive connected to a network) and a bigger display with input devices (portable or desktop). Possibly one less subscription they have to pay and lower HW costs.
If you need an external display anyway (and a battery, if you want a laptop form factor), adding a bit of compute power to turn it into essentially a ChromeBook is close enough to free. You don't even need that much computing power, because instead of offloading the computation onto your phone (like your scenario), you offload the heavy lifting into the cloud (basically our real world right now for most people).
The HW costs aren't that much lower, because low performance chips are already pretty cheap.
> But it's a software problem that you can solve ... with enormous economies of scale.
Can be a problem for software that doesn't have such economies of scale.
Cloud is cheap for very basic usage, but costs can increase noticeably when workload increases.
Regarding UX. Some things work better in the cloud while some tasks are not so well suited for the cloud (e.g. latency sensitive tasks, task that require non trivial amount of data transfer between the user and the could).
I have no idea how many casual users would be affected by one or more of these things, if any. Phone centered user could still use cloud for some things. Maybe there would be enough interest, if polished solution becomes available. It could be you are right, I don't really know.