[webui] catch some more exceptions to avoid 500 crashes in request handling
[api] handle diffing of new request to project linked targets correctly