feat: add labels param and todo item_type to sprint MCP tools #13
No reviewers
Labels
No labels
domain:backend
domain:devops
domain:frontend
status:approved
status:in-progress
status:needs-fix
status:qa
type:bug
type:devops
type:feature
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
forgejo_admin/pal-e-mcp!13
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "12-sprint-labels-and-todo-type"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
labelsparameter toadd_sprint_itemandmove_sprint_itemMCP toolstodoas a validitem_typeacross all sprint tool descriptions and docstringsChanges
src/pal_e_docs_mcp/tools/sprints.py: addedlabels: str | Noneparam toadd_sprint_itemandmove_sprint_item; updated allitem_typeField descriptions to include'todo'; updated docstrings to reference four boards instead of threeTest Plan
Review Checklist
Related Notes
todo-sprint-item-labels-and-todo-type-- the plan this PR implementsPR #13 Review
Title: feat: add labels param and todo item_type to sprint MCP tools
Branch:
12-sprint-labels-and-todo-type->mainScope: 1 file changed, +23/-6 lines
BLOCKERS
None.
NITS
Column count drift (pre-existing, out of scope): The
add_sprint_itemandmove_sprint_itemcolumn descriptions still reference six columns (backlog, todo, next_up, in_progress, qa, done), but memory notes indicate seven columns (withneeds_approval). This predates this PR and should be tracked separately (likely issue #10 or #11 scope).No
item_typevalidation at MCP layer: Thetodovalue is documented in Field descriptions but never validated before being sent to the backend. This is consistent with the existing pattern for all other params (column,item_type,status), so not a real concern -- just noting that validation is deferred to the backend API.labelsdocstring formove_sprint_item: The description says"Comma-separated labels, e.g. 'type:bug,scope:unplanned'"which is clear, but the docstring for the function itself ("""Move a sprint item to a different column and/or position on the board.""") does not mention that labels can also be updated. Minor -- the Field description is sufficient for MCP tool discovery.CODE REVIEW
The implementation is clean and follows the existing patterns exactly:
labels: Annotated[str | None, Field(...)] = Nonematches the convention used by all other optional params.if labels is not None: body["labels"] = labels-- correct conditional inclusion, consistent withtitle,position, etc.item_typevalues are enumerated in descriptions/docstrings have been updated to include'todo'.create_sprint,add_sprint_item,get_sprint_board,get_backlogdocstrings updated from "three boards" to "four boards"..envfiles in the diff.SOP COMPLIANCE
12-sprint-labels-and-todo-typereferences #12)todo-sprint-item-labels-and-todo-type)VERDICT: APPROVED