Sets currently have a slightly inconsistent behaviour.
At the moment, installing a set will select all the individual components of that set (also happens with builtin sets, which is misleading for the
rebuild set, as if
omwllf is pulled in as a dependency it will get selected when you
omwmerge @rebuild, unless you use
--oneshot), and will not really respect changes to that set. It's precisely a short-form for the component packages.
The better behaviour (which Portage implements) is to track explicitly installed sets, and look them up during updates. Then changes to the set file will be propagated if you run
omwmerge -uDN @world.
It might be useful to follow the hierarchy defined in https://wiki.gentoo.org/wiki/Package_sets. I.e.
@world = @selected @system,
@selected = @selected-packages @selected-sets and
@selected-packages is the contents of the world file, while
@selected-sets is the contents of the