Skip to content

Cherry-pick: Gateway fixes and improvements (1/2) (50 commits) #1869

@alexey-pelykh

Description

@alexey-pelykh

Cherry-pick from upstream — Gateway fixes and improvements (batch 1/2)

Source: openclaw/openclaw main branch
Scan session: 2026-03-24 (rescan after cursor reset)
Commits: 50 (37 clean, 13 partial)

Commits

# Hash Subject Author Files Tier
1 100d9a7a23 refactor: share boundary open and gateway test helpers Peter Steinberger 11 PARTIAL
2 1b234b910b Gateway: defer full channel plugins until after listen Gustavo Madeira Santana 5 PARTIAL
3 274af0486a perf: trim more vitest thread pins Peter Steinberger 2 PARTIAL
4 31ee442d3f refactor(gateway): share interface discovery helpers Peter Steinberger 9 PARTIAL
5 3e2b3bd2c5 Fix Control UI operator.read scope handling (openclaw#53110) Val Alexander 16 PARTIAL
6 4523260dda test: share gateway route auth helpers Peter Steinberger 2 PARTIAL
7 8de94abfbc refactor: share chat abort test helpers Peter Steinberger 3 PARTIAL
8 96ed010a37 Gateway: gate deferred channel startup behind opt-in Gustavo Madeira Santana 6 PARTIAL
9 d2a1b24b83 test: honor env auth in gateway live probes Peter Steinberger 3 PARTIAL
10 d352be8e99 Gateway tests: centralize mock responses provider setup Gustavo Madeira Santana 2 PARTIAL
11 d5dc6b6573 fix(gateway): require auth for canvas routes Vincent Koc 2 PARTIAL
12 e25fa446e8 test: refine gateway auth helper coverage Peter Steinberger 2 PARTIAL
13 ee1d4eb29d test: align chat abort helpers with gateway handler types Peter Steinberger 2 PARTIAL
14 01e4845f6d refactor: extract websocket handshake auth helpers Peter Steinberger 3 PICK
15 0229246f3b test: share wake failure assertions Peter Steinberger 1 PICK
16 04eb17bfab Tests: clean up trusted proxy pairing seed Vincent Koc 1 PICK
17 118abfbdb7 test: simplify trusted proxy coverage Peter Steinberger 1 PICK
18 13894ec5aa Gateway tests: share ordered client teardown helper Gustavo Madeira Santana 2 PICK
19 1886fe5fd9 test: share gateway chat history setup Peter Steinberger 1 PICK
20 198c2482ee refactor: share gateway session store migration Peter Steinberger 6 PICK
21 1d986f1c01 refactor(gateway): move request client ip resolution to net Peter Steinberger 3 PICK
22 1f85c9af68 test: simplify runtime config coverage Peter Steinberger 1 PICK
23 22528af34d test(ci): trim gateway plugin harness churn Vincent Koc 1 PICK
24 268e036172 refactor(test): share hook request handler fixtures Peter Steinberger 2 PICK
25 26e0a3ee9a fix(gateway): skip Control UI pairing when auth.mode=none (closes openclaw#42931) (openclaw#47148) Andrew Demczuk 3 PICK
26 29b9e21b7b test: simplify auth rate limit coverage Peter Steinberger 1 PICK
27 29fec8bb9f fix(gateway): harden health monitor account gating (openclaw#46749) Tak Hoffman 2 PICK
28 2f58647033 refactor: share plugin route auth test harness Peter Steinberger 1 PICK
29 3066607037 fix(session): preserve lastAccountId and lastThreadId on session reset Jealous 1 PICK
30 31c8bb9167 refactor: share agent wait dedupe test entries Peter Steinberger 1 PICK
31 320de5ecdd test: share startup auth token fixtures Peter Steinberger 1 PICK
32 36f394c299 fix(gateway): increase WS handshake timeout from 3s to 10s (openclaw#49262) fuller-stack-dev 3 PICK
33 383c61e305 test: stabilize gateway thread harness Peter Steinberger 1 PICK
34 389de66b25 refactor: share browser auth test helpers Peter Steinberger 1 PICK
35 3faaf8984f fix(gateway): guard interface discovery failures Peter Steinberger 7 PICK
36 42f9737e59 refactor: share gateway chat text normalization Peter Steinberger 1 PICK
37 431463dec2 test: simplify config patch validation coverage Peter Steinberger 1 PICK
38 43838b1b14 refactor(device): share missing-scope helper Peter Steinberger 4 PICK
39 445ff0242e refactor(gateway): cache hook proxy config in runtime state Peter Steinberger 5 PICK
40 4580d585ff Gateway: resolve fallback plugin context lazily scoootscooob 3 PICK
41 4ab016a9bd fix: preserve loopback gateway scopes for local auth Peter Steinberger 5 PICK
42 4ac355babb feat(gateway): add talk speak rpc Ayaan Zaidi 8 PICK
43 4aec20d365 test: tighten gateway helper coverage Peter Steinberger 4 PICK
44 4da617e178 fix(gateway): honor trusted proxy hook auth rate limits Peter Steinberger 5 PICK
45 50f6a2f136 fix(gateway): require admin for agent session reset Vincent Koc 3 PICK
46 550deb8c18 fix: sweep stale chatRunState buffers for stuck runs Karan Uppal 4 PICK
47 57f1cf66ad fix(gateway): skip seq-gap broadcast for stale post-lifecycle events (openclaw#43751) caesargattuso 5 PICK
48 5acf6cae8e fix: stop main-session UI replies inheriting channel routes Ayaan Zaidi 2 PICK
49 5c73ed62d5 fix(sessions): create transcript file on chat.inject when missing (openclaw#36645) 2233admin 1 PICK
50 5eaa14687f test: share channel health helpers Peter Steinberger 2 PICK

Execution

Pick up with: /pick-from-openclaw execute issue #N

Recommended strategy: staging branch

Note: 13 PARTIAL commits — some files may need discarding (files not on fork).

Metadata

Metadata

Assignees

No one assigned

    Labels

    cherry-pickCherry-pick from upstream

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions