From f12e56aa8056e115ce7aec628f79d7438890ccb0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Padez?= Date: Thu, 27 Aug 2026 04:53:58 +0000 Subject: [PATCH] the radicale config stops claiming caldav is single-user the setting was right and the sentence beside it was not, which is the worse of the two: anyone reading this config would conclude caldav is single-user and either build around a limit that is not there or "fix" a line that was never broken. it had been false since multi-user landed on 2026-08-07. owner_only is what makes it per-user, together with the sync door resolving an app password to one account and sending that id as X-Remote-User. verified on alpha: collections/collection-root/1/{personal,contacts,tasks}. Co-Authored-By: Claude Opus 5 Officer-Session: 656f5c85-e49a-4f1f-b9f3-042a04b4d043 --- sidecar/radicale.ts | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/sidecar/radicale.ts b/sidecar/radicale.ts index 992e94b..cd4ea59 100644 --- a/sidecar/radicale.ts +++ b/sidecar/radicale.ts @@ -92,7 +92,17 @@ type = multifilesystem filesystem_folder = ${storagePath} [rights] -# The owner is the only principal that exists; single-user is a platform invariant. +# Every account is its own principal, and owns only its own collections. +# +# This said "the owner is the only principal that exists; single-user is a platform invariant" until +# 2026-08-27, which had been false since multi-user landed on 2026-08-07 — the SETTING was right the whole +# time and the sentence explaining it was not, which is the worse of the two failures: anyone reading this +# config would conclude caldav is single-user and either build around a limit that is not there or +# "fix" a line that was never broken. +# +# What makes it per-user is upstream: the sync door resolves an app password to one account and sends that +# account's id as X-Remote-User, so `owner_only` scopes each principal to its own tree under +# `collections/collection-root//`. type = owner_only [logging]