Tak Hoffman
d65d1b166f
fix(discord): normalize tagged reasoning in user-visible replies
2026-03-06 18:31:31 -06:00
Vincent Koc
5320ee7731
fix(venice): harden discovery limits and tool support ( #38306 )
...
* Config: add supportsTools compat flag
* Agents: add model tool support helper
* Venice: sync discovery and fallback metadata
* Agents: skip tools for unsupported models
* Changelog: note Venice provider hardening
* Update CHANGELOG.md
* Venice: cap degraded discovery metadata
* Apply suggestion from @greptile-apps[bot]
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
* Venice: tolerate partial discovery capabilities
* Venice: tolerate missing discovery specs
---------
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-03-06 19:07:11 -05:00
SP
942c53e7f0
fix(agents): prevent totalTokens crash when assistant usage is missing ( #34977 )
...
Merged via squash.
Prepared head SHA: 1c14094f3f85f2c87596df2d67fd0ca6af4e9084
Co-authored-by: sp-hk2ldn <8068616+sp-hk2ldn@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-03-06 15:59:16 -08:00
Marcus Widing
48b3c4a043
fix(auth): treat unconfigured-owner sessions as owner for ownerOnly tools ( #26331 )
...
Merged via squash.
Prepared head SHA: 1fbe1c765102c223b4e8d6f8e831db54c975430d
Co-authored-by: widingmarcus-cyber <245375637+widingmarcus-cyber@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-03-06 15:37:07 -08:00
Drew Wagner
ae96a81916
fix: strip skill-injected env vars from ACP harness spawn env ( #36280 ) ( #36316 )
...
* fix: strip skill-injected env vars from ACP harness spawn env
Skill apiKey entries (e.g., openai-image-gen with primaryEnv=OPENAI_API_KEY)
are set on process.env during agent runs and only reverted after the run
completes. ACP harnesses like Codex CLI inherit these vars, causing them
to silently use API billing instead of their own auth (e.g., OAuth).
The fix tracks which env vars are actively injected by skill overrides in
a module-level Set (activeSkillEnvKeys) and strips them in
resolveAcpClientSpawnEnv() before spawning ACP child processes.
Fixes #36280
* ACP: type spawn env for stripped keys
* Skills: cover active env key lifecycle
* Changelog: note ACP skill env isolation
* ACP: preserve shell marker after env stripping
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-03-06 18:18:13 -05:00
Efe Büken
03b9abab84
feat(compaction): make post-compaction context sections configurable ( #34556 )
...
Merged via squash.
Prepared head SHA: 491bb28544b2e0d3563dd1c78593ed2d829d65f6
Co-authored-by: efe-arv <259833796+efe-arv@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-03-06 14:57:15 -08:00
Vincent Koc
455430a6f8
Dead code: remove unused helper modules ( #38318 )
...
* Dead code: remove unused provider runtime policy helper
* Dead code: remove unused shared env writer
* Dead code: remove unused auth store path collector
2026-03-06 17:53:02 -05:00
Vincent Koc
a190220967
Tests: serialize low-memory test runner lanes
2026-03-06 17:45:44 -05:00
Altay
6e962d8b9e
fix(agents): handle overloaded failover separately ( #38301 )
...
* fix(agents): skip auth-profile failure on overload
* fix(agents): note overload auth-profile fallback fix
* fix(agents): classify overloaded failures separately
* fix(agents): back off before overload failover
* fix(agents): tighten overload probe and backoff state
* fix(agents): persist overloaded cooldown across runs
* fix(agents): tighten overloaded status handling
* test(agents): add overload regression coverage
* fix(agents): restore runner imports after rebase
* test(agents): add overload fallback integration coverage
* fix(agents): harden overloaded failover abort handling
* test(agents): tighten overload classifier coverage
* test(agents): cover all-overloaded fallback exhaustion
* fix(cron): retry overloaded fallback summaries
* fix(cron): treat HTTP 529 as overloaded retry
2026-03-07 01:42:11 +03:00
Vincent Koc
110ca23bab
Feishu: update media timeout tests
2026-03-06 17:34:41 -05:00
Wei Zhou
e601bf2d8e
fix(pi-embedded-runner): propagate sender identity to fix Feishu doc create auto-grant ( #32915 )
...
Merged via squash.
Prepared head SHA: efb229307559ad37062b454da444567f5dca8a96
Co-authored-by: cszhouwei <1811726+cszhouwei@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-03-06 14:31:15 -08:00
Shadow
91494b2596
fix: repair auto-response workflow YAML
2026-03-06 16:24:50 -06:00
Shadow
c301c5d083
fix: add no-ci-pr auto-response label
2026-03-06 15:53:59 -06:00
Shadow
864a1ecae7
docs: add changelog entry for Feishu timeouts ( #38356 )
2026-03-06 15:53:10 -06:00
Anton Eicher
20db7afd5f
fix(feishu): remove invalid timeout properties from SDK method calls ( #38267 )
...
The `timeout` property is not part of the Lark SDK method signatures,
causing TS2353 errors. The client-level `httpTimeoutMs` already applies
the timeout to all requests.
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-06 15:50:34 -06:00
AngryBird
7ce79c8972
docs: fix broken dashboard image on i18n pages ( #38031 )
...
The dashboard screenshot uses a relative path `src="whatsapp-openclaw.jpg"`
which resolves correctly on the English root page but produces 404 on
zh-CN and ja-JP pages because Mintlify prepends the language subdirectory
to the CDN path.
Change to absolute path `/whatsapp-openclaw.jpg` in all three index files,
consistent with other images on the same page that already use absolute
paths (e.g. `/assets/openclaw-logo-text-dark.png`).
2026-03-07 00:22:19 +03:00
Vincent Koc
ab5fcfcc01
feat(gateway): add channel-backed readiness probes ( #38285 )
...
* Changelog: add channel-backed readiness probe entry
* Gateway: add channel-backed readiness probes
* Docs: describe readiness probe behavior
* Gateway: add readiness probe regression tests
* Changelog: dedupe gateway probe entries
* Docs: fix readiness startup grace description
* Changelog: remove stale readiness entry
* Gateway: cover readiness hardening
* Gateway: harden readiness probes
2026-03-06 15:15:23 -05:00
Vincent Koc
b17baca871
CI: enable report-only Knip deadcode job
2026-03-06 15:15:16 -05:00
Vincent Koc
b70d3c4af3
Tooling: wire deadcode scripts to Knip
2026-03-06 15:15:16 -05:00
Vincent Koc
768736dc19
Tooling: add Knip workspace config
2026-03-06 15:15:16 -05:00
Vincent Koc
9c55299a82
CI: skip detect-secrets on main temporarily
2026-03-06 15:00:46 -05:00
Vincent Koc
82eebc905d
Install Smoke: fetch docs base on demand
2026-03-06 14:45:37 -05:00
Vincent Koc
9c464c274c
CI: fetch base history on demand
2026-03-06 14:45:34 -05:00
Vincent Koc
e9919ead49
CI: add base-commit fetch helper
2026-03-06 14:45:30 -05:00
Vincent Koc
042b2c867d
Docs: clarify main secret scan behavior
2026-03-06 14:41:23 -05:00
Vincent Koc
66112980aa
CI: keep full secret scans on main
2026-03-06 14:41:20 -05:00
Vincent Koc
b529b7c6b7
Docs: update secret scan reproduction steps
2026-03-06 14:34:46 -05:00
Vincent Koc
ec3df0dd8f
CI: scope secret scans to changed files
2026-03-06 14:34:46 -05:00
Vincent Koc
084dfd2ecc
Media: reject spoofed input_image MIME payloads ( #38289 )
...
* Media: reject spoofed input image MIME types
* Media: cover spoofed input image MIME regressions
* Changelog: note input image MIME hardening
2026-03-06 14:34:28 -05:00
Vincent Koc
38f46e80b0
chore: code/dead tests cleanup ( #38286 )
...
* Discord: assert bot-self filter queue guard
* Tests: remove dead gateway SIGTERM placeholder
2026-03-06 14:27:02 -05:00
Vincent Koc
5e05a9cb79
Install Smoke: cache docker smoke builds
2026-03-06 14:23:04 -05:00
Vincent Koc
60d20f9daf
Install Smoke: allow reusing prebuilt test images
2026-03-06 14:23:00 -05:00
Vincent Koc
afdbc472a4
Install Smoke: shallow docs-scope checkout
2026-03-06 14:15:15 -05:00
Vincent Koc
067ec4f0f9
CI: shallow scope checkouts
2026-03-06 14:15:15 -05:00
Kesku
3d7bc5958d
feat(onboarding): add web search to onboarding flow ( #34009 )
...
* add web search to onboarding flow
* remove post onboarding step (now redundant)
* post-onboarding nudge if no web search set up
* address comments
* fix test mocking
* add enabled: false assertion to the no-key test
* --skip-search cli flag
* use provider that a user has a key for
* add assertions, replace the duplicated switch blocks
* test for quickstart fast-path with existing config key
* address comments
* cover quickstart falls through to key test
* bring back key source
* normalize secret inputs instead of direct string trimming
* preserve enabled: false if it's already set
* handle missing API keys in flow
* doc updates
* hasExistingKey to detect both plaintext strings and SecretRef objects
* preserve enabled state only on the "keep current" paths
* add test for preserving
* better gate flows
* guard against invalid provider values in config
* Update src/commands/configure.wizard.ts
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
* format fix
* only mentions env var when it's actually available
* search apiKey fields now typed as SecretInput
* if no provider check if any search provider key is detectable
* handle both kimi keys
* remove .filter(Boolean)
* do not disable web_search after user enables it
* update resolveSearchProvider
* fix(onboarding): skip search key prompt in ref mode
* fix: add onboarding web search step (#34009 ) (thanks @kesku)
---------
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Co-authored-by: Shadow <hi@shadowing.dev>
2026-03-06 13:09:00 -06:00
Shadow
9a1a63a667
chore: disable contributor labels
2026-03-06 12:37:14 -06:00
Shadow
8f834ff87d
chore: update X handle
2026-03-06 12:29:44 -06:00
Shadow
3e967cbc22
fix: add stale workflow fallback run
2026-03-06 12:15:28 -06:00
Shadow
b782538743
fix: tune stale workflow limits
2026-03-06 12:08:53 -06:00
Vincent Koc
e3390bfb70
CI: add Barnacle r: too-many-prs guard
...
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-03-06 11:37:00 -06:00
Sally O'Malley
57f19f0d5c
container builds: opt-in extension deps via OPENCLAW_EXTENSIONS build arg ( #32223 )
...
* Docker: opt-in extension deps via OPENCLAW_EXTENSIONS build arg
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: sallyom <somalley@redhat.com>
* CI: clarify extension smoke scope
* Tests: allow digest-pinned multi-stage FROM lines
* Changelog: note container extension preinstall option
---------
Signed-off-by: sallyom <somalley@redhat.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-03-06 12:18:42 -05:00
Vincent Koc
d070c44091
fix(gateway): keep probe routes reachable with root-mounted control ui ( #38199 )
...
* fix(gateway): keep probe routes reachable with root-mounted control ui
* Changelog: add root-mounted probe precedence fix entry
* Update CHANGELOG.md
2026-03-06 12:13:20 -05:00
Ayaan Zaidi
4ed5febc38
chore(extensions): sync plugin versions
2026-03-06 22:26:15 +05:30
Ayaan Zaidi
b12733395e
fix(feishu): restore explicit media request timeouts
2026-03-06 22:26:15 +05:30
Vincent Koc
9521e61a22
Gateway: follow up HEIC input image handling ( #38146 )
...
* Media: scope HEIC MIME sniffing
* Media: hermeticize HEIC input tests
* Gateway: fix HEIC image budget accounting
* Gateway: add HEIC image budget regression test
* Changelog: note HEIC follow-up fix
2026-03-06 11:53:59 -05:00
Ayaan Zaidi
f9d86b9256
chore: prep #38056 for landing (thanks @0xlin2023)
2026-03-06 22:19:16 +05:30
Ayaan Zaidi
59895f9c5a
fix: narrow Telegram failed-after retry match
2026-03-06 22:19:16 +05:30
0xlin2023
e6bf69b366
fix: Telegram API requests fail with Network request failed after
...
Fixes #28835
2026-03-06 22:19:16 +05:30
0xlin2023
d000316d19
fix: Windows: openclaw plugins install fails with spawn EINVAL
...
Fixes #7631
2026-03-06 22:19:16 +05:30
Vincent Koc
6a9deb21b8
CI: cover skill and extension tests
2026-03-06 11:21:03 -05:00