This directory contains all project documentation organized by topic.
- Server Setup - How to configure and run the server
- Client Setup - How to connect the game client
- Request Flow - How requests are processed through the system
Design decisions, architectural patterns, and system organization.
- MASTER_DESIGN.md - Primary architecture document (source of truth)
- VOLATILITY_LAYERS.md - Layer architecture and dependency rules
- PACKAGE_STRUCTURE.md - libs/ vs packages/ organization guide
- ARCHITECTURE_EVALUATION.md - Architecture assessment
- ARCHITECTURE_GROUP_ANALYSIS.md - Document relationships
- PACKAGE_ORGANIZATION_ANALYSIS.md - Package structure analysis
- ALL_DOCS_REVIEW.md - Documentation meta-analysis
- refactoring/ - Refactoring plans and migration guides
Binary protocol specifications and serialization guides.
- PACKET_SERIALIZATION.md - Binary protocol and message formats
- MCO_PROTOCOL_RFC.md - Protocol RFC specification
- RFC_SERVER_COMPARISON_NOTES.md - RFC comparison notes
- PROTOCOL_BINARY_OVERLAP.md - Serialization overlap analysis
- SERIALIZATION_MIGRATION_MAP.md - Migration guide
- SHARED_PACKAGES_ANALYSIS.md - Shared packages analysis
- packets.md - Packet diagrams
Guide for implementing protocol message handlers.
- ADDING_HANDLERS.md - Step-by-step handler implementation
Testing strategies and session replay documentation.
- CRITICAL_TEST_COVERAGE.md - Test coverage gaps and priorities
- SESSION_FIXTURES.md - Session recording overview
- TESTING_WITH_SESSIONS.md - Session replay testing guide
Operational tasks and improvement tracking.
- QUICK_WINS.md - Quick fix checklist
- LOGGING_ANALYSIS.md - Logging system improvements
External references and data exports.
- pkware/ - PKWare compression reference
- export.psql - Database export
Technical notes and implementation details.
- README.md - Technical overview
- internal_notes.md - Internal implementation notes
- external_notes.md - External references
When adding new documentation:
- Choose the appropriate subdirectory based on topic
- Use clear, descriptive filenames (UPPERCASE for major docs, lowercase for notes)
- Update this index with a link to the new document
- Cross-reference related documents where applicable