Peter Steinberger
b98b113b88
fix(ios): harden share relay routing and delivery guards
2026-02-17 23:47:34 +01:00
Peter Steinberger
9a2c39419e
chore(release): bump version to 2026.2.17
2026-02-17 23:08:55 +01:00
Mariano
bfc9736366
feat: share to openclaw ios app ( #19424 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 0a7ab8589a
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Reviewed-by: @mbelinky
2026-02-17 20:08:50 +00:00
Nimrod Gutman
98962ed81d
feat(ios): auto-select local signing team ( #18421 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: bbb9c3aa48
Co-authored-by: ngutman <1540134+ngutman@users.noreply.github.com >
Co-authored-by: ngutman <1540134+ngutman@users.noreply.github.com >
Reviewed-by: @ngutman
2026-02-18 03:16:10 +08:00
Mariano
20a561224c
iOS: use operator session for ChatSheet RPCs ( #19320 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 0753b3a1a2
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Reviewed-by: @mbelinky
2026-02-17 17:42:47 +00:00
Mariano
836e77449c
iOS onboarding: stop auth step-3 retry loop churn ( #19153 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: a38ec42bdd
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Reviewed-by: @mbelinky
2026-02-17 13:12:53 +00:00
Vignesh Natarajan
a7c25f203a
Protocol: regenerate cron Swift models
2026-02-17 01:54:59 +01:00
Peter Steinberger
8c241449f5
fix(protocol): sync generated gateway swift models
2026-02-16 23:33:05 +00:00
Nimrod Gutman
5a39e13c92
fix(ios): restore missing location monitor merge files ( #18260 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: f60cd10f6d
Co-authored-by: ngutman <1540134+ngutman@users.noreply.github.com >
Co-authored-by: ngutman <1540134+ngutman@users.noreply.github.com >
Reviewed-by: @ngutman
2026-02-17 01:41:53 +08:00
Mariano
9e26fe4459
fix(ios): gate talk barge-in on isolated audio routes ( #18265 )
...
Co-authored-by: Mariano Belinky <mariano@mb-server-643.local >
2026-02-16 17:37:10 +00:00
Mariano
b3859b488c
feat(ios): add background listening core toggle ( #18261 )
...
Co-authored-by: Mariano Belinky <mariano@mb-server-643.local >
2026-02-16 17:36:17 +00:00
Mariano
ad27716d3f
feat(ios): add Talk voice directive hint toggle ( #18250 )
...
* feat(ios): add Talk voice directive hint toggle
* docs(changelog): credit voice directive hint slice
---------
Co-authored-by: Mariano Belinky <mariano@mb-server-643.local >
2026-02-16 17:33:42 +00:00
Mariano
44ef045614
fix(canvas): port remaining iOS branch stability fixes ( #18228 )
...
* fix(canvas): prevent snapshot disconnects on proxied gateways
(cherry picked from commit 2a3c9f746a65f3301c0cfe58ebe6596fed06230f)
* fix(canvas): accept url alias for present and navigate
(cherry picked from commit 674ee86a0b776cbb738add1920a4031246125312)
---------
Co-authored-by: Nimrod Gutman <nimrod.g@singular.net >
2026-02-16 16:42:28 +00:00
Mariano
130e59a9c0
iOS: port onboarding + QR pairing flow stability ( #18162 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: a87eadea19
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Reviewed-by: @mbelinky
2026-02-16 16:22:51 +00:00
Mariano
9a1e168685
iOS: port gateway connect/discovery stability + onboarding reset ( #18164 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 8165ec5bae
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Reviewed-by: @mbelinky
2026-02-16 16:07:22 +00:00
Mariano
2e7fac2231
iOS: port talk redaction, accessibility, and ATS hardening ( #18163 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 8a9a05f04e
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Reviewed-by: @mbelinky
2026-02-16 16:00:08 +00:00
Mariano
6effcdb551
OpenClawKit: stabilize iOS ChatUI updates after gateway replies ( #18165 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 9b6e38d5be
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Reviewed-by: @mbelinky
2026-02-16 15:51:11 +00:00
Advait Paliwal
bc67af6ad8
cron: separate webhook POST delivery from announce ( #17901 )
...
* cron: split webhook delivery from announce mode
* cron: validate webhook delivery target
* cron: remove legacy webhook fallback config
* fix: finalize cron webhook delivery prep (#17901 ) (thanks @advaitpaliwal)
---------
Co-authored-by: Tyler Yust <TYTYYUST@YAHOO.COM >
2026-02-16 02:36:00 -08:00
Peter Steinberger
39fa81dc96
chore: bump version to 2026.2.16
2026-02-16 06:08:47 +01:00
Advait Paliwal
115cfb4430
gateway: add cron finished-run webhook ( #14535 )
...
* gateway: add cron finished webhook delivery
* config: allow cron webhook in runtime schema
* cron: require notify flag for webhook posts
* ui/docs: add cron notify toggle and webhook docs
* fix: harden cron webhook auth and fill notify coverage (#14535 ) (thanks @advaitpaliwal)
---------
Co-authored-by: Tyler Yust <TYTYYUST@YAHOO.COM >
2026-02-15 16:14:17 -08:00
Peter Steinberger
3cd786cc2d
refactor(swift): share discovery status text
2026-02-15 20:40:47 +00:00
Peter Steinberger
778959b3dc
refactor(ios): dedupe gateway helpers
2026-02-15 20:38:26 +00:00
Peter Steinberger
ef2c66a16b
refactor(camera): centralize JPEG transcode cap
2026-02-15 20:33:14 +00:00
Peter Steinberger
b30ed6ca4c
refactor(ios): share EventKit auth gating
2026-02-15 20:24:06 +00:00
Peter Steinberger
71009ab1b6
refactor(macos): share tailnet IPv4 detection
2026-02-15 20:22:40 +00:00
Peter Steinberger
c8779ef61d
refactor(macos): share pairing alert plumbing
2026-02-15 20:19:55 +00:00
Peter Steinberger
218189318d
refactor(swift): share primary IPv4 lookup
2026-02-15 20:17:43 +00:00
Peter Steinberger
f37b1c11e0
refactor(macos): centralize presence system info
2026-02-15 20:12:50 +00:00
Peter Steinberger
375e16170d
refactor(macos): dedupe file watcher
2026-02-15 20:07:12 +00:00
Peter Steinberger
3a075f0292
fix(macos): drop duplicate AnyCodable helpers
2026-02-15 20:05:25 +00:00
Peter Steinberger
c75fe7e3cd
fix(swift): make SwiftPM tests deterministic
2026-02-15 20:03:48 +00:00
Peter Steinberger
a3419e48ab
refactor(swift): dedupe AnyCodable
2026-02-15 20:00:40 +00:00
Peter Steinberger
cbd9395082
ci(protocol): regenerate swift protocol models
2026-02-15 07:07:55 +00:00
Peter Steinberger
31a16157f3
fix(android): make lint pass
2026-02-15 05:38:35 +01:00
Peter Steinberger
8725c2b19f
style(swift): run swiftformat + swiftlint autocorrect
2026-02-15 05:38:35 +01:00
Peter Steinberger
379b445582
chore: bump version to 2026.2.15
2026-02-15 04:50:31 +01:00
Peter Steinberger
1ff15e60d3
chore(release): bump versions to 2026.2.14
2026-02-15 02:53:35 +01:00
Vignesh Natarajan
0f53a3b9f3
Protocol: regenerate Swift gateway models
2026-02-14 17:27:17 -08:00
Bin Deng
b9d14855d0
Fix: Force dashboard command to use localhost URL ( #16434 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 3c03b4cc9b
Co-authored-by: BinHPdev <219093083+BinHPdev@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-02-14 15:00:58 -05:00
Peter Steinberger
054366dea4
fix(security): require explicit trust for first-time TLS pins
2026-02-14 17:55:20 +01:00
Peter Steinberger
d583782ee3
fix(security): harden discovery routing and TLS pins
2026-02-14 17:18:14 +01:00
Peter Steinberger
28d9dd7a77
fix(macos): harden openclaw deep links
2026-02-14 15:03:27 +01:00
Nick Taylor
1fb52b4d7b
feat(gateway): add trusted-proxy auth mode ( #15940 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 279d4b304f
Co-authored-by: nickytonline <833231+nickytonline@users.noreply.github.com >
Co-authored-by: steipete <58493+steipete@users.noreply.github.com >
Reviewed-by: @steipete
2026-02-14 12:32:17 +01:00
Peter Steinberger
748d6821d2
fix(config): add forensic config write audit and watch attribution
2026-02-14 01:36:15 +00:00
Shuai-DaiDai
bdc63b5b7d
fix(macos): resolve dashboard basePath for local and remote ( #15862 )
...
Co-authored-by: 帅小呆1号 <shuaixiaodai1@openclaw.ai >
2026-02-14 02:19:36 +01:00
Peter Steinberger
a3574bbde4
fix(android): add bcprov dependency for device identity store
2026-02-13 19:20:15 +00:00
Ramin Shirali Hossein Zade
1af0edf7ff
fix: ensure exec approval is registered before returning ( #2402 ) ( #3357 )
...
* feat(gateway): add register and awaitDecision methods to ExecApprovalManager
Separates registration (synchronous) from waiting (async) to allow callers
to confirm registration before the decision is made. Adds grace period for
resolved entries to prevent race conditions.
* feat(gateway): add two-phase response and waitDecision handler for exec approvals
Send immediate 'accepted' response after registration so callers can confirm
the approval ID is valid. Add exec.approval.waitDecision endpoint to wait for
decision on already-registered approvals.
* fix(exec): await approval registration before returning approval-pending
Ensures the approval ID is registered in the gateway before the tool returns.
Uses exec.approval.request with expectFinal:false for registration, then
fire-and-forget exec.approval.waitDecision for the decision phase.
Fixes #2402
* test(gateway): update exec-approval test for two-phase response
Add assertion for immediate 'accepted' response before final decision.
* test(exec): update approval-id test mocks for new two-phase flow
Mock both exec.approval.request (registration) and exec.approval.waitDecision
(decision) calls to match the new internal implementation.
* fix(lint): add cause to errors, use generics instead of type assertions
* fix(exec-approval): guard register() against duplicate IDs
* fix: remove unused timeoutMs param, guard register() against duplicates
* fix(exec-approval): throw on duplicate ID, capture entry in closure
* fix: return error on timeout, remove stale test mock branch
* fix: wrap register() in try/catch, make timeout handling consistent
* fix: update snapshot on timeout, make two-phase response opt-in
* fix: extend grace period to 15s, return 'expired' status
* fix: prevent double-resolve after timeout
* fix: make register() idempotent, capture snapshot before await
* fix(gateway): complete two-phase exec approval wiring
* fix: finalize exec approval race fix (openclaw#3357) thanks @ramin-shirali
* fix(protocol): regenerate exec approval request models (openclaw#3357) thanks @ramin-shirali
* fix(test): remove unused callCount in discord threading test
---------
Co-authored-by: rshirali <rshirali@rshirali-haga.local >
Co-authored-by: rshirali <rshirali@rshirali-haga-1.home >
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-02-13 19:57:02 +01:00
Peter Steinberger
a844fb161c
build(protocol): regenerate swift gateway models
2026-02-13 16:14:53 +00:00
Sk Akram
4c86821aca
fix: allow device-paired clients to retrieve TTS API keys ( #14613 )
...
* refactor: add config.get to READ_METHODS set
* refactor(gateway): scope talk secrets via talk.config
* fix: resolve rebase conflicts for talk scope refactor
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-02-13 17:07:49 +01:00
Ahmad Bitar
c179f71f42
feat: Android companion app improvements & gateway URL camera payloads ( #13541 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 9c179c9c31
Co-authored-by: smartprogrammer93 <33181301+smartprogrammer93@users.noreply.github.com >
Co-authored-by: steipete <58493+steipete@users.noreply.github.com >
Reviewed-by: @steipete
2026-02-13 16:49:28 +01:00