fix: close implements tracker gap and clarify closing keywords (#110)

This commit is contained in:
2026-07-02 19:34:45 -04:00
parent 2e2da05eab
commit 0bbbca4223
7 changed files with 27 additions and 6 deletions
+20
View File
@@ -1649,3 +1649,23 @@ class TestTrackerHygieneCleanup(unittest.TestCase):
res = gitea_close_issue(issue_number=1)
self.assertTrue(res["success"])
self.assertIn("error:", res["cleanup_status"].get(1))
def test_extract_linked_issue_numbers_hygiene(self):
from mcp_server import extract_linked_issue_numbers
# Standard closing keywords
self.assertEqual(extract_linked_issue_numbers("Closes #123"), [123])
self.assertEqual(extract_linked_issue_numbers("Fixes #123"), [123])
self.assertEqual(extract_linked_issue_numbers("Resolves #123"), [123])
# New implements/implemented keywords
self.assertEqual(extract_linked_issue_numbers("Implements #123"), [123])
self.assertEqual(extract_linked_issue_numbers("implemented #123"), [123])
self.assertEqual(extract_linked_issue_numbers("implement #123"), [123])
# refs / ref should NOT match
self.assertEqual(extract_linked_issue_numbers("Refs #123"), [])
self.assertEqual(extract_linked_issue_numbers("ref #123"), [])
# branch name fallback
self.assertEqual(extract_linked_issue_numbers("", branch_name="issue-123"), [123])
self.assertEqual(extract_linked_issue_numbers("", branch_name="feat/issue-123-foo"), [123])