feat(0.36.0): outil MCP move_issue — déplacement de carte par le service d'agents
CI / test (push) Failing after 1m27s
CI / test (push) Failing after 1m27s
Le serveur MCP n'exposait en écriture que create_issue et add_comment : un déplacement approuvé côté service d'agents (kanbante.move_card, vague H3) aurait échoué faute d'outil. - move_issue (owner, repo, number, column) réutilise le service de déplacement de l'interface (_do_move_card, extrait de POST /api/move sans changement de comportement) : board local, journal source « mcp », miroir d'étiquette kanban:* remplacée, autres étiquettes préservées. - Colonne acceptée par clé, par étiquette de forge ou par libellé français affiché (définitions de l'espace). - Garde doctrine : la cible done (« Terminé ») est refusée avant toute écriture — les agents s'arrêtent en Révision. - Erreurs propres : colonne inconnue (liste des valides), dépôt/issue inconnu, pull request refusée. - 296 tests verts (5 nouveaux + épingles de la liste d'outils mises à jour).
This commit is contained in:
@@ -121,7 +121,7 @@ def test_mcp_initialize_and_tools_list(client):
|
||||
assert names == [
|
||||
"list_projects", "get_board", "get_issue", "get_focus",
|
||||
"search_issues", "get_activity", "get_metrics",
|
||||
"create_issue", "add_comment",
|
||||
"create_issue", "add_comment", "move_issue",
|
||||
]
|
||||
|
||||
|
||||
@@ -167,8 +167,11 @@ def test_mcp_info_endpoint(client):
|
||||
assert r.status_code == 200
|
||||
# 0.26.0 : écritures minimales ajoutées — le serveur n'est
|
||||
# plus en lecture seule, et il le déclare honnêtement.
|
||||
# 0.36.0 : move_issue s'ajoute aux écritures déclarées.
|
||||
assert r.json()["read_only"] is False
|
||||
assert r.json()["write_tools"] == ["create_issue", "add_comment"]
|
||||
assert r.json()["write_tools"] == [
|
||||
"create_issue", "add_comment", "move_issue",
|
||||
]
|
||||
|
||||
|
||||
# ── Board : gestion des étiquettes ────────────────────────
|
||||
|
||||
Reference in New Issue
Block a user