F17: replace merge_all with merge_one in upload_image and delete_image

Single-activity writes now trigger a fast merge_one instead of a full
user rebuild. post_activity was fixed earlier; this completes the fix
for upload_image and delete_image endpoints.
This commit is contained in:
Davide Scaini
2026-04-13 19:03:46 +02:00
parent 57fb7acd3d
commit e7eefa345e
+5 -3
View File
@@ -592,8 +592,8 @@ async def post_activity(
from bincio.edit.ops import apply_sidecar_edit
body = await request.json()
# apply_sidecar_edit already calls merge_one internally — no full rebuild needed.
apply_sidecar_edit(activity_id, body, dd)
_trigger_rebuild(user.handle)
return JSONResponse({"ok": True})
@@ -633,7 +633,8 @@ async def upload_image(
images_dir.mkdir(parents=True, exist_ok=True)
safe_name = _unique_image_name(images_dir, Path(file.filename).name)
(images_dir / safe_name).write_bytes(contents)
_trigger_rebuild(user.handle)
from bincio.render.merge import merge_one
merge_one(dd, activity_id)
return JSONResponse({"ok": True, "filename": safe_name})
@@ -653,7 +654,8 @@ async def delete_image(
target.unlink()
if target.parent.exists() and not any(target.parent.iterdir()):
shutil.rmtree(target.parent)
_trigger_rebuild(user.handle)
from bincio.render.merge import merge_one
merge_one(dd, activity_id)
return JSONResponse({"ok": True})