[HWORKS-3227] Removing a member from a project leaves their home directory owned by a user with no access - #649
Open
jimdowling wants to merge 3 commits into
Open
[HWORKS-3227] Removing a member from a project leaves their home directory owned by a user with no access#649jimdowling wants to merge 3 commits into
jimdowling wants to merge 3 commits into
Conversation
…ctory owned by a user with no access https://hopsworks.atlassian.net/browse/HWORKS-3227 The manage-members guide said nothing about what becomes of the files a removed member leaves behind, which is the question an administrator asks before removing anyone. It now says that the member's project home directory and its whole subtree are transferred to the data owner who has been in the project longest, and names the two cases where nothing is transferred: a removal that asks for the directory to be deleted, and a project with no data owner left. Signed-off-by: Jim Dowling <jim@logicalclocks.com> Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
🟡 Changes recommended
The newly added prose includes a multi-sentence line that violates the repo’s “one sentence per line” Markdown convention.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
This PR updates the Hopsworks documentation site (MkDocs) to clarify what happens to a user’s project home directory when that user is removed from a project, addressing an admin-facing “what happens to their files?” question.
Changes:
- Added a new subsection explaining ownership transfer behavior for a removed member’s project home directory subtree.
- Documented the two exception cases where no transfer occurs and clarified that service accounts are not selected as the new owner.
File summaries
| File | Description |
|---|---|
| docs/user_guides/projects/project/manage_members.md | Adds a “What happens to a removed member’s files” section describing directory ownership transfer rules and exceptions. |
Review details
- Files reviewed: 1/1 changed files
- Comments generated: 1
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
|
||
| Each member has a private home directory in the project, `/Projects/<project>/Users/<username>`, holding their notebooks, their SSH key and their agent configuration. | ||
|
|
||
| When a member is removed, that directory and everything under it is transferred to the data owner who has been a member of the project the longest. The files keep their contents and their paths; only the owner changes. The removed member loses access, as they do to the rest of the project. |
…ctory owned by a user with no access https://hopsworks.atlassian.net/browse/HWORKS-3227 The guide now says that the remove dialog asks which data owner takes the files, and that it starts on the longest-serving one, which is what the API does when the request names nobody. It says why only data owners are offered, and that the transfer runs in the background, since a member with a large home directory does not hand over instantly. The table of exceptions gains the refusal: a removal that would leave the project with no data owner does not go through, and the guide says what to do about it. The old row claiming the directory keeps its owner in that case is gone, because that case can no longer happen. The SDK snippet shows all three forms: the default, a named owner, and deleting the files instead. Signed-off-by: Jim Dowling <jim@logicalclocks.com> Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…ctory owned by a user with no access https://hopsworks.atlassian.net/browse/HWORKS-3227 Say where the new owner finds the handed-over home directory. The directory keeps the removed member's name, so a data owner who takes the files over goes looking for their own name and does not find them. The page said the paths do not change without saying what that means for the person now holding them. Signed-off-by: Jim Dowling <jim@logicalclocks.com> Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The manage-members guide said nothing about what becomes of the files a removed member leaves behind, which is the question an administrator asks before removing anyone.
It now says that the member's project home directory and its whole subtree are transferred to the data owner who has been in the project longest, that contents and paths are untouched, and it names the two cases where nothing is transferred: a removal that asks for the directory to be deleted, and a project with no data owner left. Service accounts are never chosen.
Documents the behaviour added in hopsworks-ee#3331.
Gates run locally:
hopsworks-docs markdownlint(240 files, 0 errors),hopsworks-docs snakeoil(clean, no rewrite of the new text) andhopsworks-docs check(mkdocs strict build, passed in 61s). The build needs the Python client installed in the docs venv, which is an environment step rather than anything in this change.🤖 Generated with Claude Code