From cde8f377e262b3e2b981a701d31a500e46b3d716 Mon Sep 17 00:00:00 2001 From: obroccolio Date: Sat, 12 Sep 2026 17:49:09 +0800 Subject: [PATCH] fix: expose failed products and archive row covers --- backend/service/storage_metrics.py | 1 + frontend/src/pages/ProductArchivePage.tsx | 10 +++++----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/backend/service/storage_metrics.py b/backend/service/storage_metrics.py index b131e34..f337bfc 100644 --- a/backend/service/storage_metrics.py +++ b/backend/service/storage_metrics.py @@ -77,6 +77,7 @@ def main() -> None: "known_job_ids": len(known_job_ids), "temporary_jobs": [item.model_dump(mode="json") for item in cleanup_report.temporary_jobs], "pending_product_ids": [item.product_id for item in cleanup_report.pending_products], + "failed_product_ids": [item.product_id for item in cleanup_report.failed_products], "reminder_job_ids": cleanup_report.reminder_job_ids, "stale_job_count": len(orphaned), "reclaimable_bytes": reclaimable, diff --git a/frontend/src/pages/ProductArchivePage.tsx b/frontend/src/pages/ProductArchivePage.tsx index f365452..33de11e 100644 --- a/frontend/src/pages/ProductArchivePage.tsx +++ b/frontend/src/pages/ProductArchivePage.tsx @@ -275,9 +275,9 @@ export default function ProductArchivePage({ {loading &&
加载中…
} {!loading && products.length === 0 &&
暂无产品档案
} {products.map(product => { - const coverId = product.cover_image_id; - const rowDetail = detail?.product_id === product.product_id ? detail : null; - const rowCover = rowDetail?.images.find(image => image.image_id === coverId); + const coverUrl = product.cover_image_id + ? `/api/products/${product.product_id}/images/${product.cover_image_id}` + : ""; return (