clean-satellite-at-transition

Installation
SKILL.md

Clean up satellites at the transition

Some rows exist only because of a state on another row: notifications for a followed creator, a new-release tracking row for a subscription, draft rows for an open editor. When that state ends, those rows have no reason to exist — and nothing in the schema knows that.

Do the delete where the state changes:

// adapted
override suspend fun updateFollowedStatus(artistId: String, followedStatus: Int) {
    localDataSource.updateFollowed(followedStatus, artistId)
    if (followedStatus == 0) {
        localDataSource.deleteNotificationsByArtistId(artistId)
        localDataSource.deleteReleaseTrackingRow(artistId)
    }
}
Installs
9
GitHub Stars
1.5K
First Seen
Aug 30, 2026