diff --git a/proxmox/lxc171-claude-agent/discord-bridge/dashboard/README.md b/proxmox/lxc171-claude-agent/discord-bridge/dashboard/README.md index 5611859..2f5d272 100644 --- a/proxmox/lxc171-claude-agent/discord-bridge/dashboard/README.md +++ b/proxmox/lxc171-claude-agent/discord-bridge/dashboard/README.md @@ -141,13 +141,17 @@ Configuratia e persistata de `tailscaled`, deci supravietuieste repornirilor. **Montarea sub prefix**, cele doua capcane si cum sunt rezolvate: - `tailscale serve --set-path` **taie** prefixul inainte de a proxa, deci serverul - vede `/api/status`, nu `/claude/api/status`. Toate URL-urile din pagini sunt - **relative**, deci merg la orice prefix, fara sa stie de el. `DASHBOARD_PREFIX` - e nevoie doar pentru redirecturi si e acceptat si intact pe intrare (`curl` - direct pe localhost cu `/claude/...` functioneaza). -- adresa **fara slash final** (`/claude`) ar rezolva `api/status` la radacina - hostului, unde proxy-ul nu mai trimite nimic incoace; de aceea forma fara slash - primeste un 301 catre `/claude/`. + vede `/api/status`, nu `/claude/api/status`. URL-urile din pagini sunt relative, + iar `` se pune **la servire**, din `DASHBOARD_PREFIX`. + Prefixul e acceptat si intact pe intrare, deci `curl` direct pe localhost cu + `/claude/...` functioneaza la fel. +- adresa **fara slash final** (`/claude`) ajunge la server tot ca `/`, exact ca + `/claude/`: proxy-ul taie prefixul si nu lasa nicio urma a formei originale. + Fara ``, `api/status` s-ar rezolva atunci la radacina hostului, unde + proxy-ul nu mai trimite nimic incoace — pagina se incarca si **ramane goala, + fara nicio eroare vizibila**. Exact asta s-a intamplat la prima folosire reala. +- paginile se servesc cu `Cache-Control: no-store`: poarta de acum configuratie + (`base href`), iar o copie veche din cache ar trimite cererile in alta parte. ### Prin tunel SSH @@ -165,7 +169,7 @@ cd proxmox/lxc171-claude-agent/discord-bridge python3 -m pytest tests/test_dashboard.py -q ``` -31 de teste, fara retea si fara `systemctl` real (dublura inregistreaza apelurile). +35 de teste, fara retea si fara `systemctl` real (dublura inregistreaza apelurile). Acopera autentificarea, faptul ca unitatea nu poate fi aleasa din cerere, blocajul pe tur in zbor si trecerea cu `force`, traversarea de cale in `request_id`, `state.json` corupt, montarea sub prefix (cu si fara slash final) si verificarea de regresie