Step #1, done;
the target of the first step is to autoclone the /rootfs (extroot) when sysugrade or flashing or resetting...
I'll have integrate the management of my rootfs layer here :
this script is for /lib/preinit/... it will check for a flag and (re)create a clone of rootfs and enable it for fstab...
Step #2, study GL.INET and/or TURRIS auto-updater...
The target of this second step is to keep or reinstall the users packages...!
The main problem may be the overlay of the rootfs...