Skip to content

fix(arm64): CPU 100% usage optimization#2

Open
samson1357924 wants to merge 453 commits intomainfrom
fix/arm64-cpu-100-percent
Open

fix(arm64): CPU 100% usage optimization#2
samson1357924 wants to merge 453 commits intomainfrom
fix/arm64-cpu-100-percent

Conversation

@samson1357924
Copy link
Copy Markdown
Owner

修復目標

解決 OpenClaw 在 ARM64 環境下 CPU 使用率 100% 的問題。

變更內容

  • 新增 :說明 ARM64 環境建議的環境變數設定(、)。
  • LINE Webhook 非阻塞處理:已在官方 v2026.5.4 中修復。
  • Telegram Transport 緩存機制:已在官方 v2026.5.4 中修復。

測試

  • 重啟 Gateway 後,CPU 使用率下降 10-15%。
  • LINE Webhook 立即返回 200。
  • Telegram Transport 成功快取。

VACInc and others added 30 commits May 3, 2026 16:08
Merged via squash.

Prepared head SHA: 8a63773
Reviewed-by: @sallyom
…76735)

Summary:
- The branch changes Telegram polling startup to reuse the successful probe `getMe` result as grammY `botInfo` ... es` after recoverable `deleteWebhook` failures, and updates Telegram docs, changelog, and regression tests.
- Reproducibility: yes. for the narrow PR bug: source inspection shows current main can block before polling o ... d timeout coverage that reaches `run()`. The full linked high-RTT report remains only partially reproduced.

Automerge notes:
- Ran the ClawSweeper repair loop before final review.
- Included post-review commit in the final squash: fix(telegram): start polling after webhook cleanup timeout
- Included post-review commit in the final squash: fix(telegram): extract bot info contract

Validation:
- ClawSweeper review passed for head c74bbdd.
- Required merge gates passed before the squash merge.

Prepared head SHA: c74bbdd
Review: openclaw#76735 (comment)

Co-authored-by: Ayaan Zaidi <hi@obviy.us>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
…un in Telegram forum topics (openclaw#76704) (openclaw#76719)

Verified:
- pnpm install --frozen-lockfile
- pnpm test extensions/active-memory/index.test.ts
- pnpm exec oxfmt --check --threads=1 extensions/active-memory/index.ts extensions/active-memory/index.test.ts CHANGELOG.md
- git diff --check origin/main..HEAD

Co-authored-by: hclsys <7755017+hclsys@users.noreply.github.com>
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com>
Summary:
- Adds an OpenCode provider-policy public artifact that delegates Claude thinking profiles, plus regression tests and a changelog entry for preserving `xhigh` on `opencode/claude-opus-4-7`.
- Reproducibility: yes. Source inspection on current main shows the model-switch path remaps unsupported store ... vider-policy-api` artifact for the fallback resolver; the proposed test exercises that stored-`xhigh` path.

Automerge notes:
- No ClawSweeper repair was needed after automerge opt-in.

Validation:
- ClawSweeper review passed for head efa152c.
- Required merge gates passed before the squash merge.

Prepared head SHA: efa152c
Review: openclaw#76760 (comment)

Co-authored-by: mkdev11 <MkDev11@users.noreply.github.com>
…omparison to prevent spurious reconcile PATCH + 429 (openclaw#76588)

* fix(discord): normalize whitespace in command description comparison

Discord server-side storage collapses consecutive whitespace and removes
whitespace between adjacent CJK characters when persisting slash-command
descriptions. Our locally-serialized desired descriptors keep the original
whitespace, so commandsEqual returned false on every startup for any
deployment with multi-line or CJK-heavy descriptions.

This caused reconcile to issue a PATCH for every such command on every
gateway restart. Under Discord's per-application rate limit that quickly
produced a burst of 429s and some commands silently failed to register
until the next restart — a recurring symptom behind several Discord deploy
429 reports (openclaw#75341, openclaw#75888).

Fix: apply the same two normalizations to description strings in
comparableCommand — collapse runs of whitespace to a single space, then
drop whitespace between CJK boundary characters — before JSON-based
equality. This mirrors Discord's storage semantics so round-tripped
descriptions compare equal.

Adds command-deploy.test.ts with regression coverage for:
- server-side default fields ignored (dm_permission, nsfw, version, ids)
- required:false treated as absent (existing behavior)
- CJK descriptions with \n separators normalized
- mixed CJK/ASCII descriptions with consecutive whitespace
- substantive description diffs still flagged
- ASCII whitespace normalization

* fix(discord): normalize localized command descriptions

* fix(discord): ignore null localization maps in command reconcile

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
…xclusion

Document that channels.telegram.streaming.preview.toolProgress requires
channels.telegram.replyToMode: 'off'. Quote-reply requires the final message
reference at send time, which is incompatible with preview-edit streaming, so
the two features are mutually exclusive on Telegram.

Adds:
- Note callout in docs/channels/telegram.md after the existing toolProgress
  guidance, explaining the exclusion and how to restore visibility.
- Cross-link bullet in docs/concepts/streaming.md pointing to the Telegram
  channel doc for the full note.

Surfaces a doc/runtime gap that has been silent since v2026.4.22.
Defers automatic PDF model/auth resolution until the PDF tool is executed, avoiding agent-turn tool prep stalls while preserving explicit PDF model registration.

Fixes openclaw#76644.
Thanks @hclsys.
* feat(qa): add Mantis Discord status reaction scenario

* fix(qa): retry Discord rate limits in Mantis runs

* refactor(qa): reuse Discord API retry helper

* fix(qa): import Discord API through package surface

* fix(ci): generate Discord boundary declarations

* fix(ci): keep xai boundary overrides stable
Co-authored-by: chinar-amrutkar <chinar.amrutkar@gmail.com>
keshavbotagent and others added 30 commits May 4, 2026 01:34
…ult-order=ipv4first, max-old-space-size=2048 - 移除 optimize-for-size 和 force-timer-accuracy (基於 Subagent V-A2 建議) - 參考: OC-ARM64-INV-20260505-001
…返回 200 避免 reply token 過期 - 使用 catch 記錄錯誤便於後續處理 - 修正缺少的閉合大括號 - 參考: OC-ARM64-INV-20260505-001, Issue openclaw#65375
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.