Remove external music generation handoff
This commit is contained in:
+4
-12
@@ -29,8 +29,7 @@ macOS App
|
||||
│ ├── Project Versioning
|
||||
│ └── Validation
|
||||
├── Integrations
|
||||
│ ├── OpenAI
|
||||
│ └── Suno Field-Fill Integration
|
||||
│ └── OpenAI
|
||||
└── Persistence
|
||||
└── Local project/version storage
|
||||
```
|
||||
@@ -82,17 +81,10 @@ and explicitly apply the processed text before any Suno handoff.
|
||||
and providers can be changed later.
|
||||
- Do not log secrets or full authorization headers.
|
||||
|
||||
## Suno Boundary
|
||||
## External Generation Boundary
|
||||
|
||||
The initial requirement is an app-managed web surface for the Suno
|
||||
Create page in Custom mode. This avoids relying on a particular user
|
||||
browser. The integration attempts to fill the supported title,
|
||||
lyrics and style fields but does not press Generate. If a field cannot
|
||||
be filled, it returns a field-specific result so Presentation can report
|
||||
it and offer the approved text for copying. Treat this integration as
|
||||
replaceable because website UI/behavior can change. The field filler is
|
||||
an adapter behind a protocol so it can be replaced without changing
|
||||
SongProject, prompt compilation or UI review logic.
|
||||
The application prepares final lyrics and style prompts but does not
|
||||
open, embed or control an external music-generation service.
|
||||
|
||||
## Instrument Selector Boundary
|
||||
|
||||
|
||||
@@ -15,13 +15,7 @@ finalized.
|
||||
- Exact list of supported languages/dialects for MVP.
|
||||
- Arabic diacritization policy: full tashkeel vs
|
||||
pronunciation-targeted tashkeel.
|
||||
- Resolved: Suno handoff presents the Create page in an app-managed web
|
||||
surface in Custom mode and attempts to fill title, lyrics and style
|
||||
fields. It never
|
||||
starts generation. Field-fill failures are reported with the
|
||||
approved text available for copying.
|
||||
- Whether Suno integration is permitted/reliable under the intended
|
||||
account/workflow and current terms.
|
||||
- External music-generation handoff is not in the current scope.
|
||||
- Project storage technology and whether cloud sync is required later.
|
||||
- Whether users supply their own OpenAI/API credentials or the product
|
||||
owner supplies service credentials.
|
||||
|
||||
+4
-16
@@ -4,8 +4,7 @@
|
||||
|
||||
A native macOS application that helps users design a complete song
|
||||
concept through a natural chat interface, using OpenAI as the planning
|
||||
and writing engine, then prepares the final lyrics and style
|
||||
instructions for Suno.
|
||||
and writing engine, then prepares final lyrics and style instructions.
|
||||
|
||||
## Core Flow
|
||||
|
||||
@@ -18,12 +17,6 @@ instructions for Suno.
|
||||
decisions.
|
||||
4. User reviews and manually edits every generated component.
|
||||
5. Project versions are saved.
|
||||
6. User presses **Send to Suno**.
|
||||
7. The app presents the Suno Create page in an app-managed web surface
|
||||
in Custom mode and fills the
|
||||
supported title, lyrics and style fields. It does not trigger
|
||||
Generate. If a field cannot be filled, the app reports that result
|
||||
and keeps its approved text ready for the user to copy.
|
||||
|
||||
## Song Controls
|
||||
|
||||
@@ -76,7 +69,7 @@ views. Each catalog entry should support structured metadata:
|
||||
Selected instruments must be available as part of the Song Project and
|
||||
later available to the OpenAI/song-generation layer so they can
|
||||
influence arrangement, instrument roles, entry/exit timing, song
|
||||
structure where relevant and the Suno Style Prompt.
|
||||
structure where relevant and the final style prompt.
|
||||
|
||||
Instrument images, audio previews, sound samples, audio playback,
|
||||
Freesound, an Instrument API and external API calls for instrument data
|
||||
@@ -94,10 +87,5 @@ Normal users cannot view or modify these rules in the initial version.
|
||||
|
||||
## Initial Boundary
|
||||
|
||||
Suno remains responsible for music generation and playback. The macOS
|
||||
app opens the browser-based Suno Create page in Custom mode and fills
|
||||
the supported title, lyrics and style fields only. It never triggers
|
||||
Generate. If Suno changes its interface and a field cannot be filled,
|
||||
the app reports that field and keeps the approved text available to
|
||||
copy. Generated songs do not need to return to the app in the initial
|
||||
version.
|
||||
The macOS app prepares and stores the final lyrics and style prompt only.
|
||||
It does not open, embed or control an external music-generation website.
|
||||
|
||||
+5
-11
@@ -105,15 +105,10 @@ requirement is missing and blocks implementation, record it in
|
||||
- [x] Validate output before handoff.
|
||||
- [x] Keep compiler independent from UI and OpenAI client.
|
||||
|
||||
## Phase 8 --- Suno Handoff
|
||||
## Removed --- External Generation Handoff
|
||||
|
||||
- [x] Implement explicit `Send to Suno` action.
|
||||
- [x] Open the appropriate Suno creation surface.
|
||||
- [x] Fill supported fields with approved project output.
|
||||
- [x] Never trigger Generate automatically.
|
||||
- [x] Detect/report when fields cannot be filled rather than silently
|
||||
failing.
|
||||
- [x] Keep integration isolated because Suno UI can change.
|
||||
- [x] Removed opening, embedding and controlling external
|
||||
music-generation websites.
|
||||
|
||||
## Phase 9 --- Quality
|
||||
|
||||
@@ -124,12 +119,11 @@ requirement is missing and blocks implementation, record it in
|
||||
- [ ] Test AI output against locked user choices.
|
||||
- [ ] Test selected instruments influence compiled song-generation
|
||||
context.
|
||||
- [ ] Test Suno handoff without generation.
|
||||
|
||||
## Definition of MVP Done
|
||||
|
||||
A user can create a macOS song project through chat, manually or
|
||||
automatically configure the agreed song parameters, generate/edit lyrics
|
||||
and song planning through OpenAI, select instruments, review
|
||||
the complete project, save versions, and send the approved lyrics/style
|
||||
data to Suno where the app fills fields without initiating generation.
|
||||
the complete project, save versions, and retain the approved final
|
||||
lyrics and style prompt in the project.
|
||||
|
||||
Reference in New Issue
Block a user