Peter Steinberger
6046639da2
build: bump pi deps and trim model shims
2026-02-13 00:45:22 +01:00
Vignesh Natarajan
4543c401b4
Signal: harden E.164 validation
2026-02-12 15:28:31 -08:00
Vignesh Natarajan
a363e2ca5e
Changelog: credit Signal account validation
2026-02-12 15:28:31 -08:00
Vignesh Natarajan
056bda5cb7
Signal: validate account input
2026-02-12 15:23:11 -08:00
Gustavo Madeira Santana
04a1ed5e53
chore: make changelog mandatory in PR skills
2026-02-12 18:08:02 -05:00
Kyle Tse
a10f228a5b
fix: update totalTokens after compaction using last-call usage ( #15018 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 9214291bf7
Co-authored-by: shtse8 <8020099+shtse8@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-02-12 18:02:30 -05:00
Shadow
033d5b5c15
Changelog: note discord dm reaction fix
2026-02-12 16:47:39 -06:00
Shadow
fb8e6156ec
fix: handle discord dm reaction allowlist
2026-02-12 16:47:39 -06:00
Marcus Castro
f8c7ae9b5e
fix: use canonical 'direct' instead of 'dm' for DM peer kind (fixes TS2322)
2026-02-12 16:47:39 -06:00
Marcus Castro
ea3fb9570c
fix: use proper LoadedConfig type in test mock
2026-02-12 16:47:39 -06:00
Marcus Castro
888f7dbbd8
fix: process Discord DM reactions instead of silently dropping them
2026-02-12 16:47:39 -06:00
Shadow
d9f3d569a2
fix: add Discord channel-edit thread params ( #5542 ) (thanks @stumct)
2026-02-12 16:47:02 -06:00
Shadow
91b96edfc4
fix: document Discord media-only messages ( #9507 ) (thanks @leszekszpunar)
2026-02-12 16:45:50 -06:00
Shadow
61d57be4c2
Discord: preserve media caption whitespace
2026-02-12 16:40:08 -06:00
Vignesh Natarajan
01e4e15364
fix: normalize Signal mentions ( #2013 ) (thanks @alexgleason)
2026-02-12 14:37:55 -08:00
Vignesh Natarajan
d3e43de42b
Signal: satisfy lint
2026-02-12 14:37:55 -08:00
Vignesh Natarajan
cfec19df53
Signal: normalize mention placeholders
2026-02-12 14:37:55 -08:00
Alex Gleason
051c574047
fix(signal): replace  with @uuid/@phone from mentions
...
Related #1926
Signal mentions were appearing as  (object replacement character)
instead of readable identifiers. This caused Clawdbot to misinterpret
messages and respond inappropriately.
Now parses dataMessage.mentions array and replaces the placeholder
character with @{uuid} or @{phone} from the mention metadata.
2026-02-12 14:37:55 -08:00
Web Vijayi
4d0443391c
fix: use iterator.done check for LRU eviction
...
Fixes edge case where empty string key would stop eviction early
2026-02-12 16:31:36 -06:00
Web Vijayi
5882cf2f5d
fix(discord): add TTL and LRU eviction to thread starter cache
...
Fixes #5260
The DISCORD_THREAD_STARTER_CACHE Map was growing unbounded during
long-running gateway sessions, causing memory exhaustion.
This fix adds:
- 5-minute TTL expiry (thread starters rarely change)
- Max 500 entries with LRU eviction
- Same caching pattern used by Slack's thread resolver
The implementation mirrors src/slack/monitor/thread-resolution.ts
which already handles this correctly.
2026-02-12 16:31:36 -06:00
Shadow
149db5b2c2
Discord: handle thread edit params
2026-02-12 16:31:06 -06:00
Kyle Tse
abdceedaf6
fix: respect session model override in agent runtime ( #14783 ) ( #14983 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: ec47d1a7bf
Co-authored-by: shtse8 <8020099+shtse8@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-02-12 17:12:15 -05:00
Gustavo Madeira Santana
c0c34c72bb
chore: fix windows CI tests
2026-02-12 16:59:55 -05:00
Gustavo Madeira Santana
a158c46828
Tests: make download temp-path assertion cross-platform
2026-02-12 16:58:59 -05:00
Peter Steinberger
b50640c600
fix(irc): type socket error param
2026-02-12 22:58:42 +01:00
Peter Steinberger
722c010b95
chore(deps): update dependencies
2026-02-12 22:58:42 +01:00
Skyler Miao
cb0350230c
feat(minimax): update models from M2.1 to M2.5 ( #14865 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 1d58bc5760
Co-authored-by: adao-max <153898832+adao-max@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-02-12 16:48:46 -05:00
Gustavo Madeira Santana
b02c88d3e7
Browser/Logging: share default openclaw tmp dir resolver
2026-02-12 16:44:04 -05:00
Shadow
4aa035f38f
CI: gate auto-response with trigger label
2026-02-12 15:41:16 -06:00
Shadow
978effcf26
CI: close PRs with excessive labels
2026-02-12 15:35:32 -06:00
Shadow
3b6bd202da
Scripts: add issue labeler state + PR support
2026-02-12 15:28:12 -06:00
Gustavo Madeira Santana
afbce73570
fix: use os.tmpdir fallback paths for temp files ( #14985 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 347c689407
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-02-12 16:08:41 -05:00
Shadow
282fb9ad52
CI: handle search 422 in labeler
2026-02-12 14:58:25 -06:00
Shadow
47cd7e29ef
CI: add labeler backfill dispatch
2026-02-12 14:43:14 -06:00
Joseph Krug
5147656d65
fix: prevent heartbeat scheduler death when runOnce throws ( #14901 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 022efbfef9
Co-authored-by: joeykrug <5925937+joeykrug@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-02-12 15:38:46 -05:00
Shadow
1f41f7b1e6
CI: add contributor tier labels
2026-02-12 14:33:30 -06:00
0xRain
d8d8109711
fix(agents): guard against undefined path in context file entries ( #14903 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 25856b863d
Co-authored-by: 0xRaini <190923101+0xRaini@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-02-12 15:27:56 -05:00
Gustavo Madeira Santana
571a237d5a
chore: move local imports to the top
2026-02-12 15:14:29 -05:00
Gustavo Madeira Santana
49188caf94
chore(pr-skills): suppress output for successful commands (pnpm install/build/test/etc) to lower context usage
2026-02-12 15:10:23 -05:00
Gustavo Madeira Santana
1123357c62
chore: refining review PR additional prompts
2026-02-12 14:55:07 -05:00
Gustavo Madeira Santana
a005881fc9
docs(changelog): add Control UI symlink install fix entry
...
Co-authored-by: aynorica <54416476+aynorica@users.noreply.github.com >
2026-02-12 14:48:25 -05:00
Gustavo Madeira Santana
8d5094e1f4
fix: resolve symlinked argv1 for Control UI asset detection ( #14919 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 07b85041dc
Co-authored-by: gumadeiras <116837+gumadeiras@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-02-12 14:45:31 -05:00
fagemx
bdd0c12329
fix(providers): include provider name in billing error messages ( #14697 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 774e0b6605
Co-authored-by: fagemx <117356295+fagemx@users.noreply.github.com >
Co-authored-by: shakkernerd <165377636+shakkernerd@users.noreply.github.com >
Reviewed-by: @shakkernerd
2026-02-12 18:23:27 +00:00
Peter Steinberger
5e7842a41d
feat(zai): auto-detect endpoint + default glm-5 ( #14786 )
...
* feat(zai): auto-detect endpoint + default glm-5
* test: fix Z.AI default endpoint expectation (#14786 )
* test: bump embedded runner beforeAll timeout
* chore: update changelog for Z.AI GLM-5 autodetect (#14786 )
* chore: resolve changelog merge conflict with main (#14786 )
* chore: append changelog note for #14786 without merge conflict
* chore: sync changelog with main to resolve merge conflict
2026-02-12 19:16:04 +01:00
Peter Steinberger
2b5df1dfea
fix: local-time timestamps include offset ( #14771 ) (thanks @0xRaini)
2026-02-12 19:09:20 +01:00
Elonito
468414cac4
fix: use local timezone in console log timestamps
...
formatConsoleTimestamp previously used Date.toISOString() which always
returns UTC time (suffixed with Z). This confused users whose local
timezone differs from UTC.
Now uses local time methods (getHours, getMinutes, etc.) and appends the
local UTC offset (e.g. +08:00) instead of Z. The pretty style returns
local HH:MM:SS. The hasTimestampPrefix regex is updated to accept both
Z and +/-HH:MM offset suffixes.
Closes #14699
2026-02-12 19:08:52 +01:00
0xRain
af172742a3
fix(feishu): use msg_type 'media' for video/audio messages ( #14648 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: e8044cb208
Co-authored-by: 0xRaini <190923101+0xRaini@users.noreply.github.com >
Co-authored-by: steipete <58493+steipete@users.noreply.github.com >
Reviewed-by: @steipete
2026-02-12 19:05:09 +01:00
Peter Steinberger
069670388e
perf(test): speed up test runs and harden temp cleanup
2026-02-12 17:59:52 +00:00
Yi Liu
d3aee84499
fix(security): add --ignore-scripts to skills install commands ( #14659 )
...
Skills install runs package manager install commands (npm, pnpm, yarn,
bun) without --ignore-scripts, allowing malicious npm packages to
execute arbitrary code via postinstall/preinstall lifecycle scripts
during global installation.
This is inconsistent with the security fix in commit 92702af7a which
added --ignore-scripts to both plugin installs (src/plugins/install.ts)
and hook installs (src/hooks/install.ts). Skills install was overlooked
in that change.
Global install (-g) is particularly dangerous as scripts execute with
the user's full permissions and can modify globally-accessible binaries.
2026-02-13 02:56:35 +09:00
Tyler
4c86010b06
fix: remove bundled soul-evil hook ( closes #8776 ) ( #14757 )
...
* fix: remove bundled soul-evil hook (closes #8776 )
* fix: remove soul-evil docs (#14757 ) (thanks @Imccccc)
---------
Co-authored-by: OpenClaw Bot <bot@openclaw.ai >
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-02-12 18:52:09 +01:00