# Phase 2 Testing Guide ## 🎯 Quick Testing Steps ### 1. Start the Application ```bash # Terminal 1 - Backend cd /home/aodhan/projects/apps/storyteller python -m uvicorn main:app --reload --port 8000 # Terminal 2 - Frontend cd frontend npm start ``` ### 2. Test Character Creation Wizard 1. **Open browser:** http://localhost:3000 2. **Enter Session ID:** Type any session ID (e.g., "test-session-123") 3. **Click "✨ Create Character (Wizard)"** 4. **Step through wizard:** - Step 1: Enter name, select gender - Step 2: Add description and background - Step 3: Choose race and class (click cards) - Step 4: Select personality type - Step 5: Choose AI model - Step 6: Review and create ### 3. Test Character Profile Display 1. After creating character, check: - Profile badges appear (Race, Class, Personality) - Character info shows all details - Export button is visible ### 4. Test Export 1. Click "📥 Export" button in character view 2. JSON file should download 3. Open JSON to verify all profile data is present ### 5. Test Import 1. Create a new session or use existing 2. Click "✨ Create Character (Wizard)" 3. In Step 1, click "📥 Import from JSON" 4. Select previously exported character 5. Verify all fields are populated 6. Complete wizard to create ### 6. Test Profile-Based LLM Prompts 1. Send a message as the character 2. Check backend logs for generated system prompt 3. Should include race, class, and personality traits ### 7. Test Backward Compatibility 1. Click "↓ Quick Create" toggle 2. Fill in simple form (legacy mode) 3. Create character without profile 4. Character should work normally ## ✅ Expected Behavior ### Wizard - [x] Smooth step navigation - [x] Visual progress indicator - [x] Selection cards highlight when clicked - [x] Form validation (name required, description required) - [x] Import populates all fields - [x] Review shows complete summary ### Profile Display - [x] Badges show race, class, personality - [x] Character info section displays properly - [x] Export button functional ### Export/Import - [x] Export downloads valid JSON - [x] JSON includes version, timestamp, character data - [x] Import reads JSON correctly - [x] Imported character gets new ID ### LLM Integration - [x] System prompts include profile traits - [x] Legacy characters still work - [x] Profile-based prompts are coherent ## 🐛 Known Issues ### Fixed - ✅ Syntax error with escaped quotes in docstring (fixed) ### To Monitor - Webpack deprecation warnings (harmless, won't affect functionality) - Frontend hot reload may require manual refresh ## 🎮 Demo Session Test Try the pre-configured demo: 1. Click "🏹 Play as Willow (Elf Ranger)" 2. Willow should have legacy profile (no structured profile) 3. Create new character with wizard 4. Compare the two in gameplay ## 📊 Profile Options to Test ### Races - [ ] Human - [ ] Elf - [ ] Dwarf - [ ] Orc - [ ] Halfling ### Classes - [ ] Warrior - [ ] Wizard - [ ] Cleric - [ ] Archer - [ ] Rogue ### Personalities - [ ] Friendly - [ ] Serious - [ ] Doubtful - [ ] Measured ### Combinations to Try - Elf Wizard (Measured) - Classic magic user - Dwarf Warrior (Serious) - Traditional tank - Halfling Rogue (Friendly) - Lovable trickster - Orc Cleric (Doubtful) - Interesting contrast - Human Archer (Measured) - Balanced ranger ## 🔍 What to Check in Backend Logs When character sends message, look for system prompt like: ``` You are [Name], a [gender] [race] [class]. [Description] [Race traits] [Class traits] [Personality traits] Background: [background if provided] ``` ## 📝 Feedback to Provide - UI/UX impressions - Any bugs or errors - Performance issues - Suggested improvements - Missing features --- **Ready to test!** Start both servers and follow the steps above.