Archive Graveyard Audit

Trello's UI hides archived cards by default and has no native filter that distinguishes legitimate completion-archive (Done list, checklist 100%, no open mentions) from graveyard archive — cards moved to /archive straight off Doing, Blocked, or In Review because someone felt too guilty to move them back. This tool reads every archived card, classifies it into one of five severity-ordered verdicts, and rolls them up into a GREEN/AMBER/RED board signal. The pattern it surfaces is the one XDA called "secretly abandoned" — the burndown looked good but the real work was being silently archived.


Audit-ready before someone asks.

The XDA Developers piece "The Trello trick that stopped my projects from dying in the Almost Done stage" describes the pattern in plain language: people archive cards they "felt too guilty to move back" to the active list, so the board looks healthy but real work is rotting in /archive. Atlassian's own cleanup-guide writing acknowledges the same shape — Trello boards "get out of hand" because the archive is hidden, growing, and unaudited. Cards land there for two completely different reasons (work finished vs. work abandoned) and the native UI treats them identically. The reader looking for the second category cannot find it without walking every archived card by hand.

The framing is the same as the rest of the Trello cluster: make your board audit-ready before someone asks. In regulated industries — defense, medical devices, finance — Trello is canonical shadow-IT: the official PM tool is Jira or Monday, but engineering managers and team leads run Trello boards underneath because they're faster to spin up. When the PMO eventually asks "where's the execution work happening, and is it on track?", the audit-graveyard pattern is the one that catches the boards where the burndown looked good but real work was being silently archived. A Done-list archive sweep is a routine cleanup. A Blocked-list archive sweep with five cards that still had unfinished checklists and unresolved @mentions is a different conversation entirely.

The archive isn't a graveyard because cards die there. It's a graveyard because dying cards get hidden there — and the native view can't tell the difference between a card that was buried and a card that was retired.What this audit catches

Five verdicts, six list tiers, three abandonment signals.

Generated Archive Graveyard report showing Apex Defense — Radar Firmware Sprint board, summary row with 38 total archived, 5 GRAVEYARD-CRITICAL, 4 GRAVEYARD-SUSPECT, 3 AMBIGUOUS, 6 STALE-ARCHIVE, 20 CLEAN-ARCHIVE, RED verdict block naming the 5 critical cards split 3 from Doing and 2 from Blocked, Graveyard-CRITICAL table sorted by days-since-due with Pulse-compression and Boresight calibration at the top, Graveyard-SUSPECT table, Ambiguous table, stale-archive callout, and clean-archive single-line acknowledgement.
Generated report — Apex Defense demo, 38 archived cards across 7 lists, verdict RED (5 GRAVEYARD-CRITICAL)

Every archived card gets exactly one primary verdict

Severity order (worst first): GRAVEYARD-CRITICAL > GRAVEYARD-SUSPECT > AMBIGUOUS > STALE-ARCHIVE > CLEAN-ARCHIVE. The cascade evaluates in that order and the first matching verdict wins, so a Blocked-tier archive with an unfinished checklist gets GRAVEYARD-CRITICAL and never falls through to the lower buckets.

GRAVEYARD-CRITICAL Archived from ACTIVE or BLOCKED tier AND (unfinished checklist OR unresolved @mention OR archived before its own due date). The textbook abandonment case — work that was archived because it felt too painful to move back, not because it was done. A Blocked card with an unfinished checklist and a due date still in the future is the worst row in the report.
GRAVEYARD-SUSPECT Archived from REVIEW tier AND (unfinished checklist OR unresolved @mention). The "QA gave up" case. Sometimes legitimate (the work shipped and the review card was a leftover artifact), more often abandonment dressed as completion. Suspect not critical because the Review tier sits one step closer to Done.
AMBIGUOUS Archived from DONE tier BUT with incomplete checklist OR unresolved @mention. Less severe than graveyard-critical — the work may genuinely be done with documentation gaps — but worth a sweep. Often a checklist item nobody got around to checking off after the actual work shipped.
STALE-ARCHIVE Archived from BACKLOG or OTHER tier with an active due date or unfinished checklist. Neglected intake, not abandonment in the same sense — cards that were filed and never picked up. The right bucket to clean out quarterly; not the urgent issue.
CLEAN-ARCHIVE The legitimate archive case: from DONE/SHIPPED with checklist 100% (or no checklist) and no unresolved @mentions. Or any tier with no bad signals at all. This is the bucket the rest of the archive should fall into. The reason the graveyard pattern is hard to spot in Trello's native UI is that most of /archive looks like this — the abandonment cases blend in.

Every list is tiered by name

The classifier picks a tier from the list's name using a case-insensitive regex match (same rule set as the Card Aging tool):

  • ACTIVEMatches doing|in progress|in-progress|wip|working.
  • BLOCKEDMatches blocked|stuck|waiting|on hold|on-hold|paused.
  • REVIEWMatches review|qa|testing|verify.
  • DONEMatches done|complete|shipped|closed|resolved|launched.
  • BACKLOGMatches backlog|todo|to do|to-do|ideas|inbox.
  • OTHERAnything else — included in totals only.

Three abandonment signals per card

Unfinished checklist Sum across all checklists on the card: completeCount / totalCount. Unfinished when total > 0 and complete < total. A 0/2 or 2/5 checklist on an archived card is the most common abandonment trace — somebody had a plan, started it, then put the card away rather than finishing.
Unresolved @mention Count of distinct @username mentions in the most recent 5 comments where the mentioned user has not posted any commentCard after the mention's date. The card was archived with somebody still on the hook for a reply they never gave. v1 simplification: only the last 5 comments are scanned.
Archived before due date The card's due at archive time is later than the archive event date — daysSinceDueAtArchive < 0. The card had a planned ship date that was still in the future when somebody archived it. The clearest possible signal that the card was put away rather than completed.

Workspace verdict roll-up

One verdict per board run, set by the worst-fired threshold:

  • REDAny GRAVEYARD-CRITICAL card, OR 5+ GRAVEYARD-SUSPECT total.
  • AMBERAny GRAVEYARD-SUSPECT, OR 5+ AMBIGUOUS, OR 10+ STALE-ARCHIVE.
  • GREENOtherwise.

The bundled fixture lands RED via five engineered GRAVEYARD-CRITICAL cards — three abandoned from Doing, two from Blocked, with two of those archived before their own due date. The named worst rows are Pulse-compression refactor for X-band variant (archived 29 days before due) and Boresight calibration -- vendor jig recall (archived 24 days before due, with an unresolved @kohara mention on top). Both cards exercise the most expensive RED path on the first render — archived from an active-list tier, with a clear "this was put away, not finished" signal.

What ends up on the page

Header (workspace, board, archived-card count, list count, asOfDate). Summary row (total archived / graveyard-critical / graveyard-suspect / ambiguous / stale-archive / clean-archive). Board-level verdict (RED/AMBER/GREEN) with named reasons. Graveyard-CRITICAL table sorted by days-since-due ascending (most-negative first — archived-earliest-before-due bubbles up). Graveyard-SUSPECT table for the REVIEW abandonments. Ambiguous table for the DONE-tier loose-ends. Stale-archive callout (short, count + one-line). Clean-archive single-line acknowledgement — the count, not a table, because the legitimate cases don't need columns.

Trello Archive Graveyard local UI showing health dot, discovery bar with Apex Defense — Radar Firmware Sprint board, 38 archived cards, 7 lists, 14 members, Scan-scope section, and Discover plus Generate report buttons.
The local UI — click Discover, then Generate report

The honest scope of v1.

v1 is demo mode only. The discover script reads the bundled sample-data/archive.json fixture — an Apex Defense workspace with one board ("Apex Defense — Radar Firmware Sprint"), 7 lists (Backlog, To Do, Doing, Blocked, In Review, Done, Shipped), 14 members, and 38 archived cards engineered to break down 5 GRAVEYARD-CRITICAL / 4 GRAVEYARD-SUSPECT / 3 AMBIGUOUS / 6 STALE-ARCHIVE / 20 CLEAN-ARCHIVE. You can evaluate the report shape, the verdict logic, the tier classification, and the three abandonment signals end-to-end with no Trello credentials. Live mode (Trello REST against /boards/{id}/cards?filter=closed, /cards/{id}/actions for the archive-event + comment scan, /cards/{id}/checklists, and /boards/{id}/members for @mention resolution) is deferred to v2 once usage validates the demand.

Doesn't unarchive cards. This is a read-only audit. The tool tells you which archived cards look like graveyard, with the reasons spelled out. It does not bulk-restore, doesn't move cards out of /archive, doesn't post comments. The decision of which graveyard-critical cards to revive lives with the human reading the report. v2 might offer optional bulk-restore for a named list of cards; v1 stays out of write territory entirely.

Doesn't fix the underlying workflow. The graveyard pattern exists because moving a card back to Doing feels like an admission of failure and archiving feels like cleanup — that's a team-culture problem the audit can surface but cannot remediate. The right follow-up to a RED verdict is a conversation about why the cards were archived, not a Butler rule that auto-restores them.

Not a replacement for WIP-limit enforcement. A board with no WIP limits will produce more graveyard-critical cards because there's no upstream pressure to finish what's in flight before starting the next thing. This tool runs after the fact and catches the artefact — archived work that was never completed. The structural fix is a WIP limit on the active-list tiers; this audit is the rear-view check that the limit (or its absence) is working as intended.


The archive is hidden by default and shows no abandonment signal.

Trello's archive view is buried in the board menu and collapsed to a flat list of card names with no list-of-origin, no checklist progress, no due-date check, and no comment context. There is no native filter that says "show me archived cards whose checklist is incomplete" or "show me archives off Doing." Manually walking every archived card to check the checklist, due date, and recent comments is the work this tool automates — the audit is what tells a completion-archive apart from an abandonment-archive without forcing the reader to click into 38 cards in a row.


Requirements

  • OSWindows, macOS, or Linux
  • RuntimePowerShell 7+ (pwsh). 5.1 is not supported.
  • BrowserAnything modern. UI on localhost:8794.
  • TrelloLive mode deferred to v2 — will use Trello REST (api.trello.com/1) with a personal API key + token. v1 demonstrates the report shape on a bundled fixture.
  • Demo modeBundled 38-card / 7-list / 14-member Apex Defense fixture — runs end-to-end with no creds, lands RED via 5 engineered GRAVEYARD-CRITICAL cards.

Three files. Free.

The tool, a user guide, and a prompt guide showing the spec, the fixture engineering that pins the 5/4/3/6/20 counts, and the Pester contract.

Drop your email to unlock the downloads.

One email when new tools ship, digest only. Confirms via Kit (double opt-in). No tracking. Unlocks every download on the site from this browser.

One email · Double opt-in · Unlocks the whole library