Reused profiles are read-only unless persistProfile=true is set, and you need to keep the returned profile id to reuse it. Avoid parallel sessions writing to the same profile.

Context: Official docs (Steel profiles blog): when you reuse an existing profile it is read only by default. Nothing you change during the session gets saved. If you want writes to stick, pass persistProfile=true and save the profile id that comes back, then reuse that id next time. Also dont run parallel sessions writing to the same profile, the writebacks can clobber each other.