Files
TheDeclineOfWarriors/Assets/Features/Tasks/Editor/TaskBoardModels.cs
T

63 lines
2.1 KiB
C#

using System;
using System.Collections.Generic;
namespace Project.Tasks.Editor
{
internal static class TaskBoardConstants
{
public const int MinutesPerHour = 60;
public const int HoursPerDay = 8;
public const int MinutesPerDay = HoursPerDay * MinutesPerHour;
public const int WorkDaysPerWeek = 5;
public const int MinutesPerWeek = WorkDaysPerWeek * MinutesPerDay;
public static readonly string[] Statuses = { "BackLog", "ToDo", "InProgress", "Review", "Done" };
public static readonly string[] Priorities = { "Lowest", "Low", "Medium", "High", "Highest" };
}
[Serializable]
internal sealed class TaskRecord
{
public string Id;
public string Title;
public string Status;
public string Priority;
public string Area;
public string Owner;
public string Created;
public string Updated;
public string ExecutionTime;
public string RelativeFilePath;
public string AbsoluteFilePath;
public string IndexSummary;
public string TaskSummary;
public int EstimatedMinutes = -1;
public string Header;
public string Why;
public string ExpectedOutcome;
public string CurrentContext;
public string AcceptanceCriteria;
public string Verification;
public string Risks;
public string HumanDecisions;
public string DecisionLog;
public string HandoffNotes;
public bool FileExists;
public bool DetailsLoaded;
public int IndexLineNumber = -1;
public readonly List<string> ValidationMessages = new List<string>();
}
[Serializable]
internal sealed class TaskBoardData
{
public string ProjectRoot;
public string TasksDirectory;
public string IndexPath;
public string OwnersConfigPath;
public readonly List<TaskRecord> Tasks = new List<TaskRecord>();
public readonly List<string> Warnings = new List<string>();
public readonly List<string> OwnerPresets = new List<string>();
}
}