Section 6. Client to Server Interactions, mentions that:
If an Activity is submitted with a value in the id property, servers MUST ignore this and generate a new id for the Activity.
I think there should be a clarification that this does not include the objects of Create activities received in an outbox. Hence Objects with IDs are permitted and the server decides if the incoming ID is valid according to its specific rules, or if it gets overwritten, or even directly rejected.