pbi-escalation-handlerlisted
Install: claude install-skill sohei56/maul-team
## Inputs
- Notification from Developer (Agent Teams) with PBI id and
`escalation_reason`. Backlog `items[].status` for the PBI is
`escalated`.
- `.scrum/pbi/<pbi-id>/state.json` (`escalation_reason`, round counters,
per-stage `*_status`)
- Latest review files: `.scrum/pbi/<pbi-id>/{design,impl,ut}/review-r{last}.md`
- `.scrum/pbi/<pbi-id>/metrics/*.json`
## Outputs
- SM judgment recorded at
`.scrum/pbi/<pbi-id>/escalation-resolution.md` (audit trail)
- backlog.json `items[].status` updated via
`update-backlog-status.sh`:
- **retry** → `in_progress_design` (round counters, per-stage
`*_status` flags, and `merge_failure_count` reset on `state.json`;
worktree preserved). **kind=docs PBIs retry to `in_progress_impl`
instead** — design was never run — with `design_status` and
`coverage_status` reset to `skipped` (not `pending`) and
`ut_status` left at `pending`. See § Steps step 4.
- **hold** / **human-escalate** → stays at `escalated` (until the
blocking condition clears, at which point SM moves it to
`in_progress_design` to resume; worktree preserved for inspection)
- **block on external dependency** → `blocked` (SM-only status; later
transitioned back to `in_progress_design` when the external factor
clears; worktree preserved)
- **abandon** → `cancelled` (terminal); SM calls
`cleanup-pbi-worktree.sh` to remove the worktree + `pbi/<id>`
branch. The audit trail lives in `escalation-resolution.md`, not
in a ling