Repository navigation
35.0.1 recursive sync test 2
Pre-releaseSuperseded by test.3, including the reviewed Sync/Sync all handling and cleanup.
Experimental Nextcloud QA APK based on Android client 35.0.1.
This replaces test.1. Ongoing recursive sync now processes a folder queue on its background worker and downloads missing files one at a time. It visits cached descendants even when parent ETags are unchanged, persists new entries before visiting children, propagates descendant failures/cancellation, and keeps long periodic scans in foreground work. Timing and failure diagnostics use the SyncTrace marker in the app logs.
Update: install the APK over the existing Nextcloud QA test build. The application ID and signing certificate match test.1, preserving its login, permissions, and sync selections. It is a separate app from production Nextcloud.
Completed live validation: the Android 15 emulator retained its login, permissions, and Media selection. The 10.9 GB scan finished in 44m 04.452s, adding 1,213 files (6.50 GB) and reaching 1,540 saved files. Every new file matched its expected server size; three deep-file samples also matched fresh server downloads by SHA-256. Captured intervals contained no child service commands or queued folder-download workers, and the worker continued after returning to the home screen. Three zero-byte exceptions already had local paths in the pre-update cache; their origin is unresolved. See live-completed-scan.json, server-size-verification.json, and review-verification.md.
All nine queue/traversal tests pass on this stable build. Twenty selected tests pass on the master patch. Android lint reports no issues; formatting passes. Detekt and SpotBugs retain repository findings outside the changed behavior, documented in verification notes.
Patched source: use the attached source archive or apply recursive-sync.patch to stable 35.0.1. The release tag points to the original stable commit, so GitHub's automatic source archives do not contain this patch. recursive-sync-master.patch is the version prepared against upstream master.
AI assistance: Codex (gpt-6.1-sol) investigated the issue, implemented the patch and tests, built the APK, and ran the verification. Upstream submission requires human code review, DCO certification, and a description written by the contributor.
Review draft: queue recursive ongoing folder synchronization. The APK contains the live-tested test.2 implementation. The draft and recursive-sync-master-reviewed.patch include subsequent cleanup, including actual inline-transfer error results, preservation of manual dispatch, current constraint checks, and fresh completion metadata. All 34 selected master tests pass; final lint and formatting are clean, with repository-wide static-analysis limits documented in review-verification.md.