# Drop legacy lineup groups and fix two media cleanup gaps \(\#201\) · dara/icarus

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

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

Visibility: public

Requested revision: dcd013021a982edef58fdff871b1f8c220c9e9dd

Requested commit: dcd013021a982edef58fdff871b1f8c220c9e9dd

Commit: dcd013021a982edef58fdff871b1f8c220c9e9dd

Tree: 581001bc80f014512abc966f1ad7489b989740bf

Author: Dara Adedeji

Committer: GitHub

## Message

```
Drop legacy lineup groups and fix two media cleanup gaps (#201)

- Lineups are graph rows only: lineupGroup is out of the contract, the
  client's legacy conversion and group decode paths are gone, and
  strategies:duplicate copies graph rows only. Local Hive keeps
  toLegacyGroups for the 3.2.3 rollback slot.
- A lineup patch never moves a row to another page; a key clash with a row
  on another page fails with LINEUP_PAGE_MISMATCH instead.
- Upload placeholders are removed once per batch, after every op, against
  the batch's final references (a lineup added later in the batch keeps
  the placeholder of the image it shows).
- Purging old tombstones reclaims the assets they were the last reference
  to, once nothing live or still-restorable shows them.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
```

## Parents

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

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