Write a single runtime parameter on a robot.
The path is a dotted string like "motion.max_speed". The value is
passed through to BB.Parameter.set/3, which validates it against the
registered schema and publishes a change notification on success.
A parameter declared with a unit type takes an object carrying the magnitude
and the unit name, e.g. {"value": -12.5, "unit": "degree"} — the same shape
the read paths report. A bare number is also accepted and is taken to be in
the unit the parameter declares.