Commit Graph

49 Commits

Author SHA1 Message Date
6fb1441226
refactor: replace super_clipboard with pasteboard (drop cargokit/Rust) (#55)
* refactor: replace super_clipboard with pasteboard, drop cargokit/Rust

super_clipboard pulled in super_native_extensions (a Rust native layer
built via cargokit), whose precompiled-binary download from GitHub
release assets has been intermittently failing the build ("Connection
closed while receiving data"). It was used for exactly one feature -
reading a clipboard image into the composer - in a single file; the
other 12 imports were dead.

- Swap super_clipboard -> pasteboard (platform-channel, no Rust).
- Rewrite readClipboardImageAsXFileInternal() on Pasteboard.image
  (PNG bytes), collapsing three helpers into one.
- Remove 12 unused super_clipboard imports.
- Regenerated plugin registrants / lockfiles drop super_native_extensions.

Removes the Rust toolchain requirement and the flaky download entirely.
Text copy/paste already used Flutter's built-in Clipboard and is
unaffected.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* ci: keep TestFlight package release-only

---------

Co-authored-by: Haitao Pan <manbuzhe2009@qq.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 08:30:26 +08:00
01515f95ca
ci: TestFlight opt-in toggle + Xcode 27 build fixes (#54)
* ci: gate TestFlight behind opt-in toggle + Xcode 27 build fixes

TestFlight is now opt-in (default OFF). A workflow_dispatch boolean
`enable_testflight` (or the `ENABLE_TESTFLIGHT` repo variable) drives a
`prepare.outputs.testflight_enabled` flag that gates the macOS
app-store-pkg build leg and both testflight_ios/testflight_macos upload
legs. Missing Apple signing secrets no longer fail the normal DMG/IPA
release path (package-macos-app-store-pkg.sh hard-exits without them).

Xcode 27 build compatibility:
- Align Apple deployment targets so no pod sits below the app minimum
  (Xcode 27 rejects this): macOS pods + RunnerTests -> 15.6, iOS pods
  -> 15.5 to match the Runner targets.
- Add a `lipo` shim (scripts/xcode-tools/lipo) wired onto PATH in the
  iOS/macOS build phases; Xcode 27 only accepts one `-verify_arch`
  architecture per call while Flutter passes them all at once.
- macOS project hygiene: correct PrivacyInfo.xcprivacy path, set app
  display name + LSApplicationCategoryType.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* test: make temp-dir cleanup resilient to concurrent-write races

The assistant execution target tests deleted their temp HOME/workspace
dirs with a raw recursive delete in addTearDown. A background flush
(e.g. controller dispose still persisting state) can keep writing into
the dir while the delete walks it, so the delete races and fails with
"Directory not empty" (errno 39), failing the test on CI.

Route all unguarded teardown deletes through the existing
_resilientDelete helper (re-check existence + retry), and harden that
helper so its final fallback never re-throws — a temp-dir cleanup
failure must never fail a test.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

---------

Co-authored-by: Haitao Pan <manbuzhe2009@qq.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 07:27:09 +08:00
Haitao Pan
09352b35a0 chore: update macOS deployment target to 14.0 and commit pending changes 2026-06-25 09:52:33 +08:00
Haitao Pan
046020d8d7 Remove Patrol from macOS package 2026-06-05 21:47:08 +08:00
Haitao Pan
3d1d037e1a fix: WebRTC remote desktop connection, cleanup local fallback, and ignore .gradle cache 2026-06-04 09:12:08 +08:00
Haitao Pan
0fdac8aedd chore: prepare release v1.1.4 (app store compliance, remote desktop fixes, ci verification) 2026-06-03 15:52:44 +08:00
Haitao Pan
842227a4d5 refactor: simplify remote desktop UI and add maximize toggle 2026-06-03 11:47:04 +08:00
Haitao Pan
81ecfba85a feat: Remote Desktop UI and Client WebRTC Integration 2026-06-03 10:50:06 +08:00
Haitao Pan
1e0d79532b chore: add ios release verification assets 2026-05-25 08:54:48 +08:00
Haitao Pan
3160ab3eb5 refactor: remove mobile approval surface 2026-05-24 12:15:54 +08:00
Haitao Pan
b9a9999291 chore: remove stale gateway settings and app ffi paths 2026-05-13 16:45:54 +08:00
Haitao Pan
a04b22ec4a refactor(storage): unify persistent storage with robust error handling and simplified secret management
- Consolidate settings, tasks, and audit storage into SettingsStore and SecretStore
- Implement PersistentWriteFailure for detailed error reporting across storage scopes
- Migrate secret retrieval to rely primarily on reference-based lookups
- Add ThemeMode persistence and AccountSyncState serialization
- Modernize SecureConfigStore with clear path resolution and support for UI state
- Streamline Rust build process by migrating from custom scripts to Makefile
- Remove redundant build_rust_ffi.sh and update integration scripts
2026-04-19 10:34:15 +08:00
Haitao Pan
925eea0f1b fix(macos): sync Podfile lock checksum 2026-04-13 14:37:36 +08:00
Haitao Pan
5ab79c7398 Remove bundled app helper binaries 2026-04-11 14:45:50 +08:00
Haitao Pan
4763e7853b chore: suppress noisy macos third-party build warnings 2026-04-11 09:28:00 +08:00
Haitao Pan
ea4abe350b build: add test-all make targets 2026-04-08 16:37:12 +08:00
Haitao Pan
319d7a383f test: add automation suite coverage 2026-04-08 16:35:25 +08:00
Haitao Pan
f5a3826be8 Fix macOS project shell phase ordering for go-core helper embed 2026-04-06 09:39:47 +08:00
Haitao Pan
e109e43d99 Bundle go-core helper with macOS app and drop external CLI fallback 2026-04-06 09:39:16 +08:00
Haitao Pan
72ec753ba8 feat(macos): add main window menu action 2026-04-02 10:28:05 +08:00
Haitao Pan
88786e2310 Fix macOS archive symbols and packaging settings 2026-03-27 16:32:23 +08:00
Haitao Pan
03c7e2776d Refine macOS Xcode entrypoint and CocoaPods SDK refs 2026-03-27 16:15:27 +08:00
Haitao Pan
de010bab5e Refine desktop agent launch policy 2026-03-27 15:31:46 +08:00
Haitao Pan
e118106ce5 fix(macos): guard Flutter Assemble phase against direct xcodeproj launch
Prevents build failure when opening Runner.xcodeproj directly instead of
Runner.xcworkspace by checking WORKSPACE_DIR at build time and reporting
actionable error message.
2026-03-27 14:56:27 +08:00
Haitao Pan
2e9e82540b Refactor macOS status bar background runtime 2026-03-26 19:13:05 +08:00
Haitao Pan
041fb8869e Add desktop background-run lifecycle hooks 2026-03-26 18:42:11 +08:00
Haitao Pan
4562776601 fix(settings): simplify single-agent skill roots 2026-03-26 09:31:21 +08:00
Haitao Pan
26b2c63c28 fix(assistant): require bookmarks for shared skill roots 2026-03-25 22:48:57 +08:00
Haitao Pan
856aecc1fd feat(settings): add authorized skills directory authorization 2026-03-25 19:22:10 +08:00
Haitao Pan
fc534df745 Suppress mobile scanner ignored attributes warnings 2026-03-25 17:16:09 +08:00
Haitao Pan
70db3fae34 chore: commit remaining workspace changes 2026-03-25 14:25:24 +08:00
Haitao Pan
df61476416 fix(release): align export compliance flag and backfill missing framework dsyms 2026-03-25 11:55:50 +08:00
Haitao Pan
8e4865ab0a fix(macos): sync Podfile lock after pod install 2026-03-25 10:36:10 +08:00
Haitao Pan
332ee750b3 feat: add mobile gateway pairing guide 2026-03-24 15:12:32 +08:00
Haitao Pan
8e1419c94a chore(release): add app encryption compliance docs 2026-03-24 13:30:20 +08:00
Haitao Pan
0ae901babd feat(assistant): paste clipboard images as attachments 2026-03-24 13:02:01 +08:00
Haitao Pan
bf0d3def67 Update CocoaPods locks for file-backed store 2026-03-23 22:31:12 +08:00
Haitao Pan
170fd3ee0f Rebuild desktop persistence as file stores 2026-03-23 21:45:36 +08:00
Haitao Pan
144428f054 fix(release): harden apple app store distribution 2026-03-23 17:28:54 +08:00
Haitao Pan
7378888ed4 feat: add ui feature flag release docs pipeline 2026-03-22 10:49:13 +08:00
Haitao Pan
d524c74047 Finish secure settings storage and refresh workspace UI 2026-03-18 17:04:00 +08:00
Haitao Pan
a6699beff3 feat: integrate Codex CLI as built-in code agent
- Add CodexRuntime for process management and JSON-RPC communication
- Add CodexConfigBridge for AI Gateway configuration
- Add ModeSwitcher for OpenClaw Gateway mode switching (local/remote/offline)
- Add AgentRegistry for agent registration and discovery
- Add RuntimeCoordinator for unified coordination
- Add Rust FFI bindings for native integration
- Add comprehensive test coverage

Phase 1-4 features:
- Configuration bridging to AI Gateway
- Mode switching between local/remote/offline
- Agent registration protocol
- Cloud memory sync capability
- Offline fallback support

CI/CD:
- GitHub Actions workflow for Rust FFI build
- Build scripts for macOS universal binary
- Integration with Flutter build process

Co-authored-by: Codex CLI Integration <codex@openai.com>
2026-03-14 00:10:27 +08:00
Haitao Pan
e954af8468 feat: complete gateway-driven assistant baseline 2026-03-11 23:01:47 +08:00
Haitao Pan
fd27158f88 chore: prepare for v0.1 release 2026-03-11 21:21:49 +08:00
Haitao Pan
348cd4eba1 Add macOS App Store category metadata 2026-03-11 18:56:56 +08:00
Haitao Pan
fce470cf31 Configure macOS release workspace for App Store builds 2026-03-11 18:48:45 +08:00
Haitao Pan
51e225ffc0 Add global language toggle and app localization 2026-03-11 15:15:47 +08:00
Haitao Pan
ce21360a59 Add assistant access controls and maximize desktop windows 2026-03-11 14:04:29 +08:00
Haitao Pan
9720b1fc65 Initial Flutter workspace shell 2026-03-11 07:32:52 +08:00