making `documents` writeable is no longer optional