harden singleton security boundaries - #217
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6781df5c74
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
|
@codex review |
|
Codex Review: Didn't find any major issues. More of your lovely PRs please. Reviewed commit: ℹ️ About Codex in GitHubCodex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback". |
Summary
gsv user create,gsv user register, andgsv user permissionscommands through a typeduser.adminKernel boundaryuser create,user register, anduser permissionscommands on thegsvtarget; they re-enter normal syscall dispatch so authorization and live-authority refresh remain centralizeduser.admingrant before credentials are read or mutations begin; apply permission batches atomically and refresh live connection/process authority after changes--password-stdinand document a verified mode-0600staging flowScope
This deliberately keeps the current singleton Kernel architecture. Public self-registration and admission policy remain closed.
Rust
gsv user registercreates the account and replaces the local CLI session. Native-shelluser registerprovisions the account and instructs the caller to start a new login; a shell command does not replace the identity of its already-authenticated WebSocket.There is no user-Kernel split, routing change, AppRunner redesign, admission/rate-limit system, or legacy runtime-data movement.
The single v15 migration only revokes persisted authority that changed meaning and initializes the uid/gid allocator; it does not copy or delete user runtime data.
Size
Validation
cd gateway && npx tsc --noEmitcd gateway && npm run test:run— 83 files, 1,360 passed, 5 skippednpm run gsv:check && npm test --workspace packages/gsv— 49 passedcd cli && cargo fmt --check && cargo test— 102 passedgit diff --check origin/main...HEAD