Skip to content

I3207 — A finished task names the pull request that carries its branch and that pull request's disposition

Make majordomus finish report, from the last recorded queue observation, the pull request whose head is the task's branch, its disposition and next action, or that no pull request carries the branch yet, so the work a worker hands to the landing seat is named at the moment it is handed.

BLOCKED wave 0 · p2 · implementation profile · parallel safe

Part of delivery-flow-is-measured — The way from a pull request to a verified publication is measured per phase, and its bounds are read where work starts.

Blocked. This issue cannot start until milestone:delivery-flow-is-measured is done. The status is derived from that, not declared.

Objective

Make majordomus finish report, from the last recorded queue observation, the pull request whose head is the task's branch, its disposition and next action, or that no pull request carries the branch yet, so the work a worker hands to the landing seat is named at the moment it is handed.

Why

The 2026-10-10 queue pack asked that a session's finish name the candidate it created, its disposition and its next action (c209#3). Under ADR 0167 a worker hands its green head to the landing seat; today that hand-off is prose on the board. Sources: chatgpt-majordomus:c209#3.

Current state

lib/finish.sh judges the task's own scope, obligations and verification and says nothing of pull requests; integration.queue knows each open pull request's head branch and disposition.

Desired state

finish prints one line 'pull request #N: <disposition>, next: <action>' or 'no pull request carries <branch>; push it and open one', read from the recorded observation with its age, never from the network; the handover body carries the same line.

Scope

  • lib/finish.sh
  • apps/majordomus-cli/src/commands/prs.rs
  • docs/INTEGRATION.md

Out of scope

  • Opening or pushing from finish
  • Refusing finish on a disposition

Dependencies

None. This issue is a root of the graph.

Acceptance criteria

  • A task whose branch heads an observed pull request names it with its disposition and the observation's age
  • A task whose branch no pull request carries says so
  • A checkout with no observation says the queue is unobserved

Validation

  • bash test/run.sh 06_finish
  • majordomus plan validate

Evidence required

  • case_finish_names_its_pull_request

Evidence

None recorded. Every token above needs a command or an artifact behind it before this issue can be completed; narrative is refused.

Timeline

started
—
verified
—
completed
—

Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.

Canonical record: .ai/repo/project/issues/I3207.yaml. Read it back with majordomus plan show I3207.

Searches the titles and descriptions of every page this site publishes.