FR-NC-11 — Initial catalog build over WebDAV SEARCH #41

Open
opened 2026-09-05 16:20:19 +00:00 by dtourolle · 0 comments
Owner

FR-NC-11 — Initial catalog build using WebDAV SEARCH (RFC 5323) against /remote.php/dav/, filtered by mimetype and paginated, in preference to walking folders with PROPFIND. Unbuilt — no SEARCH request is issued anywhere.

The gap is narrower than it reads

The PROPFIND walk this exists to replace is fully built and well optimised: ETag pruning under FR-NC-4 turns an unchanged 50k library into one request.

But the moment it covers is the worst one

It is the first build against a large remote library that pays — and that is precisely the moment a new user meets. Everything after it is already fast; the impression is formed before any of that machinery gets a chance to matter.

Acceptance

  • SEARCH used for the initial build, paginated, filtered by mimetype server-side.
  • Falls back to the PROPFIND walk where the server does not support it — Nextcloud versions vary, and this must not be a hard requirement on the remote.
  • Measured against a large remote library, not a small one: the whole justification is a claim about scale.

See docs/outstanding.md §7.

**FR-NC-11 — Initial catalog build using WebDAV `SEARCH` (RFC 5323)** against `/remote.php/dav/`, filtered by mimetype and paginated, in preference to walking folders with PROPFIND. Unbuilt — no `SEARCH` request is issued anywhere. ## The gap is narrower than it reads The PROPFIND walk this exists to replace is **fully built and well optimised**: ETag pruning under FR-NC-4 turns an unchanged 50k library into one request. ## But the moment it covers is the worst one It is the **first** build against a large remote library that pays — and that is precisely the moment a new user meets. Everything after it is already fast; the impression is formed before any of that machinery gets a chance to matter. ## Acceptance - [ ] `SEARCH` used for the initial build, paginated, filtered by mimetype server-side. - [ ] Falls back to the PROPFIND walk where the server does not support it — Nextcloud versions vary, and this must not be a hard requirement on the remote. - [ ] Measured against a large remote library, not a small one: the whole justification is a claim about scale. See `docs/outstanding.md` §7.
dtourolle added the unmet-requirementsize:Msync labels 2026-09-05 16:20:19 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: dtourolle/DarkRoom#41