Skip to content

fix(service): keep service startup healthy in service-mode input#123

Merged
bestlux merged 2 commits into
mainfrom
codex/fix-pr122-service-start
Jun 23, 2026
Merged

fix(service): keep service startup healthy in service-mode input#123
bestlux merged 2 commits into
mainfrom
codex/fix-pr122-service-start

Conversation

@bestlux

@bestlux bestlux commented Jun 23, 2026

Copy link
Copy Markdown
Owner

Intent

Fix the PR #122 dogfood blocker where the MSI-owned LocalSystem service can exit before reporting Running when service-mode input diagnostics are initialized during startup.

Changes

  • Add an explicit daemon host runtime option for service-session unsupported input.
  • Start boundless-service.exe with that mode instead of probing interactive desktop input from the LocalSystem service path.
  • Pre-seed the control-plane snapshot with service_session_unsupported, input_locked=false, and input_lock_supported=false before the named-pipe API is exposed.
  • Add a Windows non-elevated startup-path regression that binds a secured named pipe with the allowed-user SID while preserving service-mode input diagnostics.

Root Cause

PR #122 made service/session-0 input truthful by detecting unsupported interactive input at runtime, but the MSI service path still depended on implicit interactive probing during startup. The fix makes service mode explicit for the service host so startup does not depend on desktop-session input availability while the control plane remains truthful.

Validation

  • cargo test -p boundless-daemon service_mode_named_pipe_startup_preserves_diagnostic_input_state -- --nocapture
  • cargo test -p boundless-daemon service_session -- --nocapture
  • cargo test -p boundless-daemon unsupported_interactive -- --nocapture
  • cargo fmt --all -- --check
  • cargo clippy --workspace --all-targets -- -D warnings
  • cargo test --workspace --quiet
  • git diff --check
  • cargo build --release -p boundless-daemon --bin boundless-service

Not Run

  • Elevated SCM/MSI install-start smoke was not run from this non-elevated worker shell. The added regression is the best non-elevated coverage and should be followed by an elevated installer smoke before issuing another dogfood package.

Deferred

  • Double-clickable Boundless-<version>-windows-x64-setup.exe launcher is deferred to BND-NEXT-9B-6. Adding a launcher would require new packaging/artifact/checksum behavior and should not delay this hotfix.

@bestlux bestlux merged commit 56bbefc into main Jun 23, 2026
6 checks passed
@bestlux bestlux deleted the codex/fix-pr122-service-start branch June 23, 2026 06:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant