remote-subnet[46]-set still accept incorrect id.
Current code requires that the id entry exists and relies on the core parser to check if the entry is valid, e.g. is an integer.
It is not enough because this still accepts incorrect id value, e.g. zero. The simplest is to just copy the code from other commands i.e. remote-subnet[46]-{get-del}-by-id.
A final note: this is for formal correctness i.e. it is unlikely someone uses an incorrect value in the real world.