Commit Graph

1886 Commits

Author SHA1 Message Date
pashpashpash
33c42c8d3b chore: add positive proof labels (#78117) 2026-05-06 08:10:17 +09:00
Vincent Koc
a4c860a70c fix(update): avoid lint-blocked dev installs (#77181) 2026-05-05 16:05:35 -07:00
Patrick Erichsen
8aa7b7a4ca Tolerate corrupt plugins during update (#77706)
* fix(update): tolerate corrupt plugin state

* fix(update): preserve corrupt plugin proof state

* fix(update): narrow corrupt plugin warnings

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-05-05 14:18:26 -07:00
Peter Steinberger
01dda73e9b Revert "test: narrow changed-test routing for shared internals"
This reverts commit e28ad6a869.
2026-05-05 21:47:12 +01:00
Vincent Koc
6455ed24cf test: scope unit coverage gate 2026-05-05 13:28:34 -07:00
Peter Steinberger
e28ad6a869 test: narrow changed-test routing for shared internals 2026-05-05 20:12:28 +01:00
Patrick Erichsen
84e8e09725 Add WhatsApp live QA lane (#77704)
* feat(qa): add whatsapp live lane

* ci: add gated whatsapp and discord qa live lanes

* ci: honor qa live env gates in release selection

* test: update qa live workflow gate assertion

* ci: split live QA release gates
2026-05-05 12:09:28 -07:00
Peter Steinberger
35da7d2c99 refactor: remove legacy agent dir resolver 2026-05-05 20:07:49 +01:00
Peter Steinberger
55d1cf87d7 refactor: compute base config schema at runtime 2026-05-05 19:55:36 +01:00
Ayaan Zaidi
77ae06bfaa fix: skip compile cache permission warnings (#76362) (thanks @neeravmakwana) 2026-05-05 21:25:02 +05:30
Peter Steinberger
e6f5f5693d ci: allow Slack Mantis failure evidence without screenshots 2026-05-05 15:38:51 +01:00
Peter Steinberger
6f6b8fc465 fix(release): accept Docker OCI attestations and xAI reasoning defaults 2026-05-05 10:30:48 +01:00
Peter Steinberger
f3d531439b feat: add reusable Mantis evidence publishing 2026-05-05 09:02:04 +01:00
Peter Steinberger
ecbf9f06e9 test: cover GitHub activity helper 2026-05-05 07:48:29 +01:00
clawsweeper[bot]
cd66854b66 feat(cron): add agentId filtering to cron list (#77602)
Summary:
- This PR adds optional `agentId` filtering to `cron.list`, auto-fills it for agent tool calls, exposes `openclaw cron list --agent`, updates generated protocol clients, docs, changelog, tests, and prompt fixtures.
- Reproducibility: yes. The motivating behavior is source-reproducible on current main because cron tool, CLI, ... e list paths do not accept or apply `agentId`; the PR diff adds that path with focused regression coverage.

Automerge notes:
- Ran the ClawSweeper repair loop before final review.
- Included post-review commit in the final squash: chore: regenerate protocol schema after adding agentId to CronListParams
- Included post-review commit in the final squash: feat(cron): add agentId filtering to cron list

Validation:
- ClawSweeper review passed for head 35b692bc97.
- Required merge gates passed before the squash merge.

Prepared head SHA: 35b692bc97
Review: https://github.com/openclaw/openclaw/pull/77602#issuecomment-4375631700

Co-authored-by: zhanggttry <zhanggttry@163.com>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
2026-05-05 06:06:24 +00:00
Vincent Koc
2de0113608 test(update): cover authenticated restart updates 2026-05-04 21:58:47 -07:00
pashpashpash
70f34bf177 Require real behavior proof for external PRs (#77622)
* ci: require real behavior proof for external PRs

* fix: tighten real behavior proof heuristics

* fix: reject test-only real behavior proof labels

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-05-05 05:45:30 +01:00
Vincent Koc
1c3b27718f ci: shard package upgrade survivor baselines 2026-05-04 21:15:12 -07:00
Peter Steinberger
c84b7cbffc ci(release): speed up focused release reruns 2026-05-05 02:28:22 +01:00
Peter Steinberger
2f3a9629d8 test: use latest kitchen sink canary 2026-05-05 01:51:23 +01:00
Vincent Koc
1a4c078399 test(plugins): update kitchen sink prerelease canary version 2026-05-04 17:30:55 -07:00
Kevin Lin
cb9824d6b4 test: add slack onboarding channel smoke (#77575) 2026-05-04 16:51:34 -07:00
Peter Steinberger
864b1be1b3 fix: repair release validation checks 2026-05-04 23:39:37 +01:00
Kevin Lin
592998ae0e fix: clean up orphaned child processes (#77481)
* fix: forward launcher respawn signals

* docs: explain respawn signal exit timer

* fix: centralize launcher respawn supervision

* fix: include respawn helper in duplicate scan

* fix: keep launcher respawn bridge local
2026-05-04 15:28:49 -07:00
Vincent Koc
ac3cd1a0ca Harden Codex harness control surfaces (#77459)
* fix(scripts): find codex protocol source from worktrees

* fix(test): keep codex harness docker caches writable

* fix(test): relax live codex cache mount permissions

* test(codex): add live docker harness debug output

* fix(test): detect numeric ci env in codex docker harness

* fix(codex): skip duplicate agent-command telemetry

* fix(tooling): skip sparse-missing oxlint tsconfig

* fix(tooling): route changed checks through testbox

* fix(qa): keep coverage json source-clean

* fix(test): preflight codex docker auth

* fix(codex): validate bind option values

* fix(codex): parse quoted command arguments

* fix(codex): reject extra control args

* fix(codex): use content for blank bound prompts

* fix(codex): decode local image file urls

* fix(codex): treat local media urls as images

* fix(codex): keep windows media paths local

* fix(codex): reject malformed diagnostics confirmations

* fix(codex): reject malformed resume commands

* fix(codex): reject malformed thread actions

* fix(codex): reject malformed turn controls

* fix(codex): reject malformed model controls

* fix(codex): resolve empty user input prompts

* fix(codex): enforce user input options

* fix(codex): reject ambiguous computer-use actions

* fix(codex): ignore stale bound turn notifications

* test(gateway): close task registries in gateway harness

* test(gateway): route cleanup through task seams

* fix(codex): describe current permission approvals

* fix(codex): disclose command approval amendments

* fix(codex): preserve approval detail under truncation

* fix(codex): propagate dynamic tool failures

* test(codex): align dynamic tool block contract

* fix(codex): reject extra read-only command operands

* fix(codex): escape command readout fields

* fix(codex): escape status probe errors

* fix(codex): narrow formatted thread details

* fix(codex): escape successful status summaries

* fix(codex): escape bound control replies

* fix(codex): escape user input prompts

* fix(codex): escape control failure replies

* fix(codex): escape approval prompt text

* test(codex): narrow escaped reply assertions

* test(codex): complete strict reply fixtures

* test(codex): preserve account fixture literals

* test(codex): align status probe fixtures

* fix(codex): satisfy sanitizer regex lint

* fix(codex): harden command readouts

* fix(codex): harden bound image inputs

* fix(codex): sanitize command failure replies

* test(codex): complete rate limit fixture

* test(tooling): isolate postinstall compile cache fixture

* fix(codex): keep app-server event ownership explicit

---------

Co-authored-by: pashpashpash <nik@vault77.ai>
2026-05-05 07:23:41 +09:00
Josh Lehman
0fc8afeac9 test(package): cover stale source plugin shadows
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-05-04 21:55:08 +01:00
Vincent Koc
112924b113 fix(update): keep plugin install runtime aliases stable 2026-05-04 21:55:08 +01:00
Peter Steinberger
021373a454 ci(release): recover Windows packaged update no-restart timeout 2026-05-04 21:34:24 +01:00
Peter Steinberger
94f8f1914e test(release): match versioned Windows upgrade tarballs
(cherry picked from commit b70dbe32d0)
2026-05-04 20:45:37 +01:00
Peter Steinberger
2e399e6f1a test(release): recover known Windows packaged upgrade timeout
(cherry picked from commit 8f7399e9e9)
2026-05-04 20:45:37 +01:00
Vincent Koc
a3f6f24b79 ci: gate slack live qa credentials 2026-05-04 12:13:43 -07:00
Vincent Koc
2511be5244 test(release): skip restart in package upgrade lane 2026-05-04 11:21:59 -07:00
Vincent Koc
03d04c243b test(acpx): cover Windows extension test paths 2026-05-04 09:20:02 -07:00
Eva
cb38535875 [plugin sdk] Project session extension slots (#75609)
Merged via squash.

Prepared head SHA: d9b670a867
Co-authored-by: 100yenadmin <239388517+100yenadmin@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-05-04 08:04:27 -07:00
Peter Steinberger
14f756c05b test(release): leave Windows updater timeout headroom 2026-05-04 12:58:28 +01:00
Jesse Merhi
d5b0083300 fix: proxy direct APNs HTTP2 sessions (#74905)
Summary:
- This PR routes direct APNs HTTP/2 sends through an APNs allowlisted managed-proxy CONNECT wrapper, adds APNs proxy validation/docs/guardrails, and expands regression and live-test coverage.
- Reproducibility: yes. source-reproducible: current main `sendApnsRequest()` still uses raw `http2.connect(au ... nly covers HTTP/global-agent/Undici hooks. I did not run a live APNs reproduction in this read-only review.

Automerge notes:
- PR branch already contained follow-up commit before automerge: test: guard raw HTTP2 APNs connections
- PR branch already contained follow-up commit before automerge: test: guard raw HTTP2 with OpenGrep
- PR branch already contained follow-up commit before automerge: lint: ban raw HTTP2 imports
- PR branch already contained follow-up commit before automerge: fix: use managed proxy state for APNs
- PR branch already contained follow-up commit before automerge: test: exercise APNs active proxy state
- PR branch already contained follow-up commit before automerge: fix: reject conflicting managed proxy activation

Validation:
- ClawSweeper review passed for head dab7c86a75.
- Required merge gates passed before the squash merge.

Prepared head SHA: dab7c86a75
Review: https://github.com/openclaw/openclaw/pull/74905#issuecomment-4350181159

Co-authored-by: jesse-merhi <79823012+jesse-merhi@users.noreply.github.com>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
2026-05-04 11:04:17 +00:00
Vincent Koc
05d6c62152 fix(release): reject blank plugin runtime entries 2026-05-04 02:18:11 -07:00
Peter Steinberger
b37fba7c07 ci(release): harden clawhub plugin publish 2026-05-04 10:09:55 +01:00
Alex Knight
be41b8cbc7 test: stabilize gateway server shard (#77131) 2026-05-04 18:42:05 +10:00
Vincent Koc
f0537e93fb fix(ci): plan openwebui functional image 2026-05-04 01:10:50 -07:00
Peter Steinberger
585ce38015 fix(telegram): stabilize topic dispatch runtime 2026-05-04 08:25:09 +01:00
Vincent Koc
f29aaa2e04 fix(release): resolve beta smoke workflow run 2026-05-03 23:35:04 -07:00
Val Alexander
21ac476904 fix(telegram): stabilize reply dispatch runtime
Summary:
- Add a stable provider-dispatcher dist entry and legacy alias coverage for stale reply-dispatch chunks.
- Make Telegram reasoning stream previews transient after final delivery and harden visible-send reasoning sanitization.
- Document transient /reasoning stream behavior and credit @BunsDev in the changelog.

Verification:
- pnpm test src/agents/tools/message-tool.test.ts src/infra/tsdown-config.test.ts test/scripts/runtime-postbuild.test.ts extensions/telegram/src/bot-message-dispatch.test.ts src/plugin-sdk/channel-streaming.test.ts src/plugin-sdk/channel-entry-contract.test.ts
- OPENCLAW_VITEST_MAX_WORKERS=1 pnpm test src/channels/plugins/module-loader.test.ts src/plugin-sdk/channel-entry-contract.test.ts
- pnpm exec oxfmt --check --threads=1 <changed files>
- git diff --check
- pnpm build
- GitHub PR checks for b8b7a91834
2026-05-04 01:07:57 -05:00
Peter Steinberger
bc0b54e844 fix: keep gateway shutdown runtime stable across updates 2026-05-04 06:46:45 +01:00
Alex Knight
3f732aee83 fix: session_status 'current' resolves to live run session instead of stale sandbox key (#76708) (#76995)
Summary:
- The PR threads a live `runSessionKey` through embedded tool construction, updates `session_status({sessionKey:"current"})` resolution, and adds unit, Telegram QA, workflow, and changelog coverage for #76708.
- Reproducibility: yes. Source inspection shows current main gives `session_status` only the sandbox/requester ... plus PR follow-up describe a focused Telegram Docker scenario that fails pre-fix and passes with this head.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix: preserve session visibility semantics for runSessionKey (#76708)
- PR branch already contained follow-up commit before automerge: fix: cover Telegram current session status

Validation:
- ClawSweeper review passed for head c3c964ecfd.
- Required merge gates passed before the squash merge.

Prepared head SHA: c3c964ecfd
Review: https://github.com/openclaw/openclaw/pull/76995#issuecomment-4367445187

Co-authored-by: Alex Knight <aknight@atlassian.com>
Co-authored-by: Alex Knight <15041791+amknight@users.noreply.github.com>
2026-05-04 04:04:43 +00:00
Vincent Koc
5ca0aa1d15 fix(plugins): accept stable correction releases 2026-05-03 20:53:23 -07:00
Peter Steinberger
a8b38bb742 test: improve Parallels beta validation 2026-05-04 04:43:24 +01:00
Vincent Koc
bc924889be fix(test): keep Open WebUI live lane image-free 2026-05-03 19:56:16 -07:00
Vincent Koc
0b6db06d7d fix(test): skip Open WebUI in no-live Docker plans 2026-05-03 19:54:15 -07:00
Vincent Koc
857580108d fix(ci): continue Windows upgrade fallback checks 2026-05-03 18:19:15 -07:00