Skip to main content

Схема релизов Bitrate

Состояние реализации на 5 октября 2026 года. Это MVP подготовки релизов: создание и редактирование черновика, приватный каталог, страница релиза с треками, датой и участниками, добавление и исправление участников, подтверждение прав, доли Master/Publishing, необязательные UPC/ISRC, чек-лист готовности, отправка на ревью Bitrate и её отзыв работают (ADR-0059). Ревьюер, территории, загрузка аудио и доставка на площадки ещё не реализованы; отправка не запускает доставку.

Что уже можно показать​

Зелёный — реализовано. Синий — подготовлена структура БД, формы/API управления пока отсутствуют. Оранжевый — дальнейшие этапы. Привязка записи к релизу защищена в БД и читается каталогом; интерфейса изменения этой связи пока нет.

Связи данных​

  • Release — рабочее пространство релиза; тип Single / EP / Album / Compilation.
  • ArtistTrackDraft — приватные метаданные подготовки, отдельно от публичного Track. Ссылка на релиз необязательна; составной FK (releaseId, ownerArtistId) запрещает чужого владельца.
  • ReleaseTrack — связь с существующим Track, с порядком записей внутри релиза. Автоматического преобразования ArtistTrackDraft в Track ещё нет.
  • ReleaseContributor — участник и его credit-роли: исполнитель, продюсер, композитор, автор текста или другая роль. Участник может не иметь аккаунта; credit не даёт доступа к кабинету.
  • ReleaseSplit — доля участника отдельно для записи (RECORDING) и композиции (COMPOSITION). 10 000 basis points = 100%. Составной FK привязывает долю к участнику того же релиза; полная проверка распределения перед отправкой — следующий этап.
  • ReleaseTerritory — разрешённые страны. Пустой список означает «не указано».
  • Release не подменяет публичный Album; сохранение черновика не публикует музыку.

Составные ключи: ReleaseTrack(releaseId, trackId), ReleaseSplit(releaseId, contributorId, rightType) и ReleaseTerritory(releaseId, countryCode). Позиция трека уникальна внутри релиза.

Готовность для демонстрации​

ЧастьСостояние
Вход, владение и приватный доступРеализовано; запросы ограничены владельцем
Создание релизаРеальный POST, сохраняет название/тип со статусом DRAFT
Редактирование черновикаGET/PATCH названия и типа; доступ владельца, атомарная проверка версии, 409 при конфликте
Music / Tracks и ReleasesРеальные GET, счётчики, поиск, фильтры, сортировка, страницы, детали
Отдельный workspace релизаПриватный адрес, реальные связанные записи, дата UTC и credit-участники; редактирование названия/типа DRAFT
Редактирование плановой датыEdit schedule: установка/сброс даты UTC, точность до миллисекунд, тот же атомарный owner/DRAFT/version guard
Три темы и адаптивПроверены на desktop/mobile, ширины 320–1920 px
Превью демо-записейРаботает; используется явно обозначенный синтетический sample
УчастникиЧтение и добавление имени/ролей проверены; транзакционный DRAFT/version guard
Редактирование участниковGET/PATCH и формы; исправление имени/ролей, предупреждение о недостающей роли
Существующие связанные TrackЧитаются в workspace; управление связью через UI/API — позже
Права и долиВладелец мастер-записи, две отметки подтверждения, доли Master/Publishing (в черновике ≤ 100 %, для отправки ровно 100 %)
UPC / ISRCНеобязательны; проверка контрольной цифры UPC, формата ISRC и повторов
ТерриторииСтруктура БД готова; управление через UI/API — позже
Загрузка аудио/обложек, редактирование записейПока Coming soon
Готовность и отправка на ревьюЧек-лист блокеров и заметок, отправка с «I reviewed», серверная перепроверка, отзыв в черновик
Ревьюер, публикация, доставка партнёрамПока не реализованы; отправка создаёт только внутреннюю заявку

Статусы DRAFT / READY / SUBMITTED / RELEASED / REJECTED существуют в схеме Release, но полноценного API переходов между ними ещё нет. Demo-статусы не подтверждают реальную публикацию или доставку.

Для показа: войти артистом с демо-данными, открыть /dashboard/music, показать шесть демо-записей и три релиза (включая сохранённый Steel Ball Run), переключить вкладки, поиск/фильтры и темы. Затем создать новый черновик через Create release и обновить страницу: созданный релиз останется в каталоге. Создание дополнительного черновика увеличит число релизов. Затем открыть детали черновика → Edit draft, изменить название/тип и сохранить; изменения останутся после перезагрузки. Опубликованные и отправленные релизы в этом этапе доступны только для просмотра.

Открыть релиз → Open workspace: появится отдельная страница с обложкой, волной из дизайна, реальными треками, датой и credit-участниками. Если дата или участники не указаны, страница честно показывает это. У черновика здесь также работает Edit draft. Превью связей ограничено 50 элементами каждого вида; при большем количестве показаны реальные totals и пояснение ограничения.

В Participants своего черновика открыть Add contributor, указать имя и хотя бы одну роль → Save contributor. Новый credit появится в списке и останется после перезагрузки. Это не приглашение в аккаунт и не назначение долей дохода.

После завершения финальных проверок: рядом с участником нажать карандаш → Edit contributor, исправить имя/роли и сохранить. Форма загрузит актуальную запись; при конфликте правок предложит переоткрыть её. ID участника и существующие доли при этом сохраняются.

В Preparation summary черновика открыть Edit schedule, включить плановую дату, выбрать дату и время UTC, сохранить и перезагрузить страницу. Снять галочку и сохранить — дата очистится. Сохранение плана не отправляет релиз на площадки.

Точная формулировка для презентации:

Реализован MVP кабинета артиста: создание и редактирование названия/типа черновиков, приватный каталог треков/релизов и отдельная страница релиза с треками, плановой датой и участниками. В черновике можно изменить дату и добавить кредит с ролями. Подготовлена модель долей прав и территорий. Загрузка, публикация и доставка находятся на следующих этапах разработки.

Основание: Prisma schema, API релизов, ADR-0052, ADR-0053, ADR-0054, ADR-0055, ADR-0056, ADR-0057.