449 Commits

Author SHA1 Message Date
Val Alexander
36df0d93b9 fix: repair iOS LAN pairing
Fix iOS LAN/setup-code pairing policy for #47887.

- Allow explicit private LAN and .local plaintext ws:// setup/manual connects where policy allows it.
- Keep public hosts, .ts.net, and Tailscale CGNAT plaintext fail-closed.
- Prefer explicit passwords over stale bootstrap tokens in Swift and TypeScript gateway clients.
- Update setup-code/device-pair coverage, docs, and changelog with source credit for #65185.

Verification:
- pnpm install
- git diff --check origin/main..HEAD
- pnpm exec oxfmt --check --threads=1 src/gateway/client.ts src/gateway/client.test.ts src/pairing/setup-code.ts src/pairing/setup-code.test.ts extensions/device-pair/index.ts extensions/device-pair/index.test.ts
- pnpm format:docs:check
- pnpm test src/gateway/client.test.ts src/pairing/setup-code.test.ts extensions/device-pair/index.test.ts
- cd apps/shared/OpenClawKit && swift test --filter 'DeepLinksSecurityTests|GatewayNodeSessionTests'
- pnpm lint:swift passes with the existing TalkModeRuntime.swift type-body-length warning

Blocked locally:
- iOS app-target xcodebuild tests require unavailable watchOS 26.4 runtime here.
- Testbox check:changed previously failed because the image lacks swiftlint; local swiftlint passes.
2026-05-05 21:07:19 -05:00
Peter Steinberger
466f718320 feat: wire talk handoff into native nodes 2026-05-06 02:39:15 +01:00
Peter Steinberger
c37871e77b chore(release): bump version to 2026.5.5 2026-05-05 17:23:39 +01:00
Peter Steinberger
5397667272 chore(release): prepare 2026.5.4 2026-05-04 10:09:55 +01:00
Val Alexander
b2efd19648 fix(ios): harden gateway pairing setup
Harden iOS gateway setup-code pairing by rejecting non-loopback plaintext ws:// setup URLs before bootstrap token issuance, consolidating iOS setup parsing, and adding QR scan support from Settings.

Verification:
- pnpm test extensions/device-pair/index.test.ts
- swift test --package-path apps/shared/OpenClawKit --filter DeepLinksSecurityTests
- XcodeBuildMCP OpenClawLogicTests/DeepLinkParserTests
- targeted SwiftLint for touched iOS/OpenClawKit files
- pnpm exec oxfmt --check --threads=1 extensions/device-pair/index.ts extensions/device-pair/index.test.ts
- git diff --check origin/main...HEAD
- GitHub PR checks green on 58e5e60a5c
2026-05-04 02:11:47 -05:00
Peter Steinberger
e7bb5d6ddf chore: move swift configs under config 2026-05-03 14:51:56 +01:00
Peter Steinberger
869103684f chore: move swabble into apps 2026-05-03 13:10:25 +01:00
Peter Steinberger
31161abd40 chore(release): bump version to 2026.5.3 2026-05-03 03:08:47 +01:00
Peter Steinberger
80da0a0213 chore: bump version to 2026.5.2 2026-05-02 11:58:45 +01:00
Peter Steinberger
1ad50a36ac chore(release): forward-port 2026.4.29 fixes and bump 2026.4.30 2026-05-01 01:06:13 +01:00
Vincent Koc
13390fcac8 docs(apps/ios/readme): list authenticated background presence beacons
For bdba90a20b: apps/ios/README.md "What Works Now (Concrete)" section
omitted the authenticated background `node.presence.alive` beacon
feature that shipped on iOS first, even though apps/android/README.md
already lists it on the rebuild checklist. Adds a matching bullet so
the iOS README reflects the gateway last-seen metadata update path
across foreground/background transitions.
2026-04-29 00:09:25 -07:00
Peter Steinberger
bdba90a20b feat: add authenticated iOS background presence beacon (#73330)
* feat: add iOS background presence beacon

Co-authored-by: ngutman <1540134+ngutman@users.noreply.github.com>

* fix: keep iOS background reconnects ahead of beacon throttle

* build: refresh gateway protocol swift models

* fix: emit swift protocol string enums

---------

Co-authored-by: ngutman <1540134+ngutman@users.noreply.github.com>
2026-04-28 08:10:35 +01:00
Peter Steinberger
001bf47727 chore(release): open 2026.4.27 development 2026-04-28 05:28:04 +01:00
Peter Steinberger
482c74b724 refactor: remove narrow SwiftLint suppressions 2026-04-28 02:38:44 +01:00
Peter Steinberger
b294f7c467 fix: harden ios app build hygiene 2026-04-28 01:42:10 +01:00
Peter Steinberger
3b5463591b chore: bump version to 2026.4.26 2026-04-26 09:28:52 +01:00
Peter Steinberger
02f3e9cfa2 fix(talk): honor configured speech locale 2026-04-25 21:05:24 +01:00
Peter Steinberger
7fcefd56b7 chore: bump version to 2026.4.25 2026-04-25 10:31:52 +01:00
Peter Steinberger
e0072ef91a chore: bump version to 2026.4.24 2026-04-24 02:13:50 +01:00
Peter Steinberger
b75a80f6d1 chore(release): prepare 2026.4.23 2026-04-23 16:56:44 +01:00
Peter Steinberger
1801b90460 chore: bump version to 2026.4.22 2026-04-22 03:04:53 +01:00
Peter Steinberger
0b1a35363e chore: start 2026.4.21 development 2026-04-21 21:42:15 +01:00
Peter Steinberger
73f4bfadc1 style: fix ios app lint warnings 2026-04-20 14:17:25 +01:00
Peter Steinberger
8116e638f3 chore: release 2026.4.20 2026-04-20 13:16:40 +01:00
Peter Steinberger
ac8f0c9c0d chore: prepare 2026.4.19-beta.1 release 2026-04-19 02:09:43 +01:00
Peter Steinberger
3f2e73b723 chore(release): bump version to 2026.4.18 2026-04-18 15:46:33 +01:00
Peter Steinberger
0dc4c4076c chore: bump version to 2026.4.16 2026-04-17 00:45:04 +01:00
Peter Steinberger
cb790c858b build(release): bump core app versions to 2026.4.15-beta.1 2026-04-15 15:06:13 +01:00
Peter Steinberger
224cbd9ff6 chore(release): prepare 2026.4.14 beta 2026-04-14 03:06:46 +01:00
Peter Steinberger
a8e140e395 chore: bump version to 2026.4.12 2026-04-12 10:37:18 -07:00
Peter Steinberger
88be9b525c docs: update 2026.4.11 changelog 2026-04-11 14:00:42 +01:00
Peter Steinberger
1ab6e5dbf0 chore(release): bump version to 2026.4.11 2026-04-11 04:51:17 +01:00
Peter Steinberger
3218f8f4e5 chore: align release metadata for 2026.4.10 2026-04-10 08:19:47 +01:00
Nimrod Gutman
f3c304917a revert: undo background alive review findings fix 2026-04-08 14:02:49 +03:00
Nimrod Gutman
b328c66115 fix: resolve background alive beacon review findings 2026-04-08 13:46:39 +03:00
Nimrod Gutman
6681878339 feat(ios): pin calver release versioning (#63001)
* feat(ios): decouple app versioning from gateway

* feat(ios): pin calver release versioning

* refactor(ios): drop prerelease version helper fields

* docs(changelog): note pinned ios release versioning (#63001) (thanks @ngutman)
2026-04-08 11:25:35 +03:00
Peter Steinberger
8cbd60d203 chore: prepare 2026.4.9 release 2026-04-08 08:02:53 +01:00
Peter Steinberger
4f8471617a chore: prepare 2026.4.8 2026-04-08 04:21:51 +01:00
Peter Steinberger
0e91c25c0b chore: prepare 2026.4.7 2026-04-08 02:14:59 +01:00
Nimrod Gutman
6380c872bc feat(ios): improve gateway connection error ux (#62650)
* feat(ios): improve gateway connection error ux

* fix(ios): address gateway problem review feedback

* feat(ios): improve gateway connection error ux (#62650) (thanks @ngutman)
2026-04-07 21:53:22 +03:00
Nimrod Gutman
6f566585d8 fix(ios): harden watch exec approval review (#61757)
* fix(ios): harden watch exec approval review

* fix(ios): address watch approval review feedback

* fix(ios): finalize watch approval background recovery

* fix(ios): finalize watch approval background recovery (#61757) (thanks @ngutman)
2026-04-06 17:42:42 +03:00
Peter Steinberger
93ddcb37de chore: bump version to 2026.4.6 2026-04-06 05:04:44 +01:00
Peter Steinberger
3e72c0352d chore: release 2026.4.5 2026-04-06 04:04:21 +01:00
Peter Steinberger
072e0795f8 chore: prepare 2026.4.6-beta.1 release 2026-04-06 03:33:55 +01:00
Peter Steinberger
ce8492f9a0 chore: bump version to 2026.4.5 2026-04-05 21:33:04 +01:00
Nimrod Gutman
c3d8a6d270 docs(ios): document testflight release recovery 2026-04-05 19:09:25 +03:00
Nimrod Gutman
28955a36e7 feat(ios): add exec approval notification flow (#60239)
* fix(auth): hand off qr bootstrap to bounded device tokens

* feat(ios): add exec approval notification flow

* fix(gateway): harden approval notification delivery

* docs(changelog): add ios exec approval entry (#60239) (thanks @ngutman)
2026-04-05 16:33:22 +03:00
Peter Steinberger
32d2654340 build: bump version to 2026.4.4 2026-04-04 16:09:42 +09:00
Nimrod Gutman
226ca1f324 fix(auth): address qr bootstrap review feedback 2026-04-04 15:57:38 +09:00
Nimrod Gutman
a9140abea6 fix(auth): hand off qr bootstrap to bounded device tokens 2026-04-04 15:57:38 +09:00