To me it seems like you do not like the fact that the neutrally
sounding babl_format name "RGBA float" is strictly defined in the
architecture of both babl and GEGL, and see this as the thing in the
architecture that should be changed to be *the*processing*space*.
While I am arguing that this is existing functionality we need; and

Code that enables the user to easily switch between linearized RGB and
perceptually uniform RGB could be amazingly useful. Two points:

1. The code that switches between linear and perceptually uniform RGB is
completely separable from your desire to force a conversion to "sRGB as
PCS". That forced conversion code isn't in the code base yet.

2. You want to use that "linear/perceptual" code to control for every
single op whether the op should be performed on linearized or
perceptually uniform RGB. You can make a case for certain ops like
scaling. But even that case means that a teacher or writer can't use
GIMP to demonstrate concepts.

You could accomplish guiding users as to the right choices regarding
linear vs perceptual by creating presets and allowing users the freedom
to control their own editing decisions. You don't have to build fences
around what people can do with their own RGB color data.