Files
storyteller/CHANGELOG.md
Aodhan Collins da30107f5b Reorganize and consolidate documentation
Documentation Structure:
- Created docs/features/ for all feature documentation
- Moved CONTEXTUAL_RESPONSE_FEATURE.md, DEMO_SESSION.md, FIXES_SUMMARY.md, PROMPT_IMPROVEMENTS.md to docs/features/
- Moved TESTING_GUIDE.md and TEST_RESULTS.md to docs/development/
- Created comprehensive docs/features/README.md with feature catalog

Cleanup:
- Removed outdated CURRENT_STATUS.md and SESSION_SUMMARY.md
- Removed duplicate files in docs/development/
- Consolidated scattered documentation

Main README Updates:
- Reorganized key features into categories (Core, AI, Technical)
- Added Demo Session section with quick-access info
- Updated Quick Start section with bash start.sh instructions
- Added direct links to feature documentation

Documentation Hub Updates:
- Updated docs/README.md with new structure
- Added features section at top
- Added current status (v0.2.0)
- Added documentation map visualization
- Better quick links for different user types

New Files:
- CHANGELOG.md - Version history following Keep a Changelog format
- docs/features/README.md - Complete feature catalog and index

Result: Clean, organized documentation structure with clear navigation
2025-10-12 00:32:48 +01:00

168 lines
5.2 KiB
Markdown

# Changelog
All notable changes to the Storyteller RPG project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
---
## [0.2.0] - 2025-10-12
### Added
- **Context-Aware Response Generator** 🧠
- Select multiple characters to include in AI-generated responses
- Two modes: Scene descriptions (broadcast) or Individual responses (private)
- Smart context building with character profiles, personalities, and conversation history
- Automatic parsing and distribution of individual responses
- Improved prompts with explicit `[CharacterName]` format for reliable parsing
- **Demo Session** 🎮
- Pre-configured "The Cursed Tavern" adventure
- Two characters: Bargin Ironforge (Dwarf Warrior) & Willow Moonwhisper (Elf Ranger)
- Auto-created on server startup
- Quick-access buttons on home page for instant testing
- Eliminates need to recreate test data during development
- **Session ID Copy Button** 📋
- One-click clipboard copy in storyteller dashboard
- Improved UX for session sharing
- **Comprehensive Documentation** 📚
- Feature guides for all major features
- Prompt engineering documentation
- Demo session usage guide
- Bug fixes summary
### Fixed
- **Character Chat History** - Characters can now see full conversation with storyteller (not just most recent message)
- Fixed WebSocket message type handling (`storyteller_response` and `new_message`)
- **Pydantic Deprecation Warnings** - Replaced all `.dict()` calls with `.model_dump()` (9 instances)
- Code is now Pydantic V2 compliant
- No more deprecation warnings in console
- **WebSocket Manager Reference** - Fixed `character_connections` error in contextual response endpoint
- Now properly uses `manager.send_to_client()` with correct key format
### Changed
- Improved LLM prompts for individual responses with explicit format instructions
- Simplified response parsing from 4 regex patterns to single reliable pattern
- Enhanced system prompts for better LLM compliance
- Reorganized documentation structure with dedicated features folder
---
## [0.1.0] - 2025-10-11
### Added
- **Core Session Management**
- Create and join game sessions
- Session ID-based access control
- In-memory session storage
- **Character System**
- Character creation with name, description, and personality
- Character profiles visible to storyteller
- Per-character conversation history
- **Flexible Messaging System** 📨
- **Private Messages** - Character ↔ Storyteller only
- **Public Messages** - Visible to all players
- **Mixed Messages** - Public action + private thoughts
- Real-time message delivery via WebSockets
- **Scene Narration** 📜
- Storyteller can broadcast scene descriptions
- Scenes visible to all connected characters
- Scene history tracking
- **AI-Assisted Responses** ✨
- "AI Suggest" button for storytellers
- Generate response suggestions using character's LLM
- Editable before sending
- **Multi-LLM Support** 🤖
- Support for 100+ models via OpenRouter and OpenAI
- Per-character model selection
- Models: GPT-4o, GPT-4, GPT-3.5, Claude, Llama, Gemini, Mistral, etc.
- Each character can use a different model
- **Real-time Communication** ⚡
- WebSocket endpoints for characters and storyteller
- Instant message delivery
- Connection status indicators
- Pending response tracking
- **Modern UI** 🎨
- Clean, intuitive interface
- Gradient-themed design
- Responsive layout
- Character-specific color schemes
- Loading states and animations
### Technical
- FastAPI backend with WebSocket support
- React frontend with modern hooks
- ConnectionManager for WebSocket state
- Pydantic models for data validation
- CORS configuration for local development
- Environment-based API key management
---
## [Unreleased]
### Planned Features
- Database persistence (PostgreSQL/MongoDB)
- User authentication system
- Character sheets with stats
- Dice rolling mechanics
- Combat system
- Image generation for scenes/characters
- Voice message support
- Session export functionality
- Mobile app versions
---
## Version History
- **0.2.0** (2025-10-12) - Context-Aware AI, Demo Session, Bug Fixes
- **0.1.0** (2025-10-11) - Initial MVP Release
---
## Migration Notes
### 0.1.0 → 0.2.0
**No breaking changes.** All existing functionality preserved.
**New Features Available:**
- Click "▶ Show Generator" in storyteller dashboard for context-aware responses
- Demo session auto-created on startup (session ID: `demo-session-001`)
- Copy button next to session ID for easy sharing
**Bug Fixes Applied Automatically:**
- Full conversation history now visible
- No more Pydantic warnings
- WebSocket messages work correctly
**No Action Required:**
- In-memory sessions continue to work as before
- No database migrations needed
- Frontend automatically detects new features
---
## Contributing
See [docs/README.md](./docs/README.md) for documentation guidelines.
Report bugs or suggest features via GitHub issues.
---
*Format inspired by [Keep a Changelog](https://keepachangelog.com/)*