Since s2 vectors inherit from wk_vctr and not vctrs_vctr, vec_restore() is never called on the concatenation result. The consequence is that the ALTREP class is not properly set up and the concatenated s2 geography vectors can't be serialized. In addition, c.wk_vctr sets additional attributes like crs and geodesic, creating an asymmetry with "regular" s2 vectors that don't have these attributes.
I am wondering whether the original idea was to make s2 geography vctrs vectors, but was then abandoned for some reason?