Eugene
45b74fb56c
fix(telegram): move network fallback to resolver-scoped dispatchers ( #40740 )
...
Merged via squash.
Prepared head SHA: a4456d48b4
Co-authored-by: sircrumpet <4436535+sircrumpet@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-03-10 11:28:51 +05:30
Frank Yang
96e4975922
fix: protect bootstrap files during memory flush ( #38574 )
...
Merged via squash.
Prepared head SHA: a0b9a02e2e
Co-authored-by: frankekn <4488090+frankekn@users.noreply.github.com >
Co-authored-by: frankekn <4488090+frankekn@users.noreply.github.com >
Reviewed-by: @frankekn
2026-03-10 12:44:33 +08:00
Harold Hunt
de49a8b72c
Telegram: exec approvals for OpenCode/Codex ( #37233 )
...
Merged via squash.
Prepared head SHA: f243379094
Co-authored-by: huntharo <5617868+huntharo@users.noreply.github.com >
Co-authored-by: huntharo <5617868+huntharo@users.noreply.github.com >
Reviewed-by: @huntharo
2026-03-09 23:04:35 -04:00
Vincent Koc
b48291e01e
Exec: mark child command env with OPENCLAW_CLI ( #41411 )
2026-03-09 19:14:08 -04:00
Charles Dusek
54be30ef89
fix(agents): bound compaction retry wait and drain embedded runs on restart ( #40324 )
...
Merged via squash.
Prepared head SHA: cfd99562d6
Co-authored-by: cgdusek <38732970+cgdusek@users.noreply.github.com >
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com >
Reviewed-by: @jalehman
2026-03-09 08:27:29 -07:00
Peter Steinberger
f9706fde6a
build: bump unreleased version to 2026.3.9
2026-03-09 08:33:58 +00:00
Peter Steinberger
66c581c64c
fix: normalize windows runtime shim executables
2026-03-09 07:01:42 +00:00
Peter Steinberger
17599a8ea2
refactor: flatten supervisor marker hints
2026-03-09 06:19:30 +00:00
dimatu
cf796e2a22
fix(gateway): detect launchd supervision via XPC_SERVICE_NAME
...
On macOS, launchd sets XPC_SERVICE_NAME on managed processes but does
not set LAUNCH_JOB_LABEL or LAUNCH_JOB_NAME. Without checking
XPC_SERVICE_NAME, isLikelySupervisedProcess() returns false for
launchd-managed gateways, causing restartGatewayProcessWithFreshPid()
to fork a detached child instead of returning "supervised". The
detached child holds the gateway lock while launchd simultaneously
respawns the original process (KeepAlive=true), leading to an infinite
lock-timeout / restart loop.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-09 05:57:35 +00:00
Radek Sienkiewicz
4f42c03a49
gateway: fix global Control UI 404s for symlinked wrappers and bundled package roots ( #40385 )
...
Merged via squash.
Prepared head SHA: 567b3ed684
Co-authored-by: velvet-shark <126378+velvet-shark@users.noreply.github.com >
Co-authored-by: velvet-shark <126378+velvet-shark@users.noreply.github.com >
Reviewed-by: @velvet-shark
2026-03-09 01:50:42 +01:00
Peter Steinberger
32a6eae576
refactor: share gateway argv parsing
2026-03-08 23:38:24 +00:00
Peter Steinberger
0692f71c6f
fix: wait for extension relay tab reconnects ( #32461 ) (thanks @AaronWander)
2026-03-08 19:11:58 +00:00
Peter Steinberger
3ada30e670
fix: restore gate after rebase
2026-03-08 18:40:15 +00:00
Peter Steinberger
dd7470730d
test: isolate git commit resolution fallbacks
2026-03-08 18:40:14 +00:00
Vincent Koc
d23d36a2f9
Tests: lower entropy git commit fixtures
2026-03-08 11:16:03 -07:00
yuweuii
6c9b49a10b
fix(sessions): clear stale contextTokens on model switch ( #38044 )
...
Merged via squash.
Prepared head SHA: bac2df4b7f
Co-authored-by: yuweuii <82372187+yuweuii@users.noreply.github.com >
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com >
Reviewed-by: @jalehman
2026-03-08 10:59:16 -07:00
Altay
ca5e352c53
CLI: include commit hash in --version output ( #39712 )
...
* CLI: include commit hash in --version output
* fix(version): harden commit SHA resolution and keep output consistent
* CLI: keep install checks compatible with commit-tagged version output
* fix(cli): include commit hash in root version fast path
* test(cli): allow null commit-hash mocks
* Installer: share version parser across install scripts
* Installer: avoid sourcing helpers from stdin cwd
* CLI: note commit-tagged version output
* CLI: anchor commit hash resolution to module root
* CLI: harden commit hash resolution
* CLI: fix commit hash lookup edge cases
* CLI: prefer live git metadata in dev builds
* CLI: keep git lookup inside package root
* Infra: tolerate invalid moduleUrl hints
* CLI: cache baked commit metadata fallbacks
* CLI: align changelog attribution with prep gate
* CLI: restore changelog contributor credit
---------
Co-authored-by: echoVic <echovic@163.com >
Co-authored-by: echoVic <echoVic@users.noreply.github.com >
2026-03-08 19:10:48 +03:00
daymade
f930fcbd3f
Add regression test and CHANGELOG entry
...
- Add test ensuring launchd path never returns "failed" status
- Add CHANGELOG.md entry documenting the fix with issue/PR references
- Reference ThrottleInterval evolution (#27650 → #29078 → current 1s)
2026-03-08 13:42:50 +00:00
daymade
03aea082d0
chore: condense inline comments per code review
...
Remove redundant rationale from test body (test names already convey it)
and trim the production comment to what/consequence/link (mechanism
details live in #39760 ).
2026-03-08 13:42:50 +00:00
daymade
5f45e76d61
fix(darwin): remove self-kickstart from launchd gateway restart; rely on KeepAlive
...
When the gateway needs a config-triggered restart under launchd, calling
`launchctl kickstart -k` from within the service itself races with
launchd's async bootout state machine:
1. `kickstart -k` initiates a launchd bootout → SIGTERM to self
2. Gateway ignores SIGTERM during shutdown → process doesn't exit
3. 2s `spawnSync` timeout kills the launchctl child, but launchd
continues the bootout asynchronously
4. Fallback `launchctl bootstrap` fails with EIO (service mid-bootout)
5. In-process restart runs on the same PID that launchd will SIGKILL
6. LaunchAgent is permanently unloaded — no auto-restart
Fix: on darwin/launchd, skip `triggerOpenClawRestart()` entirely.
The caller already calls `exitProcess(0)` for supervised mode, and
`KeepAlive=true` (always set in the plist template) restarts the
service within ~1 second.
The schtasks (Windows) path is unchanged — Windows doesn't have an
equivalent KeepAlive mechanism.
2026-03-08 13:42:50 +00:00
Peter Steinberger
2646739d23
refactor: centralize strict numeric parsing
2026-03-08 03:02:25 +00:00
Peter Steinberger
44e7c1142e
refactor(doctor): model legacy file copies as plans
2026-03-08 02:16:03 +00:00
Peter Steinberger
01cff3a7a6
refactor(pairing): share allowFrom path resolution
2026-03-08 02:16:03 +00:00
Peter Steinberger
189cd99377
refactor(discord): require explicit outbound target hints
2026-03-08 01:15:29 +00:00
Peter Steinberger
3987ca4099
refactor(retry): simplify telegram shouldRetry composition
2026-03-08 01:14:16 +00:00
Peter Steinberger
eb09d8dd71
fix(telegram): land #34238 from @hal-crackbot
...
Landed from contributor PR #34238 by @hal-crackbot.
Co-authored-by: Hal Crackbot <hal@crackbot.dev >
2026-03-08 00:56:58 +00:00
Vincent Koc
a56841b98c
Daemon: harden WSL2 systemctl install checks ( #39294 )
...
* Daemon: harden WSL2 systemctl install checks
* Changelog: note WSL2 daemon install hardening
* Daemon: tighten systemctl failure classification
2026-03-07 16:43:19 -08:00
Peter Steinberger
9d2b292998
fix(exec-approvals): honor allow-always for bash script invocations
...
Landed from contributor PR #35137 by @yuweuii.
Co-authored-by: yuweuii <82372187+yuweuii@users.noreply.github.com >
2026-03-08 00:39:54 +00:00
Peter Steinberger
8a469a12b2
test(exec): dedupe wrapper boundary regressions
2026-03-08 00:12:08 +00:00
Peter Steinberger
5f50823abf
refactor(exec): share wrapper depth classification
2026-03-08 00:12:08 +00:00
Peter Steinberger
2fc95a7cfc
fix(exec): close dispatch-wrapper boundary drift
2026-03-07 23:40:38 +00:00
Peter Steinberger
939b18475d
fix(exec): honor shell comments in allow-always analysis
2026-03-07 23:31:25 +00:00
Peter Steinberger
c5bd84309a
refactor: share allowFrom stringification helpers
2026-03-07 23:27:51 +00:00
Peter Steinberger
1d1757b16f
fix(exec): recognize PowerShell encoded commands
2026-03-07 23:15:46 +00:00
Peter Steinberger
5b27b0cecf
refactor(outbound,agents): extract shared payload and queue helpers
2026-03-07 23:07:16 +00:00
Peter Steinberger
7ab49a7fb7
test(regression): cover recent landed fix paths
2026-03-07 23:07:16 +00:00
Peter Steinberger
c76d29208b
fix(node-host): bind approved script operands
2026-03-07 23:04:00 +00:00
Peter Steinberger
708187f28c
fix(outbound): prevent replay after ack crash windows ( #38668 , thanks @Gundam98)
...
Co-authored-by: Gundam98 <huhanwen98@gmail.com >
2026-03-07 22:53:27 +00:00
Peter Steinberger
733f7af92b
fix(heartbeat): keep requests-in-flight retries from drifting schedule ( #39182 , thanks @MumuTW)
...
Co-authored-by: MumuTW <clothl47364@gmail.com >
2026-03-07 22:10:51 +00:00
Peter Steinberger
cc7e61612a
fix(gateway): harden service-mode stale process cleanup ( #38463 , thanks @spirittechie)
...
Co-authored-by: Jesse Paul <drzin69@gmail.com >
2026-03-07 21:36:24 +00:00
Altay
97f9e25525
fix(ci): restore strip-ansi and typecheck fixtures ( #39146 )
...
* fix: restore strip-ansi and typecheck fixtures
* test: normalize windows install path assertions
2026-03-07 23:13:13 +03:00
Peter Steinberger
d72734946a
fix(security): harden install base drift cleanup
2026-03-07 19:23:01 +00:00
Peter Steinberger
e27bbe4982
fix(exec): block dangerous override-only env pivots
2026-03-07 19:18:05 +00:00
Peter Steinberger
6aa80844b8
fix(security): stage installs before publish
2026-03-07 19:11:07 +00:00
Peter Steinberger
74ecdec9ba
fix(security): harden fs-safe copy writes
2026-03-07 19:10:27 +00:00
Peter Steinberger
8928aba7ee
refactor: dedupe minimax provider auth test setup
2026-03-07 19:02:01 +00:00
Peter Steinberger
31acad4e8f
fix: harden zip extraction writes
2026-03-07 19:01:35 +00:00
Peter Steinberger
8bd0eb5424
fix(outbound): land #38944 from @Narcooo
...
Co-authored-by: Narcooo <Narcooo@users.noreply.github.com >
2026-03-07 18:46:48 +00:00
Vincent Koc
e4d80ed556
CI: restore main detect-secrets scan ( #38438 )
...
* Tests: stabilize detect-secrets fixtures
* Tests: fix rebased detect-secrets false positives
* Docs: keep snippets valid under detect-secrets
* Tests: finalize detect-secrets false-positive fixes
* Tests: reduce detect-secrets false positives
* Tests: keep detect-secrets pragmas inline
* Tests: remediate next detect-secrets batch
* Tests: tighten detect-secrets allowlists
* Tests: stabilize detect-secrets formatter drift
2026-03-07 10:06:35 -08:00
Peter Steinberger
a31d3cad96
refactor(fetch-guard): clarify cross-origin redirect header filtering
2026-03-07 17:58:05 +00:00