fix: serialize repository refreshes and recover stale downloads

This commit is contained in:
Thomas Durieux committed 2026-09-27 06:34:05 +00:00
1 parent 3c41a00137
commit 0002e8d1a1
4 files changed
+232 -13

No files matched your search

+3 -2
View File
@@ -132,14 +132,15 @@ router.post(
if (
repo.status == RepositoryStatus.PREPARING ||
repo.status == RepositoryStatus.QUEUE ||
repo.status == RepositoryStatus.DOWNLOAD ||
(repo.status == RepositoryStatus.DOWNLOAD &&
repo.model.statusDate > new Date(Date.now() - 5 * 60_000)) ||
repo.status == RepositoryStatus.REMOVING ||
repo.status == RepositoryStatus.EXPIRING
) {
throw new AnonymousError("invalid_status", { httpStatus: 409 });
}
await repo.updateIfNeeded({ force: true });
await repo.refresh();
res.json({ status: repo.status });
} catch (error) {
handleError(error, res, req);