Minimal upgrade boot via GPIO

My client wants to implement a function where holding a GPIO button down during device boot will trigger a fast, minimal mode that allows upgrade via web/sysupgrade and very little else (perhaps console tty). Modifying the boot loader is not an option, all changes should be within OpenWRT and as limited as possible. I've done a few Web searches on the topic with limited success.

My current thought is to detect the GPIO press early in the boot up and use that to mount an alternative rc.d directory on top of the default one, that only enables a Web server to support the sysupgrade. What I like about this approach is that it only temporarily modifies the normal boot flow, in a way that won't survive a reboot.

Does OpenWRT have a facility for limited upgrade boot that I missed? Any other ideas?

Thank you for any advice.

No, unless you're talking about failsafe mode, real recovery is usually done by the bootloader (as kernel or read-only rootfs might be unbootable as well).