There are several issues with the current design of forking and nested documents:
Currently:
Documents can have multiple parents
Access is determined by access to the document, or the most restrictive access level of its parents
Child reference are stored parent->child
The idea behind this was that for a real "wysiwyg"-experience, users should always be able to modify anything in a workspace, and "create a copy" when do don't have write access. We might need to revisit this vision.
Issues:
It's not possible to view sync / fork-required status of a workspace. This means that if you create a new document and add it to the root of a project you don't have write-access for, you won't be able to see that you don't have write access.
If you add someone else's document as child to one of your own docs, you can probably restrict the author's access to that doc by changing the access level of the parent (not validated)
it might be possible to create circular parent / child structures
Possible solutions might be in direction of:
storing hierarchical info in child->parent
don't allow multiple parents
For now, we'll hide the "add a page" button unless you're on your own workspace
There are several issues with the current design of forking and nested documents:
Currently:
The idea behind this was that for a real "wysiwyg"-experience, users should always be able to modify anything in a workspace, and "create a copy" when do don't have write access. We might need to revisit this vision.
Issues:
Possible solutions might be in direction of:
For now, we'll hide the "add a page" button unless you're on your own workspace