• v26.04.13.1 Stable

    bvandeusen released this 2026-04-13 01:14:03 -04:00 | 419 commits to main since this release

    Highlights

    LLM / responsiveness

    • Root-cause fix for 5–20s TTFT variance on qwen3:14b: frontend no longer hardcodes think=true; _should_think is a real content classifier (length + keyword). Timing logs split first_token_ms / thinking_ms / ttft_ms.
    • 38 parametrized _should_think tests; briefing /discuss-* actions defer to the classifier.
    • pick_num_ctx now includes tool schemas — fixes silent prompt truncation at 14K+ tokens.
    • Ollama model tags normalized to lowercase; error bodies surfaced; pre-gemma3 summaries refreshed.
    • Default background model switched to gemma3:4b.

    Tools refactor

    • Decorator-based tool registry replaces monolithic tools.py (2566 lines → tools/ package). Single source of truth per tool via @tool; briefing eligibility via briefing=True; CalDAV/SearXNG via requires=.
    • Tool count consolidated from 42 → 38 (create_taskcreate_note, delete_taskdelete_note, entity saves merged, get_noteread_note).

    Research

    • Research pipeline emits an index note with executive summary + clickable section-note links; section notes parent_id → index. Minimum sections lowered to 2 with retry.
    • Empty-exception messages now fall back to exception class name.

    Chat / UI

    • Knowledge and Workspace views stop passing explicit conversation titles so backend auto-naming fires.
    • "New Chat" button no longer stretches full height in empty state.
    • Task cards in Knowledge view show the Task badge instead of List.

    CI

    • New ci-runner base image with uv/ruff/jq/tzdata baked in; typecheck 9m41s → ~30s, lint 13s → 2s.
    • Registry cache export made non-fatal; setuptools install fix for uv + http-ece.
    Downloads