Messages and files
One thread per project, not per inbox
Messages and files shared with the client, scoped to the client, and still findable long after the project ends.

Kept with the work, kept for good
The conversation lives with the work
Threads sit on the project, so the person who joins in month three reads the history instead of asking for a forward.
Shared with the client, scoped to the client
A contact sees their own threads and files and nothing else. You decide per contact who may message and who may upload.
Still there in six months
Deliverables and the client's own uploads in one list per project, on storage you choose: your own disk if you self-host.