Skip to content

Commit 02e8b52

Browse files
authored
Schedule immediate refresh when adding repository (#265)
When users add a new repository, schedule a refresh job immediately instead of waiting for the periodic scheduler. ## User-Facing Changes - New repositories now sync automatically right after being added - Users see repository content immediately when navigating to the repo page - No more waiting up to 5 minutes for the first sync ## Developer Notes - Added `Refresh.scheduleRepoRefresh` call in `handleAddRepo` with `Now` priority - Uses same mechanism as manual refresh button in RepoPage - Worker picks up high-priority refresh jobs immediately
1 parent 66548ae commit 02e8b52

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

packages/vira/src/Vira/Web/Pages/RegistryPage.hs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ import Servant hiding (throwError)
1717
import Servant.API.ContentTypes.Lucid (HTML)
1818
import Servant.Server.Generic (AsServer)
1919
import Vira.App qualified as App
20+
import Vira.Refresh qualified as Refresh
21+
import Vira.Refresh.Type (RefreshPriority (Now))
2022
import Vira.State.Acid qualified as St
2123
import Vira.State.Type (Repo (..))
2224
import Vira.Web.LinkTo.Type qualified as LinkTo
@@ -74,6 +76,8 @@ handleAddRepo repo = do
7476
Nothing -> do
7577
App.update $ St.AddNewRepoA repo
7678
log Info $ "Added repository " <> toText repo.name
79+
-- Schedule immediate refresh for new repo
80+
Refresh.scheduleRepoRefresh (one repo.name) Now
7781
-- Redirect to the newly created repository page
7882
newRepoUrl <- getLinkUrl $ LinkTo.Repo repo.name
7983
pure $ addHeader newRepoUrl "Ok"

0 commit comments

Comments
 (0)