from fastapi import APIRouter, Depends, HTTPException from app.auth import verify_token from app.ops_runner import cancel_op router = APIRouter() @router.delete("/{op_id}", summary="Cancel a running operation") async def cancel_operation( op_id: str, _: str = Depends(verify_token), ) -> dict: """Terminate a running operation by its op_id.""" if cancel_op(op_id): return {"cancelled": True, "op_id": op_id} raise HTTPException(status_code=404, detail=f"No active operation with id '{op_id}'")