Peter Steinberger
c33e9ba05b
refactor(macos): consolidate gateway lifecycle state ( #118412 )
2026-08-02 20:47:50 -07:00
Vincent Koc
20e68e01df
fix(gateway): sign device proofs with challenge time ( #116679 )
2026-07-31 16:45:53 +08:00
Peter Steinberger
62a6dfb082
fix(macos): direct Gateway TLS pins protect operator traffic ( #112353 )
...
* fix(macos): enforce direct Gateway TLS pins
* fix(macos): preserve existing TLS pin owner keys
* fix(macos): reuse localized TLS error labels
* test(macos): avoid nested Swift Testing require
* test(macos): isolate TLS Keychain tests
* test(macos): isolate TLS integration Keychain
* chore(i18n): update native source inventory
2026-07-22 03:38:10 -07:00
Peter Steinberger
3b84a55d99
refactor(protocol): pre-publish cheat-window cleanup and vintage tracking ( #111041 )
...
* fix(codex): drain dynamic-tool handlers before side-thread cleanup
* refactor(protocol): rename question ids to questionId and flatten answer maps
* refactor(protocol): slim worker stack and unify session-catalog shapes
* refactor(protocol): delete dead public surface and polish packaging
* feat(protocol): track release-train vintage on gateway methods and schemas
* fix(apps): align question surfaces merged from main with reshaped protocol
* test(health): shape secret fixtures to scanner-safe token names
* test(health): use scanner-safe token fixtures
* fix(apps): align question surfaces merged from main with reshaped protocol
* fix(ci): prove reshaped protocol in shallow checks
* fix(ui): align sidebar question fixtures with protocol
* fix(apps): read flat Swift question answers
* fix(apps): align question surfaces merged from main with reshaped protocol
* fix(apps): refresh native question inventory
* fix(apps): align macOS snapshot fixtures with protocol
* fix(ui): align narration question fixture with protocol
2026-07-19 04:07:15 -07:00
Peter Steinberger
28a3540f32
feat: add native inline widget support ( #109212 )
...
* feat: add native inline widget support
* refactor: simplify plugin surface refresh
* fix: preserve plugin surface refresh API
* fix: reload widgets after WebKit termination
* fix: harden native widget refresh
* fix: bound native widget recovery
* docs: defer native widget release note
* chore: refresh native i18n inventory
* fix: harden native widget delivery
* refactor: simplify native widget API surface
* fix: serialize native widget capability refresh
* fix: harden native widget recovery
* fix: recover native widget capabilities
* style: format widget refresh role selection
* fix: correct widget refresh formatting
* fix: harden cross-platform widget recovery
* fix: bind widget trust and recovery to routes
* chore: refresh native i18n inventory
* chore: regenerate Android gateway protocol
* test: remove unused release workflow read
2026-07-16 19:24:41 -07:00
Peter Steinberger
e1a92c99cf
fix(ios): persist chat thinking selections ( #106287 )
...
* refactor(apple): share chat gateway requests
* fix(ci): sync native app inventory
* docs: keep Apple release note in PR body
2026-07-13 05:44:08 -07:00
Peter Steinberger
251f54baec
fix(apps): remove dead native code
2026-07-12 02:41:17 -07:00
Peter Steinberger
952733d6fa
test(macos): isolate gateway device stores ( #105048 )
2026-07-12 08:42:20 +01:00
xingzhou
57c2d65ad5
fix(apps): reconcile slow Apple chat replies ( #97722 )
...
* fix(apps): reconcile slow chat replies
Co-authored-by: zhang-guiping <zhang.guiping@xydigit.com >
* style(apps): wrap wait diagnostic
* chore(apps): refresh native i18n inventory
* chore: leave changelog release-owned
* style(apps): normalize Swift modifiers
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-11 17:01:40 -07:00
Peter Steinberger
8310c565e0
feat(onboarding): add provider sign-in ( #104502 )
...
* feat(onboarding): add provider sign-in flows
* fix(oauth): keep callback compatibility
* fix(onboarding): reconcile lost auth outcomes
* fix(onboarding): lock auth cancellation at commit
* fix(onboarding): close provider auth lifecycle gaps
* fix(onboarding): make terminal auth failures dismissable
* fix(onboarding): satisfy native app checks
* fix(onboarding): reconcile absent auth sessions
* fix(onboarding): bound provider auth sessions
* fix(onboarding): open provider auth links safely
* test(onboarding): use scanner-safe auth fixtures
* revert: keep established onboarding auth fixtures
* fix(onboarding): close provider auth cancellation gaps
* fix(gateway): retain uncollected wizard results
* fix(onboarding): bind provider reconciliation attempt
* fix(i18n): avoid guessing moved string identities
* style(onboarding): normalize remote auth choices efficiently
* fix(protocol): refresh optional provider auth choices
* test(gateway): cover provider auth dispatch order
* refactor(macos): split onboarding setup support
* fix(macos): refresh merged native checks
2026-07-11 13:00:17 -07:00
Peter Steinberger
96f0983a85
fix(onboarding): skip setup for configured gateways and require inference first ( #102883 )
...
* fix(crestodian): keep onboarding RPCs restart-safe
* fix(profiles): isolate approval state migrations
* fix(crestodian): bypass configured gateway setup
* test(crestodian): type onboarding mocks
* fix(onboarding): require inference before Crestodian
* fix(onboarding): enforce verified inference handoff
* fix(macos): reset setup on gateway endpoint edits
* chore(i18n): refresh native source inventory
* fix(gateway): keep socket on request cancellation
* test(packaging): require workspace templates
* fix(onboarding): bind setup to verified inference
* fix(onboarding): align inference gate contracts
* fix(crestodian): classify concurrent policy rejection
* test(crestodian): expect registry restoration
* fix(onboarding): bind setup to configured gateways
* fix(codex): preserve startup phase deadlines
* test(crestodian): match fail-closed policy ordering
* test(onboarding): assert bound gateway handoff
* fix(codex): bind runtime resolution to spawn cwd
* test(crestodian): assert policy rejection order
* fix(cli): preserve gateway routing across restarts
* fix(macos): fail closed during gateway edits
* test(macos): cover gateway route generation races
* chore: keep release notes out of onboarding PR
* fix(ci): refresh onboarding generated checks
* style(swift): align gateway channel formatting
* fix(ci): refresh plugin SDK surface budgets
* fix(ci): resync native string inventory
* refactor(swift): split gateway channel support
* test(doctor): isolate plugin compatibility registry
* test(macos): isolate gateway onboarding fixtures
* test(macos): assert gateway lease health ordering
* fix(codex): reconcile computer-use startup changes
2026-07-11 10:25:14 -07:00
Peter Steinberger
461772868d
fix(computer): prevent stale, replayed, and post-cancel desktop actions ( #103422 )
...
* fix(ai): preserve streamed tool-call identity
* fix(computer): bind actions to current tool authority
* fix(macos): serialize computer control lifecycle
* docs(computer): document hardened control contract
* chore: follow release-owned changelog policy
* test(agents): cover node list cancellation
2026-07-10 06:47:56 +01:00
Peter Steinberger
a789b92b39
fix(macos): harden fresh AI onboarding ( #102637 )
...
* fix(macos): bootstrap Codex before onboarding test
* fix(plugins): activate deferred runtimes on demand
* fix(macos): stage Codex runtime for onboarding probe
* fix(macos): expose sanitized onboarding errors
* fix(codex): reuse native CLI auth during onboarding
* fix(macos): hide Crestodian without inference
* fix(codex): honor explicit runtime policy during setup
* fix(onboarding): redact verification errors
* fix(macos): reset onboarding state with gateway route
* fix(onboarding): persist Codex plugin install metadata
* chore: refresh onboarding inventories
* fix(macos): restart AI setup after gateway change
* chore: refresh native onboarding inventory
* fix(onboarding): defer gateway restart until setup persists
* fix(macos): reset Crestodian on gateway changes
* chore(macos): refresh native i18n inventory
* fix(onboarding): harden inference setup state
* docs(skills): reuse pristine Parallels snapshots
* chore(macos): refresh onboarding i18n inventory
* fix(onboarding): prevent stale gateway and install state
* docs(skills): preserve saved Parallels sessions
* fix(macos): balance AI onboarding layout
* fix(parallels): parse npm workspace pack output
* chore(macos): refresh onboarding i18n inventory
* fix(parallels): bundle workspace runtime in package artifact
* fix(parallels): isolate canonical package helper
* fix(parallels): pack self-contained workspace artifact
* fix(packaging): exclude macOS app bundle
* fix(macos): restart inference checks after route changes
* docs(changelog): defer onboarding note to release
* fix(onboarding): enforce inference-first gateway setup
2026-07-10 04:59:15 +01:00
Peter Steinberger
06789ca4c2
fix(ios): keep offline chat sends on their original route ( #100942 )
2026-07-06 17:53:05 +01:00
Peter Steinberger
7853aa35a4
feat(ios): per-gateway custom headers for gateways behind authenticating proxies ( #100768 )
...
* feat(ios): support per-gateway custom headers for proxied gateway connections
Per-gateway custom request headers (Cloudflare Access-style service tokens)
for gateways behind authenticating reverse proxies. Headers are credentials:
Keychain-stored per gateway stableID, masked in settings UI, injected on the
WebSocket upgrade at connect time via a provider so edits apply on the next
reconnect without re-pairing. Reserved handshake headers and control chars
are sanitized out. TLS pinning and pairing flows unchanged. Push relay and
other non-gateway destinations proven header-free by regression test.
Related: #100698
* chore(ios): sync native i18n inventory for custom header strings
* fix(ios): harden gateway custom headers
* chore(ios): resync native i18n inventory
* fix(ios): validate custom header names
2026-07-06 17:17:07 +01:00
Peter Steinberger
9ead0ae921
fix: repair live model inference edge cases
...
Fix live model inference edge cases across provider streaming, model switching, outbound delivery, and gateway tool resolution.
Includes live/provider issue fixes and leaves #89100 explicitly partial for the remaining FM-2 group routing case.
2026-06-01 23:03:27 -04:00
Peter Steinberger
548f946ffd
test(macos): remove conflict marker
2026-04-28 05:28:04 +01:00
Peter Steinberger
5dec95f35c
test(macos): stabilize gateway control test
2026-04-28 05:28:04 +01:00
Peter Steinberger
c72f8f357b
fix: harden mac app computer use docs
2026-04-28 01:25:31 +01:00
Peter Steinberger
113794f277
fix(voicewake): harden trigger routing rebase
2026-04-26 06:19:35 +01:00
Longbiao CHEN
afe1abc297
feat(voicewake): refresh trigger routing on main
2026-04-26 06:19:35 +01:00
Peter Steinberger
53fb317e7f
fix(macos): clean swiftformat pass and sendable warning
2026-03-08 13:22:46 +00:00
Peter Steinberger
7b3f506e64
style(swift): apply swiftformat and swiftlint fixes
2026-03-02 04:15:43 +00:00
Peter Steinberger
1bc5c2a7e9
refactor: unify exec shell parser parity and gateway websocket test helpers
2026-02-21 23:17:12 +01:00
Peter Steinberger
90a378ca3a
fix(macos): block quoted shell substitution in allowlist checks
2026-02-21 22:57:53 +01:00
Peter Steinberger
9a7160786a
refactor: rename to openclaw
2026-01-30 03:16:21 +01:00