Skip to content

v2.2.0 — Suno Platform Refresh, Validation, and De-Identification

Latest

Choose a tag to compare

@zarlor zarlor released this 14 Aug 14:07

A platform-currency release. Suno changed materially over the summer — download caps and download-bound commercial rights arrive 2026-09-03, Studio 2.0 shipped, model retirement is announced, and new control surfaces (Duration slider, Lyricist, the My Taste wand) landed — so the module's entire Suno knowledge layer was re-researched from primary sources and refreshed, then validated end-to-end. The release also de-identifies the public repo: teaching examples now use an invented multi-style cast rather than one creator's catalog. No workflow, schema, or memory-store changes.

Upgrade at a glance (existing installs)

  • Nothing to migrate. Band profiles, songbooks, voice-context files, playlists, WIPs, and the memory store are untouched and fully compatible. No config changes, no new dependencies — the uv run convention from v2.1.0 is unchanged.
  • Heads-up for your own Suno workflow: from September 3, 2026, song downloads are capped per tier (Free 7 lifetime / Pro 20 per month / Premier 60 per month) and commercial rights attach to permitted downloads, not just to a paid tier. The refreshed docs walk through the consequences — pick your keeper before downloading; a song's stems share its single download.
  • If you consume tier-features.py output programmatically: its JSON is now version 3.0.0download_quality was removed and new fields were added (downloads, commercial_use, stem_modes, studio_version, and others). Human/skill use is unaffected.
  • Teaching examples changed names. If you'd internalized the docs' old example songs, the lessons are identical — the illustrative songs are now fictional and span folk, metal, synthwave, brass-fusion, Americana, and trip-hop.

Suno platform reference refresh (research sweep of 2026-08-13)

Documentation only — no skill behavior, script, schema, or memory change. The module's Suno reference docs were last validated in April 2026 and had drifted materially from the platform.

  • Download caps and download-bound commercial rights (effective 2026-09-03: Free 7 lifetime, Pro 20/month, Premier 60/month, Studio exports exempt) are now documented across the tier matrix, Mac's platform reference, the Studio reference, and the feedback parameter map, together with the workflow consequence: selection happens before download, because downloads are now a budget.
  • Studio 2.0 (shipped 2026-08-13, still Premier-only) is documented — MIDI and MIDI-as-prompt, chat bar, custom plugins, wavetable synth, effects, automation, 32-bit export. The Studio 1.x feature names (Remove FX, Alternates, Quick Replace, Warp Markers, EQ, Context Window, Sounds Mode, Stem Cover, Heal Edits, MILO-1080, and Studio's 12-track stem export framing) are marked archived rather than deleted, mirroring Suno's own "Studio 2.0" vs "Studio Archive" help split. Note that Auto Split's up-to-12-stems output is current and unaffected — it is the Studio-side 12-track export framing that is archived. Take Lanes and comping also survived and are documented as current. The Studio time-signature "not sent to generative models" claim is downgraded to unverified for 2.0.
  • Model retirement is recorded as announced-but-unspecified: no official version list, no date, and no official word on what happens to Voices, Custom Models, or Personas built on retired models. Extends and Covers of older songs will run on the new models.
  • Corrections: Personas were never discontinued — they live inside the Voices menu. Every "Personas replaced by Voices" claim in the reference docs (including the profile schema, where it was load-bearing) is corrected. Stem separation is now three named modes with credit costs. Audio upload is 8 min free / 30 min paid. Replace Section's Pro availability is re-confirmed, with our local audible-seams finding kept beside it.
  • New control surfaces documented: the v5.5 web Duration slider (with its hard-cutoff, rushed-delivery, and premature-end-then-restart failure modes, and the Auto-then-Custom+buffer workflow) and the ending-repair decision tree.
  • Provenance work: style and lyric character limits are flagged as community-attested with no official Suno documentation; the 5-8 descriptor count is flagged as non-consensus; the vendor-promoted colon-modifier tag syntax is documented as CONTESTED / do-not-adopt; the artist-name guardrail gains an official Suno citation. Our unreplicated local findings ([Refrain] in heavy lanes, vocable punctuation, "live"-family crowd noise, Replace Section seams) keep their local attribution.

Local findings promoted into the public reference docs

Findings previously held only in internal notes are now documented with neutral attribution and honest grading (LOCAL-CONFIRMED for multi-generation testing, LOCAL-OBSERVED for fewer data points):

  • [Refrain] for quiet repeating sections in heavy genres[Chorus]'s peak-default is overridable in restrained lanes but dominant in heavy ones; the retag plus prompt-level role assignment plus an anthemic chorus exclude is the working fix. Community sources now replicate the problem; the fix remains ours.
  • The "live" word family triggers crowd noise on v5.5 in any form. The raw live recording row was removed from the descriptor-effects table — it was actively recommending a known failure trigger — and replaced with unpolished room sound / natural room ambience.
  • Compound meter buys feel, not meter — style-side 6/8 and 12/8 signals move sway and tempo while the subdivision stays 4/4, across the full escalation from genre words to [6/8] tags. The previous "inconclusive" note and the [6/8] lever in the counter-genre example are updated accordingly.
  • Repeated vocables need every member punctuated when the count matters (A/B tested).
  • Time-based lyric instructions ("lyrics begin at 0:00") are not reliably parsed — downgraded from HIGH confidence to harmless-but-never-load-bearing, with crop as the only deterministic fix.
  • Per-voice Audio Influence profiling can land above the community ceiling (one voice, clean at 85% where 55% showed artifacts), alongside Suno's official escalation path: raise Audio Influence first, then rebuild the profile from a clean acapella.

Primary-source pass (r/SunoAI) folded in

A fourth research report reached primary sources directly and resolved two conflicts in the module's favour: My Taste can be disabled (the existing controls line was right; an aggregation-based claim to the contrary was wrong), and Lyricist exists (silence in community discussion is not absence of the feature). It also added: the negation-inside-standalone-brackets backfire and hyphen-prefix excludes; compound pipe-delimited tags; the ghost-vocal mumbling mechanism and its fixes; the dots-as-lyrics instrumental trick; within-track degradation past ~2 minutes; ad-lib suppression levers; duration-slider adherence and its Custom-style requirement; Studio 2.0 day-one field reports; and a further weakening of plain-text BPM adherence. Ending control is now presented as a genuine split between vendor-guide consensus and primary-source reliability reports, with our own toolkit as the trusted baseline.

Script and skill surfaces brought in line

The refresh reached past the reference docs to the two surfaces that were still contradicting them:

  • suno-band-profile-manager/scripts/tier-features.py rewritten to match its reference twin, restoring the script-is-authoritative relationship the doc asserts. Adds downloads (caps, reset behavior, Studio exemption, accounting rules), commercial_use (bound to a permitted download), stem_modes (three named modes with credit costs and Premier-only Advanced Split), studio_version, audio_upload_max, credits_included, duration_slider_available, replace_section_available, last_validated, and a notes block carrying the pricing-display ambiguity, the model-retirement notice, the character-limit provenance, and the archived Studio 1.x names. Removes download_quality — downloads are gated by count, not bitrate. Corrects credit math (5/song, 10/generation-for-2), Premier's 10,000 credits, audio upload (8 min free / 30 min paid), and Pro's model access. Output version bumped to 3.0.0 since fields were removed. Companion test extended from 15 to 27 cases, including a guard that archived Studio 1.x names never resurface as current features (final full-module validation state below).
  • Two SKILL.md instruction surfaces correctedsuno-feedback-elicitor (Studio is Premier-only rather than "Pro/Premier", stems as Auto Split with credit cost, Song Editor naming plus the local audible-seams caveat, Warp Markers and Alternates routed to outcomes instead of archived tool names, within-track degradation, softened Weirdness ceiling and ending-tag promise, a stale reference pointer) and suno-style-prompt-builder (Studio never on Pro, Song Editor naming with the seams caveat, the "live" word-family crowd-noise trigger added to the dangerous-words guidance, Voices timbre-drop and the official raise-then-rebuild escalation, character-limit provenance, model-retirement caveat).

Source of record: docs/suno-research-sweep-2026-08-13.md (four reports).

Independent validation pass — all findings fixed

The refreshed module was run through the BMad Builder validation method (structural validate-module: pass, zero findings) plus an independent cross-file consistency sweep, which surfaced 2 blockers, 4 should-fix items, and 6 nits — every one a contradiction between files that no per-file review would catch. All twelve are fixed:

  • Voices Audio Influence guidance consolidated to a single source of truth (model-prompt-strategies.md) — it had drifted into three incompatible versions across six files, including a stale "above 70% is counterproductive" absolute and a divergent numeric scale. Every other site now restates briefly and points to the source, with the Persona-slot vs Voice-slot range distinction preserved everywhere.
  • A broken activation command fixed — one SKILL.md documented a customization-resolver invocation that could not execute; all five skills now carry the identical, working form.
  • Take Lanes un-archived — current Studio docs show Take Lanes and comping survived into 2.0; docs, the tier script, and a new bidirectional test guard were corrected together.
  • suno-feedback-elicitor restructured to the BMB v2 skill shape its sibling already followed (persona scaffolding folded into design rationale, Overview first), with the ruling recorded in its decision log.
  • Ending-control guidance now presents the genuine vendor-consensus vs primary-source split; the Advanced Split credit cost carries its verified mechanism (each extraction returns the chosen stem plus its complement — 20 credits total per stem).

Live-UI verifications (Pro account, 2026-08-14)

Three open questions were closed by direct observation and are graded as such in the docs: Lyricist is present at Pro (via the lyrics panel's "Help me write lyrics" helper → "+Lyricist"; free-tier gating remains unverified), the My Taste wand pre-fills the Styles field with ordinary editable text (a drafting shortcut, not a hidden generation layer — corroborating that explicit prompts always win), and the Duration slider's 10-second-to-6-minute range is confirmed (the 5-second increment granularity remains community-attested). Also newly documented as observed-but-untested: the taste profile's Genre Overrides free-text field.

Validation state at release

Full module suite: 506 tests passing (up from 493 at v2.1.0 — new tier-features coverage including regression guards against archived-feature and personal-data reintroduction). Structural module validation: pass, zero findings. Both skills edited this release hold their Good quality grades under the BMB skill-quality principles.

De-identification of the public module

The repo is depersonalized ahead of this release. Every git-tracked file — root manifests, reference docs, scripts, test fixtures, decision logs, and this changelog's own history — had the owner's name, band identities and their shorthands, song titles and their revealed meanings, Voice clone names, and catalog specifics removed or replaced.

  • Findings and pedagogy are unchanged. Only the personal wrappers moved: a production result that used to read "confirmed on [band]'s [song]" now reads "confirmed in production testing," and prompt-text evidence (the actual descriptors that were tested) is preserved verbatim because it is not personal.
  • Teaching examples were rewritten, not dropped. The thematic-discipline rules in creed.md and playlist-sequencing-methodology.md depend on title-versus-meaning pairs where the surface read inverts; those now use invented songs (Harbor Lights, Sunday Driver, Paper Cut, The Long Way Home, Bright Side, Glass Bottom, Signal Fire) that teach the same lesson.
  • Examples now span multiple styles — folk, metal, synthwave, brass-fusion, Americana, trip-hop — rather than one catalog's lanes, so the docs read as universally applicable.
  • One functional fix fell out of it: genre-coverage.py had project-specific band names hardcoded in its stopword set. Band-name filtering is now derived at runtime from the band being scanned (band_stopwords()), which is both depersonalized and portable to any project.
  • Test fixtures were renamed to a fictional cast; apostrophe-handling coverage was deliberately preserved by choosing a replacement name that still contains an apostrophe.
  • The Mac persona and its NOLA character stay — that is authored module fiction, not user data — as does the GitHub handle in repository URLs.