# Bind every copy write to the signed-in session that asked for it · dara/icarus

[View on GitCafe](https://git.cafe/dara/icarus/commit/2b6f66e589056605a9a2ce5a877107fd338fe998)

Repository: [dara/icarus](https://git.cafe/dara/icarus)

Visibility: public

Requested revision: 2b6f66e589056605a9a2ce5a877107fd338fe998

Requested commit: 2b6f66e589056605a9a2ce5a877107fd338fe998

Commit: 2b6f66e589056605a9a2ce5a877107fd338fe998

Tree: 7a142c7709afce8a0dbb5010f484519fd1bd17cf

Author: Dara Adedeji

Committer: Dara Adedeji

## Message

```
Bind every copy write to the signed-in session that asked for it

A library answer that arrived right after Supabase signed the account out,
or another account signed in, took a newer answer number than the
deletion and wrote the old account's copy back (Astra, round 3, on memory
and on Hive).

CloudCopyScope now carries a session: cloudCopyScopeProvider begins a new
one each time an account signs in, and each list captures the scope it
started with. When the account ends, AuthProvider ends its sessions at
once, before deleting, and the store refuses any write whose session has
ended (CloudCopyScope.hasEnded), however late it arrives. A later sign-in,
the same account included, begins a new session and writes as usual.
Records stay keyed by deployment and account, so a new session still reads
what an earlier one kept. The answer order now only orders answers within
a session; the deletion barrier built on it is gone.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

```

## Parents

- [dba69679763dc89381e438956fbe4b79dbc8c30f](https://git.cafe/dara/icarus/commit/dba69679763dc89381e438956fbe4b79dbc8c30f?format=markdown)

[Source at this commit](https://git.cafe/dara/icarus/tree/2b6f66e589056605a9a2ce5a877107fd338fe998?format=markdown)
