Skip to content

Dispatch templates: specify HANDOFF target task explicitly (Task A vs B; PR #641 Cycle-4 follow-up) #646

@michael-wojcik

Description

@michael-wojcik

Background

During PR #641 Cycle-4 remediation, the architect surfaced that the dispatch text said "write HANDOFF for Task #56" but the convention per pact-completion-authority.md is HANDOFFs go on WORK tasks (Task B), not TEACHBACK tasks (Task A).

Architect followed the dispatch literal text and wrote the HANDOFF to the TEACHBACK task; lead's correction-message arrived after the architect had already written; architect copied the HANDOFF to the WORK task on next turn.

The miscommunication is structural — the dispatch templates in orchestrate.md, peer-review.md, and comPACT.md describe the Task A+B shape but the per-task description strings can ambiguously reference "Task #N" without specifying which task gets the HANDOFF.

Symptom

Architect's HANDOFF on PR #641 Task #56 (TEACHBACK) instead of #57 (WORK):

"Note: dispatch said 'write HANDOFF for Task #56' but the convention is HANDOFFs go to WORK tasks (Task #57). Worth tightening the dispatch template for future cycles to specify the WORK task explicitly." — architect open_questions, Task #57

Proposal

Tightening 1 — explicit task-letter convention in skill body

In pact-plugin/skills/orchestration/SKILL.md (or wherever Task A+B dispatch convention is documented), add explicit:

## Task A+B HANDOFF target

- **Task A** (TEACHBACK): metadata.teachback_submit. NEVER metadata.handoff.
- **Task B** (WORK): metadata.handoff. NEVER metadata.teachback_submit.

When dispatching, be explicit:
- "Submit teachback to Task A (#{A_id}) metadata.teachback_submit"
- "Write HANDOFF to Task B (#{B_id}) metadata.handoff"

Never say "write HANDOFF to Task #N" without specifying A or B.

Tightening 2 — dispatch template strings

Update orchestrate.md, peer-review.md, comPACT.md template-string examples to use explicit:

# Old (ambiguous):
B_description = "...Per dogfood directive: ... write metadata.handoff..."

# New (explicit):
B_description = "...Per dogfood directive: write metadata.handoff to THIS Task B "
                f"(#{B_id}). NOT to Task A (#{A_id}). ..."

Tightening 3 — pact-teachback skill cross-ref

The pact-teachback skill describes the TEACHBACK metadata shape; add a cross-ref note: "TEACHBACK metadata goes on Task A. The companion Task B receives metadata.handoff after work completes — see [pact-handoff schema]."

Acceptance criteria

  • Skill body of orchestration explicitly documents Task A+B HANDOFF target convention.
  • orchestrate.md, peer-review.md, comPACT.md dispatch templates use explicit "Task A (#{A_id})" / "Task B (#{B_id})" framing in their description strings.
  • pact-teachback skill cross-references the convention.
  • No more architect/coder/test-engineer ambiguity-flag observations on this in subsequent cycles (caught by absence of the open_question pattern).

Cross-references

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions