I'm seeing a lot of these errors in the rustical log:
2025-09-17T05:30:41.380885Z ERROR http-request{otel.name=PUT /caldav/principal/user/b1a8f394-3033-4b44-b09b-842a9f045bf2/98499377-d975-46c3-9df6-8469badb2a44.ics ua=CalDavSynchronizer/4.6 status=412 Precondition Failed}: rustical::app: client error
2025-09-17T05:30:41.736655Z ERROR http-request{otel.name=PUT /caldav/principal/user/b1a8f394-3033-4b44-b09b-842a9f045bf2/1d0da9d0-c0a4-4f9b-a9b1-83d1d89fb6cb.ics ua=CalDavSynchronizer/4.6 status=412 Precondition Failed}: rustical::app: client error
2025-09-17T05:30:42.770844Z ERROR http-request{otel.name=PUT /caldav/principal/user/b1a8f394-3033-4b44-b09b-842a9f045bf2/c4572eda-2172-4f17-bf02-f1524275bed1.ics ua=CalDavSynchronizer/4.6 status=412 Precondition Failed}: rustical::app: client error
2025-09-17T05:30:43.158664Z ERROR http-request{otel.name=PUT /caldav/principal/user/b1a8f394-3033-4b44-b09b-842a9f045bf2/5d000ca9-441a-4eb2-b3fe-25e3f23d2e6c.ics ua=CalDavSynchronizer/4.6 status=412 Precondition Failed}: rustical::app: client error
2025-09-17T05:30:43.556992Z ERROR http-request{otel.name=PUT /caldav/principal/user/b1a8f394-3033-4b44-b09b-842a9f045bf2/f8c0aadf-8bb6-42c3-8e64-91799de504e2.ics ua=CalDavSynchronizer/4.6 status=412 Precondition Failed}: rustical::app: client error
2025-09-17T05:30:44.194368Z ERROR http-request{otel.name=PUT /caldav/principal/user/b1a8f394-3033-4b44-b09b-842a9f045bf2/f1672591-1381-408e-a5ac-15353d3938fd.ics ua=CalDavSynchronizer/4.6 status=412 Precondition Failed}: rustical::app: client error
2025-09-17T05:30:44.709031Z ERROR http-request{otel.name=PUT /caldav/principal/user/b1a8f394-3033-4b44-b09b-842a9f045bf2/5b09cb93-3351-4873-8892-85a3ee0b377a.ics ua=CalDavSynchronizer/4.6 status=412 Precondition Failed}: rustical::app: client error
2025-09-17T05:30:45.812411Z ERROR http-request{otel.name=PUT /caldav/principal/user/b1a8f394-3033-4b44-b09b-842a9f045bf2/4c2be573-7efe-4e8f-a43a-f59b2f8a5047.ics ua=CalDavSynchronizer/4.6 status=412 Precondition Failed}: rustical::app: client error
2025-09-17T05:30:46.924534Z ERROR http-request{otel.name=PUT /caldav/principal/user/b1a8f394-3033-4b44-b09b-842a9f045bf2/216872df-b4d7-4a93-9c5b-3f51fa24673c.ics ua=CalDavSynchronizer/4.6 status=412 Precondition Failed}: rustical::app: client error
2025-09-17T05:30:53.777079Z ERROR http-request{otel.name=PUT /caldav/principal/user/b1a8f394-3033-4b44-b09b-842a9f045bf2/fc2fc60a-70e3-4cd6-9e79-ac8dc2a87c66.ics ua=CalDavSynchronizer/4.6 status=412 Precondition Failed}: rustical::app: client error
2025-09-17T05:31:30.619942Z ERROR http-request{otel.name=PUT /caldav/principal/user/b1a8f394-3033-4b44-b09b-842a9f045bf2/269ae3e3-be72-4198-8112-bb1e3b26d9f4.ics ua=CalDavSynchronizer/4.6 status=412 Precondition Failed}: rustical::app: client error
2025-09-17T05:31:31.233588Z ERROR http-request{otel.name=PUT /caldav/principal/user/b1a8f394-3033-4b44-b09b-842a9f045bf2/4317ff4d-54f5-44c9-932f-e1ebed205b3e.ics ua=CalDavSynchronizer/4.6 status=412 Precondition Failed}: rustical::app: client error
I have rustical behind a Caddy reverse proxy and this is my config that aims to keep the headers :
reverse_proxy rustical:4000 {
header_up * {>Host}
header_up +If-Match {>If-Match}
header_up +If-None-Match {>If-None-Match}
header_up +If-Unmodified-Since {>If-Unmodified-Since}
header_up +If-Modified-Since {>If-Modified-Since}
}
Any tips on getting this working correctly appreciated
I'm seeing a lot of these errors in the rustical log:
I have rustical behind a Caddy reverse proxy and this is my config that aims to keep the headers :
Any tips on getting this working correctly appreciated