Read and write notes as a member, never as an account

FixKBService
Shipped
August 14, 2026 at 11:07 PM UTC
Author
Kamo
Commit
0028ce9

Every endpoint now requires memberID on the session — reads included — and refuses the request without one. The reads used to need only a userID, which is global, so an account belonging to more than one organisation got the same notes back in all of them. Falling back to the user when the membership is missing would put that straight back, so there is no fallback. Create resolves the Member and stores both it and the account behind it. The content key is derived from the note's OWN user id rather than the session's, which is what keeps every note written before this change decryptable from whichever membership is being used to read it. Requires the KamoInitializer run that adds notes.member_id.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing