Reviews: a store read that failed everywhere is an error, not an empty fresh list; Reviews tab says Apple's API can lag and Play returns 7 days; pitfall 106

This commit is contained in:
CRTkafa 2026-10-23 00:33:27 +08:00
parent 0e88e4293a
commit 75bf62e125
7 changed files with 50 additions and 8 deletions

View file

@ -1272,3 +1272,14 @@ that fails without the fix (see CONTRIBUTING.md).
- **Cause:** a JSON config (store-only apps get one generated) was loaded with a bare dynamic import, which Node refuses.
- **Do:** update storebound.
- **Guard:** `importConfigModule` in `cli/lib/rt.ts` reads JSON configs as data (`tests/config-json-node.test.ts`).
## 106. Reviews "not up to date": a failed store read looked like "0 new reviews"
- **Symptom:** the desktop Reviews tab (and `storebound reviews list`) showed no new reviews although the stores had some.
- **Cause:** (1) `reviews list` swallowed a store's error (expired key, wrong app) as a warning and exited 0 with an empty
list, which the desktop kept as a fresh read. (2) Google Play's reviews API only returns reviews created or edited in
the last 7 days, so older Play reviews vanish from every refresh. (3) The App Store Connect API lists written reviews
only (not star-only ratings) and can trail the ASC web page. Checked against Apple's public customer-reviews feed:
the API matched it, so the API itself was not stale there.
- **Do:** read the "read ... ago" stamp and refresh; for Play keep your own history; compare with the console if in doubt.
- **Guard:** `settleStoreReads` (`cli/lib/reviews.ts`) throws when every asked store failed (`tests/reviews.test.ts`);
the Reviews tab states the Play 7-day window and that Apple's API can lag.