-
v4.1.1
StableAll checks were successfulCI / Backend lint (ruff) (push) Successful in 27sCI / Bot/backend version sync (push) Successful in 32sCI / Summarisation accuracy eval harness (stub provider) (push) Successful in 1m13sRelease / Create Forgejo release (push) Successful in 13sCI / Frontend tests, audit, and build (push) Successful in 1m42sCI / Bot tests and audit (push) Successful in 1m50sCI / Docker image build (push) Successful in 4m41sCI / Backend migration, tests, and audit (push) Successful in 5m56sRelease / Build and push versioned images (push) Successful in 7m12sreleased this
2026-09-05 00:19:52 +00:00 | 324 commits to main since this releaseA patch on the way to v4.2.0: the AI provider is named rather than guessed
from its URL, and a/askanswer that ran out of room now says so.No migrations. Nothing to rehearse, nothing to back out.
The bot contract is unchanged (still v1). The one
/api/bot/*change is
an optional field added to the/askresponse, which the bot tolerates when
absent, so backend and bot images can be upgraded independently in either
order.One new optional setting — the AI provider select in Admin → Bot Settings.
Nothing changes on upgrade unless you set it; see the entry below for who
should.Added
- [webapp] Admin → Bot Settings can now name the AI provider explicitly
instead of letting it be detected from the endpoint URL (#351). Detection
matches on the URL —anthropic.com,openai.com,:11434— and falls back
to llama.cpp for everything else, so if you run a gateway or reverse proxy
on your own domain, your endpoint has been treated as llama.cpp regardless of
what is behind it. The provider decides the JSON-schema format, how
truncation is detected, and the default context window, so a wrong guess
degrades summaries quietly rather than failing. Leave it on "Detect from the
URL" if that guess is already right for you — nothing changes on upgrade.
Fixed
/askno longer presents a cut-off answer as a complete one (#426). The
question-answering path never checked whether the model ran out of room, and
a truncated answer is prose that simply stops — there was nothing to notice.
It is now marked in the Discord embed. Two related fixes on the same path:
the output limit was 1024 tokens on Anthropic and OpenAI (small for an answer
drawn from ten sessions plus the wiki) and unset on llama.cpp, and is now
4096 everywhere; and on Ollama the question was being silently cut to
that provider's 2–4k default, so the model answered from a fraction of the
context it was supposed to have. If your/askanswers have felt oddly
narrow on a self-hosted Ollama, that is why.- [webapp] A silently truncated prompt is now reported on every LLM provider,
not just Ollama (#351). The check that warns when a provider consumed far
fewer prompt tokens than were sent existed, but was wired to a single code
path. llama.cpp, Anthropic and OpenAI deployments got no warning at all, so a
transcript that overflowed the context window could be summarised from its
tail with nothing in the logs to say so. If you self-host llama.cpp and see
this warning appear after upgrading, your configured context window is too
large — see the note under "Context window (tokens)" in Bot Settings.
The check stays quiet on Anthropic and OpenAI, where prefix caching makes a
low count ambiguous rather than alarming.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- [webapp] Admin → Bot Settings can now name the AI provider explicitly