Skip current APKs during project updates

This commit is contained in:
iris committed 2026-09-10 00:58:08 -04:00
1 parent 605f353f4b
commit 4d00fe1b60
2 files changed
+35 -5

No files matched your search

+9
View File
@@ -1400,6 +1400,15 @@ mutable at runtime from the phone.
in *what* counts as stale, only in building past that answer once any
one component tripped it. Regression test:
`a_pull_touching_one_component_does_not_rebuild_its_sibling`.
- **A project-wide Update installs only the APKs that are waiting on this
phone.** Skipping a current APK's build was only half of the rule above:
after the pull, `startProjectUpdate` re-read the correctly current
component and then downloaded and offered every APK in the project to the
installer anyway. This showed up on a server-only change as an APK update
despite the card already knowing the installed copy was current.
`needsInstall` is deliberately the one predicate used both to make the
card's Update button pressable and to select the APKs that press installs;
the reason a project needs attention may belong to a sibling component.
- **Two words for one measurement is a bug even when both are true.**
`MismatchedPairNote` said a sibling still on its old build was "older
than this build," while `freshnessNote` already has a word for that