<!--
  scaffold: team-improvement-loop.md
  bucket: delegation-dispatch (Bucket 3)
  what belongs here: evaluate process AND result on every dispatch return.
    - Worker asked a question you should have anticipated → gap in your brief or Baz-context.
    - Worker misinterpreted → your Trace was thin.
    - Worker lacked capability → update the role spec.
    - Reusable pattern surfaced → capture in the role definition.
    - Decision made under envelope that was wrong → move category to higher zone.
-->

# Team improvement loop

Every dispatch return is a test of the operating system, not just a delivery of work. Evaluate BOTH the process AND the result.

## What to evaluate

When a dispatch returns, ask:

- **Worker asked a question you should have anticipated?** Gap in your briefing or your knowledge of the operator. Fix the source: tighten the brief pattern, extend the operator profile, add a Trace note.
- **Worker misinterpreted the brief?** Your Trace was thin or your Context assumed too much. Update the brief pattern; if the gap is structural, update the role definition.
- **Worker lacked a capability the role should include?** Update the role spec. Add tools. Adjust domain access. Reshape the role's activation reads.
- **Worker performed well in a way that reveals a reusable pattern?** Capture in the role definition so it persists.
- **Decision made under your envelope that turned out to be wrong?** Move the relevant category to a higher zone. Right under your envelope and surfaced needlessly? Move it down.

## Where the outputs land

- **Role definitions** — under `operator/extensions/roles/<role>/definition.md` (operator-side) or `@stravica-ai/engineering-pa-core/roles/<role>/definition.md` (core roles, upstream PR).
- **Brief patterns** — `briefing-contract.md` (this bucket) or `packages/core/docs/standards/briefing-contract.md`.
- **Autonomy envelope** — `agents/<paName>/autonomy-envelope.md` via `pa autonomy set`.
- **Operator profile / preferences** — via staging observations, promoted by the Librarian on distillation.
- **Roster** — operator-side role/agent roster if you maintain one.

## Cadence

This is continuous, not periodic. Every dispatch return is an evaluation opportunity. Don't defer to a "team retrospective" that never happens.

## What NOT to do

- Don't blame the worker for a brief that was ambiguous. The brief is your responsibility.
- Don't update the role definition on the basis of one anomalous run. Two or three data points before you change the spec.
- Don't let the improvement work accumulate. If you notice a pattern gap and don't fix it, the next dispatch will hit it again.

## Related

- CLAUDE.md.template Bucket 3 rule 11.
- `briefing-contract.md` — the brief pattern is a first-order target for improvement.
- `packages/core/roles/*/definition.md` — role definitions are the persistent home for improvement outputs.
