Documentation / Orchestrate

Writing a contract

The contract is the layer that says what the task is — prompt, purpose, territory, gates and the shape of the report.

A task has four layers. The first is the contract: what this task is. It is what you declare at creation, and it is what the card receives in the briefing.

The fields

Field Values Required Rule
prompt free text yes why the task exists
purpose investigate implement measure fix no write-once: labeling it wrong is another task, not a relabel
deps ids of other tasks no unlocks automatic dispatch when all become done
review wanted or absent no mutable — risk is assessment, and assessment changes
territory files/regions no which files belong to this task
gates commands no what must pass before delivering
allow_commit bool no whether the card may commit; usually false
report_schema JSON no the format you require back
cwd path no where the card is born

The assembled briefing

The card receives, at dispatch:

prompt  +  dependency pointer  +  contract

Nothing more. Board rule is not on that list: if you need the card to know something, it fits in a contract field, or you send it explicitly, or it will not know it.

The most expensive error is a brief without the “how”

Briefing “measure X” without saying how to measure already produced twelve probes in twenty-three seconds in the user’s conversation. Briefing “touch only this region” without saying what to do with the old source already produced a second source of truth beside the first.

A good contract:

  1. The defect, measured — not “improve X”, but “X does A when it should do B; measured in N cases; here is the query or the file”.
  2. The boundary — which files are yours, and who else is writing to them now.
  3. The decision you did not make — if there are two plausible outs, say both and ask the card to measure before choosing.
  4. The gate — what must pass before the delivery counts.
  5. The shape of the report — so you do not get prose when you need numbers.

After the contract, the next step is Roles and verdicts.