feat: sprints with burndown and carry-over
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>
This commit is contained in:
@@ -12,6 +12,7 @@ import {
|
||||
NotificationGql,
|
||||
ProjectChangeGql,
|
||||
ReleaseChangeGql,
|
||||
SprintChangeGql,
|
||||
} from './types';
|
||||
|
||||
const asIs = { resolve: <T>(payload: T) => payload };
|
||||
@@ -66,6 +67,14 @@ export class SubscriptionResolver {
|
||||
return this.changes.watchReleases(me.id, projectId);
|
||||
}
|
||||
|
||||
@Subscription(() => SprintChangeGql, asIs)
|
||||
sprintChanged(
|
||||
@CurrentUser() me: User,
|
||||
@Args('projectId', { type: () => ID }) projectId: string,
|
||||
) {
|
||||
return this.changes.watchSprints(me.id, projectId);
|
||||
}
|
||||
|
||||
@Subscription(() => ProjectChangeGql, asIs)
|
||||
projectChanged(
|
||||
@CurrentUser() me: User,
|
||||
|
||||
Reference in New Issue
Block a user