Restructure solution layout by module

This commit is contained in:
master
2025-10-28 15:10:40 +02:00
parent 95daa159c4
commit d870da18ce
4103 changed files with 192899 additions and 187024 deletions

View File

@@ -0,0 +1,44 @@
using System;
using System.Collections.Generic;
namespace StellaOps.Concelier.Merge.Services;
/// <summary>
/// Canonical conflict detail used to materialize structured payloads for persistence and explainers.
/// </summary>
public sealed record ConflictDetailPayload(
string Type,
string Reason,
IReadOnlyList<string> PrimarySources,
int PrimaryRank,
IReadOnlyList<string> SuppressedSources,
int SuppressedRank,
string? PrimaryValue,
string? SuppressedValue)
{
public static ConflictDetailPayload FromDetail(MergeConflictDetail detail)
{
ArgumentNullException.ThrowIfNull(detail);
return new ConflictDetailPayload(
detail.ConflictType,
detail.Reason,
detail.PrimarySources,
detail.PrimaryRank,
detail.SuppressedSources,
detail.SuppressedRank,
detail.PrimaryValue,
detail.SuppressedValue);
}
public MergeConflictExplainerPayload ToExplainer() =>
new(
Type,
Reason,
PrimarySources,
PrimaryRank,
SuppressedSources,
SuppressedRank,
PrimaryValue,
SuppressedValue);
}