Skip to content

Fix advanced release dates, scheduled labels, and SDK scheduling writes - #14693

Merged
raymondjacobson merged 3 commits into
mainfrom
codex/fix-scheduled-release-dates
Oct 20, 2026
Merged

raymondjacobson merged 3 commits into
mainfrom
codex/fix-scheduled-release-dates

Conversation

@raymondjacobson

Copy link
Copy Markdown
Member

Advanced release dates could accept tomorrow at midnight because the calendar compared against a rolling 24-hour window. Separately, any future date produced a scheduled-release label, even on a public track whose scheduling flag was false. Compare local calendar days to allow only today or earlier, and require the scheduling flag for track and album labels.

Track create/update SDK requests now preserve is_scheduled_release (including explicit false) and the full release timestamp instead of truncating it to a date. The companion API change adds the request fields and updates the OpenAPI source.

Validation: all 23 focused tests pass across calendar boundaries/DST, track and collection labels, and actual generated SDK HTTP serialization. Run with a cached Vitest runner and an isolated config because workspace dependencies are absent; full workspace build/lint was not run. Generated request models were updated alongside the API specification; full SDK regeneration was not run.

Companion API PR: AudiusProject/api#1058. Deploy that API change before relying on SDK scheduling writes.

@changeset-bot

changeset-bot Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: ee5be8f

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

raymondjacobson added a commit to AudiusProject/api that referenced this pull request Oct 20, 2026
Latest and For You feeds relied on hidden/private flags and could return
public-but-scheduled content before its release date. Filter scheduled
tracks and collections before pagination/ranking, allowing an exception
only for a verified owner. Unsigned advisory viewer IDs cannot unlock
scheduled items. Existing For You exclusions for a user's own uploads
remain in place; this does not add self-recommendations.

Track create/update request structs now preserve `is_scheduled_release`,
including explicit false for cancellation and omission for unchanged
state. Update the OpenAPI request schemas with this field and a
date-time release date so SDK generation retains the scheduling time.

Validation: `TZ=UTC go test ./api -run
'Test(FeedScheduledReleases|UsersFeed|V1FeedForYou|TrackSchedulingRequestMetadata)'
-count=1` passes against an isolated local PostgreSQL test database.
Covers original/repost/For You feeds, tracks/albums, public and hidden
scheduled items, past and future dates, owner access, unsigned owner
spoofing, and request metadata preservation. No production data was
changed.

Companion app/SDK PR: AudiusProject/apps#14693.
Deploy the API change before relying on the SDK scheduling writes.
@raymondjacobson
raymondjacobson merged commit 50e816d into main Oct 20, 2026
24 checks passed
@raymondjacobson
raymondjacobson deleted the codex/fix-scheduled-release-dates branch October 20, 2026 05:14
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