Skip to content

ServerFS v0.14.0

Choose a tag to compare

@github-actions github-actions released this 14 Oct 12:39

Highlights

  • Added the supported persistent Windows lifecycle: a current-user, least-privilege Task Scheduler 2.0 task owns a windowless watchdog; the watchdog owns the managed runner, and the runner owns one Tunnel generation at a time. No SCM/LocalSystem, HKLM registration, stored password, administrator token, or UAC step is part of the normal path.
  • Added serverfs service install/status/start/restart/stop/uninstall semantics for that lifecycle, including intentional-stop protection, one-minute recovery heartbeat, IgnoreNew duplicate prevention, current-user ownership, and controlled hand-over from the legacy v0.13.x launcher using frozen process identity rather than by-name kills.
  • Hardened Agent Bridge health supervision: teardown now requires both at least three consecutive failed probes and a continuous 10-second unhealthy window; a successful ping resets both signals.
  • Completed Windows live acceptance for Tunnel-, runner-, and outer-watchdog recovery, intentional stop/start, Agent Bridge/MCP operation, windowless execution, exactly-one Tunnel ownership, and non-admin operation.

Upgrade notes

  • Windows users should upgrade the product/native/Agent Bridge wheels using the isolated-environment layout below, then run serverfs doctor, serverfs service install, serverfs service start, and serverfs service status. Updating an existing managed task preserves its previous enabled/disabled operator intent.
  • deployment\windows\start-native.ps1 remains an emergency/compatibility launcher only; do not run it alongside a managed serverfs service instance.
  • Changes to serverfs.toml or .env take effect after serverfs service restart.
  • A physical reboot or logout/login cycle was not part of the v0.14.0 Windows live acceptance. The current-user LogonTrigger was verified as configured, but reboot/re-login recovery is not claimed as a measured release result.

Validation

  • WorkPC Windows 11 x64 live lifecycle acceptance passed under a non-elevated current-user token. Measured recovery was ~6.4 s for a Tunnel generation, ~2.73 s for the managed runner, and ~18.5 s for the outer watchdog; intentional stop remained stopped for 70 s and explicit start recovered in ~1.1 s.
  • The final tag release pipeline rebuilt all three 0.14.0 wheels, verified METADATA versions against the tag, installed them into the frozen two-interpreter layout, exercised the real supervisor chain, and published SHA256-pinned release assets.
  • GitHub's macOS 27 arm64 hosted runner remained infrastructure-queued at publication time. v0.14.0 does not change the macOS-specific lifecycle implementation; the runtime change after the accepted 0902f7c baseline is the Bridge watchdog threshold hardening above, covered by focused watchdog tests and the successful Windows/Container release gates.

Windows installation assets (Python >= 3.12; no Rust/MSVC/Docker required)

The three release wheels install into two isolated environments, matching the
frozen ServerFS/Agent-Bridge process boundary (the supervisor selects the Bridge
interpreter through SERVERFS_BRIDGE_PYTHON; the packages never share one dependency
graph):

file installs into sha256
serverfs_mcp-0.14.0-py3-none-any.whl ServerFS env c91efc46cf2068064e456c7bcb62f6f99a0e9c09958b10d574fa097b0535c6d3
serverfs_windows_native-0.14.0-cp312-abi3-win_amd64.whl ServerFS env 1a37fed06e684ba89ac7948fa06f2c5254b596d26301e2d828e7fb8d9d63b017
serverfs_agent_bridge-0.14.0-py3-none-any.whl Agent Bridge env 434fa17ffd270cd71e78204007dcfe263fc4e868ba5be89ca7de7cfef7123a35

ServerFS environment (product + native kernel):

uv venv --python 3.12 .venv-serverfs
uv pip install --python .venv-serverfs/Scripts/python.exe https://github.com/NTLx/ServerFS_MCP/releases/download/v0.14.0/serverfs_mcp-0.14.0-py3-none-any.whl https://github.com/NTLx/ServerFS_MCP/releases/download/v0.14.0/serverfs_windows_native-0.14.0-cp312-abi3-win_amd64.whl

Agent Bridge environment (Bridge + provider SDKs; it must NOT contain the product):

uv venv --python 3.12 .venv-bridge
uv pip install --python .venv-bridge/Scripts/python.exe https://github.com/NTLx/ServerFS_MCP/releases/download/v0.14.0/serverfs_agent_bridge-0.14.0-py3-none-any.whl

Point the ServerFS supervisor at the Bridge interpreter (set this in the environment
that starts serverfs supervisor; it is not a provider setting and does not belong in
[agent] config):

$env:SERVERFS_BRIDGE_PYTHON = "<path>\.venv-bridge\Scripts\python.exe"

Verified native-wheel storage alternative:

serverfs bootstrap native-wheel --url "https://github.com/NTLx/ServerFS_MCP/releases/download/v0.14.0/serverfs_windows_native-0.14.0-cp312-abi3-win_amd64.whl" --sha256 1a37fed06e684ba89ac7948fa06f2c5254b596d26301e2d828e7fb8d9d63b017