9 Commits
Author SHA1 Message Date
Khaled Ahmed b715bea03d chore: bump to 0.3.7 with native tray exe
- version 0.3.6 → 0.3.7
- native tray: dotnet WinForms tray (native/tray) built to bin/omp-web-tray.exe (171KB, single-file, no hidden wscript heap)
- install-tray: shortcuts now prefer native exe (bin/omp-web-tray.exe -OpenBrowser/-Startup) with wscript fallback; task creation best-effort
- windows-service: start prefers native exe, isRunning also probes http://127.0.0.1:port/api/app-update fallback
2026-09-02 15:01:21 +03:00
Khaled Ahmed 70dcdf64d0 feat(windows): headless service via Task Scheduler for reliable autostart
- add scripts/windows/omp-web-service.ps1 (no Forms, headless, auto-restart, health probe)
- install-tray.ps1: register Scheduled Task 'omp-web' ONLOGON (schtasks + Register-ScheduledTask fallback) and Startup .lnk; handles NoAutostart
- uninstall-tray.ps1: also terminate omp-web-service.ps1 and delete Scheduled Task
- lib/windows-service: startTrayService prefers schtasks /run, stop also ends task + kills service port, isTrayProcessRunning now watches both *tray* and *service* ps1, getWebServiceStatus fallback fetch catches hidden-wscript heap miss
2026-09-02 14:43:56 +03:00
Khaled Ahmed d2e69bbc97 fix(windows-service): fallback isRunning via HTTP probe and fix tray ps1 encoding
- lib/windows-service: isRunning now also probes http://127.0.0.1:port/api/app-update (1500ms) when WMI tray detection misses hidden wscript powershell; covers manual node start
- scripts/windows/omp-web-tray.ps1: strip emoji (●🌐📋🔄📁☑⏹📄⚙🚪▶) to avoid UTF-8 without BOM parse error (Unexpected token '<' at 429) on powershell -File
- scripts/windows/launch-tray.vbs: add -Sta (STA thread required for System.Windows.Forms NotifyIcon)
2026-09-02 13:24:22 +03:00
Richard G 5af9e13df5 feat: add macOS launchd installer 2026-09-02 01:10:16 +03:00
Khaled Ahmed 4da87723bd fix(windows-service): handle OneDrive desktop path variants and clean up CLI logs 2026-09-01 20:59:03 +03:00
Khaled Ahmed 132157538c fix(worktrees): repair Windows backslash gitdir, robust project resolution and optimistic UI refresh 2026-09-01 19:39:15 +03:00
Khaled AhmedandKhaled Ahmed de3eab0fec feat(windows): add background service, system tray manager, and desktop shortcuts (#42)
* feat(windows): add background service, system tray manager, and desktop shortcuts

Implements native Windows background service and system tray management:

- Zero-flicker VBScript runner (scripts/windows/launch-tray.vbs) with SW_HIDE
- Native PowerShell tray manager (scripts/windows/omp-web-tray.ps1) with single-instance mutex, health monitoring, crash auto-restart, and interactive context menu
- Multi-resolution icon generation (public/omp-web.ico) and shortcut installers (scripts/windows/install-tray.ps1, uninstall-tray.ps1)
- Library module lib/windows-service.ts and standalone CLI bin/omp-web-tray.js
- CLI flags in ompweb (--install-tray, --uninstall-tray, --tray)
- REST API app/api/windows-service/route.ts and Settings UI card in components/SettingsConfig.tsx with i18n
- Unit tests and npm scripts for tray installation and lifecycle

* ci: add PR verification workflow with rules and matrix validation

- Trigger on pull_request and main branch push with fast cancellation
- Matrix verification across ubuntu-latest and windows-latest
- Strict gates: typecheck (tsc), lint (eslint), unit & integration test suite, and production build check
- Windows-specific System Tray CLI and shortcut installation/removal validation
- PR rules checking for forbidden secrets/temporary files and Conventional Commits title format

* test: stabilize cross-platform path assertions and async timer event loop

- Keep active timer reference in rpc-process-runtime timeout test to prevent event loop premature drainage
- Use samePath helper for cross-platform projectRoot and worktree path assertions on Windows short 8.3 paths

* fix(worktree): canonicalize git rev-parse paths with realPathOrSelf

Resolves 8.3 short paths from git rev-parse on Windows temp directories so samePath comparison succeeds during project resolution

* test: configure safe.directory in git test helpers

Adds safe.directory=* to git test fixtures so temp-directory git repos execute without dubious ownership errors in CI

* fix(paths): support Windows 8.3 short paths and realpath comparison in samePath

* test(project-registry): use canonical resolved projectRoot in mergeProjects test

* fix(windows-service): exclude probe PID and use taskkill process tree kill

- Exclude probe process PID () when querying and stopping tray processes
- Terminate entire process tree using taskkill.exe /PID ... /T /F in stopTrayService and uninstall-tray.ps1
- Support OneDrive Desktop folder redirection in getWindowsShortcutPaths

---------

Co-authored-by: Khaled Ahmed <[email protected]>
2026-09-01 17:39:11 +03:00
Alex Yang edf534d0f1 Revert "feat: add standalone executable build support with pkg bundler"
This reverts commit e805c40b41.
2026-03-24 13:23:18 +08:00
Alex Yang e805c40b41 feat: add standalone executable build support with pkg bundler
- Add build:dist scripts for creating platform-specific executables (macOS, Linux, Windows)
- Configure Next.js standalone output mode with external packages
- Downgrade Next.js from 16.2.1 to 14.2.35 for pkg compatibility
- Add @yao-pkg/pkg for executable bundling
- Create build-dist.mjs script with multi-step build process:
  - Patch server.js to remove process.chdir and set default port to 3030
  - Patch webpack route files to replace
2026-03-23 23:42:30 +08:00