Table of Contents

Class IssueResponse

Namespace
Quilt4Net.Toolkit.Features.Issue
Assembly
Quilt4Net.Toolkit.dll

One issue on a team's tracker.

public record IssueResponse : IEquatable<IssueResponse>
Inheritance
IssueResponse
Implements
Inherited Members

Properties

AssignedUserKey

Key of the assigned team member, or empty when unassigned.

public required string AssignedUserKey { get; init; }

Property Value

string

Band

Where the issue sits on the roadmap's order axis.

public required RoadmapBand Band { get; init; }

Property Value

RoadmapBand

Claim

Who says they are working on this, and from which machine; null when nobody holds it.

public IssueClaimResponse Claim { get; init; }

Property Value

IssueClaimResponse

Remarks

Not required, for the reason given on References. null against an older server means it cannot say, which reads the same as unclaimed — the safe interpretation, since claiming an issue somebody else holds only ever warns.

Content

Body text. May be empty.

public required string Content { get; init; }

Property Value

string

CreatedUtc

When the issue was created (UTC).

public required DateTime CreatedUtc { get; init; }

Property Value

DateTime

Effort

Rough size, or null when unsized.

public required IssueEffort? Effort { get; init; }

Property Value

IssueEffort?

Importance

How much this matters, or null when nobody has graded it yet. Paired with Effort for the importance-then-effort ordering.

public required IssueImportance? Importance { get; init; }

Property Value

IssueImportance?

Dependencies declared from this issue. An issue does not carry its inbound links; read the whole set, or the roadmap projection, to see those.

public required IssueLinkResponse[] Links { get; init; }

Property Value

IssueLinkResponse[]

Number

Per-team sequential number, and the issue's stable human reference (#12). Assigned by the server on creation and never reused, including after a delete.

public required int Number { get; init; }

Property Value

int

References

Where this issue came from, and the tickets it is. Empty when nothing was recorded.

public IssueReferenceResponse[] References { get; init; }

Property Value

IssueReferenceResponse[]

Remarks

Deliberately not required, unlike every other property here. The Toolkit publishes before the Server that populates it — the csproj comment in Quilt4Net.Server spells out why that order cannot be reversed — so for the length of that window a client on this version talks to a server that sends no references at all. A required member would turn that window into a deserialization failure on every read; defaulting to empty makes it a non-event.

Resolution

Why the issue ended, naming one of the workflow's resolutions. Empty unless State is terminal.

public string Resolution { get; init; }

Property Value

string

Remarks

Not required, for the reason spelled out on References: this ships in the Toolkit before the Server populates it. Empty against a newer server means the issue is open; empty against an older one means the server cannot say. Both read as "no decision recorded", which is the safe interpretation of each.

Route

The named route this issue belongs to — the roadmap's lane. Empty when the issue belongs to no route, in which case it stays off the map.

public required string Route { get; init; }

Property Value

string

State

Current state, naming one of the states in the team's workflow. Changed through the state endpoint rather than a general update, so the transition can be validated.

public required string State { get; init; }

Property Value

string

Title

Short one-line summary.

public required string Title { get; init; }

Property Value

string

UpdatedUtc

When the issue was last changed (UTC).

public required DateTime UpdatedUtc { get; init; }

Property Value

DateTime