---
name: wip-aging-report
description: "Which currently-open items are stalled — how long each item has sat in its current stage, each stage's average age, and which specific items are aging well past their peers. Use when: You have a queue, pipeline, or workflow with items currently open — not yet complete — and a record of when each entered its current stage. You want to know which specific items need attention now, not just an overall count of what's open. You suspect a small number of items are stalled and skewing the queue's overall feel, but can't point to which ones without a proper count. Not for: Everything in scope has already finished — that's a cycle-time or lead-time analysis on completed work, not this. You only have a total count of open items with no per-item entry date — there's nothing to compute an age from. The queue has fewer than a handful of items in most stages — the stage-average comparison this tool relies on needs more than one item per stage to mean anything."
---
<!-- Auto-generated from content/templates.ts by scripts/generate-skills.ts -- do not edit this file directly. Edit the kata's guide content and regenerate. -->

# Work-in-progress (WIP) aging report

Which currently-open items are stalled — how long each item has sat in its current stage, each stage's average age, and which specific items are aging well past their peers.

Family: Flow and pull · Format: .xlsx · Domain: core

## What it is

A WIP aging report answers one question a point-in-time snapshot can't: not how much work is open, but which specific pieces of it have been sitting the longest relative to their peers. Every item gets one thing measured — how many days it's been in its current stage — and from that, each stage's average age and which items are aging at least twice their stage's average get computed. Those items are stalled, not just old; a queue where everything is uniformly slow has a different problem than a queue where one item has quietly sat for months while everything else moves normally.

## When to use it

Use it when:

- You have a queue, pipeline, or workflow with items currently open — not yet complete — and a record of when each entered its current stage.
- You want to know which specific items need attention now, not just an overall count of what's open.
- You suspect a small number of items are stalled and skewing the queue's overall feel, but can't point to which ones without a proper count.

Not when:

- Everything in scope has already finished — that's a cycle-time or lead-time analysis on completed work, not this.
- You only have a total count of open items with no per-item entry date — there's nothing to compute an age from.
- The queue has fewer than a handful of items in most stages — the stage-average comparison this tool relies on needs more than one item per stage to mean anything.

## How to fill it in

- **scope** — Which pipeline, workflow, or queue, as of what date? A snapshot with no stated boundary blends queues that don't belong together into a report that describes neither.
- **items** — List every currently-open item with its current stage and the date it entered that stage. Pull real dates from a system of record — a guessed entry date defeats the point of measuring age at all.
- **stages** — Each stage's average age among its currently-open items — computed for you, nothing to enter here.
- **summary** — The overall average age, the single oldest item, and which items are flagged as stalled (aging at least twice their stage's average) — all computed for you.
- **narrative** — Drafted from the stall flags and your observation notes — what you've seen or heard about why a specific item is actually stuck.
- **countermeasures** — What will you do about the stalled items, ranked by impact and effort, owned and dated? A countermeasure not tied to a named stalled item is a coaching failure mode, not a real action.

## What good looks like

The example below is an IT service request queue's WIP aging: real entry dates per item, stage averages with the arithmetic shown, one item correctly flagged as stalled at more than 2x its stage's average, and a countermeasure that traces directly to that specific item rather than a generic 'work faster' push.

Full worked example, on-screen and as a downloadable .xlsx: https://www.katafacts.com/katas/wip-aging-report

## Common mistakes

- **Treating every item with a nonzero age as worth flagging.** — Same vital-few discipline as every other artifact in this catalogue — one item genuinely stalled relative to its peers beats a list of every item that isn't brand new.
- **Comparing an item's age against the overall average instead of its own stage's average.** — A stage that's naturally slower than others (a review step vs. a quick triage step, say) will always look 'stalled' against the overall average even when every item in it is moving normally — the comparison has to be within the stage, not across the whole queue.
- **Running this on a stage with only one or two items and treating the result as meaningful.** — There's no real 'average' to compare against with that little data — a single item can't be 2x its own average, which is exactly why this tool never flags a single-item stage.

## What it connects to

Upstream:

- **Kanban sizing calculator** (not in the catalogue yet) — A WIP limit sized too high is exactly what produces a queue with room for items to quietly stall — this report is where that shows up after the fact.

Downstream:

- **A3 problem solving** (`a3`) — Once a stalled item is named, an A3 is where you'd run root cause analysis in depth if the blocker isn't already obvious from the observation notes.

## Where AI helps

Judgement — stays with you:

- Deciding whether a stalled item needs immediate escalation or can wait for the next regular check-in
- Committing to which countermeasure to act on first

Analysis — AI helps:

- Drafting the narrative from observation notes and the stall-flag findings
- Pressure-testing whether a proposed countermeasure actually addresses the named stalled item

Drudgery — automated:

- Computing every item's age, each stage's average, and which items are stalled, with the arithmetic shown
- Identifying the single oldest item in the whole queue
- Exporting to xlsx in the house format

---

Work-in-progress (WIP) aging report is licensed [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/). Attribution: Katafacts (katafacts.com).

## Using this skill

Apply this method as part of whatever broader task, instructions, or deliverable you're already working on -- it's a method to use, not a standalone conversation to start. There is no generation tool for this catalogue yet, so draft the artifact's actual content yourself, following the fields above, the same way a person filling this out by hand would. The canonical guide page and a downloadable worked example (.xlsx) are at https://www.katafacts.com/katas/wip-aging-report.
