Hi all, this is a re-upload of a previously asked question that I could have worded better. My issue is that when I use the FeatureLayer.edit_features(updates=FeatureSet) method, it is overwriting my geometries. I have done this with several layers now, and it seems to be an issue exclusively with polygons.
Here is my script, broken up with images of my outputs:
polygon_layer_get = gis.content.get("8c1e457fea0341aeb9c29cdf3a1dd64c") # dummy shapefile I made for testing
polygon_layer = polygon_layer_get.layers[0]
df = polygon_layer.query().sdf

For now, notice that the geometry is intact.
# dummy function where I overwrite a single value
unscored_df = df[(df['scored'] < 1) | df['scored'].isna()]
df = unscored_df.copy()
df['scored'] = 1
# pandas df to geopandas gdf
polygon_df = gpd.GeoDataFrame(df, geometry="SHAPE", crs="EPSG:4326")
# gpd gdf to sedf
polygon_sedf = GeoAccessor.from_geodataframe(polygon_df, column_name="SHAPE")

If we look at the SEDF, the SHAPE is still intact.
# sedf to feature set
polygon_fs = polygon_sedf.spatial.to_featureset()

If we look at the FS, we can see the geometry field is still intact.
polygon_layer.edit_features(updates=polygon_fs)

And finally, we edit the features with no issues. But now, if I re-run the first part to load in the polygon data:

All the SHAPEs are None, and looking in AGOL confirms these are now empty records.
Any ideas?