Files
agent-radar 2ed3415fb7
Publish Claude Code Binaries / Stage and publish binaries (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-arm64 (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build linux-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build windows-amd64 (push) Canceled after 0s
Sync Tutti Agent Skills / sync (push) Canceled after 0s
Windows Agent Adapters / Test Windows agent adapters (push) Canceled after 0s
Windows Daemon Adapters / Test Windows daemon adapters (push) Canceled after 0s
Publish Tutti App Runtime / Publish runtime catalog (push) Canceled after 0s
源码快照 @ 2026-09-01 (source-only, 剔除非源码素材)
2026-09-01 20:17:27 +08:00

64 lines
1.6 KiB
TypeScript

import { describe, expect, it } from "vitest";
import type { TuttiPlanIssueSnapshot } from "../workspaceWorkflowRuntime";
import { tuttiModePlanTaskActionPrompt } from "./tuttiModePlanPromptActions";
const issue: TuttiPlanIssueSnapshot = {
workflowId: "workflow-1",
sourceTurnId: "turn-1",
issueId: "issue-1",
topicId: "topic/one",
title: "Plan",
dispatchPaused: false,
tasks: [
{
taskId: "task-1",
title: "Review [result]",
content: "",
status: "failed",
sortIndex: 1,
parallelizable: false,
autoAccept: false,
dependencyTaskIds: []
}
]
};
const labels = {
accept: (reference: string) => `Accept ${reference}`,
rework: (reference: string) => `Rework ${reference}`
};
describe("tuttiModePlanTaskActionPrompt", () => {
it.each([
["accept", "Accept"],
["rework", "Rework"]
] as const)(
"builds an exact source-Agent %s draft with a task mention",
(action, prefix) => {
expect(
tuttiModePlanTaskActionPrompt({
action,
issue,
labels,
taskId: "task-1",
workspaceId: "workspace-1"
})
).toBe(
`${prefix} [Review \\[result\\]](mention://workspace-issue/issue-1?workspaceId=workspace-1&topicId=topic%2Fone&taskId=task-1)`
);
}
);
it("fails closed when the task is no longer in the current projection", () => {
expect(
tuttiModePlanTaskActionPrompt({
action: "rework",
issue,
labels,
taskId: "missing",
workspaceId: "workspace-1"
})
).toBeNull();
});
});