Skip to content

fix: pre-fill full remix parent when entering contest from mobile#14273

Merged
dylanjeffers merged 1 commit intomainfrom
claude/cool-noyce-d2ff14
May 7, 2026
Merged

fix: pre-fill full remix parent when entering contest from mobile#14273
dylanjeffers merged 1 commit intomainfrom
claude/cool-noyce-d2ff14

Conversation

@dylanjeffers
Copy link
Copy Markdown
Contributor

Summary

  • Mobile's "Enter Contest" button (ContestScreen.handleEnterContest) was only passing parent_track_id into the upload flow, dropping the user object, the has_remix_author_reposted / has_remix_author_saved flags, the source-track artwork, and the genre — fields that the existing "Upload Your Remix" button already pre-fills. The upload form's remixed-from context rendered incomplete on contest entries.
  • Extracted the metadata shape into a shared useEnterContest hook in @audius/common/hooks. Web and mobile each have a thin wrapper that handles platform-specific artwork blob fetching (Web File vs RN's _data shape) and navigation, but the remix_of shape is now defined in one place.
  • Deduped the inline copy in the desktop RemixContestSection so all four entry points (web track page, web contest page, mobile track screen, mobile contest screen) share one source of truth.

Affected entry points

Platform Component Before After
Web desktop track page RemixContestSection inline impl uses shared hook
Web mobile/contest page useEnterContest already correct now wraps shared hook
Mobile track screen UploadRemixFooter inline impl uses shared hook
Mobile contest screen ContestScreen.handleEnterContest only parent_track_id uses shared hook

Test plan

  • Mobile: open a track that hosts a remix contest → tap Enter Contest → confirm upload form shows the contest track's title, artist name, artwork thumbnail, and genre pre-filled in the remix section
  • Mobile: same track → tap Upload Your Remix from the track screen footer → confirm identical pre-fill (regression check on the established flow)
  • Web desktop: visit a contest page → click Enter Contest → confirm upload form pre-fills artwork/genre/remix-of (regression check; uses same hook)
  • Web desktop: visit a track page hosting a contest with feature flag off → click Upload Your Remix in RemixContestSection → confirm pre-fill (regression check on deduped inline impl)
  • Confirm the "remixed from" tile in the upload form shows author avatar + name (this is what the missing user field broke on mobile)

🤖 Generated with Claude Code

The mobile contest screen's "Enter Contest" button only passed
parent_track_id into the upload flow, dropping the user object,
has_remix_author_reposted/saved flags, artwork and genre that the
existing remix flow already pre-fills. The upload form's remix-of
context rendered incomplete on mobile contest entries as a result.

Extracts the metadata shape into a shared `useEnterContest` hook in
@audius/common/hooks and adds thin web + mobile wrappers that handle
their platform-specific artwork blob fetching and navigation. Also
dedupes the inline copy in the desktop RemixContestSection so all four
entry points (web track page, web contest page, mobile track screen,
mobile contest screen) feed the same shape into the upload form.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented May 7, 2026

⚠️ No Changeset found

Latest commit: 307ec49

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 7, 2026

🌐 Web preview ready

Preview URL: https://audius-web-preview-pr-14273.audius.workers.dev

Unique preview for this PR (deployed from this branch).
Workflow run

@dylanjeffers dylanjeffers merged commit 3f0b85e into main May 7, 2026
14 checks passed
@dylanjeffers dylanjeffers deleted the claude/cool-noyce-d2ff14 branch May 7, 2026 22:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant