Commit Graph

18261 Commits

Author SHA1 Message Date
Peter Steinberger
7fd6e2ec4c fix: filter provider auth aliases by plugin trust 2026-04-09 00:42:52 +01:00
Peter Steinberger
fbbd644d7a plugins: load lightweight provider discovery entries 2026-04-09 00:33:33 +01:00
Peter Steinberger
5e83e81af8 style: sort session import 2026-04-09 00:31:08 +01:00
Peter Steinberger
0560f3c9c0 fix(ci): drop silent history before truncation 2026-04-08 23:47:34 +01:00
Peter Steinberger
c62a39c7a1 fix: restore main ci 2026-04-08 23:30:18 +01:00
Peter Steinberger
95a4dd5abb fix(ci): align ollama thinking expectations 2026-04-08 23:25:50 +01:00
Peter Steinberger
3c7beb4e42 test: avoid runtime auth overlays in failure-state coverage 2026-04-08 23:25:02 +01:00
Mariano
d514f4de83 Dreaming: surface grounded scene lane (#63395)
Merged via squash.

Prepared head SHA: 0c7f586f32
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com>
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com>
Reviewed-by: @mbelinky
2026-04-09 00:24:47 +02:00
Gustavo Madeira Santana
bd7801eefa Slack: key turn-local dedupe by dispatch kind
Scope Slack turn-local delivery dedupe by reply dispatch kind so identical tool and final payloads on the same thread do not collapse into one send.

Expose the existing dispatcher kind on the public reply-runtime seam and cover the Slack tracker and preview-fallback paths with regression tests.
2026-04-08 18:19:34 -04:00
Pinghuachiu
68630a9e6d fix(gateway): suppress announce/reply skip chat leakage (#51739)
Merged via squash.

Prepared head SHA: 2f53f3b0b7
Co-authored-by: Pinghuachiu <9033138+Pinghuachiu@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-04-08 15:18:57 -07:00
Accunza
8190cc4d21 fix: inter-session messages must not overwrite established external lastRoute (#58013)
Merged via squash.

Prepared head SHA: 820ea20cb8
Co-authored-by: duqaXxX <12242811+duqaXxX@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-04-08 15:12:27 -07:00
Peter Steinberger
2787b5bcae test: move cron heartbeat delivery coverage below full turns 2026-04-08 23:02:03 +01:00
Altay
554bc0a9fd fix(plugins): keep test helpers out of contract barrels (#63311)
Merged via squash.

Prepared head SHA: 769e90c6af
Co-authored-by: altaywtf <9790196+altaywtf@users.noreply.github.com>
Co-authored-by: altaywtf <9790196+altaywtf@users.noreply.github.com>
Reviewed-by: @altaywtf
2026-04-08 22:59:05 +01:00
Peter Steinberger
9ffe216a52 test: replace exec directive e2e with pure coverage 2026-04-08 22:55:40 +01:00
Peter Steinberger
f8a57fe47b test: move inline directive collisions to pure tests 2026-04-08 22:53:12 +01:00
Peter Steinberger
51bf97a9db test: reuse inline directive reply imports 2026-04-08 22:45:50 +01:00
Mariano Belinky
a71ad12044 Memory/dreaming: harden grounded backfill follow-ups 2026-04-08 23:43:39 +02:00
Peter Steinberger
868d03d6d0 fix(memory): align dreaming status payloads 2026-04-08 22:38:29 +01:00
Peter Steinberger
85e222717f fix(gateway): classify dream diary actions 2026-04-08 22:38:29 +01:00
Mariano
e8209e4cf9 Memory/dreaming: feed grounded backfill into short-term promotion (#63370)
Merged via squash.

Prepared head SHA: 5dfe246ef9
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com>
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com>
Reviewed-by: @mbelinky
2026-04-08 23:31:37 +02:00
Shakker
48c4003f22 test: cover unsafe qa missing-key providers 2026-04-08 21:55:39 +01:00
Shakker
705d2dd03e fix: harden qa missing-key provider messages 2026-04-08 21:55:39 +01:00
Shakker
7d818c32ba test: cover sanitized qa missing-key replies 2026-04-08 21:55:39 +01:00
Shakker
4ad9f166e2 fix: sanitize qa missing-key replies 2026-04-08 21:55:39 +01:00
Shakker
491e216c45 fix: fail fast on qa live auth errors 2026-04-08 21:55:39 +01:00
Gustavo Madeira Santana
30211be1cb Slack: treat ACP block text as visible output (#62858)
Merged via squash.

Prepared head SHA: 14f202e1cc
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-04-08 16:33:43 -04:00
Peter Steinberger
37fb1eb9ad test: move directive state coverage to pure tests 2026-04-08 20:50:56 +01:00
Peter Steinberger
ab46010caa test: reuse verbose directive reply imports 2026-04-08 20:30:59 +01:00
Peter Steinberger
1d1763caa4 test: reuse exec directive reply imports 2026-04-08 20:25:11 +01:00
Agustin Rivera
dafcaf9d69 fix(browser): harden browser control override loading (#62663)
* fix(browser): harden browser control overrides

* fix(lint): prepare boundary artifacts for extension oxlint

* docs(changelog): add browser override hardening entry

* fix(lint): avoid duplicate boundary prep

---------

Co-authored-by: Devin Robison <drobison@nvidia.com>
Co-authored-by: Devin Robison <drobison00@users.noreply.github.com>
2026-04-08 13:24:47 -06:00
Peter Steinberger
8a5ae730d4 auth: persist explicit profile upserts directly 2026-04-08 20:15:57 +01:00
Peter Steinberger
5df4351c4d test(doctor): mock memory-core runtime seam 2026-04-08 20:13:44 +01:00
Peter Steinberger
5b4eb267b0 auth: avoid external cli sync on profile upsert 2026-04-08 20:10:47 +01:00
Agustin Rivera
dbfcef3196 fix(dotenv): block workspace runtime env vars (#62660)
* fix(dotenv): block workspace runtime env vars

Co-authored-by: zsx <git@zsxsoft.com>

* docs(changelog): add workspace dotenv runtime-control entry

* fix(dotenv): block workspace gateway port override

---------

Co-authored-by: zsx <git@zsxsoft.com>
Co-authored-by: Devin Robison <drobison@nvidia.com>
2026-04-08 13:04:00 -06:00
Peter Steinberger
5478462cbf test: harden provider mock isolation 2026-04-08 19:59:36 +01:00
Peter Steinberger
112e725237 test: reuse followup runner imports 2026-04-08 19:54:37 +01:00
Peter Steinberger
218078ffd4 test: reuse image generate tool imports 2026-04-08 19:49:01 +01:00
Agustin Rivera
4a60087cd0 Align remote node exec event system messages with untrusted handling (#62659)
* fix(nodes): downgrade remote exec system events

* docs(changelog): add remote node exec event entry

---------

Co-authored-by: Devin Robison <drobison@nvidia.com>
2026-04-08 12:47:24 -06:00
Peter Steinberger
a3d21539ef test: stabilize full-suite execution 2026-04-08 19:40:57 +01:00
Mariano
66b824870d feat(ui): add dreaming diary controls and navigation (#63298)
Merged via squash.

Prepared head SHA: 0a2ae66913
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com>
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com>
Reviewed-by: @mbelinky
2026-04-08 20:34:24 +02:00
Peter Steinberger
9e4f478f86 feat(plugins): support provider auth aliases 2026-04-08 19:03:04 +01:00
Peter Steinberger
fd9f9b8586 test: isolate provider runtime test mocks 2026-04-08 19:00:24 +01:00
Pavan Kumar Gondhi
2d97eae53e fix(plugins): prevent untrusted workspace plugins from hijacking bundled provider auth choices [AI] (#62368)
* fix: address issue

* fix: address review feedback

* docs(changelog): add onboarding auth-choice guard entry

* fix: address PR review feedback

* fix: address PR review feedback

* fix: address PR review feedback

* fix: address PR review feedback

* fix: address PR review feedback

* fix: address PR review feedback

* fix: address PR review feedback

* fix: address PR review feedback

---------

Co-authored-by: Devin Robison <drobison@nvidia.com>
2026-04-08 23:08:14 +05:30
Peter Steinberger
2d0e25c23a fix: pass system prompt to codex cli 2026-04-08 18:15:10 +01:00
Peter Steinberger
bae64bb188 test: isolate volcengine byteplus auth resolver imports 2026-04-08 17:44:57 +01:00
Peter Steinberger
c945ae7be5 test: stabilize ci test isolation 2026-04-08 17:35:54 +01:00
Frank Yang
5d46e4dc4f fix(gateway): clear auto-fallback model override on session reset (#63155)
* fix(gateway): clear auto-fallback model override on session reset

When `persistFallbackCandidateSelection()` writes a fallback provider
override with `authProfileOverrideSource: "auto"`, the override was
incorrectly preserved across `/reset` and `/new` commands. This caused
sessions to keep using the fallback provider even after the user changed
the agent config primary provider, because the session store override
takes precedence over the config default.

Now the override fields (`providerOverride`, `modelOverride`,
`authProfileOverride`, `authProfileOverrideSource`,
`authProfileOverrideCompactionCount`) are only carried forward when
`authProfileOverrideSource === "user"` (i.e. explicit `/model` command).
System-driven overrides are dropped on reset so the session picks up the
current config default.

Introduced in cb0a752156 ("fix: preserve reset session behavior config")

* fix(gateway): preserve explicit reset model selection

* fix(gateway): track reset model override source

* fix(gateway): preserve legacy reset model overrides

* docs(changelog): add session reset merge note

---------

Co-authored-by: termtek <termtek@ubuntu.tail2b72cd.ts.net>
2026-04-09 00:31:05 +08:00
Frank Yang
153e3add68 fix(auto-reply): strip leading NO_REPLY tokens to prevent silent-reply leak (#63068)
* fix(auto-reply): strip leading NO_REPLY tokens to prevent silent-reply leak

* fix(auto-reply): preserve substantive NO_REPLY leading text

* fix(agents): preserve ACP silent-prefix cumulative deltas

* fix(auto-reply): harden silent-token streaming paths

* fix(auto-reply): normalize glued silent tokens consistently

---------

Co-authored-by: termtek <termtek@ubuntu.tail2b72cd.ts.net>
2026-04-09 00:30:13 +08:00
Peter Steinberger
253ecd2a5d test: keep media runtime tests on same-directory provider mocks 2026-04-08 17:15:56 +01:00
Peter Steinberger
8f67f156ee test: keep pi fs workspace tests on fs tool factories 2026-04-08 17:06:23 +01:00