capturing-story-contextlisted
Install: claude install-skill Expeed-Software/exloom
# Capturing Story Context
Produce a confirmed context block in `.claude/qa/<story-id>.md`. Generation does not start until this exists.
## 1. Get the identifiers
**The work item ID is all you need.** IDs are unique across the organisation, so the project is not required to fetch a story — it is read from the story itself and used later for publishing.
QA usually pastes a URL — from the board, a backlog, a sprint taskboard, a query result, or the item itself. Do not try to recognise each shape. Take the number:
- the `workitem=` query parameter when present,
- otherwise the numeric segment following `_workitems/edit/` (a trailing slash is not part of the ID).
```
…/_workitems/edit/24073/ -> 24073
…/_boards/board/t/apptor-webhook%20Team/Stories?workitem=24073 -> 24073
…/_backlogs/backlog/apptor-webhook%20Team/Stories?workitem=23471 -> 23471
```
A bare ID is equally fine. The organisation comes from `az` defaults, or from the URL host when working across organisations.
Never search for the story, never list projects, never fetch unrelated items. The scope of a run is exactly one story.
**Echo what you resolved** — `24073 — Provider self-signup UX (apptor-webhook)` — before doing anything else. This is what makes an unrecognised URL shape harmless: either QA sees the right story named back, or they correct you immediately. It costs one line and removes the need to anticipate every URL form.
## 2. Fetch the story
`fetch_story