A handoff is a reproducible state

A handoff is not just a message saying “almost done.” The next participant should understand what was done, which files changed, which decisions were made, what checks confirmed, which risks remain, and what specific next step to take.

The information should rely on artifacts and evidence, not on the author’s memory.

HANDOFF_NOTE.md sectionContents
GoalThe expected result in one sentence
SpecificationA link to TASK_SPEC.md and a short scope
Changed filesThe actual list of affected paths
Decisions and assumptionsThe chosen approach and what has not yet been confirmed
Evidence and checksCommands, logs, tests, and results
RisksUncovered scenarios and limitations
Next stepOne clear action

HANDOFF_NOTE.md structure

# HANDOFF_NOTE.md

## Goal
...

## Specification
- TASK_SPEC.md: ...
- Scope: ...

## Changed files
- ...

## Decisions
- ...

## Evidence
- ...

## Tests and checks
- command: result

## Risks
- ...

## Next step
- ...

Package for a fresh reviewer

  • A fresh reviewer should not receive the entire conversation history.
  • Separate context reduces the impact of the author’s assumptions.
  • The reviewer checks scope, edge cases, the API, and whether the handoff matches the actual changes.
  1. Pass along TASK_SPEC.md.
  2. Pass along HANDOFF_NOTE.md.
  3. Add the diff relative to the base branch.
  4. Add test and check results.
  5. Describe the review focus and priority risks.
  6. Ask reviewers to support findings with a link to a diff, test, or other evidence.

Do not confuse engineering artifacts

ArtifactRole
Handoff noteContinuation or verification of the current task
PR descriptionA change package before merge
Commit messageOne logical step in history
ChangelogChanges for the release and the user

A quality handoff completes the milestone

After the handoff, the task becomes less dependent on the author’s memory: another session or person can restore context, check gaps, and determine the next action. This is the final artifact of a controlled transfer, not a formality before completion.

Canonical lesson source · JavaRush

Open JavaRush material