Bek
9636bea901
perf(memory): add QMD search diagnostics and runtime cache ( #96655 )
2026-06-26 16:16:12 -04:00
NIO
527f8f0cbb
fix(image-gen): bound image generation provider JSON response reads ( #96495 )
...
* fix(image-gen): bound image generation provider JSON response reads
Route success JSON reads through readProviderJsonResponse (16 MiB cap)
in openrouter, google, fal, minimax, openai, and vydra image generation
providers to prevent OOM from oversized or hostile endpoint responses.
Mirrors the response-limit campaign already applied to other provider paths.
AI-assisted.
Co-authored-by: Cursor <cursoragent@cursor.com >
* fix(image-gen): size bounded JSON caps for inline image payloads
Signed-off-by: sallyom <somalley@redhat.com >
---------
Signed-off-by: sallyom <somalley@redhat.com >
Co-authored-by: Cursor <cursoragent@cursor.com >
Co-authored-by: sallyom <somalley@redhat.com >
2026-06-26 07:08:30 -04:00
Renaud Cerrato
95b97e5b0b
fix(exec): fail invalid explicit workdir before running ( #94441 )
...
* fix(exec): fail invalid explicit workdir before running
* test(exec): tighten invalid workdir regression
* fix(exec): clarify invalid workdir recovery
* refactor(exec): centralize workdir resolution
* test(exec): update invalid workdir assertion
* fix(exec): harden backend workdir contract
* fix(exec): map missing backend host workdirs
* fix(exec): reject control commands before workdir prep
* fix(exec): defer env hook until backend cwd validation
* chore(sdk): refresh plugin api baseline
* test(agents): drop redundant definition assertions
* test(exec): use real config workdirs
* test(exec): use tracked temp dirs
* test(openshell): keep temp setup local
* test: update temp-dir route fixture
---------
Co-authored-by: jesse-merhi <79823012+jesse-merhi@users.noreply.github.com >
2026-06-26 08:02:00 +10:00
Vincent Koc
56d95b18f4
fix(sdk): refresh plugin sdk api baseline
2026-06-25 06:51:02 +02:00
joshavant
0a14444924
Bound successful provider response reads
2026-06-24 19:08:22 -05:00
Vincent Koc
9514faca27
chore(sdk): refresh plugin SDK API baseline
2026-06-24 21:40:41 +02:00
Vincent Koc
dbe2802cdc
fix(sdk): refresh API baseline hash
2026-06-25 00:04:34 +08:00
Vincent Koc
20293036ca
fix(sdk): refresh API baseline hash
2026-06-24 18:58:08 +08:00
Vincent Koc
bfffc77bfc
feat(copilot): add BYOK provider parity
2026-06-24 18:29:56 +08:00
Josh Lehman
132d70bfb3
refactor: migrate bundled transcript target lookups ( #89911 )
2026-06-23 14:32:21 -07:00
Vincent Koc
f1c8cda090
chore(plugin-sdk): refresh API baseline hash
2026-06-24 02:29:59 +08:00
Vincent Koc
34d2d54d6c
fix(plugin-sdk): refresh api baseline hash
2026-06-23 20:27:52 +08:00
兰之
bd479958c0
feat(plugin-sdk): add extensible channel identity hook context ( #91903 )
...
Merged via squash.
Prepared head SHA: 90f51eafd5
Co-authored-by: lanzhi-lee <36190508+lanzhi-lee@users.noreply.github.com >
Co-authored-by: vincentkoc <25068+vincentkoc@users.noreply.github.com >
Reviewed-by: @vincentkoc
2026-06-23 11:56:49 +08:00
Vincent Koc
392377e7e4
chore(plugin-sdk): refresh API baseline hash
2026-06-22 21:49:53 +02:00
Vincent Koc
8cf0d7dd33
chore(plugin-sdk): refresh API baseline hash
2026-06-22 11:23:02 +02:00
Vincent Koc
a03032a272
chore(plugin-sdk): refresh API baseline hash
2026-06-21 23:09:27 +02:00
Vincent Koc
2e7c3ace9c
chore(plugin-sdk): refresh API baseline hashes
2026-06-21 21:28:47 +02:00
Vincent Koc
5230ec66ae
chore(plugin-sdk): refresh API surface baselines
2026-06-21 19:32:49 +02:00
Marcus Castro
b50a5aebba
fix(whatsapp): preserve native quote replies ( #95483 )
...
* fix(whatsapp): preserve native quote replies
* feat(plugin-sdk): add quote-reply live transport standard
* test(qa-lab): add WhatsApp quote-reply live scenarios
2026-06-21 11:26:58 -03:00
Vincent Koc
b039e949b6
chore(release): close out 2026.6.9
2026-06-21 12:24:15 +08:00
Vincent Koc
9ac3759ffc
chore(plugin-sdk): refresh harness API budgets
2026-06-21 07:00:11 +08:00
Josh Lehman
7a0d36f3d0
refactor: add SDK transcript identity target API ( #95030 )
2026-06-20 14:01:07 -07:00
Vincent Koc
70a48a680d
fix(sdk): refresh plugin api baseline hash
2026-06-19 19:18:38 +02:00
Vincent Koc
e74a7d2f14
fix(sdk): refresh api baseline hash
2026-06-19 15:57:57 +02:00
Vincent Koc
d236612cc0
fix(sdk): refresh plugin API baseline hash
2026-06-19 09:59:02 +02:00
Josh Lehman
f1cab04966
refactor: route SDK session compatibility through seam ( #89203 )
2026-06-18 20:52:46 -07:00
Vincent Koc
73cdb78a1e
fix(sdk): refresh plugin api baseline hash
2026-06-19 00:01:15 +02:00
Vincent Koc
8151a547c5
chore(plugin-sdk): refresh API baseline hash
2026-06-18 19:54:11 +02:00
Vincent Koc
60335533a9
chore(ci): refresh sqlite landing baselines
2026-06-19 01:20:06 +08:00
Vincent Koc
1db7c41bf2
fix(sdk): keep sqlite lifecycle helpers private
2026-06-19 01:20:06 +08:00
Vincent Koc
8b7269d197
fix(sqlite): preserve migrations and reindex safety
2026-06-19 01:20:06 +08:00
Vincent Koc
d5d6576e06
fix(docs): refresh qa lab plugin inventory
2026-06-18 07:57:49 +02:00
Vincent Koc
f8f2006c8b
fix(plugin-sdk): refresh api baseline hash
2026-06-18 06:46:44 +02:00
Vincent Koc
af026b383d
fix(plugin-sdk): refresh api baseline hash
2026-06-18 05:34:19 +02:00
Vincent Koc
b35b1f2b7c
fix(sdk): refresh plugin api baseline
2026-06-17 19:11:18 +02:00
Vincent Koc
1c0b38f960
fix(sdk): refresh plugin surface baselines
2026-06-17 12:25:42 +02:00
Vincent Koc
bed5bf339e
fix(sdk): refresh plugin api baseline
2026-06-17 10:00:29 +02:00
Vincent Koc
922aea7d28
fix(sdk): refresh plugin api baseline
2026-06-17 05:47:07 +02:00
Vincent Koc
93216e1ca1
fix(sdk): refresh plugin api baseline hash
2026-06-17 03:07:56 +02:00
Vincent Koc
cfb27e6437
fix(ci): align plugin SDK surface budget
2026-06-17 07:28:26 +08:00
Shakker
920e6a8eec
chore: set version 2026.6.9
2026-06-16 19:54:07 +01:00
Vincent Koc
617f97d4b9
fix(plugin-sdk): refresh API baseline hash
2026-06-16 18:34:45 +02:00
Vincent Koc
fa33f5bbb8
fix(plugin-sdk): refresh API baseline hash
2026-06-16 12:32:39 +02:00
Vincent Koc
983e0f2ba0
docs: refresh generated API baselines
2026-06-16 07:26:19 +02:00
Vincent Koc
1c2363def6
fix(plugin-sdk): refresh QA self-check API baseline
2026-06-16 02:56:41 +02:00
Vincent Koc
767e8280ac
fix(cli): harden official plugin recovery ( #93325 )
...
* fix(cli): harden official plugin recovery
* fix(config): preserve include write context
* fix(config): reject external include mutations
* fix(config): bind snapshots to config paths
* fix(config): preserve write ownership
* fix(cli): preflight plugin config mutations
* chore(plugin-sdk): refresh api baseline
* test(config): prove install env policy mutations
* fix(cli): preflight plugin updates
* fix(cli): preflight non-npm id migrations
* chore(plugin-sdk): refresh api baseline
* fix(cli): satisfy plugin recovery checks
2026-06-15 23:07:29 +08:00
sandieman2
c67dc59b02
fix(reply): deliver final reply when queued follow-up claims session; scope dedupe to routed thread ( #90943 )
...
* fix(reply): deliver final reply when queued follow-up claims session; scope dedupe to routed thread
Two core bugs caused composed replies to be silently dropped (no delivery,
no error) when a second message arrived in the same thread mid-run:
1. dispatch-from-config: ensureDispatchReplyOperation only kept the
dispatch-owned operation authoritative while it had no result. Once
runReplyAgent completed the operation to drain queued follow-ups, a
second same-thread inbound could claim the session and the first final
reply would try to re-acquire the lane instead of finishing delivery,
deadlocking behind the queued work. Keep the dispatch-owned operation
authoritative through final delivery.
2. reply-payloads-dedupe: messaging-tool reply dedupe compared only the
channel target, not the routed thread, so a send in one thread could
suppress a later reply in a different thread. Thread the routed thread
id through buildReplyPayloads + follow-up delivery and only fall back to
channel-only matching for providers without a thread-aware suppression
matcher when neither side carries thread evidence.
Adds regression tests; existing Telegram topic-suppression behavior is
preserved by gating the thread guard to providers lacking a plugin matcher.
* fix(reply): preserve threaded message delivery evidence
* fix(reply): dedupe final payloads by delivery route
* fix(slack): preserve native send thread evidence
* fix(reply): preserve explicit reply thread evidence
* fix(reply): align explicit reply route dedupe
* fix(reply): preserve delivery lane through final dispatch
* fix(mattermost): preserve threaded tool send routes
* chore(plugin-sdk): refresh API baseline
* fix(reply): align final delivery route dedupe
* fix(reply): gate followups on final delivery
* fix(reply): keep send receipts private
* fix(reply): infer implicit message provider
* fix(reply): align routed threading policy
* fix(reply): preserve queued delivery context
* fix(reply): hydrate queued system event routes
* fix(reply): hydrate queued execution routes
* fix(reply): scope final delivery barriers
* fix(slack): preserve DM target aliases
* fix(reply): mirror resolved source thread routes
* fix(mattermost): retain delayed delivery barrier
* fix(codex): separate message routing from tool policy
* fix(reply): consume normalized Slack DM targets once
* fix(slack): remove stale target alias
* style(reply): satisfy changed lint gates
* fix(mattermost): preserve explicit reply targets
* test: align Slack reply branch checks
* fix(reply): persist overflow summaries to admitted session
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-06-14 09:11:05 -07:00
Ayaan Zaidi
d498b1cce4
fix(plugin-sdk): expose delivery hints without utility imports
2026-06-14 18:18:20 +05:30
David
23d74dad12
fix(lmstudio): honor thinking off for binary reasoning models ( #92002 )
...
Scope disabled-thinking payload repair to LM Studio's lightweight provider stream hook. Preserve official OpenAI and Anthropic tool-calling paths.
Co-authored-by: David <32288+nxmxbbd@users.noreply.github.com >
2026-06-14 05:41:49 -07:00
brokemac79
d1299658ac
fix(active-memory): preserve verbose recall summaries ( #90739 )
...
* fix(active-memory): preserve verbose recall summaries
* fix(active-memory): require recall evidence for recovery
* fix(active-memory): recognize capped recall results
* fix(active-memory): preserve grounded recall state
* refactor(active-memory): limit recovery to completed recalls
* fix(active-memory): ground terminal recall recovery
* fix(active-memory): limit unavailable recovery to completed replies
* fix(active-memory): harden recall evidence recovery
* fix(active-memory): preserve timeout recovery contract
* fix(active-memory): preserve capped failure evidence
* fix(active-memory): reject content-only recall failures
* fix(active-memory): ground completed recall summaries
* fix(active-memory): separate hook and recall timeouts
* fix(active-memory): classify custom tool failures
* fix(active-memory): preserve harness tool evidence
* fix(active-memory): reject explicit empty results
* fix(active-memory): wait for fallback recall evidence
* fix(codex): report dynamic tool results
* fix(active-memory): separate preflight recall deadline
* fix(active-memory): normalize recall tool names
* fix(agents): classify unavailable approvals
* docs(active-memory): clarify hook timeout phases
* test(active-memory): stabilize timeout abort proof
* fix(agents): preserve successful cancellation outcomes
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-06-13 23:38:58 -07:00