Peter Steinberger
f9f7d6ffb5
fix(google-meet): reuse meet tabs across retries
2026-04-25 03:11:58 +01:00
Peter Steinberger
ba4cd90dbc
fix(voice-call): share webhook runtime across contexts
2026-04-25 03:11:21 +01:00
Peter Steinberger
250d13de53
fix(agents): trust-gate tts transcript suppression
...
Co-authored-by: Neerav Makwana <261249544+neeravmakwana@users.noreply.github.com >
2026-04-25 03:11:17 +01:00
Neerav Makwana
628f0e8055
fix: gate tts output suppression on deliverable media
2026-04-25 03:11:17 +01:00
Neerav Makwana
db8f7478b4
fix: suppress tts transcript tool output
2026-04-25 03:11:17 +01:00
Gustavo Madeira Santana
6abab7555e
test(plugins): align loader channel entry fixture
2026-04-24 22:10:58 -04:00
Peter Steinberger
713807b55d
fix: harden openai auth and reasoning replay
2026-04-25 03:10:24 +01:00
Peter Steinberger
ae5c657367
fix: clean up idle browser tabs
2026-04-25 03:08:24 +01:00
Peter Steinberger
d99d9eda37
fix: honor media SSRF policy for PDF inputs ( #71321 )
2026-04-25 03:08:19 +01:00
Neerav Makwana
f9cb942aa9
fix(music): bound reference image fetches
2026-04-25 03:08:19 +01:00
Neerav Makwana
1bb5a96577
fix(media): cover generation reference media ssrf policy
2026-04-25 03:08:19 +01:00
Neerav Makwana
86556fcd47
fix(media): apply web fetch ssrf policy to media
2026-04-25 03:08:19 +01:00
Gustavo Madeira Santana
a5db42862d
fix(plugins): expose channel CLI metadata in discovery ( #71309 )
...
Merged via squash.
Prepared head SHA: ce6bb35812
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-24 22:06:57 -04:00
Peter Steinberger
7ef4ecf499
refactor(outbound): share reply fanout policy
2026-04-25 03:05:22 +01:00
Peter Steinberger
2f23511ffa
test: accept staged bundled runtime deps proof
2026-04-25 03:05:04 +01:00
Peter Steinberger
a5ab488691
fix(voice-call): pin response model sessions
2026-04-25 03:02:30 +01:00
Mason Huang
5d4931cc3f
CI: trim CodeQL JavaScript scope ( #71347 )
2026-04-25 09:57:12 +08:00
Peter Steinberger
5e640b93da
fix(discord): preserve outbound reply threading
2026-04-25 02:54:37 +01:00
Shakker
6d271762ab
feat: add modelCatalog manifest contract ( #71342 ) (thanks @shakkernerd)
2026-04-25 02:54:32 +01:00
Shakker
1f4dab2c37
fix: tighten model catalog manifest normalization
2026-04-25 02:54:32 +01:00
Shakker
a5d46c4567
fix: require complete model catalog pricing tiers
2026-04-25 02:54:32 +01:00
Shakker
8fa1052838
fix: tighten model catalog manifest validation
2026-04-25 02:54:32 +01:00
Shakker
d39e89e6b0
docs: document model catalog manifest metadata
2026-04-25 02:54:32 +01:00
Shakker
5e715de6c5
test: preserve model catalog manifest metadata
2026-04-25 02:54:32 +01:00
Shakker
61fcbe7dce
feat: add model catalog manifest contract
2026-04-25 02:54:32 +01:00
Gustavo Madeira Santana
fd65caf4b0
chore: tighten changelog unreleased detection
2026-04-24 21:52:00 -04:00
Peter Steinberger
2a0a76f876
fix(browser): extend existing-session manage timeouts
2026-04-25 02:50:36 +01:00
Peter Steinberger
2ec70e6770
fix(browser): recover stale chrome mcp sessions
2026-04-25 02:50:11 +01:00
Luka Dolenc
325e5e921f
fix: preserve thread-bound subagent completion fallback
...
Preserve the requester-agent announce path for thread-bound subagent completions, while falling back to direct thread delivery only when the announce fails or produces no visible output.\n\nThanks @DolencLuka.
2026-04-25 02:49:50 +01:00
Peter Steinberger
5865197ec1
test: relax bundled channel Docker readiness
2026-04-25 02:48:02 +01:00
Peter Steinberger
1eef6df5f5
test(auto-reply): reset inbound dedupe for acp abort
2026-04-25 02:47:52 +01:00
Peter Steinberger
69c258f9dc
test(auto-reply): keep hook runner mock aligned
2026-04-25 02:47:52 +01:00
Peter Steinberger
f70e439699
fix(amazon-bedrock): skip auto memory embeddings without credentials ( #71245 )
...
Co-authored-by: bitloi <raphaelaloi.eth@gmail.com >
2026-04-25 02:47:52 +01:00
pashpashpash
42ec7a868f
Document agent runtimes and the Codex v1 contract ( #71270 )
...
* Document agent runtimes and Codex v1 contract
* Document agent runtimes and Codex v1 contract
* Clarify Codex runtime fallback docs
* Clarify runtime and harness terminology
2026-04-25 10:46:24 +09:00
Peter Steinberger
0970507078
test(auto-reply): allow ACP abort dispatch in regression test
2026-04-25 02:45:07 +01:00
Peter Steinberger
56de930628
fix: honor codex approval decisions ( #71338 ) (thanks @Lucenx9)
2026-04-25 02:44:55 +01:00
Lucenx9
453789914b
fix(codex): respect command approval decisions
2026-04-25 02:44:55 +01:00
Peter Steinberger
d4a9b28d0c
test: add agents delete Docker smoke
2026-04-25 02:43:11 +01:00
Peter Steinberger
32dd1ffc5a
refactor(approvals): unify structured path display
2026-04-25 02:41:24 +01:00
Peter Steinberger
52ea8eadcb
fix(codex): normalize compacted Windows permission paths
2026-04-25 02:40:57 +01:00
Peter Steinberger
e68b2269b9
test(telegram): avoid current marker in model display regression ( #71016 ) (thanks @iskim77)
2026-04-25 02:38:14 +01:00
Peter Steinberger
a9c46d5b1a
test(telegram): cover model picker display names ( #71016 ) (thanks @iskim77)
2026-04-25 02:38:14 +01:00
Atlas Bot
d1386ada5a
fix(telegram): pass modelNames to buildModelsKeyboard in button-click callback
...
When navigating the /models picker via provider button click, the model
list showed raw model IDs (e.g. gemini-3.1-pro-preview) instead of
configured display names (e.g. Gemini 3.1 Pro (Bridge)).
Root cause: the button-click callback handler destructured modelData as
{ byProvider, providers } omitting modelNames, then called
buildModelsKeyboard() without it. buildModelsKeyboard falls back to the
raw model ID via modelNames?.get(...) ?? model when modelNames is absent.
The text-command path (/models <provider>) already passes modelNames
correctly through buildTelegramModelsListChannelData, confirming the fix.
Fix: destructure modelNames from modelData and forward it to
buildModelsKeyboard in the button-click callback handler.
Closes #70560
2026-04-25 02:38:14 +01:00
Val Alexander
ead8be96fd
Add tweakcn custom theme import
...
Adds a browser-local custom tweakcn theme slot while preserving the existing built-in themes.
Includes:
- tweakcn share-link import, validation, persistence, and custom theme rendering
- Custom option in Appearance and Quick Settings
- responsive/config toolbar and chat tool-card polish from follow-up review
- security hardening for bounded fetches, CSS token validation, redirect handling, and fail-closed unreadable payloads
Verification:
- OPENCLAW_LOCAL_CHECK=0 pnpm check:changed
- GitHub CI clean on 6ff13a1b33
2026-04-24 20:36:45 -05:00
Peter Steinberger
835c4e053c
test: stabilize Docker live service lanes
2026-04-25 02:33:10 +01:00
Peter Steinberger
3a7ee209c9
fix: harden browser screenshot timeouts
2026-04-25 02:32:29 +01:00
Peter Steinberger
41f9768cd8
fix: preserve context engine safeguard compaction
2026-04-25 02:30:41 +01:00
Peter Steinberger
a9a308becd
fix: recover restart-aborted main sessions
2026-04-25 02:25:54 +01:00
Peter Steinberger
50d3bd638a
docs(changelog): note codex permission path compaction
2026-04-25 02:24:31 +01:00
Peter Steinberger
f86f8400f5
fix(codex): compact home permission paths
2026-04-25 02:24:00 +01:00