| name | reviewer_finish-task |
| description | After a task's PR is created, offer to close the task on the configured board and reindex it. Use when the user says a PR is up or asks to close or finish a task. |
Finish Task
Reply in Russian. The server appends the PR link idempotently, completes the selected generic
target, and adds a clickable task link to the PR body; clients never send credentials.
- Config. Read
task_board from .review.yml, otherwise get_board_config(). Use only
type, project, create_target, done_target, and options. If no board is resolved,
report a board-less no-op.
- Resolve key and PR. Match
key_pattern on the current branch, newest briefs file, or
gh pr view --json title,body; otherwise ask. Resolve the PR URL with gh pr view --json url -q .url (or ask). Missing key or URL is a no-op.
- Discover. Call
get_board_targets(board_type=<type>, project=<project>, provider_options=<task_board.options or {}>). Select done_target from targets with a done
purpose. For each option with required_for containing finish, resolve its value from
choices; if required metadata is missing, ask instead of guessing.
- Offer + confirm. Show the PR link and the resolved done target by its label plus every
selected option, and state that a task link will be prepended to the PR body. Ask whether to add an optional note. Write only after explicit confirmation;
never write to the board silently.
- Write. Call
finish_task(key=<key>, pr_url=<url>, note=<note or null>, board_type=<type>,
target=<done_target or null>, provider_options=<task_board.options or {}>)
On status == "error", report the reason in Russian and stop.
- Re-index. Call
sync_board(board=<project or null>, board_type=<type>, provider_options=<task_board.options or {}>), then report the write and sync result. When
already_closed is true, state that no duplicate PR link was added. Report task_link_added:
when false, relay the warning verbatim — the board write still succeeded.
All reads are fail-open; the explicitly confirmed finish_task call is the only write.