feat: AI Copilot suggestion chips + typeahead dropdown
- Suggestion chips bar: context-aware (amber for rearrange, indigo for creation) - Typeahead dropdown: keyword matching on ≥2 chars, Tab to select - getSelectedMidiItemInfo helper for context detection - Backend: 4 rearrange presets in ai_presets.py - PromptTemplateManager: getContextualSuggestions(hasSelectedItem)
This commit is contained in:
@@ -22,11 +22,13 @@ def test_list_presets_defaults():
|
||||
assert res.status_code == 200
|
||||
data = res.json()
|
||||
assert data["success"] is True
|
||||
assert len(data["presets"]) == 3
|
||||
assert len(data["presets"]) == 7
|
||||
names = [p["name"] for p in data["presets"]]
|
||||
assert "Epic Orchestra Intro (8 Bars)" in names
|
||||
assert "Pop Piano Chords (4 Bars)" in names
|
||||
assert "Cyberpunk Synthwave (8 Bars)" in names
|
||||
assert "Jazz Swing Variation" in names
|
||||
assert "80s Synthwave Arpeggiator" in names
|
||||
|
||||
|
||||
def test_create_user_preset():
|
||||
@@ -54,7 +56,7 @@ def test_create_user_preset():
|
||||
assert res2.status_code == 200
|
||||
names = [p["name"] for p in res2.json()["presets"]]
|
||||
assert "My Beat (4 Bars)" in names
|
||||
assert len(res2.json()["presets"]) == 4 # 3 defaults + 1 user
|
||||
assert len(res2.json()["presets"]) == 8 # 7 defaults + 1 user
|
||||
|
||||
|
||||
def test_update_user_preset():
|
||||
|
||||
Reference in New Issue
Block a user