Add DoneAt to the download task model: set when a task finishes and
cleared when it is downloaded again. The value flows through the API
model and task record, and is shown as "Completed at" in the task
drawer info tab next to the creation time.
- Space the update chip off the card title to match the detail header
- Clear the extension's update flag right after a successful upgrade so
the chip disappears without waiting for the background re-check
- Use the concise Update label across all locales
The shared newVersionUpdate label now reads Update on the app upgrade
dialog, the tracker update button and the extension update dialog, so
the extension flow matches the host dialog wording.
Remove the update button from the detail actions; the green chip next
to the extension title opens the update dialog on cards, the desktop
drawer and the mobile details page alike.
Card and detail headers now show a green update chip next to the
extension title; on cards it opens the update dialog directly. The red
dot and the red card button are gone, and the status chip no longer
duplicates inside the detail content. Shorten the English label so the
chip fits narrow cards.
- Update availability is now decided solely by the backend live GitHub
check (updateFlags); the store index may lag and previously masked
new versions in the market view.
- Replace the ambiguous refresh icon on extension cards with a labeled
update button, and add a red dot badge on extension icons (card and
detail view) when an update is available.
- Surface a toast when the update check fails instead of failing silently.