Files
storyteller/TESTING_PHASE2.md
Aodhan Collins 41975ecfe2 Phase 2 complete
2025-10-12 02:18:56 +01:00

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

  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

  • 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:

  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.