Skip to content

feat(onboarding): unified portable trial and managed deployment #106

Description

@Karib0u

Purpose

Define and track the roadmap for making Rustinel easy to try, install, operate, and troubleshoot across Windows, Linux, and macOS.

The target product flow supports three journeys:

  • Evaluator: see Rustinel detect something in about 60 seconds.
  • Operator: promote the same tool into a managed endpoint deployment.
  • Troubleshooter or integrator: inspect service, rules, paths, telemetry, and configuration state through explicit commands.

Target CLI

rustinel
├── run
├── setup
├── doctor
├── service
│   ├── install
│   ├── uninstall
│   ├── start
│   ├── stop
│   ├── restart
│   └── status
└── rules
    ├── list
    └── install

Global options:

--config <PATH>
--log-level <LEVEL>
--help
--version

Phase 1 Issues

Implementation Slice Issues

Phase 2 Candidate

Recommended PR Sequence

  1. feat(config): add portable and managed installation layouts #103: CLI and installation-layout foundation.
  2. feat(doctor): add diagnostic result model and base checks #104: Doctor result model and base health checks.
  3. feat(service): support native service management on Windows, Linux, and macOS #105: Shared service abstraction and normalized status, followed by platform backends.
  4. feat(rules): list and install rustinel-rules packs #107: Rules catalog and safe installation.
  5. feat(cli): add rustinel setup for managed deployment #108: Managed setup orchestration.
  6. feat(cli): add rustinel doctor #36: Complete managed-state doctor checks.
  7. feat(onboarding): provide clear 60-second Rustinel evaluation installers #109: Portable evaluation and installer UX.
  8. docs(onboarding): document test, setup, operations, and troubleshooting journeys #110: Documentation and release smoke tests.
  9. feat(rules): add safe atomic rules pack updates #111: Rules updates after the first managed-deployment release.

Phase 1 Goals

  • Portable evaluation works from official release archives without persistent machine changes.
  • Managed deployment has stable platform paths for binary, configuration, rules, state, and logs.
  • Native services behave consistently across Windows, Linux, and macOS.
  • Rules packs can be listed and installed without hand-editing configuration.
  • rustinel setup can perform a complete managed deployment.
  • rustinel doctor provides read-only diagnostics with actionable output.
  • Documentation leads with test, deploy, and diagnose flows.

Non-Goals For Initial Scope

  • No full package manager.
  • No multiple simultaneously active cumulative packs.
  • No separate management daemon.
  • No TUI.
  • No automatic host repair through doctor --fix.
  • No fleet management.
  • No package-manager ecosystem work until the core flow is validated.

Success Criteria

  • A new user can see a real Rustinel detection in about 60 seconds.
  • Portable evaluation makes no persistent machine changes.
  • A user can promote Rustinel to persistent deployment through one command.
  • Managed services behave consistently across Windows, Linux, and macOS.
  • Production rules can be installed without manually editing config.toml.
  • Failed rules installations and updates preserve the previous working state.
  • Common support problems are diagnosable through rustinel doctor.
  • The README presents a simple story instead of exposing every primitive at once.
  • Each implementation PR remains small enough to review and test.

Final Product Message

Linux and macOS:

# See it work
curl -fsSL https://rustinel.io/install.sh | sh -s -- --run

# Keep it
sudo rustinel setup

# Check it
rustinel doctor

Windows PowerShell:

# See it work
irm https://rustinel.io/install.ps1 | iex

# Keep it from an elevated PowerShell
rustinel setup

# Check it
rustinel doctor

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requestp0Must ship in next cycletrackingUmbrella issue tracking related work

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions