feat: a day of the activity map opens what happened, ticket by ticket
On the project dashboard, a day with activity can be picked on the map: a side panel lists that day's moves grouped by ticket (each key opens it), with the time of each, and the project's own (sprints, releases, members) apart. The activity feed takes an `after` date (GraphQL, REST), so with `before` it reads a window such as a day; the MCP's get_project_activity takes a `day`. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -432,6 +432,7 @@ export class IssuesService {
|
||||
issueId?: string;
|
||||
limit?: number;
|
||||
before?: string;
|
||||
after?: string;
|
||||
},
|
||||
): Promise<ActivityReadModel[]> {
|
||||
return this.queryBus.execute(
|
||||
@@ -441,6 +442,7 @@ export class IssuesService {
|
||||
params.issueId,
|
||||
params.limit,
|
||||
params.before,
|
||||
params.after,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -7,6 +7,8 @@ export abstract class FindActivityRepository {
|
||||
limit: number;
|
||||
/** ISO date cursor: only activity strictly older than this. */
|
||||
before?: string;
|
||||
/** ISO date: only activity at or after this. */
|
||||
after?: string;
|
||||
}): Promise<ActivityReadModel[]>;
|
||||
/** The latest of several projects, newest first. */
|
||||
abstract findAcross(
|
||||
|
||||
@@ -35,6 +35,7 @@ export class GetActivityQueryHandler
|
||||
issueId: query.issueId,
|
||||
limit: Math.min(query.limit, 200),
|
||||
before: query.before,
|
||||
after: query.after,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,6 +10,8 @@ export class GetActivityQuery extends Query<ActivityReadModel[]> {
|
||||
public readonly limit = 50,
|
||||
/** ISO date cursor: only activity strictly older than this. */
|
||||
public readonly before?: string,
|
||||
/** ISO date: only activity at or after this (with `before`, a window). */
|
||||
public readonly after?: string,
|
||||
) {
|
||||
super();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user