The behaviour probably is correct, if you look at the headers/developer docs for .allowsWriting:
/**
Indicates that the file can be opened for writing. If set on a folder,
this is equivalent to @c .allowsAddingSubItems.
*/
public static var allowsWriting: NSFileProviderItemCapabilities { get }
/**
Indicates that items can be imported to the folder. If set on a file,
this is equivalent to @c .allowsWriting.
*/
public static var allowsAddingSubItems: NSFileProviderItemCapabilities { get }
/** Indicates that the item can be moved to another folder */
public static var allowsReparenting: NSFileProviderItemCapabilities { get }
.allowsAddingSubItems/.allowsWriting is the one that defines if you can create a new folder, upload a file to an existing folder, etc if I am correct.
Topic:
App & System Services
SubTopic:
Core OS
Tags: