mirror of
https://github.com/zapstore/zapstore.git
synced 2026-10-05 12:38:24 +00:00
1.6 KiB
1.6 KiB
WORK-012 - Latest Releases Asset-First Pagination
Feature: FEAT-004 asset-first queries Status: Implemented
Context
The home screen "Latest Releases" section can miss newly published apps/releases and pagination appears not to fire.
Diagnosis:
LatestReleasesNotifierqueriesReleasekind30063, but current app-card freshness is driven bySoftwareAssetkind3063.- The query has no platform filter, then resolves Apps after the fact.
- The UI dedupes by App after fetching only five raw Release rows, so duplicate releases for the same app can hide other apps until pagination runs.
- The viewport-fill pagination check is tied to a one-frame scroll extent check and should use the actual scroll extent after each render.
Tasks
- Switch Latest Releases first page to
SoftwareAsset(3063) with platform filtering. - Keep local-first relationship resolution and avoid awaiting network on render.
- Page older SoftwareAssets by asset
createdAt. - Make initial/fill pagination trigger from actual scroll extent.
- Attempt analyzer and focused tests where available.
Verification
fvm flutter analyze- Manual/code review: first page uses
SoftwareAsset,#fplatform filter, and no awaited network call in the render/listener path.
Analyzer could not run in this environment:
fvm dart format lib/widgets/latest_releases_container.dartfailed withOperation not permittedfrom the fvm shim.dart format ...failed trying to create/read files under the user pub/cache paths.flutter analyzefailed withoperation not permitted: flutter.
Spec Issues
None