tr
TryGhost
GitHub
Ghost
Workspace
GitHub
CI Pipeline Executions
Current execution
Succeeded
princi-hkg-1823-switch-urlservicefacade-to-return-lazy2
Runs and Agents
Configuration
Self-Healing CI
Project Graph
Resource Usage
Analysis
Conformance
Runs
Current run
Succeeded
Tasks
Resource Usage
Insights
Compare tasks
Analytics
Sign in
Toggle sidebar
Changed the frontend reload to drop lazy routers only after the settings read ref https://linear.app/ghost/issue/HKG-1823 - `reloadFrontend` called `urlService.facade.reset()` three lines before `await routeSettings.loadRouteSettings()`, leaving a window with no router configs for the length of that read — a network round trip on Pro - harmless while eager answered reads. Once lazy is authoritative it is not: `reset()` also clears `routersReady`, which gates the maintenance middleware, so the window 503s the site and the Admin API. Non-HTTP callers skip that gate entirely and would build URLs against zero routers - worse on the failure path: nothing re-registers after a failed reload, so a rejected settings read left the reset applied and 503ing with no recovery but a restart - moved the reset after the await, immediately before `siteApp.reload()`. It still runs before re-registration, so configs cannot pile up across reloads, and a failed read now leaves the previous routers serving - #29792 carries the same fix, but that is the eager removal and lands after this, which is the PR that makes the window harmful
nx run ghost-monorepo:lint:boundaries
⌘K
Succeeded
nx run ghost-monorepo:lint:boundaries
Click to copy
Linux
4 CPU cores
ddc2aeb4
29799