From 719942853fc7c8cfbe3986ed6a0e81b4a4dd0a62 Mon Sep 17 00:00:00 2001
From: Andras Bacsai <5845193+andrasbacsai@users.noreply.github.com>
Date: Thu, 13 Aug 2026 14:44:25 +0200
Subject: [PATCH] fix(upgrade): explain manual reload fallback
---
resources/views/livewire/upgrade.blade.php | 4 ++++
tests/Unit/CoolifyUpgradeStatusTest.php | 6 ++++++
2 files changed, 10 insertions(+)
diff --git a/resources/views/livewire/upgrade.blade.php b/resources/views/livewire/upgrade.blade.php
index eb6c60136..f93c7bcea 100644
--- a/resources/views/livewire/upgrade.blade.php
+++ b/resources/views/livewire/upgrade.blade.php
@@ -101,6 +101,10 @@
class="font-semibold text-coollabs dark:text-warning">
seconds…
+
+ If the page does not reload automatically, reload it manually.
+
Reload now
diff --git a/tests/Unit/CoolifyUpgradeStatusTest.php b/tests/Unit/CoolifyUpgradeStatusTest.php
index b57afe5d2..a00283615 100644
--- a/tests/Unit/CoolifyUpgradeStatusTest.php
+++ b/tests/Unit/CoolifyUpgradeStatusTest.php
@@ -149,6 +149,12 @@ it('finishes after health recovers from observed downtime for older target relea
->toContain('return;');
});
+it('tells users to reload manually if the automatic reload does not happen', function () {
+ $upgradeView = file_get_contents(__DIR__.'/../../resources/views/livewire/upgrade.blade.php');
+
+ expect($upgradeView)->toContain('If the page does not reload automatically, reload it manually.');
+});
+
it('starts the upgrade after the Livewire response so status polling is not blocked', function () {
$upgradeComponent = file_get_contents(__DIR__.'/../../app/Livewire/Upgrade.php');