mirror of
https://gh-proxy.org/https://github.com/klinsmaya/multica.git
synced 2026-11-09 18:06:45 +08:00
The /download page rendered every Windows and Linux button as disabled. v0.4.28's release run had its Windows desktop packaging job fail and its Linux job never finish, so the release carried Mac builds only — and the page reads whatever the newest release happens to be. Release selection guarded against this with a time proxy: fall back to the previous release for the first hour after publish, on the assumption that a gap means uploads are still in flight. That only covers the mid-flight case. A release whose packaging job failed outright never completes, so once the hour elapsed the page pinned itself to a release it could not fully serve. Select on the actual signal instead: parse each of the recent releases and show the newest whose desktop asset set is complete, so every button on the page resolves to a real file. Widen the candidate window from 2 to 5 and log when the newest release is skipped, since a release that never completes is otherwise invisible until someone reports dead buttons. Completeness now has one definition, `hasCompleteAssetSet`, shared with the "view all releases" fallback link that had counted assets inline. Verified against live GitHub data: v0.4.28 is skipped and v0.4.27 serves all twelve artifacts. Co-authored-by: Bohan-J <[email protected]> Co-authored-by: multica-agent <[email protected]>