fix(FN-4761): correct review-feedback document persistence
Fusion-Task-Id: FN-4761 Fusion-Task-Lineage: b6b1ed73-c396-4dd2-b97f-366272d05c7f
This commit is contained in:
committed by
gsxdsm
parent
5bde911bdb
commit
9cee0ef083
@@ -36,7 +36,7 @@ function createStore(task: Task): TaskStore {
|
||||
updatePrInfo: vi.fn().mockResolvedValue(undefined),
|
||||
addComment: vi.fn().mockResolvedValue(task),
|
||||
moveTask: vi.fn().mockResolvedValue({ ...task, column: "todo" }),
|
||||
writeTaskDocument: vi.fn().mockResolvedValue({ key: "review-feedback" }),
|
||||
upsertTaskDocument: vi.fn().mockResolvedValue({ key: "review-feedback" }),
|
||||
getRootDir: vi.fn().mockReturnValue("/tmp/project"),
|
||||
listTasks: vi.fn().mockResolvedValue([]),
|
||||
createTask: vi.fn(),
|
||||
|
||||
@@ -1069,7 +1069,11 @@ async function applyChangesRequestedTransition(
|
||||
: "",
|
||||
].join("\n").trim();
|
||||
|
||||
await store.writeTaskDocument(task.id, "review-feedback", feedbackBody || "Reviewer requested changes.", "system");
|
||||
await store.upsertTaskDocument(task.id, {
|
||||
key: "review-feedback",
|
||||
content: feedbackBody || "Reviewer requested changes.",
|
||||
author: "system",
|
||||
});
|
||||
await store.moveTask(task.id, "todo", {
|
||||
preserveProgress: true,
|
||||
preserveWorktree: true,
|
||||
@@ -3358,6 +3362,18 @@ export function registerGitGitHubRoutes(ctx: ApiRoutesContext): void {
|
||||
}
|
||||
}
|
||||
|
||||
const repoKey = `${owner}/${repo}`;
|
||||
if (!githubRateLimiter.canMakeRequest(repoKey)) {
|
||||
const resetTime = githubRateLimiter.getResetTime(repoKey);
|
||||
const retryAfter = resetTime
|
||||
? Math.max(0, Math.ceil((resetTime.getTime() - Date.now()) / 1000))
|
||||
: undefined;
|
||||
throw rateLimited("GitHub API rate limit exceeded for this repository", {
|
||||
retryAfter,
|
||||
resetAt: resetTime?.toISOString(),
|
||||
});
|
||||
}
|
||||
|
||||
const client = new GitHubClient();
|
||||
const snapshot = await client.getPrReviewSnapshot(owner, repo, task.prInfo.number);
|
||||
const fusionThread = (task.comments ?? []).filter((comment) =>
|
||||
|
||||
Reference in New Issue
Block a user