Commit Graph

29699 Commits

Author SHA1 Message Date
Peter Steinberger
64f2b20963 test: isolate sharding default env 2026-04-10 13:43:25 +01:00
Peter Steinberger
b64a03793c test: keep conservative full-suite shards aggregated 2026-04-10 13:36:48 +01:00
Peter Steinberger
2eb66a1ba9 fix: detect llama.cpp context overflow (#64196) (thanks @alexander-applyinnovations) 2026-04-10 13:30:33 +01:00
Alexander Bunn
57e6aeca84 fix(agents): detect llama.cpp slot overflow as context overflow
Auto-compaction never triggered for self-hosted llama.cpp HTTP servers
(used directly or behind an OpenAI-compatible shim configured with
`api: "openai-completions"`) because llama.cpp's native overflow wording
isn't covered by any existing pattern in `isContextOverflowError()` or
`matchesProviderContextOverflow()`.

When the prompt overshoots a slot's `--ctx-size`, llama.cpp returns:

  400 request (66202 tokens) exceeds the available context size (65536 tokens), try increasing it

That message uses "context size" rather than "context length", says
"request (N tokens)" instead of "input/prompt is too long", and the
status code is 400 (not 413), so it slips past every existing string
check and every regex in `PROVIDER_CONTEXT_OVERFLOW_PATTERNS`. The
generic candidate pre-check passes, but the concrete provider regexes
all miss, so the agent runner reports `surface_error reason=...` and
the user gets the raw upstream error instead of compaction + retry.

This commit adds a llama.cpp-shaped pattern next to the existing Bedrock
/ Vertex / Ollama / Cohere ones in
`PROVIDER_CONTEXT_OVERFLOW_PATTERNS`, plus four test cases (three
parameterised messages exercising the new regex directly, and one
end-to-end assertion that `isContextOverflowError()` now returns true
for the verbatim message produced by llama.cpp's slot manager).

The pattern is anchored on llama.cpp's stable slot-manager wording
(`(?:request|prompt) (N tokens) exceeds (the )?available context size`)
so it won't accidentally swallow unrelated provider errors.

Closes #64180

AI-assisted: drafted with Claude Code (Opus 4.6, 1M context).
Testing: targeted tests pass via `pnpm vitest run
src/agents/pi-embedded-helpers/provider-error-patterns.test.ts`
(26/26). Broader vitest run shows 2 unrelated failures in
`group-policy.fallback.contract.test.ts` that are not touched by this
change.
2026-04-10 13:30:33 +01:00
Peter Steinberger
12ae2fa408 ci: parallelize full-suite project shards 2026-04-10 13:23:03 +01:00
Peter Steinberger
66ac5194f7 test: honor low-worker full-suite gate 2026-04-10 13:10:04 +01:00
Nimrod Gutman
8fe74145c4 fix(btw): land side-question context hardening (#64225) (thanks @ngutman) 2026-04-10 15:03:51 +03:00
Nimrod Gutman
7bb98ea12f fix(btw): drop hidden reasoning from side-question context 2026-04-10 15:03:51 +03:00
Nimrod Gutman
9553b402ee fix(btw): strip embedded tool blocks from side-question context 2026-04-10 15:03:51 +03:00
Nimrod Gutman
cc5cb496ad fix(btw): strip replayed tool calls from side-question context 2026-04-10 15:03:51 +03:00
Peter Steinberger
2138273d63 test: run full suite shards in parallel locally 2026-04-10 12:58:29 +01:00
Peter Steinberger
9f864c9ade fix: guard browser control fetches 2026-04-10 12:46:26 +01:00
Peter Steinberger
bf40baaa4d fix(gateway): improve websocket auth logging 2026-04-10 12:39:08 +01:00
Peter Steinberger
d350280fc2 test: fix latest type and lazy cli gates 2026-04-10 12:37:01 +01:00
Peter Steinberger
2ad451e91f test: fix parallel full-suite exposed gates 2026-04-10 12:34:53 +01:00
Peter Steinberger
9248a44fc1 fix: restore rebased type gates 2026-04-10 12:24:50 +01:00
Peter Steinberger
7c7a63eab4 test(nostr): type mock profile response 2026-04-10 12:20:04 +01:00
Peter Steinberger
644105bea6 fix: restore latest main typecheck 2026-04-10 12:20:04 +01:00
Peter Steinberger
8e242622e1 fix: stabilize rebased test gates 2026-04-10 12:14:36 +01:00
Peter Steinberger
444cdd055d fix: stabilize main test gates 2026-04-10 12:14:36 +01:00
Peter Steinberger
ef1694575d fix: restore main type gates 2026-04-10 12:14:36 +01:00
Pavan Kumar Gondhi
6517c700de fix(nostr): require operator.admin scope for profile mutation routes [AI] (#63553)
* fix: address issue

* fix: address review feedback

* fix: address review feedback

* fix: finalize issue changes

* fix: address PR review feedback

* fix: address review-pr skill feedback

* fix: address PR review feedback

* fix: address review-pr skill feedback

* fix: address PR review feedback

* fix: address PR review feedback

* fix: address PR review feedback

* fix: address PR review feedback

* docs: add changelog entry for PR merge
2026-04-10 16:38:41 +05:30
Vincent Koc
0e54440ecc fix(cycles): remove browser cli and tlon runtime seams 2026-04-10 11:45:28 +01:00
Vincent Koc
dbe2a97e80 fix(cycles): remove qa-lab and ui runtime seams 2026-04-10 11:45:27 +01:00
Peter Steinberger
10b26ed2ec test: restore full gate stability 2026-04-10 11:36:41 +01:00
Nimrod Gutman
125db8038d docs(changelog): credit original btw fix author 2026-04-10 13:16:29 +03:00
Nimrod Gutman
35002cb6bb fix(btw): allow aws-sdk auth for bedrock side questions 2026-04-10 13:16:29 +03:00
Nimrod Gutman
90e784cab8 fix(btw): omit empty tool arrays for side questions (#64219) (thanks @ngutman) (#64219) 2026-04-10 13:12:38 +03:00
Mariano
46f8c4dfd5 fix(memory-core): harden request-scoped dreaming fallback (#64156)
* memory-core: harden request-scoped dreaming fallback

* memory-core: tighten request-scoped fallback classification
2026-04-10 12:11:57 +02:00
Vincent Koc
948909b3fb fix(protocol): regenerate chat event error kind 2026-04-10 11:01:55 +01:00
Peter Steinberger
0b0c062e97 fix: avoid Claude CLI subscription prompt classifier 2026-04-10 10:52:35 +01:00
Peter Steinberger
f8dbd7dd69 test: align qqbot account speech config expectation 2026-04-10 10:45:11 +01:00
Peter Steinberger
9714495797 test: keep plugin runtime symlink assertion on symlink path 2026-04-10 10:28:53 +01:00
Peter Steinberger
6c82a91d3d refactor: tighten device pairing approval types 2026-04-10 10:22:00 +01:00
Peter Steinberger
ae4817e0e0 test: align matrix acp delivery expectation 2026-04-10 10:15:51 +01:00
Peter Steinberger
bbede259b7 test(delivery): keep telegram parent channel target expectation 2026-04-10 10:12:07 +01:00
Peter Steinberger
edf4ec81c4 fix(imessage): remove duplicate runtime type import 2026-04-10 10:12:07 +01:00
Peter Steinberger
feb3c7f823 fix(test): repair rebased gate failures 2026-04-10 10:12:07 +01:00
Peter Steinberger
c2e2b87f28 fix(acp): classify gateway chat error kinds 2026-04-10 10:12:07 +01:00
Peter Steinberger
8763614d1e test: cover bundled plugin skill runtime 2026-04-10 10:11:35 +01:00
Peter Steinberger
68b4b36a90 test: harden qa eval scenarios 2026-04-10 10:11:35 +01:00
Mingkuan
005b629b6d fix(qqbot): allow extension fields in channel config schema (#64075)
* fix(qqbot): allow extension fields in channel config schema

Use passthrough() on QQBotConfigSchema, QQBotAccountSchema, and
QQBotStreamingSchema so third-party builds that share the qqbot
channel id can add custom fields without triggering
"must NOT have additional properties" validation errors.

tts and stt sub-schemas remain strict to preserve typo detection
for those sensitive fields.

* Update extensions/qqbot/openclaw.plugin.json

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* chore(qqbot): update changelog for config schema passthrough

---------

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-04-10 17:01:00 +08:00
Vincent Koc
3b6500ca20 fix(telegram): bypass bot handlers barrel 2026-04-10 10:00:24 +01:00
Vincent Koc
ae4fdaea82 fix(telegram): split monitor runtime types 2026-04-10 10:00:24 +01:00
Vincent Koc
ad8207c9d5 fix(protocol): regenerate agent models 2026-04-10 09:57:50 +01:00
Peter Steinberger
e462e531ad test: keep runtime staging fallback assertion on symlink path 2026-04-10 09:57:27 +01:00
Peter Steinberger
ec5ef68b0c test: fix latest fast-lane boundaries 2026-04-10 09:53:17 +01:00
Peter Steinberger
0728ac73c2 chore: remove stray empty files 2026-04-10 09:51:07 +01:00
Vincent Koc
489d0f7cd9 fix(whatsapp): split outbound media runtime seam 2026-04-10 09:49:02 +01:00
Peter Steinberger
b660493e54 fix: harden device pairing scope approval 2026-04-10 09:48:17 +01:00