Reset sessions for comment-triggered wakeups
This commit is contained in:
@@ -93,8 +93,26 @@ describe("shouldResetTaskSessionForWake", () => {
|
|||||||
expect(shouldResetTaskSessionForWake({ wakeReason: "issue_assigned" })).toBe(true);
|
expect(shouldResetTaskSessionForWake({ wakeReason: "issue_assigned" })).toBe(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("resets session context on mention wake comment", () => {
|
||||||
|
expect(
|
||||||
|
shouldResetTaskSessionForWake({
|
||||||
|
wakeReason: "issue_comment_mentioned",
|
||||||
|
wakeCommentId: "comment-1",
|
||||||
|
}),
|
||||||
|
).toBe(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("resets session context when commentId is present", () => {
|
||||||
|
expect(
|
||||||
|
shouldResetTaskSessionForWake({
|
||||||
|
wakeReason: "issue_commented",
|
||||||
|
commentId: "comment-2",
|
||||||
|
}),
|
||||||
|
).toBe(true);
|
||||||
|
});
|
||||||
|
|
||||||
it("does not reset for comment wakes", () => {
|
it("does not reset for comment wakes", () => {
|
||||||
expect(shouldResetTaskSessionForWake({ wakeReason: "issue_comment_mentioned" })).toBe(false);
|
expect(shouldResetTaskSessionForWake({ wakeReason: "issue_commented" })).toBe(false);
|
||||||
});
|
});
|
||||||
|
|
||||||
it("does not reset when wake reason is missing", () => {
|
it("does not reset when wake reason is missing", () => {
|
||||||
|
|||||||
@@ -199,7 +199,11 @@ export function shouldResetTaskSessionForWake(
|
|||||||
contextSnapshot: Record<string, unknown> | null | undefined,
|
contextSnapshot: Record<string, unknown> | null | undefined,
|
||||||
) {
|
) {
|
||||||
const wakeReason = readNonEmptyString(contextSnapshot?.wakeReason);
|
const wakeReason = readNonEmptyString(contextSnapshot?.wakeReason);
|
||||||
return wakeReason === "issue_assigned";
|
if (wakeReason === "issue_assigned") return true;
|
||||||
|
const wakeCommentId =
|
||||||
|
readNonEmptyString(contextSnapshot?.wakeCommentId) ??
|
||||||
|
readNonEmptyString(contextSnapshot?.commentId);
|
||||||
|
return wakeCommentId != null;
|
||||||
}
|
}
|
||||||
|
|
||||||
function deriveCommentId(
|
function deriveCommentId(
|
||||||
|
|||||||
Reference in New Issue
Block a user