Class RoadmapResponse
The roadmap, already laid out. This is the shape the view component draws.
public record RoadmapResponse : IEquatable<RoadmapResponse>
- Inheritance
-
RoadmapResponse
- Implements
- Inherited Members
Remarks
The projection is built on the server so the component does not have to re-derive lanes and bands from a flat issue list — two consumers deriving the same layout is two places for it to differ.
Properties
Edges
Every edge worth drawing, already filtered to links whose endpoints both appear in Routes.
public required RoadmapEdgeResponse[] Edges { get; init; }
Property Value
GeneratedUtc
When this projection was built (UTC).
public required DateTime GeneratedUtc { get; init; }
Property Value
HiddenCount
Issues that do carry a route but are still not drawn — their route fell outside the lane cap, or they are finished and explain no edge.
public required int HiddenCount { get; init; }
Property Value
Remarks
Counted separately from UnroutedCount because the two have different fixes and conflating them produces a false statement. The first version reported both as "carry no route", which was wrong the first time a real import exceeded the lane cap: three parked issues with a perfectly good route were described as having none.
Routes
The lanes, in display order. Each is one route.
public required RoadmapRouteResponse[] Routes { get; init; }
Property Value
UnroutedCount
Issues that carry no route at all, and so belong in no lane.
public required int UnroutedCount { get; init; }