docs: follow the asset publication through the documents that described it

Committing the store assets changed a rule that four files stated, so they now state the new one
instead of contradicting the tree:

- STORE_LISTING: "screenshots are not committed" becomes what is committed, why it is safe (every
  published frame is generated demo content), and what is still deliberately out of git (raw
  captures, demo photos, the video's milestone PNGs). It also spells out the public URL pattern,
  because that is now the deployment step rather than a footnote.
- PLAY_RELEASE_CHECKLIST: the two "(git-ignored)" annotations on the screenshot directories become
  "(committed)", and step 5's video item carries the exact link to paste plus what was verified
  about it (200, video/mp4, Content-Disposition: inline, sha256 match) and the two traps in using
  it (pinned to main, so a re-shoot overwrites in place; and replacing it at all means resubmitting
  the declaration).
- ROADMAP: M10 no longer claims the screenshots are left uncommitted, and the declaration's blocker
  row loses its "hosting remains" clause - the file is published, so only pasting is left.
- README: says where the link comes from, so the next reader does not go looking for a host.
This commit is contained in:
2026-10-14 13:22:38 +02:00
parent 9fb5e7de3d
commit 1cb188a56b
4 changed files with 58 additions and 24 deletions
+24 -11
View File
@@ -111,7 +111,7 @@ action except the items marked **[code]**.
same vectors as the adaptive icon in `res/drawable/ic_launcher_*`.
- [x] **Feature graphic** 1024×500 PNG **[code]** — same script.
- [x] **Phone screenshots** (at least 2, up to 8) **[code]** — four are captured and normalised to
1080×2160 in `store-assets/screenshots/phone/` (git-ignored): empty state, scanning
1080×2160 in `store-assets/screenshots/phone/` (committed): empty state, scanning
(`5353 / 5385`), results (**17 duplicate groups, 54 of 5385 photos, 83.5 MB reclaimable**)
and the Options menu. They were shot after a real permission grant and over the generated
demo library (`tools/make-demo-photos.py`), so neither the "Photo access needed" banner nor
@@ -124,7 +124,7 @@ action except the items marked **[code]**.
`tools/make-store-screenshots.sh` does exactly that (status and navigation bars only).
- [x] **7-inch tablet screenshots** **[code]** — captured on a `Nexus 7 2013` AOSP Android 12 AVD
(1200×1920 portrait, `sw600dp`) and normalised to `store-assets/screenshots/tablet-7in/`
(git-ignored) with `FORM_FACTOR=tablet-7in ./tools/make-store-screenshots.sh`: the same four
(committed) with `FORM_FACTOR=tablet-7in ./tools/make-store-screenshots.sh`: the same four
screens as the phone set, over the same generated demo library — empty state, scanning
(*“Looking for visually similar photos…”* 20 / 22), results (**2 duplicate groups, 16 of 22
photos, 43.7 MB reclaimable**, scanned in 39.7 s) and the Options menu (✓ on *Balanced*).
@@ -275,15 +275,28 @@ action except the items marked **[code]**.
INSTALL=0 WARMUP=0 ./tools/record-fgs-demo.sh 2a2ae895
```
The output is `store-assets/fgs-demo/foreground-service-demo.mp4` (git-ignored, like the
screenshots) with a checkpoint PNG per milestone beside it. It was checked frame by frame
afterwards rather than assumed: the intro at 0 s, the scan starting (*"Comparing file
signatures… 91/102"*, 8 s), the shade held open for ~6 s with the live notification
(*"Finding duplicate photos / Looking for visually similar photos… / CANCEL"*, 13–18 s)
while the scan kept running behind it, and the finished results (*17 duplicate groups ·
54 of 5,385 photos*) at the end. Host the file where a reviewer can open it without
signing in — an unlisted YouTube link is the usual choice — and paste that link into the
declaration. Replacing the video later means resubmitting it.
The output is `store-assets/fgs-demo/foreground-service-demo.mp4` (**committed**, so it is
already published; the checkpoint PNG per milestone beside it stays git-ignored). It was
checked frame by frame afterwards rather than assumed: the intro at 0 s, the scan starting
(*"Comparing file signatures… 91/102"*, 8 s), the shade held open for ~6 s with the live
notification (*"Finding duplicate photos / Looking for visually similar photos… /
CANCEL"*, 13–18 s) while the scan kept running behind it, and the finished results
(*17 duplicate groups · 54 of 5,385 photos*) at the end.
**The link to paste** is the committed file's own URL — no login, no second host:
```
https://gitea.softwareapp-hb.de/fishfacegit/foto-duplicate-finder/raw/branch/main/store-assets/fgs-demo/foreground-service-demo.mp4
```
Checked from outside this network: **200**, `Content-Type: video/mp4`,
`Content-Length: 1847900` and `Content-Disposition: inline`, so a reviewer's browser plays
it in the tab rather than prompting a download, and the served bytes are identical to the
recording (sha256 match). Two things to know before pasting: the URL is pinned to `main`,
so a re-shoot has to **overwrite the file in place** rather than be added alongside it; and
replacing the video at all means resubmitting the declaration.
(An unlisted YouTube upload of the same file works equally well if a link that survives
future commits is preferred — but then it is a second place to keep in step.)
Both flags exist because this take found two traps worth knowing before a re-shoot: