diff options
Diffstat (limited to 'docs/MESHBAY_DESIGN.md')
| -rw-r--r-- | docs/MESHBAY_DESIGN.md | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/docs/MESHBAY_DESIGN.md b/docs/MESHBAY_DESIGN.md index 4541d64..38ceec8 100644 --- a/docs/MESHBAY_DESIGN.md +++ b/docs/MESHBAY_DESIGN.md @@ -2942,10 +2942,20 @@ treated as correctness from the start. What the port needed is registered as Two Windows-specific design points worth stating here: -- **Autostart has two modes, chosen at install and switchable afterwards** from the - Node page: a per-user startup launcher (the default) and a scheduled-task service - mode. A per-user default is right for the desktop persona; a service is what a - machine that must serve while nobody is logged in needs. +- **The node runs in one of three modes, chosen at install and switchable + afterwards** from the Node page: only while the application is open (it starts + the node and stops one it started), at sign-in through a per-user startup + launcher, or as a scheduled-task service from boot. The two automatic ones + exclude each other. A per-user mode is right for the desktop persona; a service + is what a machine that must serve while nobody is logged in needs. +- **Starting and stopping have one implementation, the CLI's**, which the + application, the installer's restart and a terminal all call. A stop asks the + node through its own control API first — the one channel that reaches it in any + session without elevation, and the one that runs its shutdown — then Task + Scheduler, then a forced stop that spares the command running it (the CLI and + the daemon are one executable). A start reports the version that answered, never + "started" about a node nobody asked. A second instance refuses before it writes + anything the running one depends on. - **A user service unit cannot carry a system unit's user directive.** Two unit templates exist, held apart by a test that parses directives rather than searching the file — searching matched the *comment* explaining why the directive |