Forge
csharp3407750f
1namespace AgentForge.Models;
2
3public enum CiRunStatus
4{
5 Unknown,
6 Pending,
7 Success,
8 Failure,
9 Cancelled,
10}
11
12public static class CiRunStatusExtensions
13{
14 public static string ToSlug(this CiRunStatus status) => status switch
15 {
16 CiRunStatus.Pending => "pending",
17 CiRunStatus.Success => "success",
18 CiRunStatus.Failure => "failure",
19 CiRunStatus.Cancelled => "cancelled",
20 _ => "unknown",
21 };
22
23 public static bool TryParseSlug(string? slug, out CiRunStatus status)
24 {
25 switch (slug?.Trim().ToLowerInvariant())
26 {
27 case "pending":
28 status = CiRunStatus.Pending;
29 return true;
30 case "success":
31 status = CiRunStatus.Success;
32 return true;
33 case "failure":
34 status = CiRunStatus.Failure;
35 return true;
36 case "cancelled":
37 status = CiRunStatus.Cancelled;
38 return true;
39 case "unknown":
40 status = CiRunStatus.Unknown;
41 return true;
42 default:
43 status = CiRunStatus.Unknown;
44 return false;
45 }
46 }
47}
48
View only · write via MCP/CIDE