namespace TarninaHub.Application.Text;
///
/// Builds the canonical text used to compute an innovation embedding
/// (matchmaking, steps 14-15).
///
public static class EmbeddingTextBuilder
{
public static string Build(string title, string? summary, string? description, string? challengeName = null)
{
var parts = new List();
if (!string.IsNullOrWhiteSpace(title))
{
parts.Add(title.Trim());
}
if (!string.IsNullOrWhiteSpace(summary))
{
parts.Add(summary.Trim());
}
if (!string.IsNullOrWhiteSpace(description))
{
parts.Add(description.Trim());
}
if (!string.IsNullOrWhiteSpace(challengeName))
{
parts.Add(challengeName.Trim());
}
return string.Join("\n", parts);
}
}