fix(agent-ops): Milestone 표기 검증 오탐을 수정한다
This commit is contained in:
parent
f9915ffc89
commit
df0ecdbf1d
2 changed files with 27 additions and 1 deletions
|
|
@ -343,7 +343,7 @@ def validate_pairs(
|
|||
pairs.append((plan, review, header))
|
||||
union.update(target_ids)
|
||||
contents = plan.read_text(encoding="utf-8") + "\n" + review.read_text(encoding="utf-8")
|
||||
if "[TODO" in contents or "<task_group>" in contents or "<milestone-slug>" in contents:
|
||||
if "[TODO" in contents or "<task_group>" in contents:
|
||||
raise CycleError(f"unresolved template token: {plan.parent}")
|
||||
if dispatcher.is_file():
|
||||
run(
|
||||
|
|
|
|||
|
|
@ -260,6 +260,32 @@ class EpicCycleContractTest(unittest.TestCase):
|
|||
self.assertEqual([pair[0].parent.name for pair in pairs], ["02_second"])
|
||||
self.assertEqual(union, {"second-task"})
|
||||
|
||||
def test_validate_pair_allows_documented_milestone_slug_notation(self) -> None:
|
||||
with tempfile.TemporaryDirectory() as raw:
|
||||
workspace = Path(raw)
|
||||
command(workspace, "git", "init")
|
||||
task = workspace / "agent-task" / "m-sample" / "01_work"
|
||||
task.mkdir(parents=True)
|
||||
header = (
|
||||
"<!-- task=m-sample/01_work plan=0 tag=TEST "
|
||||
"milestone-task=inside -->\n"
|
||||
)
|
||||
(task / "PLAN-local-G01.md").write_text(
|
||||
header + "# Plan\n",
|
||||
encoding="utf-8",
|
||||
)
|
||||
(task / "CODE_REVIEW-local-G01.md").write_text(
|
||||
header
|
||||
+ "# Review\n\n"
|
||||
+ "For task groups matching `m-<milestone-slug>`, preserve metadata.\n",
|
||||
encoding="utf-8",
|
||||
)
|
||||
|
||||
pairs, union = MODULE.validate_pairs(workspace, "m-sample", {"inside"})
|
||||
|
||||
self.assertEqual(len(pairs), 1)
|
||||
self.assertEqual(union, {"inside"})
|
||||
|
||||
def test_validate_pair_rejects_foreign_pair_outside_selected_batch(self) -> None:
|
||||
with tempfile.TemporaryDirectory() as raw:
|
||||
workspace = Path(raw)
|
||||
|
|
|
|||
Loading…
Reference in a new issue