Plan sprints with dates and a goal, run one at a time per project, and put tickets in them from the ticket page. The Sprints tab follows the one under way with its progress and a burndown in tickets or points against the ideal line. Closing a sprint sends what was left to the next one or back to the backlog; the board can be filtered by sprint. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
17 lines
455 B
TypeScript
17 lines
455 B
TypeScript
import { AutowiredEvent } from '@task-stream/api/shared/domain';
|
|
import { TrackerEvent } from './tracker.event';
|
|
|
|
/** A ticket was moved in or out of a sprint. */
|
|
@AutowiredEvent
|
|
export class IssueSprintChangedEvent extends TrackerEvent {
|
|
constructor(
|
|
actorId: string,
|
|
issueId: string,
|
|
projectId: string,
|
|
readonly sprintId: string | null,
|
|
readonly previousSprintId: string | null,
|
|
) {
|
|
super(actorId, issueId, projectId);
|
|
}
|
|
}
|