Always show AUDIO on users_coins endpoint - #508
Merged
Conversation
dylanjeffers
approved these changes
Oct 28, 2025
dylanjeffers
added a commit
that referenced
this pull request
Aug 18, 2026
…#1021) 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 - \`#483\` removes tip reactions from the writer and indexer — this repo has **zero** references to \`TipReaction\`/\`tip_reaction\`. - \`#508\` regenerates sqlc models; \`#494\`/\`#485\`/\`#482\` are genesis-migration-path fixes, not steady-state indexing. - The main \`go-openaudio\` module pin is unchanged; only \`pkg/etl\` moves. \`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](https://claude.com/claude-code) Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.