agent page: assemble forge URL backend-side

Per review: build the full forge profile URL in the harness instead
of the client. /api/state now returns forge_url: Option<String>
(assembled from the request Host header — resolves against whatever
host the operator reached the page on), replacing the forge_present
bool. The JS just links forge_url when present — no client-side URL
construction.
This commit is contained in:
iris 2026-05-21 20:23:26 +02:00 committed by Mara
parent 6ab667901d
commit fc3490086b
3 changed files with 33 additions and 15 deletions

View file

@ -359,9 +359,9 @@ Layout, top to bottom:
- Banner (gradient shimmer while state=thinking).
- Title with `↑ DASHB04RD` back-link (new tab) + `↻ R3BU1LD`.
- Meta links row: `📊 stats →`, `🖥 screen →` (shown when
`gui_enabled`), and `⬡ forge ↗` (shown when `forge_present` —
links to the agent's Forgejo profile at `<host>:3000/<label>`,
new tab).
`gui_enabled`), and `⬡ forge ↗` (shown when `/api/state`
supplies a non-null `forge_url` — the agent's Forgejo profile,
assembled server-side from the request `Host` header, new tab).
- Status section: empty when online (alive-badge in the state
row carries the signal), populated with the login form /
OAuth URL when `status` is `needs_login_*`.