Remove specific edge of a solid?

Hello,

is there any way in python to remove a specific edge? or fuse two co-linear faces but indicating which ones to fuse?
i would like to use this to remove this specific edge:

but if i use repair union faces it will merge all the faces of the cylinder to a single one., i would like to keep the cylindrical face divided (or other colinear faces in another part of the solid that want to stay divided).

i know about the geompy.checkAndImprove() which in a case like this ‘should’ remove the undesired edge & vertex, but this is quite specific to a block and actually for this simple geometry it is failing (giving GEOMAlgo_GlueDetector failed).

the only way i found to do this is:

  1. detect the specific faces sharing the specific edge, create a shell out of the two, then use union faces on it (this will remove the internal edge).
  2. create a new shell from the output of union faces and the faces that were not sharing the specific edge
  3. create a solid out of the new shell created
  4. use union faces (as this solid will still have the extra vertex from the other two circular faces)
  5. make a partition of the result by the other edges that are not the one i want to remove and not the circle ones

if there is any more clean way to do this, i would appreciate any recommendations.