Research 025 graduated: ADRs 0203–0205, issue 228, to-be 41 (the shell and the account's environment) #351

Merged
mesh-admin merged 7 commits from feat/the-shell-and-its-environment into main 2026-10-04 08:49:36 +00:00
Contributor
  • Research 025: how a module plugs into the operator's shell. It has evidence and options, and is now graduated.
  • ADR 0203: the account's environment is one module's (node-environment). Every module contributes variables and PATH entries, rendered by the controller as a POSIX file and as environment.d.
  • ADR 0204: shell code is contributed to the login shell in named slots, and login-shell becomes the mesh's node-login-shell.
  • ADR 0205: software the distribution does not package ships as a pinned archive of the module.
  • Issue 228: undeclaring a user stops a node applying; the shell is never given back or checked.
  • To-be 41: WP1–WP5. To-be 38's WP5 points to it, and to-be 37 is amended.
  • Dated "mechanism changed" notes in ADR 0174 (which side of a kept region is marked) and ADR 0176 (who declares the seat).

records.py, cycle.py and index.py pass.

Code: mesh-host, mesh-controller and mesh-catalog, each on feat/the-shell-and-its-environment.

- **Research 025:** how a module plugs into the operator's shell. It has evidence and options, and is now graduated. - **ADR 0203:** the account's environment is one module's (`node-environment`). Every module contributes variables and PATH entries, rendered by the controller as a POSIX file and as environment.d. - **ADR 0204:** shell code is contributed to the login shell in named slots, and `login-shell` becomes the mesh's `node-login-shell`. - **ADR 0205:** software the distribution does not package ships as a pinned archive of the module. - **Issue 228:** undeclaring a `user` stops a node applying; the shell is never given back or checked. - **To-be 41:** WP1–WP5. To-be 38's WP5 points to it, and to-be 37 is amended. - **Dated "mechanism changed" notes** in ADR 0174 (which side of a kept region is marked) and ADR 0176 (who declares the seat). `records.py`, `cycle.py` and `index.py` pass. Code: mesh-host, mesh-controller and mesh-catalog, each on `feat/the-shell-and-its-environment`.
mesh-admin added 7 commits 2026-10-04 08:33:10 +00:00
Opened after the zsh module's rollout (to-be 38 WP5) was stopped: every machine
carries the same predecessor-written startup file, the module's block would
duplicate it and drop lines, nothing installs the prompt, and execute never
reads .zshrc. Weighs how modules contribute environment and shell code, where
the operator's own lines go, ordering, and what a contribution is addressed to.
The operator's proposal: one module, holding a mesh seat node-environment, is
the only writer of the account's environment. It renders contributed variables
and PATH entries as a POSIX file shells source and as environment.d for the
graphical session. The shell's contribution shrinks to shell code; the shell
render-then-service-manager-again positions become options weighed against it.
ADR 0203: the account's environment is one module's (seat node-environment);
every module contributes variables and PATH entries, rendered by the
controller as a POSIX file and as environment.d.
ADR 0204: shell code is contributed to the login shell in named slots, and
login-shell becomes the mesh's node-login-shell.
ADR 0205: software the distribution does not package ships as a pinned
archive of the module.
Issue 225: undeclaring a user stops a node applying; the shell is never
given back or checked.
To-be 41 carries the work packages; to-be 38 WP5 points to it.
mesh-admin merged commit a8ffc2b94b into main 2026-10-04 08:49:36 +00:00
mesh-admin deleted branch feat/the-shell-and-its-environment 2026-10-04 08:49:36 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/hq#351