Repository navigation
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Difference and current behaviour
Each bar chooses a random scale degree and inversion without a progression-level goal. Scale membership alone does not specify harmonic tension, resolution or how individual chord voices move.
Assessed against SongGenerator.cs, Types.cs and docs/DESIGN.md, including the proposed changes in PR #5.
Requested capability
- Add opt-in progression plans with harmonic roles, phrase-level tension and configurable cadence points.
- Choose chord voicings with register limits and bounded voice movement; coordinate bass and melody with harmony while permitting passing and suspended tones.
- Support an initial tonal progression vocabulary and explicit transitions or key changes. Document which musical traditions each preset models.
Acceptance criteria
- Provide deterministic examples of an unresolved phrase, a resolved cadence and a section transition, with chord and harmonic-role annotations.
- Tests verify progression constraints, cadence placement, chord voice ranges and configured movement limits.
- A demo shows chord names, voice movement and tension targets; listening review assesses musical direction separately from mathematical validity.
- Add API documentation and an educational same-score comparison with labelled controls/axes where applicable.
- Preserve the existing seed output by default; any intentional output change must increment SongGenerator.Version and deliberately update the golden hash. Seeded independent decisions, sample-rate consistency and note/stem ground truth must remain testable.
Relationships and boundaries
Roadmap: #6.
Suggested foundations (integration dependencies, not a ban on isolated prototyping):
- Add verse, chorus and bridge structure with intentional transitions #7 (Add verse, chorus and bridge structure with intentional transitions)
- Develop memorable melodic motifs through repetition and variation #8 (Develop memorable melodic motifs through repetition and variation)
Implementation should keep the composition plan separate from performance/rendering choices. Subjective musical effectiveness needs listening review as well as deterministic signal/event tests. This issue adds a selectable capability; styles may deliberately use a straight, restrained or minimal alternative.
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request
Activity
davidnmbond commentedon Oct 20, 2026
PR #34 adds selectable/transposable common progressions, custom chord symbols, native chord annotations and inversions that minimise voice movement. Strong melody beats follow harmony. Cadence planning, tension targets and key transitions remain open; the new arranger does not claim a resolved ending merely because a section is called Outro.
davidnmbond commentedon Oct 20, 2026
PR #36 adds verse/chorus/bridge harmonic plans, functional/seventh-colour variation, dominant-directed open sections, tonic chorus closure and explicit V7-I cadence/tag endings. Duration planning reserves an outro instead of truncating a section. Explicit modulation and longer-range tension plans remain open.
davidnmbond commentedon Oct 20, 2026
Research follow-up (PR #38): add beat-based harmonic spans, chords held across bars, local harmonic destinations and cadence preparation; protect hook landmarks during reharmonisation. Mozart K.545 illustrates thematic return in changed harmonic context; Bon Jovi illustrates prechorus preparation. These remain proposals, not new shipped capabilities. Full report: https://github.com/panoramicdata/PanoramicData.MusicGeneration/blob/docs/hooks-and-development-research/docs/HOOKS_AND_DEVELOPMENT.md
davidnmbond commentedon Oct 21, 2026
PR #42 fixes the default full-contrast path that discarded the selected progression for verses/bridges. Section plans now derive from that cycle; custom verse/bridge chord symbols survive with progression variation zero. The inspector exposes performed section sequences, and regression tests cover all named choices and custom symbols. Bass fifths now follow diminished/augmented chord qualities.
Rule R04 is updated in catalogue 0.2.0. This does not complete harmonic spans, local tonal destinations or richer voice-leading/cadence controls; this issue remains open for those capabilities.
davidnmbond commentedon Oct 22, 2026
Status check against main (3040a59): partly implemented. Selectable progressions, inversions with minimal voice movement, section harmonic plans and V7-I cadence endings are in main (PRs #34, #36, #42). Open: beat-based harmonic spans, local destinations and cadence preparation, explicit modulation, tension targets and the annotated unresolved/resolved examples. Staying open.