feat(caprover): sorting, live log viewer — and fix broken per-app URLs
SORTING by last deployed (default), name, status or version. Apps with no deploy
timestamp sort last rather than as the epoch: "unknown" is not "ancient".
Building sorts above running above stopped, because the one that is changing is
the one you opened the tab for.
LIVE LOG VIEWER for both build output and runtime logs, polled every 3s.
CapRover exposes no log stream, and a poll is what survives a phone moving
between networks anyway. Follow-mode sticks to the bottom until you scroll up
and stops fighting you — reading history while lines arrive is the normal reason
to open a log. Build logs stop polling once the build ends rather than hitting
CapRover every three seconds forever. Errors and warnings are coloured, lines
are filterable, and the whole buffer copies in one tap.
FIXED, and this one was live: every per-app CapRover URL had an escaped dollar
sign — '/api/caprover/apps/\$name' — so the path was sent with a literal
backslash-dollar-name instead of the app. It came from a heredoc when the client
was first written. capApps() has no interpolation, so listing worked and I
verified against it; inspect, deploy, set-repo and logs were all broken and none
of them had been exercised. Testing the one endpoint that happened to work is
not testing the feature.
Co-Authored-By:
Claude Opus 5 (1M context) <noreply@anthropic.com>
Showing
This diff is collapsed.
Please register or sign in to comment