Changelog
View on GitHubAll notable changes to the Proxync (Portly) workspace studio project are documented here.
[fix/readme-cross-platform-roadmap-refresh] - 2026-09-19 (README Modernization, Cross-Platform Alignment & Unified Roadmap)
- Feature Summary:
- Cross-Platform Status Alignment: Updated
README.mdto reflect full desktop support across Windows, Linux, and macOS with active platform badges and native bundle targets (.msi/.exe,.deb/.AppImage,.dmg/.app). - Release Feature Parity: Documented native origin relay (
relay.proxync.dev:2222), resilient standby mode, real-time AST schema drift detection, OpenAPI 3.0 auto-generation, Postman-grade API workbench, multi-language code snippets, process group isolation (setpgid(0, 0)), GUI toolchain PATH injection, and in-app auto-updates. - Verified Localtunnel Decommissioning: Verified zero trace of legacy localtunnel remains in documentation.
- Unified Milestone-Driven Roadmap: Consolidated roadmap into a single continuous checklist tracking macOS/Linux stabilization, CLI companion, Enterprise Edition (teasing autonomous AI agent background execution), request mocking, and automated test synthesis.
- Cross-Platform Status Alignment: Updated
- Modified Files:
README.mdCHANGELOG.md
[196-fixrecon-preserve-process-names-and-command-paths-containing-whitespace-on-macos] - 2026-09-19 (Preserve Process Names & Command Paths with Whitespace on macOS #196)
- Feature Summary:
- Native Darwin Kernel Path Lookup (
proc_pidpath): Replaced Darwinps -o comm=16-char truncation and $O(N)$lsofsubprocess loops with in-processproc_pidpathsyscalls, resolving canonical paths with spaces in microseconds. - Uncut Command Parsing: Switched to
ps -o pid=,ppid=,command=, ensuring numeric PID/PPID tokens and preserving the entire command line verbatim without delimiter collisions. - Quote-Aware Tokenizer (
tokenize_cmd): Added a quote-preserving tokenizer so commands and paths with spaces (e.g.node "/path/with spaces/server.js") resolve correctly inwalk_up_to_project_root. - Daemon Filtering & Fallback: Hardened scanner fallback with
tokenize_cmdand addedgoogle chromeandvisual studio codetois_system_process_name. - Regression Tests: Added unit tests covering Darwin FFI path resolution, command tokenization, and quoted paths with spaces.
- Native Darwin Kernel Path Lookup (
- Modified Files:
packages/desktop/src-tauri/src/recon.rsCHANGELOG.md
[fix/ci-release-workflow-hardening] - 2026-09-19 (CI Release Workflow — Windows & Linux Hardening)
- Feature Summary:
- Rust Toolchain Fix: Added explicit
toolchain: stabletodtolnay/rust-toolchainin bothprepare-release.ymlandrelease.yml, eliminating the runner setup failure caused by missing required parameter. - macOS Removed from CI Matrix: Removed
macos-latestfromtest-matrixandbuild-taurijobs. macOS.dmgbuilt and signed locally by maintainer, manually attached to GitHub Draft Release before publishing. - Apple Secrets Cleaned Up: Removed unused
APPLE_*env vars fromrelease.ymlto eliminate missing-secret CI warnings. - Fast Sanity Build: Added
--no-bundletoprepare-release.ymlsanity step — cuts pre-flight CI from ~12min to ~3min. - Root Package Version Sync: Added
npm versioncall for rootpackage.jsonto keep monorepo root in sync withpackages/desktopon version bump. - Updated Comments & PR Template: Header comments and PR template body updated to accurately reflect Windows + Linux automated CI with manual macOS DMG workflow.
- Rust Toolchain Fix: Added explicit
- Modified Files:
.github/workflows/prepare-release.yml.github/workflows/release.yml
[fix/relay-dns-latency-hardening] - 2026-09-18 (CodeQL CWE-20 URL Sanitization & Tunnel Metadata Hardening)
- Feature Summary:
- CodeQL CWE-20 Incomplete URL Substring Sanitization Fix: Centralized tunnel metadata extraction into
getTunnelMetadata()inSharedComponents.tsx. Replaced naive substring checks (.includes('trycloudflare.com'),.includes('proxync')) with strict hostname matching (.endsWith('.trycloudflare.com'),.endsWith('.proxync.dev')) to prevent domain spoofing attacks. - URL Parsing Safety & Crash Prevention: Wrapped URL parsing in safe try/catch blocks with automatic
https://protocol prefixing acrossWelcomeView,WorkspaceDashboardView, andProcessView, completely eliminating unhandlednew URL()runtime exceptions on malformed or protocol-less URLs.
- CodeQL CWE-20 Incomplete URL Substring Sanitization Fix: Centralized tunnel metadata extraction into
- Modified Files:
packages/desktop/src/components/views/ProcessView.tsxpackages/desktop/src/components/views/SharedComponents.tsxpackages/desktop/src/components/views/WelcomeView.tsxpackages/desktop/src/components/views/WorkspaceDashboardView.tsxCHANGELOG.md
[fix/relay-dns-latency-hardening] - 2026-09-18 (Relay DNS Resolution, SSRF Hardening & Tunnel Latency Optimization)
- Feature Summary:
- Dynamic Relay DNS Resolution: Migrated hardcoded Azure IP
104.208.83.199torelay.proxync.devandDEFAULT_PROXYNC_SSH_HOSTacross backend (recon.rs,tunnel.rs) and frontend, allowing seamless zero-downtime server migrations without requiring client app updates. - SSRF & TCP Latency Probing Whitelist: Hardened
probe_tcp_latencywithis_permitted_probe_host, restricting TCP socket probes strictly to loopback (127.0.0.1,localhost,::1) and Proxync relay endpoints (relay.proxync.dev,api.proxync.dev,proxync_native). Blocks malicious or arbitrary intranet probing and SSRF port scans against private IP ranges (192.168.x.x,10.x.x.x,169.254.169.254). - Comprehensive Latency Probing & Host Resolution Unit Tests: Added unit test coverage in
recon.rs(test_probe_tcp_latency_local,test_probe_tcp_latency_ipv6_and_probe_port,test_probe_tcp_latency_rejects_unauthorized_host,test_probe_tcp_latency_permitted_hosts,test_resolve_probe_target_internal) ensuring zero environment variable mutation and correct bracket handling for IPv6. - Tunnel Handshake Stabilization Loop: Refactored
open_native_tunnelwait loop to a reliable 1500ms timeout with high-frequency 50ms early-crash polling, completely eliminating vestigial inner break logic while ensuring reverse-proxy routing is fully established before user clicks. - Custom Domain Verification Resilience: Upgraded DNS-over-HTTPS token verification to use Google DoH with Cloudflare DoH fallback, added apex domain query fallback when
_proxync.domainquery returns empty, and replaced silent error swallowing with structuredSTORAGElogging. - Dashboard Provider Badges & UI Consistency: Enhanced tunnel cards in
WorkspaceDashboardViewto accurately distinguish between Cloudflare, Proxync Native, and Custom Domain tunnels with respective icons and badges; bound Vite development host default to127.0.0.1.
- Dynamic Relay DNS Resolution: Migrated hardcoded Azure IP
- Modified Files:
packages/desktop/src-tauri/src/lib.rspackages/desktop/src-tauri/src/recon.rspackages/desktop/src-tauri/src/tunnel.rspackages/desktop/src/App.tsxpackages/desktop/src/components/views/Dialogs.tsxpackages/desktop/src/components/views/ProcessView.tsxpackages/desktop/src/components/views/WelcomeView.tsxpackages/desktop/src/components/views/WorkspaceDashboardView.tsxpackages/desktop/src/lib/api.tspackages/desktop/src/lib/types.tspackages/desktop/vite.config.tsCHANGELOG.md
[fix/macos-port-scan-filtering] - 2026-09-16 (macOS Native Port Scanner & Ghost Port Daemon Filtering)
- Feature Summary:
- Native macOS Port Scanner (
MacOsScanner): Implemented dedicated 3-stage platform scanner for macOS replacing the generic UnixFallbackScannerstub. Integrateslsof -iTCP -sTCP:LISTEN -P -nand fullpscommand inspection to bypass macOS 16-character process name truncation (e.g.ControlCenter->ControlCe). - Ghost Port Daemon & Noise Filtering: Hardened system and infrastructure process blacklists with macOS-specific system daemons (
ControlCenter,rapportd,airplay,sharingd,identityservicesd,launchd,remoted,cloudpaird,universalcontrol,megasync,dropbox,agy) and system directory paths (/System/Library/,/usr/libexec/,/usr/sbin/). Filters out internal/system daemons from port scan results so only active user dev servers are presented. - CWD Resolution via Native lsof: Implemented
get_process_cwdfor macOS using unprivilegedlsof -a -p <pid> -d cwd -Fnto dynamically resolve working directories for detected services. - Non-Blocking Async Execution: Refactored
scan_ports,scan_processes, andresolve_process_directoryTauri commands withtauri::async_runtime::spawn_blockingand decoupledRECON_PROCESS_CACHEmutex locking to prevent blocking the async runtime during subprocess execution. - Cross-Platform Daemon Classification Test: Removed
#[cfg(target_os = "macos")]gate from daemon filtering test; renamed totest_daemon_filtering_rulesand added negative assertions so Windows and Linux CI now validate classification logic. - Dead
#[cfg]Cleanup: Removed redundant stacked#[cfg]attribute onimpl PlatformScanner for FallbackScanner— now matches the single correct predicate on the struct. - Tech Debt Documented: Added
// ponytail:comment onMacOsScanner::scan_processesexplaining the known double-lsoflimitation and the future trait-level fix path.
- Native macOS Port Scanner (
- Modified Files:
packages/desktop/src-tauri/src/recon.rspackage-lock.jsonCHANGELOG.md
[fix/develop-subprocess-group-termination] - 2026-09-15 (Subprocess Group Termination on Linux & Zero-Orphan SSH Tunnels #182)
- Feature Summary:
- Subprocess Group Leadership on Unix (#182): Configured
cmd.as_std_mut().process_group(0)inopen_native_tunnelunder#[cfg(unix)]. Spawnssshas the leader of its own isolated process group (PGID == PID) via POSIXsetpgid(0, 0). - Zero-Orphan SSH Process Teardown: Fixed a critical bug where
kill_child_process_treeexecutingkill -KILL -- -{pid}failed withESRCH("No such process") because SSH previously inherited Proxync's parent group rather than leading its own. When tunnels close or the app terminates, the kernel now atomically deliversSIGKILLto the entire process group (SSH and any internal child/daemon workers), preventing orphaned processes from holding port 2222 connections open. - Provider Symmetry: Aligns
open_native_tunnelwithopen_cloudflare_tunnelfor uniform child process lifecycle management across all tunnel providers. - Automated Regression Guard: Added
test_kill_child_process_tree_with_process_groupunit test intunnel.rsvalidating thatkill_child_process_treecleanly terminates processes spawned withprocess_group(0).
- Subprocess Group Leadership on Unix (#182): Configured
- Modified Files:
packages/desktop/src-tauri/src/tunnel.rsCHANGELOG.md
[security/scorecard-dependabot] - 2026-09-14 (Supply Chain Security, OpenSSF Scorecard, CodeQL & Dependabot CI Workflows #169)
- Feature Summary:
- Automated Dependency Updates (
.github/dependabot.yml): Configured Dependabot for npm, Cargo, and GitHub Actions package ecosystems with scheduled version checks and grouping. - Supply Chain Security & OpenSSF Scorecard (
.github/workflows/scorecard.yml): Integrated OpenSSF Scorecard automated analysis assessing repository security posture, branch protection, dangerous workflows, and dependency pinning with badge added toREADME.md. - Static Application Security Testing via CodeQL (
.github/workflows/codeql.yml): Implemented GitHub CodeQL advanced static analysis covering JavaScript/TypeScript and Rust with intelligent file change path filters. - Continuous Integration Pipeline (
.github/workflows/ci.yml): Created multi-platform CI workflow testing frontend TypeScript/Vite compilation and backend Tauri builds. - Multi-Target Release Pipeline Hardening (
prepare-release.yml&release.yml): Configured packaging targets (deb, appimage, nsis, dmg), updater json inclusion, and pre-release validation checks. - Vulnerability Disclosure Policy (
SECURITY.md): Formally defined security reporting protocols, supported versions, and disclosure response timelines. - Target Bundle Packaging (
tauri.conf.json): Configured target desktop bundle types (deb, appimage, nsis, dmg) and active bundle metadata.
- Automated Dependency Updates (
- Modified Files:
.github/dependabot.yml.github/workflows/ci.yml.github/workflows/codeql.yml.github/workflows/prepare-release.yml.github/workflows/release.yml.github/workflows/scorecard.ymlREADME.mdSECURITY.mdpackages/desktop/src-tauri/tauri.conf.jsonCHANGELOG.md
[fix/develop-gui-environment-path] - 2026-09-14 (Packaged App GUI Environment PATH Injection for Cloudflare & Subprocess Tunnels)
- Feature Summary:
- Packaged App Desktop Environment PATH Resolution: Fixed a critical failure where Cloudflare tunnels (
open_cloudflare_tunnel) and Native SSH tunnels (open_native_tunnel) fail to spawn (os error 2: No such file or directory) when running inside packaged Linux and macOS desktop builds (.deb,.rpm, AppImage,.dmg,.app). - Non-Login Desktop Session Root Cause: Desktop display managers (GNOME, KDE Plasma, Wayland, systemd user sessions, macOS Finder/LaunchServices) spawn applications without sourcing interactive shell startup files (
~/.bashrc,~/.zshrc), leaving GUI processes with only minimal default system paths (/usr/bin:/bin). - Comprehensive Toolchain Coverage: Added
gui_toolchain_path()helper that dynamically injects user-space Node version managers and toolchain directories into the child subprocess environment before spawning:- User local binaries:
$HOME/.local/bin - Node & JS package managers: PNPM (
$HOME/.local/share/pnpm), Bun ($HOME/.bun/bin), Volta ($HOME/.volta/bin), ASDF ($HOME/.asdf/shims) - NVM: Respects
$NVM_BIN,$HOME/.nvm/current/bin, and dynamically scans$HOME/.nvm/versions/nodeselecting the highest installed Node version - macOS & Linux Homebrew: Apple Silicon default (
/opt/homebrew/bin) and Intel/Linux default (/usr/local/bin) - Preserves existing system
$PATH(/usr/bin,/bin, etc.) at the end of the search hierarchy.
- User local binaries:
- CWE-426 Untrusted Search Path Hardening: Filtered out all empty string segments prior to joining with
:, preventing double colons (::) which in POSIX would inadvertently execute binaries from the current working directory (.). - Cross-Platform Safety & Zero Overhead: Gated under
#[cfg(not(target_os = "windows"))]and called inside#[cfg(unix)], leaving Windows execution (cmd.exe /C npxwithCREATE_NO_WINDOW) intact without semicolon/colon delimiter conflicts. Avoids slow$SHELL -ilcstartup stalls and POSIXstd::env::set_varmulti-threading race conditions by scoping PATH injection strictly to the child command.
- Packaged App Desktop Environment PATH Resolution: Fixed a critical failure where Cloudflare tunnels (
- Modified Files:
packages/desktop/src-tauri/src/tunnel.rs
[fix/auto-update] - 2026-09-14 (Auto-Updater IPC Permissions, Manifest Artifacts & Automated Relaunch Flow)
- Feature Summary:
- Tauri v2 Process Relaunch Capabilities (
default.json): Addedprocess:allow-restartandprocess:allow-exittocapabilities/default.json. Resolves fatal Tauri IPC security permission denial (Operation not permitted (os error 1)) when callingrelaunch()from@tauri-apps/plugin-processfollowing an update installation. - Tauri v2 Updater Artifact Generation (
tauri.conf.json): Enabled"createUpdaterArtifacts": trueunder"bundle"intauri.conf.json. Instructs the Tauri build engine to output Minisign signatures (.sig) and the update manifest metadata, resolving missing updater assets in production release builds. - Dual-Manifest Endpoint Resolution (
tauri.conf.json): Updatedplugins.updater.endpointsto query the standard Tauri v2 manifestlatest.jsonfirst, retainingupdater.jsonas a backward-compatible fallback to prevent HTTP 404 Not Found aborts against GitHub release URLs. - Automated Graceful Relaunch with Race Protection (
App.tsx): Replaced the previous manual two-step toast interaction with an automated 2-second grace countdown ("Update installed! Restarting Proxync in 2 seconds...") that invokesrelaunch()automatically upon installation completion. Hardened with arestartedstate lock and timer cancellation to prevent duplicate IPC restart calls if the user clicks "Restart Now" immediately. - Deduplicated Installation Pipeline (
App.tsx): Extracted a unifiedexecuteDownloadAndInstallhelper shared across both forced (Major/CVE) and optional (Patch) update paths, eliminating 50 lines of duplicate event-streaming and error-handling code. - Interactive "Check for Updates" Control (
SettingsView.tsx&App.tsx): Added a dedicated "Check for updates" button to the Automatic Updates setting tile inSettingsView, featuring a spinning sync animation, active-check disablement, dynamic app version display (v0.2.2), and live user feedback (🔍 Checking...,✅ Proxync is up to date, or server error details). - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Tauri v2 Process Relaunch Capabilities (
- Modified Files:
packages/desktop/src-tauri/capabilities/default.jsonpackages/desktop/src-tauri/tauri.conf.jsonpackages/desktop/src/App.tsxpackages/desktop/src/components/views/SettingsView.tsxCHANGELOG.md
[fix/develop-symlink-recursion] - 2026-09-14 (Symlink Infinite Recursion & Stack Overflow Defense in scan_directory #159)
- Feature Summary:
- Canonical Path Cycle Detection (#159): Solved infinite recursion and fatal
SIGSEGV/stack overflow crashes caused by self-referential or circular symlinks (link -> .,.venv/lib64 -> lib,pnpmmonorepos) during project route scanning. Traversal tracks resolved physical paths via a thread-safeHashSet<PathBuf>seeded with the canonicalized root directory. - Hard Recursion Depth Ceiling (
MAX_SCAN_DEPTH = 16): Enforced a root-relative depth ceiling terminating recursion at depth 16, providing an unbreakable stack guardrail against deep hierarchies. - Preserved Legitimate Symlinks & Single-File Route Links: Unlike naive blanket symlink skipping, route scanning continues to transparently inspect legitimate cross-package symlinked directories and symlinked single source files (e.g.
routes.ts -> ../shared/routes.ts). - Path Slicing & UTF-8 Panic Hardening: Replaced fragile
[root_len..]manual byte-slicing withPath::strip_prefixandto_string_lossy, eliminating out-of-bounds panics on non-UTF-8 filesystem entries. - Graceful Error Recovery: Wrapped directory read and entry lookups in resilient
matchguards so permission-denied directories or broken symlinks are skipped cleanly without aborting the entire workspace scan. - Expanded Ignore List: Expanded skip filter to automatically bypass
.venv,venv,env,.next,.nuxt,.turbo,dist,out,.idea, and.vscodealongsidenode_modulesand.git. - Automated Test Suite: Added 4 unit and integration tests in
storage.rsvalidating circular symlink termination, valid symlinked directory discovery, symlinked single-file route discovery, and depth 16 truncation limits using isolatedtempfilefixtures. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Canonical Path Cycle Detection (#159): Solved infinite recursion and fatal
- Modified Files:
packages/desktop/src-tauri/Cargo.tomlpackages/desktop/src-tauri/Cargo.lockpackages/desktop/src-tauri/src/storage.rsCHANGELOG.md
[fix/decomission-LT] - 2026-09-13 (Decommission Localtunnel & Python HTTP Server Reconnaissance)
- Feature Summary:
- Complete Localtunnel (LT) Decommissioning: Removed the legacy
open_localtunnelTauri command andshareProcessLocaltunnelpipeline fromApp.tsx. Replaced the provider-specific process table with generalizedSPAWNED_TUNNEL_PROCESSESintunnel.rs. Purged Localtunnel tabs, options, badges, and documentation acrossDialogs.tsx,DocsView.tsx,WelcomeView.tsx,ProcessView.tsx,TerminalDrawer.tsx,logger.ts, andREADME.md. - Python HTTP Server Reconnaissance (
recon.rs): Addedhttp.serverdetection in framework scanner to automatically recognize Python built-in HTTP server instances as"Python HTTP Server". - Process Discovery Concurrency Fix (
App.tsx): GuaranteeddiscoveringRef.current = falseinsidediscoverProcessesfinallyblock to prevent scanner concurrency lockups following unhandled errors.
- Complete Localtunnel (LT) Decommissioning: Removed the legacy
- Modified Files:
README.mdpackages/desktop/src-tauri/src/lib.rspackages/desktop/src-tauri/src/recon.rspackages/desktop/src-tauri/src/tunnel.rspackages/desktop/src/App.tsxpackages/desktop/src/components/ui/TerminalDrawer.tsxpackages/desktop/src/components/views/Dialogs.tsxpackages/desktop/src/components/views/DocsView.tsxpackages/desktop/src/components/views/ProcessView.tsxpackages/desktop/src/components/views/WelcomeView.tsxpackages/desktop/src/lib/logger.tsCHANGELOG.md
[fix/161-OpenSSH] - 2026-09-13 (OpenSSH Ephemeral Key Permissions & BatchMode Hang on Linux #161)
- Feature Summary:
- POSIX Ephemeral Key Permissions (#161): Enforced strict
0o700mode permissions on temporary SSH directories (proxync_ssh_<id>) on Unix systems viastd::os::unix::fs::PermissionsExt, eliminating OpenSSH client connection aborts triggered by overly permissive directory modes. - Headless Non-Interactive BatchMode & Stdio Hardening: Appended
-o BatchMode=yesto prevent background OpenSSH subcommands from blocking indefinitely on interactive passphrase/password prompts. Nullifiedstdin,stdout, andstderr(Stdio::null()) acrossssh-keygenandsshexecution to eliminate I/O pipe buffer deadlocks. - Windows ACL Permission Alignment: Configured Windows
icaclsto grant full control (:(F)) with hidden console flags and nullified stdio streams.
- POSIX Ephemeral Key Permissions (#161): Enforced strict
- Modified Files:
packages/desktop/src-tauri/src/tunnel.rs
[fix/feat-logger] - 2026-09-13 (Startup OS Environment Diagnostics, High-Precision Timestamps & Log Rotation #167)
- Feature Summary:
- Diagnostic System Banner & Hardware Fingerprinting (#167): Integrated
os_infocrate (v3.15) to detect host platform, kernel/distribution version, CPU architecture, bitness, local hostname, network IP, WebView engine version, and process PID on startup. Emits a structured ASCII diagnostic banner intoapp.logduring startup, log rotations, and log history resets. - High-Precision ISO 8601 UTC Timestamping: Implemented custom zero-dependency RFC 3339 UTC timestamping (
YYYY-MM-DDTHH:MM:SS.mmmZ) across backend and frontend log writers. - Dual-Stream Log Rotation & Panic Telemetry: Implemented file-size based log rotation archiving
app.logat 5MB (app.log.old) andtraffic.logat 10MB (traffic.log.old). Registeredstorage::install_panic_hook()to capture Rust panic dumps with stack traces directly intoapp.log. - System Telemetry IPC (
get_system_info): Addedget_system_infoTauri command and frontend typing intypes.tsandlogger.tsfor unified environment diagnostic telemetry.
- Diagnostic System Banner & Hardware Fingerprinting (#167): Integrated
- Modified Files:
packages/desktop/src-tauri/Cargo.tomlpackages/desktop/src-tauri/Cargo.lockpackages/desktop/src-tauri/src/lib.rspackages/desktop/src-tauri/src/storage.rspackages/desktop/src/App.tsxpackages/desktop/src/lib/logger.tspackages/desktop/src/lib/types.ts
[fix/multi-platform-cors] - 2026-09-12 (Multi-Platform User-Agent in Native CORS Bypass Engine #163)
- Feature Summary:
- OS-Adaptive User-Agent Header (#163): Replaced hardcoded Windows
User-Agentwith compile-time platform detection (default_user_agent()), dynamically emitting Windows (Windows NT 10.0; Win64; x64), macOS (Macintosh; Intel Mac OS X 10_15_7), or Linux (X11; Linux x86_64) strings containingCARGO_PKG_VERSION. - Header Injection Cleanliness: Streamlined
execute_http_requestby relying on the client-level default user agent while allowing customUser-Agentheader overrides without duplicate injection. - Cross-Platform Target Unit Tests: Added unit tests verifying correct User-Agent string formatting across Windows, macOS, and Linux targets.
- OS-Adaptive User-Agent Header (#163): Replaced hardcoded Windows
- Modified Files:
packages/desktop/src-tauri/src/http.rs
[fix/develop-tauri-plugin-dialog] - 2026-09-12 (Universal Native File Dialogs via tauri-plugin-dialog #164)
- Feature Summary:
- Universal Linux & Cross-Platform Support (#164): Replaced platform-specific external shell executions (
/usr/bin/zenityon Linux,powershell.exeon Windows,osascripton macOS) with Tauri v2 officialtauri-plugin-dialogplugin. - Linux Desktop Portal Integration: Uses D-Bus XDG Desktop Portal (
org.freedesktop.portal.FileChooser) under the hood, natively supporting KDE Plasma, Sway, Hyprland, and Wayland environments without requiring GNOME GTKzenitybinaries. - Security & Vulnerability Elimination: Eliminates command-injection vectors from string-interpolated PowerShell and AppleScript calls.
- Clean Native IPC Contract: Injected
tauri::AppHandleintosave_support_bundle_dialogcommand instorage.rswith zero frontend IPC contract breakage (invoke("save_support_bundle_dialog")remains unchanged). - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Universal Linux & Cross-Platform Support (#164): Replaced platform-specific external shell executions (
- Modified Files:
packages/desktop/package.jsonpackages/desktop/src-tauri/Cargo.tomlpackages/desktop/src-tauri/Cargo.lockpackages/desktop/src-tauri/capabilities/default.jsonpackages/desktop/src-tauri/src/lib.rspackages/desktop/src-tauri/src/storage.rsCHANGELOG.md
[fix/develop-postman-collections-shortcuts] - Continuation (Postman-Grade Session State #154)
- Feature Summary:
- App Restart & Reload Persistence (#154): Introduced synchronous `localStorage` bookmarking for the Playground. The active request is strictly persisted across app restarts and workspace switches. Boot initialization now reads synchronously inside `useState` to completely eliminate React FOUC (Flash of Unstyled Content).
- Strict Postman-Grade Session Tracking: Removed Insomnia-style multi-run history pills and replaced with a strict $\mathcal{O}(1)$ `{ draft, response }` state map. Switch tabs without losing your current unsaved response, while explicitly discarding background dirty edits upon app quit to respect the 5MB `localStorage` boundary.
- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Modified Files:
- `packages/desktop/src/App.tsx`
- `packages/desktop/src/components/views/PostmanView.tsx`
- `packages/desktop/src/components/views/SharedComponents.tsx`
- `packages/desktop/src/lib/types.ts`
- `CHANGELOG.md`
- `.agents/changelog.json`
[fix/develop-postman-collections-shortcuts] - 2026-09-12 (API Playground Shortcuts, Hover Stability & Collection Deletion Safety #162)
- Feature Summary:
- Real-Time Active Pane Tracking & Workbench Shortcut Immunity (#162): Bound
Ctrl+T(New Request) andDelete(Delete Request) strictly to the Collections sidebar viagetActivePane(e)with capture-phasepointerdownandfocusinlisteners, eliminating accidental request creation or deletion when focused in the Workbench (Method select, Route selector, URL input, Params, Headers, Body, or tabs). - Zero-Movement Action Buttons (
CLS = 0): Replaced flex-inserted action buttons withabsolute right-1.5 inset-y-0 my-auto h-fitoverlays. Replacedtranslate-ytransforms and removed container-leveltransition-allto completely eliminate layout shifts and subpixel rendering jitter on hover. - Single-Request Deletion Warning Suppression: Deleting collections with 0 or 1 request executes immediately without warning; collections with $\ge 2$ requests display an accessible confirmation modal (
Enterto confirm,Escapeto cancel). - Pure React Updater & Contiguous Sibling Auto-Selection: Decoupled draft synchronization outside
setSavedRequestsupdater, maintaining pure 1-line state updates without StrictMode re-render side-effects. Aligned fallback collection resolution acrossstarter-scan('Scanned Endpoints') andcaptured('Captured Traffic'). - Typography Refinement: Upgraded collection and request titles to
13pxwith natural letter-spacing; adjusted method badges to11px(44px$\times$21px) and request counts to11px. - Asynchronous Focus Lifecycle Safety: Managed post-deletion keyboard focus advancement with
focusTimerRefand unmount cleanup, ensuring zero detached DOM timer leaks. AddedtabIndex={-1}andoutline-noneacross list items and containers for Chromium/WebView2 on Windows. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Real-Time Active Pane Tracking & Workbench Shortcut Immunity (#162): Bound
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src/components/views/KeyboardShortcutsDialog.tsxpackages/desktop/src/components/views/PostmanView.tsxCHANGELOG.md
[fix/develop-prune-orphaned-glib] - 2026-09-10 (Prune Orphaned glib = "0.20" & Universal Cross-Platform Packaging Targets)
- Feature Summary:
- Prune Orphaned
glib = "0.20"Dependency (#160): Removed orphaned Linux target dependencyglib = "0.20"fromCargo.toml. The crate was never imported insrc-tauri/src/, while Tauri v2 internals run onglib 0.18.5. Forcing0.20caused Cargo to download, compile, and link two parallel GLib/GTK toolchains on Linux, doubling build times and risking C-FFI symbol collisions with systemlibglib-2.0.so. - Universal Packaging Targets (#156): Updated
bundle.targetsintauri.conf.jsonfrom Windows-restricted["nsis", "msi"]to"all". Enables host-adaptive packaging, allowing Linux builds to generate native.deband.AppImagebundles (and macOS.dmg/.app) alongside Windows.exe/.msi. - Dependency Graph & Lockfile Optimization: Cleanly eliminated 165 lines of duplicate dependency noise from
Cargo.lock(glib 0.20,glib-sys 0.20,glib-macros 0.20,gobject-sys 0.20). Rebuilt lockfile to resolve to a single unifiedglib v0.18.5across Tauri's runtime stack (tao,wry,webkit2gtk,muda). - Compilation Validation: Reduced
cargo checkcompile time from >14s to 1.88s; validated clean TypeScript compilation and Vite production build (npm run build). - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Prune Orphaned
- Modified Files:
packages/desktop/src-tauri/Cargo.tomlpackages/desktop/src-tauri/Cargo.lockpackages/desktop/src-tauri/tauri.conf.json
[fix/develop-tunnel-process-teardown] - 2026-09-10 (Cross-Platform Subprocess Tree Teardown, Orphan Daemon Prevention & Tunnel Lifecycle Hardening)
- Feature Summary:
- Unified Subprocess Tree Teardown (
kill_child_process_tree): Replaced scattered, duplicated process-killing logic with a shared cross-platform teardown helper. Usestaskkill /F /T /PIDon Windows to recursively kill child process trees and POSIXkill -KILL -- -<pid>(process group kill) alongsidepkill -KILL -P <pid>on Unix, preventing detachednodeandcloudflaredbackground daemon leaks. - Linux
os error 2Spawn Fix: Replaced hardcodedcmd.execalls with conditional branching (cmd /C npxon Windows withCREATE_NO_WINDOW: 0x08000000, directnpxon Unix/macOS). Addedprocess_group(0)on Unix so spawned tunnels form dedicated process groups. - Startup Handshake Timeout & Error Teardown: Fixed critical leak where handshake timeouts (15s for Localtunnel, 25s for Cloudflare) and connection errors bypassed tree-killing by invoking
kill_child_process_treeacross all failure paths. - Tauri Application Lifecycle Teardown (
lib.rs): RegisteredWindowEvent::CloseRequestedandRunEvent::ExitRequestedhooks to guaranteeclose_all_tunnels()is invoked before window destruction or process termination. - Cloudflare Race Condition & Protocol Hardening: Awaits
Registered tunnel connectionlog line in Cloudflare stderr before dispatching public URL to UI (with a 4-second safety ceiling fallback), eliminating prematureError 1033/NXDOMAINclicks. Forced--protocol http2over TCP 443 TLS to prevent UDP 7844 firewall stalls, and normalized targets to explicit127.0.0.1loopback to prevent IPv6::1connection refused errors. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Unified Subprocess Tree Teardown (
- Modified Files:
packages/desktop/src-tauri/src/tunnel.rspackages/desktop/src-tauri/src/lib.rsCHANGELOG.md
[fix/develop-linux-recon-support] - 2026-09-09 (Native Linux Port Scanning, Process Detection & Ghost-Port Prevention #143)
- Feature Summary:
- Native Linux Reconnaissance (
recon.rs): Implemented cross-platformPlatformScannercompile-time strategy trait (LinuxScanner,WindowsScanner,FallbackScanner) with factory dispatch, bringing full port scanning and process discovery to Linux environments. - Dual Discovery Pipeline (
recon.rs): Added primaryss -tlpn -Hparsing with zero-subprocess fallback to in-kernel/proc/net/tcp{,6}and/proc/[pid]/fdsocket inode matching. - In-Memory
/procProcess Traversal (recon.rs): Direct non-allocating traversal of/procreadingcomm,stat,cmdline, andexesymlinks in < 5ms without disk I/O. - Ghost-Port Prevention (
recon.rs): Fixed internal ephemeral proxy/tunnel listener leakage by filteringstd::process::id()at the shared scanner boundary, preventing Proxync's own ports from appearing as ghost dev servers. - Path Normalization & Test Suite (
recon.rs): Expanded system path checks to handle Unix root paths and hidden version managers (.nvm), backed by 8 automated unit and integration tests. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Native Linux Reconnaissance (
- Modified Files:
packages/desktop/src-tauri/src/recon.rsCHANGELOG.md
[fix/upgrade-browserslist-security] - 2026-09-08 [SECURITY-CVE] (Upgrade browserslist to 4.28.9 to Remediate GHSA-c83g-rgw3-j3cx & GHSA-73wf-gq98-2v4g)
- Feature Summary:
- Browserslist Security Remediation [TYPE: CVE-PATCH]: Upgraded
browserslistfrom4.28.4to4.28.9(along withbaseline-browser-mapping,caniuse-lite,electron-to-chromium, andnode-releases) vianpm audit fix, remediating memory growth / OOM vulnerability (GHSA-c83g-rgw3-j3cx) and prototype write / uncaught crash vulnerability (GHSA-73wf-gq98-2v4g). - Audit & Compilation Validation: Validated zero vulnerabilities across npm (
npm audit) and verified clean TypeScript compilation & Vite production bundling (npm run build). - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Browserslist Security Remediation [TYPE: CVE-PATCH]: Upgraded
- Modified Files:
package-lock.json
[fix/playground-postman-ux] - 2026-09-07 (API Playground — Postman-Grade UX Upgrade)
- Feature Summary:
- Right-click "Add Request": Folder/collection context menu now includes an "Add Request" option to insert new requests directly into a collection without modifying the active draft.
Ctrl+TNew Request Shortcut: PressingCtrl+Tcreates a new blank request scoped to the active collection, matching the Postman/Insomnia workflow.DeleteKey Shortcut: PressingDeleteremoves the currently selected saved request. Guarded against firing when an input/textarea is focused. On deletion, workbench auto-loads the next sibling request or resets to a clean blank draft.- In-place Save (no duplicates):
saveDraftRequestnow does an ID-keyed upsert — editing and re-saving an existing request updates it in place instead of appending a duplicate. - Query Params Table: New "Params" tab in the workbench with editable key/value rows. Fully bidirectional — editing the URL updates the table and vice versa.
- Response History (4 runs): Response panel retains the last 4 responses per request as selectable history pills for quick comparison.
- JSON Auto-format (
Ctrl+Shift+F): Pretty-prints the request body JSON in place. - Collection Search (
Ctrl+F): Real-time sidebar filter by request/collection name. - Inline Method Badge: Clickable HTTP method badge on sidebar items opens a dropdown to change method without opening the full editor.
- Sidebar Visual Polish: Hover-only action buttons; high-contrast colour-coded method badges (emerald=GET, amber=POST, sky=PUT, purple=PATCH, rose=DELETE).
- Keyboard Shortcuts Cheatsheet: Updated
KeyboardShortcutsDialogwith all new hotkeys. - Proxync-review fixes: Removed accidental
exportfromgetMethodBadgeStyle; replaced magic'/api/v1/health'fallback paths withDEFAULT_REQUESTspread andDEFAULT_FALLBACK_PATHconstant;mergeRequestsnow keys by stableidfield. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src/components/views/PostmanView.tsxpackages/desktop/src/components/views/KeyboardShortcutsDialog.tsx
[feature/develop-schema-drift-detection] - 2026-09-07 (Schema Drift Hardening, Council Review Optimizations & Guardrail Indicator)
- Feature Summary:
- Fuzzy Rename Guard (
schemaDriftDetector.ts): Enforced a minimum field length check (>= 3 chars) on Levenshtein edit-distance matching, preventing false positiveFIELD_RENAMEDviolations between unrelated short identifiers (e.g.,id,at,ts,ip). - Status-Aware Schema Resolution (
schemaDriftDetector.ts): StreamlinedresolveBaselineSchemato return a minimal resolution on undocumented HTTP statuses, preventing invalid cross-status schema diffing against default 200 OK schemas. - Regex Caching & Recursion Defense (
schemaDriftDetector.ts): ImplementedgetCompiledEndpointRegexcaching to avoid repeated regex compilation on hot traffic loops, and added a recursion depth guard (depth > 20) indiffSchemas. - Reactivity Optimization & Toast Timing (
App.tsx,toast.tsx): Removed state closures fromhandleSyncOpenApiWithDriftviadriftAlertsRef, memoizeddriftReportsto eliminate redundant Set/Array reallocations, restored persistent toast capabilities intoast.tsx, and kept drift notifications non-sticky (4-second auto-dismiss). - Bodies Captured Indicator (
TrafficView.tsx): Added a visual telemetry indicator in the Traffic Inspector header to clearly inform users when payload capture is active in memory. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Fuzzy Rename Guard (
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src/components/views/TrafficView.tsxpackages/desktop/src/lib/schemaDriftDetector.tspackages/desktop/src/lib/toast.tsxCHANGELOG.md
[feature/develop-schema-drift-detection] - 2026-09-07 (Multi-Endpoint Schema Drift Tracking & Granular Reconciliation Engine)
- Feature Summary:
- Unified Real-Time Drift Alerting (
App.tsx): Consolidated toast notifications into a sharednotifyDriftAlerthelper delivering distinct, debounced toasts for breaking contract errors (error) and additive schema changes (warning). - Granular Scoped Reconciliation & Remaining Counter (
App.tsx,TrafficView.tsx): EnhancedhandleSyncOpenApiWithDriftwith $O(N)$ route difference calculation to verify remaining un-synced routes and provide explicit scoping feedback (Note: X other endpoint(s) still have pending drift), eliminating user ambiguity during selective sync. - Swagger Studio Additive Warning Banner & Health Metrics (
SwaggerView.tsx): UpgradedcontractHealthcomputation and the top reconciliation banner to track additive schema changes (warningCount) alongside breaking violations, rendering an amber banner when only non-breaking changes remain un-synced. - Precision Route Regex Matching (
SwaggerView.tsx): Replaced loose substring endpoint matching withcompileEndpointRegex, preventing collection endpoints (/api/products) from falsely cascading drift badges onto item endpoints (/api/products/{id}). - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Unified Real-Time Drift Alerting (
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src/components/views/SwaggerView.tsxpackages/desktop/src/components/views/TrafficView.tsxCHANGELOG.md
[feature/develop-schema-drift-detection] - 2026-09-02 (Real-Time Schema Drift Detection & Contract Diff Engine)
- Feature Summary:
- 4 KB Native HTTP Response Preview Capture (
proxy.rs,tunnel.rs): Extracted response body preview and headers forapplication/jsonpayloads directly in Rust proxy and tunnel streams while bypassing WebSocket/SSE streaming protocols and compressed payloads. - Pure TypeScript Schema Drift Engine (
schemaDriftDetector.ts,types.ts): Built recursive AST schema diff engine detectingBREAKING_FIELD_RENAMED(inline Levenshtein distance $\le 2$ & case normalization),BREAKING_NULLABILITY,BREAKING_TYPE_MISMATCH,BREAKING_FIELD_REMOVED,NON_BREAKING_FIELD_ADDED, and undocumented status codes. Safely strips HTTP/1.1 chunked transfer encoding headers. - 1-Click OpenAPI Reconciliation & Bug Reporting (
schemaDriftDetector.ts,openApiGenerator.ts): ImplementedsyncOpenApiWithPayloadto merge runtime schemas into the live OpenAPI document in-memory, clearing active drift flags across all studios, andgenerateDriftBugReportMarkdownto produce copy-paste bug reports. - Studio Integrations & Real-Time Alerting (
TrafficView.tsx,SwaggerView.tsx,ObservabilityView.tsx,RequestWorkbenchDialog.tsx,App.tsx,toast.tsx): Added drift filter dropdown and inline diff panel in Traffic Inspector; Contract Health % metric and warning banner in Swagger Studio; telemetry radar in Observability Studio; dedicated Contract mode tab in 360° Request Workbench; dual-key indexed drift state inApp.tsx; and 4-second auto-dismissing toast alerts. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- 4 KB Native HTTP Response Preview Capture (
- Modified Files:
packages/desktop/src-tauri/src/proxy.rspackages/desktop/src-tauri/src/tunnel.rspackages/desktop/src/App.tsxpackages/desktop/src/components/views/ObservabilityView.tsxpackages/desktop/src/components/views/RequestWorkbenchDialog.tsxpackages/desktop/src/components/views/SwaggerView.tsxpackages/desktop/src/components/views/TrafficView.tsxpackages/desktop/src/lib/openApiGenerator.tspackages/desktop/src/lib/schemaDriftDetector.tspackages/desktop/src/lib/toast.tsxpackages/desktop/src/lib/types.tsCHANGELOG.md
[feature/develop-v0.2.2-version-bump] - 2026-09-01 (Workspace & Studio Version Bump to v0.2.2 for Cross-OS Compatibility & Stabilization)
- Feature Summary:
- Comprehensive Version Bump to v0.2.2: Synchronized workspace and package manifests (
package.json,packages/desktop/package.json,package-lock.json,Cargo.toml,Cargo.lock, andtauri.conf.json) to version0.2.2. - Native HTTP Network Headers & Diagnostics: Updated Rust client
User-Agentheaders inhttp.rstoProxyncStudio/0.2.2. Synchronized frontend diagnostic logging metadata, log session directives, and support bundle fallbacks inApp.tsxandlogger.tstov0.2.2-stable. - Recon & Documentation Badge Alignment: Updated README version shield badge and
.agents/architecture.jsonstatic recon map to reflect version0.2.2. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Comprehensive Version Bump to v0.2.2: Synchronized workspace and package manifests (
- Modified Files:
package.jsonpackages/desktop/package.jsonpackage-lock.jsonpackages/desktop/src-tauri/Cargo.tomlpackages/desktop/src-tauri/Cargo.lockpackages/desktop/src-tauri/tauri.conf.jsonpackages/desktop/src-tauri/src/http.rspackages/desktop/src/App.tsxpackages/desktop/src/lib/logger.tsREADME.mdCHANGELOG.md
[fix/nsis-bundling-titlebar-alignment] - 2026-08-27 (Tauri v2 Native NSIS Uninstaller Icon, Makensis Build Fix & Responsive Titlebar Edge Alignment)
- Feature Summary:
- Tauri v2 Native NSIS Uninstaller Config (
tauri.conf.json,hooks.nsh): Migrated uninstaller branding from fragile raw script hooks (hooks.nsh) to native Tauri v2uninstallerIcon: "icons/icon.ico"intauri.conf.json. Resolvesmakensiscompilation failure (Error while loading icon from "icons\icon.ico": can't open file) caused by relative path evaluation in temporary NSIS release directories. - Clean Titlebar Flush Alignment (
App.tsx,index.css): Removed brittle negative margin overrides (margin-right: -16px/-24px) in favor of clean header padding (pl-2 sm:pl-4 pr-0) and explicith-full/shrink-0on.window-controls. Ensures the close button and window controls are pixel-perfect and flush with the top-right corner across all viewport sizes (small screens, standard desktop, and fullscreen). - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Tauri v2 Native NSIS Uninstaller Config (
- Modified Files:
packages/desktop/src-tauri/tauri.conf.jsonpackages/desktop/src-tauri/hooks.nsh(deleted)packages/desktop/src/App.tsxpackages/desktop/src/index.cssCHANGELOG.md
[fix/theme-titlebar-docs-polish] - 2026-08-27 (Precision Windows Titlebar, Theme Scoping, Cyberpunk Purge, Docs Manual Overhaul & IPC Hardening)
- Feature Summary:
- Precision Windows Titlebar Controls (
App.tsx,index.css): Replaced glyph-font titlebar symbols with native 10px SVG vector controls (line minimize, single square maximize, overlapping dual-square restore, and diagonal cross close). Added liveisMaximizedtracking with 100ms debouncing, responsive right-edge flush cancellation (margin-right: -24pxonsm:desktop), and native#e81123close hover styling. - Complete Cyberpunk Theme Deprecation (
cyberpunk.css,App.tsx,SettingsView.tsx): Completely deletedcyberpunk.css, cleaned up fallback handlers inloadAppSettings(), and renamed dark theme card to Obsidian Dark. - Theme Token Scoping & Dynamic Color-Mix (
dracula.css,emerald.css,dark.css,slate.css,index.css): Added complete--color-on-surface,--color-on-surface-variant,--color-outline, and--color-backgroundtokens across all stylesheets to eliminate cross-theme token fallback bleed. Refactored.badge.accent,.badge.muted,.method,.status-code, and.btn-expose-proxyncto use CSScolor-mix()for automatic theme adaptation. - Technical Documentation Overhaul (
DocsView.tsx): Replaced generic placeholder content with an in-depth developer manual covering Tauri v2/Rust architecture, all 4 tunnel providers (Native Azure SSH, Cloudflare Quick Tunnels, Localtunnel, Loopback*.localtest.me), DNS CNAME setup, Postman/Swagger studios, and keyboard hotkeys. Streamlined navigation with punchy 1-word tab titles. - Navigation Real Estate Optimization (
App.tsx): RelocatedDocsto the sidebar footer utility bar alongsideSupport, decluttering the primaryOBSERVABILITY & TOOLScategory. - IPC & Window Exception Hardening (
App.tsx): Wrapped window management actions in safe, unhandled-rejection-proof handlers with clean listener teardown. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Precision Windows Titlebar Controls (
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src/index.csspackages/desktop/src/components/views/DocsView.tsxpackages/desktop/src/components/views/WorkspaceDashboardView.tsxpackages/desktop/src/components/views/SettingsView.tsxpackages/desktop/src/components/views/Dialogs.tsxpackages/desktop/src/components/views/PostmanView.tsxpackages/desktop/src/assets/themes/dracula.csspackages/desktop/src/assets/themes/emerald.csspackages/desktop/src/assets/themes/dark.csspackages/desktop/src/assets/themes/slate.csspackages/desktop/src/assets/themes/cyberpunk.css(deleted)CHANGELOG.md
[fix/workspace-search-bar] - 2026-08-25 (Workspace Command Search Dropdown, Direct Hub Navigation, Global Keyboard Shortcuts Dialog & Workbench CSS Fix)
- Feature Summary:
- Floating Workspace Search Dropdown & Keyboard Navigation (
App.tsx): Replaced plain search input with an interactive floating command dropdown anchored under the top search bar. Filters present and created workspaces in real time by name, notes, server processes, or open ports, with active badges,↑/↓keyboard selection,Enternavigation, and hotkey support (Ctrl+K/Cmd+Kto open,Escapeor click-outside to dismiss). - 1-Click Workspace Hub Navigation & Robust Click Handlers (
App.tsx): Upgraded selection items withonMouseDown(e.preventDefault(),e.stopPropagation()) to immediately switch active workspace and navigate straight to the workspace hub (workspace_dashboard) without blur race conditions. - Direct Workspace Creation via Reused Helper (
App.tsx): ExtendedcreateWorkspace(explicitName?: string)to allow direct 1-click creation from search queries without intermediate lobby redirections. - Safe Tunnel Lifecycle Teardown (
App.tsx): Maintained strict tunnel lifecycle teardown (stopAllTunnels(true)) and process rediscovery when switching between workspaces via search. - App-wide Reusable Keyboard Shortcuts Dialog (
KeyboardShortcutsDialog.tsx,App.tsx,PostmanView.tsx): Extracted standalone cross-platform shortcuts modal with macOS (⌘) and Windows/Linux (Ctrl) key detection, global keybindings list, contextual view shortcuts, search filter, globalCtrl+//Cmd+/listener across all screens, and sidebar discoverability button. - Stop All Tunnels Hotkey in Explore (
WelcomeView.tsx,KeyboardShortcutsDialog.tsx): AddedCtrl+Shift+X/Cmd+Shift+Xhotkey to immediately terminate all active tunnels from the Network Hub. - Request Workbench Stacking Context & Responsive CSS Fix (
RequestWorkbenchDialog.tsx): Fixed sticky subheader stacking context by elevating toz-30withbg-surface-container-low/95 backdrop-blur-xl, removing conflicting childz-10s, and restructuring controls into a responsiveflex-col md:flex-rowgrid for compact/small screens. - UI & Documentation Polish (
App.tsx,README.md): Removed text-decoration underline on All Workspaces Studio button in favor of clean interactive styling, and refined README feature highlights and platform support statuses. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Floating Workspace Search Dropdown & Keyboard Navigation (
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src/components/views/KeyboardShortcutsDialog.tsxpackages/desktop/src/components/views/PostmanView.tsxpackages/desktop/src/components/views/RequestWorkbenchDialog.tsxpackages/desktop/src/components/views/WelcomeView.tsxREADME.mdCHANGELOG.md
[feature/develop-readme-v0.2.1-update] - 2026-08-24 (README Documentation Update: v0.2.1 Release, Native High-Speed Tunneling & Platform Status)
- Feature Summary:
- v0.2.1 Release Status: Updated project version badge and documentation references across the studio README to reflect version v0.2.1.
- Native High-Speed Proxync Tunneling: Added prominent feature documentation for Native High-Speed Proxync Tunneling, ultra-low latency WebSocket/SSH origin relay infrastructure, and Resilient Standby Mode with automatic URL preservation.
- Platform Support Matrix & Roadmap: Clarified current Windows 10/11 desktop support, updated platform state paths (
%APPDATA%\Proxync\), and added pending Linux and macOS cross-platform releases to the roadmap and platform matrix. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Modified Files:
README.mdCHANGELOG.md
[fix/universal-proxy-vite-hmr] - 2026-08-23 (Ctrl+R Reload Safety Shield, Vite Tunnel Guard & Bidirectional Stream Telemetry)
- Feature Summary:
- Ctrl+R / F5 Reload Safety Shield (
App.tsx): InterceptsCtrl+R,Cmd+R, andF5events in capture mode while a tunnel is running. Suppresses window reload and alerts the user with a warning toast (⛔ Refresh blocked — stop your active tunnel first to avoid orphan processes), completely preventing orphan background tunnels and state desynchronization. - Vite Dev Server Detection & Launch Guard (
App.tsx): AddedisViteProcess(process)helper checking framework signature, command, directory, process name, and default port5173. When a user attempts to share a Vite dev server across any tunnel mode (shareProcess,shareProcessCloudflare,shareProcessNative,shareProcessLocaltunnel), cleanly halts execution and displays an informative warning toast (⚠️ Sharing Vite dev servers over public tunnel is currently under development). - Bidirectional Stream Latency & Status Code Telemetry (
proxy.rs): Captured initial HTTP response chunk to emit precise HTTP status codes and round-trip duration metadata (request:log:response) before transitioning into full-duplextokio::io::copy_bidirectional. - Cleaned Up Experimental Rust Pipeline (
tunnel.rs,proxy.rs): Cleaned up experimental HTML injection and compression pipelines, keeping standard base64 response transport clean and reliable. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Ctrl+R / F5 Reload Safety Shield (
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src-tauri/src/proxy.rspackages/desktop/src-tauri/src/tunnel.rsCHANGELOG.md
[fix/universal-proxy-vite-hmr] - 2026-08-22 (Universal Proxy Engine, Vite 6 HMR Stabilization, Cross-Platform Diagnostic Export & Upload Cap)
- Feature Summary:
- Universal Full-Duplex Proxy Engine (
proxy.rs): Replaced split read/write loops with non-blockingtokio::io::copy_bidirectional. Dynamically rewritesHost: localhost:<port>andOrigin: http://localhost:<port>while preservingSec-WebSocket-*headers and injectingX-Forwarded-Proto: https,X-Forwarded-Host, andX-Forwarded-For: 127.0.0.1. Eliminates Vite 6allowedHosts403 Forbidden errors and WebpackInvalid Host Headererrors. - Dev Server HMR Stabilization & React SWC Preamble (
tunnel.rs): Injected a top-of-<head>dev server shim for public relay streams that satisfies Vite HMR (/@vite/client), Next.js Fast Refresh, and@react-refreshwith an immediatereadyState: 1 (OPEN)handshake and pre-initializes React SWC preamble globals (window.$RefreshReg$), completely eliminating blank white screens on public tunnel URLs. - 50 MB Upload Cap Protection: Added a strict 50 MB upload body size cap (
MAX_UPLOAD_BODY_BYTESandMAX_RELAY_BODY_BYTES) across both local TCP proxy and relay pipelines, rejecting oversized payloads with explicit413 Payload Too LargeJSON responses. - Cross-Platform Diagnostic Support Bundle Export (
storage.rs,logger.ts): Implementedsave_support_bundle_dialogin Rust with native OS save pickers (PowerShell on Windows, AppleScript on macOS, Zenity on Linux) alongside Web File System Access API and blob download fallbacks, and upgradedget_base_data_dirto support macOS (Library/Application Support) and Linux (~/.config). - Zero Hardcoded Environment Paths: Cleaned up hardcoded
%APPDATA%strings from toasts and settings views inApp.tsxandSettingsView.tsx. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Universal Full-Duplex Proxy Engine (
- Modified Files:
packages/desktop/src-tauri/src/proxy.rspackages/desktop/src-tauri/src/tunnel.rspackages/desktop/src-tauri/src/storage.rspackages/desktop/src-tauri/src/lib.rspackages/desktop/src/lib/logger.tspackages/desktop/src/components/views/SettingsView.tsxpackages/desktop/src/App.tsxCHANGELOG.md
[fix/ide-navigation-and-preflight-probe] - 2026-08-22 (Dynamic IDE Route Navigation, Inactive Port Pre-Flight Probe & Global Traffic Logs Purge)
- Feature Summary:
- Dynamic Route Resolution & Zero Fake Paths (TC-WB-003): Upgraded
RequestWorkbenchDialog.tsxto includenearMissMatchin route resolution and replaced the hardcodedsrc/controllers/...fallback withnull. When a route is unlinked, displays an explanatory prompt and disables IDE triggers. Dynamically derivesresolvedRootfrom active process candidates and workspace configs so files always resolve to their absolute file system path. - 3-Tier Cross-Platform IDE Engine: Refactored
open_file_in_editorinstorage.rswith discrete argument quoting (code -g "<root>/<path>:<line>") on Windows to prevent space splitting in paths, and implemented resilient 3-tier fallbacks (CLI with line jump $\rightarrow$ OS URI scheme $\rightarrow$ system default file opener) across Windows, macOS, and Linux. - Inactive Port Pre-Flight Probe & Residue Purge: Implemented
probe_portinrecon.rs(300ms dual-stack TCP check) and wiredverifyPortIsLiveinApp.tsx. Prevents creating tunnels on offline ports (e.g.:4500afterCtrl+C) with clear warning toasts, and triggers backgrounddiscoverProcesses(true, true)to automatically purge dead process cards from the UI. - Global Traffic Logs Clearance: Fixed
clearTrafficLogs()inApp.tsxto completely reset in-memoryrequests, wipecapturedRequestsacross all workspaces inlocalStorage, and delete underlying disk logs viaclearLogs(). - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Dynamic Route Resolution & Zero Fake Paths (TC-WB-003): Upgraded
- Modified Files:
packages/desktop/src-tauri/src/recon.rspackages/desktop/src-tauri/src/lib.rspackages/desktop/src-tauri/src/storage.rspackages/desktop/src/App.tsxpackages/desktop/src/components/views/RequestWorkbenchDialog.tsxCHANGELOG.md
[fix/tunnel-resilient-standby] - 2026-08-22 (Resilient Standby Tunnels, 502 Fallback & Instant Local Auto-Recovery)
- Feature Summary:
- Universal Standby Mode & URL Preservation: Replaced abrupt hard tunnel teardown on local process shutdown (
Ctrl+C) with a resilientSTANDBYstate. Preserves public tunnel URLs (https://px-xxxx.proxync.dev) across server restarts and hot-reloads so webhook integrations (Stripe, GitHub, Shopify) remain permanently connected without reconfiguration. - Branded 502 Bad Gateway Standby Fallback: Configured
proxy.rsto serve a responsive, branded HTML 502 Bad Gateway fallback page when incoming public traffic reaches an offline local target, informing external clients and browsers that the local server is in standby. - Background Port Liveness Engine: Added a lightweight 1000ms loop in
proxy.rsusing 250ms bounded TCP probes across127.0.0.1and[::1]. Emitstunnel:status-changedevents (ACTIVE$\leftrightarrow$STANDBY) with automatic UI recovery the instant a developer restarts their server (npm run dev). - Frontend Standby Indicators & Badges: Integrated
STANDBYstatus handling acrossProcessView,WorkspaceDashboardView,WelcomeView, andSwaggerViewwith amber status badges (🟡 Standby • Target Offline), status footer counters, and transition toasts. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Universal Standby Mode & URL Preservation: Replaced abrupt hard tunnel teardown on local process shutdown (
- Modified Files:
packages/desktop/src-tauri/src/proxy.rspackages/desktop/src-tauri/src/tunnel.rspackages/desktop/src/App.tsxpackages/desktop/src/components/views/ProcessView.tsxpackages/desktop/src/components/views/WorkspaceDashboardView.tsxpackages/desktop/src/components/views/WelcomeView.tsxpackages/desktop/src/components/views/SwaggerView.tsxpackages/desktop/src/lib/types.tsCHANGELOG.md
[fix/develop-responsiveness] - 2026-08-22 (Universal Responsive Layout & Streamlined Workbench Studio Command Bar)
- Feature Summary:
- Streamlined Workbench Studio Command Bar: Refactored the sticky sub-header in
RequestWorkbenchDialog.tsxinto a high-density, compact Studio Action Bar ($\sim 48\text{px}$). Consolidated the primary segmented mode switcher ([DevTools & Mapping] [Traffic & Replay]) and quick action triggers ([Export Code],[Save to Collection],[Browser]) onto a single balanced bar, eliminating triple information redundancy and reclaiming vertical screen real estate. - Traffic Inspector Table Isolation & Typography: Upgraded table row typography to
text-[13px] font-monoinTrafficView.tsx. Restructured column widths (Method w-24,Status w-20,Request Path flex-1 min-w-[180px],Scope w-44,Time w-28,Duration w-32 text-left,Actions w-72) inside anoverflow-x-auto min-w-[1080px]container to ensure absolute separation between latency timestamps and action triggers across all viewport sizes. - Non-Destructive Cross-Workspace Telemetry Retention: Replaced 4 destructive global
setRequests([])wipes inApp.tsxwith active-workspace scoped filtering (setRequests(curr => curr.filter(r => r.workspaceId && r.workspaceId !== activeWorkspaceIdRef.current))) to preserve historical traffic records across workspace switches. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Streamlined Workbench Studio Command Bar: Refactored the sticky sub-header in
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src/components/views/RequestWorkbenchDialog.tsxpackages/desktop/src/components/views/TrafficView.tsxpackages/desktop/src/index.cssCHANGELOG.md
[feature/develop-playground-target-selector] - 2026-08-21 (Playground Interactive Target & Tunnel Selector, Instant State Purge & NSIS Uninstaller Branding)
- Feature Summary:
- Interactive Target Environment & Public Tunnel Dropdown: Replaced static route badge in
PostmanView.tsxwith an interactive dropdown selector grouping active public tunnels (🌐 <hostname> (:<port>)) and local servers (⚡ Localhost (:<port>)). Developers can instantly view and switch active target environments with automatic URL resolution. - State Purge & Stale Response Clearance: Added
onClearResponsecallback inPostmanView.tsxandApp.tsxto automatically purge cached responses whenever switching target dropdown options, preventing cross-tunnel response confusion. - NSIS Uninstaller Brand Customization: Created
hooks.nshand wired"installerHooks": "hooks.nsh"intauri.conf.jsondefiningMUI_UNICON "icons\\icon.ico"so the Windows uninstaller dialog displays the official Proxync branding icon instead of the default Nullsoft tin box icon. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Interactive Target Environment & Public Tunnel Dropdown: Replaced static route badge in
- Modified Files:
packages/desktop/src/components/views/PostmanView.tsxpackages/desktop/src/App.tsxpackages/desktop/src-tauri/tauri.conf.jsonpackages/desktop/src-tauri/hooks.nshCHANGELOG.md
[fix/develop-release-blocker-workspace-tunnel-isolation] - 2026-08-21 (Release Blocker: Automatic Cross-Workspace Tunnel Teardown & Process Isolation)
- Feature Summary:
- Native Bulk Tunnel Teardown Command: Implemented
close_all_tunnels()in Rust (tunnel.rs,lib.rs) to cleanly drain and abort all active WebSocket relay handles, terminate all child subprocesses (ssh,cloudflared,localtunnel) with OS process tree killing (taskkill /F /T /PIDon Windows), and shut down all ephemeral TCP stream proxies (stop_proxy(None)). - Cross-Workspace Tunnel Teardown on Switch & Create: Updated
selectWorkspaceandcreateWorkspaceinApp.tsxto automatically invokestopAllTunnels(true)andclose_all_tunnelswhenever switching between workspaces or creating new workspaces. This guarantees running public tunnels from previous workspaces are never orphaned or left accessible in the background. - Frontend State Containment: Automatically resets
tunnels,activeTunnel,selectedProcessId, andsharingPortupon workspace switching with informative transition toasts (e.g.Closed tunnels from "Workspace A"). - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Native Bulk Tunnel Teardown Command: Implemented
- Modified Files:
packages/desktop/src-tauri/src/lib.rspackages/desktop/src-tauri/src/tunnel.rspackages/desktop/src/App.tsxCHANGELOG.md
[fix/develop-release-blocker-process-cwd-recon] - 2026-08-21 (Release Blocker: Process Working Directory CWD Reconnaissance via OS PEB Inspection)
- Feature Summary:
- Stage 0 Native Process CWD Extraction: Implemented Win32
PEB(Process Environment Block) inspection inrecon.rs(win_peb::get_process_cwd) viaNtQueryInformationProcessandReadProcessMemoryto readRTL_USER_PROCESS_PARAMETERS.CurrentDirectory.DosPathdirectly from the OS for any running process and its parent process tree. - Accurate Relative Script & NPM Dev Server Discovery: Resolved a critical release blocker where servers launched with relative arguments (e.g.
node --watch server.js,node server.js,npm run dev) failed directory resolution and fell back tolocalhost:<port>. Directory resolution now deterministically resolves to the exact project root (e.g.E:\to-do) across any drive or directory structure. - Preserved Heuristic Fallback Pipeline: Maintained existing command-line argument parsing, parent process walking, and fallback script search as graceful secondary layers when PEB access is unavailable.
- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Stage 0 Native Process CWD Extraction: Implemented Win32
- Modified Files:
packages/desktop/src-tauri/src/recon.rsCHANGELOG.md
[fix/traffic-inspector-duration-and-layout] - 2026-08-21 (Traffic Inspector Duration Capture, Column Layout Overlap Fix & Sanity Testing Isolation)
- Feature Summary:
- Live Latency & Duration Capture: Added
Instant::now()elapsed duration calculation inproxy.rsandtunnel.rsto compute response round-trip latency in milliseconds (durationMs) and emit it insiderequest:log:response. AddedcapturedAtMstracking and fallback computation inApp.tsxso durations never remain in a stuck'pending'state. - Column Width & Spacing Isolation: Restructured the Traffic table layout in
TrafficView.tsxby expanding theDURATIONcolumn tow-28(112px) withpr-6right-padding, and theACTIONScolumn tow-72(288px). Replaced oversized global.btn-ghostclasses with isolated compact button tokens (px-2.5 py-1) to completely eliminate horizontal collision between the latency badge and the Workbench / Playground action triggers. - Sanity & POC Sandbox Isolation: Added
sanity/to.gitignoreand relocated experimental Proof-of-Concept folders tosanity/POC/to maintain a pristine, production-clean repository root. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Live Latency & Duration Capture: Added
- Modified Files:
packages/desktop/src-tauri/src/proxy.rspackages/desktop/src-tauri/src/tunnel.rspackages/desktop/src/App.tsxpackages/desktop/src/components/views/TrafficView.tsx.gitignoreCHANGELOG.md
[feature/develop-multi-tunnel-workbench-scanner] - 2026-08-21 (Proxy Lifecycle Optimization, Fast WebSocket Relay Timeout & Multi-Tunnel Workbench Studio)
- Feature Summary:
- Ephemeral Proxy Listener Lifecycle & TCP Half-Close: Refactored
start_proxyinproxy.rsto always abort stale task handles and re-bind fresh listeners per invocation, plus added explicitclient_write.shutdown().awaitandtarget_write.shutdown().awaiton TCP streams to cleanly complete responses without hanging. - Fast WebSocket Relay Connection Timeout: Added a 2-second timeout to
open_tunnelWebSocket connection (tunnel.rs) so client initialization fails fast when no local loopback relay is active instead of blocking on OS TCP timeouts. - Instant In-Memory Recon Resolution: Streamlined
recon.rsby eliminating blocking filesystem drive scanning loops during project directory lookup. - Multi-Tunnel & Multi-Process Dynamic Project Root Synchronization: Refactored
RequestWorkbenchDialog.tsxandApp.tsxto automatically resolve project root directories per-tab based on the originating request's port or tunnel metadata, eliminating cross-process misattribution when running multiple tunnels simultaneously. - Native 1-Click IDE Navigation: Implemented
open_file_in_editornative command in Rust (storage.rs,lib.rs) and TypeScript (interopUtils.ts) to jump directly to exact line numbers in VS Code (code -g <file>:<line>), Cursor, or the OS default editor. - Dynamic Next.js App Router & Arrow Function Scanner: Enhanced
codebaseScanner.tsto normalize Windows backslash file paths and parse both function declarations (export async function GET) and arrow function exports (export const POST = async () =>). - Fresh Request Log Ingestion & Execution History Runs: Enhanced Workbench to dynamically merge newly intercepted request events into active tabs as discrete
ExecutionRunhistory snapshots with automatic focus on fresh runs. - Process Discovery & Dashboard UX Polish: Upgraded
DiscoverDialog.tsxwith anALREADY EXPOSEDemerald badge, streamlined actions to dedicated[ Inspect Traffic ➔ ]navigation, and separated dashboard server card clicks (Process view) from direct traffic inspection. - Zero Hardcoded Environment Paths Enforced: Stripped all developer test paths and machine-specific fallbacks across UI code in compliance with new workspace Rule 8.
- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Ephemeral Proxy Listener Lifecycle & TCP Half-Close: Refactored
- Modified Files:
packages/desktop/src-tauri/src/lib.rspackages/desktop/src-tauri/src/recon.rspackages/desktop/src-tauri/src/storage.rspackages/desktop/src/App.tsxpackages/desktop/src/components/views/Dialogs.tsxpackages/desktop/src/components/views/RequestWorkbenchDialog.tsxpackages/desktop/src/components/views/WorkspaceDashboardView.tsxpackages/desktop/src/index.csspackages/desktop/src/lib/codebaseScanner.tspackages/desktop/src/lib/interopUtils.tspackages/desktop/src/lib/types.tsCHANGELOG.md
[feature/develop-installer-wizard-branding-and-license] - 2026-08-19 (NSIS Setup Wizard High-DPI Visual Assets & Open-Source License Integration)
- Feature Summary:
- NSIS Setup Wizard High-DPI Visual Assets: Replaced legacy prototype installer graphics with high-definition 24-bit RGB Windows bitmaps:
nsis-sidebar.bmp(164×314 px, 154 KB) featuring 3D isometric server nodes and neon fiber-optic conduits on deep midnight slate (#0b0f19) with zero smartphone bezels or text artifacts, andnsis-header.bmp(150×57 px, 25.8 KB) featuring a high-contrast glowing network proxy hub. - Open-Source License Agreement Integration: Embedded the root MIT License agreement (
LICENSE, Copyright © 2026 Inilax) into the Tauri installer bundle vialicenseFile: "LICENSE". - Enhanced App Description & Metadata: Updated
longDescriptionintauri.conf.jsonto"Proxync — Instant Local-First Tunneling, API Inspection & Developer Workspace Studio"for Windows Installed Apps & Tooltips. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- NSIS Setup Wizard High-DPI Visual Assets: Replaced legacy prototype installer graphics with high-definition 24-bit RGB Windows bitmaps:
- Modified Files:
packages/desktop/src-tauri/icons/nsis-header.bmppackages/desktop/src-tauri/icons/nsis-sidebar.bmppackages/desktop/src-tauri/LICENSEpackages/desktop/src-tauri/tauri.conf.jsonCHANGELOG.md
[feature/develop-pro-debugger-dual-stream-logging] - 2026-08-19 (Pro Debugger & Dual-Stream Support Logging Engine, LLM Diagnostic Grammar & Support Bundle Exporter)
- Feature Summary:
- Cross-Platform Native Rust Logging Engine: Built
storage.rsdisk logging pipeline in Tauri/Rust supporting Windows (%APPDATA%/Proxync/logs), macOS (~/Library/Application Support/Proxync/logs), and Linux (~/.config/Proxync/logs). Implementedappend_log_entry,clear_log_files,open_logs_folder(explorer.exe,open,xdg-open), andread_logs_summaryIPC handlers registered inlib.rs. - Dual-Stream Independent Logging with Split Defaults: Created lightweight TypeScript logging engine (
logger.ts) with bounded in-memory ring buffers (1,000 app entries, 2,000 traffic entries, $<500\text{ KB}$ max RAM). Application Diagnostics (app.log) is enabled by default to capture engine lifecycle, recon scans, proxy binds, tunnel spawn/closures, and crashes. Traffic Stream (traffic.log) is disabled by default to capture full HTTP request/response payloads, headers, and latencies on demand. - AI Agent & LLM Diagnostic Directives: Embedded structured session headers with schema definitions in
app.logandtraffic.log. BuiltlogError(source, summary, error, hint, target)providing deterministicreason,target, andhintattributes for automated AI troubleshooting. Structuredtraffic.logas single-line JSONL with statuserrorReasondescriptions (e.g.502 Bad Gateway: Upstream local service port unreachable). - Automatic Credential & PII Redaction: Built sensitive key sanitizer that automatically redacts
Authorization,Bearer,Cookie,Set-Cookie,Password,Token,ApiKey, andSecrettokens to[REDACTED]across logs and support bundles. - 1-Click Support Diagnostic Bundle Exporter: Created
exportSupportBundle()to package active workspace state, settings, active tunnels, discovered processes, and sanitized diagnostic logs intoproxync-support-bundle.json. - 360° Event Instrumentation & StrictMode Idempotency: Hooked logging across all app operations (OpenAPI generation, Postman requests, replays, scans, workspaces, domains, settings) with active lifecycle listener cleanup in
App.tsxpreventing duplicate log emissions on hot reloads. - Settings Danger Zone UI & Purge Integration: Overhauled Settings Danger Zone (
SettingsView.tsx) with side-by-side stream cards, glowing monospaced badges (● Enabled (Default)/● Active • Recording), disk metrics, path copy pill, and integratedclearLogs()into the Purge All Data confirmation dialog (Dialogs.tsx). - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Cross-Platform Native Rust Logging Engine: Built
- Modified Files:
packages/desktop/src-tauri/src/lib.rspackages/desktop/src-tauri/src/storage.rspackages/desktop/src/App.tsxpackages/desktop/src/components/views/Dialogs.tsxpackages/desktop/src/components/views/SettingsView.tsxpackages/desktop/src/lib/logger.tspackages/desktop/src/lib/types.tsCHANGELOG.md
[fix/swagger-multi-tunnel-traffic-segregation-probe-filtering] - 2026-08-19 (Multi-Tunnel Traffic Segregation, Malicious Bot Probe Filtering & Incremental OpenAPI Spec Ingestion)
- Feature Summary:
- Multi-Tunnel & Multi-Server Port Attribution Pipeline: Refactored Rust proxy (
proxy.rs) and WebSocket tunnel relay (tunnel.rs) to attach deterministicport,tunnelId, andrequestIdmetadata to every emittedrequest:logevent. EnrichedApp.tsxrequest ingestion to dynamically resolve matching public tunnels (tunnelUrl,subdomain) and process services (port,serverName), eliminating cross-port misattribution. - Automated Security Scanner & Bot Probe Filtering: Implemented
isNoiseOrScannerProbeinopenApiGenerator.tsto detect and filter out automated internet vulnerability probes (/.env,/.git,/.ssh,*.pem,*.key,*.bak,*.sql,/wp-admin,/geoserver/,/minio/,/admin) and SPAindex.htmlfallback catch-all responses returningtext/htmlon arbitrary non-root URLs. - Dynamic URL Path Parameterization: Built
parameterizePathhelper to generalize dynamic path segments (IDs e.g.todo-1787085033407-5x3gn, UUIDs, numerical IDs, Mongo ObjectIDs) into standard OpenAPI path parameters (e.g./api/todos/{id}) with matching OpenAPIin: pathparameter definitions. - Incremental OpenAPI Spec Ingestion (Endpoint Persistence): Enhanced
generateOpenApiSpecto acceptexistingDocand deep-merge newly captured traffic with previously generated routes (GET,POST,PUT,DELETE), preventing spec overwrites when testing endpoints sequentially. - Swagger Studio UI & Server Filter Refinement: Overhauled server dropdown in
SwaggerView.tsxwith clear public tunnel URLs and ports (⚡ Port :4000 — px-subdomain (https://...)), added clickable tunnel URL badges on endpoint cards, and streamlined the filter header by removing redundant tag filter pills while keeping semantic tag badges on cards. - CSS Flex Properties Fix: Corrected invalid
shrink: 0CSS properties to standardflex-shrink: 0inindex.cssfor.btn-cloud-optionand.btn-lan-option. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Multi-Tunnel & Multi-Server Port Attribution Pipeline: Refactored Rust proxy (
- Modified Files:
packages/desktop/src-tauri/src/proxy.rspackages/desktop/src-tauri/src/tunnel.rspackages/desktop/src/App.tsxpackages/desktop/src/components/views/SwaggerView.tsxpackages/desktop/src/index.csspackages/desktop/src/lib/openApiGenerator.tspackages/desktop/src/lib/types.tsCHANGELOG.md
[feature/develop-dynamic-netstat-service-discovery] - 2026-08-17 (Dynamic Netstat Full-Port Service Discovery, Single Bulk WMI Recon & In-Memory Directory Engine)
- Feature Summary:
- Dynamic Full-Port Netstat Discovery: Completely eliminated the legacy hardcoded 9-port list (
3000, 3001, 4000, 4200, 5000, 5173, 8000, 8080, 8888) in favor of a singlenetstat -anoscan dynamically capturing all listening dev services across both IPv4 and IPv6 ([::1]:5173,[::]:3000,80, 443, 1024..=49151) while filtering out Windows RPC and system port ranges (135, 445, 2869, 5040, 6463, 5357, 49152..=49157). - Single Bulk WMI Process Recon: Replaced slow $O(N)$ per-port/per-PID PowerShell process queries with a single batch
Get-CimInstance Win32_Processquery executed withTextoutput format to suppress CLIXML stream overhead. - System & Infrastructure Classification: Implemented multi-layered process filtering to block Windows background services, IDE daemons, and system noise (
svchost,System,lsass,Discord,Teams,SearchIndexer,Antigravity IDE,language_server) while surfacing active dev runtimes (node,python,deno,bun,go,cargo,java,ruby,php,dotnet,proxync). - Dynamic Framework Fingerprinting: Integrated command-line argument analysis to identify
Next.js,Vite,NestJS,FastAPI,Django,Flask,Express / Node.js,Nuxt,Remix,Astro,Spring Boot, etc. - IPv6 Target Connectivity & Host Header Normalization in Local Proxy: Refactored
start_proxyinproxy.rsto connect to127.0.0.1with automatic fallback to[::1](IPv6 localhost), resolving the 502 Bad Gateway issue on IPv6-bound servers like Vite. Added automaticHost: localhost:{port}header normalization so dev servers with strict host validation (e.g. Vite 5/6, Next.js) accept incoming public tunnel traffic without 403 / Bad Gateway errors. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Dynamic Full-Port Netstat Discovery: Completely eliminated the legacy hardcoded 9-port list (
- Modified Files:
packages/desktop/src-tauri/src/recon.rspackages/desktop/src-tauri/src/proxy.rspackages/desktop/src-tauri/src/tunnel.rspackages/desktop/src/App.tsxpackages/desktop/src/components/views/WorkspaceDashboardView.tsxCHANGELOG.md
[feature/develop-workspace-card-redesign-and-concurrency] - 2026-08-17 (Workspace Hub Card Redesign, Concurrent Tunnel Spawning & Responsive Layout)
- Feature Summary:
- Multi-Service Concurrent Tunnel Spawning: Replaced scalar
sharingPortwithspawningPorts: number[]inApp.tsxand integratedaddSpawningPort/removeSpawningPortacross all sharing handlers (shareProcessNative,shareProcessCloudflare,shareProcessLocaltunnel,shareProcess), enabling simultaneous tunnel launches without UI state collisions. - Instantaneous Spawning State: When clicking tunnel launch options, action buttons are immediately replaced with an active animated loading indicator
[ 🔄 Spawning Tunnel Connection... ], preventing double-clicks and duplicate backend spawner execution. - Workspace Hub Card Redesign: Overhauled
WorkspaceDashboardView.tsxwith Emerald code avatars, normalized framework subtitles, and isolated Local Endpoint container matching design mockups. - Action Button Styling & Containment: Styled
⚡ Expose (Proxync)with theme periwinkle purple (#7c82ff),CloudflareandLANwith dark slate containers (#20293d), and addedmin-w-0/truncatetext containment. - Responsive Layout & Screen Adaptation: Tuned grid breakpoint to
grid-cols-1 md:grid-cols-2 2xl:grid-cols-3to ensure generous card width on standard desktop window sizes with sidebar. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Multi-Service Concurrent Tunnel Spawning: Replaced scalar
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src/components/views/WorkspaceDashboardView.tsxpackages/desktop/src/index.cssCHANGELOG.md
[feature/proxync-native-tunnel] - 2026-08-15 (Direct Origin Port 2222 Routing, Strict HTTPS JIT Security, Host Key Pinning & Parallel Startup)
- Feature Summary:
- Direct Port 2222 Origin Routing: Resolved SSH tunnel connection timeout and public URL 404 issue by configuring default
PROXYNC_SSH_HOSTto connect directly to origin IP104.208.83.199:2222, bypassing Cloudflare CDN's non-HTTP port dropping onapi.proxync.dev:2222. - Strict HTTPS on JIT Key Registration: Eliminated unencrypted HTTP direct origin fallbacks. All JIT ephemeral Ed25519 public key registration and host key discovery requests now strictly enforce TLS encryption (
https://api.proxync.dev/api/tunnel/sign-jit-cert) with bearer token validation. - SSH Host Key Pinning & TOFU Elimination: Hardened SSH connection with
StrictHostKeyChecking=yes, isolated sessionknown_hostspre-seeded with official Ed25519 public host key (ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDyV3ZNPsHhwJaW6akzFMg/KAE7F1K4WamVtMaeP/vi9 root@Proxync-tunnel), andGlobalKnownHostsFile=NUL//dev/null. - Shell Metacharacter Sanitization: Applied strict alphanumeric and hyphen allowlist filter (
.filter(|c| c.is_ascii_alphanumeric() || *c == '-')) to custom subdomains across both Native SSH and Localtunnel spawners to eliminate shell argument injection risks on Windowscmd.exe /C. - Credential Redaction in WebSocket Relay: Sanitized incoming request headers (
Authorization,Cookie,Set-Cookie,x-api-key,api-key) to[REDACTED]before broadcastingrequest:logevents across the desktop IPC event bus. - Parallel Tunnel & Proxy Spawning: Refactored
App.tsxto concurrently invokeopen_tunnelandstart_proxyusingPromise.all, reducing tunnel startup latency by ~40–50%. Converted process directory resolution to asynchronous background execution (void refreshProcessDirectory). - Single-User Windows ACLs: Hardened ephemeral private key file permissions via
spawn_blockingicacls ... /inheritance:r /grant:r %USERNAME%:(R)without insecure "Everyone" fallback. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Direct Port 2222 Origin Routing: Resolved SSH tunnel connection timeout and public URL 404 issue by configuring default
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src-tauri/src/tunnel.rs.agents/changelog.jsonCHANGELOG.md
[feature/develop-batch-tunnel-teardown] - 2026-08-14 (Batch Tunnel Teardown & One-Click Stop All UI)
- Feature Summary:
- Batch Multi-Tunnel Teardown: Added a prominent "Stop All" action button beside the active session counter in the Explore screen (
WelcomeView.tsx) and Workspace Dashboard (WorkspaceDashboardView.tsx), conditionally displayed when active sessions exist. - Concurrent Teardown Handler: Implemented
stopAllTunnelsinApp.tsxexecuting concurrent nativeclose_tunnelinvocations and remote API terminations viaPromise.allwith resilient per-tunnel error handling, synchronous state pruning, and toast notifications. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Batch Multi-Tunnel Teardown: Added a prominent "Stop All" action button beside the active session counter in the Explore screen (
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src/components/views/WelcomeView.tsxpackages/desktop/src/components/views/WorkspaceDashboardView.tsx.agents/changelog.jsonCHANGELOG.md
[feature/proxync-native-tunnel] - 2026-08-14 (Proxync Native Tunnel Speed Optimization, High-Throughput SSH & Rust Backend Modularization)
- Feature Summary:
- Tunnel Speed & Connection Optimization: Replaced per-request HTTP client creation with a global pooled
HTTP_CLIENT(tcp_nodelay(true), 90s idle pool, connection reuse) for zero-RTT TLS JIT certificate signing requests. - Micro-Delay Key Reload: Reduced post-signing filesystem synchronization delay from 350ms to 25ms to take advantage of sub-millisecond inotify key reloading on Linux edge servers.
- High-Throughput SSH Ciphers & QoS: Configured native SSH connection with high-speed, hardware-accelerated cipher suites (
chacha20-poly1305@openssh.com,aes128-gcm@openssh.com), disabled compression CPU overhead (Compression=no), enforcedIPQoS=throughput, and tuned keepalive parameters (TCPKeepAlive=yes,ServerAliveCountMax=3,ConnectTimeout=5). - Windows ACL Permission Optimization: Streamlined Windows file permissions into a single-pass
icaclsinvocation (/inheritance:r /grant:r %USERNAME%:(R)). - Modular Rust Backend Architecture: Refactored monolithic
lib.rs(1000+ lines) into clean, decoupled domain modules:http.rs(CORS-bypassing HTTP executor & decompression),proxy.rs(local TCP proxy & event emitters),recon.rs(process recognition & directory resolution),storage.rs(local data serialization), andtunnel.rs(Proxync Native SSH, Localtunnel & Cloudflare tunnel managers). - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Tunnel Speed & Connection Optimization: Replaced per-request HTTP client creation with a global pooled
- Modified Files:
packages/desktop/src-tauri/src/http.rspackages/desktop/src-tauri/src/lib.rspackages/desktop/src-tauri/src/proxy.rspackages/desktop/src-tauri/src/recon.rspackages/desktop/src-tauri/src/storage.rspackages/desktop/src-tauri/src/tunnel.rs.agents/changelog.jsonCHANGELOG.md
[fix/security-cve-hardening] - 2026-08-14 [SECURITY-CVE] (Security CVE Remediation, Content Security Policy & CI/CD Workflow Hardening)
- Feature Summary:
- Dependency CVE Remediation [TYPE: CVE-PATCH]: Patched transitive
nanoidbuild dependency vulnerability (GHSA-2v37-7h3g-55p8) vianpm audit fix, resolving all npm audit security warnings (0 vulnerabilities). - Tauri Content Security Policy Activation: Configured a robust Content Security Policy in
tauri.conf.json(default-src 'self',style-src 'self' 'unsafe-inline' https://fonts.googleapis.com,font-src 'self' https://fonts.gstatic.com data:,connect-src 'self' ws: wss: http: https: ipc:;) to protect the desktop webview container against unauthorized external script execution. - CI/CD Workflow Script Injection Protection: Hardened
prepare-release.ymlby encapsulating${{ github.event.inputs.version }}insideenv: INPUT_VERSIONwith strict semantic version regex format validation (^[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z0-9.]+)?$) and cross-platform Node.jsCargo.tomlupdates. - Local Security Report Protection: Added
.gstack/to.gitignoreto prevent local AI security audit reports from being tracked or exposed. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Dependency CVE Remediation [TYPE: CVE-PATCH]: Patched transitive
- Modified Files:
.github/workflows/prepare-release.yml.gitignorepackage-lock.jsonpackages/desktop/src-tauri/tauri.conf.jsonCHANGELOG.md
[feature/develop-workspace-hub-traffic-filters-and-tunnel-ux] - 2026-08-14 (Workspace Hub Redesign, Theme-Matching Traffic Filters, Process Tree Teardown & Proxync Native Tunnel UX)
- Feature Summary:
- Scalable Workspace Hub: Replaced 100-workspace dropdown clutter with dedicated
WorkspaceDashboardViewrendering detected local server cards and in-place full scanning. - Theme-Matching Dropdown Filters: Converted Traffic Inspector toolbar to single-row custom
<select>dropdown pills (Workspace:,Server:,Method:,Status:) with dark theme background styling (bg-surface-container-high text-on-surface) and early-exit filter pipeline optimizations. - Process Tree Teardown Fix: Upgraded Rust
close_tunnelbackend command to executetaskkill /F /Ton Windows, terminating child process trees (cmd.exe,cloudflared.exe,ssh.exe) and abortingPROXY_HANDLESTCP proxy listeners to prevent orphan background connections. - Public Share Scrollbar RCA Fix: Expanded
.domain-select-dialogmodal grid bounds (max-width: 520px; max-height: min(820px, 92vh)) and removed hardcodedmaxHeight: '420px'on options container inDialogs.tsx, permanently eliminating vertical scrollbar flakiness across all selection states. - Dynamic Directory Resolution Security Audit: Removed hardcoded developer machine path candidates (
candidate_rootscontainingE:\to-do,E:\release, etc.) inlib.rs(resolve_directory_advanced) and replaced with dynamic current working directory and user home profile resolution. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Scalable Workspace Hub: Replaced 100-workspace dropdown clutter with dedicated
- Modified Files:
packages/desktop/src-tauri/src/lib.rspackages/desktop/src/App.tsxpackages/desktop/src/components/views/Dialogs.tsxpackages/desktop/src/components/views/TrafficView.tsxpackages/desktop/src/components/views/WelcomeView.tsxpackages/desktop/src/components/views/WorkspaceDashboardView.tsxpackages/desktop/src/components/views/RequestWorkbenchDialog.tsxCHANGELOG.md
[feature/proxync-native-tunnel] - 2026-08-13 (Proxync Native SSH Tunnel Engine, Zero-Trace Key Security & Random Subdomain Auto-Generation)
- Feature Summary:
- Native SSH Tunnel Engine: Built high-speed native SSH tunneling engine in Rust (
open_native_tunnelinlib.rs) establishing direct reverse port-forwarding (-R {subdomain}:80:127.0.0.1:{port}) to Proxync edge servers (api.proxync.dev/104.208.83.199:2222). - Ephemeral JIT Certificate Signing: Integrated on-demand Ed25519 keypair generation and JIT certificate signing request via
api.proxync.dev/api/tunnel/sign-jit-certwith Bearer auth token validation. - Zero-Trace Security (
TempDirGuard): Implemented RAIITempDirGuardin Rust ensuring temporary SSH private keys andknown_hostsfiles are securely erased on tunnel termination. Enforced strict file permissions (icacls/0600) on Windows and Unix platforms. - Random Subdomain Auto-Generation: Native SSH tunnels auto-generate secure 8-character random subdomains (e.g.
px-a1b2c3d4.proxync.dev) without user input, while Localtunnel retains optional custom subdomain configuration. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Native SSH Tunnel Engine: Built high-speed native SSH tunneling engine in Rust (
- Modified Files:
packages/desktop/src-tauri/src/lib.rspackages/desktop/src-tauri/.gitignorepackages/desktop/src/App.tsxpackages/desktop/src/components/views/Dialogs.tsxpackages/desktop/src/components/views/ProcessView.tsx.agents/changelog.jsonCHANGELOG.md
[feature/develop-cve-emergency-security-radar] - 2026-08-10 (Emergency CVE Security Update Radar & Zero False-Positive Detection)
- Feature Summary:
- Emergency CVE Radar: Implemented deterministic
isCriticalSecurityUpdate()helper inApp.tsxscanning GitHub Release notes for explicit security tags ([SECURITY-CVE],[TYPE: CVE-PATCH],[CVE], or"critical": true). - Unconditional Startup Security Check: Refactored
runUpdateCheck(isStartupCheck)to run an immediate pre-flight scan on every app launch. Automatically overridesautoUpdate: OFFsettings and bypasses skipped versions only when a[SECURITY-CVE]tagged release is detected. - Streamlined Force Update UI: Displays a clean, non-scary
🛡️ Required Security Update vX.Y.Zforce update banner with live percentage progress tracking during download and instantRestart Nowrelaunch action. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Emergency CVE Radar: Implemented deterministic
- Modified Files:
packages/desktop/src/App.tsxCHANGELOG.md
[fix/footer-responsiveness-and-version-bump] - 2026-08-10 (Status Footer Responsiveness Fix, Auto-Updater IPC Fix & Release Version Bump to v0.2.1)
- Feature Summary:
- Auto-Updater Capability Fix: Fixed missing Tauri v2 security IPC permissions in
packages/desktop/src-tauri/capabilities/default.json. Added"updater:default"and"process:default"permissions so the existing auto-updater (check(),downloadAndInstall()) and restart (relaunch()) pass Tauri v2 IPC security checks without runtime permission errors. - Status Footer Responsiveness: Fixed fixed-positioning gaps and text overlapping issues on narrow viewports in
App.tsxandindex.css. Added@media (max-width: 820px)rule setting.app-footerand.output-console-docktoleft: 0 !importantwhen the sidebar slides offscreen. Added smooth transition (left 200ms ease),overflow-hidden, andwhitespace-nowrapto prevent vertical line clipping. Added responsive truncation for active tunnel URLs and responsive visibility breakpoints (hidden sm:inline,hidden md:inline) for latency, encoding, and console text labels. - Release Version Bump: Bumped release version from
0.2.0to0.2.1across workspace manifests (package.json,packages/desktop/package.json,package-lock.json,Cargo.toml,tauri.conf.json), Rust HTTP clientUser-Agent(lib.rs), sidebar badge (App.tsx), and architecture reference map (.agents/architecture.json). - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Auto-Updater Capability Fix: Fixed missing Tauri v2 security IPC permissions in
- Modified Files:
package.jsonpackage-lock.jsonpackages/desktop/package.jsonpackages/desktop/src-tauri/Cargo.tomlpackages/desktop/src-tauri/tauri.conf.jsonpackages/desktop/src-tauri/capabilities/default.jsonpackages/desktop/src-tauri/src/lib.rspackages/desktop/src/App.tsxpackages/desktop/src/index.cssCHANGELOG.md
[fix/custom-domain-dns-preflight] - 2026-08-08 (Custom Domain DNS Pre-Flight Verification & Restart Persistence Fix)
- Feature Summary:
- Root Cause Fixed: Resolved a silent tunnel bypass where a previously verified custom domain (
demo.clueliq.com) would still activate a live tunnel even after its DNS TXT record was deleted from the registrar (DNS_PROBE_FINISHED_NXDOMAIN). The bug was a React state dependency issue —shareProcessuseddomains.find()against React state which could be empty (app freshly restarted) or keyed under a different workspace ID, causing the entire DNS pre-flight block to silently skip. - Restart Persistence Fix: Fixed issue where domain verification status reverted back to verified upon app restart. Updated
api.domains.list()to scan allproxync_custom_domains_*localStoragekeys and deduplicate entries so workspace ID mismatches no longer return empty lists. Removed staleactiveWorkspace.domainsfallback inApp.tsxdomain loading effect so old workspace state blob never overrides updatedlocalStoragedomain verification status. api.domains.verifyByName(): New method inapi.tsthat scans ALLlocalStoragekeys prefixed withproxync_custom_domains(not a hardcoded candidate list) to find the domain record with zero React state dependency. Performs live DNS-over-HTTPS lookup via Google DoH (dns.google/resolve) with Cloudflare DoH (cloudflare-dns.com/dns-query) as fallback. If both resolvers are unreachable (network/firewall issue), the tunnel is blocked to be safe. On DNS token mismatch or NXDOMAIN: rotatesverificationToken, marksverified: falseinlocalStorage, syncs state back to React andactiveWorkspace, and surfaces an actionable toast error.- UI Navigation Bug Fixed: Moved starter scan state setup (
setStarterSuggestions,setSavedRequests,updateActiveWorkspace) to after the DNS pre-flight block. Previously these ran unconditionally at the top ofshareProcess, causing the UI to navigate to the process view and show the Import Templates banner even when the tunnel was being blocked. - Traffic Interception Fix: Fixed
open_tunnelinvocation to passproxyPort(Rust TCP proxy port) instead of the rawprocess.port, enabling Traffic View log interception for custom domain tunnels. Fixedtunnels.create()to build the correcthttp://domain:portURL format. - Domain State Sync: Improved
addDomain,verifyDomain, andremoveDomainhandlers to properly sync domain state changes intoactiveWorkspaceviaupdateActiveWorkspaceso Settings and process views stay in sync. - Settings UX Polish: Enter key now submits the Add Domain form. DNS configuration table polished with new
.dns-tableCSS classes.Host/Valuecopy buttons upgraded frombtn-ghosttobtn-secondary. Verify button shows dynamic✓ Re-verify/Verify Domainlabels. Remove button upgraded tobtn-dangerwith labelRemove Domain. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Root Cause Fixed: Resolved a silent tunnel bypass where a previously verified custom domain (
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src/lib/api.tspackages/desktop/src/components/views/SettingsView.tsxpackages/desktop/src/index.cssCHANGELOG.md
[feature/develop-0.2.0-ui-contrast-and-escape-shortcuts] - 2026-08-07 (UI Button Contrast Overhaul, Active Internet Connection Guard & Escape Shortcuts)
- Feature Summary:
- Button Contrast Overhaul: Updated
--color-on-primaryand--color-on-primary-containertheme tokens inindex.cssto#fffffffor high contrast text. Updated inline collection folderCreatebutton styling inPostmanView.tsxtotext-white font-bold shadow-sm shadow-primary/25. - Active Internet Connectivity Guard: Added
checkRealInternetConnection()edge ping check to preventcloudflaredCLI timeout delays when attempting to open cloud tunnels offline. Addedofflineandonlineevent listeners with bottom-right toast notifications and added an offline callout banner insideDomainSelectDialog. - Global Escape Key Dismissals & Ponytail Refactoring: Added
useEscapecustom hook inSharedComponents.tsxto handle Esc key dismissals across inline workspace creation (LobbyView.tsx), collection creation and renaming (PostmanView.tsx), and all modal dialogs (Dialogs.tsx,App.tsx). - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Button Contrast Overhaul: Updated
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src/components/views/Dialogs.tsxpackages/desktop/src/components/views/LobbyView.tsxpackages/desktop/src/components/views/PostmanView.tsxpackages/desktop/src/components/views/SharedComponents.tsxpackages/desktop/src/index.csspackages/desktop/src/lib/toast.tsxCHANGELOG.md
[v0.2.0-release] - 2026-08-07 (Traffic Inspector Overhaul, Generic Replay Engine, Enterprise Tier Preview & Playground Hotkeys)
- Feature Summary:
- Traffic Inspector Overhaul: Fixed React key collisions using unique UUIDs. Fixed inline dropdown auto-collapse under live traffic by tracking expansion via immutable request IDs. Solved scroll-position jumping by removing container dynamic key. Fixed status code badge updates in
App.tsxby aligningrawRequestIdmatching. Enhanced Rust TCP and WebSocket proxy inlib.rsto capture and emit headers HashMap and bodyPreview. - Generic Replay Engine: Upgraded
replayRequestinApp.tsxto generically execute any HTTP method (GET,POST,PUT,PATCH,DELETE) via native Rust HTTP executor and append newly replayed packages directly to Traffic Logs. Raised modal overlay z-index to9999with glassmorphic backdrop blur. - Type Safety & Enterprise Preview: Resolved
AppSettingsandMainViewtype drift intypes.ts. Re-exported shared interfaces inSharedComponents.tsx. Replaced static fake API key box with Enterprise API Key Management preview card inSettingsView.tsx. Upgraded Account Settings to Proxync Enterprise & Cloud Sync preview card. Added Enterprise RBAC and Policy badges to Workspace Guardrails. Updated official website domain URLs acrossSettingsView,WelcomeView, andDocsViewtohttps://proxync.dev/. - Playground Hotkeys & Code Generator Fix: Added
Ctrl + /andCtrl + ?keyboard hotkey binding in Playground (PostmanView.tsx) displaying a glassmorphic hotkey reference modal overlay. Replaced TODO comment stub incodeSnippetGenerator.tswith working JSON response handler template. - Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Traffic Inspector Overhaul: Fixed React key collisions using unique UUIDs. Fixed inline dropdown auto-collapse under live traffic by tracking expansion via immutable request IDs. Solved scroll-position jumping by removing container dynamic key. Fixed status code badge updates in
- Modified Files:
packages/desktop/src-tauri/src/lib.rspackages/desktop/src/App.tsxpackages/desktop/src/components/views/TrafficView.tsxpackages/desktop/src/components/views/Dialogs.tsxpackages/desktop/src/components/views/SettingsView.tsxpackages/desktop/src/components/views/PostmanView.tsxpackages/desktop/src/components/views/WelcomeView.tsxpackages/desktop/src/components/views/DocsView.tsxpackages/desktop/src/components/views/SharedComponents.tsxpackages/desktop/src/lib/codeSnippetGenerator.tspackages/desktop/src/lib/types.tspackages/desktop/src/index.cssCHANGELOG.md
[feature/develop-playground-ux-and-context-menu-enhancements] - 2026-08-06 (Playground UX Overhaul, Glass Context Menu & Smart Banner Hiding)
- Feature Summary: Expanded Collections Rail sidebar width to 280px and eliminated duplicate HTTP method badges in sidebar items. Built a custom glassmorphic right-click context menu (Rename, Copy URL, Duplicate Request, Delete) with global contextmenu suppression unless Developer Inspect Tools is enabled. Added Developer Inspect Tools toggle in Settings under Danger Zone. Centralized
HTTP_METHODSandstripMethodPrefix()utility inSharedComponents.tsxto strip method prefixes from request titles. Added unimported endpoint deduplication to starter suggestions banner so it automatically stays hidden when all scanned endpoints are already in collections.- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src/components/views/Dialogs.tsxpackages/desktop/src/components/views/PostmanView.tsxpackages/desktop/src/components/views/SettingsView.tsxpackages/desktop/src/components/views/SharedComponents.tsxpackages/desktop/src/lib/openApiGenerator.tspackages/desktop/src/lib/types.tspackages/desktop/src/index.cssCHANGELOG.md
[PR #69] - 2026-08-06 (Target Route Badge in Playground - Contributed by @slegarraga)
- Feature Summary: Added a compact, pill-shaped Target Route Badge (
.route-badge) next to the Send button in Playground request builder. Displays dynamic route target indicators (Cloudflare Edge,Public Tunnel, orLocal Loopback) so developers immediately know whether traffic traveled through a public edge tunnel or local loopback. Upgraded design tokens acrossDialogs.tsx,SharedComponents.tsx, andindex.cssto Material 3 palette tokens. Made local loopback tooltip URL 100% dynamic based on active process port. - Contributor: @slegarraga (PR #69)
- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/desktop/src/components/views/PostmanView.tsxpackages/desktop/src/components/views/Dialogs.tsxpackages/desktop/src/components/views/SharedComponents.tsxpackages/desktop/src/index.csspackages/desktop/src/App.tsxCHANGELOG.md
[feature/develop-workspace-activity-and-tunnel-ux-upgrades] - 2026-08-06 (Dynamic Workspace Activity, 7-Day Inactive Auto-Categorization, Custom Glass Modals & 1-Click Open in Browser)
- Feature Summary: Implemented dynamic workspace activity tracking (
lastActivityAt) with relative time formatting (Just now,4m ago,18h ago,3d ago), auto-activating on workspace selection, tunnel sharing, and HTTP traffic logs. RenamedArchivedtab toInactivewith automatic 7-day inactivity filtering, auto-disappearing dormant workspaces intoInactivetab and restricting Provision Workspace inline card toActivetab. Replaced nativeconfirm()on Purge All Data with glassmorphicConfirmPurgeDialog. Enhanced Active Workspace selector typography and contrast. Added 1-click Open in Browser option to Active Tunnels three-dot menu (⋮) inWelcomeViewand endpoint action tiles inProcessView. Fixed horizontal icon alignment in Coming Soon modal. Renamed Postman navigation label to single-word industry-standard Playground.- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/desktop/src-tauri/Cargo.tomlpackages/desktop/src/App.tsxpackages/desktop/src/components/views/Dialogs.tsxpackages/desktop/src/components/views/LobbyView.tsxpackages/desktop/src/components/views/ProcessView.tsxpackages/desktop/src/components/views/SettingsView.tsxpackages/desktop/src/components/views/SharedComponents.tsxpackages/desktop/src/components/views/WelcomeView.tsxpackages/desktop/src/lib/types.tsCHANGELOG.md
[feature/develop-patch-socketio-parser-vulnerability] - 2026-08-06 (Socket.IO Vulnerability Patch & Orphaned Dependency Pruning)
- Feature Summary: Resolved Dependabot security vulnerability
GHSA-2m8v-j782-fhvr(Socket.IO: Zero-attachment Memory Exhaustion) and conducted full codebase audit. Completely pruned 3 orphaned, 100% unused dependencies (socket.io-client,socket.io-parser,react-router) frompackages/desktop/package.jsonand rootpackage.jsonoverrides, removing 9 unneeded node packages. Verified vianpm audit(0 vulnerabilities) and cleannpm run build.- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
package.jsonpackages/desktop/package.jsonpackage-lock.jsonCHANGELOG.md
[feature/main-telemetry-options] - 2026-08-06 (Persistent Telemetry System with Low-CPU Basic Mode)
- Feature Summary: Fully wired persistent Enhanced vs Basic telemetry options into
AppSettingswith storage persistence. Enhanced Mode (default) enables full P50/P90/P99 latency calculations, route leaderboards, and bandwidth meters. Basic Mode bypasses array sorting (durations.sort) and non-fatal percentile math to minimize CPU/RAM computational overhead, logging only critical 5xx errors. Features clean inline descriptions in Settings and an active Low CPU Mode indicator banner in Observability Hub.- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/desktop/src/components/views/SharedComponents.tsxpackages/desktop/src/components/views/SettingsView.tsxpackages/desktop/src/components/views/ObservabilityView.tsxpackages/desktop/src/App.tsx.agents/changelog.jsonCHANGELOG.md
[feature/main-smart-auto-update] - 2026-08-05 (Smart Version-Aware Auto-Update System)
- Feature Summary: Fully wired the Settings "Automatic Updates" toggle to the real update scheduler. When ON (default), the app checks for updates on startup and every 2 hours. When OFF, it checks only every 7 days using a persisted timestamp. Introduced a semver
isForceUpdate()helper: if the minor or major version segment increments (e.g.1.1.x → 1.2.0,0.2.x → 0.3.0), a forced update dialog is shown — red, persistent, no Skip or Later buttons, only "Update Now". Pure patch-only bumps (e.g.1.1.4 → 1.1.6) show the standard optional toast with Skip this version and Later. Toggle state is now persisted toAppSettingsand survives restarts.- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/desktop/src/components/views/SharedComponents.tsxpackages/desktop/src/components/views/SettingsView.tsxpackages/desktop/src/App.tsxpackages/desktop/package.jsonpackage-lock.json.agents/changelog.jsonCHANGELOG.md
[feature/main-observability-autostart-hub] - 2026-08-05 (Observability Hub, Auto-Start on Boot & Silent Process Spawning)
- Feature Summary: Integrated zero-config Observability Hub featuring P50/P90/P99 latency analytics, status code heatmap, bandwidth meter, public Webhook stream replay, Error Center, and high-contrast theme styling for Midnight Slate and Dracula Dark. Integrated native Auto-Start on Boot functionality using
tauri-plugin-autostartwith silent process spawning on Windows (CREATE_NO_WINDOW).- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/desktop/src/components/views/ObservabilityView.tsxpackages/desktop/src/components/views/SettingsView.tsxpackages/desktop/src/components/views/SwaggerView.tsxpackages/desktop/src/App.tsxpackages/desktop/src-tauri/src/lib.rspackages/desktop/src-tauri/Cargo.tomlpackages/desktop/src-tauri/Cargo.lockpackages/desktop/src-tauri/capabilities/default.jsonpackage-lock.jsonpackages/desktop/package.jsonCHANGELOG.md
[feature/main-observability-hub] - 2026-08-05 (Zero-Config Observability Hub, Latency Analytics & Webhook Stream)
- Feature Summary: Implemented high-performance O(N) zero-config Observability Hub in
ObservabilityView.tsxfeaturing percentile latency metrics (P50/P90/P99), status code distribution gauge, total bandwidth meter, shared public tunnel telemetry, public Webhook interception stream with 1-click Webhook Replay, structured Error Center eliminating terminal console log soup, slowest routes leaderboard, and 1-click debugging navigation to Traffic Inspector and Postman Studio.- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/desktop/src/components/views/ObservabilityView.tsxpackages/desktop/src/App.tsxCHANGELOG.md
[feature/develop-auto-updater] - 2026-08-04 (Production-Ready Auto Updater)
- Feature Summary: Implemented a fully production-ready automatic update system using Tauri v2 native plugins (
tauri-plugin-updater,tauri-plugin-process), modelled after the POSINX Electron auto-updater pattern. On startup (and every 2 hours), the app silently checks GitHub Releases for a newer version. When an update is found, a persistent non-auto-dismissing toast appears with three actions: Update Now (silent background download with live % progress shown on the button), Skip this version (version saved tolocalStorage— won't prompt again for that version), and Later (dismisses until next check). After downloading, a second persistent toast prompts Restart Now or Later. Upgradedtoast.tsxto support persistent toasts with a newdismissToast(id)API. Updatedrelease.ymlGitHub Actions workflow to passTAURI_SIGNING_PRIVATE_KEYandTAURI_SIGNING_PRIVATE_KEY_PASSWORDsecrets totauri-actionwithincludeUpdaterJson: true, enabling automatic signedupdater.jsongeneration and upload on every release. Set real public key intauri.conf.json. Added*.keyand*.key.pubto.gitignoreto protect signing keys from accidental commits.- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/desktop/src-tauri/Cargo.tomlpackages/desktop/src-tauri/Cargo.lockpackages/desktop/src-tauri/src/lib.rspackages/desktop/src-tauri/tauri.conf.jsonpackages/desktop/package.jsonpackages/desktop/src/App.tsxpackages/desktop/src/lib/toast.tsx.github/workflows/release.yml.gitignoreCHANGELOG.md
[fix/develop-swagger-redirection] - 2026-08-04 (Swagger Postman Export Auto-Redirection & Theme Filter Pill High-Contrast Contrast Fix)
- Feature Summary: Added automatic view redirection to Postman Studio (
setMainView('postman')) upon clicking 'Export to Postman' in Swagger Studio. Fixed active tag filter pill text contrast across Dracula Dark, Midnight, Cyberpunk, and all themes by setting bright white bold text (text-white font-bold shadow-md shadow-primary/25).- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src/components/views/SwaggerView.tsxREADME.mdCHANGELOG.md
[fix/develop-postman-response-and-decompression] - 2026-08-04 (Postman Response Payload Decompression & Native Execution Fix)
- Feature Summary: Resolved empty HTTP response payload issue in Postman Studio when requesting Cloudflare Tunnels or relative endpoints. Added gzip, deflate, and brotli automatic decompression features to reqwest in
Cargo.toml, updatedCargo.lock, set desktop User-Agent header in Rust native HTTP executor (lib.rs), and bypassed offline mock response handler.- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/desktop/src-tauri/Cargo.tomlpackages/desktop/src-tauri/Cargo.lockpackages/desktop/src-tauri/src/lib.rsCHANGELOG.md
[feature/develop-swagger-generator] - 2026-08-04 (Automatic OpenAPI Spec Generator, Multi-Framework Codebase Scanner & Swagger Studio UX Overhaul)
- Feature Summary: Implemented an automatic multi-framework codebase route scanner (Express, Fastify, Next.js, NestJS, FastAPI, Spring Boot, Go) and manual on-demand OpenAPI 3.0 spec generation engine. Added traffic-driven JSON schema inferrer, framework code annotation generator ('Add to Codebase' snippet tab for NestJS, Express JSDoc, FastAPI, Spring Boot, Go), 2-way Postman collection export/import, and redesigned Swagger Studio UX with search filtering, endpoint drawers, parameter tables, raw JSON/YAML views, and spec downloads.
- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/desktop/src/lib/codebaseScanner.tspackages/desktop/src/lib/openApiGenerator.tspackages/desktop/src/lib/codeSnippetGenerator.tspackages/desktop/src/lib/types.tspackages/desktop/src/components/views/SharedComponents.tsxpackages/desktop/src/components/views/SwaggerView.tsxpackages/desktop/src/components/views/PostmanView.tsxpackages/desktop/src/App.tsxCHANGELOG.md
[v0.2.0-dev] - 2026-08-03 (Postman Studio Redesign, Hotkeys & Developer UX Refresh)
- Feature Summary: Redesigned Postman Studio (
PostmanView.tsx) with static collection tree ordering, inline folder renaming/deletion, custom collection hotkeys (Ctrl+Enterto Send,Ctrl+Sto Save directly to selected collection), inline Response tab, native Rust HTTP executor (execute_http_request) to bypass CORS, and Windows console signal handler (SetConsoleCtrlHandler). Bumped application version to0.2.0across workspace manifests (package.json,packages/desktop/package.json,tauri.conf.json,Cargo.toml,Cargo.lock,package-lock.json, and.agents/architecture.json). Established application-wideNunito Sansfont typography system inassets/typography.css. RedesignedDocsView.tsxinto a clean 2-column documentation hub with direct portal links tohttps://proxync.dev/docs.- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
package.jsonpackage-lock.jsonpackages/desktop/package.jsonpackages/desktop/src-tauri/Cargo.tomlpackages/desktop/src-tauri/Cargo.lockpackages/desktop/src-tauri/tauri.conf.jsonpackages/desktop/src-tauri/src/lib.rspackages/desktop/src/App.tsxpackages/desktop/src/index.csspackages/desktop/src/assets/typography.csspackages/desktop/src/components/views/PostmanView.tsxpackages/desktop/src/components/views/DocsView.tsx.agents/architecture.json.agents/changelog.jsonCHANGELOG.md
[v0.1.8] - 2026-08-02 (PostCSS Security Patch & Version Bump)
- Feature Summary: Patched Dependabot security vulnerability by upgrading
postcssfrom8.5.16to8.5.25andnanoidfrom3.3.15to3.3.16inpackage-lock.json. Bumped version to0.1.8across rootpackage.json,packages/desktop/package.json,tauri.conf.json,Cargo.toml, and.agents/architecture.json.- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
package.jsonpackage-lock.jsonpackages/desktop/package.jsonpackages/desktop/src-tauri/Cargo.tomlpackages/desktop/src-tauri/Cargo.lockpackages/desktop/src-tauri/tauri.conf.json.agents/architecture.json.agents/changelog.jsonCHANGELOG.md
[feature/main-fix-postcss-vulnerability] - 2026-08-01 (PostCSS Security Patch)
- Feature Summary: Patched Dependabot security vulnerability by upgrading
postcssfrom8.5.16to8.5.25andnanoidfrom3.3.15to3.3.16inpackage-lock.json.- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
package.jsonpackage-lock.jsonpackages/desktop/package.jsonpackages/desktop/src-tauri/Cargo.tomlpackages/desktop/src-tauri/Cargo.lockpackages/desktop/src-tauri/tauri.conf.json.agents/architecture.json.agents/changelog.jsonCHANGELOG.md
[v0.1.7] - 2026-08-01 (React Router CVE Patch & Version Bump)
- Feature Summary: Patched Dependabot security vulnerability (CVE-2026-22030 / GHSA-h5cw-625j-3rxh) by upgrading
react-routerto^8.3.0(>= 8.3.0) and removing the unused legacyreact-router-domdependency. Bumped version to0.1.7across rootpackage.json,packages/desktop/package.json,tauri.conf.json,Cargo.toml, and.agents/architecture.json, and updatedpackage-lock.jsonandCargo.lockaccordingly.- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
package.jsonpackage-lock.jsonpackages/desktop/package.jsonpackages/desktop/src-tauri/Cargo.tomlpackages/desktop/src-tauri/Cargo.lockpackages/desktop/src-tauri/tauri.conf.json.agents/architecture.json.agents/changelog.jsonCHANGELOG.md
[v0.1.6] - 2026-07-23 (Installer UI Panel Fix & Version Bump)
- Feature Summary: Fixed blank setup screen in NSIS installer by generating and configuring custom BMP images (
nsis-sidebar.bmpandnsis-header.bmp) for the welcome page sidebar and header. Bumped version to0.1.6across rootpackage.json,packages/desktop/package.json,tauri.conf.json,Cargo.toml, and.agents/architecture.json, and updatedpackage-lock.jsonandCargo.lockaccordingly.- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
package.jsonpackage-lock.jsonpackages/desktop/package.jsonpackages/desktop/src-tauri/Cargo.tomlpackages/desktop/src-tauri/Cargo.lockpackages/desktop/src-tauri/tauri.conf.jsonpackages/desktop/src-tauri/icons/nsis-header.bmppackages/desktop/src-tauri/icons/nsis-sidebar.bmp.agents/architecture.json.agents/changelog.jsonCHANGELOG.md
[v0.1.3] - 2026-07-21 (Vulnerability Patch & Release Branding)
- Feature Summary: Updated desktop package name from generic
desktoptoproxync, set author toInilax, and added project description across package.json, Cargo.toml, and tauri.conf.json. Configured NSIS installerIcon under bundle.windows in tauri.conf.json to display custom Proxync ico branding during setup. Patched glib dependency to >= 0.20.12 in Cargo.lock to resolve Dependabot memory unsoundness advisory #4. Updated workspace architecture recon map (.agents) and bumped version to v0.1.3 across all workspace config files.- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
package.jsonpackages/desktop/package.jsonpackages/desktop/src-tauri/Cargo.tomlpackages/desktop/src-tauri/Cargo.lockpackages/desktop/src-tauri/src/main.rspackages/desktop/src-tauri/tauri.conf.json.agents/architecture.json.agents/changelog.jsonCHANGELOG.md
[feature/main-standalone-mode] - 2026-07-19 (Cleanup & Branding)
- Feature Summary: Updated workspace brand logo to Proxync Graphite Gateway SVG, replacing the old PNG assets. Removed deprecated
docs/assetsfolder. Re-wroteREADME.mdto reflect local-first standalone desktop architecture and simplify workspace startup commands. Untracked.agentsdirectory in git to respect gitignore specifications. Replaced terminal-orb PX text with logo image in WelcomeView. - Modified/Deleted Files:
README.mdCHANGELOG.mdpackages/desktop/src/App.tsxpackages/desktop/src/index.csspackages/desktop/src/components/views/WelcomeView.tsxpackages/desktop/public/logo.svg(added)docs/assets(deleted)
[feature/main-standalone-mode] - 2026-07-19
- Feature Summary: Migrated application to 100% offline, standalone, local-first mode. Removed NestJS API backend (
packages/api), postgres/redis configurations, anddocker-compose.yml. Implemented Rust state serialization commands saving configurations directly toAppData/Roaming/Proxync/data.json. Created a local TCP proxy in Rust that intercepts HTTP traffic and emits request/response logs directly to the frontend via Tauri events. Removed all references to Guardrails, Observability views, and Companion chat/voice panels from frontend state and views. Configured Tauri build settings to output a portable single executable, verified clean builds, and updated gitignore settings. - Modified/Deleted Files:
packages/desktop/src-tauri/src/lib.rspackages/desktop/src-tauri/tauri.conf.jsonpackages/desktop/src/App.tsxpackages/desktop/src/components/views/SettingsView.tsxpackages/desktop/src/components/views/LobbyView.tsxpackages/desktop/src/components/views/ProcessView.tsxpackages/desktop/src/components/views/SwaggerView.tsxpackages/desktop/src/components/views/Dialogs.tsxpackages/desktop/src/components/views/SharedComponents.tsxpackages/desktop/src/lib/api.tspackages/desktop/src/lib/types.ts.gitignorepackage.jsondocker-compose.yml(deleted)packages/desktop/src/components/views/ObservabilityView.tsx(deleted)
[feature/main-dynamic-processes-notes] - 2026-07-18
- Feature Summary: Implemented dynamic process directory and executable path lookup on Windows using native netstat parsing and WMI/CIM queries with a high-performance local process cache in Rust to prevent OS overhead; shifted Workspace Notes input from SettingsView to WelcomeView; removed obsolete relayDeploymentHint settings from AppSettings.
- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/desktop/src-tauri/src/lib.rspackages/desktop/src/lib/types.tspackages/desktop/src/components/views/SharedComponents.tsxpackages/desktop/src/components/views/WelcomeView.tsxpackages/desktop/src/components/views/SettingsView.tsxpackages/desktop/src/App.tsx
[feature/main-modular-ui-redesign] - 2026-07-18
- Feature Summary: Redesigned the desktop UI/UX completely with a premium glassmorphism theme and modular structure, refactoring App.tsx into independent views under components/views; successfully merged with upstream branch changes, preserving Cloudflare tunnel support, state hydration logic, and Control Plane connection options; resolved all merge conflicts and validated TypeScript compilation.
- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src/index.csspackages/desktop/src/components/views/Dialogs.tsxpackages/desktop/src/components/views/LobbyView.tsxpackages/desktop/src/components/views/ObservabilityView.tsxpackages/desktop/src/components/views/PostmanView.tsxpackages/desktop/src/components/views/ProcessView.tsxpackages/desktop/src/components/views/SettingsView.tsxpackages/desktop/src/components/views/SharedComponents.tsxpackages/desktop/src/components/views/SwaggerView.tsxpackages/desktop/src/components/views/TrafficView.tsxpackages/desktop/src/components/views/WelcomeView.tsxpackage-lock.json.agents/changelog.json
[feature/main-cloudflare-refactor] - 2026-07-17
- Feature Summary: Integrated Cloudflare Tunnel support using npx cloudflared quick tunnels with automatic trycloudflare URL parsing; built premium visual antenna latency signal bars displaying ping times to Local loopback, Cloudflare edge, and Localtunnel endpoints; refactored App.tsx monolith into independent views (LobbyView, ProcessView, TrafficView, PostmanView, SwaggerView, ObservabilityView, SettingsView) and dialog components; resolved workspaces state hydration race condition by loading local state synchronously on mount; added seamless silent workspace auto-registration during public domain sharing; added permanent Control Plane Connection section inside Settings with reconnect actions; bypassed guest user active tunnel count limits for offline/local MVP mode.
- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/api/src/tunnels/tunnels.service.tspackages/desktop/src-tauri/src/lib.rspackages/desktop/src/App.tsxpackages/desktop/src/components/CompanionPanel.tsxpackages/desktop/src/components/DiscoverDialog.tsxpackages/desktop/src/components/DomainSelectDialog.tsxpackages/desktop/src/components/RequestDetailDialog.tsxpackages/desktop/src/lib/types.tspackages/desktop/src/screens/LobbyView.tsxpackages/desktop/src/screens/ObservabilityView.tsxpackages/desktop/src/screens/PostmanView.tsxpackages/desktop/src/screens/ProcessView.tsxpackages/desktop/src/screens/SettingsView.tsxpackages/desktop/src/screens/SwaggerView.tsxpackages/desktop/src/screens/TrafficView.tsx
[feature/main-responsive-ui-cleanup] - 2026-07-17
- Feature Summary: Removed duplicate top navbar and tab-strip navigation bars — all navigation now lives exclusively in the sidebar, eliminating the dual-nav confusion. Added a compact 48px mobile-nav-bar (hamburger + current view label) that only appears on screens ≤820px where the sidebar becomes a slide-in overlay drawer. Fixed full-screen layout breakage caused by grid display:none row collapse — workspace-shell converted from CSS grid to flexbox column so content fills 100% height on all screen sizes. Added tunnel status pill inside the sidebar replacing the removed topbar session pill. Redesigned RequestPlayground with sub-tab switcher (REST Client / AI Endpoint Scanner) to prevent input squashing inside narrow inspector panels. Added onClose callback to ChatPanel with dismiss button in header. Implemented 2-step onboarding wizard in LobbyView when no workspaces exist (welcome step → workspace name input step). Added responsive CSS breakpoints for inspector/chat panel overlays at ≤1200px and full-width at ≤768px. Sidebar now auto-closes when any nav item is clicked on mobile.
- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/desktop/src/App.tsxpackages/desktop/src/components/ChatPanel.tsxpackages/desktop/src/components/RequestPlayground.tsxpackages/desktop/src/screens/TunnelsView.tsxpackages/desktop/src/index.css.agents/changelog.json
[feature/main-shared-domains-pool] - 2026-07-16
- Feature Summary: Refactored custom domains relationship from workspace level to user level to enable sharing domains globally across workspaces; added customDomain unique reference to Tunnels; implemented DomainSelectDialog dropdown choice for exposing tunnels on random subdomains, custom domains, or public Localtunnel proxies; integrated Localtunnel client spawning in Rust layer routing through API port 3939 to support 100% traffic capturing/logging; added local WiFi LAN Tunnel resolver and premium helper select card styling with preferred subdomain selection support.
- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/api/prisma/schema.prismapackages/api/src/domains/domains.controller.tspackages/api/src/domains/domains.service.tspackages/api/src/relay/relay.middleware.tspackages/api/src/tunnels/dto/tunnel.dto.tspackages/api/src/tunnels/tunnels.service.tspackages/desktop/src-tauri/src/lib.rspackages/desktop/src/App.tsxpackages/desktop/src/components/DomainsSettings.tsxpackages/desktop/src/lib/api.ts
[feature/main-dns-table-and-local-shares-ui] - 2026-07-16
- Feature Summary: Reordered and styled custom domains DNS configuration table to match Namesilo/GoDaddy layout; implemented public direct DNS resolver (1.1.1.1/8.8.8.8) to bypass local cached lookup delays; added explicit WAN (public tunnel) vs LAN (local server) share choices; fixed active tunnel state resetting upon re-entering workspaces from Lobby.
- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/api/src/domains/domains.service.tspackages/desktop/src/App.tsxpackages/desktop/src/components/DomainsSettings.tsxpackages/desktop/src/index.css.agents/changelog.json
[feature/main-agents-and-env-config] - 2026-07-16
- Feature Summary: Created workspace rules (AGENTS.md), system architecture recon map (architecture.json), and release logs (changelog.json); shifted .env.example from root to packages/api/ with updated default port 3939.
- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
.agents/AGENTS.md.agents/architecture.json.agents/changelog.json.env.examplepackages/api/.env.example
[main] - 2026-07-16
- Feature Summary: Shifted API server to custom port 3939 to avoid local developer port conflicts; introduced workspace onboarding experience for zero-workspace startup; implemented cancel option for local LAN shares in offline modes; resolved NestJS module circular references via decoupled events broker; added active tunnel state hydration on startup; resolved sidebar layout overlapping via scrollbar overrides.
- Missing Manifest UX Hardening (
App.tsx): Upgraded the updater error handler to gracefully swallow HTTP 404s and invalid JSON responses from GitHub (which typically occur prior to CI/CD publishinglatest.json). Instead of surfacing a scary technical exception, the UI now displays a friendly"✅ Proxync is up to date"success toast, improving the unreleased/early-deployment user experience.
- Missing Manifest UX Hardening (
- Modified Files:
packages/api/src/main.tspackages/api/src/tunnels/tunnels.service.tspackages/api/.envpackages/desktop/src-tauri/src/lib.rspackages/desktop/src/App.tsxpackages/desktop/src/components/ChatPanel.tsxpackages/desktop/src/lib/api.tspackages/desktop/src/screens/ApiKeysView.tsxpackages/desktop/src/screens/TunnelsView.tsxpackages/desktop/src/index.css