Files
hq/.claude/skills/hal-handoff/SKILL.md
T
jschoubben c0b35652d0 The numbering is the flow: decisions are 02, design is 03
papa-hq reads 01 research -> 03 decision -> 02 design. The order is a
scar, not a choice: 02-DESIGN existed from its initial commit, and when
adr/ was finally promoted on 2026-07-13 it took the next free number
rather than its place in the sequence. By then design was too settled to
renumber.

hal-hq was three commits old, so it is not. adr/ becomes 02-DECISIONS and
02-DESIGN becomes 03-DESIGN, and following the folder numbers now walks
the process in the order it happens: research produces a decision, the
decision authorises a design.

00-GENESIS becomes 00-META, matching papa's rename from the same
restructure.

Every path reference rewritten across documents, frontmatter, playbooks
and skills. All links resolve; all 58 frontmatter blocks parse and their
path fields still point at files that exist.
2026-08-23 18:05:11 +02:00

1.4 KiB

name, description
name description
hal-handoff Use when a hal-hq design is settled and implementation is about to start in a code repository. Triggers on "start building this", "hand this off", "ready to implement", "who owns this now".

hal-handoff

Hands a settled design to a code repository. Authoritative playbook: 00-META/process/04-build-handoff.md.

Steps

  1. Confirm it is settled. status: designed, and every claim traceable to a record in 02-DECISIONS/. An open question in the text is a reason to run hal-new-research, not to build around it.
  2. Name the owner. Set code: from 00-META/repos.md. If the repository does not exist yet, add it to repos.md in the same change.
  3. Read the as-is counterpart. What is being replaced must be written down in 03-DESIGN/00-as-is/ before it is changed. Building against an undocumented as-is is how shipped behaviour gets lost.
  4. Flip the status to in-progress, updated: today.
  5. Build in the code repository. hal-hq never carries implementation.
  6. On completion, run hal-graduate's "when something ships" section.

Non-negotiable

  • Every merge is a human checkpoint, without exception.
  • Never open a pull request unprompted. A permissions list saying it is allowed is not a request.
  • Work in an isolated worktree, never a shared checkout.
  • Never push to the main branch.