Skip to content

chore(deps): bump pkg/etl to pick up the artist-pick profile-edit fix - #1021

Merged
dylanjeffers merged 1 commit into
mainfrom
chore/bump-etl-artist-pick
Aug 18, 2026
Merged

chore(deps): bump pkg/etl to pick up the artist-pick profile-edit fix#1021
dylanjeffers merged 1 commit into
mainfrom
chore/bump-etl-artist-pick

Conversation

@dylanjeffers

Copy link
Copy Markdown
Contributor

Picks up OpenAudio/go-openaudio#510 (merged as `81f4af5`), which unblocks profile editing for accounts whose artist pick points at a deleted track.

Why this bump is the step that actually reaches users

The fix lives in `pkg/etl`, a separate Go module. This repo's `indexer` package wraps it and `main.go` runs it as `core_indexer` — that is the process serving production. Merging the go-openaudio PR alone changes nothing here until this pin moves.

What was broken

A User Update whose `artist_pick_track_id` pointed at a deleted or no-longer-owned track was rejected outright. Clients resend the full user object on every profile edit, so that stale id rode along with unrelated changes and blocked them — profile picture, cover photo, bio, name.

The failure was invisible from both ends: the tx landed on chain, the indexer swallowed the `ValidationError` and continued, and the client had already applied the change optimistically. The user just saw their edit revert on refresh, with no error anywhere. Support reports of "my profile photo keeps reverting" are this.

1,241 accounts were stuck on 2026-08-11 — 427 with 100+ followers, 89 with 1000+ — every one from a deleted pick.

Migration delta is exactly one

`0035`–`0038` were already in the previous pin, so `0039` (the backfill) is the only new migration this bump applies. Notably `0035_users_one_current_row` — which fails loudly unless api's ddl `0237` backfill ran first — is already satisfied at the current pin, so it is not newly applied here.

`0039` clears only dangling references; a pick that still resolves is left alone.

Risk review of the nine pkg/etl commits riding along

`go build ./...` and `go vet ./...` both clean. Diff is 3 lines (go.mod + go.sum).

After deploy

  • `entity manager validation rejected` warns with the artist-pick reason should drop to zero in the `core-indexer` pod.
  • Re-run the count before/after — the 1,241 figure is from 2026-08-11 and the real number today may differ:

```sql
SELECT count(*) FROM users u
WHERE u.is_current AND u.artist_pick_track_id IS NOT NULL
AND NOT EXISTS (SELECT 1 FROM tracks t
WHERE t.track_id = u.artist_pick_track_id AND t.owner_id = u.user_id
AND t.is_current AND t.is_delete = false);
```

🤖 Generated with Claude Code

The indexer this api runs (core_indexer, wrapping pkg/etl) rejected an entire
User Update whenever artist_pick_track_id pointed at a deleted or no longer
owned track. Clients resend the full user object on every profile edit, so that
stale id rode along with unrelated changes and blocked them — profile picture,
cover photo, bio, name, all of it. The failure was invisible: the tx landed on
chain, the indexer swallowed the ValidationError, and the client had already
applied the change optimistically, so the user just saw their edit revert on
refresh.

1,241 accounts were stuck this way in production on 2026-08-11 (427 with 100+
followers, 89 with 1000+), every one of them from a deleted pick.

Picks up OpenAudio/go-openaudio#510, which drops an unresolvable pick instead of
rejecting the update, and adds ETL migration 0039 to backfill the affected rows
rather than waiting for an edit many dormant accounts will never make.

Migration delta is exactly one: 0035-0038 were already in the previous pin, so
0039 is the only new migration this bump applies. Verified the nine pkg/etl
commits riding along carry no api-visible breakage — notably #483 removes tip
reactions from the indexer, and this repo has no references to those symbols.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@dylanjeffers
dylanjeffers merged commit 61c3edf into main Aug 18, 2026
2 checks passed
@dylanjeffers
dylanjeffers deleted the chore/bump-etl-artist-pick branch August 18, 2026 22:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant