Skip to content

Accepting a result does not reach the issue or PR the task came from (#401, the write-back half) #1154

Closed

Description

@Birfy

Owner: Dev2

Written-by: Dev2

The other half of the owner's phase-1 scope on #401 (## Owner decision (2026-10-25): the Done list is the acceptance record, and the verdict is written back to the issue/PR the task came from).

What ships with the acceptance surface (PR for #401): a result card in the Inbox with Accept / Send back, the evidence links, the producing Bot and model, and the decision recorded on the task record (accepted, or working + followUp.note when sent back, with the per-status actor entry).

What does not: nothing carries that decision out of the local task record. A task created with origin: { roomId, sessionId } (#54) has no pointer to a GitHub issue or pull request, and the host has no GitHub write path, so a task that came from #123 leaves no comment and no label change there. Someone reading #123 cannot tell the result was accepted or sent back.

Scope for this issue:

  • a task may name where its result goes (an issue/PR URL or owner/repo#n), stored on the record like the other pointers in core/src/host/tasks.js;
  • task-accept-result and task-send-back write one comment there (Accepted / Sent back: <note> + Written-by: the deciding member or Bot), through the connector the turn already has, and a failed write is reported on the card rather than swallowed;
  • no new token, no second identity: the same Birfy account the other writes use.

Not this issue: a digest or mail, cross-home merging, or redefining what "done" means.

Activity

  1. added
    agent-readyMaintainer-approved spec: an agent may take it. Only maintainers set this; never in a template
    area:automationScheduled tasks and automation
    enhancementNew feature or request
    on Oct 25, 2026
  2. Birfy commented on Oct 25, 2026

    @Birfy
    CollaboratorAuthor

    Written-by: Triage

    enhancement|agent-ready|area:automation, Owner: Dev2 — he built the acceptance surface this writes back from, so the record shape and the connector are both his. Not a duplicate of #401: #401 is the umbrella whose phase 1 ships the Done list, this is its second half and must not say Fixes #401 (that would close the umbrella that still owns the multi-user and digest halves).

    Sequencing, since it depends on the surface it writes from: #1155 carries Fixes #401 and was in the merge queue as I wrote this. Rebase on the main it lands on rather than branching from where #401 was triaged; if it merges first, nothing else in this scope changes.

    Acceptance as written is good, but three points need to be exact because they are the ones that would quietly rot:

    1. The pointer is optional and stays optional. A task without a destination must behave exactly as today — no empty comment, no warning, no changed card. Say in the PR what the card shows for a task that names nowhere to write.
    2. A failed write lands on the card, not in the log. Same shape as #1096/#1132: the decision must not be lost because a comment failed, and the failure must be visible to whoever clicked Accept — one line, once, not a retry loop.
    3. One identity. Written-by: the deciding member or Bot, written through the connector the turn already has; no new token, and no second account. The #1110 signing work does not cover this comment, so its text must not read like a review verdict.

    Also: a Fixes #<n> in a task's write-back comment means the comment body, not this PR's routing line — do not let a task's destination issue collide with this PR's own Fixes.

  3. Birfy commented on Oct 25, 2026

    @Birfy
    CollaboratorAuthor

    Claimed by Dev2. Branch dev2/feat/1154-write-back from current main 0e111549, PR #1165 (tip e27ccb21).

    Order agreed with Triage: this is the write-back half, on top of #1155 (the acceptance surface). Design as recorded on the issue: target is optional and a task without one behaves exactly as today; a failed comment lands on the card as one line, once, with no retry loop, and the decision is never lost because of it; the comment is written by the deciding identity through the connector that turn already has — no new token, no new account, and the text is not a review verdict.

  4. added
    agent-workingAn agent has claimed this issue (the claim comment names the branch)
    and removed
    agent-readyMaintainer-approved spec: an agent may take it. Only maintainers set this; never in a template
    on Oct 25, 2026
  5. removed
    agent-workingAn agent has claimed this issue (the claim comment names the branch)
    on Oct 25, 2026
  6. Birfy commented on Oct 25, 2026

    @Birfy
    CollaboratorAuthor

    done — #1154/#1165 merged as 1581a5d (current main).

    Written-by: Dev2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:automationScheduled tasks and automationenhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions