3.7 KiB
3.7 KiB
Phase 2 Testing Guide
🎯 Quick Testing Steps
1. Start the Application
# 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
- Open browser: http://localhost:3000
- Enter Session ID: Type any session ID (e.g., "test-session-123")
- Click "✨ Create Character (Wizard)"
- 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
- After creating character, check:
- Profile badges appear (Race, Class, Personality)
- Character info shows all details
- Export button is visible
4. Test Export
- Click "📥 Export" button in character view
- JSON file should download
- Open JSON to verify all profile data is present
5. Test Import
- Create a new session or use existing
- Click "✨ Create Character (Wizard)"
- In Step 1, click "📥 Import from JSON"
- Select previously exported character
- Verify all fields are populated
- Complete wizard to create
6. Test Profile-Based LLM Prompts
- Send a message as the character
- Check backend logs for generated system prompt
- Should include race, class, and personality traits
7. Test Backward Compatibility
- Click "↓ Quick Create" toggle
- Fill in simple form (legacy mode)
- Create character without profile
- Character should work normally
✅ Expected Behavior
Wizard
- Smooth step navigation
- Visual progress indicator
- Selection cards highlight when clicked
- Form validation (name required, description required)
- Import populates all fields
- Review shows complete summary
Profile Display
- Badges show race, class, personality
- Character info section displays properly
- Export button functional
Export/Import
- Export downloads valid JSON
- JSON includes version, timestamp, character data
- Import reads JSON correctly
- Imported character gets new ID
LLM Integration
- System prompts include profile traits
- Legacy characters still work
- 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:
- Click "🏹 Play as Willow (Elf Ranger)"
- Willow should have legacy profile (no structured profile)
- Create new character with wizard
- 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.