feat(data): five-phase list-handler prompt with dedupe and enhance

This commit is contained in:
Mika Kuns
2026-07-27 15:02:50 +02:00
parent cc823ec4f6
commit e3bacc3143
2 changed files with 82 additions and 21 deletions
+27 -3
View File
@@ -52,12 +52,36 @@ public class PromptFilesTests
}
[Fact]
public void DefaultFor_merge_helper_is_non_empty_and_mentions_the_merge_tools()
public void DefaultFor_merge_helper_covers_all_five_phases()
{
var d = PromptFiles.DefaultFor(PromptKind.MergeHelper);
Assert.False(string.IsNullOrWhiteSpace(d));
Assert.Contains("review_task", d);
Assert.Contains("continue_merge", d);
Assert.Contains("Phase 0", d);
Assert.Contains("Phase 1", d);
Assert.Contains("Phase 2", d);
Assert.Contains("Phase 3", d);
Assert.Contains("Phase 4", d);
Assert.Contains("Phase 5", d);
}
[Fact]
public void DefaultFor_merge_helper_names_the_tools_each_phase_needs()
{
var d = PromptFiles.DefaultFor(PromptKind.MergeHelper);
Assert.Contains("batch_get_tasks", d); // phase 0
Assert.Contains("update_task", d); // phase 1 + 2
Assert.Contains("get_app_settings", d); // phase 3
Assert.Contains("update_task_status", d); // phase 3
Assert.Contains("review_task", d); // phase 4
Assert.Contains("continue_merge", d); // phase 4
Assert.DoesNotContain("run_task_now(", d); // single override slot — must not batch-start
}
[Fact]
public void DefaultFor_merge_helper_initial_has_repo_token()
{
var d = PromptFiles.DefaultFor(PromptKind.MergeHelperInitial);
Assert.Contains("{repo}", d);
}
[Fact]