v2.3.3
Tera Pilot v2.3.3
Reliability, usability, and evaluation-harness improvements.
Highlights
- Rate-limit errors now surface actionable messages — instead of raw JSON, quota/429 errors show a short message with concrete next steps (wait / switch model / switch provider), keeping the original error as context for logs.
- Longer retry budget for quota errors — saturated free-tier pools get up to 8 attempts (vs 5) with provider-honoured delays, so short-lived 429 windows no longer kill a run.
- Health probe no longer cripples subsequent LLM calls — the provider-config swap during
/api/providers/healthis restored in afinallyblock, fixing the bug where every later agent/chat call was capped at 100 output tokens (the root cause of "agent reports success but did nothing"). - "Open Project" updates the file tree immediately — project_root is validated, persisted to config, and re-pointed in the shared agent runtime so the Web UI reflects the new workspace right away.
- Live model lists — new
/api/providers/modelsendpoint fetches models from the provider's/modelsendpoint (OpenAI-compatible and Anthropic), with a clean fallback to built-in lists. - LLM-generated chat titles — a short model round-trip names chats; falls back to cleaned truncation when unavailable.
- Command output keeps the tail — long stdout/stderr is truncated from the head, preserving the failure summary at the end of test/build output.
- Eval harness — HTTP/SSE read timeout is decoupled from the agent's task timeout (task timeout + 120 s grace) and iteration counting no longer inflates from non-iteration SSE steps.
- Quota messages in the TUI/GUI chat are now human-readable instead of raw JSON.
Housekeeping
- Version bumped to 2.3.3 everywhere (npm, pip, Web UI, TUI, auto-updater, tests).
- Removed throwaway files:
TESTING_NOTES.md,e2e_agent_test.py,gui_task_discount/. - README updated with the v2.3.3 changelog.
- Full test suite green: 286 passed.
Install
npm install -g tera-pilot # or
pip install -U tera-pilot