Peter Steinberger
cc919db83b
chore(lint): enable async endpoint handler rule
2026-04-18 19:27:43 +01:00
Peter Steinberger
162bf51adb
refactor(google): move thinking policy into plugin
2026-04-18 19:22:27 +01:00
Peter Steinberger
28fe0296c4
fix: support Gemini latest thinking config
2026-04-18 19:22:27 +01:00
Peter Steinberger
00e613f12d
refactor: move provider-specific tests to extensions
2026-04-18 19:17:27 +01:00
Peter Steinberger
7474b52584
fix: respect web search SecretRef credentials
2026-04-18 19:08:50 +01:00
Peter Steinberger
a7e029fde9
refactor: cache provider tool runtimes
2026-04-18 19:05:00 +01:00
lukeboyett
c39314c14a
fix(agents): prefer target agent's bound Matrix account for subagent spawns ( #67508 )
...
Merged via squash.
Prepared head SHA: 9300111038
Co-authored-by: lukeboyett <46942646+lukeboyett@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-04-18 14:02:53 -04:00
Peter Steinberger
3f3bc97cd3
chore(lint): enable warning comments rule
2026-04-18 18:55:18 +01:00
Peter Steinberger
235cdb3f81
refactor: remove ollama core facades
2026-04-18 18:53:04 +01:00
Peter Steinberger
6b525023d4
fix: polish Slack thread starter context ( #68594 )
2026-04-18 18:45:29 +01:00
Peter Steinberger
5cc4426f88
test: align qa multipass pnpm expectation
2026-04-18 18:39:03 +01:00
Peter Steinberger
df525b90f2
chore(lint): enable unnecessary type parameter rule
2026-04-18 18:31:13 +01:00
Peter Steinberger
cd2ef0f3a3
chore(lint): enable low-noise rules
2026-04-18 18:09:18 +01:00
Peter Steinberger
753183e081
build(deps): update workspace dependencies
2026-04-18 18:04:56 +01:00
Peter Steinberger
aad9a833c0
fix: polish Slack thread fetch diagnostics ( #68594 ) (thanks @martingarramon)
2026-04-18 17:55:05 +01:00
Martin Garramon
31e5cd6376
fix(slack): surface silent errors in thread starter/history fetch
...
Fixes #62571 . `resolveSlackThreadStarter` and `resolveSlackThreadHistory`
in `extensions/slack/src/monitor/media.ts` swallowed ALL errors with bare
`catch {}` blocks — auth failures, rate-limit rejections, scope errors,
and network blips all mapped to the same silent `null` / `[]` fallback.
Operators had no way to distinguish "genuinely empty thread" from
"Slack rejected our call".
Replaces both bare catches with `logVerbose` calls that include the
channel, thread ts, and error message. Behavior is preserved — callers
still receive `null` / `[]` — but the failure reason now shows up in
verbose logs, matching the pattern already used elsewhere in the Slack
extension (see `monitor/context.ts:285`, `send.ts:140`, `actions.ts:49`).
Testing:
- New `describe("resolveSlackThreadStarter", ...)` block with 4 tests
(previously uncovered): success path, empty-text skip, Error throw
surfaces via logVerbose with channel/ts/reason, non-Error throw value
surfaces via String(err).
- Existing `resolveSlackThreadHistory` throws test upgraded to assert
the logVerbose call with channel/ts/reason.
- `pnpm vitest run extensions/slack/src/monitor/media.test.ts` → 35
passed (31 previous + 4 new).
2026-04-18 17:55:05 +01:00
Peter Steinberger
e7d33b4870
refactor: finish dynamic import cleanup
2026-04-18 17:54:38 +01:00
Vincent Koc
791dbf4f9d
fix(openrouter): heal stale provider base urls ( #68574 )
...
* fix(openrouter): heal stale provider base urls
* chore(changelog): fix openrouter baseurl entry placement
* fix(arcee): keep catalog config optional
2026-04-18 08:42:51 -07:00
Peter Steinberger
cdaa70facb
refactor: cache repeated lazy imports
2026-04-18 16:32:53 +01:00
Peter Steinberger
464cbbc9f9
perf: trim plugin and skills test overhead
2026-04-18 16:23:00 +01:00
Peter Steinberger
66385670e4
refactor: reduce unnecessary dynamic imports
2026-04-18 16:15:33 +01:00
Peter Steinberger
3f2e73b723
chore(release): bump version to 2026.4.18
2026-04-18 15:46:33 +01:00
@zimeg
25ce5a5822
fix(slack): resolve stream recipient team in shared channels
2026-04-18 04:11:06 -07:00
Ziy
4b5987829d
fix: redact credentials in browser.cdpUrl config paths ( #67679 )
...
Merged via squash.
Prepared head SHA: 77bc2c50ce
Co-authored-by: Ziy1-Tan <49604965+Ziy1-Tan@users.noreply.github.com >
Co-authored-by: hxy91819 <8814856+hxy91819@users.noreply.github.com >
Reviewed-by: @hxy91819
2026-04-18 14:22:58 +08:00
Val Alexander
f45bc09206
[codex] fix(auth): harden OAuth refresh and Codex CLI bootstrap flows ( #68396 )
...
* Harden OAuth refresh and Codex CLI bootstrap flows
- Treat near-expiry OAuth credentials as unusable for bootstrap and refresh
- Add clearer timeout and callback validation handling for OpenAI Codex OAuth
- Tighten file lock retry behavior for stale OAuth refresh contention
* fix(auth): address PR review threads
* fix(auth): adopt fresher imported refresh tokens
* test(auth): align oauth expiry fixtures with refresh margin
* fix(auth): tighten Codex OAuth bootstrap and local fallback
* Keep explicit local auth over CLI bootstrap
- Preserve existing non-OAuth local profiles during external CLI OAuth sync
- Add regression coverage for OpenAI Codex and generic external OAuth overlays
* fix(auth): distinguish oauth lock timeout sources
* fix(auth): reject cross-account external oauth bootstrap
* fix(auth): narrow refresh contention classification
2026-04-18 01:02:29 -05:00
Kagura
c2fb4007c2
Matrix: forward dangerouslyAllowPrivateNetwork config to client SSRF policy ( #68332 )
...
Merged via squash.
Prepared head SHA: d8733928eb
Co-authored-by: kagura-agent <268167063+kagura-agent@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-04-18 00:50:50 -04:00
Ayaan Zaidi
dc3b10285d
fix(telegram): require authorized abort supersede
2026-04-18 10:14:08 +05:30
Marcus Castro
458a52610a
fix(whatsapp): isolate multi-account inbound state and align shared defaults ( #65700 )
...
* refactor(whatsapp): centralize inbound policy resolution
* fix(whatsapp): scope named-account group session keys
* fix(whatsapp): preserve legacy group activation during scoped-key migration
* fix(whatsapp): wire shared defaults through accounts.default
* fix(whatsapp): align schema, helpers, and monitor behavior
* fix(whatsapp): restore verbose inbound diagnostics
* chore(config): refresh whatsapp changelog and baseline hashes
2026-04-18 01:37:38 -03:00
Rubén Cuevas
996eb9a024
fix: fence Telegram stale reply delivery after abort ( #68100 ) (thanks @rubencu)
...
* fix(telegram): fence stale reply delivery after abort
* refactor(telegram): narrow abort fence scope
* fix(telegram): ignore stale reply finalization after abort
* fix(telegram): close abort supersession races
* fix(telegram): release abort fences on setup errors
* fix(telegram): discard superseded draft cleanup
* refactor(telegram): distill abort fence cleanup
* fix: fence Telegram stale reply delivery after abort (#68100 ) (thanks @rubencu)
---------
Co-authored-by: Ayaan Zaidi <hi@obviy.us >
2026-04-18 10:02:38 +05:30
Gustavo Madeira Santana
a50ec27d3b
Tests: speed up QA lab startup
2026-04-17 22:19:17 -04:00
Onur
361750775d
CI: stabilize live release lanes ( #67838 )
...
* CI: stabilize live release lanes
* CI: widen codex live exclusions
* Gateway: stop live config/auth lazy re-imports
* CI: mount writable live Docker homes
* Live: tighten retry and provider filter overrides
* CI: use API-key auth for codex live lanes
* CI: fix remaining live lanes
* CI: stop forwarding live OpenAI base URLs
* Gateway: fix live startup loader regression
* CI: stop expanding OpenAI keys in live Docker lanes
* CI: stop expanding installer secrets in Docker
* CI: tighten live secret boundaries
* Gateway: pin Codex harness base URL
* CI: fix reusable workflow runner label
* CI: avoid template expansion in live ref guard
* CI: tighten live trust gate
* Gateway: ignore empty Codex harness base URL
* CI: stabilize remaining live lanes
* CI: harden live retries and canvas auth test
* CI: extend cron live probe budget
* CI: keep codex harness lane on api-key auth
* CI: stage live Docker OpenAI auth via env files
* CI: bootstrap codex login for Docker API-key lanes
* CI: accept hosted-runner codex fallback responses
* CI: accept additional codex sandbox fallback text
* CI: accept hosted-runner live fallback variants
* CI: accept codex current-model fallback
* CI: broaden codex sandbox model fallbacks
* CI: cover extra codex sandbox wording
* CI: extend cli backend cron retry budget
* CI: match codex models fallbacks by predicate
* CI: accept configured-models live fallback
* CI: relax OpenAI websocket warmup timeout
* CI: accept extra codex model fallback wording
* CI: generalize codex model fallback matching
* CI: retry cron verify cancellation wording
* CI: accept interactive codex model entrypoint fallback
* Agents: stabilize Claude bundle skill command test
* CI: prestage live Docker auth homes
* Tests: accept current Codex models wording
* CI: stabilize remaining live lanes
* Tests: widen CLI backend live timeout
* Tests: accept current Codex model summary wording
* CI: disable codex-cli image probe in Docker lane
* Tests: respect CLI override for Codex Docker login
* Tests: accept current Codex session models header
* CI: stabilize remaining live validation lanes
* CI: preserve Gemini ACP coverage in auth fallback
* CI: fix final live validation blockers
* CI: restore Codex auth for CLI backend lane
* CI: drop local Codex config in live Docker lane
* Tests: tolerate Codex cron and model reply drift
* Tests: accept current Codex live replies
* Tests: retry more Codex cron retry wording
* Tests: accept environment-cancelled Codex cron retries
* Tests: retry blank Codex cron probe replies
* Tests: broaden Codex cron retry wording
* Tests: require explicit Codex cron retry replies
* Tests: accept current Codex models environment wording
* CI: restore trusted Codex config in live lane
* CI: bypass nested Codex sandbox in docker
* CI: instrument live codex cron lane
* CI: forward live CLI resume args
* Tests: accept interactive Codex model selection
* Tests: bound websocket warm-up live lane
* CI: close live lane review gaps
* Tests: lazy-load gateway live server
* Tests: avoid gateway live loader regression
* CI: scope reusable workflow secrets
* Tests: tighten codex models live assertion
* Tests: normalize OpenAI speech live text
2026-04-18 03:18:12 +02:00
Peter Steinberger
a22b789547
test: stabilize telegram status lane test
2026-04-18 02:13:11 +01:00
Peter Steinberger
36068281fb
test: stabilize whatsapp pdf media test
2026-04-18 02:01:07 +01:00
Gustavo Madeira Santana
0e4ddf7b38
Tests: avoid bundled Discord runtime lookup
2026-04-17 20:57:27 -04:00
Peter Steinberger
c8d722d093
test: fix rebased local gates
2026-04-18 01:49:54 +01:00
Peter Steinberger
27f34f0491
test: merge provider contract wrappers
2026-04-18 01:36:33 +01:00
Peter Steinberger
3abb5fd291
test: slim channel contract hotspots
2026-04-18 01:36:33 +01:00
Peter Steinberger
569247cff8
test: speed channel contract hotspots
2026-04-18 01:36:15 +01:00
Peter Steinberger
576ce7c656
perf: slim zalo group access facade
2026-04-18 01:36:15 +01:00
Peter Steinberger
4143da0ffa
test: use provider contract artifacts
2026-04-18 01:36:15 +01:00
Peter Steinberger
ed65e8017d
test: slim channel directory contracts
2026-04-18 01:36:15 +01:00
Peter Steinberger
7db9a53254
test: slim contract suite imports
2026-04-18 01:36:15 +01:00
Peter Steinberger
e493d1d2fd
test: keep twitch entry test lazy
2026-04-18 01:32:34 +01:00
Gustavo Madeira Santana
5d8dceb37f
QA Matrix: add catchup incremental scenario
2026-04-17 19:16:58 -04:00
Gustavo Madeira Santana
c54464a887
test: keep searxng web search contract light
...
Lazy-load the SearXNG web-search client from provider execution and reuse
the shared contract helper for credential and selection wiring. Keep the
shared fast-path contract focused on the single bundled manifest it checks.
2026-04-17 18:15:59 -04:00
Gustavo Madeira Santana
41ee813a45
test: lazy-load minimax web search runtime
...
Keep the Minimax web-search provider artifact metadata-only and move
execution, cache, endpoint, and test helpers behind a lazy runtime import.
This keeps contract metadata tests from importing the full runtime path.
2026-04-17 18:08:23 -04:00
Gustavo Madeira Santana
b1c032245c
test: lazy-load exa web search runtime
...
Keep Exa provider registration metadata-light and move request,
cache, validation, and test helpers behind a runtime seam.
2026-04-17 18:01:58 -04:00
Gustavo Madeira Santana
cad1d04491
test: keep brave web search metadata light
...
Move Brave test helper exposure out of the provider artifact and
keep schema/config metadata free of runtime shared imports.
2026-04-17 17:54:57 -04:00
Gustavo Madeira Santana
c9dfb19001
test: lazy-load duckduckgo web search runtime
...
Keep DuckDuckGo provider metadata on the contract path and defer
client plus runtime argument helpers until search execution.
2026-04-17 17:49:17 -04:00
Gustavo Madeira Santana
5d6041de81
test: lazy-load moonshot web search runtime
...
Keep Kimi web-search provider metadata light and move setup,
execution, cache, and test helpers behind a runtime seam.
2026-04-17 17:44:32 -04:00