Commit Graph

  • ec92628939 fix(system-proxy): wait out launchd throttle before re-registering drifted job Qiu Yuzhou 2026-09-30 19:15:06 +08:00
  • 3bb6b88fbb chore(gitignore): add Taskfile.yml to .gitignore Qiu Yuzhou 2026-09-30 18:56:30 +08:00
  • 43ea00cb44 fix(system-proxy): use BundleProgram in daemon plist and refresh stale registration Qiu Yuzhou 2026-09-30 18:54:19 +08:00
  • c1aba5a882 fix(system-proxy): make helper XPC connection reachable and crash-free Qiu Yuzhou 2026-09-30 13:40:16 +08:00
  • d2a8d6105c feat(system-proxy): route writes through privileged LaunchDaemon helper Qiu Yuzhou 2026-09-30 12:26:40 +08:00
  • 08682724c9 fix(system-proxy): reconcile configuration across network changes Qiu Yuzhou 2026-09-29 23:39:25 +08:00
  • 5aad79e41f feat(ui): simplify sidebar proxy status card Qiu Yuzhou 2026-09-29 21:13:34 +08:00
  • 9284b1c9a1 feat: export configuration groups as SIP-008 JSON Qiu Yuzhou 2026-09-29 20:12:16 +08:00
  • 1b57807cba feat(ng2): add no_proxy to terminal proxy commands Qiu Yuzhou 2026-09-29 17:42:16 +08:00
  • 59f50380cf fix(home): show shell command in copy tooltip Qiu Yuzhou 2026-09-29 17:18:17 +08:00
  • e8c2e86068 feat(home): add shell-specific proxy environment commands Qiu Yuzhou 2026-09-29 16:42:50 +08:00
  • c50470dc89 refactor(settings): move silent-launch persistence to UserDefaults Qiu Yuzhou 2026-09-29 16:06:52 +08:00
  • 8b698a0bf1 feat(app): adaptive app form with window-following activation policy Qiu Yuzhou 2026-09-29 15:12:53 +08:00
  • 747c6f24af docs(agents): mark docs/research as point-in-time research reports Qiu Yuzhou 2026-09-29 12:04:30 +08:00
  • b8e5919bcd fix(runtime): converge proxy runtime only when contract bytes change Qiu Yuzhou 2026-09-29 11:57:37 +08:00
  • 53c84384a4 fix(system-proxy): skip write when applied values already match desired Qiu Yuzhou 2026-09-29 09:34:10 +08:00
  • e0f9016116 feat(servers): add form-based new-server creation with toolbar entry Qiu Yuzhou 2026-09-28 22:02:38 +08:00
  • a3ff3c4f92 Revert "fix(servers): align group action with list" Qiu Yuzhou 2026-09-28 21:07:51 +08:00
  • a668340a97 fix(ui): adjust safe area inset spacing for header and status card Qiu Yuzhou 2026-09-28 20:52:27 +08:00
  • 005f4db63b fix(ui): adjust sidebar column width for better layout Qiu Yuzhou 2026-09-28 20:48:47 +08:00
  • 55d2a58e3e fix(servers): align group action with list Qiu Yuzhou 2026-09-28 20:45:34 +08:00
  • 3108b3ad5a fix(ui): place add menu in sidebar toolbar Qiu Yuzhou 2026-09-28 19:36:53 +08:00
  • 0d0e74d59c feat(ui): menu-bar-only form with scene-based main window Qiu Yuzhou 2026-09-28 19:18:27 +08:00
  • c9384d2de9 fix(ui): fix filename for ServersView Qiu Yuzhou 2026-09-28 18:32:42 +08:00
  • 4f67c4a73c fix(ui): align add menu with sidebar toggle Qiu Yuzhou 2026-09-28 12:44:56 +08:00
  • 63e33724f7 feat(ui): consolidate workspace add actions Qiu Yuzhou 2026-09-28 11:45:58 +08:00
  • 92040baef0 fix(ng2): remove direct clipboard import shortcut Qiu Yuzhou 2026-09-28 10:54:34 +08:00
  • 67ced2674a fix(ng2): use canonical app name Qiu Yuzhou 2026-09-28 10:24:06 +08:00
  • 5abb6c6033 build: migrate NG2 to Swift 6 and clear warnings Qiu Yuzhou 2026-09-28 08:39:15 +08:00
  • 2946c34ddb refactor(settings): remove whole-form draft workflow Qiu Yuzhou 2026-09-28 08:09:35 +08:00
  • 8fd451b22e style(settings): simplify section headings Qiu Yuzhou 2026-09-28 07:47:22 +08:00
  • 93af9806df feat(settings): edit system proxy exceptions Qiu Yuzhou 2026-09-27 23:44:21 +08:00
  • cf1834a775 feat(ng2): add four-way listener mode Qiu Yuzhou 2026-09-27 19:53:53 +08:00
  • 5a05b8a661 refactor(ng2): use sslocal runtime defaults Qiu Yuzhou 2026-09-27 17:51:34 +08:00
  • 59665f9b76 fix(settings): align SOCKS label wording Qiu Yuzhou 2026-09-27 17:24:25 +08:00
  • b99087532c fix(settings): refine port editor alignment Qiu Yuzhou 2026-09-27 17:21:23 +08:00
  • e62ce007d7 feat(settings): save proxy ports independently Qiu Yuzhou 2026-09-27 16:56:30 +08:00
  • 8013e7942c feat(gitignore): add .gitignore for CodeGraph data files Qiu Yuzhou 2026-09-27 16:08:13 +08:00
  • 88af8bfdf2 feat(system-proxy): write HTTP/HTTPS alongside SOCKS Qiu Yuzhou 2026-09-27 15:49:03 +08:00
  • effae048b8 feat(settings): remove holistic preferences reset Qiu Yuzhou 2026-09-27 13:29:32 +08:00
  • 8aedf8c42e perf(acl): per-variant ACL files behind a stable active link Qiu Yuzhou 2026-09-27 03:14:38 +08:00
  • 851660f1c6 test: split real-process smoke into opt-in target Qiu Yuzhou 2026-09-27 01:11:48 +08:00
  • e25e211165 perf(test): default fixtures to short launch health window Qiu Yuzhou 2026-09-27 00:54:10 +08:00
  • d6ce1817dc test(fixture): allocate free listen ports instead of colliding with the running app Qiu Yuzhou 2026-09-27 00:32:31 +08:00
  • e01f6e96cc fix(agent): force builtin DNS resolver for sslocal Qiu Yuzhou 2026-09-27 00:16:11 +08:00
  • 2acaef60c8 fix(agent): register LaunchAgent via launchctl bootstrap with absolute path Qiu Yuzhou 2026-09-26 23:32:42 +08:00
  • d08f0583d7 fix(agent): write absolute ProgramArguments path before SMAppService registration Qiu Yuzhou 2026-09-26 23:13:26 +08:00
  • 354b0fb59e fix(agent): correct LaunchAgent ProgramArguments path for SMAppService Qiu Yuzhou 2026-09-26 23:04:26 +08:00
  • 973e8dd3b0 fix(proxy): tolerate legacy PAC preferredMode when decoding settings Qiu Yuzhou 2026-09-26 22:44:24 +08:00
  • a8cd6262c2 feat(proxy): remove PAC and accept ACL system proxy path Qiu Yuzhou 2026-09-26 21:57:48 +08:00
  • 9b32400b24 feat(proxy): add custom rule storage, validation, and ACL merge Qiu Yuzhou 2026-09-26 20:27:56 +08:00
  • 4a4535b947 feat(proxy): add GFWList proxy candidates for direct-when-unmatched rule mode Qiu Yuzhou 2026-09-26 19:20:09 +08:00
  • 7a59ca7827 feat(proxy): add China IPv4 CIDR direct candidates to rule mode Qiu Yuzhou 2026-09-26 18:16:44 +08:00
  • 827fb98be3 refactor(ng2): fix all swiftlint warnings Qiu Yuzhou 2026-09-26 17:13:31 +08:00
  • 120116627a feat(proxy): add built-in China domain rules and rule mode Qiu Yuzhou 2026-09-26 15:25:45 +08:00
  • f2e9cff69d feat(proxy): add ACL-backed global mode with local bypass Qiu Yuzhou 2026-09-26 12:33:35 +08:00
  • 39e25477bb feat(proxy): add ACL-backed direct mode Qiu Yuzhou 2026-09-26 10:16:50 +08:00
  • 41379bb1cb fix(ng2): review fixes for agent/system-proxy switch split Qiu Yuzhou 2026-09-26 00:55:52 +08:00
  • 398e8d84b6 feat(ng2): split agent and system proxy switches Qiu Yuzhou 2026-09-26 00:38:28 +08:00
  • 76b19ba935 feat(ng2): remove HTTP proxy toggle, inbound always on Qiu Yuzhou 2026-09-25 03:57:06 +08:00
  • 2400c7c81d feat(ng2): window title follows active destination Qiu Yuzhou 2026-09-25 03:18:59 +08:00
  • be48a39f64 fix(ng2): restore workspace window chrome Qiu Yuzhou 2026-09-25 01:38:29 +08:00
  • 1c5e4e5e23 feat(docs): add research on sslocal password handling via environment variables Qiu Yuzhou 2026-09-25 00:51:05 +08:00
  • 4fcfa1242c fix(ng2): disable SwiftLint identifier name warnings in SubscriptionRefreshStatus Qiu Yuzhou 2026-09-25 00:05:22 +08:00
  • b8f80492e7 style(editorconfig): add configuration for Swift files Qiu Yuzhou 2026-09-25 00:02:07 +08:00
  • ad74b23cb6 fix(ng2): AppKit-owned workspace window opens at launch Qiu Yuzhou 2026-09-24 23:51:48 +08:00
  • a0137651fa fix(ng2): present workspace window on every launch Qiu Yuzhou 2026-09-24 23:07:12 +08:00
  • cb4ad5a87d feat(ng2): hybrid app form with foreground workspace window Qiu Yuzhou 2026-09-24 22:53:11 +08:00
  • ab6acf8912 refactor(ng2): remove UDP relay preference Qiu Yuzhou 2026-09-24 22:00:58 +08:00
  • 620c929450 docs(research): survey proxy rule sources Qiu Yuzhou 2026-09-24 21:41:33 +08:00
  • fb6be460b8 docs(research): assess sslocal ACL as PAC alternative Qiu Yuzhou 2026-09-24 21:40:51 +08:00
  • 3842bdc97c fix(ng2): remove obsolete settings menu item Qiu Yuzhou 2026-09-24 21:03:28 +08:00
  • f7edceee30 feat(ng2): restyle diagnostics and move export to header (#58) Qiu Yuzhou 2026-09-24 19:37:16 +08:00
  • 1d34c0b3b3 feat(ng2): regroup settings into card sections with header actions (#57) Qiu Yuzhou 2026-09-24 19:35:40 +08:00
  • f556c5fdb6 feat(ng2): rework subscriptions into cards with header actions (#56) Qiu Yuzhou 2026-09-24 19:34:03 +08:00
  • 139944dba2 feat(ng2): restyle server detail and catalog rows (#55) Qiu Yuzhou 2026-09-24 19:32:24 +08:00
  • 75de3fbac9 feat(ng2): add home view with mode, target tree and quick actions (#54) Qiu Yuzhou 2026-09-24 19:30:49 +08:00
  • 678bea6d3b feat(ng2): rebuild main window shell with sidebar navigation (#53) Qiu Yuzhou 2026-09-24 19:29:08 +08:00
  • a70165f5fb feat(ng2): isolate clipboard and diagnostic export effects (#51) Qiu Yuzhou 2026-09-24 13:32:15 +08:00
  • 0a1aa9a725 feat(ng2): add workspace route module Qiu Yuzhou 2026-09-24 09:02:25 +08:00
  • 63dac7a01b refactor(ng2): deepen CatalogWorkflow into application module Qiu Yuzhou 2026-09-24 01:36:14 +08:00
  • c76ba93221 feat(ng2): finalize settings workflow persistence boundary Qiu Yuzhou 2026-09-24 00:20:42 +08:00
  • 7951d5aa65 feat(ng2): add proxy control workflow as unified UI seam Qiu Yuzhou 2026-09-23 20:54:08 +08:00
  • dc7f3d5b61 test(ng2): clean up Keychain records after tests Qiu Yuzhou 2026-09-23 19:32:44 +08:00
  • 9fc6446237 refactor(ng2): remove manual and external PAC Qiu Yuzhou 2026-09-23 18:47:15 +08:00
  • e65d7112f1 refactor(ng2): unify committed catalog source Qiu Yuzhou 2026-09-23 16:47:13 +08:00
  • 6c98930999 refactor(ng2): unify runtime facts and proxy mode availability Qiu Yuzhou 2026-09-23 11:48:13 +08:00
  • fe4c3e166e refactor(ng2): centralize typed failure presentation Qiu Yuzhou 2026-09-23 10:51:26 +08:00
  • 9d0001cfdc refactor(ng2): move CredentialWriteJournal to Domain Qiu Yuzhou 2026-09-23 08:46:40 +08:00
  • 713c627deb refactor(ng2): deepen settings draft projection for new settings UI (#44) Qiu Yuzhou 2026-09-22 22:28:39 +08:00
  • cdf1c8ab8f refactor(ng2): deepen catalog policy into workflow seam Qiu Yuzhou 2026-09-22 20:41:18 +08:00
  • fd9be86149 refactor(ng2): add diagnostics workflow module as single UI-facing seam Qiu Yuzhou 2026-09-22 19:22:31 +08:00
  • 3df1624d91 refactor(ng2): add settings workflow module as single UI-facing seam Qiu Yuzhou 2026-09-22 17:36:40 +08:00
  • e242bbf426 feat(ng2): persist proxy mode selection and drop enabled-modes Qiu Yuzhou 2026-09-22 17:36:24 +08:00
  • 376b648ac4 refactor(login): independent opt-in login item Qiu Yuzhou 2026-09-22 17:32:46 +08:00
  • a7b1b1629a refactor(settings): remove proxy mode selector Qiu Yuzhou 2026-09-22 16:31:14 +08:00
  • 3dc6043dc6 refactor(ng2): remove system-level shortcuts Qiu Yuzhou 2026-09-22 16:16:58 +08:00
  • 46ebe1d835 feat(ng2): simplify Legacy import and isolate default ports (#42) Qiu Yuzhou 2026-09-22 13:16:44 +08:00
  • 2fe401cd50 feat(ng2): add catalog workflow module as single UI-facing seam (#41) Qiu Yuzhou 2026-09-22 11:39:07 +08:00
  • 374f0da4d7 feat(ng2): decouple catalog commit from proxy runtime sync (#40) Qiu Yuzhou 2026-09-22 09:48:38 +08:00