79 Commits

Author SHA1 Message Date
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
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
Vincent Koc
2de0113608 test(update): cover authenticated restart updates 2026-05-04 21:58:47 -07: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
864b1be1b3 fix: repair release validation checks 2026-05-04 23:39:37 +01: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
a3f6f24b79 ci: gate slack live qa credentials 2026-05-04 12:13:43 -07: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
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
Peter Steinberger
73be4ea901 ci: fix full release validation gates 2026-05-03 13:01:14 +01:00
Peter Steinberger
5f4fd05074 ci: speed up full release validation 2026-05-03 12:24:24 +01:00
Vincent Koc
7be0d6e76d fix(ci): pass upgrade survivor matrix to package planning 2026-05-02 16:33:57 -07:00
Peter Steinberger
4b4dfe429d ci: expand release upgrade baselines 2026-05-02 19:46:00 +01:00
Peter Steinberger
93ffc80e9e ci: use gpt-5.4 for codex cli live smoke 2026-05-02 19:02:35 +01:00
Peter Steinberger
bb294bcd20 feat: support alpha releases 2026-05-02 18:29:13 +01:00
Peter Steinberger
9d5a0d4094 test: support legacy plugin cleanup package layout 2026-05-02 15:36:01 +01:00
Peter Steinberger
b65946b044 ci: keep release package metadata 2026-05-02 09:27:04 +01:00
Peter Steinberger
66d8fcea99 fix: allow pinned release ci refs 2026-05-02 05:29:21 +01:00
Peter Steinberger
3ce8746b27 ci: pin full release validation children 2026-05-02 05:22:07 +01:00
Peter Steinberger
0cd12d17d4 fix(release): align package acceptance with candidate source 2026-05-02 01:56:48 +01:00
Peter Steinberger
683549b17f fix: tolerate update migration pre-doctor cleanup 2026-05-02 00:44:30 +01:00
Peter Steinberger
682e05532d test: add update migration package gate 2026-05-02 00:34:33 +01:00
Peter Steinberger
e38fcb254b test: strengthen release workflow contract coverage 2026-05-02 00:14:50 +01:00
Peter Steinberger
0c23584c2c ci: run Telegram package E2E in full release validation 2026-05-02 00:05:33 +01:00
Peter Steinberger
bcd6499abd test: harden plugin update validation 2026-05-01 23:33:05 +01:00
Peter Steinberger
ed8f50f240 refactor: simplify plugin dependency handling
Simplify plugin installation and runtime loading around package-manager-owned dependencies, with Jiti reserved for local/TS fallback paths.

Also scans npm plugin install roots so hoisted transitive dependencies are covered by dependency denylist and node_modules symlink checks.
2026-05-01 21:32:22 +01:00
Vincent Koc
dffc295a74 test(e2e): add upgrade survivor scenario probes 2026-05-01 01:18:11 -07:00
Vincent Koc
2500b5d4ec test(e2e): expand published upgrade survivor baselines 2026-05-01 01:18:11 -07:00
joshavant
8093ae6029 test: validate published upgrade survivor baseline 2026-04-30 22:17:33 -05:00
Josh Avant
ce833acbdb test: strengthen published upgrade survivor lane (#75361)
* test: integrate upgrade survivor baseline controls

* test: gate published upgrade survivor path

* test: preserve upgrade survivor fixture contract

* test: keep upgrade survivor temp state off overlay
2026-04-30 21:50:36 -05:00
Peter Steinberger
206b5f78a2 ci: tighten full release validation 2026-05-01 03:19:49 +01:00
Peter Steinberger
7beebc9afc test: add upgrade survivor package lane 2026-04-30 19:06:33 +01:00
clawsweeper[bot]
27fafa4754 fix: Found two release-validation regressions in the new focused live- (#74562)
Co-authored-by: openclaw-clawsweeper[bot] <280122609+openclaw-clawsweeper[bot]@users.noreply.github.com>
2026-04-29 14:08:45 -07:00
clawsweeper[bot]
fbe41fbdfc fix(ci): Found one low-severity diagnostic bug in the new Full Release Val (#74513)
Co-authored-by: openclaw-clawsweeper[bot] <280122609+openclaw-clawsweeper[bot]@users.noreply.github.com>
2026-04-29 14:08:07 -07:00
Peter Steinberger
dac7237494 ci: shard release validation hotspots 2026-04-29 20:40:42 +01:00
Peter Steinberger
57e4994caf ci: speed up release validation 2026-04-29 19:55:37 +01:00
Peter Steinberger
9f21335462 ci: reduce release runner queue pressure 2026-04-29 17:45:53 +01:00
Peter Steinberger
7471c2116f ci: use smaller runners for native live shards 2026-04-29 17:16:26 +01:00
Peter Steinberger
86f473d8b9 ci: isolate moonshot live shard 2026-04-29 17:03:48 +01:00
Peter Steinberger
334f4624e0 ci: avoid blacksmith for release setup jobs 2026-04-29 16:55:08 +01:00
Peter Steinberger
dc5a85d606 test(ci): align package artifact reuse assertion 2026-04-29 16:15:13 +01:00
Peter Steinberger
7a69069bfc ci: retry release live smokes faster 2026-04-29 13:31:29 +01:00
Peter Steinberger
49a6bfe601 ci: keep codex cli live smoke on fast tier 2026-04-29 13:01:44 +01:00
Peter Steinberger
1446069707 ci: speed up release live smoke retries 2026-04-29 12:33:52 +01:00
Peter Steinberger
1dac6ac4c6 ci: retry transient live provider flakes 2026-04-29 11:44:42 +01:00
Peter Steinberger
6cea276976 ci: shard release docker plugin validation 2026-04-29 11:33:24 +01:00
Peter Steinberger
f3f614fae6 test: follow docker e2e script refactor 2026-04-29 08:56:23 +01:00
Peter Steinberger
3a6f7d8db9 ci(test): split command shards and harden release checks 2026-04-29 06:20:38 +01:00
Peter Steinberger
3dc6e408b9 ci(release): isolate channel live qa from provider latency 2026-04-29 04:22:01 +01:00