Skip to content

HidaChat v0.8.1-beta

Pre-release
Pre-release

Choose a tag to compare

@hidaba hidaba released this 04 Sep 05:51
· 34 commits to master since this release

Pre-release / Beta — Supporto OpenClaw & Miglioramenti di Stabilità e Connessione Tailscale

  • Nuova Piattaforma Supportata: OpenClaw (AppAccounts.vb, MainWindow.xaml.vb, SettingsWindow.xaml):
    • Integrazione Completa Gateway e Client Web OpenClaw: Supporto nativo all'aggiunta e gestione di account della piattaforma OpenClaw all'interno dell'applicazione, con schede dedicate, switch rapido e profilazione WebView2 isolata.
    • Integrazione con Rete Privata Tailscale (tsnet): Connessione trasparente e sicura verso le istanze e i gateway OpenClaw ospitati su tailnet private tramite il demone tsnetd integrato, senza necessità di installare il client Tailscale sul sistema host.
  • Persistenza Identità Dispositivo OpenClaw (AppAccounts.vb, AccountManager.vb, tsnetd/main.go):
    • Porta Proxy Deterministica: Assegnazione e salvataggio permanente in settings.json di una porta TCP locale fissa (localProxyPort a partire da 18800) per ciascun account OpenClaw con Tailscale attivo.
    • Eliminazione Richieste di Riconnessione Continue: In Chromium/WebView2 l'Origin include la porta locale (http://127.0.0.1:<porta>). Mantenendo la porta invariata ad ogni apertura e chiusura dell'app, le chiavi crittografiche Ed25519 e i token di sessione salvati in IndexedDB (openclaw-control-ui) rimangono stabili, eliminando la necessità di riapprovare il dispositivo ad ogni riavvio (openclaw devices approve).
    • Token Locale Persistente: Il token di sicurezza locale per l'IPC con tsnetd viene ora generato una sola volta e salvato in data/tsnet/local_token.txt invece di cambiare a ogni sessione.
  • Risoluzione Race Condition e Bad Gateway 502 all'Avvio (tsnetd/main.go, TsnetManager.vb):
    • Sincronizzazione Avvio Tailscale (tsReady): In tsnetd, le richieste HTTP verso il gateway OpenClaw vengono trattenute nei primi istanti di avvio fino al completamento dell'handshake WireGuard (tsServer.Up), impedendo che la WebView2 riceva errori di mancata connessione.
    • Trasporto con Retry Automatico (retryTransport): Introdotto un meccanismo di riprova trasparente con backoff di 1 secondo (fino a 3 tentativi) per assorbire i tempi di risposta della tailnet remota.
    • Attesa Stato Running all'Avvio: TsnetManager.StartAsync attende attivamente che lo stato del nodo diventi Running prima di navigare la scheda OpenClaw.
    • Schermata di Fallback con Auto-Refresh: In caso di ritardo temporaneo della rete, il proxy restituisce una pagina HTML scura con spinner e meta-refresh automatico a 2 secondi.