Peter Steinberger
3832074cd9
fix(mattermost): preserve channel lookup failures ( #118622 )
...
Co-authored-by: Peter Steinberger <steipete@macos.shared >
2026-08-03 03:21:55 -07:00
Peter Steinberger
a9da10ea9e
fix(gateway): bind response history to verified proxy identity ( #118607 )
2026-08-03 03:20:38 -07:00
Peter Steinberger
9c22a4349d
chore: speed up gateway CLI test startup ( #118620 )
...
* test(cli): avoid unrelated startup graphs
* test(cli): preserve startup coverage
---------
Co-authored-by: Peter Steinberger <steipete@mac-studio-sf2.local >
2026-08-03 03:17:25 -07:00
qingminlong
3f3e59b54d
fix(cron): defer auto-disable notifications until persistence ( #118384 )
...
* fix(cron): defer auto-disable notifications until persistence
* fix(cron): emit disable notifications only after durable roster commits
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-08-03 03:07:46 -07:00
Peter Steinberger
f9df87ce68
fix(agents): preserve successful sessions_yield handoffs ( #118584 )
...
* fix(agents): preserve successful sessions_yield handoffs
* fix(agents): require visible replies after yielded subagents
* fix(agents): reject progress notices as yielded final replies
2026-08-03 03:04:30 -07:00
Peter Steinberger
c53e594aae
fix(slack): stop partially started native streams after fallback ( #118617 )
2026-08-03 03:00:17 -07:00
Peter Steinberger
cc940b5ff5
test(agents): reuse managed worktree fixtures ( #118619 )
...
Co-authored-by: Peter Steinberger <steipete@mac-studio-sf2.local >
2026-08-03 02:59:47 -07:00
Sukhdeep
a7396255d0
fix(litellm): send image edits as multipart/form-data ( #118562 )
...
The litellm image provider built edit requests as a JSON body with
`images: [{image_url}]`, but LiteLLM's POST /v1/images/edits is a multipart
endpoint following OpenAI's edits schema: the reference image must be an
uploaded file part named `image` (or `image[]`). LiteLLM never finds an `image`
key in a JSON body and fails before contacting the upstream provider:
HTTP 500 aimage_edit() missing 1 required positional argument: 'image'
so every image edit through this provider fails. Plain generation is unaffected.
No JSON variant works. Verified against LiteLLM v1.82.3 with a real 512x512 PNG:
plural `images` 500s as above; singular `image` as a data URL or bare base64,
string or array, returns HTTP 400 "Invalid image file or mode". Only multipart
succeeds. Note that singular `image` clears the 500 and reaches the provider,
which looks like progress but never delivers usable bytes.
Switch buildEditRequest to return { kind: "multipart", form }, which
createOpenAiCompatibleImageGenerationProvider already routes to
postMultipartRequest — matching the built-in openai and deepinfra providers.
A single reference uses the `image` part name and multiple use repeated
`image[]` parts; LiteLLM accepts either as List[UploadFile] and merges them,
erroring only when both appear in one request.
Also drops the now-unused imageToDataUrl helper and its imports.
Tests: the existing edit test asserted the buggy JSON shape, so it now asserts
a multipart request, that postJsonRequest is not called, and the single-image
part name; a new test covers repeated image[] parts for multiple references.
Verified end-to-end against LiteLLM v1.82.3 with a live agent: single-reference
and multi-image edits both return real images; both failed with the 500 before.
2026-08-03 02:59:08 -07:00
Peter Steinberger
deb682abfe
refactor(plugins): consolidate extension runtime helpers ( #118509 )
...
* refactor(plugins): consolidate extension runtime helpers
* fix(ci): satisfy extension type and lint checks
* chore(plugin-sdk): regenerate API baseline for #118509
2026-08-03 02:56:43 -07:00
Peter Steinberger
188957a18a
fix(gateway): require explicit credentials for probe URL overrides ( #118614 )
2026-08-03 02:52:29 -07:00
Peter Steinberger
96b4258734
fix(gateway): reject destroyed watch response sockets ( #118606 )
...
Co-authored-by: Peter Steinberger <steipete@macos.shared >
2026-08-03 02:41:47 -07:00
Peter Steinberger
f6540b0a1f
test(agents): reuse prepared plugin metadata ( #118613 )
...
Co-authored-by: Peter Steinberger <steipete@mac-studio-sf2.local >
2026-08-03 02:41:12 -07:00
Peter Steinberger
0fbddda540
improve(qa): replace terminal reply timing waits ( #118600 )
...
* test(qa): replace terminal reply timing waits
* test(qa): keep terminal contract in channel suite
* test(qa): scope terminal settlement per worker
* test(qa): bind settlement to child session
---------
Co-authored-by: Peter Steinberger <steipete@mac-studio-sf2.local >
2026-08-03 02:37:59 -07:00
ralf003
a0a1893605
fix(read): explain directory paths ( #114601 )
...
Co-authored-by: ralf003 <23394662@qq.com >
2026-08-03 17:36:20 +08:00
Peter Steinberger
ecc49b5a87
refactor(tts): absorb speech core package ( #118513 )
...
* refactor(tts): absorb speech core package
* fix(tts): preserve runtime SDK exports
* refactor(tts): remove private package exports
* test(tts): align canonical runtime mocks
* test(tts): complete canonical settings mocks
* chore(plugin-sdk): regenerate API baseline for #118513
2026-08-03 02:25:48 -07:00
Vincent Koc
d2046614f9
fix(qa): restore Telegram release validation ( #118542 )
2026-08-03 17:22:29 +08:00
Peter Steinberger
e97f484ef9
fix(discord): report pending message search indexes ( #118573 )
...
Co-authored-by: Peter Steinberger <steipete@macos.shared >
2026-08-03 02:13:42 -07:00
Peter Steinberger
e797e69969
refactor(agents): remove stale runner state plumbing ( #118495 )
...
* refactor(agents): remove stale runner state plumbing
* refactor(agents): keep bootstrap warning owner reachable
* refactor(agents): inline bootstrap warning predicates
* refactor(agents): extract bootstrap warning contracts
* refactor(agents): keep bootstrap detail type private
* refactor(auto-reply): drop vacuous abort returns
2026-08-03 01:59:31 -07:00
Peter Steinberger
f62e42b69f
test(gateway): skip servers for handler fixtures ( #118581 )
...
Co-authored-by: Peter Steinberger <steipete@mac-studio-sf2.local >
2026-08-03 01:54:36 -07:00
Peter Steinberger
2923ee40c4
test(tui): reuse real gateway PTY fixture ( #118567 )
...
* test(tui): reuse real gateway PTY fixture
* test(tui): share gateway mock model
---------
Co-authored-by: Peter Steinberger <steipete@mac-studio-sf2.local >
2026-08-03 01:53:26 -07:00
Peter Steinberger
63651a1878
fix: keep command tests independent of ambient Gateway tokens ( #118577 )
...
* test(commands): isolate missing gateway token environment
* test(commands): isolate doctor gateway token environment
2026-08-03 01:48:51 -07:00
Peter Steinberger
b21056a0dc
fix: show effective channel model in Telegram status ( #118548 )
2026-08-03 01:45:52 -07:00
Peter Steinberger
684d32bed5
test(system-agent): reuse approval CLI fixture ( #118572 )
...
Co-authored-by: Peter Steinberger <steipete@mac-studio-sf2.local >
2026-08-03 01:45:47 -07:00
Peter Steinberger
21b3904e91
test(macos): deduplicate Claude session catalog fixtures ( #118571 )
2026-08-03 01:45:12 -07:00
Peter Steinberger
7571679ecc
test(gateway): reuse directive transcript database ( #118585 )
...
Co-authored-by: Peter Steinberger <steipete@mac-studio-sf2.local >
2026-08-03 01:42:48 -07:00
Peter Steinberger
0cad02313a
test(tool-call-repair): consolidate stream fixtures ( #118563 )
2026-08-03 00:50:11 -07:00
joshavant
85466666af
fix(agents): preserve authoritative terminal replies
2026-08-03 02:48:34 -05:00
joshavant
b71708858a
fix(ui): align task recovery with gateway lifecycle
2026-08-03 02:48:34 -05:00
joshavant
8fd9b2a475
fix(agents): migrate retained completion results
2026-08-03 02:48:34 -05:00
joshavant
32a1579af8
fix(agents): preserve terminal announce semantics
2026-08-03 02:48:34 -05:00
joshavant
a37c5acc28
test: align resumed delivery with deterministic cleanup
2026-08-03 02:48:34 -05:00
joshavant
777b463fff
refactor: share queued delivery settlement
2026-08-03 02:48:34 -05:00
joshavant
d0439b9ce0
fix: distinguish dismissed task delivery
2026-08-03 02:48:34 -05:00
joshavant
0c9da8c400
fix: keep dismissed task results accessible
2026-08-03 02:48:34 -05:00
joshavant
2b79de486b
test: isolate image tool from delivery queue runtime
2026-08-03 02:48:34 -05:00
joshavant
649d7d99f1
fix: route task publication through runtime facade
2026-08-03 02:48:34 -05:00
joshavant
7b25128a22
test: classify task recovery CLI mutations
2026-08-03 02:48:34 -05:00
joshavant
75021a76b6
test: align announce loop guard with retry window
2026-08-03 02:48:34 -05:00
joshavant
b5eb1a09db
fix: break delivery queue storage import cycle
2026-08-03 02:48:34 -05:00
joshavant
7e7e48ac19
test: prove blocked completion recovery after restart
2026-08-03 02:48:34 -05:00
joshavant
1f78c39bd8
fix: adapt completion delivery to current main
2026-08-03 02:48:34 -05:00
joshavant
35cc9b7c9b
fix: satisfy completion delivery changed gates
2026-08-03 02:48:34 -05:00
joshavant
c5d275f8d6
refactor: internalize completion delivery seams
2026-08-03 02:48:34 -05:00
joshavant
544ac96bf7
test: type retained completion fixture
2026-08-03 02:48:34 -05:00
joshavant
6ca16f7f3d
fix: redrive retained text completions
2026-08-03 02:48:34 -05:00
joshavant
d9393bd3cb
fix: make subagent completion delivery durable
2026-08-03 02:48:34 -05:00
Peter Steinberger
51483c5a42
test(gateway): consolidate worker environment fixtures ( #118565 )
2026-08-03 00:46:43 -07:00
Peter Steinberger
c49b68328e
test(android): consolidate Wear bridge fixtures ( #118559 )
2026-08-03 00:42:43 -07:00
saegist
59b97653de
fix: preserve agent timeout after queueing ( #117995 )
...
* fix: preserve full agent execution timeout after queueing
* fix: keep expired queue deadlines terminal
2026-08-03 00:41:22 -07:00
Peter Steinberger
e812630f80
fix(synology-chat): reject failed webhook response envelopes ( #118558 )
...
Co-authored-by: Peter Steinberger <steipete@macos.shared >
2026-08-03 00:36:18 -07:00