Merged
Conversation
- ci.yml: Build and test backend (.NET) and frontend (React) - pr-main.yml: Validate that only develop can merge into main
- Use find instead of quoted globs for backend project detection - Remove || true to let failing tests block merges
feat(ci): add GitHub Actions workflows
- Create FantasyRealm.sln with 6 projects: - FantasyRealm.Api (ASP.NET Core Web API) - FantasyRealm.Application (business logic) - FantasyRealm.Domain (entities, interfaces) - FantasyRealm.Infrastructure (EF Core, repositories) - FantasyRealm.Tests.Unit (xUnit, Moq, FluentAssertions) - FantasyRealm.Tests.Integration (Testcontainers) - Configure project references following Clean Architecture - Add NuGet packages (EF Core, JWT, MongoDB, BCrypt, FluentValidation) - Configure Swagger and CORS in Program.cs
…NET-Backend Fro 15 setup du projet net backend
- Initialize Vite + React + TypeScript project - Configure ESLint with Prettier integration - Add React Router for navigation - Add Vitest with Testing Library for tests - Create folder structure (components, pages, hooks, services, context, types, utils) - Add .env.example for environment variables
- Change all projects from net10.0 to net8.0 - Downgrade EF Core packages from 10.0.0 to 8.0.11 - Downgrade MongoDB.Driver from 3.5.2 to 3.1.0 - Downgrade Mvc.Testing from 10.0.0 to 8.0.11
Required for tsc -b to work with project references (TS6306)
fix(backend): align target framework with CI SDK (net8.0)
…React-Frontend feat(frontend): setup React project with Vite and TypeScript
- Create tables: role, user, character, article, character_article, comment - Add indexes for performance optimization - Seed roles, test users, articles and sample characters
- Gender: Male, Female - ArticleType: Clothing, Armor, Weapon, Accessory - CommentStatus: Pending, Approved - ActivityAction: 12 actions for MongoDB activity logs
- Role, User, Character, Article, CharacterArticle, Comment (PostgreSQL) - ActivityLog (MongoDB) - Add MongoDB.Bson package for ActivityLog serialization
…ntion - SnakeCaseNamingConvention for automatic PascalCase to snake_case mapping - DbContext with 6 DbSets and Fluent API configuration - Enums stored as strings for SQL readability
- MongoDB context with ActivityLogs collection - Uses primary constructor (C# 12)
- Add connection strings placeholders in appsettings.json - Add DependencyInjection.cs with AddInfrastructure extension method - Add InMemory EF Core package for unit tests - Add 5 unit tests for FantasyRealmDbContext
…de-donnees Fro 17 setup des bases de donnees
- Gender, ArticleType, CommentStatus now convert to lowercase
- Matches SQL constraints ('male', 'clothing', 'pending')
fix(infrastructure): align enum conversions with SQL CHECK constraints
- Add IEmailService interface in Application layer - Create EmailSettings for SMTP configuration - Implement SmtpEmailService using MailKit - Add HTML email templates for: - Welcome email - Password reset - Character approved/rejected - Comment approved/rejected - Account suspended - Configure DI registration with IOptions pattern - Add MailKit and configuration extensions packages
- Extract ISmtpClientFactory for testability (DI pattern) - Add 11 unit tests for EmailTemplates (content, XSS protection, HTML structure) - Add 13 unit tests for SmtpEmailService (SMTP calls, settings, error handling) - Add 7 integration tests sending real emails to contact@fantasy-realm.com - Integration tests use SkippableFact to skip when not configured - Configure shared user-secrets between Api and Tests.Integration
HTML encoding does not escape URL-significant characters (+, /, =). Use Uri.EscapeDataString for query string parameters to ensure valid reset links for all token formats.
…centralise Fro 45 service d email centralise
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
🚅 Environment fantasyrealm-character-man-pr-10 in FantasyRealm Online has no services deployed. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Replace System.Web.HttpUtility with System.Net.WebUtility for HTML encoding in email templates. WebUtility is natively available in .NET Core/8 without requiring additional package references, unlike HttpUtility which requires the legacy System.Web assembly.
- Microsoft.Extensions.Options.ConfigurationExtensions: 10.0.0 → 8.0.0 - Microsoft.Extensions.Configuration.UserSecrets: 10.0.0 → 8.0.1 Version 10.x packages are designed for .NET 10 and cause assembly version conflicts when used with .NET 8 target framework.
…rsions fix(deps): downgrade Microsoft.Extensions packages to .NET 8 versions
…mlencode fix(email): use WebUtility.HtmlEncode instead of HttpUtility
Prevents Railway from failing on auto-detection of the monorepo. Backend deployment configuration will be done in dedicated US.
ci: add railway.toml to skip build until deployment US
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.