Sprint 78: June 29 - July 10, 2026
Accessibility
- Fixed text clipping and truncation at larger device text sizes across nine Android screens — catalog, lanes, book details, holds, Find Your Library, libraries management, library account, reader appearance menu, and reader navigation — so labels reflow instead of being cut off
- Added a TalkBack confirmation announcement and focus placement when returning to the libraries list after adding a library on Android
- Fixed iOS VoiceOver focus so it moves into the search results list when the Search button is activated, instead of staying on the search field
Mobile App Releases (iOS & Android)
- Completed iOS v3.2.0 release-candidate validation (build 483), passing test cases
- Implemented the App Store rating prompt flow on iOS: engagement-based eligibility tracking and logic, a sentiment-gate pre-prompt dialog, the native rating prompt after a positive response, and a feedback path for dissatisfied users — plus an automated chaos/regression suite for the flow
- Implemented side-loading support on iOS: a side-load manager with settings access, a side-loaded book registry, and a side-loaded books lane in the catalog
- Fixed the two top crashers in iOS v3.1.0: an alert presented mid-transition that hit at launch (the #1 crasher) and a book-cover image load / dominant-color crash
- Completed an iOS startup and library-switch performance workstream: cut cold-launch main-thread work (library hydration, credential reads, first-run decode), sped up library switching and cover loading, corrected cache clearing, and made the preview bar lazy-load its views
- Completed an iOS UI motion & polish pass: raised the deployment target from iOS 16 to 17, added shared motion foundations and signature moments (reader chrome, downloads, player, sign-in), added a unified skeleton loading system, and fixed several latent bugs and removed dead code along the way
- Advanced the Swift 6 concurrency migration on iOS: cleared concurrency warnings, made shared core types thread-safe, migrated critical modules (sign-in, borrow/return, downloads, audiobooks), and fixed flaky CI test failures
- Implemented the remaining EPUB reader navigation options and fixed navigation controls overlapping the book UI in the Android reader
- Updated the custom library-registry debug menu field and behavior on both iOS and Android
OverDrive & Content Imports
- Completed the Bibliotheca circulation reconciliation against live pool columns (continued from Sprint 77) and unified hash-based circulation change checks across providers
Web Catalog & Backend
- Deployed Palace Manager (CM) v45.0.0 through staging and production, passing CM functionality, in-app functionality, and content test cases
- Deployed CPW v0.13.0 through staging and production, passing validation, followed by a v0.13.1 patch deploy