I agree with your observations on user and technical level.
Conversion between a Nazca cell and a KLayout cell should do the trick. Nazca internally has a detailed hierarchical representation of a layout and/or circuit, which can be exported modularly to various output formats like gds, svg, png, netlist, nazca-script, etc., while collapsing (part of) the hierarchy where desired or required. I haven’t studied the KLayout elements in great detail, but my impression is that the structure is very similar. For an exchange back and forward (one way is very restrictive and frustrating in a design flow) a superset of attributes is required. I am not to worried about types for PCells, as these can be stored as attributes in an exchange/conversion. In Nazca we can keep track of parameter types and range checking. It adds some book-keeping regarding parameter type-casting and units, but that is not bad from an engineering perspective. I do not see great technical issues and think it is less of a software challenge than the right design-interface/flow choices from a designer’s perspective.