ADDED Requirements
Requirement: Three-layer page navigation
The SpeakingPanel SHALL manage a three-layer page structure with breadcrumb navigation: Layer 1 (英语学科主页) → Layer 2 (口语子页面) → Layer 3 (配置页).
Scenario: Navigate from Layer 1 to Layer 2
- WHEN teacher clicks the "口语" exercise type on Layer 1
- THEN the panel transitions to Layer 2 (口语子页面)
- THEN the breadcrumb shows "英语学科 > 口语"
Scenario: Navigate back via breadcrumb
- WHEN teacher clicks "英语学科" in the breadcrumb on Layer 2
- THEN the panel returns to Layer 1
Requirement: Curriculum cascading selectors
Layer 1 SHALL display three cascading dropdown selectors for textbook, grade, and unit, loaded from curriculum.json.
Scenario: Select textbook, grade, and unit
- WHEN teacher selects a textbook, grade, and unit from the dropdowns
- THEN the unit info card updates to show the selected unit's title and description
Requirement: Unit info card
Layer 1 SHALL display a card showing the selected unit's title and learning description.
Scenario: View unit info
- WHEN a unit is selected
- THEN the card displays the unit's title (e.g., "Going to school") and its description
Requirement: Exercise type grid
Layer 1 SHALL display a grid of exercise types: 口语, 听力, 阅读, 写作.
Scenario: Click speaking exercise type
- WHEN teacher clicks "口语"
- THEN the panel navigates to Layer 2
Scenario: Click non-speaking exercise type
- WHEN teacher clicks "听力", "阅读", or "写作"
- THEN nothing happens (not implemented yet, visually disabled or show "coming soon")
Requirement: Creation mode switch on Layer 2
Layer 2 SHALL support creation mode switching as implemented in the demo SpeakingPanelV2.tsx.
Scenario: Switch between creation modes
- WHEN teacher switches between 智能推荐, AI生成, and 手动创建
- THEN the Layer 2 content updates to show the corresponding view
Requirement: Smart recommendation cards
Layer 2 in 智能推荐 mode SHALL display recommendation cards from topicDiscussionTasks.json, filtered by selected unit ID.
Scenario: View recommendations for a unit
- WHEN Unit 2 is selected and 智能推荐 mode is active
- THEN the panel displays 4 topic discussion recommendation cards with titleZh, subtitle, difficulty, rounds, durationMinutes
Scenario: Click a recommendation card
- WHEN teacher clicks a recommendation card
- THEN the panel navigates to Layer 3 (TopicDiscussionConfig) pre-filled with the card's vocabulary and sentences
Scenario: No recommendations for a unit
- WHEN a unit with no recommendation data is selected
- THEN the panel displays an empty state message
Requirement: AI generation UI shell
Layer 2 in AI生成 mode SHALL display the AI generation form UI without backend functionality.
Scenario: View AI generation form
- WHEN teacher switches to AI生成 mode
- THEN the AI generation form is displayed (UI only, no actual generation)
Requirement: Manual creation
Layer 2 in 手动创建 mode SHALL navigate directly to the TopicDiscussionConfig with default/empty values.
Scenario: Enter manual creation
- WHEN teacher switches to 手动创建 mode
- THEN the panel navigates to Layer 3 (TopicDiscussionConfig) with empty/default configuration