diff --git a/platform/src/app/[tenant]/dashboard/repo-list.tsx b/platform/src/app/[tenant]/dashboard/repo-list.tsx index 0e0b6f6..bd1da84 100644 --- a/platform/src/app/[tenant]/dashboard/repo-list.tsx +++ b/platform/src/app/[tenant]/dashboard/repo-list.tsx @@ -56,6 +56,7 @@ export function RepoList({ const [staleOnly, setStaleOnly] = useState(false); const [hideArchived, setHideArchived] = useState(false); const [checkingArchived, setCheckingArchived] = useState(false); + const [hasCheckedArchived, setHasCheckedArchived] = useState(false); // Ephemeral, not persisted: repo-slug -> archived (null = unknown, e.g. // private repo the session token can't read). Empty until "Check // archived" runs, and re-fetched fresh every time — never cached across @@ -85,6 +86,7 @@ export function RepoList({ archived: Record; }; setArchivedBySlug(data.archived); + setHasCheckedArchived(true); } } catch { // Non-fatal — the button just stays available to retry. @@ -170,29 +172,31 @@ export function RepoList({ + {hasCheckedArchived && ( + + )} )} {sorted.map((repo) => {