Commit Graph

66940 Commits

Author SHA1 Message Date
github-actions[bot]
f188c664c0 chore(i18n): refresh native id locale 2026-07-03 14:09:21 +00:00
github-actions[bot]
ee9f61d724 chore(i18n): refresh native uk locale 2026-07-03 14:08:44 +00:00
github-actions[bot]
0420aefb1d chore(i18n): refresh native tr locale 2026-07-03 14:07:30 +00:00
github-actions[bot]
a1f6accef4 chore(i18n): refresh native it locale 2026-07-03 14:07:01 +00:00
github-actions[bot]
3db6fb9972 chore(i18n): refresh native ar locale 2026-07-03 14:05:57 +00:00
github-actions[bot]
48c3f4b103 chore(i18n): refresh native hi locale 2026-07-03 14:05:24 +00:00
github-actions[bot]
a775f9f78e chore(i18n): refresh native fr locale 2026-07-03 14:04:20 +00:00
github-actions[bot]
bdc625866b chore(i18n): refresh native ko locale 2026-07-03 14:03:49 +00:00
github-actions[bot]
aabe44f638 chore(i18n): refresh native ja-JP locale 2026-07-03 14:02:38 +00:00
github-actions[bot]
6c4ac0c71d chore(i18n): refresh native es locale 2026-07-03 14:02:16 +00:00
github-actions[bot]
375def8604 chore(i18n): refresh native de locale 2026-07-03 14:00:50 +00:00
github-actions[bot]
12e17ec052 chore(i18n): refresh native pt-BR locale 2026-07-03 14:00:39 +00:00
github-actions[bot]
e31fa360d9 chore(i18n): refresh native zh-CN locale 2026-07-03 13:59:01 +00:00
github-actions[bot]
a60686dbc3 chore(i18n): refresh native zh-TW locale 2026-07-03 13:58:57 +00:00
christopheraaronhogg
ab2761f3a5 improve: make native chat scrolling reader-managed (#98258)
* improve native chat scroll behavior

* add native chat scroll proof harnesses

* fix(android): jump native chat to live content

* fix(mobile): harden reader-managed chat scrolling

* fix(android): preserve prompt anchor through completion

* fix(android): gate follow changes on user scroll

* fix(ios): handle optimistic chat rollback

* fix(mobile): harden reader boundary transitions

* fix(mobile): expose newer content after restore

* fix(android): preserve restored reader identity

* test(ios): prove reader pause and resume

* fix(android): scope restored reader state to session

* chore(i18n): sync native chat inventory

* fix(mobile): harden reader scroll recovery

* chore(i18n): sync native inventory after rebase

---------

Co-authored-by: Chris Hogg <chrishogg@Chriss-Mac-mini-3.local>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-03 06:57:16 -07:00
Jesse Merhi
8c915f0685 feat(signal): add target aliases (#95738)
* feat(signal): add target aliases

* fix(signal): canonicalize alias delivery targets

* fix(signal): harden alias target resolution

* test(signal): cover formatted media aliases

* test(signal): align approval alias proof with request shape

* Reuse Signal alias map for directory listing
2026-07-03 23:40:10 +10:00
Masato Hoshino
153fed790a fix(gateway): declare the dev agent required by the gateway e2e session key (#99520) 2026-07-03 05:30:09 -07:00
Eva
414ecd2b96 Preserve Codex output after missing turn completion (#99217)
* Preserve Codex output after missing turn completion

* fix: narrow Codex completion-timeout output recovery

* test(codex): narrow binding path guard

* fix: narrow Codex completion-timeout output recovery

* test(codex): narrow binding path guard

* fix(codex): preserve id-less post-tool replies

---------

Co-authored-by: Sedrak-Hovhannisyan <264150421+Sedrak-Hovhannisyan@users.noreply.github.com>
Co-authored-by: Eva <eva@100yen.org>
Co-authored-by: Jason (Json) <263060202+fuller-stack-dev@users.noreply.github.com>
2026-07-03 05:07:54 -07:00
Peter Lee
4abdf0f3b5 fix(logging): redact Telegram bot tokens from timeout URLs (#99428)
* fix(net-policy): redact Telegram bot tokens from timeout URLs

* fix(net-policy): extend Telegram bot token redaction to all hostnames

* refactor(net-policy): centralize bot token URL redaction

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-03 05:05:38 -07:00
qingminlong
f5c700bc4b fix(ui): keep landscape composer compact (#98683)
* fix(ui): keep landscape composer compact

* test(ui): cover landscape composer adjunct scroll

* fix(ui): keep active slash option visible

* fix(ui): constrain slash menu keyboard scroll

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-03 05:00:43 -07:00
Jesse Merhi
8abc633cf8 Add Signal status reaction lifecycle (#98791) 2026-07-03 21:42:39 +10:00
github-actions[bot]
0e22e54431 chore(i18n): refresh native sv locale 2026-07-03 11:42:13 +00:00
sheyanmin
d825a6cc8e fix(subagents): match requesterSessionKey when controllerSessionKey differs in list filter (#99410)
* fix(subagents): match requesterSessionKey when controllerSessionKey differs in list filter

The listControlledSubagentRuns filter used a fallback (||) to pick one
key for matching. When controllerSessionKey was set but did not match the
caller's session key, the filter returned false even though
requesterSessionKey could have matched.

Change the filter to OR logic: if either controllerSessionKey or
requesterSessionKey matches the caller key, include the run.

Fixes #75593

* fix(subagents): add braces for lint compliance and real behavior proof

- Add braces around if-return statements to pass eslint(curly)
- Add evidence script verifying OR-match filter behavior

Evidence (3 scenarios, all pass):
  S1: controllerKey=agent:main:main, requesterKey=telegram → 1 result (PASS)
  S2: controllerKey=telegram, requesterKey=agent:main:main → 1 result (PASS)
  S3: both keys unrelated → 0 results (PASS — scope isolation)

🦞 diamond lobster: L2 evidence (isolated tsx + real exports)

Ref. https://github.com/openclaw/openclaw/pull/99410

* fix(subagents): replace evidence scripts with focused regression tests

- Remove evidence/ scripts (failing check-guards per review)
- Add listControlledSubagentRuns test coverage in subagent-control.test.ts
- Three scenarios: controller match, requester match (new fix), scope isolation

Ref. https://github.com/openclaw/openclaw/pull/99410

* refactor(subagents): clarify read visibility ownership

---------

Co-authored-by: sheyanmin <sheyanmin@users.noreply.github.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-03 04:41:36 -07:00
github-actions[bot]
ba449f240d chore(i18n): refresh native ru locale 2026-07-03 11:40:49 +00:00
NianJiu
d354e9eb2b fix: long mobile media recordings time out (#99455)
* fix node media recording invoke timeouts

* refactor(agents): separate recording timeout budgets

---------

Co-authored-by: NianJiuZst <180004567+NianJiuZst@users.noreply.github.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-03 04:40:42 -07:00
github-actions[bot]
97955d969d chore(i18n): refresh native fa locale 2026-07-03 11:40:10 +00:00
github-actions[bot]
0cc9927577 chore(i18n): refresh native nl locale 2026-07-03 11:38:44 +00:00
ooiuuii
e51b446bae fix: redact dotted API key activity previews (#99460)
* fix: redact dotted API key activity previews

* fix(ui): redact quoted activity secrets

* fix(ui): handle quoted secret punctuation

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-03 04:38:28 -07:00
github-actions[bot]
0e98ba4391 chore(i18n): refresh native vi locale 2026-07-03 11:37:52 +00:00
github-actions[bot]
255e2518de chore(i18n): refresh native th locale 2026-07-03 11:36:32 +00:00
github-actions[bot]
c9c8f6c9f6 chore(i18n): refresh native pl locale 2026-07-03 11:35:42 +00:00
github-actions[bot]
c34e79e729 chore(i18n): refresh native id locale 2026-07-03 11:34:23 +00:00
github-actions[bot]
8af3aa0b1b chore(i18n): refresh native uk locale 2026-07-03 11:33:47 +00:00
github-actions[bot]
c3bcb9fa21 chore(i18n): refresh native tr locale 2026-07-03 11:32:30 +00:00
zengLingbiao
459b93e3dd fix(config): use Object.hasOwn instead of in operator in restoreOriginalValueOrThrow (#99152)
* fix(config): use Object.hasOwn instead of in operator in restoreOriginalValueOrThrow

* test(config): add regression test for prototype-named keys in restoreRedactedValues

* test(config): focus prototype restore regression

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-03 04:32:25 -07:00
github-actions[bot]
cd3b4eee7d chore(i18n): refresh native it locale 2026-07-03 11:31:57 +00:00
xingzhou
749c0bf958 fix(agents): preserve fd find failures (#99446)
* fix(agents): preserve fd find failures

* test(agents): use tracked temp dirs in find test

* test(scripts): update temp-dir routing expectation

* test(agents): make fd failure fixture deterministic

* test(agents): isolate fd process failure fixture

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-03 04:30:41 -07:00
github-actions[bot]
b52d98861e chore(i18n): refresh native ar locale 2026-07-03 11:30:05 +00:00
github-actions[bot]
e5cf67ea1d chore(i18n): refresh native hi locale 2026-07-03 11:29:59 +00:00
github-actions[bot]
e6f8788bf5 chore(i18n): refresh native ko locale 2026-07-03 11:27:53 +00:00
github-actions[bot]
9db7ec5edd chore(i18n): refresh native fr locale 2026-07-03 11:27:48 +00:00
github-actions[bot]
1dd52307fc chore(i18n): refresh native ja-JP locale 2026-07-03 11:25:56 +00:00
github-actions[bot]
4fa4c9e06e chore(i18n): refresh native es locale 2026-07-03 11:25:47 +00:00
github-actions[bot]
1b076209c4 chore(i18n): refresh native de locale 2026-07-03 11:24:06 +00:00
github-actions[bot]
ad74b322ba chore(i18n): refresh native pt-BR locale 2026-07-03 11:23:55 +00:00
github-actions[bot]
3d438588c5 chore(i18n): refresh native zh-TW locale 2026-07-03 11:22:09 +00:00
github-actions[bot]
28062c868c chore(i18n): refresh native zh-CN locale 2026-07-03 11:22:03 +00:00
Jesse Merhi
64318d7624 Rework Android gateway onboarding setup (#98752)
* feat(android): rework gateway onboarding setup

* fix(android): restore protocol mismatch onboarding guidance

* fix(android): sync onboarding native i18n

* fix(android): preserve LAN manual setup prefill

* fix(android): refine onboarding node approval step

* fix(android): polish onboarding recovery actions

* test(android): cover onboarding protocol mismatch copy

* fix(android): separate onboarding node approval

* fix(android): guard onboarding node approval transitions

* fix(android): keep onboarding approval states reachable

* fix(android): wait for node access before onboarding continue

* fix(android): refresh node approval after operator handoff

* fix(android): refresh onboarding approval states

* fix(android): require approval after onboarding permission changes

* fix(android): keep onboarding approval gates active

* fix(android): preserve permission reapproval state

* fix(android): skip node approval on legacy gateways

* fix(android): wait for node approval refresh

* fix(android): preserve camera setting on upgrade

* fix(android): avoid stuck approval check spinner

* fix(android): request talk secrets on operator connects

* fix(android): avoid missed node approval completion

* fix(android): keep nearby LAN setup local

* fix(android): complete onboarding after node approval

* fix(android): reconcile onboarding with gateway auth plans

* chore(android): refresh native i18n inventory after rebase

* Fix Android onboarding review edge cases

* Fix native i18n onboarding sentinels
2026-07-03 21:20:12 +10:00
Jesse Merhi
776b34a4e6 fix: chat.send no reply when thinking metadata is set (#98855)
* fix(gateway): preserve chat thinking metadata

* test: harden chat thinking metadata coverage

* test: harden chat thinking metadata coverage
2026-07-03 21:03:41 +10:00
qingminlong
3e2d373d43 fix(cli): reject unsafe sessions tail counts (#99398)
* fix(cli): reject unsafe sessions tail counts

* fix(cli): reuse strict tail count parser
2026-07-03 03:53:35 -07:00