Commit Graph

251 Commits

Author SHA1 Message Date
Haze
efa76b37d3 fix(gateway): fall back to junction when symlink unavailable on Windows
ensureExtensionDepsResolvable called symlinkSync without a type argument
and without path normalization. On Windows without Developer Mode or
admin rights, plain symlinkSync throws EPERM; the failure was silently
swallowed, leaving extension-owned packages unresolvable from shared
dist/ chunks and breaking gateway startup.

Extract the link logic into electron/gateway/fs-link.ts:
- linkDirSafe prefers junction on Windows (works without elevation),
  falls back to a plain dir symlink only if junction creation fails
  (e.g. cross-volume).
- normalizeFsPath centralizes the \\?\ extended-length + UNC prefixing
  that was previously an inline helper in config-sync.ts.

Also drop the now-redundant inline fsPath helper in config-sync.ts and
replace the two bare symlinkSync calls with linkDirSafe.

Co-Authored-By: Claude Opus 4 <noreply@anthropic.com>
2026-04-24 17:11:52 +08:00
Haze
6bacbd964d perf(gateway): shorten gateway.ready fallback timeout from 30s to 5s
The fallback exists as a safety net for the server-side gateway.ready
event. In practice OpenClaw's plugin bootstrap can push the real event
well past 30s (observed: handshake completes, then 30s tick by, then the
fallback fires with no event having arrived). That long tail kept the
stale gating code blocking UI state for the full 30s.

Step 1 moved sessions.list off the gatewayReady gate, so this value now
only matters as a belt-and-braces signal for any future consumer. 5s is
long enough to preserve "event wins when it actually fires on a healthy
boot" while avoiding a multi-second stall whenever the server is slow.

Updated gateway-ready-fallback.test.ts to advance timers around the new
boundary.
2026-04-24 17:04:10 +08:00
Haze
f893f2b21b feat(provider): add DeepSeek provider with configuration and icon support (#907) 2026-04-24 11:41:47 +08:00
paisley
5137e706c9 perf: speed up initial chat, channels, skills, and cron loading (#901) 2026-04-23 18:49:47 +08:00
paisley
1b75fec71c fix(gateway): only sync configured channel plugins and cleanup unconfigured extensions (#898) 2026-04-23 17:30:53 +08:00
Haze
956e943072 feat(model): update Kimi model references from k2.5 to k2.6 across the application (#897) 2026-04-23 14:23:29 +08:00
paisley
285f8202c7 Update workspace agent file (#889) 2026-04-22 13:16:48 +08:00
paisley
2f03aa1fad fix(channels): restore dingtalk multi-account support (#874) 2026-04-19 17:39:13 +08:00
Haze
b884db629e feat(plugin): support enterprise extension (#861) 2026-04-16 17:15:25 +08:00
paisley
2fefbf3aba feat: default browser ssrfPolicy to allow private network access (#860) 2026-04-16 14:57:27 +08:00
Lingxuan Zuo
1f39d1a8a7 Add channel health diagnostics and gateway recovery fixes (#855) 2026-04-15 13:51:02 +08:00
paisley
a20a97ad83 fix feishu plugin conflict (#852) 2026-04-14 17:47:58 +08:00
Haze
30bd8c08f9 feat(gateway): enhance gateway readiness handling and batch sync configuration (#851)
Co-authored-by: paisley <8197966+su8su@users.noreply.github.com>
2026-04-14 15:42:37 +08:00
Tao Yiping
758a8f8c94 support reasoning agentid by accountId or session for cron (#847) 2026-04-14 14:52:47 +08:00
paisley
54ec784545 fix feishu conflict (#850) 2026-04-14 13:31:25 +08:00
Octopus
5482acd43d fix(providers): add Moonshot (Global) provider for api.moonshot.ai endpoint (#839)
Co-authored-by: octo-patch <octo-patch@github.com>
2026-04-13 18:17:29 +08:00
Lingxuan Zuo
b2c478d554 Fix multi-account channel binding drift for #836 (#841) 2026-04-13 15:30:13 +08:00
Tao Yiping
87ab12849c feat(cron): allow users to associate cron jobs with specific agents (#835) 2026-04-12 11:51:29 +08:00
paisley
467fcf7e92 Upgrade openclaw to 4.9 (#804) 2026-04-09 18:51:06 +08:00
Haze
d03902dd4d fix(feishu): feishu connector name validate (#797)
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Haze <hazeone@users.noreply.github.com>
2026-04-08 19:16:15 +08:00
Haze
c1e165d48d fix(channel): support channel names that include numbers; legacy test names containing numbers may still appear (#796)
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Haze <hazeone@users.noreply.github.com>
2026-04-08 18:38:59 +08:00
phpoh
3b629e8db4 Fix: remove duplicate IPC channel and extract error code sets (#780) 2026-04-08 15:16:01 +08:00
Haze
32d14b8cf9 fix(gateway): handle Windows OpenClaw process exit error during in-process restarts (#794)
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Haze <hazeone@users.noreply.github.com>
2026-04-08 12:06:12 +08:00
paisley
3021ad5089 feat(cron): enable WeChat as a supported delivery channel (#789) 2026-04-07 18:56:54 +08:00
Haze
97d29ab23c opt(chat): Enhance error handling for chat.send timeouts and improve logging in gateway RPC calls (#788) 2026-04-07 17:07:57 +08:00
paisley
c3a735a49c fix: resolve Windows gateway reconnect race condition and translate comments (#787) 2026-04-07 16:58:18 +08:00
paisley
d8750e135b Feat/perf dashboard (#770) 2026-04-07 11:04:57 +08:00
paisley
413244522e fix(providers): resolve provider re-seeding loop on deletion (#772) 2026-04-07 10:12:16 +08:00
paisley
0cdd12cd40 fix: resolve extension dependency missing in shared chunks (#765) (#771) 2026-04-07 10:04:03 +08:00
Lingxuan Zuo
c866205eac Add execution graph to chat history (#776) 2026-04-07 01:37:06 +08:00
Lingxuan Zuo
91c735c9f4 fix custom provider API key validation fallback (#773)
Co-authored-by: zuolingxuan <zuolingxuan@bytedance.com>
2026-04-06 14:35:09 +08:00
paisley
83f67e1ed3 fix(gateway): make heartbeat observability-only to prevent false cascade restarts (#762) 2026-04-03 14:50:06 +08:00
Felix
1d2cbf8f26 Revert "fix(gateway): terminate owned process before retry to prevent port conflict on Windows" (#755) 2026-04-02 17:49:16 +08:00
Felix
42d6cec1e0 Revert "fix(gateway): refine process termination and wait logic on retry" (#754) 2026-04-02 17:45:07 +08:00
paisley
28508bc643 fix(gateway): refine process termination and wait logic on retry (#750) 2026-04-02 16:45:23 +08:00
写了吗?
560ae95611 fix(gateway): terminate owned process before retry to prevent port conflict on Windows (#724) 2026-04-02 16:11:03 +08:00
paisley
b9fd5f6a78 fix: properly sync Ollama provider config to gateway runtime (#747) 2026-04-02 14:42:57 +08:00
Octopus
fa2131ab13 fix: sync Ollama provider config to gateway runtime (fixes #448) (#745) 2026-04-02 13:48:11 +08:00
paisley
7e2c4d3835 fix: Host API port conflict crashing startup on Windows (#743) 2026-04-02 12:00:43 +08:00
paisley
06266cb4d2 Upgrade openclaw to 4.1 (#742) 2026-04-02 11:23:24 +08:00
Lingxuan Zuo
5a3da41562 Preserve stable snapshots and stabilize Electron e2e (#734) 2026-04-01 20:35:01 +08:00
paisley
ca92d7fa2c fix(gateway): prevent default built-in plugins from being disabled by explicit allowlists (#737) 2026-04-01 17:33:53 +08:00
paisley
d34a88e629 Feat/upgrade openclaw (#729) 2026-04-01 14:22:47 +08:00
paisley
eb948d5820 fix(gateway): restore WebSocket heartbeat ping on Windows (#722) 2026-03-31 10:51:30 +08:00
paisley
ec8db0be75 fix(gateway): resolve startup hang caused by qqbot plugin manifest ID mismatch & stderr flood (#718) 2026-03-30 18:27:48 +08:00
Lingxuan Zuo
e988258c59 fix gateway restart handshake timeout (#689)
Co-authored-by: zuolingxuan <zuolingxuan@bytedance.com>
2026-03-30 16:09:23 +08:00
paisley
47c9560b9e Upgrade third party plugin (#715) 2026-03-30 14:46:33 +08:00
Lingxuan Zuo
870abb99c4 Fix token usage handling and developer proxy save UX (#704) 2026-03-28 21:13:56 +08:00
Lingxuan Zuo
2668082809 add electron e2e harness and regression coverage (#697) 2026-03-28 15:34:20 +08:00
Lingxuan Zuo
514a6c4112 fix: avoid systemd-supervised gateway retry loop in owned launcher (#700) 2026-03-28 15:34:01 +08:00