mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-14 22:01:09 +02:00
Implement rock-solid automated testing infrastructure for mana-core-auth with daily execution, notifications, and comprehensive monitoring. Test Suite Improvements: - Fix all 36 failing BetterAuthService tests (missing service mocks) - Add 21 JwtAuthGuard tests achieving 100% statement coverage - Create silentError helper to suppress intentional error logs - Fix Todo backend TaskService test structure - Add jose mock for JWT testing - Configure jest collectCoverageFrom for mana-core-auth GitHub Actions Workflow: - Daily automated test execution (2 AM UTC + manual trigger) - Matrix parallelization across 6 backend services - PostgreSQL and Redis service containers - Coverage enforcement (80% threshold) - Multi-channel notifications (Discord, Slack, GitHub Issues) - Support for success notifications (opt-in) Test Infrastructure: - Coverage aggregation across multiple services - Flaky test detection with 30-run history tracking - Performance metrics tracking with regression detection - Test data seeding and cleanup scripts - Comprehensive test reporting with formatted metrics Documentation: - TESTING_GUIDE.md (4000+ words) - Complete testing documentation - AUTOMATED_TESTING_SYSTEM.md - System architecture and workflows - DISCORD_NOTIFICATIONS_SETUP.md - Discord webhook setup guide - TESTING_DEPLOYMENT_CHECKLIST.md - Pre-deployment verification - TESTING_QUICK_REFERENCE.md - Quick command reference Final Result: - 180/180 tests passing (100% pass rate) - Zero console errors in test output - Automated daily testing with rich notifications - Production-ready test infrastructure |
||
|---|---|---|
| .. | ||
| architecture | ||
| archive | ||
| central-services | ||
| daily-reports | ||
| optimizable | ||
| pr-reviews | ||
| sessions | ||
| test-examples | ||
| AUTOMATED_TESTING_SYSTEM.md | ||
| CI_CD_SETUP.md | ||
| CORS_CONFIGURATION_GUIDE.md | ||
| DATABASE_MIGRATIONS.md | ||
| DEPLOYMENT.md | ||
| DEPLOYMENT_ARCHITECTURE.md | ||
| DEPLOYMENT_DIAGRAMS.md | ||
| DEPLOYMENT_HETZNER.md | ||
| DEPLOYMENT_RUNBOOKS.md | ||
| DEVELOPMENT_SCRIPTS.md | ||
| DISCORD_NOTIFICATIONS_SETUP.md | ||
| DOCKER_GUIDE.md | ||
| ENVIRONMENT_VARIABLES.md | ||
| ERROR_TRACKING_DESIGN.md | ||
| GIT_WORKFLOW.md | ||
| HETZNER_PRODUCTION_GUIDE.md | ||
| I18N.md | ||
| LOCAL_DEVELOPMENT.md | ||
| MANA_CORE_AUTH_ANALYSIS.md | ||
| MANADECK_POSTGRES_MIGRATION.md | ||
| PWA_GUIDE.md | ||
| README.md | ||
| RUNTIME_CONFIG.md | ||
| SECURITY_FIXES_IMPLEMENTATION_GUIDE.md | ||
| SELF-HOSTING-GUIDE.md | ||
| SETUP_TEMPLATES.md | ||
| SHARED_PACKAGES_ROADMAP.md | ||
| STAGING_DEPLOYMENT_ISSUES.md | ||
| STAGING_SETUP.md | ||
| SVELTE_CHECK_ISSUES.md | ||
| TESTING.md | ||
| TESTING_DEPLOYMENT_CHECKLIST.md | ||
| TESTING_GUIDE.md | ||
| TESTING_QUICK_REFERENCE.md | ||
| ULOAD-DEPLOYMENT.md | ||
| USER_SETTINGS.md | ||
Manacore Monorepo Documentation
Welcome to the Manacore monorepo documentation. This guide helps you find exactly what you need.
🚀 Quick Navigation
| I want to... | Go here |
|---|---|
| Start developing locally | Local Development |
| Set up environment variables | Environment Setup |
| Understand the architecture | Deployment Architecture |
| Work with databases | Database Migrations |
| Deploy to staging | Staging Setup |
| Deploy to production | Deployment Runbooks |
| Use Docker locally | Docker Guide |
| Debug an issue | Staging Issues |
| Learn code patterns | Guidelines |
| Configure CI/CD | CI/CD Setup |
| Work with runtime config | Runtime Config |
| Self-host the platform | Self-Hosting Guide |
| Run and write tests | Testing Guide |
📁 Documentation Structure
Getting Started
First-time setup, environment configuration, and basic workflows.
- Local Development - Complete local development setup
- Setup Templates - Templates for new projects
Architecture & Design
System design, technology choices, and architectural patterns.
- Deployment Architecture - Complete infrastructure overview
- Deployment Diagrams - Visual architecture diagrams
Development Workflows
Day-to-day development, migrations, and Docker.
- Database Migrations - Migration best practices
- Docker Guide - Local Docker setup
- Git Workflow - Git branching and commit conventions
- Development Scripts - Helper scripts
Deployment & Operations
CI/CD, staging, production deployment, and operational procedures.
- Deployment Overview - Deployment strategy overview
- Deployment Runbooks - Step-by-step deployment procedures
- Staging Setup - Hetzner staging environment
- Staging Issues - Known issues and solutions
- Hetzner Production Guide - Production deployment
- CI/CD Setup - GitHub Actions configuration
- Runtime Config - Dynamic configuration injection
Specialized Topics
- PWA Guide - Progressive Web App setup
- I18N - Internationalization
- User Settings - User settings architecture
- Self-Hosting Guide - Self-hosting instructions
- Testing Guide - Comprehensive testing documentation
- Testing Quick Reference - Common testing commands and patterns
Project-Specific
- ManaDeck Postgres Migration - ManaDeck database migration
- Uload Deployment - Uload-specific deployment
Archived Documentation
Historical documentation and analysis reports moved to archive/.
🎯 Documentation Philosophy
This documentation follows these principles:
- Progressive Disclosure - Start with essentials, link to deep dives
- Single Source of Truth - Each topic has one authoritative document
- Task-Oriented - Organized by what you're trying to accomplish
- Keep Current - Archive or delete outdated docs instead of letting them linger
📝 For AI Assistants
If you're Claude or another AI assistant:
- Start with CLAUDE.md for essential patterns
- Reference Guidelines for detailed coding patterns
- Use this README to find specific documentation topics
- Always check file modification dates to ensure information is current
🔄 Maintenance
When updating documentation:
- Update this README if you add/move/remove major docs
- Archive outdated docs to
archive/rather than deleting - Keep cross-references up to date
- Update the modification date in this file
Last Updated: 2025-12-25