v0.1.0
EvoScientist WebUI v0.1.0 β No More Ghost Agents π»
G'Day! v0.1.0 kicks off the stable 0.1 line β 0.0.9 took the WebUI out of beta, and this release makes it official in the version number. It's a focused reliability release that keeps the Agents board honest after a backend restart. EvoScientist v0.1.6 (#279) made conversations survive EvoSci deploy restarts β great news, but it exposed a latent gap in the WebUI: background tasks from before a restart could show as perpetually Running with a forever-ticking timer. This release introduces a proper Expired state, stops redundant polling, and hardens the side-chat error path.
π» Expired β ghost "Running" tasks are gone
When the backend restarts, your conversations come back β but the background sub-agent threads (writing / data analysis) do not. The board used to fall back to the cached task status, which is stuck on running forever.
- Evidence-based detection β when the task's run provably no longer exists (the backend answers 404), the task is marked Expired: gray dot, no pulse, no made-up duration.
- Honest expanded view β expanding an expired task shows a short note ("this task ran before a backend restart; its records are gone β files it produced are still in the workspace") instead of an empty steps list, with the Notify / follow-up controls hidden (they couldn't work anyway).
- Never auto-reported β expired tasks are excluded from auto-report and the "Notify main chat" button, so the main agent is never poked about a task it can no longer look up.
- Transient failures stay transient β a network blip or a briefly-unreachable backend still falls back to the cached status as before; only a definitive 404 produces Expired.
π Quieter polling
- 404s are remembered β once a task's run has 404'd, the verdict is permanent for that run, so the board stops re-requesting it every 3 seconds. Switching conversations or backends re-probes fresh.
π Side-chat ("Direct follow-up") hardening
- No more vanishing steps β if a follow-up run came back without a transcript (a server-side error path), the panel used to overwrite the agent's loaded steps with an empty Steps (0) that stuck. It now keeps the existing steps and your draft, and shows an error line instead.
- Clearer errors β the message now distinguishes "the agent hit an error processing this follow-up" from "couldn't reach this agent".
π¦ Updating
Nothing to do β npx @evoscientist/webui@latest (and EvoScientist's WebUI mode) always pulls the latest version. Just restart the UI. Pairs best with EvoScientist v0.1.6+ (session persistence).
Full Changelog: v0.0.9...v0.1.0