Please explain. I am really sorry to be dragging this discussion out, but I honestly think there is some information I'm missing. Please tell me what I am missing here? ** PLEASE ** read it before replying; I am honestly not trying to undermine you, just point out a serious problem with the apparent logic.
Your proposal is to have linux-headers-X depend on linux-image-X.
But:
* User installs linux-image-X and linux-headers-X
* User builds modules for this image using DKMS or whatever
* User then does "apt install linux-image-Y" - this is the exact scenario you hope to guard against?
... nothing brings in linux-headers-Y; the user is *still* left without their new modules.
Your proposal will only work if the user remembers to upgrade -headers... which will fix the problem even without the dependency!
I fully understand that there is a desire for users to keep linux-image-* and linux-headers-* in synch; my proposal is that a *further* package be created - linux-complete-VERSION - which depends on both of them. Users who have that package installed would always have the right thing happen. To encourage adoption, it could be in "Suggests" from each, and maybe even in DKMS?